diff options
Diffstat (limited to '')
156 files changed, 39514 insertions, 0 deletions
diff --git a/lib/unistring/Makefile.am b/lib/unistring/Makefile.am new file mode 100644 index 0000000..c942781 --- /dev/null +++ b/lib/unistring/Makefile.am @@ -0,0 +1,1092 @@ +## DO NOT EDIT! GENERATED AUTOMATICALLY! +## Process this file with automake to produce Makefile.in. +# Copyright (C) 2002-2021 Free Software Foundation, Inc. +# +# This file 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 3 of the License, or +# (at your option) any later version. +# +# This file 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 file. If not, see <https://www.gnu.org/licenses/>. +# +# As a special exception to the GNU General Public License, +# this file may be distributed as part of a program that +# contains a configuration script generated by Autoconf, under +# the same distribution terms as the rest of that program. +# +# Generated by gnulib-tool. +# Reproduce by: +# gnulib-tool --import --local-dir=lib/unistring/override \ +# --lib=libunistring \ +# --source-base=lib/unistring \ +# --m4-base=lib/unistring/m4 \ +# --doc-base=doc \ +# --tests-base=tests \ +# --aux-dir=build-aux \ +# --lgpl=3orGPLv2 \ +# --no-conditional-dependencies \ +# --libtool \ +# --macro-prefix=unistring \ +# unictype/category-all \ +# unictype/property-default-ignorable-code-point \ +# unictype/property-join-control \ +# unictype/property-not-a-character \ +# uninorm/nfc \ +# uninorm/nfkc \ +# uninorm/u16-normalize \ +# uninorm/u32-normalize \ +# uninorm/u8-normalize \ +# unistr/u16-to-u8 \ +# unistr/u32-to-u8 \ +# unistr/u8-check \ +# unistr/u8-to-u16 \ +# unistr/u8-to-u32 + +AUTOMAKE_OPTIONS = 1.11 gnits subdir-objects + +SUBDIRS = +noinst_HEADERS = +noinst_LIBRARIES = +noinst_LTLIBRARIES = +EXTRA_DIST = +BUILT_SOURCES = +SUFFIXES = +MOSTLYCLEANFILES = core *.stackdump +MOSTLYCLEANDIRS = +CLEANFILES = +DISTCLEANFILES = +MAINTAINERCLEANFILES = +# No GNU Make output. +EXTRA_DIST += m4/gnulib-cache.m4 + +AM_CPPFLAGS = +AM_CFLAGS = + +noinst_LTLIBRARIES += libunistring.la + +libunistring_la_SOURCES = +libunistring_la_LIBADD = $(unistring_LTLIBOBJS) +libunistring_la_DEPENDENCIES = $(unistring_LTLIBOBJS) +EXTRA_libunistring_la_SOURCES = +libunistring_la_LDFLAGS = $(AM_LDFLAGS) +libunistring_la_LDFLAGS += -no-undefined + +## begin gnulib module absolute-header + +# Use this preprocessor expression to decide whether #include_next works. +# Do not rely on a 'configure'-time test for this, since the expression +# might appear in an installed header, which is used by some other compiler. +HAVE_INCLUDE_NEXT = (__GNUC__ || __clang__ || 60000000 <= __DECC_VER) + +## end gnulib module absolute-header + +## begin gnulib module array-mergesort + + +EXTRA_DIST += array-mergesort.h + +## end gnulib module array-mergesort + +## begin gnulib module attribute + + +EXTRA_DIST += attribute.h + +## end gnulib module attribute + +## begin gnulib module gperf + +GPERF = gperf +V_GPERF = $(V_GPERF_@AM_V@) +V_GPERF_ = $(V_GPERF_@AM_DEFAULT_V@) +V_GPERF_0 = @echo " GPERF " $@; + +## end gnulib module gperf + +## begin gnulib module limits-h + +BUILT_SOURCES += $(LIMITS_H) + +# We need the following in order to create <limits.h> when the system +# doesn't have one that is compatible with GNU. +if GL_GENERATE_LIMITS_H +limits.h: limits.in.h $(top_builddir)/config.status + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ + sed -e 's|@''GUARD_PREFIX''@|GL_UNISTRING|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ + -e 's|@''NEXT_LIMITS_H''@|$(NEXT_LIMITS_H)|g' \ + < $(srcdir)/limits.in.h; \ + } > $@-t && \ + mv $@-t $@ +else +limits.h: $(top_builddir)/config.status + rm -f $@ +endif +MOSTLYCLEANFILES += limits.h limits.h-t + +EXTRA_DIST += limits.in.h + +## end gnulib module limits-h + +## begin gnulib module snippet/unused-parameter + +# Because this Makefile snippet defines a variable used by other +# gnulib Makefile snippets, it must be present in all makefiles that +# need it. This is ensured by the applicability 'all' defined above. + +UNUSED_PARAMETER_H=$(srcdir)/unused-parameter.h + +EXTRA_DIST += unused-parameter.h + +## end gnulib module snippet/unused-parameter + +## begin gnulib module stdbool + +BUILT_SOURCES += $(STDBOOL_H) + +# We need the following in order to create <stdbool.h> when the system +# doesn't have one that works. +if GL_GENERATE_STDBOOL_H +stdbool.h: stdbool.in.h $(top_builddir)/config.status + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + sed -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' < $(srcdir)/stdbool.in.h; \ + } > $@-t && \ + mv $@-t $@ +else +stdbool.h: $(top_builddir)/config.status + rm -f $@ +endif +MOSTLYCLEANFILES += stdbool.h stdbool.h-t + +EXTRA_DIST += stdbool.in.h + +## end gnulib module stdbool + +## begin gnulib module stdint + +BUILT_SOURCES += $(STDINT_H) + +# We need the following in order to create <stdint.h> when the system +# doesn't have one that works with the given compiler. +if GL_GENERATE_STDINT_H +stdint.h: stdint.in.h $(top_builddir)/config.status + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + sed -e 's|@''GUARD_PREFIX''@|GL_UNISTRING|g' \ + -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ + -e 's|@''NEXT_STDINT_H''@|$(NEXT_STDINT_H)|g' \ + -e 's/@''HAVE_C99_STDINT_H''@/$(HAVE_C99_STDINT_H)/g' \ + -e 's/@''HAVE_SYS_TYPES_H''@/$(HAVE_SYS_TYPES_H)/g' \ + -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ + -e 's/@''HAVE_SYS_INTTYPES_H''@/$(HAVE_SYS_INTTYPES_H)/g' \ + -e 's/@''HAVE_SYS_BITYPES_H''@/$(HAVE_SYS_BITYPES_H)/g' \ + -e 's/@''HAVE_WCHAR_H''@/$(HAVE_WCHAR_H)/g' \ + -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \ + -e 's/@''BITSIZEOF_PTRDIFF_T''@/$(BITSIZEOF_PTRDIFF_T)/g' \ + -e 's/@''PTRDIFF_T_SUFFIX''@/$(PTRDIFF_T_SUFFIX)/g' \ + -e 's/@''BITSIZEOF_SIG_ATOMIC_T''@/$(BITSIZEOF_SIG_ATOMIC_T)/g' \ + -e 's/@''HAVE_SIGNED_SIG_ATOMIC_T''@/$(HAVE_SIGNED_SIG_ATOMIC_T)/g' \ + -e 's/@''SIG_ATOMIC_T_SUFFIX''@/$(SIG_ATOMIC_T_SUFFIX)/g' \ + -e 's/@''BITSIZEOF_SIZE_T''@/$(BITSIZEOF_SIZE_T)/g' \ + -e 's/@''SIZE_T_SUFFIX''@/$(SIZE_T_SUFFIX)/g' \ + -e 's/@''BITSIZEOF_WCHAR_T''@/$(BITSIZEOF_WCHAR_T)/g' \ + -e 's/@''HAVE_SIGNED_WCHAR_T''@/$(HAVE_SIGNED_WCHAR_T)/g' \ + -e 's/@''WCHAR_T_SUFFIX''@/$(WCHAR_T_SUFFIX)/g' \ + -e 's/@''BITSIZEOF_WINT_T''@/$(BITSIZEOF_WINT_T)/g' \ + -e 's/@''HAVE_SIGNED_WINT_T''@/$(HAVE_SIGNED_WINT_T)/g' \ + -e 's/@''WINT_T_SUFFIX''@/$(WINT_T_SUFFIX)/g' \ + -e 's/@''GNULIBHEADERS_OVERRIDE_WINT_T''@/$(GNULIBHEADERS_OVERRIDE_WINT_T)/g' \ + < $(srcdir)/stdint.in.h; \ + } > $@-t && \ + mv $@-t $@ +else +stdint.h: $(top_builddir)/config.status + rm -f $@ +endif +MOSTLYCLEANFILES += stdint.h stdint.h-t + +EXTRA_DIST += stdint.in.h + +## end gnulib module stdint + +## begin gnulib module sys_types + +BUILT_SOURCES += sys/types.h + +# We need the following in order to create <sys/types.h> when the system +# doesn't have one that works with the given compiler. +sys/types.h: sys_types.in.h $(top_builddir)/config.status + $(AM_V_at)$(MKDIR_P) sys + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + sed -e 's|@''GUARD_PREFIX''@|GL_UNISTRING|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ + -e 's|@''NEXT_SYS_TYPES_H''@|$(NEXT_SYS_TYPES_H)|g' \ + -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \ + -e 's|@''WINDOWS_STAT_INODES''@|$(WINDOWS_STAT_INODES)|g' \ + < $(srcdir)/sys_types.in.h; \ + } > $@-t && \ + mv $@-t $@ +MOSTLYCLEANFILES += sys/types.h sys/types.h-t + +EXTRA_DIST += sys_types.in.h + +## end gnulib module sys_types + +## begin gnulib module unictype/base + +BUILT_SOURCES += $(LIBUNISTRING_UNICTYPE_H) + +unictype.h: unictype.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/unictype.in.h; \ + } > $@-t && \ + mv -f $@-t $@ +MOSTLYCLEANFILES += unictype.h unictype.h-t + +EXTRA_DIST += unictype.in.h + +## end gnulib module unictype/base + +## begin gnulib module unictype/category-C + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_C +libunistring_la_SOURCES += unictype/categ_C.c +endif + +EXTRA_DIST += unictype/categ_C.h + +## end gnulib module unictype/category-C + +## begin gnulib module unictype/category-Cc + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CC +libunistring_la_SOURCES += unictype/categ_Cc.c +endif + +EXTRA_DIST += unictype/categ_Cc.h + +## end gnulib module unictype/category-Cc + +## begin gnulib module unictype/category-Cf + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CF +libunistring_la_SOURCES += unictype/categ_Cf.c +endif + +EXTRA_DIST += unictype/categ_Cf.h + +## end gnulib module unictype/category-Cf + +## begin gnulib module unictype/category-Cn + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CN +libunistring_la_SOURCES += unictype/categ_Cn.c +endif + +EXTRA_DIST += unictype/categ_Cn.h + +## end gnulib module unictype/category-Cn + +## begin gnulib module unictype/category-Co + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CO +libunistring_la_SOURCES += unictype/categ_Co.c +endif + +EXTRA_DIST += unictype/categ_Co.h + +## end gnulib module unictype/category-Co + +## begin gnulib module unictype/category-Cs + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CS +libunistring_la_SOURCES += unictype/categ_Cs.c +endif + +EXTRA_DIST += unictype/categ_Cs.h + +## end gnulib module unictype/category-Cs + +## begin gnulib module unictype/category-L + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_L +libunistring_la_SOURCES += unictype/categ_L.c +endif + +EXTRA_DIST += unictype/categ_L.h + +## end gnulib module unictype/category-L + +## begin gnulib module unictype/category-LC + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LC +libunistring_la_SOURCES += unictype/categ_LC.c +endif + +EXTRA_DIST += unictype/categ_LC.h + +## end gnulib module unictype/category-LC + +## begin gnulib module unictype/category-Ll + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LL +libunistring_la_SOURCES += unictype/categ_Ll.c +endif + +EXTRA_DIST += unictype/categ_Ll.h + +## end gnulib module unictype/category-Ll + +## begin gnulib module unictype/category-Lm + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LM +libunistring_la_SOURCES += unictype/categ_Lm.c +endif + +EXTRA_DIST += unictype/categ_Lm.h + +## end gnulib module unictype/category-Lm + +## begin gnulib module unictype/category-Lo + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LO +libunistring_la_SOURCES += unictype/categ_Lo.c +endif + +EXTRA_DIST += unictype/categ_Lo.h + +## end gnulib module unictype/category-Lo + +## begin gnulib module unictype/category-Lt + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LT +libunistring_la_SOURCES += unictype/categ_Lt.c +endif + +EXTRA_DIST += unictype/categ_Lt.h + +## end gnulib module unictype/category-Lt + +## begin gnulib module unictype/category-Lu + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LU +libunistring_la_SOURCES += unictype/categ_Lu.c +endif + +EXTRA_DIST += unictype/categ_Lu.h + +## end gnulib module unictype/category-Lu + +## begin gnulib module unictype/category-M + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_M +libunistring_la_SOURCES += unictype/categ_M.c +endif + +EXTRA_DIST += unictype/categ_M.h + +## end gnulib module unictype/category-M + +## begin gnulib module unictype/category-Mc + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_MC +libunistring_la_SOURCES += unictype/categ_Mc.c +endif + +EXTRA_DIST += unictype/categ_Mc.h + +## end gnulib module unictype/category-Mc + +## begin gnulib module unictype/category-Me + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ME +libunistring_la_SOURCES += unictype/categ_Me.c +endif + +EXTRA_DIST += unictype/categ_Me.h + +## end gnulib module unictype/category-Me + +## begin gnulib module unictype/category-Mn + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_MN +libunistring_la_SOURCES += unictype/categ_Mn.c +endif + +EXTRA_DIST += unictype/categ_Mn.h + +## end gnulib module unictype/category-Mn + +## begin gnulib module unictype/category-N + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_N +libunistring_la_SOURCES += unictype/categ_N.c +endif + +EXTRA_DIST += unictype/categ_N.h + +## end gnulib module unictype/category-N + +## begin gnulib module unictype/category-Nd + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ND +libunistring_la_SOURCES += unictype/categ_Nd.c +endif + +EXTRA_DIST += unictype/categ_Nd.h + +## end gnulib module unictype/category-Nd + +## begin gnulib module unictype/category-Nl + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NL +libunistring_la_SOURCES += unictype/categ_Nl.c +endif + +EXTRA_DIST += unictype/categ_Nl.h + +## end gnulib module unictype/category-Nl + +## begin gnulib module unictype/category-No + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NO +libunistring_la_SOURCES += unictype/categ_No.c +endif + +EXTRA_DIST += unictype/categ_No.h + +## end gnulib module unictype/category-No + +## begin gnulib module unictype/category-P + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_P +libunistring_la_SOURCES += unictype/categ_P.c +endif + +EXTRA_DIST += unictype/categ_P.h + +## end gnulib module unictype/category-P + +## begin gnulib module unictype/category-Pc + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PC +libunistring_la_SOURCES += unictype/categ_Pc.c +endif + +EXTRA_DIST += unictype/categ_Pc.h + +## end gnulib module unictype/category-Pc + +## begin gnulib module unictype/category-Pd + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PD +libunistring_la_SOURCES += unictype/categ_Pd.c +endif + +EXTRA_DIST += unictype/categ_Pd.h + +## end gnulib module unictype/category-Pd + +## begin gnulib module unictype/category-Pe + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PE +libunistring_la_SOURCES += unictype/categ_Pe.c +endif + +EXTRA_DIST += unictype/categ_Pe.h + +## end gnulib module unictype/category-Pe + +## begin gnulib module unictype/category-Pf + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PF +libunistring_la_SOURCES += unictype/categ_Pf.c +endif + +EXTRA_DIST += unictype/categ_Pf.h + +## end gnulib module unictype/category-Pf + +## begin gnulib module unictype/category-Pi + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PI +libunistring_la_SOURCES += unictype/categ_Pi.c +endif + +EXTRA_DIST += unictype/categ_Pi.h + +## end gnulib module unictype/category-Pi + +## begin gnulib module unictype/category-Po + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PO +libunistring_la_SOURCES += unictype/categ_Po.c +endif + +EXTRA_DIST += unictype/categ_Po.h + +## end gnulib module unictype/category-Po + +## begin gnulib module unictype/category-Ps + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PS +libunistring_la_SOURCES += unictype/categ_Ps.c +endif + +EXTRA_DIST += unictype/categ_Ps.h + +## end gnulib module unictype/category-Ps + +## begin gnulib module unictype/category-S + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_S +libunistring_la_SOURCES += unictype/categ_S.c +endif + +EXTRA_DIST += unictype/categ_S.h + +## end gnulib module unictype/category-S + +## begin gnulib module unictype/category-Sc + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SC +libunistring_la_SOURCES += unictype/categ_Sc.c +endif + +EXTRA_DIST += unictype/categ_Sc.h + +## end gnulib module unictype/category-Sc + +## begin gnulib module unictype/category-Sk + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SK +libunistring_la_SOURCES += unictype/categ_Sk.c +endif + +EXTRA_DIST += unictype/categ_Sk.h + +## end gnulib module unictype/category-Sk + +## begin gnulib module unictype/category-Sm + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SM +libunistring_la_SOURCES += unictype/categ_Sm.c +endif + +EXTRA_DIST += unictype/categ_Sm.h + +## end gnulib module unictype/category-Sm + +## begin gnulib module unictype/category-So + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SO +libunistring_la_SOURCES += unictype/categ_So.c +endif + +EXTRA_DIST += unictype/categ_So.h + +## end gnulib module unictype/category-So + +## begin gnulib module unictype/category-Z + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_Z +libunistring_la_SOURCES += unictype/categ_Z.c +endif + +EXTRA_DIST += unictype/categ_Z.h + +## end gnulib module unictype/category-Z + +## begin gnulib module unictype/category-Zl + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ZL +libunistring_la_SOURCES += unictype/categ_Zl.c +endif + +EXTRA_DIST += unictype/categ_Zl.h + +## end gnulib module unictype/category-Zl + +## begin gnulib module unictype/category-Zp + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ZP +libunistring_la_SOURCES += unictype/categ_Zp.c +endif + +EXTRA_DIST += unictype/categ_Zp.h + +## end gnulib module unictype/category-Zp + +## begin gnulib module unictype/category-Zs + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ZS +libunistring_la_SOURCES += unictype/categ_Zs.c +endif + +EXTRA_DIST += unictype/categ_Zs.h + +## end gnulib module unictype/category-Zs + +## begin gnulib module unictype/category-and + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_AND +libunistring_la_SOURCES += unictype/categ_and.c +endif + +## end gnulib module unictype/category-and + +## begin gnulib module unictype/category-and-not + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_AND_NOT +libunistring_la_SOURCES += unictype/categ_and_not.c +endif + +## end gnulib module unictype/category-and-not + +## begin gnulib module unictype/category-byname + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_BYNAME +libunistring_la_SOURCES += unictype/categ_byname.c +endif + +$(srcdir)/unictype/categ_byname.h: $(srcdir)/unictype/categ_byname.gperf + $(V_GPERF)$(GPERF) -m 10 $(srcdir)/unictype/categ_byname.gperf > $(srcdir)/unictype/categ_byname.h-t1 \ + && sed -e 's/^const/static const/' < $(srcdir)/unictype/categ_byname.h-t1 > $(srcdir)/unictype/categ_byname.h-t2 \ + && mv $(srcdir)/unictype/categ_byname.h-t2 $(srcdir)/unictype/categ_byname.h +BUILT_SOURCES += unictype/categ_byname.h +MOSTLYCLEANFILES += unictype/categ_byname.h-t1 unictype/categ_byname.h-t2 +MAINTAINERCLEANFILES += unictype/categ_byname.h +EXTRA_DIST += unictype/categ_byname.h + +EXTRA_DIST += unictype/categ_byname.gperf + +## end gnulib module unictype/category-byname + +## begin gnulib module unictype/category-longname + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LONGNAME +libunistring_la_SOURCES += unictype/categ_longname.c +endif + +## end gnulib module unictype/category-longname + +## begin gnulib module unictype/category-name + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NAME +libunistring_la_SOURCES += unictype/categ_name.c +endif + +## end gnulib module unictype/category-name + +## begin gnulib module unictype/category-none + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NONE +libunistring_la_SOURCES += unictype/categ_none.c +endif + +## end gnulib module unictype/category-none + +## begin gnulib module unictype/category-of + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_OF +libunistring_la_SOURCES += unictype/categ_of.c +endif + +EXTRA_DIST += unictype/categ_of.h + +## end gnulib module unictype/category-of + +## begin gnulib module unictype/category-or + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_OR +libunistring_la_SOURCES += unictype/categ_or.c +endif + +## end gnulib module unictype/category-or + +## begin gnulib module unictype/category-test + +if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_TEST +libunistring_la_SOURCES += unictype/categ_test.c +endif + +EXTRA_DIST += unictype/bitmap.h + +## end gnulib module unictype/category-test + +## begin gnulib module unictype/combining-class + +if LIBUNISTRING_COMPILE_UNICTYPE_COMBINING_CLASS +libunistring_la_SOURCES += unictype/combiningclass.c +endif + +EXTRA_DIST += unictype/combiningclass.h + +## end gnulib module unictype/combining-class + +## begin gnulib module unictype/property-default-ignorable-code-point + +if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_DEFAULT_IGNORABLE_CODE_POINT +libunistring_la_SOURCES += unictype/pr_default_ignorable_code_point.c +endif + +EXTRA_DIST += unictype/bitmap.h unictype/pr_default_ignorable_code_point.h + +## end gnulib module unictype/property-default-ignorable-code-point + +## begin gnulib module unictype/property-join-control + +if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_JOIN_CONTROL +libunistring_la_SOURCES += unictype/pr_join_control.c +endif + +EXTRA_DIST += unictype/bitmap.h unictype/pr_join_control.h + +## end gnulib module unictype/property-join-control + +## begin gnulib module unictype/property-not-a-character + +if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_NOT_A_CHARACTER +libunistring_la_SOURCES += unictype/pr_not_a_character.c +endif + +EXTRA_DIST += unictype/bitmap.h unictype/pr_not_a_character.h + +## end gnulib module unictype/property-not-a-character + +## begin gnulib module uninorm/base + +BUILT_SOURCES += $(LIBUNISTRING_UNINORM_H) + +uninorm.h: uninorm.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/uninorm.in.h; \ + } > $@-t && \ + mv -f $@-t $@ +MOSTLYCLEANFILES += uninorm.h uninorm.h-t + +EXTRA_DIST += uninorm.in.h + +## end gnulib module uninorm/base + +## begin gnulib module uninorm/canonical-decomposition + +if LIBUNISTRING_COMPILE_UNINORM_CANONICAL_DECOMPOSITION +libunistring_la_SOURCES += uninorm/canonical-decomposition.c +endif + +## end gnulib module uninorm/canonical-decomposition + +## begin gnulib module uninorm/compat-decomposition + +libunistring_la_SOURCES += uninorm/compat-decomposition.c + +EXTRA_DIST += uninorm/decompose-internal.h + +## end gnulib module uninorm/compat-decomposition + +## begin gnulib module uninorm/composition + +if LIBUNISTRING_COMPILE_UNINORM_COMPOSITION +libunistring_la_SOURCES += uninorm/composition.c +endif + +$(srcdir)/uninorm/composition-table.h: $(srcdir)/uninorm/composition-table.gperf + $(V_GPERF)$(GPERF) -m 1 $(srcdir)/uninorm/composition-table.gperf > $(srcdir)/uninorm/composition-table.h-t1 \ + && sed -e 's/^const/static const/' < $(srcdir)/uninorm/composition-table.h-t1 > $(srcdir)/uninorm/composition-table.h-t2 \ + && mv $(srcdir)/uninorm/composition-table.h-t2 $(srcdir)/uninorm/composition-table.h +BUILT_SOURCES += uninorm/composition-table.h +MOSTLYCLEANFILES += uninorm/composition-table.h-t1 uninorm/composition-table.h-t2 +MAINTAINERCLEANFILES += uninorm/composition-table.h +EXTRA_DIST += uninorm/composition-table.h + +EXTRA_DIST += uninorm/composition-table.gperf + +## end gnulib module uninorm/composition + +## begin gnulib module uninorm/decompose-internal + +libunistring_la_SOURCES += uninorm/decompose-internal.c + +EXTRA_DIST += uninorm/decompose-internal.h + +## end gnulib module uninorm/decompose-internal + +## begin gnulib module uninorm/decomposition + +if LIBUNISTRING_COMPILE_UNINORM_DECOMPOSITION +libunistring_la_SOURCES += uninorm/decomposition.c +endif + +## end gnulib module uninorm/decomposition + +## begin gnulib module uninorm/decomposition-table + +libunistring_la_SOURCES += uninorm/decomposition-table.c + +EXTRA_DIST += uninorm/decomposition-table.h uninorm/decomposition-table1.h uninorm/decomposition-table2.h + +## end gnulib module uninorm/decomposition-table + +## begin gnulib module uninorm/nfc + +if LIBUNISTRING_COMPILE_UNINORM_NFC +libunistring_la_SOURCES += uninorm/nfc.c +endif + +EXTRA_DIST += uninorm/normalize-internal.h + +## end gnulib module uninorm/nfc + +## begin gnulib module uninorm/nfd + +if LIBUNISTRING_COMPILE_UNINORM_NFD +libunistring_la_SOURCES += uninorm/nfd.c +endif + +EXTRA_DIST += uninorm/normalize-internal.h + +## end gnulib module uninorm/nfd + +## begin gnulib module uninorm/nfkc + +if LIBUNISTRING_COMPILE_UNINORM_NFKC +libunistring_la_SOURCES += uninorm/nfkc.c +endif + +EXTRA_DIST += uninorm/normalize-internal.h + +## end gnulib module uninorm/nfkc + +## begin gnulib module uninorm/nfkd + +if LIBUNISTRING_COMPILE_UNINORM_NFKD +libunistring_la_SOURCES += uninorm/nfkd.c +endif + +EXTRA_DIST += uninorm/normalize-internal.h + +## end gnulib module uninorm/nfkd + +## begin gnulib module uninorm/u16-normalize + +if LIBUNISTRING_COMPILE_UNINORM_U16_NORMALIZE +libunistring_la_SOURCES += uninorm/u16-normalize.c +endif + +EXTRA_DIST += uninorm/normalize-internal.h uninorm/u-normalize-internal.h + +## end gnulib module uninorm/u16-normalize + +## begin gnulib module uninorm/u32-normalize + +if LIBUNISTRING_COMPILE_UNINORM_U32_NORMALIZE +libunistring_la_SOURCES += uninorm/u32-normalize.c +endif + +EXTRA_DIST += uninorm/normalize-internal.h uninorm/u-normalize-internal.h + +## end gnulib module uninorm/u32-normalize + +## begin gnulib module uninorm/u8-normalize + +if LIBUNISTRING_COMPILE_UNINORM_U8_NORMALIZE +libunistring_la_SOURCES += uninorm/u8-normalize.c +endif + +EXTRA_DIST += uninorm/normalize-internal.h uninorm/u-normalize-internal.h + +## end gnulib module uninorm/u8-normalize + +## begin gnulib module unistr/base + +BUILT_SOURCES += $(LIBUNISTRING_UNISTR_H) + +unistr.h: unistr.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/unistr.in.h; \ + } > $@-t && \ + mv -f $@-t $@ +MOSTLYCLEANFILES += unistr.h unistr.h-t + +EXTRA_DIST += unistr.in.h + +## end gnulib module unistr/base + +## begin gnulib module unistr/u16-cpy + +if LIBUNISTRING_COMPILE_UNISTR_U16_CPY +libunistring_la_SOURCES += unistr/u16-cpy.c +endif + +EXTRA_DIST += unistr/u-cpy.h + +## end gnulib module unistr/u16-cpy + +## begin gnulib module unistr/u16-mbtouc-unsafe + +if LIBUNISTRING_COMPILE_UNISTR_U16_MBTOUC_UNSAFE +libunistring_la_SOURCES += unistr/u16-mbtouc-unsafe.c unistr/u16-mbtouc-unsafe-aux.c +endif + +## end gnulib module unistr/u16-mbtouc-unsafe + +## begin gnulib module unistr/u16-mbtoucr + +if LIBUNISTRING_COMPILE_UNISTR_U16_MBTOUCR +libunistring_la_SOURCES += unistr/u16-mbtoucr.c +endif + +## end gnulib module unistr/u16-mbtoucr + +## begin gnulib module unistr/u16-to-u8 + +if LIBUNISTRING_COMPILE_UNISTR_U16_TO_U8 +libunistring_la_SOURCES += unistr/u16-to-u8.c +endif + +## end gnulib module unistr/u16-to-u8 + +## begin gnulib module unistr/u16-uctomb + +if LIBUNISTRING_COMPILE_UNISTR_U16_UCTOMB +libunistring_la_SOURCES += unistr/u16-uctomb.c unistr/u16-uctomb-aux.c +endif + +## end gnulib module unistr/u16-uctomb + +## begin gnulib module unistr/u32-cpy + +if LIBUNISTRING_COMPILE_UNISTR_U32_CPY +libunistring_la_SOURCES += unistr/u32-cpy.c +endif + +EXTRA_DIST += unistr/u-cpy.h + +## end gnulib module unistr/u32-cpy + +## begin gnulib module unistr/u32-mbtouc-unsafe + +if LIBUNISTRING_COMPILE_UNISTR_U32_MBTOUC_UNSAFE +libunistring_la_SOURCES += unistr/u32-mbtouc-unsafe.c +endif + +## end gnulib module unistr/u32-mbtouc-unsafe + +## begin gnulib module unistr/u32-to-u8 + +if LIBUNISTRING_COMPILE_UNISTR_U32_TO_U8 +libunistring_la_SOURCES += unistr/u32-to-u8.c +endif + +## end gnulib module unistr/u32-to-u8 + +## begin gnulib module unistr/u32-uctomb + +if LIBUNISTRING_COMPILE_UNISTR_U32_UCTOMB +libunistring_la_SOURCES += unistr/u32-uctomb.c +endif + +## end gnulib module unistr/u32-uctomb + +## begin gnulib module unistr/u8-check + +if LIBUNISTRING_COMPILE_UNISTR_U8_CHECK +libunistring_la_SOURCES += unistr/u8-check.c +endif + +## end gnulib module unistr/u8-check + +## begin gnulib module unistr/u8-cpy + +if LIBUNISTRING_COMPILE_UNISTR_U8_CPY +libunistring_la_SOURCES += unistr/u8-cpy.c +endif + +EXTRA_DIST += unistr/u-cpy.h + +## end gnulib module unistr/u8-cpy + +## begin gnulib module unistr/u8-mbtouc-unsafe + +if LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUC_UNSAFE +libunistring_la_SOURCES += unistr/u8-mbtouc-unsafe.c unistr/u8-mbtouc-unsafe-aux.c +endif + +## end gnulib module unistr/u8-mbtouc-unsafe + +## begin gnulib module unistr/u8-mbtoucr + +if LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR +libunistring_la_SOURCES += unistr/u8-mbtoucr.c +endif + +## end gnulib module unistr/u8-mbtoucr + +## begin gnulib module unistr/u8-to-u16 + +if LIBUNISTRING_COMPILE_UNISTR_U8_TO_U16 +libunistring_la_SOURCES += unistr/u8-to-u16.c +endif + +## end gnulib module unistr/u8-to-u16 + +## begin gnulib module unistr/u8-to-u32 + +if LIBUNISTRING_COMPILE_UNISTR_U8_TO_U32 +libunistring_la_SOURCES += unistr/u8-to-u32.c +endif + +## end gnulib module unistr/u8-to-u32 + +## begin gnulib module unistr/u8-uctomb + +if LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB +libunistring_la_SOURCES += unistr/u8-uctomb.c unistr/u8-uctomb-aux.c +endif + +## end gnulib module unistr/u8-uctomb + +## begin gnulib module unitypes + +BUILT_SOURCES += $(LIBUNISTRING_UNITYPES_H) + +unitypes.h: unitypes.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/unitypes.in.h; \ + } > $@-t && \ + mv -f $@-t $@ +MOSTLYCLEANFILES += unitypes.h unitypes.h-t + +EXTRA_DIST += unitypes.in.h + +## end gnulib module unitypes + + +mostlyclean-local: mostlyclean-generic + @for dir in '' $(MOSTLYCLEANDIRS); do \ + if test -n "$$dir" && test -d $$dir; then \ + echo "rmdir $$dir"; rmdir $$dir; \ + fi; \ + done; \ + : diff --git a/lib/unistring/Makefile.in b/lib/unistring/Makefile.in new file mode 100644 index 0000000..9bfd553 --- /dev/null +++ b/lib/unistring/Makefile.in @@ -0,0 +1,3518 @@ +# Makefile.in generated by automake 1.16.5 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2021 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +# Copyright (C) 2002-2021 Free Software Foundation, Inc. +# +# This file 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 3 of the License, or +# (at your option) any later version. +# +# This file 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 file. If not, see <https://www.gnu.org/licenses/>. +# +# As a special exception to the GNU General Public License, +# this file may be distributed as part of a program that +# contains a configuration script generated by Autoconf, under +# the same distribution terms as the rest of that program. +# +# Generated by gnulib-tool. +# Reproduce by: +# gnulib-tool --import --local-dir=lib/unistring/override \ +# --lib=libunistring \ +# --source-base=lib/unistring \ +# --m4-base=lib/unistring/m4 \ +# --doc-base=doc \ +# --tests-base=tests \ +# --aux-dir=build-aux \ +# --lgpl=3orGPLv2 \ +# --no-conditional-dependencies \ +# --libtool \ +# --macro-prefix=unistring \ +# unictype/category-all \ +# unictype/property-default-ignorable-code-point \ +# unictype/property-join-control \ +# unictype/property-not-a-character \ +# uninorm/nfc \ +# uninorm/nfkc \ +# uninorm/u16-normalize \ +# uninorm/u32-normalize \ +# uninorm/u8-normalize \ +# unistr/u16-to-u8 \ +# unistr/u32-to-u8 \ +# unistr/u8-check \ +# unistr/u8-to-u16 \ +# unistr/u8-to-u32 + + + +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_C_TRUE@am__append_1 = unictype/categ_C.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CC_TRUE@am__append_2 = unictype/categ_Cc.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CF_TRUE@am__append_3 = unictype/categ_Cf.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CN_TRUE@am__append_4 = unictype/categ_Cn.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CO_TRUE@am__append_5 = unictype/categ_Co.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CS_TRUE@am__append_6 = unictype/categ_Cs.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_L_TRUE@am__append_7 = unictype/categ_L.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LC_TRUE@am__append_8 = unictype/categ_LC.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LL_TRUE@am__append_9 = unictype/categ_Ll.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LM_TRUE@am__append_10 = unictype/categ_Lm.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LO_TRUE@am__append_11 = unictype/categ_Lo.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LT_TRUE@am__append_12 = unictype/categ_Lt.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LU_TRUE@am__append_13 = unictype/categ_Lu.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_M_TRUE@am__append_14 = unictype/categ_M.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_MC_TRUE@am__append_15 = unictype/categ_Mc.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ME_TRUE@am__append_16 = unictype/categ_Me.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_MN_TRUE@am__append_17 = unictype/categ_Mn.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_N_TRUE@am__append_18 = unictype/categ_N.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ND_TRUE@am__append_19 = unictype/categ_Nd.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NL_TRUE@am__append_20 = unictype/categ_Nl.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NO_TRUE@am__append_21 = unictype/categ_No.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_P_TRUE@am__append_22 = unictype/categ_P.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PC_TRUE@am__append_23 = unictype/categ_Pc.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PD_TRUE@am__append_24 = unictype/categ_Pd.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PE_TRUE@am__append_25 = unictype/categ_Pe.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PF_TRUE@am__append_26 = unictype/categ_Pf.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PI_TRUE@am__append_27 = unictype/categ_Pi.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PO_TRUE@am__append_28 = unictype/categ_Po.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PS_TRUE@am__append_29 = unictype/categ_Ps.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_S_TRUE@am__append_30 = unictype/categ_S.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SC_TRUE@am__append_31 = unictype/categ_Sc.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SK_TRUE@am__append_32 = unictype/categ_Sk.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SM_TRUE@am__append_33 = unictype/categ_Sm.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SO_TRUE@am__append_34 = unictype/categ_So.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_Z_TRUE@am__append_35 = unictype/categ_Z.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ZL_TRUE@am__append_36 = unictype/categ_Zl.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ZP_TRUE@am__append_37 = unictype/categ_Zp.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ZS_TRUE@am__append_38 = unictype/categ_Zs.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_AND_TRUE@am__append_39 = unictype/categ_and.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_AND_NOT_TRUE@am__append_40 = unictype/categ_and_not.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_BYNAME_TRUE@am__append_41 = unictype/categ_byname.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LONGNAME_TRUE@am__append_42 = unictype/categ_longname.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NAME_TRUE@am__append_43 = unictype/categ_name.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NONE_TRUE@am__append_44 = unictype/categ_none.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_OF_TRUE@am__append_45 = unictype/categ_of.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_OR_TRUE@am__append_46 = unictype/categ_or.c +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_TEST_TRUE@am__append_47 = unictype/categ_test.c +@LIBUNISTRING_COMPILE_UNICTYPE_COMBINING_CLASS_TRUE@am__append_48 = unictype/combiningclass.c +@LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_DEFAULT_IGNORABLE_CODE_POINT_TRUE@am__append_49 = unictype/pr_default_ignorable_code_point.c +@LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_JOIN_CONTROL_TRUE@am__append_50 = unictype/pr_join_control.c +@LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_NOT_A_CHARACTER_TRUE@am__append_51 = unictype/pr_not_a_character.c +@LIBUNISTRING_COMPILE_UNINORM_CANONICAL_DECOMPOSITION_TRUE@am__append_52 = uninorm/canonical-decomposition.c +@LIBUNISTRING_COMPILE_UNINORM_COMPOSITION_TRUE@am__append_53 = uninorm/composition.c +@LIBUNISTRING_COMPILE_UNINORM_DECOMPOSITION_TRUE@am__append_54 = uninorm/decomposition.c +@LIBUNISTRING_COMPILE_UNINORM_NFC_TRUE@am__append_55 = uninorm/nfc.c +@LIBUNISTRING_COMPILE_UNINORM_NFD_TRUE@am__append_56 = uninorm/nfd.c +@LIBUNISTRING_COMPILE_UNINORM_NFKC_TRUE@am__append_57 = uninorm/nfkc.c +@LIBUNISTRING_COMPILE_UNINORM_NFKD_TRUE@am__append_58 = uninorm/nfkd.c +@LIBUNISTRING_COMPILE_UNINORM_U16_NORMALIZE_TRUE@am__append_59 = uninorm/u16-normalize.c +@LIBUNISTRING_COMPILE_UNINORM_U32_NORMALIZE_TRUE@am__append_60 = uninorm/u32-normalize.c +@LIBUNISTRING_COMPILE_UNINORM_U8_NORMALIZE_TRUE@am__append_61 = uninorm/u8-normalize.c +@LIBUNISTRING_COMPILE_UNISTR_U16_CPY_TRUE@am__append_62 = unistr/u16-cpy.c +@LIBUNISTRING_COMPILE_UNISTR_U16_MBTOUC_UNSAFE_TRUE@am__append_63 = unistr/u16-mbtouc-unsafe.c unistr/u16-mbtouc-unsafe-aux.c +@LIBUNISTRING_COMPILE_UNISTR_U16_MBTOUCR_TRUE@am__append_64 = unistr/u16-mbtoucr.c +@LIBUNISTRING_COMPILE_UNISTR_U16_TO_U8_TRUE@am__append_65 = unistr/u16-to-u8.c +@LIBUNISTRING_COMPILE_UNISTR_U16_UCTOMB_TRUE@am__append_66 = unistr/u16-uctomb.c unistr/u16-uctomb-aux.c +@LIBUNISTRING_COMPILE_UNISTR_U32_CPY_TRUE@am__append_67 = unistr/u32-cpy.c +@LIBUNISTRING_COMPILE_UNISTR_U32_MBTOUC_UNSAFE_TRUE@am__append_68 = unistr/u32-mbtouc-unsafe.c +@LIBUNISTRING_COMPILE_UNISTR_U32_TO_U8_TRUE@am__append_69 = unistr/u32-to-u8.c +@LIBUNISTRING_COMPILE_UNISTR_U32_UCTOMB_TRUE@am__append_70 = unistr/u32-uctomb.c +@LIBUNISTRING_COMPILE_UNISTR_U8_CHECK_TRUE@am__append_71 = unistr/u8-check.c +@LIBUNISTRING_COMPILE_UNISTR_U8_CPY_TRUE@am__append_72 = unistr/u8-cpy.c +@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUC_UNSAFE_TRUE@am__append_73 = unistr/u8-mbtouc-unsafe.c unistr/u8-mbtouc-unsafe-aux.c +@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE@am__append_74 = unistr/u8-mbtoucr.c +@LIBUNISTRING_COMPILE_UNISTR_U8_TO_U16_TRUE@am__append_75 = unistr/u8-to-u16.c +@LIBUNISTRING_COMPILE_UNISTR_U8_TO_U32_TRUE@am__append_76 = unistr/u8-to-u32.c +@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@am__append_77 = unistr/u8-uctomb.c unistr/u8-uctomb-aux.c +subdir = lib/unistring +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/lib/unistring/m4/gnulib-comp.m4 \ + $(top_srcdir)/lib/unistring/m4/inline.m4 \ + $(top_srcdir)/lib/unistring/m4/libunistring-base.m4 \ + $(top_srcdir)/src/gl/m4/atoll.m4 \ + $(top_srcdir)/src/gl/m4/bison.m4 \ + $(top_srcdir)/src/gl/m4/calloc.m4 \ + $(top_srcdir)/src/gl/m4/clock_time.m4 \ + $(top_srcdir)/src/gl/m4/codeset.m4 \ + $(top_srcdir)/src/gl/m4/ctype_h.m4 \ + $(top_srcdir)/src/gl/m4/environ.m4 \ + $(top_srcdir)/src/gl/m4/error.m4 \ + $(top_srcdir)/src/gl/m4/fdopen.m4 \ + $(top_srcdir)/src/gl/m4/flexmember.m4 \ + $(top_srcdir)/src/gl/m4/fpending.m4 \ + $(top_srcdir)/src/gl/m4/fpieee.m4 \ + $(top_srcdir)/src/gl/m4/fseek.m4 \ + $(top_srcdir)/src/gl/m4/ftruncate.m4 \ + $(top_srcdir)/src/gl/m4/getaddrinfo.m4 \ + $(top_srcdir)/src/gl/m4/getcwd.m4 \ + $(top_srcdir)/src/gl/m4/getpagesize.m4 \ + $(top_srcdir)/src/gl/m4/getpass.m4 \ + $(top_srcdir)/src/gl/m4/getprogname.m4 \ + $(top_srcdir)/src/gl/m4/gettime.m4 \ + $(top_srcdir)/src/gl/m4/gnulib-comp.m4 \ + $(top_srcdir)/src/gl/m4/hostent.m4 \ + $(top_srcdir)/src/gl/m4/intl-thread-locale.m4 \ + $(top_srcdir)/src/gl/m4/inttostr.m4 \ + $(top_srcdir)/src/gl/m4/ioctl.m4 \ + $(top_srcdir)/src/gl/m4/isblank.m4 \ + $(top_srcdir)/src/gl/m4/langinfo_h.m4 \ + $(top_srcdir)/src/gl/m4/lcmessage.m4 \ + $(top_srcdir)/src/gl/m4/locale-fr.m4 \ + $(top_srcdir)/src/gl/m4/locale-ja.m4 \ + $(top_srcdir)/src/gl/m4/locale-tr.m4 \ + $(top_srcdir)/src/gl/m4/locale-zh.m4 \ + $(top_srcdir)/src/gl/m4/locale_h.m4 \ + $(top_srcdir)/src/gl/m4/localename.m4 \ + $(top_srcdir)/src/gl/m4/lstat.m4 \ + $(top_srcdir)/src/gl/m4/mktime.m4 \ + $(top_srcdir)/src/gl/m4/nanosleep.m4 \ + $(top_srcdir)/src/gl/m4/nstrftime.m4 \ + $(top_srcdir)/src/gl/m4/parse-datetime.m4 \ + $(top_srcdir)/src/gl/m4/perror.m4 \ + $(top_srcdir)/src/gl/m4/pipe.m4 \ + $(top_srcdir)/src/gl/m4/pthread-thread.m4 \ + $(top_srcdir)/src/gl/m4/pthread_h.m4 \ + $(top_srcdir)/src/gl/m4/pthread_sigmask.m4 \ + $(top_srcdir)/src/gl/m4/putenv.m4 \ + $(top_srcdir)/src/gl/m4/raise.m4 \ + $(top_srcdir)/src/gl/m4/reallocarray.m4 \ + $(top_srcdir)/src/gl/m4/sched_h.m4 \ + $(top_srcdir)/src/gl/m4/sched_yield.m4 \ + $(top_srcdir)/src/gl/m4/select.m4 \ + $(top_srcdir)/src/gl/m4/semaphore.m4 \ + $(top_srcdir)/src/gl/m4/servent.m4 \ + $(top_srcdir)/src/gl/m4/setenv.m4 \ + $(top_srcdir)/src/gl/m4/setlocale.m4 \ + $(top_srcdir)/src/gl/m4/setlocale_null.m4 \ + $(top_srcdir)/src/gl/m4/sigaction.m4 \ + $(top_srcdir)/src/gl/m4/signal_h.m4 \ + $(top_srcdir)/src/gl/m4/signalblocking.m4 \ + $(top_srcdir)/src/gl/m4/sleep.m4 \ + $(top_srcdir)/src/gl/m4/sockets.m4 \ + $(top_srcdir)/src/gl/m4/strerror.m4 \ + $(top_srcdir)/src/gl/m4/strerror_r.m4 \ + $(top_srcdir)/src/gl/m4/strtoll.m4 \ + $(top_srcdir)/src/gl/m4/symlink.m4 \ + $(top_srcdir)/src/gl/m4/sys_ioctl_h.m4 \ + $(top_srcdir)/src/gl/m4/sys_select_h.m4 \ + $(top_srcdir)/src/gl/m4/thread.m4 \ + $(top_srcdir)/src/gl/m4/time_rz.m4 \ + $(top_srcdir)/src/gl/m4/timegm.m4 \ + $(top_srcdir)/src/gl/m4/timespec.m4 \ + $(top_srcdir)/src/gl/m4/tm_gmtoff.m4 \ + $(top_srcdir)/src/gl/m4/tzset.m4 \ + $(top_srcdir)/src/gl/m4/usleep.m4 \ + $(top_srcdir)/src/gl/m4/visibility.m4 \ + $(top_srcdir)/src/gl/m4/xalloc.m4 \ + $(top_srcdir)/src/gl/m4/yield.m4 $(top_srcdir)/m4/00gnulib.m4 \ + $(top_srcdir)/m4/__inline.m4 \ + $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ + $(top_srcdir)/m4/arpa_inet_h.m4 \ + $(top_srcdir)/m4/ax_ac_append_to_file.m4 \ + $(top_srcdir)/m4/ax_ac_print_to_file.m4 \ + $(top_srcdir)/m4/ax_add_am_macro_static.m4 \ + $(top_srcdir)/m4/ax_am_macros_static.m4 \ + $(top_srcdir)/m4/ax_check_gnu_make.m4 \ + $(top_srcdir)/m4/ax_code_coverage.m4 \ + $(top_srcdir)/m4/ax_file_escapes.m4 \ + $(top_srcdir)/m4/builtin-expect.m4 \ + $(top_srcdir)/m4/byteswap.m4 $(top_srcdir)/m4/close.m4 \ + $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ + $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/errno_h.m4 \ + $(top_srcdir)/m4/explicit_bzero.m4 \ + $(top_srcdir)/m4/exponentd.m4 $(top_srcdir)/m4/extensions.m4 \ + $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \ + $(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \ + $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fopen.m4 \ + $(top_srcdir)/m4/free.m4 $(top_srcdir)/m4/fseeko.m4 \ + $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/ftell.m4 \ + $(top_srcdir)/m4/ftello.m4 $(top_srcdir)/m4/func.m4 \ + $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ + $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/gettext.m4 \ + $(top_srcdir)/m4/gettimeofday.m4 \ + $(top_srcdir)/m4/gnulib-common.m4 \ + $(top_srcdir)/m4/gnulib-comp.m4 $(top_srcdir)/m4/gtk-doc.m4 \ + $(top_srcdir)/m4/guile.m4 $(top_srcdir)/m4/hooks.m4 \ + $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_ntop.m4 \ + $(top_srcdir)/m4/inet_pton.m4 $(top_srcdir)/m4/intlmacosx.m4 \ + $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttypes.m4 \ + $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/largefile.m4 \ + $(top_srcdir)/m4/ld-output-def.m4 \ + $(top_srcdir)/m4/ld-version-script.m4 $(top_srcdir)/m4/ldd.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/lock.m4 \ + $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \ + $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \ + $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/memmem.m4 \ + $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mmap-anon.m4 \ + $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \ + $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \ + $(top_srcdir)/m4/netdb_h.m4 $(top_srcdir)/m4/netinet_in_h.m4 \ + $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/off_t.m4 \ + $(top_srcdir)/m4/open-cloexec.m4 \ + $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/pkg.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ + $(top_srcdir)/m4/read-file.m4 $(top_srcdir)/m4/realloc.m4 \ + $(top_srcdir)/m4/secure_getenv.m4 $(top_srcdir)/m4/size_max.m4 \ + $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \ + $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \ + $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ + $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdalign.m4 \ + $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ + $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ + $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ + $(top_srcdir)/m4/stpcpy.m4 $(top_srcdir)/m4/strcase.m4 \ + $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/string_h.m4 \ + $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strndup.m4 \ + $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtok_r.m4 \ + $(top_srcdir)/m4/strverscmp.m4 \ + $(top_srcdir)/m4/sys_socket_h.m4 \ + $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \ + $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \ + $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/ungetc.m4 \ + $(top_srcdir)/m4/unistd_h.m4 \ + $(top_srcdir)/m4/valgrind-tests.m4 \ + $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/vasprintf.m4 \ + $(top_srcdir)/m4/vsnprintf.m4 $(top_srcdir)/m4/warn-on-use.m4 \ + $(top_srcdir)/m4/warnings.m4 $(top_srcdir)/m4/wchar_h.m4 \ + $(top_srcdir)/m4/wchar_t.m4 $(top_srcdir)/m4/wint_t.m4 \ + $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/m4/zzgnulib.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(noinst_HEADERS) \ + $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +LIBRARIES = $(noinst_LIBRARIES) +LTLIBRARIES = $(noinst_LTLIBRARIES) +am__DEPENDENCIES_1 = +am__libunistring_la_SOURCES_DIST = unictype/categ_C.c \ + unictype/categ_Cc.c unictype/categ_Cf.c unictype/categ_Cn.c \ + unictype/categ_Co.c unictype/categ_Cs.c unictype/categ_L.c \ + unictype/categ_LC.c unictype/categ_Ll.c unictype/categ_Lm.c \ + unictype/categ_Lo.c unictype/categ_Lt.c unictype/categ_Lu.c \ + unictype/categ_M.c unictype/categ_Mc.c unictype/categ_Me.c \ + unictype/categ_Mn.c unictype/categ_N.c unictype/categ_Nd.c \ + unictype/categ_Nl.c unictype/categ_No.c unictype/categ_P.c \ + unictype/categ_Pc.c unictype/categ_Pd.c unictype/categ_Pe.c \ + unictype/categ_Pf.c unictype/categ_Pi.c unictype/categ_Po.c \ + unictype/categ_Ps.c unictype/categ_S.c unictype/categ_Sc.c \ + unictype/categ_Sk.c unictype/categ_Sm.c unictype/categ_So.c \ + unictype/categ_Z.c unictype/categ_Zl.c unictype/categ_Zp.c \ + unictype/categ_Zs.c unictype/categ_and.c \ + unictype/categ_and_not.c unictype/categ_byname.c \ + unictype/categ_longname.c unictype/categ_name.c \ + unictype/categ_none.c unictype/categ_of.c unictype/categ_or.c \ + unictype/categ_test.c unictype/combiningclass.c \ + unictype/pr_default_ignorable_code_point.c \ + unictype/pr_join_control.c unictype/pr_not_a_character.c \ + uninorm/canonical-decomposition.c \ + uninorm/compat-decomposition.c uninorm/composition.c \ + uninorm/decompose-internal.c uninorm/decomposition.c \ + uninorm/decomposition-table.c uninorm/nfc.c uninorm/nfd.c \ + uninorm/nfkc.c uninorm/nfkd.c uninorm/u16-normalize.c \ + uninorm/u32-normalize.c uninorm/u8-normalize.c \ + unistr/u16-cpy.c unistr/u16-mbtouc-unsafe.c \ + unistr/u16-mbtouc-unsafe-aux.c unistr/u16-mbtoucr.c \ + unistr/u16-to-u8.c unistr/u16-uctomb.c unistr/u16-uctomb-aux.c \ + unistr/u32-cpy.c unistr/u32-mbtouc-unsafe.c unistr/u32-to-u8.c \ + unistr/u32-uctomb.c unistr/u8-check.c unistr/u8-cpy.c \ + unistr/u8-mbtouc-unsafe.c unistr/u8-mbtouc-unsafe-aux.c \ + unistr/u8-mbtoucr.c unistr/u8-to-u16.c unistr/u8-to-u32.c \ + unistr/u8-uctomb.c unistr/u8-uctomb-aux.c +am__dirstamp = $(am__leading_dot)dirstamp +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_C_TRUE@am__objects_1 = unictype/categ_C.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CC_TRUE@am__objects_2 = unictype/categ_Cc.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CF_TRUE@am__objects_3 = unictype/categ_Cf.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CN_TRUE@am__objects_4 = unictype/categ_Cn.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CO_TRUE@am__objects_5 = unictype/categ_Co.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_CS_TRUE@am__objects_6 = unictype/categ_Cs.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_L_TRUE@am__objects_7 = unictype/categ_L.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LC_TRUE@am__objects_8 = unictype/categ_LC.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LL_TRUE@am__objects_9 = unictype/categ_Ll.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LM_TRUE@am__objects_10 = unictype/categ_Lm.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LO_TRUE@am__objects_11 = unictype/categ_Lo.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LT_TRUE@am__objects_12 = unictype/categ_Lt.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LU_TRUE@am__objects_13 = unictype/categ_Lu.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_M_TRUE@am__objects_14 = unictype/categ_M.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_MC_TRUE@am__objects_15 = unictype/categ_Mc.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ME_TRUE@am__objects_16 = unictype/categ_Me.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_MN_TRUE@am__objects_17 = unictype/categ_Mn.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_N_TRUE@am__objects_18 = unictype/categ_N.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ND_TRUE@am__objects_19 = unictype/categ_Nd.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NL_TRUE@am__objects_20 = unictype/categ_Nl.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NO_TRUE@am__objects_21 = unictype/categ_No.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_P_TRUE@am__objects_22 = unictype/categ_P.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PC_TRUE@am__objects_23 = unictype/categ_Pc.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PD_TRUE@am__objects_24 = unictype/categ_Pd.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PE_TRUE@am__objects_25 = unictype/categ_Pe.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PF_TRUE@am__objects_26 = unictype/categ_Pf.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PI_TRUE@am__objects_27 = unictype/categ_Pi.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PO_TRUE@am__objects_28 = unictype/categ_Po.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_PS_TRUE@am__objects_29 = unictype/categ_Ps.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_S_TRUE@am__objects_30 = unictype/categ_S.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SC_TRUE@am__objects_31 = unictype/categ_Sc.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SK_TRUE@am__objects_32 = unictype/categ_Sk.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SM_TRUE@am__objects_33 = unictype/categ_Sm.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SO_TRUE@am__objects_34 = unictype/categ_So.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_Z_TRUE@am__objects_35 = unictype/categ_Z.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ZL_TRUE@am__objects_36 = unictype/categ_Zl.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ZP_TRUE@am__objects_37 = unictype/categ_Zp.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ZS_TRUE@am__objects_38 = unictype/categ_Zs.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_AND_TRUE@am__objects_39 = unictype/categ_and.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_AND_NOT_TRUE@am__objects_40 = unictype/categ_and_not.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_BYNAME_TRUE@am__objects_41 = unictype/categ_byname.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_LONGNAME_TRUE@am__objects_42 = unictype/categ_longname.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NAME_TRUE@am__objects_43 = unictype/categ_name.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_NONE_TRUE@am__objects_44 = unictype/categ_none.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_OF_TRUE@am__objects_45 = unictype/categ_of.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_OR_TRUE@am__objects_46 = unictype/categ_or.lo +@LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_TEST_TRUE@am__objects_47 = unictype/categ_test.lo +@LIBUNISTRING_COMPILE_UNICTYPE_COMBINING_CLASS_TRUE@am__objects_48 = unictype/combiningclass.lo +@LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_DEFAULT_IGNORABLE_CODE_POINT_TRUE@am__objects_49 = unictype/pr_default_ignorable_code_point.lo +@LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_JOIN_CONTROL_TRUE@am__objects_50 = unictype/pr_join_control.lo +@LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_NOT_A_CHARACTER_TRUE@am__objects_51 = unictype/pr_not_a_character.lo +@LIBUNISTRING_COMPILE_UNINORM_CANONICAL_DECOMPOSITION_TRUE@am__objects_52 = uninorm/canonical-decomposition.lo +@LIBUNISTRING_COMPILE_UNINORM_COMPOSITION_TRUE@am__objects_53 = uninorm/composition.lo +@LIBUNISTRING_COMPILE_UNINORM_DECOMPOSITION_TRUE@am__objects_54 = uninorm/decomposition.lo +@LIBUNISTRING_COMPILE_UNINORM_NFC_TRUE@am__objects_55 = \ +@LIBUNISTRING_COMPILE_UNINORM_NFC_TRUE@ uninorm/nfc.lo +@LIBUNISTRING_COMPILE_UNINORM_NFD_TRUE@am__objects_56 = \ +@LIBUNISTRING_COMPILE_UNINORM_NFD_TRUE@ uninorm/nfd.lo +@LIBUNISTRING_COMPILE_UNINORM_NFKC_TRUE@am__objects_57 = \ +@LIBUNISTRING_COMPILE_UNINORM_NFKC_TRUE@ uninorm/nfkc.lo +@LIBUNISTRING_COMPILE_UNINORM_NFKD_TRUE@am__objects_58 = \ +@LIBUNISTRING_COMPILE_UNINORM_NFKD_TRUE@ uninorm/nfkd.lo +@LIBUNISTRING_COMPILE_UNINORM_U16_NORMALIZE_TRUE@am__objects_59 = uninorm/u16-normalize.lo +@LIBUNISTRING_COMPILE_UNINORM_U32_NORMALIZE_TRUE@am__objects_60 = uninorm/u32-normalize.lo +@LIBUNISTRING_COMPILE_UNINORM_U8_NORMALIZE_TRUE@am__objects_61 = uninorm/u8-normalize.lo +@LIBUNISTRING_COMPILE_UNISTR_U16_CPY_TRUE@am__objects_62 = \ +@LIBUNISTRING_COMPILE_UNISTR_U16_CPY_TRUE@ unistr/u16-cpy.lo +@LIBUNISTRING_COMPILE_UNISTR_U16_MBTOUC_UNSAFE_TRUE@am__objects_63 = unistr/u16-mbtouc-unsafe.lo \ +@LIBUNISTRING_COMPILE_UNISTR_U16_MBTOUC_UNSAFE_TRUE@ unistr/u16-mbtouc-unsafe-aux.lo +@LIBUNISTRING_COMPILE_UNISTR_U16_MBTOUCR_TRUE@am__objects_64 = unistr/u16-mbtoucr.lo +@LIBUNISTRING_COMPILE_UNISTR_U16_TO_U8_TRUE@am__objects_65 = unistr/u16-to-u8.lo +@LIBUNISTRING_COMPILE_UNISTR_U16_UCTOMB_TRUE@am__objects_66 = unistr/u16-uctomb.lo \ +@LIBUNISTRING_COMPILE_UNISTR_U16_UCTOMB_TRUE@ unistr/u16-uctomb-aux.lo +@LIBUNISTRING_COMPILE_UNISTR_U32_CPY_TRUE@am__objects_67 = \ +@LIBUNISTRING_COMPILE_UNISTR_U32_CPY_TRUE@ unistr/u32-cpy.lo +@LIBUNISTRING_COMPILE_UNISTR_U32_MBTOUC_UNSAFE_TRUE@am__objects_68 = unistr/u32-mbtouc-unsafe.lo +@LIBUNISTRING_COMPILE_UNISTR_U32_TO_U8_TRUE@am__objects_69 = unistr/u32-to-u8.lo +@LIBUNISTRING_COMPILE_UNISTR_U32_UCTOMB_TRUE@am__objects_70 = unistr/u32-uctomb.lo +@LIBUNISTRING_COMPILE_UNISTR_U8_CHECK_TRUE@am__objects_71 = \ +@LIBUNISTRING_COMPILE_UNISTR_U8_CHECK_TRUE@ unistr/u8-check.lo +@LIBUNISTRING_COMPILE_UNISTR_U8_CPY_TRUE@am__objects_72 = \ +@LIBUNISTRING_COMPILE_UNISTR_U8_CPY_TRUE@ unistr/u8-cpy.lo +@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUC_UNSAFE_TRUE@am__objects_73 = unistr/u8-mbtouc-unsafe.lo \ +@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUC_UNSAFE_TRUE@ unistr/u8-mbtouc-unsafe-aux.lo +@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE@am__objects_74 = unistr/u8-mbtoucr.lo +@LIBUNISTRING_COMPILE_UNISTR_U8_TO_U16_TRUE@am__objects_75 = unistr/u8-to-u16.lo +@LIBUNISTRING_COMPILE_UNISTR_U8_TO_U32_TRUE@am__objects_76 = unistr/u8-to-u32.lo +@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@am__objects_77 = unistr/u8-uctomb.lo \ +@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@ unistr/u8-uctomb-aux.lo +am_libunistring_la_OBJECTS = $(am__objects_1) $(am__objects_2) \ + $(am__objects_3) $(am__objects_4) $(am__objects_5) \ + $(am__objects_6) $(am__objects_7) $(am__objects_8) \ + $(am__objects_9) $(am__objects_10) $(am__objects_11) \ + $(am__objects_12) $(am__objects_13) $(am__objects_14) \ + $(am__objects_15) $(am__objects_16) $(am__objects_17) \ + $(am__objects_18) $(am__objects_19) $(am__objects_20) \ + $(am__objects_21) $(am__objects_22) $(am__objects_23) \ + $(am__objects_24) $(am__objects_25) $(am__objects_26) \ + $(am__objects_27) $(am__objects_28) $(am__objects_29) \ + $(am__objects_30) $(am__objects_31) $(am__objects_32) \ + $(am__objects_33) $(am__objects_34) $(am__objects_35) \ + $(am__objects_36) $(am__objects_37) $(am__objects_38) \ + $(am__objects_39) $(am__objects_40) $(am__objects_41) \ + $(am__objects_42) $(am__objects_43) $(am__objects_44) \ + $(am__objects_45) $(am__objects_46) $(am__objects_47) \ + $(am__objects_48) $(am__objects_49) $(am__objects_50) \ + $(am__objects_51) $(am__objects_52) \ + uninorm/compat-decomposition.lo $(am__objects_53) \ + uninorm/decompose-internal.lo $(am__objects_54) \ + uninorm/decomposition-table.lo $(am__objects_55) \ + $(am__objects_56) $(am__objects_57) $(am__objects_58) \ + $(am__objects_59) $(am__objects_60) $(am__objects_61) \ + $(am__objects_62) $(am__objects_63) $(am__objects_64) \ + $(am__objects_65) $(am__objects_66) $(am__objects_67) \ + $(am__objects_68) $(am__objects_69) $(am__objects_70) \ + $(am__objects_71) $(am__objects_72) $(am__objects_73) \ + $(am__objects_74) $(am__objects_75) $(am__objects_76) \ + $(am__objects_77) +libunistring_la_OBJECTS = $(am_libunistring_la_OBJECTS) +AM_V_lt = $(am__v_lt_@AM_V@) +am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) +am__v_lt_0 = --silent +am__v_lt_1 = +libunistring_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libunistring_la_LDFLAGS) $(LDFLAGS) \ + -o $@ +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = unictype/$(DEPDIR)/categ_C.Plo \ + unictype/$(DEPDIR)/categ_Cc.Plo \ + unictype/$(DEPDIR)/categ_Cf.Plo \ + unictype/$(DEPDIR)/categ_Cn.Plo \ + unictype/$(DEPDIR)/categ_Co.Plo \ + unictype/$(DEPDIR)/categ_Cs.Plo unictype/$(DEPDIR)/categ_L.Plo \ + unictype/$(DEPDIR)/categ_LC.Plo \ + unictype/$(DEPDIR)/categ_Ll.Plo \ + unictype/$(DEPDIR)/categ_Lm.Plo \ + unictype/$(DEPDIR)/categ_Lo.Plo \ + unictype/$(DEPDIR)/categ_Lt.Plo \ + unictype/$(DEPDIR)/categ_Lu.Plo unictype/$(DEPDIR)/categ_M.Plo \ + unictype/$(DEPDIR)/categ_Mc.Plo \ + unictype/$(DEPDIR)/categ_Me.Plo \ + unictype/$(DEPDIR)/categ_Mn.Plo unictype/$(DEPDIR)/categ_N.Plo \ + unictype/$(DEPDIR)/categ_Nd.Plo \ + unictype/$(DEPDIR)/categ_Nl.Plo \ + unictype/$(DEPDIR)/categ_No.Plo unictype/$(DEPDIR)/categ_P.Plo \ + unictype/$(DEPDIR)/categ_Pc.Plo \ + unictype/$(DEPDIR)/categ_Pd.Plo \ + unictype/$(DEPDIR)/categ_Pe.Plo \ + unictype/$(DEPDIR)/categ_Pf.Plo \ + unictype/$(DEPDIR)/categ_Pi.Plo \ + unictype/$(DEPDIR)/categ_Po.Plo \ + unictype/$(DEPDIR)/categ_Ps.Plo unictype/$(DEPDIR)/categ_S.Plo \ + unictype/$(DEPDIR)/categ_Sc.Plo \ + unictype/$(DEPDIR)/categ_Sk.Plo \ + unictype/$(DEPDIR)/categ_Sm.Plo \ + unictype/$(DEPDIR)/categ_So.Plo unictype/$(DEPDIR)/categ_Z.Plo \ + unictype/$(DEPDIR)/categ_Zl.Plo \ + unictype/$(DEPDIR)/categ_Zp.Plo \ + unictype/$(DEPDIR)/categ_Zs.Plo \ + unictype/$(DEPDIR)/categ_and.Plo \ + unictype/$(DEPDIR)/categ_and_not.Plo \ + unictype/$(DEPDIR)/categ_byname.Plo \ + unictype/$(DEPDIR)/categ_longname.Plo \ + unictype/$(DEPDIR)/categ_name.Plo \ + unictype/$(DEPDIR)/categ_none.Plo \ + unictype/$(DEPDIR)/categ_of.Plo \ + unictype/$(DEPDIR)/categ_or.Plo \ + unictype/$(DEPDIR)/categ_test.Plo \ + unictype/$(DEPDIR)/combiningclass.Plo \ + unictype/$(DEPDIR)/pr_default_ignorable_code_point.Plo \ + unictype/$(DEPDIR)/pr_join_control.Plo \ + unictype/$(DEPDIR)/pr_not_a_character.Plo \ + uninorm/$(DEPDIR)/canonical-decomposition.Plo \ + uninorm/$(DEPDIR)/compat-decomposition.Plo \ + uninorm/$(DEPDIR)/composition.Plo \ + uninorm/$(DEPDIR)/decompose-internal.Plo \ + uninorm/$(DEPDIR)/decomposition-table.Plo \ + uninorm/$(DEPDIR)/decomposition.Plo uninorm/$(DEPDIR)/nfc.Plo \ + uninorm/$(DEPDIR)/nfd.Plo uninorm/$(DEPDIR)/nfkc.Plo \ + uninorm/$(DEPDIR)/nfkd.Plo uninorm/$(DEPDIR)/u16-normalize.Plo \ + uninorm/$(DEPDIR)/u32-normalize.Plo \ + uninorm/$(DEPDIR)/u8-normalize.Plo \ + unistr/$(DEPDIR)/u16-cpy.Plo \ + unistr/$(DEPDIR)/u16-mbtouc-unsafe-aux.Plo \ + unistr/$(DEPDIR)/u16-mbtouc-unsafe.Plo \ + unistr/$(DEPDIR)/u16-mbtoucr.Plo \ + unistr/$(DEPDIR)/u16-to-u8.Plo \ + unistr/$(DEPDIR)/u16-uctomb-aux.Plo \ + unistr/$(DEPDIR)/u16-uctomb.Plo unistr/$(DEPDIR)/u32-cpy.Plo \ + unistr/$(DEPDIR)/u32-mbtouc-unsafe.Plo \ + unistr/$(DEPDIR)/u32-to-u8.Plo unistr/$(DEPDIR)/u32-uctomb.Plo \ + unistr/$(DEPDIR)/u8-check.Plo unistr/$(DEPDIR)/u8-cpy.Plo \ + unistr/$(DEPDIR)/u8-mbtouc-unsafe-aux.Plo \ + unistr/$(DEPDIR)/u8-mbtouc-unsafe.Plo \ + unistr/$(DEPDIR)/u8-mbtoucr.Plo unistr/$(DEPDIR)/u8-to-u16.Plo \ + unistr/$(DEPDIR)/u8-to-u32.Plo \ + unistr/$(DEPDIR)/u8-uctomb-aux.Plo \ + unistr/$(DEPDIR)/u8-uctomb.Plo +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_@AM_V@) +am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_@AM_V@) +am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = $(libunistring_la_SOURCES) $(EXTRA_libunistring_la_SOURCES) +DIST_SOURCES = $(am__libunistring_la_SOURCES_DIST) \ + $(EXTRA_libunistring_la_SOURCES) +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +HEADERS = $(noinst_HEADERS) +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + distdir distdir-am +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +DIST_SUBDIRS = $(SUBDIRS) +am__DIST_COMMON = $(srcdir)/Makefile.in \ + $(top_srcdir)/build-aux/depcomp +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +AARCH64_CCASFLAGS = @AARCH64_CCASFLAGS@ +ACLOCAL = @ACLOCAL@ +ALLOCA = @ALLOCA@ +ALLOCA_H = @ALLOCA_H@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AM_VALGRINDFLAGS = @AM_VALGRINDFLAGS@ +APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ +AR = @AR@ +ARFLAGS = @ARFLAGS@ +ASN1PARSER = @ASN1PARSER@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +BITSIZEOF_PTRDIFF_T = @BITSIZEOF_PTRDIFF_T@ +BITSIZEOF_SIG_ATOMIC_T = @BITSIZEOF_SIG_ATOMIC_T@ +BITSIZEOF_SIZE_T = @BITSIZEOF_SIZE_T@ +BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@ +BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@ +BYTESWAP_H = @BYTESWAP_H@ +CC = @CC@ +CCAS = @CCAS@ +CCASDEPMODE = @CCASDEPMODE@ +CCASFLAGS = @CCASFLAGS@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CFLAG_VISIBILITY = @CFLAG_VISIBILITY@ +CMOCKA_CFLAGS = @CMOCKA_CFLAGS@ +CMOCKA_LIBS = @CMOCKA_LIBS@ +CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@ +CODE_COVERAGE_CPPFLAGS = @CODE_COVERAGE_CPPFLAGS@ +CODE_COVERAGE_CXXFLAGS = @CODE_COVERAGE_CXXFLAGS@ +CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@ +CODE_COVERAGE_LIBS = @CODE_COVERAGE_LIBS@ +CONFIG_INCLUDE = @CONFIG_INCLUDE@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CRYWRAP_PATCHLEVEL = @CRYWRAP_PATCHLEVEL@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CXX_LT_AGE = @CXX_LT_AGE@ +CXX_LT_CURRENT = @CXX_LT_CURRENT@ +CXX_LT_REVISION = @CXX_LT_REVISION@ +CYGPATH_W = @CYGPATH_W@ +DEFAULT_VALGRINDFLAGS = @DEFAULT_VALGRINDFLAGS@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DLL_SSL_VERSION = @DLL_SSL_VERSION@ +DLL_VERSION = @DLL_VERSION@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ +EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ +ENABLE_PADLOCK = @ENABLE_PADLOCK@ +ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ +ENOLINK_VALUE = @ENOLINK_VALUE@ +EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ +EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ +ERRNO_H = @ERRNO_H@ +ETAGS = @ETAGS@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +FILECMD = @FILECMD@ +FIPS140_LIBS = @FIPS140_LIBS@ +FLOAT_H = @FLOAT_H@ +GCOV = @GCOV@ +GENHTML = @GENHTML@ +GETADDRINFO_LIB = @GETADDRINFO_LIB@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GL_GGL_GNULIB_ACCEPT = @GL_GGL_GNULIB_ACCEPT@ +GL_GGL_GNULIB_ACCEPT4 = @GL_GGL_GNULIB_ACCEPT4@ +GL_GGL_GNULIB_ACCESS = @GL_GGL_GNULIB_ACCESS@ +GL_GGL_GNULIB_ALIGNED_ALLOC = @GL_GGL_GNULIB_ALIGNED_ALLOC@ +GL_GGL_GNULIB_ATOLL = @GL_GGL_GNULIB_ATOLL@ +GL_GGL_GNULIB_BIND = @GL_GGL_GNULIB_BIND@ +GL_GGL_GNULIB_BTOWC = @GL_GGL_GNULIB_BTOWC@ +GL_GGL_GNULIB_CALLOC_POSIX = @GL_GGL_GNULIB_CALLOC_POSIX@ +GL_GGL_GNULIB_CANONICALIZE_FILE_NAME = @GL_GGL_GNULIB_CANONICALIZE_FILE_NAME@ +GL_GGL_GNULIB_CHDIR = @GL_GGL_GNULIB_CHDIR@ +GL_GGL_GNULIB_CHOWN = @GL_GGL_GNULIB_CHOWN@ +GL_GGL_GNULIB_CLOSE = @GL_GGL_GNULIB_CLOSE@ +GL_GGL_GNULIB_CONNECT = @GL_GGL_GNULIB_CONNECT@ +GL_GGL_GNULIB_COPY_FILE_RANGE = @GL_GGL_GNULIB_COPY_FILE_RANGE@ +GL_GGL_GNULIB_CREAT = @GL_GGL_GNULIB_CREAT@ +GL_GGL_GNULIB_CTIME = @GL_GGL_GNULIB_CTIME@ +GL_GGL_GNULIB_DPRINTF = @GL_GGL_GNULIB_DPRINTF@ +GL_GGL_GNULIB_DUP = @GL_GGL_GNULIB_DUP@ +GL_GGL_GNULIB_DUP2 = @GL_GGL_GNULIB_DUP2@ +GL_GGL_GNULIB_DUP3 = @GL_GGL_GNULIB_DUP3@ +GL_GGL_GNULIB_DUPLOCALE = @GL_GGL_GNULIB_DUPLOCALE@ +GL_GGL_GNULIB_ENVIRON = @GL_GGL_GNULIB_ENVIRON@ +GL_GGL_GNULIB_EUIDACCESS = @GL_GGL_GNULIB_EUIDACCESS@ +GL_GGL_GNULIB_EXECL = @GL_GGL_GNULIB_EXECL@ +GL_GGL_GNULIB_EXECLE = @GL_GGL_GNULIB_EXECLE@ +GL_GGL_GNULIB_EXECLP = @GL_GGL_GNULIB_EXECLP@ +GL_GGL_GNULIB_EXECV = @GL_GGL_GNULIB_EXECV@ +GL_GGL_GNULIB_EXECVE = @GL_GGL_GNULIB_EXECVE@ +GL_GGL_GNULIB_EXECVP = @GL_GGL_GNULIB_EXECVP@ +GL_GGL_GNULIB_EXECVPE = @GL_GGL_GNULIB_EXECVPE@ +GL_GGL_GNULIB_EXPLICIT_BZERO = @GL_GGL_GNULIB_EXPLICIT_BZERO@ +GL_GGL_GNULIB_FACCESSAT = @GL_GGL_GNULIB_FACCESSAT@ +GL_GGL_GNULIB_FCHDIR = @GL_GGL_GNULIB_FCHDIR@ +GL_GGL_GNULIB_FCHMODAT = @GL_GGL_GNULIB_FCHMODAT@ +GL_GGL_GNULIB_FCHOWNAT = @GL_GGL_GNULIB_FCHOWNAT@ +GL_GGL_GNULIB_FCLOSE = @GL_GGL_GNULIB_FCLOSE@ +GL_GGL_GNULIB_FCNTL = @GL_GGL_GNULIB_FCNTL@ +GL_GGL_GNULIB_FDATASYNC = @GL_GGL_GNULIB_FDATASYNC@ +GL_GGL_GNULIB_FDOPEN = @GL_GGL_GNULIB_FDOPEN@ +GL_GGL_GNULIB_FFLUSH = @GL_GGL_GNULIB_FFLUSH@ +GL_GGL_GNULIB_FFS = @GL_GGL_GNULIB_FFS@ +GL_GGL_GNULIB_FFSL = @GL_GGL_GNULIB_FFSL@ +GL_GGL_GNULIB_FFSLL = @GL_GGL_GNULIB_FFSLL@ +GL_GGL_GNULIB_FGETC = @GL_GGL_GNULIB_FGETC@ +GL_GGL_GNULIB_FGETS = @GL_GGL_GNULIB_FGETS@ +GL_GGL_GNULIB_FOPEN = @GL_GGL_GNULIB_FOPEN@ +GL_GGL_GNULIB_FPRINTF = @GL_GGL_GNULIB_FPRINTF@ +GL_GGL_GNULIB_FPRINTF_POSIX = @GL_GGL_GNULIB_FPRINTF_POSIX@ +GL_GGL_GNULIB_FPURGE = @GL_GGL_GNULIB_FPURGE@ +GL_GGL_GNULIB_FPUTC = @GL_GGL_GNULIB_FPUTC@ +GL_GGL_GNULIB_FPUTS = @GL_GGL_GNULIB_FPUTS@ +GL_GGL_GNULIB_FREAD = @GL_GGL_GNULIB_FREAD@ +GL_GGL_GNULIB_FREE_POSIX = @GL_GGL_GNULIB_FREE_POSIX@ +GL_GGL_GNULIB_FREOPEN = @GL_GGL_GNULIB_FREOPEN@ +GL_GGL_GNULIB_FSCANF = @GL_GGL_GNULIB_FSCANF@ +GL_GGL_GNULIB_FSEEK = @GL_GGL_GNULIB_FSEEK@ +GL_GGL_GNULIB_FSEEKO = @GL_GGL_GNULIB_FSEEKO@ +GL_GGL_GNULIB_FSTAT = @GL_GGL_GNULIB_FSTAT@ +GL_GGL_GNULIB_FSTATAT = @GL_GGL_GNULIB_FSTATAT@ +GL_GGL_GNULIB_FSYNC = @GL_GGL_GNULIB_FSYNC@ +GL_GGL_GNULIB_FTELL = @GL_GGL_GNULIB_FTELL@ +GL_GGL_GNULIB_FTELLO = @GL_GGL_GNULIB_FTELLO@ +GL_GGL_GNULIB_FTRUNCATE = @GL_GGL_GNULIB_FTRUNCATE@ +GL_GGL_GNULIB_FUTIMENS = @GL_GGL_GNULIB_FUTIMENS@ +GL_GGL_GNULIB_FWRITE = @GL_GGL_GNULIB_FWRITE@ +GL_GGL_GNULIB_GETADDRINFO = @GL_GGL_GNULIB_GETADDRINFO@ +GL_GGL_GNULIB_GETC = @GL_GGL_GNULIB_GETC@ +GL_GGL_GNULIB_GETCHAR = @GL_GGL_GNULIB_GETCHAR@ +GL_GGL_GNULIB_GETCWD = @GL_GGL_GNULIB_GETCWD@ +GL_GGL_GNULIB_GETDELIM = @GL_GGL_GNULIB_GETDELIM@ +GL_GGL_GNULIB_GETDOMAINNAME = @GL_GGL_GNULIB_GETDOMAINNAME@ +GL_GGL_GNULIB_GETDTABLESIZE = @GL_GGL_GNULIB_GETDTABLESIZE@ +GL_GGL_GNULIB_GETENTROPY = @GL_GGL_GNULIB_GETENTROPY@ +GL_GGL_GNULIB_GETGROUPS = @GL_GGL_GNULIB_GETGROUPS@ +GL_GGL_GNULIB_GETHOSTNAME = @GL_GGL_GNULIB_GETHOSTNAME@ +GL_GGL_GNULIB_GETLINE = @GL_GGL_GNULIB_GETLINE@ +GL_GGL_GNULIB_GETLOADAVG = @GL_GGL_GNULIB_GETLOADAVG@ +GL_GGL_GNULIB_GETLOGIN = @GL_GGL_GNULIB_GETLOGIN@ +GL_GGL_GNULIB_GETLOGIN_R = @GL_GGL_GNULIB_GETLOGIN_R@ +GL_GGL_GNULIB_GETOPT_POSIX = @GL_GGL_GNULIB_GETOPT_POSIX@ +GL_GGL_GNULIB_GETPAGESIZE = @GL_GGL_GNULIB_GETPAGESIZE@ +GL_GGL_GNULIB_GETPASS = @GL_GGL_GNULIB_GETPASS@ +GL_GGL_GNULIB_GETPEERNAME = @GL_GGL_GNULIB_GETPEERNAME@ +GL_GGL_GNULIB_GETSOCKNAME = @GL_GGL_GNULIB_GETSOCKNAME@ +GL_GGL_GNULIB_GETSOCKOPT = @GL_GGL_GNULIB_GETSOCKOPT@ +GL_GGL_GNULIB_GETSUBOPT = @GL_GGL_GNULIB_GETSUBOPT@ +GL_GGL_GNULIB_GETTIMEOFDAY = @GL_GGL_GNULIB_GETTIMEOFDAY@ +GL_GGL_GNULIB_GETUMASK = @GL_GGL_GNULIB_GETUMASK@ +GL_GGL_GNULIB_GETUSERSHELL = @GL_GGL_GNULIB_GETUSERSHELL@ +GL_GGL_GNULIB_GRANTPT = @GL_GGL_GNULIB_GRANTPT@ +GL_GGL_GNULIB_GROUP_MEMBER = @GL_GGL_GNULIB_GROUP_MEMBER@ +GL_GGL_GNULIB_IMAXABS = @GL_GGL_GNULIB_IMAXABS@ +GL_GGL_GNULIB_IMAXDIV = @GL_GGL_GNULIB_IMAXDIV@ +GL_GGL_GNULIB_INET_NTOP = @GL_GGL_GNULIB_INET_NTOP@ +GL_GGL_GNULIB_INET_PTON = @GL_GGL_GNULIB_INET_PTON@ +GL_GGL_GNULIB_IOCTL = @GL_GGL_GNULIB_IOCTL@ +GL_GGL_GNULIB_ISATTY = @GL_GGL_GNULIB_ISATTY@ +GL_GGL_GNULIB_ISBLANK = @GL_GGL_GNULIB_ISBLANK@ +GL_GGL_GNULIB_LCHMOD = @GL_GGL_GNULIB_LCHMOD@ +GL_GGL_GNULIB_LCHOWN = @GL_GGL_GNULIB_LCHOWN@ +GL_GGL_GNULIB_LINK = @GL_GGL_GNULIB_LINK@ +GL_GGL_GNULIB_LINKAT = @GL_GGL_GNULIB_LINKAT@ +GL_GGL_GNULIB_LISTEN = @GL_GGL_GNULIB_LISTEN@ +GL_GGL_GNULIB_LOCALECONV = @GL_GGL_GNULIB_LOCALECONV@ +GL_GGL_GNULIB_LOCALENAME = @GL_GGL_GNULIB_LOCALENAME@ +GL_GGL_GNULIB_LOCALTIME = @GL_GGL_GNULIB_LOCALTIME@ +GL_GGL_GNULIB_LSEEK = @GL_GGL_GNULIB_LSEEK@ +GL_GGL_GNULIB_LSTAT = @GL_GGL_GNULIB_LSTAT@ +GL_GGL_GNULIB_MALLOC_POSIX = @GL_GGL_GNULIB_MALLOC_POSIX@ +GL_GGL_GNULIB_MBRLEN = @GL_GGL_GNULIB_MBRLEN@ +GL_GGL_GNULIB_MBRTOWC = @GL_GGL_GNULIB_MBRTOWC@ +GL_GGL_GNULIB_MBSCASECMP = @GL_GGL_GNULIB_MBSCASECMP@ +GL_GGL_GNULIB_MBSCASESTR = @GL_GGL_GNULIB_MBSCASESTR@ +GL_GGL_GNULIB_MBSCHR = @GL_GGL_GNULIB_MBSCHR@ +GL_GGL_GNULIB_MBSCSPN = @GL_GGL_GNULIB_MBSCSPN@ +GL_GGL_GNULIB_MBSINIT = @GL_GGL_GNULIB_MBSINIT@ +GL_GGL_GNULIB_MBSLEN = @GL_GGL_GNULIB_MBSLEN@ +GL_GGL_GNULIB_MBSNCASECMP = @GL_GGL_GNULIB_MBSNCASECMP@ +GL_GGL_GNULIB_MBSNLEN = @GL_GGL_GNULIB_MBSNLEN@ +GL_GGL_GNULIB_MBSNRTOWCS = @GL_GGL_GNULIB_MBSNRTOWCS@ +GL_GGL_GNULIB_MBSPBRK = @GL_GGL_GNULIB_MBSPBRK@ +GL_GGL_GNULIB_MBSPCASECMP = @GL_GGL_GNULIB_MBSPCASECMP@ +GL_GGL_GNULIB_MBSRCHR = @GL_GGL_GNULIB_MBSRCHR@ +GL_GGL_GNULIB_MBSRTOWCS = @GL_GGL_GNULIB_MBSRTOWCS@ +GL_GGL_GNULIB_MBSSEP = @GL_GGL_GNULIB_MBSSEP@ +GL_GGL_GNULIB_MBSSPN = @GL_GGL_GNULIB_MBSSPN@ +GL_GGL_GNULIB_MBSSTR = @GL_GGL_GNULIB_MBSSTR@ +GL_GGL_GNULIB_MBSTOK_R = @GL_GGL_GNULIB_MBSTOK_R@ +GL_GGL_GNULIB_MBTOWC = @GL_GGL_GNULIB_MBTOWC@ +GL_GGL_GNULIB_MDA_ACCESS = @GL_GGL_GNULIB_MDA_ACCESS@ +GL_GGL_GNULIB_MDA_CHDIR = @GL_GGL_GNULIB_MDA_CHDIR@ +GL_GGL_GNULIB_MDA_CHMOD = @GL_GGL_GNULIB_MDA_CHMOD@ +GL_GGL_GNULIB_MDA_CLOSE = @GL_GGL_GNULIB_MDA_CLOSE@ +GL_GGL_GNULIB_MDA_CREAT = @GL_GGL_GNULIB_MDA_CREAT@ +GL_GGL_GNULIB_MDA_DUP = @GL_GGL_GNULIB_MDA_DUP@ +GL_GGL_GNULIB_MDA_DUP2 = @GL_GGL_GNULIB_MDA_DUP2@ +GL_GGL_GNULIB_MDA_ECVT = @GL_GGL_GNULIB_MDA_ECVT@ +GL_GGL_GNULIB_MDA_EXECL = @GL_GGL_GNULIB_MDA_EXECL@ +GL_GGL_GNULIB_MDA_EXECLE = @GL_GGL_GNULIB_MDA_EXECLE@ +GL_GGL_GNULIB_MDA_EXECLP = @GL_GGL_GNULIB_MDA_EXECLP@ +GL_GGL_GNULIB_MDA_EXECV = @GL_GGL_GNULIB_MDA_EXECV@ +GL_GGL_GNULIB_MDA_EXECVE = @GL_GGL_GNULIB_MDA_EXECVE@ +GL_GGL_GNULIB_MDA_EXECVP = @GL_GGL_GNULIB_MDA_EXECVP@ +GL_GGL_GNULIB_MDA_EXECVPE = @GL_GGL_GNULIB_MDA_EXECVPE@ +GL_GGL_GNULIB_MDA_FCLOSEALL = @GL_GGL_GNULIB_MDA_FCLOSEALL@ +GL_GGL_GNULIB_MDA_FCVT = @GL_GGL_GNULIB_MDA_FCVT@ +GL_GGL_GNULIB_MDA_FDOPEN = @GL_GGL_GNULIB_MDA_FDOPEN@ +GL_GGL_GNULIB_MDA_FILENO = @GL_GGL_GNULIB_MDA_FILENO@ +GL_GGL_GNULIB_MDA_GCVT = @GL_GGL_GNULIB_MDA_GCVT@ +GL_GGL_GNULIB_MDA_GETCWD = @GL_GGL_GNULIB_MDA_GETCWD@ +GL_GGL_GNULIB_MDA_GETPID = @GL_GGL_GNULIB_MDA_GETPID@ +GL_GGL_GNULIB_MDA_GETW = @GL_GGL_GNULIB_MDA_GETW@ +GL_GGL_GNULIB_MDA_ISATTY = @GL_GGL_GNULIB_MDA_ISATTY@ +GL_GGL_GNULIB_MDA_LSEEK = @GL_GGL_GNULIB_MDA_LSEEK@ +GL_GGL_GNULIB_MDA_MEMCCPY = @GL_GGL_GNULIB_MDA_MEMCCPY@ +GL_GGL_GNULIB_MDA_MKDIR = @GL_GGL_GNULIB_MDA_MKDIR@ +GL_GGL_GNULIB_MDA_MKTEMP = @GL_GGL_GNULIB_MDA_MKTEMP@ +GL_GGL_GNULIB_MDA_OPEN = @GL_GGL_GNULIB_MDA_OPEN@ +GL_GGL_GNULIB_MDA_PUTENV = @GL_GGL_GNULIB_MDA_PUTENV@ +GL_GGL_GNULIB_MDA_PUTW = @GL_GGL_GNULIB_MDA_PUTW@ +GL_GGL_GNULIB_MDA_READ = @GL_GGL_GNULIB_MDA_READ@ +GL_GGL_GNULIB_MDA_RMDIR = @GL_GGL_GNULIB_MDA_RMDIR@ +GL_GGL_GNULIB_MDA_STRDUP = @GL_GGL_GNULIB_MDA_STRDUP@ +GL_GGL_GNULIB_MDA_SWAB = @GL_GGL_GNULIB_MDA_SWAB@ +GL_GGL_GNULIB_MDA_TEMPNAM = @GL_GGL_GNULIB_MDA_TEMPNAM@ +GL_GGL_GNULIB_MDA_TZSET = @GL_GGL_GNULIB_MDA_TZSET@ +GL_GGL_GNULIB_MDA_UMASK = @GL_GGL_GNULIB_MDA_UMASK@ +GL_GGL_GNULIB_MDA_UNLINK = @GL_GGL_GNULIB_MDA_UNLINK@ +GL_GGL_GNULIB_MDA_WCSDUP = @GL_GGL_GNULIB_MDA_WCSDUP@ +GL_GGL_GNULIB_MDA_WRITE = @GL_GGL_GNULIB_MDA_WRITE@ +GL_GGL_GNULIB_MEMCHR = @GL_GGL_GNULIB_MEMCHR@ +GL_GGL_GNULIB_MEMMEM = @GL_GGL_GNULIB_MEMMEM@ +GL_GGL_GNULIB_MEMPCPY = @GL_GGL_GNULIB_MEMPCPY@ +GL_GGL_GNULIB_MEMRCHR = @GL_GGL_GNULIB_MEMRCHR@ +GL_GGL_GNULIB_MKDIR = @GL_GGL_GNULIB_MKDIR@ +GL_GGL_GNULIB_MKDIRAT = @GL_GGL_GNULIB_MKDIRAT@ +GL_GGL_GNULIB_MKDTEMP = @GL_GGL_GNULIB_MKDTEMP@ +GL_GGL_GNULIB_MKFIFO = @GL_GGL_GNULIB_MKFIFO@ +GL_GGL_GNULIB_MKFIFOAT = @GL_GGL_GNULIB_MKFIFOAT@ +GL_GGL_GNULIB_MKNOD = @GL_GGL_GNULIB_MKNOD@ +GL_GGL_GNULIB_MKNODAT = @GL_GGL_GNULIB_MKNODAT@ +GL_GGL_GNULIB_MKOSTEMP = @GL_GGL_GNULIB_MKOSTEMP@ +GL_GGL_GNULIB_MKOSTEMPS = @GL_GGL_GNULIB_MKOSTEMPS@ +GL_GGL_GNULIB_MKSTEMP = @GL_GGL_GNULIB_MKSTEMP@ +GL_GGL_GNULIB_MKSTEMPS = @GL_GGL_GNULIB_MKSTEMPS@ +GL_GGL_GNULIB_MKTIME = @GL_GGL_GNULIB_MKTIME@ +GL_GGL_GNULIB_NANOSLEEP = @GL_GGL_GNULIB_NANOSLEEP@ +GL_GGL_GNULIB_NL_LANGINFO = @GL_GGL_GNULIB_NL_LANGINFO@ +GL_GGL_GNULIB_NONBLOCKING = @GL_GGL_GNULIB_NONBLOCKING@ +GL_GGL_GNULIB_OBSTACK_PRINTF = @GL_GGL_GNULIB_OBSTACK_PRINTF@ +GL_GGL_GNULIB_OBSTACK_PRINTF_POSIX = @GL_GGL_GNULIB_OBSTACK_PRINTF_POSIX@ +GL_GGL_GNULIB_OPEN = @GL_GGL_GNULIB_OPEN@ +GL_GGL_GNULIB_OPENAT = @GL_GGL_GNULIB_OPENAT@ +GL_GGL_GNULIB_OVERRIDES_STRUCT_STAT = @GL_GGL_GNULIB_OVERRIDES_STRUCT_STAT@ +GL_GGL_GNULIB_PCLOSE = @GL_GGL_GNULIB_PCLOSE@ +GL_GGL_GNULIB_PERROR = @GL_GGL_GNULIB_PERROR@ +GL_GGL_GNULIB_PIPE = @GL_GGL_GNULIB_PIPE@ +GL_GGL_GNULIB_PIPE2 = @GL_GGL_GNULIB_PIPE2@ +GL_GGL_GNULIB_POPEN = @GL_GGL_GNULIB_POPEN@ +GL_GGL_GNULIB_POSIX_MEMALIGN = @GL_GGL_GNULIB_POSIX_MEMALIGN@ +GL_GGL_GNULIB_POSIX_OPENPT = @GL_GGL_GNULIB_POSIX_OPENPT@ +GL_GGL_GNULIB_PREAD = @GL_GGL_GNULIB_PREAD@ +GL_GGL_GNULIB_PRINTF = @GL_GGL_GNULIB_PRINTF@ +GL_GGL_GNULIB_PRINTF_POSIX = @GL_GGL_GNULIB_PRINTF_POSIX@ +GL_GGL_GNULIB_PSELECT = @GL_GGL_GNULIB_PSELECT@ +GL_GGL_GNULIB_PTHREAD_COND = @GL_GGL_GNULIB_PTHREAD_COND@ +GL_GGL_GNULIB_PTHREAD_MUTEX = @GL_GGL_GNULIB_PTHREAD_MUTEX@ +GL_GGL_GNULIB_PTHREAD_MUTEX_TIMEDLOCK = @GL_GGL_GNULIB_PTHREAD_MUTEX_TIMEDLOCK@ +GL_GGL_GNULIB_PTHREAD_ONCE = @GL_GGL_GNULIB_PTHREAD_ONCE@ +GL_GGL_GNULIB_PTHREAD_RWLOCK = @GL_GGL_GNULIB_PTHREAD_RWLOCK@ +GL_GGL_GNULIB_PTHREAD_SIGMASK = @GL_GGL_GNULIB_PTHREAD_SIGMASK@ +GL_GGL_GNULIB_PTHREAD_SPIN = @GL_GGL_GNULIB_PTHREAD_SPIN@ +GL_GGL_GNULIB_PTHREAD_THREAD = @GL_GGL_GNULIB_PTHREAD_THREAD@ +GL_GGL_GNULIB_PTHREAD_TSS = @GL_GGL_GNULIB_PTHREAD_TSS@ +GL_GGL_GNULIB_PTSNAME = @GL_GGL_GNULIB_PTSNAME@ +GL_GGL_GNULIB_PTSNAME_R = @GL_GGL_GNULIB_PTSNAME_R@ +GL_GGL_GNULIB_PUTC = @GL_GGL_GNULIB_PUTC@ +GL_GGL_GNULIB_PUTCHAR = @GL_GGL_GNULIB_PUTCHAR@ +GL_GGL_GNULIB_PUTENV = @GL_GGL_GNULIB_PUTENV@ +GL_GGL_GNULIB_PUTS = @GL_GGL_GNULIB_PUTS@ +GL_GGL_GNULIB_PWRITE = @GL_GGL_GNULIB_PWRITE@ +GL_GGL_GNULIB_QSORT_R = @GL_GGL_GNULIB_QSORT_R@ +GL_GGL_GNULIB_RAISE = @GL_GGL_GNULIB_RAISE@ +GL_GGL_GNULIB_RANDOM = @GL_GGL_GNULIB_RANDOM@ +GL_GGL_GNULIB_RANDOM_R = @GL_GGL_GNULIB_RANDOM_R@ +GL_GGL_GNULIB_RAWMEMCHR = @GL_GGL_GNULIB_RAWMEMCHR@ +GL_GGL_GNULIB_READ = @GL_GGL_GNULIB_READ@ +GL_GGL_GNULIB_READLINK = @GL_GGL_GNULIB_READLINK@ +GL_GGL_GNULIB_READLINKAT = @GL_GGL_GNULIB_READLINKAT@ +GL_GGL_GNULIB_REALLOCARRAY = @GL_GGL_GNULIB_REALLOCARRAY@ +GL_GGL_GNULIB_REALLOC_POSIX = @GL_GGL_GNULIB_REALLOC_POSIX@ +GL_GGL_GNULIB_REALPATH = @GL_GGL_GNULIB_REALPATH@ +GL_GGL_GNULIB_RECV = @GL_GGL_GNULIB_RECV@ +GL_GGL_GNULIB_RECVFROM = @GL_GGL_GNULIB_RECVFROM@ +GL_GGL_GNULIB_REMOVE = @GL_GGL_GNULIB_REMOVE@ +GL_GGL_GNULIB_RENAME = @GL_GGL_GNULIB_RENAME@ +GL_GGL_GNULIB_RENAMEAT = @GL_GGL_GNULIB_RENAMEAT@ +GL_GGL_GNULIB_RMDIR = @GL_GGL_GNULIB_RMDIR@ +GL_GGL_GNULIB_RPMATCH = @GL_GGL_GNULIB_RPMATCH@ +GL_GGL_GNULIB_SCANF = @GL_GGL_GNULIB_SCANF@ +GL_GGL_GNULIB_SCHED_YIELD = @GL_GGL_GNULIB_SCHED_YIELD@ +GL_GGL_GNULIB_SECURE_GETENV = @GL_GGL_GNULIB_SECURE_GETENV@ +GL_GGL_GNULIB_SELECT = @GL_GGL_GNULIB_SELECT@ +GL_GGL_GNULIB_SEND = @GL_GGL_GNULIB_SEND@ +GL_GGL_GNULIB_SENDTO = @GL_GGL_GNULIB_SENDTO@ +GL_GGL_GNULIB_SETENV = @GL_GGL_GNULIB_SETENV@ +GL_GGL_GNULIB_SETHOSTNAME = @GL_GGL_GNULIB_SETHOSTNAME@ +GL_GGL_GNULIB_SETLOCALE = @GL_GGL_GNULIB_SETLOCALE@ +GL_GGL_GNULIB_SETLOCALE_NULL = @GL_GGL_GNULIB_SETLOCALE_NULL@ +GL_GGL_GNULIB_SETSOCKOPT = @GL_GGL_GNULIB_SETSOCKOPT@ +GL_GGL_GNULIB_SHUTDOWN = @GL_GGL_GNULIB_SHUTDOWN@ +GL_GGL_GNULIB_SIGABBREV_NP = @GL_GGL_GNULIB_SIGABBREV_NP@ +GL_GGL_GNULIB_SIGACTION = @GL_GGL_GNULIB_SIGACTION@ +GL_GGL_GNULIB_SIGDESCR_NP = @GL_GGL_GNULIB_SIGDESCR_NP@ +GL_GGL_GNULIB_SIGNAL_H_SIGPIPE = @GL_GGL_GNULIB_SIGNAL_H_SIGPIPE@ +GL_GGL_GNULIB_SIGPROCMASK = @GL_GGL_GNULIB_SIGPROCMASK@ +GL_GGL_GNULIB_SLEEP = @GL_GGL_GNULIB_SLEEP@ +GL_GGL_GNULIB_SNPRINTF = @GL_GGL_GNULIB_SNPRINTF@ +GL_GGL_GNULIB_SOCKET = @GL_GGL_GNULIB_SOCKET@ +GL_GGL_GNULIB_SPRINTF_POSIX = @GL_GGL_GNULIB_SPRINTF_POSIX@ +GL_GGL_GNULIB_STAT = @GL_GGL_GNULIB_STAT@ +GL_GGL_GNULIB_STDIO_H_NONBLOCKING = @GL_GGL_GNULIB_STDIO_H_NONBLOCKING@ +GL_GGL_GNULIB_STDIO_H_SIGPIPE = @GL_GGL_GNULIB_STDIO_H_SIGPIPE@ +GL_GGL_GNULIB_STPCPY = @GL_GGL_GNULIB_STPCPY@ +GL_GGL_GNULIB_STPNCPY = @GL_GGL_GNULIB_STPNCPY@ +GL_GGL_GNULIB_STRCASESTR = @GL_GGL_GNULIB_STRCASESTR@ +GL_GGL_GNULIB_STRCHRNUL = @GL_GGL_GNULIB_STRCHRNUL@ +GL_GGL_GNULIB_STRDUP = @GL_GGL_GNULIB_STRDUP@ +GL_GGL_GNULIB_STRERROR = @GL_GGL_GNULIB_STRERROR@ +GL_GGL_GNULIB_STRERRORNAME_NP = @GL_GGL_GNULIB_STRERRORNAME_NP@ +GL_GGL_GNULIB_STRERROR_R = @GL_GGL_GNULIB_STRERROR_R@ +GL_GGL_GNULIB_STRFTIME = @GL_GGL_GNULIB_STRFTIME@ +GL_GGL_GNULIB_STRNCAT = @GL_GGL_GNULIB_STRNCAT@ +GL_GGL_GNULIB_STRNDUP = @GL_GGL_GNULIB_STRNDUP@ +GL_GGL_GNULIB_STRNLEN = @GL_GGL_GNULIB_STRNLEN@ +GL_GGL_GNULIB_STRPBRK = @GL_GGL_GNULIB_STRPBRK@ +GL_GGL_GNULIB_STRPTIME = @GL_GGL_GNULIB_STRPTIME@ +GL_GGL_GNULIB_STRSEP = @GL_GGL_GNULIB_STRSEP@ +GL_GGL_GNULIB_STRSIGNAL = @GL_GGL_GNULIB_STRSIGNAL@ +GL_GGL_GNULIB_STRSTR = @GL_GGL_GNULIB_STRSTR@ +GL_GGL_GNULIB_STRTOD = @GL_GGL_GNULIB_STRTOD@ +GL_GGL_GNULIB_STRTOIMAX = @GL_GGL_GNULIB_STRTOIMAX@ +GL_GGL_GNULIB_STRTOK_R = @GL_GGL_GNULIB_STRTOK_R@ +GL_GGL_GNULIB_STRTOL = @GL_GGL_GNULIB_STRTOL@ +GL_GGL_GNULIB_STRTOLD = @GL_GGL_GNULIB_STRTOLD@ +GL_GGL_GNULIB_STRTOLL = @GL_GGL_GNULIB_STRTOLL@ +GL_GGL_GNULIB_STRTOUL = @GL_GGL_GNULIB_STRTOUL@ +GL_GGL_GNULIB_STRTOULL = @GL_GGL_GNULIB_STRTOULL@ +GL_GGL_GNULIB_STRTOUMAX = @GL_GGL_GNULIB_STRTOUMAX@ +GL_GGL_GNULIB_STRVERSCMP = @GL_GGL_GNULIB_STRVERSCMP@ +GL_GGL_GNULIB_SYMLINK = @GL_GGL_GNULIB_SYMLINK@ +GL_GGL_GNULIB_SYMLINKAT = @GL_GGL_GNULIB_SYMLINKAT@ +GL_GGL_GNULIB_SYSTEM_POSIX = @GL_GGL_GNULIB_SYSTEM_POSIX@ +GL_GGL_GNULIB_TIMEGM = @GL_GGL_GNULIB_TIMEGM@ +GL_GGL_GNULIB_TIMESPEC_GET = @GL_GGL_GNULIB_TIMESPEC_GET@ +GL_GGL_GNULIB_TIME_R = @GL_GGL_GNULIB_TIME_R@ +GL_GGL_GNULIB_TIME_RZ = @GL_GGL_GNULIB_TIME_RZ@ +GL_GGL_GNULIB_TMPFILE = @GL_GGL_GNULIB_TMPFILE@ +GL_GGL_GNULIB_TRUNCATE = @GL_GGL_GNULIB_TRUNCATE@ +GL_GGL_GNULIB_TTYNAME_R = @GL_GGL_GNULIB_TTYNAME_R@ +GL_GGL_GNULIB_TZSET = @GL_GGL_GNULIB_TZSET@ +GL_GGL_GNULIB_UNISTD_H_NONBLOCKING = @GL_GGL_GNULIB_UNISTD_H_NONBLOCKING@ +GL_GGL_GNULIB_UNISTD_H_SIGPIPE = @GL_GGL_GNULIB_UNISTD_H_SIGPIPE@ +GL_GGL_GNULIB_UNLINK = @GL_GGL_GNULIB_UNLINK@ +GL_GGL_GNULIB_UNLINKAT = @GL_GGL_GNULIB_UNLINKAT@ +GL_GGL_GNULIB_UNLOCKPT = @GL_GGL_GNULIB_UNLOCKPT@ +GL_GGL_GNULIB_UNSETENV = @GL_GGL_GNULIB_UNSETENV@ +GL_GGL_GNULIB_USLEEP = @GL_GGL_GNULIB_USLEEP@ +GL_GGL_GNULIB_UTIMENSAT = @GL_GGL_GNULIB_UTIMENSAT@ +GL_GGL_GNULIB_VASPRINTF = @GL_GGL_GNULIB_VASPRINTF@ +GL_GGL_GNULIB_VDPRINTF = @GL_GGL_GNULIB_VDPRINTF@ +GL_GGL_GNULIB_VFPRINTF = @GL_GGL_GNULIB_VFPRINTF@ +GL_GGL_GNULIB_VFPRINTF_POSIX = @GL_GGL_GNULIB_VFPRINTF_POSIX@ +GL_GGL_GNULIB_VFSCANF = @GL_GGL_GNULIB_VFSCANF@ +GL_GGL_GNULIB_VPRINTF = @GL_GGL_GNULIB_VPRINTF@ +GL_GGL_GNULIB_VPRINTF_POSIX = @GL_GGL_GNULIB_VPRINTF_POSIX@ +GL_GGL_GNULIB_VSCANF = @GL_GGL_GNULIB_VSCANF@ +GL_GGL_GNULIB_VSNPRINTF = @GL_GGL_GNULIB_VSNPRINTF@ +GL_GGL_GNULIB_VSPRINTF_POSIX = @GL_GGL_GNULIB_VSPRINTF_POSIX@ +GL_GGL_GNULIB_WCPCPY = @GL_GGL_GNULIB_WCPCPY@ +GL_GGL_GNULIB_WCPNCPY = @GL_GGL_GNULIB_WCPNCPY@ +GL_GGL_GNULIB_WCRTOMB = @GL_GGL_GNULIB_WCRTOMB@ +GL_GGL_GNULIB_WCSCASECMP = @GL_GGL_GNULIB_WCSCASECMP@ +GL_GGL_GNULIB_WCSCAT = @GL_GGL_GNULIB_WCSCAT@ +GL_GGL_GNULIB_WCSCHR = @GL_GGL_GNULIB_WCSCHR@ +GL_GGL_GNULIB_WCSCMP = @GL_GGL_GNULIB_WCSCMP@ +GL_GGL_GNULIB_WCSCOLL = @GL_GGL_GNULIB_WCSCOLL@ +GL_GGL_GNULIB_WCSCPY = @GL_GGL_GNULIB_WCSCPY@ +GL_GGL_GNULIB_WCSCSPN = @GL_GGL_GNULIB_WCSCSPN@ +GL_GGL_GNULIB_WCSDUP = @GL_GGL_GNULIB_WCSDUP@ +GL_GGL_GNULIB_WCSFTIME = @GL_GGL_GNULIB_WCSFTIME@ +GL_GGL_GNULIB_WCSLEN = @GL_GGL_GNULIB_WCSLEN@ +GL_GGL_GNULIB_WCSNCASECMP = @GL_GGL_GNULIB_WCSNCASECMP@ +GL_GGL_GNULIB_WCSNCAT = @GL_GGL_GNULIB_WCSNCAT@ +GL_GGL_GNULIB_WCSNCMP = @GL_GGL_GNULIB_WCSNCMP@ +GL_GGL_GNULIB_WCSNCPY = @GL_GGL_GNULIB_WCSNCPY@ +GL_GGL_GNULIB_WCSNLEN = @GL_GGL_GNULIB_WCSNLEN@ +GL_GGL_GNULIB_WCSNRTOMBS = @GL_GGL_GNULIB_WCSNRTOMBS@ +GL_GGL_GNULIB_WCSPBRK = @GL_GGL_GNULIB_WCSPBRK@ +GL_GGL_GNULIB_WCSRCHR = @GL_GGL_GNULIB_WCSRCHR@ +GL_GGL_GNULIB_WCSRTOMBS = @GL_GGL_GNULIB_WCSRTOMBS@ +GL_GGL_GNULIB_WCSSPN = @GL_GGL_GNULIB_WCSSPN@ +GL_GGL_GNULIB_WCSSTR = @GL_GGL_GNULIB_WCSSTR@ +GL_GGL_GNULIB_WCSTOK = @GL_GGL_GNULIB_WCSTOK@ +GL_GGL_GNULIB_WCSWIDTH = @GL_GGL_GNULIB_WCSWIDTH@ +GL_GGL_GNULIB_WCSXFRM = @GL_GGL_GNULIB_WCSXFRM@ +GL_GGL_GNULIB_WCTOB = @GL_GGL_GNULIB_WCTOB@ +GL_GGL_GNULIB_WCTOMB = @GL_GGL_GNULIB_WCTOMB@ +GL_GGL_GNULIB_WCWIDTH = @GL_GGL_GNULIB_WCWIDTH@ +GL_GGL_GNULIB_WMEMCHR = @GL_GGL_GNULIB_WMEMCHR@ +GL_GGL_GNULIB_WMEMCMP = @GL_GGL_GNULIB_WMEMCMP@ +GL_GGL_GNULIB_WMEMCPY = @GL_GGL_GNULIB_WMEMCPY@ +GL_GGL_GNULIB_WMEMMOVE = @GL_GGL_GNULIB_WMEMMOVE@ +GL_GGL_GNULIB_WMEMPCPY = @GL_GGL_GNULIB_WMEMPCPY@ +GL_GGL_GNULIB_WMEMSET = @GL_GGL_GNULIB_WMEMSET@ +GL_GGL_GNULIB_WRITE = @GL_GGL_GNULIB_WRITE@ +GL_GGL_GNULIB__EXIT = @GL_GGL_GNULIB__EXIT@ +GL_GNULIB_ACCEPT = @GL_GNULIB_ACCEPT@ +GL_GNULIB_ACCEPT4 = @GL_GNULIB_ACCEPT4@ +GL_GNULIB_ACCESS = @GL_GNULIB_ACCESS@ +GL_GNULIB_ALIGNED_ALLOC = @GL_GNULIB_ALIGNED_ALLOC@ +GL_GNULIB_ATOLL = @GL_GNULIB_ATOLL@ +GL_GNULIB_BIND = @GL_GNULIB_BIND@ +GL_GNULIB_BTOWC = @GL_GNULIB_BTOWC@ +GL_GNULIB_CALLOC_POSIX = @GL_GNULIB_CALLOC_POSIX@ +GL_GNULIB_CANONICALIZE_FILE_NAME = @GL_GNULIB_CANONICALIZE_FILE_NAME@ +GL_GNULIB_CHDIR = @GL_GNULIB_CHDIR@ +GL_GNULIB_CHOWN = @GL_GNULIB_CHOWN@ +GL_GNULIB_CLOSE = @GL_GNULIB_CLOSE@ +GL_GNULIB_CONNECT = @GL_GNULIB_CONNECT@ +GL_GNULIB_COPY_FILE_RANGE = @GL_GNULIB_COPY_FILE_RANGE@ +GL_GNULIB_CREAT = @GL_GNULIB_CREAT@ +GL_GNULIB_CTIME = @GL_GNULIB_CTIME@ +GL_GNULIB_DPRINTF = @GL_GNULIB_DPRINTF@ +GL_GNULIB_DUP = @GL_GNULIB_DUP@ +GL_GNULIB_DUP2 = @GL_GNULIB_DUP2@ +GL_GNULIB_DUP3 = @GL_GNULIB_DUP3@ +GL_GNULIB_ENVIRON = @GL_GNULIB_ENVIRON@ +GL_GNULIB_EUIDACCESS = @GL_GNULIB_EUIDACCESS@ +GL_GNULIB_EXECL = @GL_GNULIB_EXECL@ +GL_GNULIB_EXECLE = @GL_GNULIB_EXECLE@ +GL_GNULIB_EXECLP = @GL_GNULIB_EXECLP@ +GL_GNULIB_EXECV = @GL_GNULIB_EXECV@ +GL_GNULIB_EXECVE = @GL_GNULIB_EXECVE@ +GL_GNULIB_EXECVP = @GL_GNULIB_EXECVP@ +GL_GNULIB_EXECVPE = @GL_GNULIB_EXECVPE@ +GL_GNULIB_EXPLICIT_BZERO = @GL_GNULIB_EXPLICIT_BZERO@ +GL_GNULIB_FACCESSAT = @GL_GNULIB_FACCESSAT@ +GL_GNULIB_FCHDIR = @GL_GNULIB_FCHDIR@ +GL_GNULIB_FCHMODAT = @GL_GNULIB_FCHMODAT@ +GL_GNULIB_FCHOWNAT = @GL_GNULIB_FCHOWNAT@ +GL_GNULIB_FCLOSE = @GL_GNULIB_FCLOSE@ +GL_GNULIB_FCNTL = @GL_GNULIB_FCNTL@ +GL_GNULIB_FDATASYNC = @GL_GNULIB_FDATASYNC@ +GL_GNULIB_FDOPEN = @GL_GNULIB_FDOPEN@ +GL_GNULIB_FFLUSH = @GL_GNULIB_FFLUSH@ +GL_GNULIB_FFS = @GL_GNULIB_FFS@ +GL_GNULIB_FFSL = @GL_GNULIB_FFSL@ +GL_GNULIB_FFSLL = @GL_GNULIB_FFSLL@ +GL_GNULIB_FGETC = @GL_GNULIB_FGETC@ +GL_GNULIB_FGETS = @GL_GNULIB_FGETS@ +GL_GNULIB_FOPEN = @GL_GNULIB_FOPEN@ +GL_GNULIB_FPRINTF = @GL_GNULIB_FPRINTF@ +GL_GNULIB_FPRINTF_POSIX = @GL_GNULIB_FPRINTF_POSIX@ +GL_GNULIB_FPURGE = @GL_GNULIB_FPURGE@ +GL_GNULIB_FPUTC = @GL_GNULIB_FPUTC@ +GL_GNULIB_FPUTS = @GL_GNULIB_FPUTS@ +GL_GNULIB_FREAD = @GL_GNULIB_FREAD@ +GL_GNULIB_FREE_POSIX = @GL_GNULIB_FREE_POSIX@ +GL_GNULIB_FREOPEN = @GL_GNULIB_FREOPEN@ +GL_GNULIB_FSCANF = @GL_GNULIB_FSCANF@ +GL_GNULIB_FSEEK = @GL_GNULIB_FSEEK@ +GL_GNULIB_FSEEKO = @GL_GNULIB_FSEEKO@ +GL_GNULIB_FSTAT = @GL_GNULIB_FSTAT@ +GL_GNULIB_FSTATAT = @GL_GNULIB_FSTATAT@ +GL_GNULIB_FSYNC = @GL_GNULIB_FSYNC@ +GL_GNULIB_FTELL = @GL_GNULIB_FTELL@ +GL_GNULIB_FTELLO = @GL_GNULIB_FTELLO@ +GL_GNULIB_FTRUNCATE = @GL_GNULIB_FTRUNCATE@ +GL_GNULIB_FUTIMENS = @GL_GNULIB_FUTIMENS@ +GL_GNULIB_FWRITE = @GL_GNULIB_FWRITE@ +GL_GNULIB_GETADDRINFO = @GL_GNULIB_GETADDRINFO@ +GL_GNULIB_GETC = @GL_GNULIB_GETC@ +GL_GNULIB_GETCHAR = @GL_GNULIB_GETCHAR@ +GL_GNULIB_GETCWD = @GL_GNULIB_GETCWD@ +GL_GNULIB_GETDELIM = @GL_GNULIB_GETDELIM@ +GL_GNULIB_GETDOMAINNAME = @GL_GNULIB_GETDOMAINNAME@ +GL_GNULIB_GETDTABLESIZE = @GL_GNULIB_GETDTABLESIZE@ +GL_GNULIB_GETENTROPY = @GL_GNULIB_GETENTROPY@ +GL_GNULIB_GETGROUPS = @GL_GNULIB_GETGROUPS@ +GL_GNULIB_GETHOSTNAME = @GL_GNULIB_GETHOSTNAME@ +GL_GNULIB_GETLINE = @GL_GNULIB_GETLINE@ +GL_GNULIB_GETLOADAVG = @GL_GNULIB_GETLOADAVG@ +GL_GNULIB_GETLOGIN = @GL_GNULIB_GETLOGIN@ +GL_GNULIB_GETLOGIN_R = @GL_GNULIB_GETLOGIN_R@ +GL_GNULIB_GETOPT_POSIX = @GL_GNULIB_GETOPT_POSIX@ +GL_GNULIB_GETPAGESIZE = @GL_GNULIB_GETPAGESIZE@ +GL_GNULIB_GETPASS = @GL_GNULIB_GETPASS@ +GL_GNULIB_GETPEERNAME = @GL_GNULIB_GETPEERNAME@ +GL_GNULIB_GETSOCKNAME = @GL_GNULIB_GETSOCKNAME@ +GL_GNULIB_GETSOCKOPT = @GL_GNULIB_GETSOCKOPT@ +GL_GNULIB_GETSUBOPT = @GL_GNULIB_GETSUBOPT@ +GL_GNULIB_GETTIMEOFDAY = @GL_GNULIB_GETTIMEOFDAY@ +GL_GNULIB_GETUMASK = @GL_GNULIB_GETUMASK@ +GL_GNULIB_GETUSERSHELL = @GL_GNULIB_GETUSERSHELL@ +GL_GNULIB_GRANTPT = @GL_GNULIB_GRANTPT@ +GL_GNULIB_GROUP_MEMBER = @GL_GNULIB_GROUP_MEMBER@ +GL_GNULIB_IMAXABS = @GL_GNULIB_IMAXABS@ +GL_GNULIB_IMAXDIV = @GL_GNULIB_IMAXDIV@ +GL_GNULIB_INET_NTOP = @GL_GNULIB_INET_NTOP@ +GL_GNULIB_INET_PTON = @GL_GNULIB_INET_PTON@ +GL_GNULIB_ISATTY = @GL_GNULIB_ISATTY@ +GL_GNULIB_LCHMOD = @GL_GNULIB_LCHMOD@ +GL_GNULIB_LCHOWN = @GL_GNULIB_LCHOWN@ +GL_GNULIB_LINK = @GL_GNULIB_LINK@ +GL_GNULIB_LINKAT = @GL_GNULIB_LINKAT@ +GL_GNULIB_LISTEN = @GL_GNULIB_LISTEN@ +GL_GNULIB_LOCALTIME = @GL_GNULIB_LOCALTIME@ +GL_GNULIB_LSEEK = @GL_GNULIB_LSEEK@ +GL_GNULIB_LSTAT = @GL_GNULIB_LSTAT@ +GL_GNULIB_MALLOC_POSIX = @GL_GNULIB_MALLOC_POSIX@ +GL_GNULIB_MBRLEN = @GL_GNULIB_MBRLEN@ +GL_GNULIB_MBRTOWC = @GL_GNULIB_MBRTOWC@ +GL_GNULIB_MBSCASECMP = @GL_GNULIB_MBSCASECMP@ +GL_GNULIB_MBSCASESTR = @GL_GNULIB_MBSCASESTR@ +GL_GNULIB_MBSCHR = @GL_GNULIB_MBSCHR@ +GL_GNULIB_MBSCSPN = @GL_GNULIB_MBSCSPN@ +GL_GNULIB_MBSINIT = @GL_GNULIB_MBSINIT@ +GL_GNULIB_MBSLEN = @GL_GNULIB_MBSLEN@ +GL_GNULIB_MBSNCASECMP = @GL_GNULIB_MBSNCASECMP@ +GL_GNULIB_MBSNLEN = @GL_GNULIB_MBSNLEN@ +GL_GNULIB_MBSNRTOWCS = @GL_GNULIB_MBSNRTOWCS@ +GL_GNULIB_MBSPBRK = @GL_GNULIB_MBSPBRK@ +GL_GNULIB_MBSPCASECMP = @GL_GNULIB_MBSPCASECMP@ +GL_GNULIB_MBSRCHR = @GL_GNULIB_MBSRCHR@ +GL_GNULIB_MBSRTOWCS = @GL_GNULIB_MBSRTOWCS@ +GL_GNULIB_MBSSEP = @GL_GNULIB_MBSSEP@ +GL_GNULIB_MBSSPN = @GL_GNULIB_MBSSPN@ +GL_GNULIB_MBSSTR = @GL_GNULIB_MBSSTR@ +GL_GNULIB_MBSTOK_R = @GL_GNULIB_MBSTOK_R@ +GL_GNULIB_MBTOWC = @GL_GNULIB_MBTOWC@ +GL_GNULIB_MDA_ACCESS = @GL_GNULIB_MDA_ACCESS@ +GL_GNULIB_MDA_CHDIR = @GL_GNULIB_MDA_CHDIR@ +GL_GNULIB_MDA_CHMOD = @GL_GNULIB_MDA_CHMOD@ +GL_GNULIB_MDA_CLOSE = @GL_GNULIB_MDA_CLOSE@ +GL_GNULIB_MDA_CREAT = @GL_GNULIB_MDA_CREAT@ +GL_GNULIB_MDA_DUP = @GL_GNULIB_MDA_DUP@ +GL_GNULIB_MDA_DUP2 = @GL_GNULIB_MDA_DUP2@ +GL_GNULIB_MDA_ECVT = @GL_GNULIB_MDA_ECVT@ +GL_GNULIB_MDA_EXECL = @GL_GNULIB_MDA_EXECL@ +GL_GNULIB_MDA_EXECLE = @GL_GNULIB_MDA_EXECLE@ +GL_GNULIB_MDA_EXECLP = @GL_GNULIB_MDA_EXECLP@ +GL_GNULIB_MDA_EXECV = @GL_GNULIB_MDA_EXECV@ +GL_GNULIB_MDA_EXECVE = @GL_GNULIB_MDA_EXECVE@ +GL_GNULIB_MDA_EXECVP = @GL_GNULIB_MDA_EXECVP@ +GL_GNULIB_MDA_EXECVPE = @GL_GNULIB_MDA_EXECVPE@ +GL_GNULIB_MDA_FCLOSEALL = @GL_GNULIB_MDA_FCLOSEALL@ +GL_GNULIB_MDA_FCVT = @GL_GNULIB_MDA_FCVT@ +GL_GNULIB_MDA_FDOPEN = @GL_GNULIB_MDA_FDOPEN@ +GL_GNULIB_MDA_FILENO = @GL_GNULIB_MDA_FILENO@ +GL_GNULIB_MDA_GCVT = @GL_GNULIB_MDA_GCVT@ +GL_GNULIB_MDA_GETCWD = @GL_GNULIB_MDA_GETCWD@ +GL_GNULIB_MDA_GETPID = @GL_GNULIB_MDA_GETPID@ +GL_GNULIB_MDA_GETW = @GL_GNULIB_MDA_GETW@ +GL_GNULIB_MDA_ISATTY = @GL_GNULIB_MDA_ISATTY@ +GL_GNULIB_MDA_LSEEK = @GL_GNULIB_MDA_LSEEK@ +GL_GNULIB_MDA_MEMCCPY = @GL_GNULIB_MDA_MEMCCPY@ +GL_GNULIB_MDA_MKDIR = @GL_GNULIB_MDA_MKDIR@ +GL_GNULIB_MDA_MKTEMP = @GL_GNULIB_MDA_MKTEMP@ +GL_GNULIB_MDA_OPEN = @GL_GNULIB_MDA_OPEN@ +GL_GNULIB_MDA_PUTENV = @GL_GNULIB_MDA_PUTENV@ +GL_GNULIB_MDA_PUTW = @GL_GNULIB_MDA_PUTW@ +GL_GNULIB_MDA_READ = @GL_GNULIB_MDA_READ@ +GL_GNULIB_MDA_RMDIR = @GL_GNULIB_MDA_RMDIR@ +GL_GNULIB_MDA_STRDUP = @GL_GNULIB_MDA_STRDUP@ +GL_GNULIB_MDA_SWAB = @GL_GNULIB_MDA_SWAB@ +GL_GNULIB_MDA_TEMPNAM = @GL_GNULIB_MDA_TEMPNAM@ +GL_GNULIB_MDA_TZSET = @GL_GNULIB_MDA_TZSET@ +GL_GNULIB_MDA_UMASK = @GL_GNULIB_MDA_UMASK@ +GL_GNULIB_MDA_UNLINK = @GL_GNULIB_MDA_UNLINK@ +GL_GNULIB_MDA_WCSDUP = @GL_GNULIB_MDA_WCSDUP@ +GL_GNULIB_MDA_WRITE = @GL_GNULIB_MDA_WRITE@ +GL_GNULIB_MEMCHR = @GL_GNULIB_MEMCHR@ +GL_GNULIB_MEMMEM = @GL_GNULIB_MEMMEM@ +GL_GNULIB_MEMPCPY = @GL_GNULIB_MEMPCPY@ +GL_GNULIB_MEMRCHR = @GL_GNULIB_MEMRCHR@ +GL_GNULIB_MKDIR = @GL_GNULIB_MKDIR@ +GL_GNULIB_MKDIRAT = @GL_GNULIB_MKDIRAT@ +GL_GNULIB_MKDTEMP = @GL_GNULIB_MKDTEMP@ +GL_GNULIB_MKFIFO = @GL_GNULIB_MKFIFO@ +GL_GNULIB_MKFIFOAT = @GL_GNULIB_MKFIFOAT@ +GL_GNULIB_MKNOD = @GL_GNULIB_MKNOD@ +GL_GNULIB_MKNODAT = @GL_GNULIB_MKNODAT@ +GL_GNULIB_MKOSTEMP = @GL_GNULIB_MKOSTEMP@ +GL_GNULIB_MKOSTEMPS = @GL_GNULIB_MKOSTEMPS@ +GL_GNULIB_MKSTEMP = @GL_GNULIB_MKSTEMP@ +GL_GNULIB_MKSTEMPS = @GL_GNULIB_MKSTEMPS@ +GL_GNULIB_MKTIME = @GL_GNULIB_MKTIME@ +GL_GNULIB_NANOSLEEP = @GL_GNULIB_NANOSLEEP@ +GL_GNULIB_NONBLOCKING = @GL_GNULIB_NONBLOCKING@ +GL_GNULIB_OBSTACK_PRINTF = @GL_GNULIB_OBSTACK_PRINTF@ +GL_GNULIB_OBSTACK_PRINTF_POSIX = @GL_GNULIB_OBSTACK_PRINTF_POSIX@ +GL_GNULIB_OPEN = @GL_GNULIB_OPEN@ +GL_GNULIB_OPENAT = @GL_GNULIB_OPENAT@ +GL_GNULIB_OVERRIDES_STRUCT_STAT = @GL_GNULIB_OVERRIDES_STRUCT_STAT@ +GL_GNULIB_PCLOSE = @GL_GNULIB_PCLOSE@ +GL_GNULIB_PERROR = @GL_GNULIB_PERROR@ +GL_GNULIB_PIPE = @GL_GNULIB_PIPE@ +GL_GNULIB_PIPE2 = @GL_GNULIB_PIPE2@ +GL_GNULIB_POPEN = @GL_GNULIB_POPEN@ +GL_GNULIB_POSIX_MEMALIGN = @GL_GNULIB_POSIX_MEMALIGN@ +GL_GNULIB_POSIX_OPENPT = @GL_GNULIB_POSIX_OPENPT@ +GL_GNULIB_PREAD = @GL_GNULIB_PREAD@ +GL_GNULIB_PRINTF = @GL_GNULIB_PRINTF@ +GL_GNULIB_PRINTF_POSIX = @GL_GNULIB_PRINTF_POSIX@ +GL_GNULIB_PTSNAME = @GL_GNULIB_PTSNAME@ +GL_GNULIB_PTSNAME_R = @GL_GNULIB_PTSNAME_R@ +GL_GNULIB_PUTC = @GL_GNULIB_PUTC@ +GL_GNULIB_PUTCHAR = @GL_GNULIB_PUTCHAR@ +GL_GNULIB_PUTENV = @GL_GNULIB_PUTENV@ +GL_GNULIB_PUTS = @GL_GNULIB_PUTS@ +GL_GNULIB_PWRITE = @GL_GNULIB_PWRITE@ +GL_GNULIB_QSORT_R = @GL_GNULIB_QSORT_R@ +GL_GNULIB_RANDOM = @GL_GNULIB_RANDOM@ +GL_GNULIB_RANDOM_R = @GL_GNULIB_RANDOM_R@ +GL_GNULIB_RAWMEMCHR = @GL_GNULIB_RAWMEMCHR@ +GL_GNULIB_READ = @GL_GNULIB_READ@ +GL_GNULIB_READLINK = @GL_GNULIB_READLINK@ +GL_GNULIB_READLINKAT = @GL_GNULIB_READLINKAT@ +GL_GNULIB_REALLOCARRAY = @GL_GNULIB_REALLOCARRAY@ +GL_GNULIB_REALLOC_POSIX = @GL_GNULIB_REALLOC_POSIX@ +GL_GNULIB_REALPATH = @GL_GNULIB_REALPATH@ +GL_GNULIB_RECV = @GL_GNULIB_RECV@ +GL_GNULIB_RECVFROM = @GL_GNULIB_RECVFROM@ +GL_GNULIB_REMOVE = @GL_GNULIB_REMOVE@ +GL_GNULIB_RENAME = @GL_GNULIB_RENAME@ +GL_GNULIB_RENAMEAT = @GL_GNULIB_RENAMEAT@ +GL_GNULIB_RMDIR = @GL_GNULIB_RMDIR@ +GL_GNULIB_RPMATCH = @GL_GNULIB_RPMATCH@ +GL_GNULIB_SCANF = @GL_GNULIB_SCANF@ +GL_GNULIB_SECURE_GETENV = @GL_GNULIB_SECURE_GETENV@ +GL_GNULIB_SEND = @GL_GNULIB_SEND@ +GL_GNULIB_SENDTO = @GL_GNULIB_SENDTO@ +GL_GNULIB_SETENV = @GL_GNULIB_SETENV@ +GL_GNULIB_SETHOSTNAME = @GL_GNULIB_SETHOSTNAME@ +GL_GNULIB_SETSOCKOPT = @GL_GNULIB_SETSOCKOPT@ +GL_GNULIB_SHUTDOWN = @GL_GNULIB_SHUTDOWN@ +GL_GNULIB_SIGABBREV_NP = @GL_GNULIB_SIGABBREV_NP@ +GL_GNULIB_SIGDESCR_NP = @GL_GNULIB_SIGDESCR_NP@ +GL_GNULIB_SLEEP = @GL_GNULIB_SLEEP@ +GL_GNULIB_SNPRINTF = @GL_GNULIB_SNPRINTF@ +GL_GNULIB_SOCKET = @GL_GNULIB_SOCKET@ +GL_GNULIB_SPRINTF_POSIX = @GL_GNULIB_SPRINTF_POSIX@ +GL_GNULIB_STAT = @GL_GNULIB_STAT@ +GL_GNULIB_STDIO_H_NONBLOCKING = @GL_GNULIB_STDIO_H_NONBLOCKING@ +GL_GNULIB_STDIO_H_SIGPIPE = @GL_GNULIB_STDIO_H_SIGPIPE@ +GL_GNULIB_STPCPY = @GL_GNULIB_STPCPY@ +GL_GNULIB_STPNCPY = @GL_GNULIB_STPNCPY@ +GL_GNULIB_STRCASESTR = @GL_GNULIB_STRCASESTR@ +GL_GNULIB_STRCHRNUL = @GL_GNULIB_STRCHRNUL@ +GL_GNULIB_STRDUP = @GL_GNULIB_STRDUP@ +GL_GNULIB_STRERROR = @GL_GNULIB_STRERROR@ +GL_GNULIB_STRERRORNAME_NP = @GL_GNULIB_STRERRORNAME_NP@ +GL_GNULIB_STRERROR_R = @GL_GNULIB_STRERROR_R@ +GL_GNULIB_STRFTIME = @GL_GNULIB_STRFTIME@ +GL_GNULIB_STRNCAT = @GL_GNULIB_STRNCAT@ +GL_GNULIB_STRNDUP = @GL_GNULIB_STRNDUP@ +GL_GNULIB_STRNLEN = @GL_GNULIB_STRNLEN@ +GL_GNULIB_STRPBRK = @GL_GNULIB_STRPBRK@ +GL_GNULIB_STRPTIME = @GL_GNULIB_STRPTIME@ +GL_GNULIB_STRSEP = @GL_GNULIB_STRSEP@ +GL_GNULIB_STRSIGNAL = @GL_GNULIB_STRSIGNAL@ +GL_GNULIB_STRSTR = @GL_GNULIB_STRSTR@ +GL_GNULIB_STRTOD = @GL_GNULIB_STRTOD@ +GL_GNULIB_STRTOIMAX = @GL_GNULIB_STRTOIMAX@ +GL_GNULIB_STRTOK_R = @GL_GNULIB_STRTOK_R@ +GL_GNULIB_STRTOL = @GL_GNULIB_STRTOL@ +GL_GNULIB_STRTOLD = @GL_GNULIB_STRTOLD@ +GL_GNULIB_STRTOLL = @GL_GNULIB_STRTOLL@ +GL_GNULIB_STRTOUL = @GL_GNULIB_STRTOUL@ +GL_GNULIB_STRTOULL = @GL_GNULIB_STRTOULL@ +GL_GNULIB_STRTOUMAX = @GL_GNULIB_STRTOUMAX@ +GL_GNULIB_STRVERSCMP = @GL_GNULIB_STRVERSCMP@ +GL_GNULIB_SYMLINK = @GL_GNULIB_SYMLINK@ +GL_GNULIB_SYMLINKAT = @GL_GNULIB_SYMLINKAT@ +GL_GNULIB_SYSTEM_POSIX = @GL_GNULIB_SYSTEM_POSIX@ +GL_GNULIB_TIMEGM = @GL_GNULIB_TIMEGM@ +GL_GNULIB_TIMESPEC_GET = @GL_GNULIB_TIMESPEC_GET@ +GL_GNULIB_TIME_R = @GL_GNULIB_TIME_R@ +GL_GNULIB_TIME_RZ = @GL_GNULIB_TIME_RZ@ +GL_GNULIB_TMPFILE = @GL_GNULIB_TMPFILE@ +GL_GNULIB_TRUNCATE = @GL_GNULIB_TRUNCATE@ +GL_GNULIB_TTYNAME_R = @GL_GNULIB_TTYNAME_R@ +GL_GNULIB_TZSET = @GL_GNULIB_TZSET@ +GL_GNULIB_UNISTD_H_NONBLOCKING = @GL_GNULIB_UNISTD_H_NONBLOCKING@ +GL_GNULIB_UNISTD_H_SIGPIPE = @GL_GNULIB_UNISTD_H_SIGPIPE@ +GL_GNULIB_UNLINK = @GL_GNULIB_UNLINK@ +GL_GNULIB_UNLINKAT = @GL_GNULIB_UNLINKAT@ +GL_GNULIB_UNLOCKPT = @GL_GNULIB_UNLOCKPT@ +GL_GNULIB_UNSETENV = @GL_GNULIB_UNSETENV@ +GL_GNULIB_USLEEP = @GL_GNULIB_USLEEP@ +GL_GNULIB_UTIMENSAT = @GL_GNULIB_UTIMENSAT@ +GL_GNULIB_VASPRINTF = @GL_GNULIB_VASPRINTF@ +GL_GNULIB_VDPRINTF = @GL_GNULIB_VDPRINTF@ +GL_GNULIB_VFPRINTF = @GL_GNULIB_VFPRINTF@ +GL_GNULIB_VFPRINTF_POSIX = @GL_GNULIB_VFPRINTF_POSIX@ +GL_GNULIB_VFSCANF = @GL_GNULIB_VFSCANF@ +GL_GNULIB_VPRINTF = @GL_GNULIB_VPRINTF@ +GL_GNULIB_VPRINTF_POSIX = @GL_GNULIB_VPRINTF_POSIX@ +GL_GNULIB_VSCANF = @GL_GNULIB_VSCANF@ +GL_GNULIB_VSNPRINTF = @GL_GNULIB_VSNPRINTF@ +GL_GNULIB_VSPRINTF_POSIX = @GL_GNULIB_VSPRINTF_POSIX@ +GL_GNULIB_WCPCPY = @GL_GNULIB_WCPCPY@ +GL_GNULIB_WCPNCPY = @GL_GNULIB_WCPNCPY@ +GL_GNULIB_WCRTOMB = @GL_GNULIB_WCRTOMB@ +GL_GNULIB_WCSCASECMP = @GL_GNULIB_WCSCASECMP@ +GL_GNULIB_WCSCAT = @GL_GNULIB_WCSCAT@ +GL_GNULIB_WCSCHR = @GL_GNULIB_WCSCHR@ +GL_GNULIB_WCSCMP = @GL_GNULIB_WCSCMP@ +GL_GNULIB_WCSCOLL = @GL_GNULIB_WCSCOLL@ +GL_GNULIB_WCSCPY = @GL_GNULIB_WCSCPY@ +GL_GNULIB_WCSCSPN = @GL_GNULIB_WCSCSPN@ +GL_GNULIB_WCSDUP = @GL_GNULIB_WCSDUP@ +GL_GNULIB_WCSFTIME = @GL_GNULIB_WCSFTIME@ +GL_GNULIB_WCSLEN = @GL_GNULIB_WCSLEN@ +GL_GNULIB_WCSNCASECMP = @GL_GNULIB_WCSNCASECMP@ +GL_GNULIB_WCSNCAT = @GL_GNULIB_WCSNCAT@ +GL_GNULIB_WCSNCMP = @GL_GNULIB_WCSNCMP@ +GL_GNULIB_WCSNCPY = @GL_GNULIB_WCSNCPY@ +GL_GNULIB_WCSNLEN = @GL_GNULIB_WCSNLEN@ +GL_GNULIB_WCSNRTOMBS = @GL_GNULIB_WCSNRTOMBS@ +GL_GNULIB_WCSPBRK = @GL_GNULIB_WCSPBRK@ +GL_GNULIB_WCSRCHR = @GL_GNULIB_WCSRCHR@ +GL_GNULIB_WCSRTOMBS = @GL_GNULIB_WCSRTOMBS@ +GL_GNULIB_WCSSPN = @GL_GNULIB_WCSSPN@ +GL_GNULIB_WCSSTR = @GL_GNULIB_WCSSTR@ +GL_GNULIB_WCSTOK = @GL_GNULIB_WCSTOK@ +GL_GNULIB_WCSWIDTH = @GL_GNULIB_WCSWIDTH@ +GL_GNULIB_WCSXFRM = @GL_GNULIB_WCSXFRM@ +GL_GNULIB_WCTOB = @GL_GNULIB_WCTOB@ +GL_GNULIB_WCTOMB = @GL_GNULIB_WCTOMB@ +GL_GNULIB_WCWIDTH = @GL_GNULIB_WCWIDTH@ +GL_GNULIB_WMEMCHR = @GL_GNULIB_WMEMCHR@ +GL_GNULIB_WMEMCMP = @GL_GNULIB_WMEMCMP@ +GL_GNULIB_WMEMCPY = @GL_GNULIB_WMEMCPY@ +GL_GNULIB_WMEMMOVE = @GL_GNULIB_WMEMMOVE@ +GL_GNULIB_WMEMPCPY = @GL_GNULIB_WMEMPCPY@ +GL_GNULIB_WMEMSET = @GL_GNULIB_WMEMSET@ +GL_GNULIB_WRITE = @GL_GNULIB_WRITE@ +GL_GNULIB__EXIT = @GL_GNULIB__EXIT@ +GMP_CFLAGS = @GMP_CFLAGS@ +GMP_LIBS = @GMP_LIBS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GNULIBHEADERS_OVERRIDE_WINT_T = @GNULIBHEADERS_OVERRIDE_WINT_T@ +GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ +GNUTLS_LIBS_PRIVATE = @GNUTLS_LIBS_PRIVATE@ +GNUTLS_REQUIRES_PRIVATE = @GNUTLS_REQUIRES_PRIVATE@ +GPERF = gperf +GREP = @GREP@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +GUILD = @GUILD@ +GUILE = @GUILE@ +GUILE_CFLAGS = @GUILE_CFLAGS@ +GUILE_CONFIG = @GUILE_CONFIG@ +GUILE_EFFECTIVE_VERSION = @GUILE_EFFECTIVE_VERSION@ +GUILE_EXTENSION = @GUILE_EXTENSION@ +GUILE_LDFLAGS = @GUILE_LDFLAGS@ +GUILE_LIBS = @GUILE_LIBS@ +GUILE_LTLIBS = @GUILE_LTLIBS@ +GUILE_SITE = @GUILE_SITE@ +GUILE_SITE_CCACHE = @GUILE_SITE_CCACHE@ +GUILE_TOOLS = @GUILE_TOOLS@ +HAVE_ACCEPT4 = @HAVE_ACCEPT4@ +HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@ +HAVE_ALLOCA_H = @HAVE_ALLOCA_H@ +HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@ +HAVE_ATOLL = @HAVE_ATOLL@ +HAVE_BTOWC = @HAVE_BTOWC@ +HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@ +HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ +HAVE_CHOWN = @HAVE_CHOWN@ +HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@ +HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@ +HAVE_DECL_ECVT = @HAVE_DECL_ECVT@ +HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ +HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@ +HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@ +HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@ +HAVE_DECL_FCVT = @HAVE_DECL_FCVT@ +HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@ +HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ +HAVE_DECL_FREEADDRINFO = @HAVE_DECL_FREEADDRINFO@ +HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@ +HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@ +HAVE_DECL_GAI_STRERROR = @HAVE_DECL_GAI_STRERROR@ +HAVE_DECL_GCVT = @HAVE_DECL_GCVT@ +HAVE_DECL_GETADDRINFO = @HAVE_DECL_GETADDRINFO@ +HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ +HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@ +HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ +HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ +HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ +HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ +HAVE_DECL_GETNAMEINFO = @HAVE_DECL_GETNAMEINFO@ +HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ +HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ +HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ +HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ +HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@ +HAVE_DECL_INET_PTON = @HAVE_DECL_INET_PTON@ +HAVE_DECL_INITSTATE = @HAVE_DECL_INITSTATE@ +HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ +HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ +HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ +HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ +HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ +HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ +HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ +HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ +HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ +HAVE_DECL_STRERROR_R = @HAVE_DECL_STRERROR_R@ +HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ +HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ +HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ +HAVE_DECL_STRSIGNAL = @HAVE_DECL_STRSIGNAL@ +HAVE_DECL_STRTOIMAX = @HAVE_DECL_STRTOIMAX@ +HAVE_DECL_STRTOK_R = @HAVE_DECL_STRTOK_R@ +HAVE_DECL_STRTOUMAX = @HAVE_DECL_STRTOUMAX@ +HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@ +HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@ +HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@ +HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@ +HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@ +HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@ +HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ +HAVE_DPRINTF = @HAVE_DPRINTF@ +HAVE_DUP3 = @HAVE_DUP3@ +HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ +HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ +HAVE_EXECVPE = @HAVE_EXECVPE@ +HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ +HAVE_FACCESSAT = @HAVE_FACCESSAT@ +HAVE_FCHDIR = @HAVE_FCHDIR@ +HAVE_FCHMODAT = @HAVE_FCHMODAT@ +HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ +HAVE_FCNTL = @HAVE_FCNTL@ +HAVE_FDATASYNC = @HAVE_FDATASYNC@ +HAVE_FEATURES_H = @HAVE_FEATURES_H@ +HAVE_FFS = @HAVE_FFS@ +HAVE_FFSL = @HAVE_FFSL@ +HAVE_FFSLL = @HAVE_FFSLL@ +HAVE_FREELOCALE = @HAVE_FREELOCALE@ +HAVE_FSEEKO = @HAVE_FSEEKO@ +HAVE_FSTATAT = @HAVE_FSTATAT@ +HAVE_FSYNC = @HAVE_FSYNC@ +HAVE_FTELLO = @HAVE_FTELLO@ +HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ +HAVE_FUTIMENS = @HAVE_FUTIMENS@ +HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@ +HAVE_GETENTROPY = @HAVE_GETENTROPY@ +HAVE_GETGROUPS = @HAVE_GETGROUPS@ +HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@ +HAVE_GETLOGIN = @HAVE_GETLOGIN@ +HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ +HAVE_GETPASS = @HAVE_GETPASS@ +HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ +HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ +HAVE_GETUMASK = @HAVE_GETUMASK@ +HAVE_GRANTPT = @HAVE_GRANTPT@ +HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ +HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@ +HAVE_INITSTATE = @HAVE_INITSTATE@ +HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ +HAVE_ISBLANK = @HAVE_ISBLANK@ +HAVE_LANGINFO_ALTMON = @HAVE_LANGINFO_ALTMON@ +HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ +HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ +HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ +HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ +HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ +HAVE_LCHMOD = @HAVE_LCHMOD@ +HAVE_LCHOWN = @HAVE_LCHOWN@ +HAVE_LIBCRYPTO = @HAVE_LIBCRYPTO@ +HAVE_LIBDL = @HAVE_LIBDL@ +HAVE_LIBEV = @HAVE_LIBEV@ +HAVE_LIBPTHREAD = @HAVE_LIBPTHREAD@ +HAVE_LIBRT = @HAVE_LIBRT@ +HAVE_LIBSECCOMP = @HAVE_LIBSECCOMP@ +HAVE_LIBZ = @HAVE_LIBZ@ +HAVE_LINK = @HAVE_LINK@ +HAVE_LINKAT = @HAVE_LINKAT@ +HAVE_LSTAT = @HAVE_LSTAT@ +HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@ +HAVE_MBRLEN = @HAVE_MBRLEN@ +HAVE_MBRTOWC = @HAVE_MBRTOWC@ +HAVE_MBSINIT = @HAVE_MBSINIT@ +HAVE_MBSLEN = @HAVE_MBSLEN@ +HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ +HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ +HAVE_MBTOWC = @HAVE_MBTOWC@ +HAVE_MEMPCPY = @HAVE_MEMPCPY@ +HAVE_MKDIRAT = @HAVE_MKDIRAT@ +HAVE_MKDTEMP = @HAVE_MKDTEMP@ +HAVE_MKFIFO = @HAVE_MKFIFO@ +HAVE_MKFIFOAT = @HAVE_MKFIFOAT@ +HAVE_MKNOD = @HAVE_MKNOD@ +HAVE_MKNODAT = @HAVE_MKNODAT@ +HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ +HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ +HAVE_MKSTEMP = @HAVE_MKSTEMP@ +HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ +HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@ +HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ +HAVE_NETDB_H = @HAVE_NETDB_H@ +HAVE_NETINET_IN_H = @HAVE_NETINET_IN_H@ +HAVE_NEWLOCALE = @HAVE_NEWLOCALE@ +HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ +HAVE_OPENAT = @HAVE_OPENAT@ +HAVE_OS_H = @HAVE_OS_H@ +HAVE_PCLOSE = @HAVE_PCLOSE@ +HAVE_PIPE = @HAVE_PIPE@ +HAVE_PIPE2 = @HAVE_PIPE2@ +HAVE_POPEN = @HAVE_POPEN@ +HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@ +HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@ +HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@ +HAVE_PREAD = @HAVE_PREAD@ +HAVE_PSELECT = @HAVE_PSELECT@ +HAVE_PTHREAD_ATTR_DESTROY = @HAVE_PTHREAD_ATTR_DESTROY@ +HAVE_PTHREAD_ATTR_GETDETACHSTATE = @HAVE_PTHREAD_ATTR_GETDETACHSTATE@ +HAVE_PTHREAD_ATTR_INIT = @HAVE_PTHREAD_ATTR_INIT@ +HAVE_PTHREAD_ATTR_SETDETACHSTATE = @HAVE_PTHREAD_ATTR_SETDETACHSTATE@ +HAVE_PTHREAD_CONDATTR_DESTROY = @HAVE_PTHREAD_CONDATTR_DESTROY@ +HAVE_PTHREAD_CONDATTR_INIT = @HAVE_PTHREAD_CONDATTR_INIT@ +HAVE_PTHREAD_COND_BROADCAST = @HAVE_PTHREAD_COND_BROADCAST@ +HAVE_PTHREAD_COND_DESTROY = @HAVE_PTHREAD_COND_DESTROY@ +HAVE_PTHREAD_COND_INIT = @HAVE_PTHREAD_COND_INIT@ +HAVE_PTHREAD_COND_SIGNAL = @HAVE_PTHREAD_COND_SIGNAL@ +HAVE_PTHREAD_COND_TIMEDWAIT = @HAVE_PTHREAD_COND_TIMEDWAIT@ +HAVE_PTHREAD_COND_WAIT = @HAVE_PTHREAD_COND_WAIT@ +HAVE_PTHREAD_CREATE = @HAVE_PTHREAD_CREATE@ +HAVE_PTHREAD_CREATE_DETACHED = @HAVE_PTHREAD_CREATE_DETACHED@ +HAVE_PTHREAD_DETACH = @HAVE_PTHREAD_DETACH@ +HAVE_PTHREAD_EQUAL = @HAVE_PTHREAD_EQUAL@ +HAVE_PTHREAD_EXIT = @HAVE_PTHREAD_EXIT@ +HAVE_PTHREAD_GETSPECIFIC = @HAVE_PTHREAD_GETSPECIFIC@ +HAVE_PTHREAD_H = @HAVE_PTHREAD_H@ +HAVE_PTHREAD_JOIN = @HAVE_PTHREAD_JOIN@ +HAVE_PTHREAD_KEY_CREATE = @HAVE_PTHREAD_KEY_CREATE@ +HAVE_PTHREAD_KEY_DELETE = @HAVE_PTHREAD_KEY_DELETE@ +HAVE_PTHREAD_MUTEXATTR_DESTROY = @HAVE_PTHREAD_MUTEXATTR_DESTROY@ +HAVE_PTHREAD_MUTEXATTR_GETROBUST = @HAVE_PTHREAD_MUTEXATTR_GETROBUST@ +HAVE_PTHREAD_MUTEXATTR_GETTYPE = @HAVE_PTHREAD_MUTEXATTR_GETTYPE@ +HAVE_PTHREAD_MUTEXATTR_INIT = @HAVE_PTHREAD_MUTEXATTR_INIT@ +HAVE_PTHREAD_MUTEXATTR_SETROBUST = @HAVE_PTHREAD_MUTEXATTR_SETROBUST@ +HAVE_PTHREAD_MUTEXATTR_SETTYPE = @HAVE_PTHREAD_MUTEXATTR_SETTYPE@ +HAVE_PTHREAD_MUTEX_DESTROY = @HAVE_PTHREAD_MUTEX_DESTROY@ +HAVE_PTHREAD_MUTEX_INIT = @HAVE_PTHREAD_MUTEX_INIT@ +HAVE_PTHREAD_MUTEX_LOCK = @HAVE_PTHREAD_MUTEX_LOCK@ +HAVE_PTHREAD_MUTEX_RECURSIVE = @HAVE_PTHREAD_MUTEX_RECURSIVE@ +HAVE_PTHREAD_MUTEX_ROBUST = @HAVE_PTHREAD_MUTEX_ROBUST@ +HAVE_PTHREAD_MUTEX_TIMEDLOCK = @HAVE_PTHREAD_MUTEX_TIMEDLOCK@ +HAVE_PTHREAD_MUTEX_TRYLOCK = @HAVE_PTHREAD_MUTEX_TRYLOCK@ +HAVE_PTHREAD_MUTEX_UNLOCK = @HAVE_PTHREAD_MUTEX_UNLOCK@ +HAVE_PTHREAD_ONCE = @HAVE_PTHREAD_ONCE@ +HAVE_PTHREAD_PROCESS_SHARED = @HAVE_PTHREAD_PROCESS_SHARED@ +HAVE_PTHREAD_RWLOCKATTR_DESTROY = @HAVE_PTHREAD_RWLOCKATTR_DESTROY@ +HAVE_PTHREAD_RWLOCKATTR_INIT = @HAVE_PTHREAD_RWLOCKATTR_INIT@ +HAVE_PTHREAD_RWLOCK_DESTROY = @HAVE_PTHREAD_RWLOCK_DESTROY@ +HAVE_PTHREAD_RWLOCK_INIT = @HAVE_PTHREAD_RWLOCK_INIT@ +HAVE_PTHREAD_RWLOCK_RDLOCK = @HAVE_PTHREAD_RWLOCK_RDLOCK@ +HAVE_PTHREAD_RWLOCK_TIMEDRDLOCK = @HAVE_PTHREAD_RWLOCK_TIMEDRDLOCK@ +HAVE_PTHREAD_RWLOCK_TIMEDWRLOCK = @HAVE_PTHREAD_RWLOCK_TIMEDWRLOCK@ +HAVE_PTHREAD_RWLOCK_TRYRDLOCK = @HAVE_PTHREAD_RWLOCK_TRYRDLOCK@ +HAVE_PTHREAD_RWLOCK_TRYWRLOCK = @HAVE_PTHREAD_RWLOCK_TRYWRLOCK@ +HAVE_PTHREAD_RWLOCK_UNLOCK = @HAVE_PTHREAD_RWLOCK_UNLOCK@ +HAVE_PTHREAD_RWLOCK_WRLOCK = @HAVE_PTHREAD_RWLOCK_WRLOCK@ +HAVE_PTHREAD_SELF = @HAVE_PTHREAD_SELF@ +HAVE_PTHREAD_SETSPECIFIC = @HAVE_PTHREAD_SETSPECIFIC@ +HAVE_PTHREAD_SIGMASK = @HAVE_PTHREAD_SIGMASK@ +HAVE_PTHREAD_SPINLOCK_T = @HAVE_PTHREAD_SPINLOCK_T@ +HAVE_PTHREAD_SPIN_DESTROY = @HAVE_PTHREAD_SPIN_DESTROY@ +HAVE_PTHREAD_SPIN_INIT = @HAVE_PTHREAD_SPIN_INIT@ +HAVE_PTHREAD_SPIN_LOCK = @HAVE_PTHREAD_SPIN_LOCK@ +HAVE_PTHREAD_SPIN_TRYLOCK = @HAVE_PTHREAD_SPIN_TRYLOCK@ +HAVE_PTHREAD_SPIN_UNLOCK = @HAVE_PTHREAD_SPIN_UNLOCK@ +HAVE_PTHREAD_T = @HAVE_PTHREAD_T@ +HAVE_PTSNAME = @HAVE_PTSNAME@ +HAVE_PTSNAME_R = @HAVE_PTSNAME_R@ +HAVE_PWRITE = @HAVE_PWRITE@ +HAVE_QSORT_R = @HAVE_QSORT_R@ +HAVE_RAISE = @HAVE_RAISE@ +HAVE_RANDOM = @HAVE_RANDOM@ +HAVE_RANDOM_H = @HAVE_RANDOM_H@ +HAVE_RANDOM_R = @HAVE_RANDOM_R@ +HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ +HAVE_READLINK = @HAVE_READLINK@ +HAVE_READLINKAT = @HAVE_READLINKAT@ +HAVE_REALLOCARRAY = @HAVE_REALLOCARRAY@ +HAVE_REALPATH = @HAVE_REALPATH@ +HAVE_RENAMEAT = @HAVE_RENAMEAT@ +HAVE_RPMATCH = @HAVE_RPMATCH@ +HAVE_SA_FAMILY_T = @HAVE_SA_FAMILY_T@ +HAVE_SCHED_H = @HAVE_SCHED_H@ +HAVE_SCHED_YIELD = @HAVE_SCHED_YIELD@ +HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@ +HAVE_SETENV = @HAVE_SETENV@ +HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@ +HAVE_SETSTATE = @HAVE_SETSTATE@ +HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@ +HAVE_SIGACTION = @HAVE_SIGACTION@ +HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@ +HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@ +HAVE_SIGINFO_T = @HAVE_SIGINFO_T@ +HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@ +HAVE_SIGNED_WCHAR_T = @HAVE_SIGNED_WCHAR_T@ +HAVE_SIGNED_WINT_T = @HAVE_SIGNED_WINT_T@ +HAVE_SIGSET_T = @HAVE_SIGSET_T@ +HAVE_SLEEP = @HAVE_SLEEP@ +HAVE_STDINT_H = @HAVE_STDINT_H@ +HAVE_STPCPY = @HAVE_STPCPY@ +HAVE_STPNCPY = @HAVE_STPNCPY@ +HAVE_STRCASECMP = @HAVE_STRCASECMP@ +HAVE_STRCASESTR = @HAVE_STRCASESTR@ +HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ +HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@ +HAVE_STRINGS_H = @HAVE_STRINGS_H@ +HAVE_STRPBRK = @HAVE_STRPBRK@ +HAVE_STRPTIME = @HAVE_STRPTIME@ +HAVE_STRSEP = @HAVE_STRSEP@ +HAVE_STRTOD = @HAVE_STRTOD@ +HAVE_STRTOL = @HAVE_STRTOL@ +HAVE_STRTOLD = @HAVE_STRTOLD@ +HAVE_STRTOLL = @HAVE_STRTOLL@ +HAVE_STRTOUL = @HAVE_STRTOUL@ +HAVE_STRTOULL = @HAVE_STRTOULL@ +HAVE_STRUCT_ADDRINFO = @HAVE_STRUCT_ADDRINFO@ +HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@ +HAVE_STRUCT_SCHED_PARAM = @HAVE_STRUCT_SCHED_PARAM@ +HAVE_STRUCT_SIGACTION_SA_SIGACTION = @HAVE_STRUCT_SIGACTION_SA_SIGACTION@ +HAVE_STRUCT_SOCKADDR_STORAGE = @HAVE_STRUCT_SOCKADDR_STORAGE@ +HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = @HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY@ +HAVE_STRUCT_TIMEVAL = @HAVE_STRUCT_TIMEVAL@ +HAVE_STRVERSCMP = @HAVE_STRVERSCMP@ +HAVE_SYMLINK = @HAVE_SYMLINK@ +HAVE_SYMLINKAT = @HAVE_SYMLINKAT@ +HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@ +HAVE_SYS_CDEFS_H = @HAVE_SYS_CDEFS_H@ +HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@ +HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@ +HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ +HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ +HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@ +HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@ +HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@ +HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ +HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@ +HAVE_TIMEGM = @HAVE_TIMEGM@ +HAVE_TIMESPEC_GET = @HAVE_TIMESPEC_GET@ +HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ +HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@ +HAVE_UNISTD_H = @HAVE_UNISTD_H@ +HAVE_UNLINKAT = @HAVE_UNLINKAT@ +HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ +HAVE_USLEEP = @HAVE_USLEEP@ +HAVE_UTIMENSAT = @HAVE_UTIMENSAT@ +HAVE_VASPRINTF = @HAVE_VASPRINTF@ +HAVE_VDPRINTF = @HAVE_VDPRINTF@ +HAVE_VISIBILITY = @HAVE_VISIBILITY@ +HAVE_WCHAR_H = @HAVE_WCHAR_H@ +HAVE_WCHAR_T = @HAVE_WCHAR_T@ +HAVE_WCPCPY = @HAVE_WCPCPY@ +HAVE_WCPNCPY = @HAVE_WCPNCPY@ +HAVE_WCRTOMB = @HAVE_WCRTOMB@ +HAVE_WCSCASECMP = @HAVE_WCSCASECMP@ +HAVE_WCSCAT = @HAVE_WCSCAT@ +HAVE_WCSCHR = @HAVE_WCSCHR@ +HAVE_WCSCMP = @HAVE_WCSCMP@ +HAVE_WCSCOLL = @HAVE_WCSCOLL@ +HAVE_WCSCPY = @HAVE_WCSCPY@ +HAVE_WCSCSPN = @HAVE_WCSCSPN@ +HAVE_WCSDUP = @HAVE_WCSDUP@ +HAVE_WCSFTIME = @HAVE_WCSFTIME@ +HAVE_WCSLEN = @HAVE_WCSLEN@ +HAVE_WCSNCASECMP = @HAVE_WCSNCASECMP@ +HAVE_WCSNCAT = @HAVE_WCSNCAT@ +HAVE_WCSNCMP = @HAVE_WCSNCMP@ +HAVE_WCSNCPY = @HAVE_WCSNCPY@ +HAVE_WCSNLEN = @HAVE_WCSNLEN@ +HAVE_WCSNRTOMBS = @HAVE_WCSNRTOMBS@ +HAVE_WCSPBRK = @HAVE_WCSPBRK@ +HAVE_WCSRCHR = @HAVE_WCSRCHR@ +HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ +HAVE_WCSSPN = @HAVE_WCSSPN@ +HAVE_WCSSTR = @HAVE_WCSSTR@ +HAVE_WCSTOK = @HAVE_WCSTOK@ +HAVE_WCSWIDTH = @HAVE_WCSWIDTH@ +HAVE_WCSXFRM = @HAVE_WCSXFRM@ +HAVE_WINSOCK2_H = @HAVE_WINSOCK2_H@ +HAVE_WINT_T = @HAVE_WINT_T@ +HAVE_WMEMCHR = @HAVE_WMEMCHR@ +HAVE_WMEMCMP = @HAVE_WMEMCMP@ +HAVE_WMEMCPY = @HAVE_WMEMCPY@ +HAVE_WMEMMOVE = @HAVE_WMEMMOVE@ +HAVE_WMEMPCPY = @HAVE_WMEMPCPY@ +HAVE_WMEMSET = @HAVE_WMEMSET@ +HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@ +HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ +HAVE__BOOL = @HAVE__BOOL@ +HAVE__EXIT = @HAVE__EXIT@ +HOGWEED_CFLAGS = @HOGWEED_CFLAGS@ +HOGWEED_LIBS = @HOGWEED_LIBS@ +HOSTENT_LIB = @HOSTENT_LIB@ +HTML_DIR = @HTML_DIR@ +INCLUDE_NEXT = @INCLUDE_NEXT@ +INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ +INET_NTOP_LIB = @INET_NTOP_LIB@ +INET_PTON_LIB = @INET_PTON_LIB@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INT32_MAX_LT_INTMAX_MAX = @INT32_MAX_LT_INTMAX_MAX@ +INT64_MAX_EQ_LONG_MAX = @INT64_MAX_EQ_LONG_MAX@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +LCOV = @LCOV@ +LD = @LD@ +LDDPOSTPROC = @LDDPOSTPROC@ +LDDPROG = @LDDPROG@ +LDFLAGS = @LDFLAGS@ +LIBATOMIC_LIBS = @LIBATOMIC_LIBS@ +LIBBROTLIDEC_CFLAGS = @LIBBROTLIDEC_CFLAGS@ +LIBBROTLIDEC_LIBS = @LIBBROTLIDEC_LIBS@ +LIBBROTLIENC_CFLAGS = @LIBBROTLIENC_CFLAGS@ +LIBBROTLIENC_LIBS = @LIBBROTLIENC_LIBS@ +LIBCRYPTO = @LIBCRYPTO@ +LIBCRYPTO_PREFIX = @LIBCRYPTO_PREFIX@ +LIBDL = @LIBDL@ +LIBDL_PREFIX = @LIBDL_PREFIX@ +LIBEV = @LIBEV@ +LIBEV_LIBS = @LIBEV_LIBS@ +LIBEV_PREFIX = @LIBEV_PREFIX@ +LIBGNUTLS_CFLAGS = @LIBGNUTLS_CFLAGS@ +LIBGNUTLS_LIBS = @LIBGNUTLS_LIBS@ +LIBICONV = @LIBICONV@ +LIBIDN2_CFLAGS = @LIBIDN2_CFLAGS@ +LIBIDN2_LIBS = @LIBIDN2_LIBS@ +LIBINTL = @LIBINTL@ +LIBKCAPI_CFLAGS = @LIBKCAPI_CFLAGS@ +LIBKCAPI_LIBS = @LIBKCAPI_LIBS@ +LIBMULTITHREAD = @LIBMULTITHREAD@ +LIBOBJS = @LIBOBJS@ +LIBPMULTITHREAD = @LIBPMULTITHREAD@ +LIBPTHREAD = @LIBPTHREAD@ +LIBPTHREAD_PREFIX = @LIBPTHREAD_PREFIX@ +LIBRT = @LIBRT@ +LIBRT_PREFIX = @LIBRT_PREFIX@ +LIBS = @LIBS@ +LIBSECCOMP = @LIBSECCOMP@ +LIBSECCOMP_PREFIX = @LIBSECCOMP_PREFIX@ +LIBSOCKET = @LIBSOCKET@ +LIBSTDTHREAD = @LIBSTDTHREAD@ +LIBTASN1_CFLAGS = @LIBTASN1_CFLAGS@ +LIBTASN1_LIBS = @LIBTASN1_LIBS@ +LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@ +LIBTHREAD = @LIBTHREAD@ +LIBTOOL = @LIBTOOL@ +LIBUNISTRING = @LIBUNISTRING@ +LIBUNISTRING_UNICTYPE_H = @LIBUNISTRING_UNICTYPE_H@ +LIBUNISTRING_UNINORM_H = @LIBUNISTRING_UNINORM_H@ +LIBUNISTRING_UNISTR_H = @LIBUNISTRING_UNISTR_H@ +LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ +LIBZ = @LIBZ@ +LIBZSTD_CFLAGS = @LIBZSTD_CFLAGS@ +LIBZSTD_LIBS = @LIBZSTD_LIBS@ +LIBZ_PC = @LIBZ_PC@ +LIBZ_PREFIX = @LIBZ_PREFIX@ +LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@ +LIB_NANOSLEEP = @LIB_NANOSLEEP@ +LIB_PTHREAD = @LIB_PTHREAD@ +LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@ +LIB_SCHED_YIELD = @LIB_SCHED_YIELD@ +LIB_SELECT = @LIB_SELECT@ +LIB_SEMAPHORE = @LIB_SEMAPHORE@ +LIB_SETLOCALE = @LIB_SETLOCALE@ +LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@ +LIMITS_H = @LIMITS_H@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LOCALENAME_ENHANCE_LOCALE_FUNCS = @LOCALENAME_ENHANCE_LOCALE_FUNCS@ +LOCALE_FR = @LOCALE_FR@ +LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@ +LOCALE_JA = @LOCALE_JA@ +LOCALE_TR_UTF8 = @LOCALE_TR_UTF8@ +LOCALE_ZH_CN = @LOCALE_ZH_CN@ +LOG_VALGRIND = @LOG_VALGRIND@ +LTALLOCA = @LTALLOCA@ +LTLIBCRYPTO = @LTLIBCRYPTO@ +LTLIBDL = @LTLIBDL@ +LTLIBEV = @LTLIBEV@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBMULTITHREAD = @LTLIBMULTITHREAD@ +LTLIBOBJS = @LTLIBOBJS@ +LTLIBPTHREAD = @LTLIBPTHREAD@ +LTLIBRT = @LTLIBRT@ +LTLIBSECCOMP = @LTLIBSECCOMP@ +LTLIBTHREAD = @LTLIBTHREAD@ +LTLIBZ = @LTLIBZ@ +LT_AGE = @LT_AGE@ +LT_CURRENT = @LT_CURRENT@ +LT_DANE_AGE = @LT_DANE_AGE@ +LT_DANE_CURRENT = @LT_DANE_CURRENT@ +LT_DANE_REVISION = @LT_DANE_REVISION@ +LT_REVISION = @LT_REVISION@ +LT_SSL_AGE = @LT_SSL_AGE@ +LT_SSL_CURRENT = @LT_SSL_CURRENT@ +LT_SSL_REVISION = @LT_SSL_REVISION@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +LT_XSSL_AGE = @LT_XSSL_AGE@ +LT_XSSL_CURRENT = @LT_XSSL_CURRENT@ +LT_XSSL_REVISION = @LT_XSSL_REVISION@ +MAINT = @MAINT@ +MAJOR_VERSION = @MAJOR_VERSION@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MINOR_VERSION = @MINOR_VERSION@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGMERGE = @MSGMERGE@ +MSGMERGE_FOR_MSGFMT_OPTION = @MSGMERGE_FOR_MSGFMT_OPTION@ +NETINET_IN_H = @NETINET_IN_H@ +NETTLE_CFLAGS = @NETTLE_CFLAGS@ +NETTLE_LIBS = @NETTLE_LIBS@ +NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@ +NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@ +NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@ +NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ +NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ +NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ +NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@ +NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@ +NEXT_AS_FIRST_DIRECTIVE_LIMITS_H = @NEXT_AS_FIRST_DIRECTIVE_LIMITS_H@ +NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@ +NEXT_AS_FIRST_DIRECTIVE_NETDB_H = @NEXT_AS_FIRST_DIRECTIVE_NETDB_H@ +NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H = @NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H@ +NEXT_AS_FIRST_DIRECTIVE_PTHREAD_H = @NEXT_AS_FIRST_DIRECTIVE_PTHREAD_H@ +NEXT_AS_FIRST_DIRECTIVE_SCHED_H = @NEXT_AS_FIRST_DIRECTIVE_SCHED_H@ +NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H = @NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H@ +NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@ +NEXT_AS_FIRST_DIRECTIVE_STDINT_H = @NEXT_AS_FIRST_DIRECTIVE_STDINT_H@ +NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@ +NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@ +NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_H@ +NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@ +NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@ +NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@ +NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@ +NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@ +NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H@ +NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@ +NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H@ +NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@ +NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@ +NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ +NEXT_CTYPE_H = @NEXT_CTYPE_H@ +NEXT_ERRNO_H = @NEXT_ERRNO_H@ +NEXT_FCNTL_H = @NEXT_FCNTL_H@ +NEXT_FLOAT_H = @NEXT_FLOAT_H@ +NEXT_INTTYPES_H = @NEXT_INTTYPES_H@ +NEXT_LANGINFO_H = @NEXT_LANGINFO_H@ +NEXT_LIMITS_H = @NEXT_LIMITS_H@ +NEXT_LOCALE_H = @NEXT_LOCALE_H@ +NEXT_NETDB_H = @NEXT_NETDB_H@ +NEXT_NETINET_IN_H = @NEXT_NETINET_IN_H@ +NEXT_PTHREAD_H = @NEXT_PTHREAD_H@ +NEXT_SCHED_H = @NEXT_SCHED_H@ +NEXT_SIGNAL_H = @NEXT_SIGNAL_H@ +NEXT_STDDEF_H = @NEXT_STDDEF_H@ +NEXT_STDINT_H = @NEXT_STDINT_H@ +NEXT_STDIO_H = @NEXT_STDIO_H@ +NEXT_STDLIB_H = @NEXT_STDLIB_H@ +NEXT_STRINGS_H = @NEXT_STRINGS_H@ +NEXT_STRING_H = @NEXT_STRING_H@ +NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@ +NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@ +NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@ +NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@ +NEXT_SYS_TIME_H = @NEXT_SYS_TIME_H@ +NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@ +NEXT_SYS_UIO_H = @NEXT_SYS_UIO_H@ +NEXT_TIME_H = @NEXT_TIME_H@ +NEXT_UNISTD_H = @NEXT_UNISTD_H@ +NEXT_WCHAR_H = @NEXT_WCHAR_H@ +NM = @NM@ +NMEDIT = @NMEDIT@ +NUMBER_VERSION = @NUMBER_VERSION@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +P11_KIT_CFLAGS = @P11_KIT_CFLAGS@ +P11_KIT_LIBS = @P11_KIT_LIBS@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PARSE_DATETIME_BISON = @PARSE_DATETIME_BISON@ +PATCH_VERSION = @PATCH_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKCS12_ITER_COUNT = @PKCS12_ITER_COUNT@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +PMCCABE = @PMCCABE@ +POSUB = @POSUB@ +PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ +PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ +PRIPTR_PREFIX = @PRIPTR_PREFIX@ +PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ +PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +REPLACE_ACCESS = @REPLACE_ACCESS@ +REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@ +REPLACE_BTOWC = @REPLACE_BTOWC@ +REPLACE_CALLOC = @REPLACE_CALLOC@ +REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ +REPLACE_CHOWN = @REPLACE_CHOWN@ +REPLACE_CLOSE = @REPLACE_CLOSE@ +REPLACE_CREAT = @REPLACE_CREAT@ +REPLACE_CTIME = @REPLACE_CTIME@ +REPLACE_DPRINTF = @REPLACE_DPRINTF@ +REPLACE_DUP = @REPLACE_DUP@ +REPLACE_DUP2 = @REPLACE_DUP2@ +REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ +REPLACE_EXECL = @REPLACE_EXECL@ +REPLACE_EXECLE = @REPLACE_EXECLE@ +REPLACE_EXECLP = @REPLACE_EXECLP@ +REPLACE_EXECV = @REPLACE_EXECV@ +REPLACE_EXECVE = @REPLACE_EXECVE@ +REPLACE_EXECVP = @REPLACE_EXECVP@ +REPLACE_EXECVPE = @REPLACE_EXECVPE@ +REPLACE_FACCESSAT = @REPLACE_FACCESSAT@ +REPLACE_FCHMODAT = @REPLACE_FCHMODAT@ +REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ +REPLACE_FCLOSE = @REPLACE_FCLOSE@ +REPLACE_FCNTL = @REPLACE_FCNTL@ +REPLACE_FDOPEN = @REPLACE_FDOPEN@ +REPLACE_FFLUSH = @REPLACE_FFLUSH@ +REPLACE_FFSLL = @REPLACE_FFSLL@ +REPLACE_FOPEN = @REPLACE_FOPEN@ +REPLACE_FPRINTF = @REPLACE_FPRINTF@ +REPLACE_FPURGE = @REPLACE_FPURGE@ +REPLACE_FREE = @REPLACE_FREE@ +REPLACE_FREELOCALE = @REPLACE_FREELOCALE@ +REPLACE_FREOPEN = @REPLACE_FREOPEN@ +REPLACE_FSEEK = @REPLACE_FSEEK@ +REPLACE_FSEEKO = @REPLACE_FSEEKO@ +REPLACE_FSTAT = @REPLACE_FSTAT@ +REPLACE_FSTATAT = @REPLACE_FSTATAT@ +REPLACE_FTELL = @REPLACE_FTELL@ +REPLACE_FTELLO = @REPLACE_FTELLO@ +REPLACE_FTRUNCATE = @REPLACE_FTRUNCATE@ +REPLACE_FUTIMENS = @REPLACE_FUTIMENS@ +REPLACE_GAI_STRERROR = @REPLACE_GAI_STRERROR@ +REPLACE_GETADDRINFO = @REPLACE_GETADDRINFO@ +REPLACE_GETCWD = @REPLACE_GETCWD@ +REPLACE_GETDELIM = @REPLACE_GETDELIM@ +REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ +REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ +REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ +REPLACE_GETLINE = @REPLACE_GETLINE@ +REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ +REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ +REPLACE_GETPASS = @REPLACE_GETPASS@ +REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ +REPLACE_GMTIME = @REPLACE_GMTIME@ +REPLACE_INET_NTOP = @REPLACE_INET_NTOP@ +REPLACE_INET_PTON = @REPLACE_INET_PTON@ +REPLACE_INITSTATE = @REPLACE_INITSTATE@ +REPLACE_IOCTL = @REPLACE_IOCTL@ +REPLACE_ISATTY = @REPLACE_ISATTY@ +REPLACE_ITOLD = @REPLACE_ITOLD@ +REPLACE_LCHOWN = @REPLACE_LCHOWN@ +REPLACE_LINK = @REPLACE_LINK@ +REPLACE_LINKAT = @REPLACE_LINKAT@ +REPLACE_LOCALECONV = @REPLACE_LOCALECONV@ +REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ +REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ +REPLACE_LSEEK = @REPLACE_LSEEK@ +REPLACE_LSTAT = @REPLACE_LSTAT@ +REPLACE_MALLOC = @REPLACE_MALLOC@ +REPLACE_MBRLEN = @REPLACE_MBRLEN@ +REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ +REPLACE_MBSINIT = @REPLACE_MBSINIT@ +REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ +REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ +REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ +REPLACE_MBTOWC = @REPLACE_MBTOWC@ +REPLACE_MEMCHR = @REPLACE_MEMCHR@ +REPLACE_MEMMEM = @REPLACE_MEMMEM@ +REPLACE_MKDIR = @REPLACE_MKDIR@ +REPLACE_MKFIFO = @REPLACE_MKFIFO@ +REPLACE_MKFIFOAT = @REPLACE_MKFIFOAT@ +REPLACE_MKNOD = @REPLACE_MKNOD@ +REPLACE_MKNODAT = @REPLACE_MKNODAT@ +REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ +REPLACE_MKTIME = @REPLACE_MKTIME@ +REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ +REPLACE_NEWLOCALE = @REPLACE_NEWLOCALE@ +REPLACE_NL_LANGINFO = @REPLACE_NL_LANGINFO@ +REPLACE_NULL = @REPLACE_NULL@ +REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ +REPLACE_OPEN = @REPLACE_OPEN@ +REPLACE_OPENAT = @REPLACE_OPENAT@ +REPLACE_PERROR = @REPLACE_PERROR@ +REPLACE_POPEN = @REPLACE_POPEN@ +REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@ +REPLACE_PREAD = @REPLACE_PREAD@ +REPLACE_PRINTF = @REPLACE_PRINTF@ +REPLACE_PSELECT = @REPLACE_PSELECT@ +REPLACE_PTHREAD_ATTR_DESTROY = @REPLACE_PTHREAD_ATTR_DESTROY@ +REPLACE_PTHREAD_ATTR_GETDETACHSTATE = @REPLACE_PTHREAD_ATTR_GETDETACHSTATE@ +REPLACE_PTHREAD_ATTR_INIT = @REPLACE_PTHREAD_ATTR_INIT@ +REPLACE_PTHREAD_ATTR_SETDETACHSTATE = @REPLACE_PTHREAD_ATTR_SETDETACHSTATE@ +REPLACE_PTHREAD_CONDATTR_DESTROY = @REPLACE_PTHREAD_CONDATTR_DESTROY@ +REPLACE_PTHREAD_CONDATTR_INIT = @REPLACE_PTHREAD_CONDATTR_INIT@ +REPLACE_PTHREAD_COND_BROADCAST = @REPLACE_PTHREAD_COND_BROADCAST@ +REPLACE_PTHREAD_COND_DESTROY = @REPLACE_PTHREAD_COND_DESTROY@ +REPLACE_PTHREAD_COND_INIT = @REPLACE_PTHREAD_COND_INIT@ +REPLACE_PTHREAD_COND_SIGNAL = @REPLACE_PTHREAD_COND_SIGNAL@ +REPLACE_PTHREAD_COND_TIMEDWAIT = @REPLACE_PTHREAD_COND_TIMEDWAIT@ +REPLACE_PTHREAD_COND_WAIT = @REPLACE_PTHREAD_COND_WAIT@ +REPLACE_PTHREAD_CREATE = @REPLACE_PTHREAD_CREATE@ +REPLACE_PTHREAD_DETACH = @REPLACE_PTHREAD_DETACH@ +REPLACE_PTHREAD_EQUAL = @REPLACE_PTHREAD_EQUAL@ +REPLACE_PTHREAD_EXIT = @REPLACE_PTHREAD_EXIT@ +REPLACE_PTHREAD_GETSPECIFIC = @REPLACE_PTHREAD_GETSPECIFIC@ +REPLACE_PTHREAD_JOIN = @REPLACE_PTHREAD_JOIN@ +REPLACE_PTHREAD_KEY_CREATE = @REPLACE_PTHREAD_KEY_CREATE@ +REPLACE_PTHREAD_KEY_DELETE = @REPLACE_PTHREAD_KEY_DELETE@ +REPLACE_PTHREAD_MUTEXATTR_DESTROY = @REPLACE_PTHREAD_MUTEXATTR_DESTROY@ +REPLACE_PTHREAD_MUTEXATTR_GETROBUST = @REPLACE_PTHREAD_MUTEXATTR_GETROBUST@ +REPLACE_PTHREAD_MUTEXATTR_GETTYPE = @REPLACE_PTHREAD_MUTEXATTR_GETTYPE@ +REPLACE_PTHREAD_MUTEXATTR_INIT = @REPLACE_PTHREAD_MUTEXATTR_INIT@ +REPLACE_PTHREAD_MUTEXATTR_SETROBUST = @REPLACE_PTHREAD_MUTEXATTR_SETROBUST@ +REPLACE_PTHREAD_MUTEXATTR_SETTYPE = @REPLACE_PTHREAD_MUTEXATTR_SETTYPE@ +REPLACE_PTHREAD_MUTEX_DESTROY = @REPLACE_PTHREAD_MUTEX_DESTROY@ +REPLACE_PTHREAD_MUTEX_INIT = @REPLACE_PTHREAD_MUTEX_INIT@ +REPLACE_PTHREAD_MUTEX_LOCK = @REPLACE_PTHREAD_MUTEX_LOCK@ +REPLACE_PTHREAD_MUTEX_TIMEDLOCK = @REPLACE_PTHREAD_MUTEX_TIMEDLOCK@ +REPLACE_PTHREAD_MUTEX_TRYLOCK = @REPLACE_PTHREAD_MUTEX_TRYLOCK@ +REPLACE_PTHREAD_MUTEX_UNLOCK = @REPLACE_PTHREAD_MUTEX_UNLOCK@ +REPLACE_PTHREAD_ONCE = @REPLACE_PTHREAD_ONCE@ +REPLACE_PTHREAD_RWLOCKATTR_DESTROY = @REPLACE_PTHREAD_RWLOCKATTR_DESTROY@ +REPLACE_PTHREAD_RWLOCKATTR_INIT = @REPLACE_PTHREAD_RWLOCKATTR_INIT@ +REPLACE_PTHREAD_RWLOCK_DESTROY = @REPLACE_PTHREAD_RWLOCK_DESTROY@ +REPLACE_PTHREAD_RWLOCK_INIT = @REPLACE_PTHREAD_RWLOCK_INIT@ +REPLACE_PTHREAD_RWLOCK_RDLOCK = @REPLACE_PTHREAD_RWLOCK_RDLOCK@ +REPLACE_PTHREAD_RWLOCK_TIMEDRDLOCK = @REPLACE_PTHREAD_RWLOCK_TIMEDRDLOCK@ +REPLACE_PTHREAD_RWLOCK_TIMEDWRLOCK = @REPLACE_PTHREAD_RWLOCK_TIMEDWRLOCK@ +REPLACE_PTHREAD_RWLOCK_TRYRDLOCK = @REPLACE_PTHREAD_RWLOCK_TRYRDLOCK@ +REPLACE_PTHREAD_RWLOCK_TRYWRLOCK = @REPLACE_PTHREAD_RWLOCK_TRYWRLOCK@ +REPLACE_PTHREAD_RWLOCK_UNLOCK = @REPLACE_PTHREAD_RWLOCK_UNLOCK@ +REPLACE_PTHREAD_RWLOCK_WRLOCK = @REPLACE_PTHREAD_RWLOCK_WRLOCK@ +REPLACE_PTHREAD_SELF = @REPLACE_PTHREAD_SELF@ +REPLACE_PTHREAD_SETSPECIFIC = @REPLACE_PTHREAD_SETSPECIFIC@ +REPLACE_PTHREAD_SIGMASK = @REPLACE_PTHREAD_SIGMASK@ +REPLACE_PTHREAD_SPIN_DESTROY = @REPLACE_PTHREAD_SPIN_DESTROY@ +REPLACE_PTHREAD_SPIN_INIT = @REPLACE_PTHREAD_SPIN_INIT@ +REPLACE_PTHREAD_SPIN_LOCK = @REPLACE_PTHREAD_SPIN_LOCK@ +REPLACE_PTHREAD_SPIN_TRYLOCK = @REPLACE_PTHREAD_SPIN_TRYLOCK@ +REPLACE_PTHREAD_SPIN_UNLOCK = @REPLACE_PTHREAD_SPIN_UNLOCK@ +REPLACE_PTSNAME = @REPLACE_PTSNAME@ +REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@ +REPLACE_PUTENV = @REPLACE_PUTENV@ +REPLACE_PWRITE = @REPLACE_PWRITE@ +REPLACE_QSORT_R = @REPLACE_QSORT_R@ +REPLACE_RAISE = @REPLACE_RAISE@ +REPLACE_RANDOM = @REPLACE_RANDOM@ +REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ +REPLACE_READ = @REPLACE_READ@ +REPLACE_READLINK = @REPLACE_READLINK@ +REPLACE_READLINKAT = @REPLACE_READLINKAT@ +REPLACE_REALLOC = @REPLACE_REALLOC@ +REPLACE_REALLOCARRAY = @REPLACE_REALLOCARRAY@ +REPLACE_REALPATH = @REPLACE_REALPATH@ +REPLACE_REMOVE = @REPLACE_REMOVE@ +REPLACE_RENAME = @REPLACE_RENAME@ +REPLACE_RENAMEAT = @REPLACE_RENAMEAT@ +REPLACE_RMDIR = @REPLACE_RMDIR@ +REPLACE_SCHED_YIELD = @REPLACE_SCHED_YIELD@ +REPLACE_SELECT = @REPLACE_SELECT@ +REPLACE_SETENV = @REPLACE_SETENV@ +REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ +REPLACE_SETSTATE = @REPLACE_SETSTATE@ +REPLACE_SLEEP = @REPLACE_SLEEP@ +REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ +REPLACE_SPRINTF = @REPLACE_SPRINTF@ +REPLACE_STAT = @REPLACE_STAT@ +REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ +REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPNCPY = @REPLACE_STPNCPY@ +REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ +REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ +REPLACE_STRDUP = @REPLACE_STRDUP@ +REPLACE_STRERROR = @REPLACE_STRERROR@ +REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@ +REPLACE_STRERROR_R = @REPLACE_STRERROR_R@ +REPLACE_STRFTIME = @REPLACE_STRFTIME@ +REPLACE_STRNCAT = @REPLACE_STRNCAT@ +REPLACE_STRNDUP = @REPLACE_STRNDUP@ +REPLACE_STRNLEN = @REPLACE_STRNLEN@ +REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ +REPLACE_STRSTR = @REPLACE_STRSTR@ +REPLACE_STRTOD = @REPLACE_STRTOD@ +REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@ +REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ +REPLACE_STRTOL = @REPLACE_STRTOL@ +REPLACE_STRTOLD = @REPLACE_STRTOLD@ +REPLACE_STRTOLL = @REPLACE_STRTOLL@ +REPLACE_STRTOUL = @REPLACE_STRTOUL@ +REPLACE_STRTOULL = @REPLACE_STRTOULL@ +REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@ +REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ +REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@ +REPLACE_SYMLINK = @REPLACE_SYMLINK@ +REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ +REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TMPFILE = @REPLACE_TMPFILE@ +REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ +REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ +REPLACE_TZSET = @REPLACE_TZSET@ +REPLACE_UNLINK = @REPLACE_UNLINK@ +REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ +REPLACE_UNSETENV = @REPLACE_UNSETENV@ +REPLACE_USLEEP = @REPLACE_USLEEP@ +REPLACE_UTIMENSAT = @REPLACE_UTIMENSAT@ +REPLACE_VASPRINTF = @REPLACE_VASPRINTF@ +REPLACE_VDPRINTF = @REPLACE_VDPRINTF@ +REPLACE_VFPRINTF = @REPLACE_VFPRINTF@ +REPLACE_VPRINTF = @REPLACE_VPRINTF@ +REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ +REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ +REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ +REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ +REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ +REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ +REPLACE_WCSTOK = @REPLACE_WCSTOK@ +REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ +REPLACE_WCTOB = @REPLACE_WCTOB@ +REPLACE_WCTOMB = @REPLACE_WCTOMB@ +REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ +REPLACE_WRITE = @REPLACE_WRITE@ +SED = @SED@ +SERVENT_LIB = @SERVENT_LIB@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ +SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ +STDALIGN_H = @STDALIGN_H@ +STDBOOL_H = @STDBOOL_H@ +STDDEF_H = @STDDEF_H@ +STDINT_H = @STDINT_H@ +STRIP = @STRIP@ +SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@ +SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@ +SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@ +TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@ +TIME_H_DEFINES_TIME_UTC = @TIME_H_DEFINES_TIME_UTC@ +TROUSERS_LIB = @TROUSERS_LIB@ +TSS2_CFLAGS = @TSS2_CFLAGS@ +TSS2_LIBS = @TSS2_LIBS@ +TSS_CFLAGS = @TSS_CFLAGS@ +TSS_LIBS = @TSS_LIBS@ +UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@ +UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@ +UNBOUND_CFLAGS = @UNBOUND_CFLAGS@ +UNBOUND_LIBS = @UNBOUND_LIBS@ +UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@ +UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@ +UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@ +UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@ +UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@ +USE_NLS = @USE_NLS@ +VALGRIND = @VALGRIND@ +VALGRINDFLAGS = @VALGRINDFLAGS@ +VALGRIND_PROGRAM = @VALGRIND_PROGRAM@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@ +WERROR_CFLAGS = @WERROR_CFLAGS@ +WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@ +WINDOWS_64_BIT_ST_SIZE = @WINDOWS_64_BIT_ST_SIZE@ +WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@ +WINDOWS_STAT_TIMESPEC = @WINDOWS_STAT_TIMESPEC@ +WINT_T_SUFFIX = @WINT_T_SUFFIX@ +WSTACK_CFLAGS = @WSTACK_CFLAGS@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +YACC = @YACC@ +YFLAGS = @YFLAGS@ +YIELD_LIB = @YIELD_LIB@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_cv_sizeof_time_t = @ac_cv_sizeof_time_t@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +ggl_LIBOBJS = @ggl_LIBOBJS@ +ggl_LTLIBOBJS = @ggl_LTLIBOBJS@ +ggltests_LIBOBJS = @ggltests_LIBOBJS@ +ggltests_LTLIBOBJS = @ggltests_LTLIBOBJS@ +ggltests_WITNESS = @ggltests_WITNESS@ +gl_LIBOBJS = @gl_LIBOBJS@ +gl_LTLIBOBJS = @gl_LTLIBOBJS@ +gltests_LIBOBJS = @gltests_LIBOBJS@ +gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ +gltests_WITNESS = @gltests_WITNESS@ +gnutls_so = @gnutls_so@ +guile_snarf = @guile_snarf@ +guileextensiondir = @guileextensiondir@ +guilesiteccachedir = @guilesiteccachedir@ +guilesitedir = @guilesitedir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +ifGNUmake = @ifGNUmake@ +ifnGNUmake = @ifnGNUmake@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +maybe_guileextensiondir = @maybe_guileextensiondir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +runstatedir = @runstatedir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +unistring_LIBOBJS = @unistring_LIBOBJS@ +unistring_LTLIBOBJS = @unistring_LTLIBOBJS@ +unistringtests_LIBOBJS = @unistringtests_LIBOBJS@ +unistringtests_LTLIBOBJS = @unistringtests_LTLIBOBJS@ +unistringtests_WITNESS = @unistringtests_WITNESS@ +AUTOMAKE_OPTIONS = 1.11 gnits subdir-objects +SUBDIRS = +noinst_HEADERS = +noinst_LIBRARIES = +noinst_LTLIBRARIES = libunistring.la +# No GNU Make output. +EXTRA_DIST = m4/gnulib-cache.m4 array-mergesort.h attribute.h \ + limits.in.h unused-parameter.h stdbool.in.h stdint.in.h \ + sys_types.in.h unictype.in.h unictype/categ_C.h \ + unictype/categ_Cc.h unictype/categ_Cf.h unictype/categ_Cn.h \ + unictype/categ_Co.h unictype/categ_Cs.h unictype/categ_L.h \ + unictype/categ_LC.h unictype/categ_Ll.h unictype/categ_Lm.h \ + unictype/categ_Lo.h unictype/categ_Lt.h unictype/categ_Lu.h \ + unictype/categ_M.h unictype/categ_Mc.h unictype/categ_Me.h \ + unictype/categ_Mn.h unictype/categ_N.h unictype/categ_Nd.h \ + unictype/categ_Nl.h unictype/categ_No.h unictype/categ_P.h \ + unictype/categ_Pc.h unictype/categ_Pd.h unictype/categ_Pe.h \ + unictype/categ_Pf.h unictype/categ_Pi.h unictype/categ_Po.h \ + unictype/categ_Ps.h unictype/categ_S.h unictype/categ_Sc.h \ + unictype/categ_Sk.h unictype/categ_Sm.h unictype/categ_So.h \ + unictype/categ_Z.h unictype/categ_Zl.h unictype/categ_Zp.h \ + unictype/categ_Zs.h unictype/categ_byname.h \ + unictype/categ_byname.gperf unictype/categ_of.h \ + unictype/bitmap.h unictype/combiningclass.h unictype/bitmap.h \ + unictype/pr_default_ignorable_code_point.h unictype/bitmap.h \ + unictype/pr_join_control.h unictype/bitmap.h \ + unictype/pr_not_a_character.h uninorm.in.h \ + uninorm/decompose-internal.h uninorm/composition-table.h \ + uninorm/composition-table.gperf uninorm/decompose-internal.h \ + uninorm/decomposition-table.h uninorm/decomposition-table1.h \ + uninorm/decomposition-table2.h uninorm/normalize-internal.h \ + uninorm/normalize-internal.h uninorm/normalize-internal.h \ + uninorm/normalize-internal.h uninorm/normalize-internal.h \ + uninorm/u-normalize-internal.h uninorm/normalize-internal.h \ + uninorm/u-normalize-internal.h uninorm/normalize-internal.h \ + uninorm/u-normalize-internal.h unistr.in.h unistr/u-cpy.h \ + unistr/u-cpy.h unistr/u-cpy.h unitypes.in.h +BUILT_SOURCES = $(LIMITS_H) $(STDBOOL_H) $(STDINT_H) sys/types.h \ + $(LIBUNISTRING_UNICTYPE_H) unictype/categ_byname.h \ + $(LIBUNISTRING_UNINORM_H) uninorm/composition-table.h \ + $(LIBUNISTRING_UNISTR_H) $(LIBUNISTRING_UNITYPES_H) +SUFFIXES = +MOSTLYCLEANFILES = core *.stackdump limits.h limits.h-t stdbool.h \ + stdbool.h-t stdint.h stdint.h-t sys/types.h sys/types.h-t \ + unictype.h unictype.h-t unictype/categ_byname.h-t1 \ + unictype/categ_byname.h-t2 uninorm.h uninorm.h-t \ + uninorm/composition-table.h-t1 uninorm/composition-table.h-t2 \ + unistr.h unistr.h-t unitypes.h unitypes.h-t +MOSTLYCLEANDIRS = +CLEANFILES = +DISTCLEANFILES = +MAINTAINERCLEANFILES = unictype/categ_byname.h \ + uninorm/composition-table.h +AM_CPPFLAGS = +AM_CFLAGS = +libunistring_la_SOURCES = $(am__append_1) $(am__append_2) \ + $(am__append_3) $(am__append_4) $(am__append_5) \ + $(am__append_6) $(am__append_7) $(am__append_8) \ + $(am__append_9) $(am__append_10) $(am__append_11) \ + $(am__append_12) $(am__append_13) $(am__append_14) \ + $(am__append_15) $(am__append_16) $(am__append_17) \ + $(am__append_18) $(am__append_19) $(am__append_20) \ + $(am__append_21) $(am__append_22) $(am__append_23) \ + $(am__append_24) $(am__append_25) $(am__append_26) \ + $(am__append_27) $(am__append_28) $(am__append_29) \ + $(am__append_30) $(am__append_31) $(am__append_32) \ + $(am__append_33) $(am__append_34) $(am__append_35) \ + $(am__append_36) $(am__append_37) $(am__append_38) \ + $(am__append_39) $(am__append_40) $(am__append_41) \ + $(am__append_42) $(am__append_43) $(am__append_44) \ + $(am__append_45) $(am__append_46) $(am__append_47) \ + $(am__append_48) $(am__append_49) $(am__append_50) \ + $(am__append_51) $(am__append_52) \ + uninorm/compat-decomposition.c $(am__append_53) \ + uninorm/decompose-internal.c $(am__append_54) \ + uninorm/decomposition-table.c $(am__append_55) \ + $(am__append_56) $(am__append_57) $(am__append_58) \ + $(am__append_59) $(am__append_60) $(am__append_61) \ + $(am__append_62) $(am__append_63) $(am__append_64) \ + $(am__append_65) $(am__append_66) $(am__append_67) \ + $(am__append_68) $(am__append_69) $(am__append_70) \ + $(am__append_71) $(am__append_72) $(am__append_73) \ + $(am__append_74) $(am__append_75) $(am__append_76) \ + $(am__append_77) +libunistring_la_LIBADD = $(unistring_LTLIBOBJS) +libunistring_la_DEPENDENCIES = $(unistring_LTLIBOBJS) +EXTRA_libunistring_la_SOURCES = +libunistring_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined + +# Use this preprocessor expression to decide whether #include_next works. +# Do not rely on a 'configure'-time test for this, since the expression +# might appear in an installed header, which is used by some other compiler. +HAVE_INCLUDE_NEXT = (__GNUC__ || __clang__ || 60000000 <= __DECC_VER) +V_GPERF = $(V_GPERF_@AM_V@) +V_GPERF_ = $(V_GPERF_@AM_DEFAULT_V@) +V_GPERF_0 = @echo " GPERF " $@; + +# Because this Makefile snippet defines a variable used by other +# gnulib Makefile snippets, it must be present in all makefiles that +# need it. This is ensured by the applicability 'all' defined above. +UNUSED_PARAMETER_H = $(srcdir)/unused-parameter.h +all: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits lib/unistring/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnits lib/unistring/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + +clean-noinstLTLIBRARIES: + -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) + @list='$(noinst_LTLIBRARIES)'; \ + locs=`for p in $$list; do echo $$p; done | \ + sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ + sort -u`; \ + test -z "$$locs" || { \ + echo rm -f $${locs}; \ + rm -f $${locs}; \ + } +unictype/$(am__dirstamp): + @$(MKDIR_P) unictype + @: > unictype/$(am__dirstamp) +unictype/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) unictype/$(DEPDIR) + @: > unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_C.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Cc.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Cf.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Cn.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Co.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Cs.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_L.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_LC.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Ll.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Lm.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Lo.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Lt.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Lu.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_M.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Mc.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Me.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Mn.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_N.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Nd.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Nl.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_No.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_P.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Pc.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Pd.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Pe.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Pf.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Pi.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Po.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Ps.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_S.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Sc.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Sk.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Sm.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_So.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Z.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Zl.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Zp.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_Zs.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_and.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_and_not.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_byname.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_longname.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_name.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_none.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_of.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_or.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/categ_test.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/combiningclass.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/pr_default_ignorable_code_point.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/pr_join_control.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +unictype/pr_not_a_character.lo: unictype/$(am__dirstamp) \ + unictype/$(DEPDIR)/$(am__dirstamp) +uninorm/$(am__dirstamp): + @$(MKDIR_P) uninorm + @: > uninorm/$(am__dirstamp) +uninorm/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) uninorm/$(DEPDIR) + @: > uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/canonical-decomposition.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/compat-decomposition.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/composition.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/decompose-internal.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/decomposition.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/decomposition-table.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/nfc.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/nfd.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/nfkc.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/nfkd.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/u16-normalize.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/u32-normalize.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +uninorm/u8-normalize.lo: uninorm/$(am__dirstamp) \ + uninorm/$(DEPDIR)/$(am__dirstamp) +unistr/$(am__dirstamp): + @$(MKDIR_P) unistr + @: > unistr/$(am__dirstamp) +unistr/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) unistr/$(DEPDIR) + @: > unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u16-cpy.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u16-mbtouc-unsafe.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u16-mbtouc-unsafe-aux.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u16-mbtoucr.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u16-to-u8.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u16-uctomb.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u16-uctomb-aux.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u32-cpy.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u32-mbtouc-unsafe.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u32-to-u8.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u32-uctomb.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u8-check.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u8-cpy.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u8-mbtouc-unsafe.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u8-mbtouc-unsafe-aux.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u8-mbtoucr.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u8-to-u16.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u8-to-u32.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u8-uctomb.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) +unistr/u8-uctomb-aux.lo: unistr/$(am__dirstamp) \ + unistr/$(DEPDIR)/$(am__dirstamp) + +libunistring.la: $(libunistring_la_OBJECTS) $(libunistring_la_DEPENDENCIES) $(EXTRA_libunistring_la_DEPENDENCIES) + $(AM_V_CCLD)$(libunistring_la_LINK) $(libunistring_la_OBJECTS) $(libunistring_la_LIBADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + -rm -f unictype/*.$(OBJEXT) + -rm -f unictype/*.lo + -rm -f uninorm/*.$(OBJEXT) + -rm -f uninorm/*.lo + -rm -f unistr/*.$(OBJEXT) + -rm -f unistr/*.lo + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_C.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Cc.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Cf.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Cn.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Co.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Cs.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_L.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_LC.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Ll.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Lm.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Lo.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Lt.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Lu.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_M.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Mc.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Me.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Mn.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_N.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Nd.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Nl.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_No.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_P.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Pc.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Pd.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Pe.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Pf.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Pi.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Po.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Ps.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_S.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Sc.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Sk.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Sm.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_So.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Z.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Zl.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Zp.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_Zs.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_and.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_and_not.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_byname.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_longname.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_name.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_none.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_of.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_or.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/categ_test.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/combiningclass.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/pr_default_ignorable_code_point.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/pr_join_control.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unictype/$(DEPDIR)/pr_not_a_character.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/canonical-decomposition.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/compat-decomposition.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/composition.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/decompose-internal.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/decomposition-table.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/decomposition.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/nfc.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/nfd.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/nfkc.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/nfkd.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/u16-normalize.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/u32-normalize.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uninorm/$(DEPDIR)/u8-normalize.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u16-cpy.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u16-mbtouc-unsafe-aux.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u16-mbtouc-unsafe.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u16-mbtoucr.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u16-to-u8.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u16-uctomb-aux.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u16-uctomb.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u32-cpy.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u32-mbtouc-unsafe.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u32-to-u8.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u32-uctomb.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-check.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-cpy.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-mbtouc-unsafe-aux.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-mbtouc-unsafe.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-mbtoucr.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-to-u16.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-to-u32.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-uctomb-aux.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-uctomb.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + -rm -rf unictype/.libs unictype/_libs + -rm -rf uninorm/.libs uninorm/_libs + -rm -rf unistr/.libs unistr/_libs + +# This directory's subdirectories are mostly independent; you can cd +# into them and run 'make' without going through this Makefile. +# To change the values of 'make' variables: instead of editing Makefiles, +# (1) if the variable is set in 'config.status', edit 'config.status' +# (which will cause the Makefiles to be regenerated when you run 'make'); +# (2) otherwise, pass the desired values on the 'make' command line. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) check-recursive +all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(HEADERS) +installdirs: installdirs-recursive +installdirs-am: +install: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) install-recursive +install-exec: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + -rm -f unictype/$(DEPDIR)/$(am__dirstamp) + -rm -f unictype/$(am__dirstamp) + -rm -f uninorm/$(DEPDIR)/$(am__dirstamp) + -rm -f uninorm/$(am__dirstamp) + -rm -f unistr/$(DEPDIR)/$(am__dirstamp) + -rm -f unistr/$(am__dirstamp) + -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." + -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) + -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) +clean: clean-recursive + +clean-am: clean-generic clean-libtool clean-noinstLIBRARIES \ + clean-noinstLTLIBRARIES mostlyclean-am + +distclean: distclean-recursive + -rm -f unictype/$(DEPDIR)/categ_C.Plo + -rm -f unictype/$(DEPDIR)/categ_Cc.Plo + -rm -f unictype/$(DEPDIR)/categ_Cf.Plo + -rm -f unictype/$(DEPDIR)/categ_Cn.Plo + -rm -f unictype/$(DEPDIR)/categ_Co.Plo + -rm -f unictype/$(DEPDIR)/categ_Cs.Plo + -rm -f unictype/$(DEPDIR)/categ_L.Plo + -rm -f unictype/$(DEPDIR)/categ_LC.Plo + -rm -f unictype/$(DEPDIR)/categ_Ll.Plo + -rm -f unictype/$(DEPDIR)/categ_Lm.Plo + -rm -f unictype/$(DEPDIR)/categ_Lo.Plo + -rm -f unictype/$(DEPDIR)/categ_Lt.Plo + -rm -f unictype/$(DEPDIR)/categ_Lu.Plo + -rm -f unictype/$(DEPDIR)/categ_M.Plo + -rm -f unictype/$(DEPDIR)/categ_Mc.Plo + -rm -f unictype/$(DEPDIR)/categ_Me.Plo + -rm -f unictype/$(DEPDIR)/categ_Mn.Plo + -rm -f unictype/$(DEPDIR)/categ_N.Plo + -rm -f unictype/$(DEPDIR)/categ_Nd.Plo + -rm -f unictype/$(DEPDIR)/categ_Nl.Plo + -rm -f unictype/$(DEPDIR)/categ_No.Plo + -rm -f unictype/$(DEPDIR)/categ_P.Plo + -rm -f unictype/$(DEPDIR)/categ_Pc.Plo + -rm -f unictype/$(DEPDIR)/categ_Pd.Plo + -rm -f unictype/$(DEPDIR)/categ_Pe.Plo + -rm -f unictype/$(DEPDIR)/categ_Pf.Plo + -rm -f unictype/$(DEPDIR)/categ_Pi.Plo + -rm -f unictype/$(DEPDIR)/categ_Po.Plo + -rm -f unictype/$(DEPDIR)/categ_Ps.Plo + -rm -f unictype/$(DEPDIR)/categ_S.Plo + -rm -f unictype/$(DEPDIR)/categ_Sc.Plo + -rm -f unictype/$(DEPDIR)/categ_Sk.Plo + -rm -f unictype/$(DEPDIR)/categ_Sm.Plo + -rm -f unictype/$(DEPDIR)/categ_So.Plo + -rm -f unictype/$(DEPDIR)/categ_Z.Plo + -rm -f unictype/$(DEPDIR)/categ_Zl.Plo + -rm -f unictype/$(DEPDIR)/categ_Zp.Plo + -rm -f unictype/$(DEPDIR)/categ_Zs.Plo + -rm -f unictype/$(DEPDIR)/categ_and.Plo + -rm -f unictype/$(DEPDIR)/categ_and_not.Plo + -rm -f unictype/$(DEPDIR)/categ_byname.Plo + -rm -f unictype/$(DEPDIR)/categ_longname.Plo + -rm -f unictype/$(DEPDIR)/categ_name.Plo + -rm -f unictype/$(DEPDIR)/categ_none.Plo + -rm -f unictype/$(DEPDIR)/categ_of.Plo + -rm -f unictype/$(DEPDIR)/categ_or.Plo + -rm -f unictype/$(DEPDIR)/categ_test.Plo + -rm -f unictype/$(DEPDIR)/combiningclass.Plo + -rm -f unictype/$(DEPDIR)/pr_default_ignorable_code_point.Plo + -rm -f unictype/$(DEPDIR)/pr_join_control.Plo + -rm -f unictype/$(DEPDIR)/pr_not_a_character.Plo + -rm -f uninorm/$(DEPDIR)/canonical-decomposition.Plo + -rm -f uninorm/$(DEPDIR)/compat-decomposition.Plo + -rm -f uninorm/$(DEPDIR)/composition.Plo + -rm -f uninorm/$(DEPDIR)/decompose-internal.Plo + -rm -f uninorm/$(DEPDIR)/decomposition-table.Plo + -rm -f uninorm/$(DEPDIR)/decomposition.Plo + -rm -f uninorm/$(DEPDIR)/nfc.Plo + -rm -f uninorm/$(DEPDIR)/nfd.Plo + -rm -f uninorm/$(DEPDIR)/nfkc.Plo + -rm -f uninorm/$(DEPDIR)/nfkd.Plo + -rm -f uninorm/$(DEPDIR)/u16-normalize.Plo + -rm -f uninorm/$(DEPDIR)/u32-normalize.Plo + -rm -f uninorm/$(DEPDIR)/u8-normalize.Plo + -rm -f unistr/$(DEPDIR)/u16-cpy.Plo + -rm -f unistr/$(DEPDIR)/u16-mbtouc-unsafe-aux.Plo + -rm -f unistr/$(DEPDIR)/u16-mbtouc-unsafe.Plo + -rm -f unistr/$(DEPDIR)/u16-mbtoucr.Plo + -rm -f unistr/$(DEPDIR)/u16-to-u8.Plo + -rm -f unistr/$(DEPDIR)/u16-uctomb-aux.Plo + -rm -f unistr/$(DEPDIR)/u16-uctomb.Plo + -rm -f unistr/$(DEPDIR)/u32-cpy.Plo + -rm -f unistr/$(DEPDIR)/u32-mbtouc-unsafe.Plo + -rm -f unistr/$(DEPDIR)/u32-to-u8.Plo + -rm -f unistr/$(DEPDIR)/u32-uctomb.Plo + -rm -f unistr/$(DEPDIR)/u8-check.Plo + -rm -f unistr/$(DEPDIR)/u8-cpy.Plo + -rm -f unistr/$(DEPDIR)/u8-mbtouc-unsafe-aux.Plo + -rm -f unistr/$(DEPDIR)/u8-mbtouc-unsafe.Plo + -rm -f unistr/$(DEPDIR)/u8-mbtoucr.Plo + -rm -f unistr/$(DEPDIR)/u8-to-u16.Plo + -rm -f unistr/$(DEPDIR)/u8-to-u32.Plo + -rm -f unistr/$(DEPDIR)/u8-uctomb-aux.Plo + -rm -f unistr/$(DEPDIR)/u8-uctomb.Plo + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f unictype/$(DEPDIR)/categ_C.Plo + -rm -f unictype/$(DEPDIR)/categ_Cc.Plo + -rm -f unictype/$(DEPDIR)/categ_Cf.Plo + -rm -f unictype/$(DEPDIR)/categ_Cn.Plo + -rm -f unictype/$(DEPDIR)/categ_Co.Plo + -rm -f unictype/$(DEPDIR)/categ_Cs.Plo + -rm -f unictype/$(DEPDIR)/categ_L.Plo + -rm -f unictype/$(DEPDIR)/categ_LC.Plo + -rm -f unictype/$(DEPDIR)/categ_Ll.Plo + -rm -f unictype/$(DEPDIR)/categ_Lm.Plo + -rm -f unictype/$(DEPDIR)/categ_Lo.Plo + -rm -f unictype/$(DEPDIR)/categ_Lt.Plo + -rm -f unictype/$(DEPDIR)/categ_Lu.Plo + -rm -f unictype/$(DEPDIR)/categ_M.Plo + -rm -f unictype/$(DEPDIR)/categ_Mc.Plo + -rm -f unictype/$(DEPDIR)/categ_Me.Plo + -rm -f unictype/$(DEPDIR)/categ_Mn.Plo + -rm -f unictype/$(DEPDIR)/categ_N.Plo + -rm -f unictype/$(DEPDIR)/categ_Nd.Plo + -rm -f unictype/$(DEPDIR)/categ_Nl.Plo + -rm -f unictype/$(DEPDIR)/categ_No.Plo + -rm -f unictype/$(DEPDIR)/categ_P.Plo + -rm -f unictype/$(DEPDIR)/categ_Pc.Plo + -rm -f unictype/$(DEPDIR)/categ_Pd.Plo + -rm -f unictype/$(DEPDIR)/categ_Pe.Plo + -rm -f unictype/$(DEPDIR)/categ_Pf.Plo + -rm -f unictype/$(DEPDIR)/categ_Pi.Plo + -rm -f unictype/$(DEPDIR)/categ_Po.Plo + -rm -f unictype/$(DEPDIR)/categ_Ps.Plo + -rm -f unictype/$(DEPDIR)/categ_S.Plo + -rm -f unictype/$(DEPDIR)/categ_Sc.Plo + -rm -f unictype/$(DEPDIR)/categ_Sk.Plo + -rm -f unictype/$(DEPDIR)/categ_Sm.Plo + -rm -f unictype/$(DEPDIR)/categ_So.Plo + -rm -f unictype/$(DEPDIR)/categ_Z.Plo + -rm -f unictype/$(DEPDIR)/categ_Zl.Plo + -rm -f unictype/$(DEPDIR)/categ_Zp.Plo + -rm -f unictype/$(DEPDIR)/categ_Zs.Plo + -rm -f unictype/$(DEPDIR)/categ_and.Plo + -rm -f unictype/$(DEPDIR)/categ_and_not.Plo + -rm -f unictype/$(DEPDIR)/categ_byname.Plo + -rm -f unictype/$(DEPDIR)/categ_longname.Plo + -rm -f unictype/$(DEPDIR)/categ_name.Plo + -rm -f unictype/$(DEPDIR)/categ_none.Plo + -rm -f unictype/$(DEPDIR)/categ_of.Plo + -rm -f unictype/$(DEPDIR)/categ_or.Plo + -rm -f unictype/$(DEPDIR)/categ_test.Plo + -rm -f unictype/$(DEPDIR)/combiningclass.Plo + -rm -f unictype/$(DEPDIR)/pr_default_ignorable_code_point.Plo + -rm -f unictype/$(DEPDIR)/pr_join_control.Plo + -rm -f unictype/$(DEPDIR)/pr_not_a_character.Plo + -rm -f uninorm/$(DEPDIR)/canonical-decomposition.Plo + -rm -f uninorm/$(DEPDIR)/compat-decomposition.Plo + -rm -f uninorm/$(DEPDIR)/composition.Plo + -rm -f uninorm/$(DEPDIR)/decompose-internal.Plo + -rm -f uninorm/$(DEPDIR)/decomposition-table.Plo + -rm -f uninorm/$(DEPDIR)/decomposition.Plo + -rm -f uninorm/$(DEPDIR)/nfc.Plo + -rm -f uninorm/$(DEPDIR)/nfd.Plo + -rm -f uninorm/$(DEPDIR)/nfkc.Plo + -rm -f uninorm/$(DEPDIR)/nfkd.Plo + -rm -f uninorm/$(DEPDIR)/u16-normalize.Plo + -rm -f uninorm/$(DEPDIR)/u32-normalize.Plo + -rm -f uninorm/$(DEPDIR)/u8-normalize.Plo + -rm -f unistr/$(DEPDIR)/u16-cpy.Plo + -rm -f unistr/$(DEPDIR)/u16-mbtouc-unsafe-aux.Plo + -rm -f unistr/$(DEPDIR)/u16-mbtouc-unsafe.Plo + -rm -f unistr/$(DEPDIR)/u16-mbtoucr.Plo + -rm -f unistr/$(DEPDIR)/u16-to-u8.Plo + -rm -f unistr/$(DEPDIR)/u16-uctomb-aux.Plo + -rm -f unistr/$(DEPDIR)/u16-uctomb.Plo + -rm -f unistr/$(DEPDIR)/u32-cpy.Plo + -rm -f unistr/$(DEPDIR)/u32-mbtouc-unsafe.Plo + -rm -f unistr/$(DEPDIR)/u32-to-u8.Plo + -rm -f unistr/$(DEPDIR)/u32-uctomb.Plo + -rm -f unistr/$(DEPDIR)/u8-check.Plo + -rm -f unistr/$(DEPDIR)/u8-cpy.Plo + -rm -f unistr/$(DEPDIR)/u8-mbtouc-unsafe-aux.Plo + -rm -f unistr/$(DEPDIR)/u8-mbtouc-unsafe.Plo + -rm -f unistr/$(DEPDIR)/u8-mbtoucr.Plo + -rm -f unistr/$(DEPDIR)/u8-to-u16.Plo + -rm -f unistr/$(DEPDIR)/u8-to-u32.Plo + -rm -f unistr/$(DEPDIR)/u8-uctomb-aux.Plo + -rm -f unistr/$(DEPDIR)/u8-uctomb.Plo + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool mostlyclean-local + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(am__recursive_targets) all check install install-am \ + install-exec install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ + clean-noinstLIBRARIES clean-noinstLTLIBRARIES cscopelist-am \ + ctags ctags-am distclean distclean-compile distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-man install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs installdirs-am maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool mostlyclean-local pdf \ + pdf-am ps ps-am tags tags-am uninstall uninstall-am + +.PRECIOUS: Makefile + + +# We need the following in order to create <limits.h> when the system +# doesn't have one that is compatible with GNU. +@GL_GENERATE_LIMITS_H_TRUE@limits.h: limits.in.h $(top_builddir)/config.status +@GL_GENERATE_LIMITS_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ +@GL_GENERATE_LIMITS_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ +@GL_GENERATE_LIMITS_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL_UNISTRING|g' \ +@GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ +@GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ +@GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ +@GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''NEXT_LIMITS_H''@|$(NEXT_LIMITS_H)|g' \ +@GL_GENERATE_LIMITS_H_TRUE@ < $(srcdir)/limits.in.h; \ +@GL_GENERATE_LIMITS_H_TRUE@ } > $@-t && \ +@GL_GENERATE_LIMITS_H_TRUE@ mv $@-t $@ +@GL_GENERATE_LIMITS_H_FALSE@limits.h: $(top_builddir)/config.status +@GL_GENERATE_LIMITS_H_FALSE@ rm -f $@ + +# We need the following in order to create <stdbool.h> when the system +# doesn't have one that works. +@GL_GENERATE_STDBOOL_H_TRUE@stdbool.h: stdbool.in.h $(top_builddir)/config.status +@GL_GENERATE_STDBOOL_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ +@GL_GENERATE_STDBOOL_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ +@GL_GENERATE_STDBOOL_H_TRUE@ sed -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' < $(srcdir)/stdbool.in.h; \ +@GL_GENERATE_STDBOOL_H_TRUE@ } > $@-t && \ +@GL_GENERATE_STDBOOL_H_TRUE@ mv $@-t $@ +@GL_GENERATE_STDBOOL_H_FALSE@stdbool.h: $(top_builddir)/config.status +@GL_GENERATE_STDBOOL_H_FALSE@ rm -f $@ + +# We need the following in order to create <stdint.h> when the system +# doesn't have one that works with the given compiler. +@GL_GENERATE_STDINT_H_TRUE@stdint.h: stdint.in.h $(top_builddir)/config.status +@GL_GENERATE_STDINT_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ +@GL_GENERATE_STDINT_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ +@GL_GENERATE_STDINT_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL_UNISTRING|g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's|@''NEXT_STDINT_H''@|$(NEXT_STDINT_H)|g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_C99_STDINT_H''@/$(HAVE_C99_STDINT_H)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SYS_TYPES_H''@/$(HAVE_SYS_TYPES_H)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SYS_INTTYPES_H''@/$(HAVE_SYS_INTTYPES_H)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SYS_BITYPES_H''@/$(HAVE_SYS_BITYPES_H)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_WCHAR_H''@/$(HAVE_WCHAR_H)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''BITSIZEOF_PTRDIFF_T''@/$(BITSIZEOF_PTRDIFF_T)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''PTRDIFF_T_SUFFIX''@/$(PTRDIFF_T_SUFFIX)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''BITSIZEOF_SIG_ATOMIC_T''@/$(BITSIZEOF_SIG_ATOMIC_T)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SIGNED_SIG_ATOMIC_T''@/$(HAVE_SIGNED_SIG_ATOMIC_T)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''SIG_ATOMIC_T_SUFFIX''@/$(SIG_ATOMIC_T_SUFFIX)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''BITSIZEOF_SIZE_T''@/$(BITSIZEOF_SIZE_T)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''SIZE_T_SUFFIX''@/$(SIZE_T_SUFFIX)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''BITSIZEOF_WCHAR_T''@/$(BITSIZEOF_WCHAR_T)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SIGNED_WCHAR_T''@/$(HAVE_SIGNED_WCHAR_T)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''WCHAR_T_SUFFIX''@/$(WCHAR_T_SUFFIX)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''BITSIZEOF_WINT_T''@/$(BITSIZEOF_WINT_T)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SIGNED_WINT_T''@/$(HAVE_SIGNED_WINT_T)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''WINT_T_SUFFIX''@/$(WINT_T_SUFFIX)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''GNULIBHEADERS_OVERRIDE_WINT_T''@/$(GNULIBHEADERS_OVERRIDE_WINT_T)/g' \ +@GL_GENERATE_STDINT_H_TRUE@ < $(srcdir)/stdint.in.h; \ +@GL_GENERATE_STDINT_H_TRUE@ } > $@-t && \ +@GL_GENERATE_STDINT_H_TRUE@ mv $@-t $@ +@GL_GENERATE_STDINT_H_FALSE@stdint.h: $(top_builddir)/config.status +@GL_GENERATE_STDINT_H_FALSE@ rm -f $@ + +# We need the following in order to create <sys/types.h> when the system +# doesn't have one that works with the given compiler. +sys/types.h: sys_types.in.h $(top_builddir)/config.status + $(AM_V_at)$(MKDIR_P) sys + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + sed -e 's|@''GUARD_PREFIX''@|GL_UNISTRING|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ + -e 's|@''NEXT_SYS_TYPES_H''@|$(NEXT_SYS_TYPES_H)|g' \ + -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \ + -e 's|@''WINDOWS_STAT_INODES''@|$(WINDOWS_STAT_INODES)|g' \ + < $(srcdir)/sys_types.in.h; \ + } > $@-t && \ + mv $@-t $@ + +unictype.h: unictype.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/unictype.in.h; \ + } > $@-t && \ + mv -f $@-t $@ + +$(srcdir)/unictype/categ_byname.h: $(srcdir)/unictype/categ_byname.gperf + $(V_GPERF)$(GPERF) -m 10 $(srcdir)/unictype/categ_byname.gperf > $(srcdir)/unictype/categ_byname.h-t1 \ + && sed -e 's/^const/static const/' < $(srcdir)/unictype/categ_byname.h-t1 > $(srcdir)/unictype/categ_byname.h-t2 \ + && mv $(srcdir)/unictype/categ_byname.h-t2 $(srcdir)/unictype/categ_byname.h + +uninorm.h: uninorm.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/uninorm.in.h; \ + } > $@-t && \ + mv -f $@-t $@ + +$(srcdir)/uninorm/composition-table.h: $(srcdir)/uninorm/composition-table.gperf + $(V_GPERF)$(GPERF) -m 1 $(srcdir)/uninorm/composition-table.gperf > $(srcdir)/uninorm/composition-table.h-t1 \ + && sed -e 's/^const/static const/' < $(srcdir)/uninorm/composition-table.h-t1 > $(srcdir)/uninorm/composition-table.h-t2 \ + && mv $(srcdir)/uninorm/composition-table.h-t2 $(srcdir)/uninorm/composition-table.h + +unistr.h: unistr.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/unistr.in.h; \ + } > $@-t && \ + mv -f $@-t $@ + +unitypes.h: unitypes.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/unitypes.in.h; \ + } > $@-t && \ + mv -f $@-t $@ + +mostlyclean-local: mostlyclean-generic + @for dir in '' $(MOSTLYCLEANDIRS); do \ + if test -n "$$dir" && test -d $$dir; then \ + echo "rmdir $$dir"; rmdir $$dir; \ + fi; \ + done; \ + : + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/lib/unistring/array-mergesort.h b/lib/unistring/array-mergesort.h new file mode 100644 index 0000000..7f997fc --- /dev/null +++ b/lib/unistring/array-mergesort.h @@ -0,0 +1,290 @@ +/* Stable-sorting of an array using mergesort. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +/* This file implements stable sorting of an array, using the mergesort + algorithm. + Worst-case running time for an array of length N is O(N log N). + Unlike the mpsort module, the algorithm here attempts to minimize not + only the number of comparisons, but also the number of copying operations. + + Before including this file, you need to define + ELEMENT The type of every array element. + COMPARE A two-argument macro that takes two 'const ELEMENT *' + pointers and returns a negative, zero, or positive 'int' + value if the element pointed to by the first argument is, + respectively, less, equal, or greater than the element + pointed to by the second argument. + STATIC The storage class of the functions being defined. + STATIC_FROMTO (Optional.) Overrides STATIC for the 'merge_sort_fromto' + function. + Before including this file, you also need to include: + #include <stddef.h> + */ + +/* Merge the sorted arrays src1[0..n1-1] and src2[0..n2-1] into + dst[0..n1+n2-1]. In case of ambiguity, put the elements of src1 + before the elements of src2. + n1 and n2 must be > 0. + The arrays src1 and src2 must not overlap the dst array, except that + src1 may be dst[n2..n1+n2-1], or src2 may be dst[n1..n1+n2-1]. */ +static void +merge (const ELEMENT *src1, size_t n1, + const ELEMENT *src2, size_t n2, + ELEMENT *dst) +{ + for (;;) /* while (n1 > 0 && n2 > 0) */ + { + if (COMPARE (src1, src2) <= 0) + { + *dst++ = *src1++; + n1--; + if (n1 == 0) + break; + } + else + { + *dst++ = *src2++; + n2--; + if (n2 == 0) + break; + } + } + /* Here n1 == 0 || n2 == 0 but also n1 > 0 || n2 > 0. */ + if (n1 > 0) + { + if (dst != src1) + do + { + *dst++ = *src1++; + n1--; + } + while (n1 > 0); + } + else /* n2 > 0 */ + { + if (dst != src2) + do + { + *dst++ = *src2++; + n2--; + } + while (n2 > 0); + } +} + +/* Sort src[0..n-1] into dst[0..n-1], using tmp[0..n/2-1] as temporary + (scratch) storage. + The arrays src, dst, tmp must not overlap. */ +#ifdef STATIC_FROMTO +STATIC_FROMTO +#else +STATIC +#endif +void +merge_sort_fromto (const ELEMENT *src, ELEMENT *dst, size_t n, ELEMENT *tmp) +{ + switch (n) + { + case 0: + return; + case 1: + /* Nothing to do. */ + dst[0] = src[0]; + return; + case 2: + /* Trivial case. */ + if (COMPARE (&src[0], &src[1]) <= 0) + { + /* src[0] <= src[1] */ + dst[0] = src[0]; + dst[1] = src[1]; + } + else + { + dst[0] = src[1]; + dst[1] = src[0]; + } + break; + case 3: + /* Simple case. */ + if (COMPARE (&src[0], &src[1]) <= 0) + { + if (COMPARE (&src[1], &src[2]) <= 0) + { + /* src[0] <= src[1] <= src[2] */ + dst[0] = src[0]; + dst[1] = src[1]; + dst[2] = src[2]; + } + else if (COMPARE (&src[0], &src[2]) <= 0) + { + /* src[0] <= src[2] < src[1] */ + dst[0] = src[0]; + dst[1] = src[2]; + dst[2] = src[1]; + } + else + { + /* src[2] < src[0] <= src[1] */ + dst[0] = src[2]; + dst[1] = src[0]; + dst[2] = src[1]; + } + } + else + { + if (COMPARE (&src[0], &src[2]) <= 0) + { + /* src[1] < src[0] <= src[2] */ + dst[0] = src[1]; + dst[1] = src[0]; + dst[2] = src[2]; + } + else if (COMPARE (&src[1], &src[2]) <= 0) + { + /* src[1] <= src[2] < src[0] */ + dst[0] = src[1]; + dst[1] = src[2]; + dst[2] = src[0]; + } + else + { + /* src[2] < src[1] < src[0] */ + dst[0] = src[2]; + dst[1] = src[1]; + dst[2] = src[0]; + } + } + break; + default: + { + size_t n1 = n / 2; + size_t n2 = (n + 1) / 2; + /* Note: n1 + n2 = n, n1 <= n2. */ + /* Sort src[n1..n-1] into dst[n1..n-1], scratching tmp[0..n2/2-1]. */ + merge_sort_fromto (src + n1, dst + n1, n2, tmp); + /* Sort src[0..n1-1] into tmp[0..n1-1], scratching dst[0..n1-1]. */ + merge_sort_fromto (src, tmp, n1, dst); + /* Merge the two half results. */ + merge (tmp, n1, dst + n1, n2, dst); + } + break; + } +} + +/* Sort src[0..n-1], using tmp[0..n-1] as temporary (scratch) storage. + The arrays src, tmp must not overlap. */ +STATIC void +merge_sort_inplace (ELEMENT *src, size_t n, ELEMENT *tmp) +{ + switch (n) + { + case 0: + case 1: + /* Nothing to do. */ + return; + case 2: + /* Trivial case. */ + if (COMPARE (&src[0], &src[1]) <= 0) + { + /* src[0] <= src[1] */ + } + else + { + ELEMENT t = src[0]; + src[0] = src[1]; + src[1] = t; + } + break; + case 3: + /* Simple case. */ + if (COMPARE (&src[0], &src[1]) <= 0) + { + if (COMPARE (&src[1], &src[2]) <= 0) + { + /* src[0] <= src[1] <= src[2] */ + } + else if (COMPARE (&src[0], &src[2]) <= 0) + { + /* src[0] <= src[2] < src[1] */ + ELEMENT t = src[1]; + src[1] = src[2]; + src[2] = t; + } + else + { + /* src[2] < src[0] <= src[1] */ + ELEMENT t = src[0]; + src[0] = src[2]; + src[2] = src[1]; + src[1] = t; + } + } + else + { + if (COMPARE (&src[0], &src[2]) <= 0) + { + /* src[1] < src[0] <= src[2] */ + ELEMENT t = src[0]; + src[0] = src[1]; + src[1] = t; + } + else if (COMPARE (&src[1], &src[2]) <= 0) + { + /* src[1] <= src[2] < src[0] */ + ELEMENT t = src[0]; + src[0] = src[1]; + src[1] = src[2]; + src[2] = t; + } + else + { + /* src[2] < src[1] < src[0] */ + ELEMENT t = src[0]; + src[0] = src[2]; + src[2] = t; + } + } + break; + default: + { + size_t n1 = n / 2; + size_t n2 = (n + 1) / 2; + /* Note: n1 + n2 = n, n1 <= n2. */ + /* Sort src[n1..n-1], scratching tmp[0..n2-1]. */ + merge_sort_inplace (src + n1, n2, tmp); + /* Sort src[0..n1-1] into tmp[0..n1-1], scratching tmp[n1..2*n1-1]. */ + merge_sort_fromto (src, tmp, n1, tmp + n1); + /* Merge the two half results. */ + merge (tmp, n1, src + n1, n2, src); + } + break; + } +} + +#undef ELEMENT +#undef COMPARE +#undef STATIC diff --git a/lib/unistring/attribute.h b/lib/unistring/attribute.h new file mode 100644 index 0000000..b7e573c --- /dev/null +++ b/lib/unistring/attribute.h @@ -0,0 +1,227 @@ +/* ATTRIBUTE_* macros for using attributes in GCC and similar compilers + + Copyright 2020-2021 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +/* Written by Paul Eggert. */ + +/* Provide public ATTRIBUTE_* names for the private _GL_ATTRIBUTE_* + macros used within Gnulib. */ + +/* These attributes can be placed in two ways: + - At the start of a declaration (i.e. even before storage-class + specifiers!); then they apply to all entities that are declared + by the declaration. + - Immediately after the name of an entity being declared by the + declaration; then they apply to that entity only. */ + +#ifndef _GL_ATTRIBUTE_H +#define _GL_ATTRIBUTE_H + + +/* This file defines two types of attributes: + * C2X standard attributes. These have macro names that do not begin with + 'ATTRIBUTE_'. + * Selected GCC attributes; see: + https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html + https://gcc.gnu.org/onlinedocs/gcc/Common-Variable-Attributes.html + https://gcc.gnu.org/onlinedocs/gcc/Common-Type-Attributes.html + These names begin with 'ATTRIBUTE_' to avoid name clashes. */ + + +/* =============== Attributes for specific kinds of functions =============== */ + +/* Attributes for functions that should not be used. */ + +/* Warn if the entity is used. */ +/* Applies to: + - function, variable, + - struct, union, struct/union member, + - enumeration, enumeration item, + - typedef, + in C++ also: namespace, class, template specialization. */ +#define DEPRECATED _GL_ATTRIBUTE_DEPRECATED + +/* If a function call is not optimized way, warn with MSG. */ +/* Applies to: functions. */ +#define ATTRIBUTE_WARNING(msg) _GL_ATTRIBUTE_WARNING (msg) + +/* If a function call is not optimized way, report an error with MSG. */ +/* Applies to: functions. */ +#define ATTRIBUTE_ERROR(msg) _GL_ATTRIBUTE_ERROR (msg) + + +/* Attributes for memory-allocating functions. */ + +/* The function returns a pointer to freshly allocated memory. */ +/* Applies to: functions. */ +#define ATTRIBUTE_MALLOC _GL_ATTRIBUTE_MALLOC + +/* ATTRIBUTE_ALLOC_SIZE ((N)) - The Nth argument of the function + is the size of the returned memory block. + ATTRIBUTE_ALLOC_SIZE ((M, N)) - Multiply the Mth and Nth arguments + to determine the size of the returned memory block. */ +/* Applies to: function, pointer to function, function types. */ +#define ATTRIBUTE_ALLOC_SIZE(args) _GL_ATTRIBUTE_ALLOC_SIZE (args) + + +/* Attributes for variadic functions. */ + +/* The variadic function expects a trailing NULL argument. + ATTRIBUTE_SENTINEL () - The last argument is NULL (requires C99). + ATTRIBUTE_SENTINEL ((N)) - The (N+1)st argument from the end is NULL. */ +/* Applies to: functions. */ +#define ATTRIBUTE_SENTINEL(pos) _GL_ATTRIBUTE_SENTINEL (pos) + + +/* ================== Attributes for compiler diagnostics ================== */ + +/* Attributes that help the compiler diagnose programmer mistakes. + Some of them may also help for some compiler optimizations. */ + +/* ATTRIBUTE_FORMAT ((ARCHETYPE, STRING-INDEX, FIRST-TO-CHECK)) - + The STRING-INDEXth function argument is a format string of style + ARCHETYPE, which is one of: + printf, gnu_printf + scanf, gnu_scanf, + strftime, gnu_strftime, + strfmon, + or the same thing prefixed and suffixed with '__'. + If FIRST-TO-CHECK is not 0, arguments starting at FIRST-TO_CHECK + are suitable for the format string. */ +/* Applies to: functions. */ +#define ATTRIBUTE_FORMAT(spec) _GL_ATTRIBUTE_FORMAT (spec) + +/* ATTRIBUTE_NONNULL ((N1, N2,...)) - Arguments N1, N2,... must not be NULL. + ATTRIBUTE_NONNULL () - All pointer arguments must not be null. */ +/* Applies to: functions. */ +#define ATTRIBUTE_NONNULL(args) _GL_ATTRIBUTE_NONNULL (args) + +/* The function's return value is a non-NULL pointer. */ +/* Applies to: functions. */ +#define ATTRIBUTE_RETURNS_NONNULL _GL_ATTRIBUTE_RETURNS_NONNULL + +/* Warn if the caller does not use the return value, + unless the caller uses something like ignore_value. */ +/* Applies to: function, enumeration, class. */ +#define NODISCARD _GL_ATTRIBUTE_NODISCARD + + +/* Attributes that disable false alarms when the compiler diagnoses + programmer "mistakes". */ + +/* Do not warn if the entity is not used. */ +/* Applies to: + - function, variable, + - struct, union, struct/union member, + - enumeration, enumeration item, + - typedef, + in C++ also: class. */ +#define MAYBE_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED + +/* The contents of a character array is not meant to be NUL-terminated. */ +/* Applies to: struct/union members and variables that are arrays of element + type '[[un]signed] char'. */ +#define ATTRIBUTE_NONSTRING _GL_ATTRIBUTE_NONSTRING + +/* Do not warn if control flow falls through to the immediately + following 'case' or 'default' label. */ +/* Applies to: Empty statement (;), inside a 'switch' statement. */ +#define FALLTHROUGH _GL_ATTRIBUTE_FALLTHROUGH + + +/* ================== Attributes for debugging information ================== */ + +/* Attributes regarding debugging information emitted by the compiler. */ + +/* Omit the function from stack traces when debugging. */ +/* Applies to: function. */ +#define ATTRIBUTE_ARTIFICIAL _GL_ATTRIBUTE_ARTIFICIAL + +/* Make the entity visible to debuggers etc., even with '-fwhole-program'. */ +/* Applies to: functions, variables. */ +#define ATTRIBUTE_EXTERNALLY_VISIBLE _GL_ATTRIBUTE_EXTERNALLY_VISIBLE + + +/* ========== Attributes that mainly direct compiler optimizations ========== */ + +/* The function does not throw exceptions. */ +/* Applies to: functions. */ +#define ATTRIBUTE_NOTHROW _GL_ATTRIBUTE_NOTHROW + +/* Do not inline the function. */ +/* Applies to: functions. */ +#define ATTRIBUTE_NOINLINE _GL_ATTRIBUTE_NOINLINE + +/* Always inline the function, and report an error if the compiler + cannot inline. */ +/* Applies to: function. */ +#define ATTRIBUTE_ALWAYS_INLINE _GL_ATTRIBUTE_ALWAYS_INLINE + +/* It is OK for a compiler to omit duplicate calls with the same arguments. + This attribute is safe for a function that neither depends on + nor affects observable state, and always returns exactly once - + e.g., does not loop forever, and does not call longjmp. + (This attribute is stricter than ATTRIBUTE_PURE.) */ +/* Applies to: functions. */ +#define ATTRIBUTE_CONST _GL_ATTRIBUTE_CONST + +/* It is OK for a compiler to omit duplicate calls with the same + arguments if observable state is not changed between calls. + This attribute is safe for a function that does not affect + observable state, and always returns exactly once. + (This attribute is looser than ATTRIBUTE_CONST.) */ +/* Applies to: functions. */ +#define ATTRIBUTE_PURE _GL_ATTRIBUTE_PURE + +/* The function is rarely executed. */ +/* Applies to: functions. */ +#define ATTRIBUTE_COLD _GL_ATTRIBUTE_COLD + +/* If called from some other compilation unit, the function executes + code from that unit only by return or by exception handling, + letting the compiler optimize that unit more aggressively. */ +/* Applies to: functions. */ +#define ATTRIBUTE_LEAF _GL_ATTRIBUTE_LEAF + +/* For struct members: The member has the smallest possible alignment. + For struct, union, class: All members have the smallest possible alignment, + minimizing the memory required. */ +/* Applies to: struct members, struct, union, + in C++ also: class. */ +#define ATTRIBUTE_PACKED _GL_ATTRIBUTE_PACKED + + +/* ================ Attributes that make invalid code valid ================ */ + +/* Attributes that prevent fatal compiler optimizations for code that is not + fully ISO C compliant. */ + +/* Pointers to the type may point to the same storage as pointers to + other types, thus disabling strict aliasing optimization. */ +/* Applies to: types. */ +#define ATTRIBUTE_MAY_ALIAS _GL_ATTRIBUTE_MAY_ALIAS + + +#endif /* _GL_ATTRIBUTE_H */ diff --git a/lib/unistring/limits.in.h b/lib/unistring/limits.in.h new file mode 100644 index 0000000..4776e91 --- /dev/null +++ b/lib/unistring/limits.in.h @@ -0,0 +1,130 @@ +/* A GNU-like <limits.h>. + + Copyright 2016-2021 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#if __GNUC__ >= 3 +@PRAGMA_SYSTEM_HEADER@ +#endif +@PRAGMA_COLUMNS@ + +#if defined _GL_ALREADY_INCLUDING_LIMITS_H +/* Special invocation convention: + On Haiku/x86_64, we have a sequence of nested includes + <limits.h> -> <syslimits.h> -> <limits.h>. + In this situation, LONG_MAX and INT_MAX are not yet defined, + therefore we should not attempt to define LONG_BIT. */ + +#@INCLUDE_NEXT@ @NEXT_LIMITS_H@ + +#else +/* Normal invocation convention. */ + +#ifndef _@GUARD_PREFIX@_LIMITS_H + +# define _GL_ALREADY_INCLUDING_LIMITS_H + +/* The include_next requires a split double-inclusion guard. */ +# @INCLUDE_NEXT@ @NEXT_LIMITS_H@ + +# undef _GL_ALREADY_INCLUDING_LIMITS_H + +#ifndef _@GUARD_PREFIX@_LIMITS_H +#define _@GUARD_PREFIX@_LIMITS_H + +#ifndef LLONG_MIN +# if defined LONG_LONG_MIN /* HP-UX 11.31 */ +# define LLONG_MIN LONG_LONG_MIN +# elif defined LONGLONG_MIN /* IRIX 6.5 */ +# define LLONG_MIN LONGLONG_MIN +# elif defined __GNUC__ +# define LLONG_MIN (- __LONG_LONG_MAX__ - 1LL) +# endif +#endif +#ifndef LLONG_MAX +# if defined LONG_LONG_MAX /* HP-UX 11.31 */ +# define LLONG_MAX LONG_LONG_MAX +# elif defined LONGLONG_MAX /* IRIX 6.5 */ +# define LLONG_MAX LONGLONG_MAX +# elif defined __GNUC__ +# define LLONG_MAX __LONG_LONG_MAX__ +# endif +#endif +#ifndef ULLONG_MAX +# if defined ULONG_LONG_MAX /* HP-UX 11.31 */ +# define ULLONG_MAX ULONG_LONG_MAX +# elif defined ULONGLONG_MAX /* IRIX 6.5 */ +# define ULLONG_MAX ULONGLONG_MAX +# elif defined __GNUC__ +# define ULLONG_MAX (__LONG_LONG_MAX__ * 2ULL + 1ULL) +# endif +#endif + +/* The number of usable bits in an unsigned or signed integer type + with minimum value MIN and maximum value MAX, as an int expression + suitable in #if. Cover all known practical hosts. This + implementation exploits the fact that MAX is 1 less than a power of + 2, and merely counts the number of 1 bits in MAX; "COBn" means + "count the number of 1 bits in the low-order n bits"). */ +#define _GL_INTEGER_WIDTH(min, max) (((min) < 0) + _GL_COB128 (max)) +#define _GL_COB128(n) (_GL_COB64 ((n) >> 31 >> 31 >> 2) + _GL_COB64 (n)) +#define _GL_COB64(n) (_GL_COB32 ((n) >> 31 >> 1) + _GL_COB32 (n)) +#define _GL_COB32(n) (_GL_COB16 ((n) >> 16) + _GL_COB16 (n)) +#define _GL_COB16(n) (_GL_COB8 ((n) >> 8) + _GL_COB8 (n)) +#define _GL_COB8(n) (_GL_COB4 ((n) >> 4) + _GL_COB4 (n)) +#define _GL_COB4(n) (!!((n) & 8) + !!((n) & 4) + !!((n) & 2) + !!((n) & 1)) + +#ifndef WORD_BIT +/* Assume 'int' is 32 bits wide. */ +# define WORD_BIT 32 +#endif +#ifndef LONG_BIT +/* Assume 'long' is 32 or 64 bits wide. */ +# if LONG_MAX == INT_MAX +# define LONG_BIT 32 +# else +# define LONG_BIT 64 +# endif +#endif + +/* Macros specified by ISO/IEC TS 18661-1:2014. */ + +#if (! defined ULLONG_WIDTH \ + && (defined _GNU_SOURCE || defined __STDC_WANT_IEC_60559_BFP_EXT__)) +# define CHAR_WIDTH _GL_INTEGER_WIDTH (CHAR_MIN, CHAR_MAX) +# define SCHAR_WIDTH _GL_INTEGER_WIDTH (SCHAR_MIN, SCHAR_MAX) +# define UCHAR_WIDTH _GL_INTEGER_WIDTH (0, UCHAR_MAX) +# define SHRT_WIDTH _GL_INTEGER_WIDTH (SHRT_MIN, SHRT_MAX) +# define USHRT_WIDTH _GL_INTEGER_WIDTH (0, USHRT_MAX) +# define INT_WIDTH _GL_INTEGER_WIDTH (INT_MIN, INT_MAX) +# define UINT_WIDTH _GL_INTEGER_WIDTH (0, UINT_MAX) +# define LONG_WIDTH _GL_INTEGER_WIDTH (LONG_MIN, LONG_MAX) +# define ULONG_WIDTH _GL_INTEGER_WIDTH (0, ULONG_MAX) +# define LLONG_WIDTH _GL_INTEGER_WIDTH (LLONG_MIN, LLONG_MAX) +# define ULLONG_WIDTH _GL_INTEGER_WIDTH (0, ULLONG_MAX) +#endif /* !ULLONG_WIDTH && (_GNU_SOURCE || __STDC_WANT_IEC_60559_BFP_EXT__) */ + +#endif /* _@GUARD_PREFIX@_LIMITS_H */ +#endif /* _@GUARD_PREFIX@_LIMITS_H */ +#endif diff --git a/lib/unistring/m4/gnulib-cache.m4 b/lib/unistring/m4/gnulib-cache.m4 new file mode 100644 index 0000000..d51f5b6 --- /dev/null +++ b/lib/unistring/m4/gnulib-cache.m4 @@ -0,0 +1,86 @@ +# Copyright (C) 2002-2021 Free Software Foundation, Inc. +# +# This file 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 3 of the License, or +# (at your option) any later version. +# +# This file 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 file. If not, see <https://www.gnu.org/licenses/>. +# +# As a special exception to the GNU General Public License, +# this file may be distributed as part of a program that +# contains a configuration script generated by Autoconf, under +# the same distribution terms as the rest of that program. +# +# Generated by gnulib-tool. +# +# This file represents the specification of how gnulib-tool is used. +# It acts as a cache: It is written and read by gnulib-tool. +# In projects that use version control, this file is meant to be put under +# version control, like the configure.ac and various Makefile.am files. + + +# Specification in the form of a command-line invocation: +# gnulib-tool --import --local-dir=lib/unistring/override \ +# --lib=libunistring \ +# --source-base=lib/unistring \ +# --m4-base=lib/unistring/m4 \ +# --doc-base=doc \ +# --tests-base=tests \ +# --aux-dir=build-aux \ +# --lgpl=3orGPLv2 \ +# --no-conditional-dependencies \ +# --libtool \ +# --macro-prefix=unistring \ +# unictype/category-all \ +# unictype/property-default-ignorable-code-point \ +# unictype/property-join-control \ +# unictype/property-not-a-character \ +# uninorm/nfc \ +# uninorm/nfkc \ +# uninorm/u16-normalize \ +# uninorm/u32-normalize \ +# uninorm/u8-normalize \ +# unistr/u16-to-u8 \ +# unistr/u32-to-u8 \ +# unistr/u8-check \ +# unistr/u8-to-u16 \ +# unistr/u8-to-u32 + +# Specification in the form of a few gnulib-tool.m4 macro invocations: +gl_LOCAL_DIR([lib/unistring/override]) +gl_MODULES([ + unictype/category-all + unictype/property-default-ignorable-code-point + unictype/property-join-control + unictype/property-not-a-character + uninorm/nfc + uninorm/nfkc + uninorm/u16-normalize + uninorm/u32-normalize + uninorm/u8-normalize + unistr/u16-to-u8 + unistr/u32-to-u8 + unistr/u8-check + unistr/u8-to-u16 + unistr/u8-to-u32 +]) +gl_AVOID([]) +gl_SOURCE_BASE([lib/unistring]) +gl_M4_BASE([lib/unistring/m4]) +gl_PO_BASE([]) +gl_DOC_BASE([doc]) +gl_TESTS_BASE([tests]) +gl_LIB([libunistring]) +gl_LGPL([3orGPLv2]) +gl_MAKEFILE_NAME([]) +gl_LIBTOOL +gl_MACRO_PREFIX([unistring]) +gl_PO_DOMAIN([]) +gl_WITNESS_C_MACRO([]) diff --git a/lib/unistring/m4/gnulib-comp.m4 b/lib/unistring/m4/gnulib-comp.m4 new file mode 100644 index 0000000..449807f --- /dev/null +++ b/lib/unistring/m4/gnulib-comp.m4 @@ -0,0 +1,575 @@ +# DO NOT EDIT! GENERATED AUTOMATICALLY! +# Copyright (C) 2002-2021 Free Software Foundation, Inc. +# +# This file 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 3 of the License, or +# (at your option) any later version. +# +# This file 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 file. If not, see <https://www.gnu.org/licenses/>. +# +# As a special exception to the GNU General Public License, +# this file may be distributed as part of a program that +# contains a configuration script generated by Autoconf, under +# the same distribution terms as the rest of that program. +# +# Generated by gnulib-tool. +# +# This file represents the compiled summary of the specification in +# gnulib-cache.m4. It lists the computed macro invocations that need +# to be invoked from configure.ac. +# In projects that use version control, this file can be treated like +# other built files. + + +# This macro should be invoked from ./configure.ac, in the section +# "Checks for programs", right after AC_PROG_CC, and certainly before +# any checks for libraries, header files, types and library functions. +AC_DEFUN([unistring_EARLY], +[ + m4_pattern_forbid([^gl_[A-Z]])dnl the gnulib macro namespace + m4_pattern_allow([^gl_ES$])dnl a valid locale name + m4_pattern_allow([^gl_LIBOBJS$])dnl a variable + m4_pattern_allow([^gl_LTLIBOBJS$])dnl a variable + + # Pre-early section. + AC_REQUIRE([gl_PROG_AR_RANLIB]) + + AC_REQUIRE([AM_PROG_CC_C_O]) + # Code from module absolute-header: + # Code from module array-mergesort: + # Code from module attribute: + # Code from module gperf: + # Code from module include_next: + # Code from module inline: + # Code from module limits-h: + # Code from module multiarch: + # Code from module snippet/unused-parameter: + # Code from module ssize_t: + # Code from module stdbool: + # Code from module stdint: + # Code from module sys_types: + # Code from module unictype/base: + # Code from module unictype/category-C: + # Code from module unictype/category-Cc: + # Code from module unictype/category-Cf: + # Code from module unictype/category-Cn: + # Code from module unictype/category-Co: + # Code from module unictype/category-Cs: + # Code from module unictype/category-L: + # Code from module unictype/category-LC: + # Code from module unictype/category-Ll: + # Code from module unictype/category-Lm: + # Code from module unictype/category-Lo: + # Code from module unictype/category-Lt: + # Code from module unictype/category-Lu: + # Code from module unictype/category-M: + # Code from module unictype/category-Mc: + # Code from module unictype/category-Me: + # Code from module unictype/category-Mn: + # Code from module unictype/category-N: + # Code from module unictype/category-Nd: + # Code from module unictype/category-Nl: + # Code from module unictype/category-No: + # Code from module unictype/category-P: + # Code from module unictype/category-Pc: + # Code from module unictype/category-Pd: + # Code from module unictype/category-Pe: + # Code from module unictype/category-Pf: + # Code from module unictype/category-Pi: + # Code from module unictype/category-Po: + # Code from module unictype/category-Ps: + # Code from module unictype/category-S: + # Code from module unictype/category-Sc: + # Code from module unictype/category-Sk: + # Code from module unictype/category-Sm: + # Code from module unictype/category-So: + # Code from module unictype/category-Z: + # Code from module unictype/category-Zl: + # Code from module unictype/category-Zp: + # Code from module unictype/category-Zs: + # Code from module unictype/category-all: + # Code from module unictype/category-and: + # Code from module unictype/category-and-not: + # Code from module unictype/category-byname: + # Code from module unictype/category-longname: + # Code from module unictype/category-name: + # Code from module unictype/category-none: + # Code from module unictype/category-of: + # Code from module unictype/category-or: + # Code from module unictype/category-test: + # Code from module unictype/category-test-withtable: + # Code from module unictype/combining-class: + # Code from module unictype/property-default-ignorable-code-point: + # Code from module unictype/property-join-control: + # Code from module unictype/property-not-a-character: + # Code from module uninorm/base: + # Code from module uninorm/canonical-decomposition: + # Code from module uninorm/compat-decomposition: + # Code from module uninorm/composition: + # Code from module uninorm/decompose-internal: + # Code from module uninorm/decomposition: + # Code from module uninorm/decomposition-table: + # Code from module uninorm/nfc: + # Code from module uninorm/nfd: + # Code from module uninorm/nfkc: + # Code from module uninorm/nfkd: + # Code from module uninorm/u16-normalize: + # Code from module uninorm/u32-normalize: + # Code from module uninorm/u8-normalize: + # Code from module unistr/base: + # Code from module unistr/u16-cpy: + # Code from module unistr/u16-mbtouc-unsafe: + # Code from module unistr/u16-mbtoucr: + # Code from module unistr/u16-to-u8: + # Code from module unistr/u16-uctomb: + # Code from module unistr/u32-cpy: + # Code from module unistr/u32-mbtouc-unsafe: + # Code from module unistr/u32-to-u8: + # Code from module unistr/u32-uctomb: + # Code from module unistr/u8-check: + # Code from module unistr/u8-cpy: + # Code from module unistr/u8-mbtouc-unsafe: + # Code from module unistr/u8-mbtoucr: + # Code from module unistr/u8-to-u16: + # Code from module unistr/u8-to-u32: + # Code from module unistr/u8-uctomb: + # Code from module unitypes: +]) + +# This macro should be invoked from ./configure.ac, in the section +# "Check for header files, types and library functions". +AC_DEFUN([unistring_INIT], +[ + AM_CONDITIONAL([GL_COND_LIBTOOL], [true]) + gl_cond_libtool=true + gl_m4_base='lib/unistring/m4' + m4_pushdef([AC_LIBOBJ], m4_defn([unistring_LIBOBJ])) + m4_pushdef([AC_REPLACE_FUNCS], m4_defn([unistring_REPLACE_FUNCS])) + m4_pushdef([AC_LIBSOURCES], m4_defn([unistring_LIBSOURCES])) + m4_pushdef([unistring_LIBSOURCES_LIST], []) + m4_pushdef([unistring_LIBSOURCES_DIR], []) + m4_pushdef([GL_MACRO_PREFIX], [unistring]) + m4_pushdef([GL_MODULE_INDICATOR_PREFIX], [GL_UNISTRING]) + gl_COMMON + gl_source_base='lib/unistring' + gl_INLINE + gl_LIMITS_H + gl_MULTIARCH + gt_TYPE_SSIZE_T + AM_STDBOOL_H + gl_STDINT_H + gl_SYS_TYPES_H + gl_SYS_TYPES_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P + gl_LIBUNISTRING_LIBHEADER([0.9.8], [unictype.h]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-C]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Cc]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Cf]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Cn]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Co]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Cs]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-L]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-LC]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Ll]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Lm]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Lo]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Lt]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Lu]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-M]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Mc]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Me]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Mn]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-N]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Nd]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Nl]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-No]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-P]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Pc]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Pd]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Pe]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Pf]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Pi]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Po]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Ps]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-S]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Sc]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Sk]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Sm]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-So]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Z]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Zl]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Zp]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-Zs]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-and]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-and-not]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-byname]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-longname]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-name]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-none]) + AC_REQUIRE([AC_C_INLINE]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-of]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-or]) + AC_REQUIRE([AC_C_INLINE]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-test]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/combining-class]) + AC_REQUIRE([AC_C_INLINE]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/property-default-ignorable-code-point]) + AC_REQUIRE([AC_C_INLINE]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/property-join-control]) + AC_REQUIRE([AC_C_INLINE]) + gl_LIBUNISTRING_MODULE([0.9.8], [unictype/property-not-a-character]) + gl_LIBUNISTRING_LIBHEADER([0.9.11], [uninorm.h]) + gl_LIBUNISTRING_MODULE([0.9.8], [uninorm/canonical-decomposition]) + gl_LIBUNISTRING_MODULE([0.9.8], [uninorm/composition]) + gl_LIBUNISTRING_MODULE([0.9.8], [uninorm/decomposition]) + AC_REQUIRE([AC_C_INLINE]) + gl_LIBUNISTRING_MODULE([0.9.8], [uninorm/nfc]) + gl_LIBUNISTRING_MODULE([0.9.8], [uninorm/nfd]) + gl_LIBUNISTRING_MODULE([0.9.8], [uninorm/nfkc]) + gl_LIBUNISTRING_MODULE([0.9.8], [uninorm/nfkd]) + gl_MODULE_INDICATOR_FOR_TESTS([uninorm/u16-normalize]) + gl_LIBUNISTRING_MODULE([0.9.8], [uninorm/u16-normalize]) + gl_MODULE_INDICATOR_FOR_TESTS([uninorm/u32-normalize]) + gl_LIBUNISTRING_MODULE([0.9.8], [uninorm/u32-normalize]) + gl_MODULE_INDICATOR_FOR_TESTS([uninorm/u8-normalize]) + gl_LIBUNISTRING_MODULE([0.9.8], [uninorm/u8-normalize]) + gl_LIBUNISTRING_LIBHEADER([0.9.11], [unistr.h]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u16-cpy]) + gl_MODULE_INDICATOR([unistr/u16-mbtouc-unsafe]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u16-mbtouc-unsafe]) + gl_MODULE_INDICATOR([unistr/u16-mbtoucr]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u16-mbtoucr]) + gl_LIBUNISTRING_MODULE([0.9.3], [unistr/u16-to-u8]) + gl_MODULE_INDICATOR([unistr/u16-uctomb]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u16-uctomb]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u32-cpy]) + gl_MODULE_INDICATOR([unistr/u32-mbtouc-unsafe]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u32-mbtouc-unsafe]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u32-to-u8]) + gl_MODULE_INDICATOR([unistr/u32-uctomb]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u32-uctomb]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u8-check]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u8-cpy]) + gl_MODULE_INDICATOR([unistr/u8-mbtouc-unsafe]) + gl_LIBUNISTRING_MODULE([0.9.4], [unistr/u8-mbtouc-unsafe]) + gl_MODULE_INDICATOR([unistr/u8-mbtoucr]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u8-mbtoucr]) + gl_LIBUNISTRING_MODULE([0.9.3], [unistr/u8-to-u16]) + gl_LIBUNISTRING_MODULE([0.9.3], [unistr/u8-to-u32]) + gl_MODULE_INDICATOR([unistr/u8-uctomb]) + gl_LIBUNISTRING_MODULE([0.9], [unistr/u8-uctomb]) + gl_LIBUNISTRING_LIBHEADER([0.9.11], [unitypes.h]) + # End of code from modules + m4_ifval(unistring_LIBSOURCES_LIST, [ + m4_syscmd([test ! -d ]m4_defn([unistring_LIBSOURCES_DIR])[ || + for gl_file in ]unistring_LIBSOURCES_LIST[ ; do + if test ! -r ]m4_defn([unistring_LIBSOURCES_DIR])[/$gl_file ; then + echo "missing file ]m4_defn([unistring_LIBSOURCES_DIR])[/$gl_file" >&2 + exit 1 + fi + done])dnl + m4_if(m4_sysval, [0], [], + [AC_FATAL([expected source file, required through AC_LIBSOURCES, not found])]) + ]) + m4_popdef([GL_MODULE_INDICATOR_PREFIX]) + m4_popdef([GL_MACRO_PREFIX]) + m4_popdef([unistring_LIBSOURCES_DIR]) + m4_popdef([unistring_LIBSOURCES_LIST]) + m4_popdef([AC_LIBSOURCES]) + m4_popdef([AC_REPLACE_FUNCS]) + m4_popdef([AC_LIBOBJ]) + AC_CONFIG_COMMANDS_PRE([ + unistring_libobjs= + unistring_ltlibobjs= + if test -n "$unistring_LIBOBJS"; then + # Remove the extension. + sed_drop_objext='s/\.o$//;s/\.obj$//' + for i in `for i in $unistring_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do + unistring_libobjs="$unistring_libobjs $i.$ac_objext" + unistring_ltlibobjs="$unistring_ltlibobjs $i.lo" + done + fi + AC_SUBST([unistring_LIBOBJS], [$unistring_libobjs]) + AC_SUBST([unistring_LTLIBOBJS], [$unistring_ltlibobjs]) + ]) + gltests_libdeps= + gltests_ltlibdeps= + m4_pushdef([AC_LIBOBJ], m4_defn([unistringtests_LIBOBJ])) + m4_pushdef([AC_REPLACE_FUNCS], m4_defn([unistringtests_REPLACE_FUNCS])) + m4_pushdef([AC_LIBSOURCES], m4_defn([unistringtests_LIBSOURCES])) + m4_pushdef([unistringtests_LIBSOURCES_LIST], []) + m4_pushdef([unistringtests_LIBSOURCES_DIR], []) + m4_pushdef([GL_MACRO_PREFIX], [unistringtests]) + m4_pushdef([GL_MODULE_INDICATOR_PREFIX], [GL_UNISTRING]) + gl_COMMON + gl_source_base='tests' +changequote(,)dnl + unistringtests_WITNESS=IN_`echo "${PACKAGE-$PACKAGE_TARNAME}" | LC_ALL=C tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | LC_ALL=C sed -e 's/[^A-Z0-9_]/_/g'`_GNULIB_TESTS +changequote([, ])dnl + AC_SUBST([unistringtests_WITNESS]) + gl_module_indicator_condition=$unistringtests_WITNESS + m4_pushdef([gl_MODULE_INDICATOR_CONDITION], [$gl_module_indicator_condition]) + m4_popdef([gl_MODULE_INDICATOR_CONDITION]) + m4_ifval(unistringtests_LIBSOURCES_LIST, [ + m4_syscmd([test ! -d ]m4_defn([unistringtests_LIBSOURCES_DIR])[ || + for gl_file in ]unistringtests_LIBSOURCES_LIST[ ; do + if test ! -r ]m4_defn([unistringtests_LIBSOURCES_DIR])[/$gl_file ; then + echo "missing file ]m4_defn([unistringtests_LIBSOURCES_DIR])[/$gl_file" >&2 + exit 1 + fi + done])dnl + m4_if(m4_sysval, [0], [], + [AC_FATAL([expected source file, required through AC_LIBSOURCES, not found])]) + ]) + m4_popdef([GL_MODULE_INDICATOR_PREFIX]) + m4_popdef([GL_MACRO_PREFIX]) + m4_popdef([unistringtests_LIBSOURCES_DIR]) + m4_popdef([unistringtests_LIBSOURCES_LIST]) + m4_popdef([AC_LIBSOURCES]) + m4_popdef([AC_REPLACE_FUNCS]) + m4_popdef([AC_LIBOBJ]) + AC_CONFIG_COMMANDS_PRE([ + unistringtests_libobjs= + unistringtests_ltlibobjs= + if test -n "$unistringtests_LIBOBJS"; then + # Remove the extension. + sed_drop_objext='s/\.o$//;s/\.obj$//' + for i in `for i in $unistringtests_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do + unistringtests_libobjs="$unistringtests_libobjs $i.$ac_objext" + unistringtests_ltlibobjs="$unistringtests_ltlibobjs $i.lo" + done + fi + AC_SUBST([unistringtests_LIBOBJS], [$unistringtests_libobjs]) + AC_SUBST([unistringtests_LTLIBOBJS], [$unistringtests_ltlibobjs]) + ]) +]) + +# Like AC_LIBOBJ, except that the module name goes +# into unistring_LIBOBJS instead of into LIBOBJS. +AC_DEFUN([unistring_LIBOBJ], [ + AS_LITERAL_IF([$1], [unistring_LIBSOURCES([$1.c])])dnl + unistring_LIBOBJS="$unistring_LIBOBJS $1.$ac_objext" +]) + +# Like AC_REPLACE_FUNCS, except that the module name goes +# into unistring_LIBOBJS instead of into LIBOBJS. +AC_DEFUN([unistring_REPLACE_FUNCS], [ + m4_foreach_w([gl_NAME], [$1], [AC_LIBSOURCES(gl_NAME[.c])])dnl + AC_CHECK_FUNCS([$1], , [unistring_LIBOBJ($ac_func)]) +]) + +# Like AC_LIBSOURCES, except the directory where the source file is +# expected is derived from the gnulib-tool parameterization, +# and alloca is special cased (for the alloca-opt module). +# We could also entirely rely on EXTRA_lib..._SOURCES. +AC_DEFUN([unistring_LIBSOURCES], [ + m4_foreach([_gl_NAME], [$1], [ + m4_if(_gl_NAME, [alloca.c], [], [ + m4_define([unistring_LIBSOURCES_DIR], [lib/unistring]) + m4_append([unistring_LIBSOURCES_LIST], _gl_NAME, [ ]) + ]) + ]) +]) + +# Like AC_LIBOBJ, except that the module name goes +# into unistringtests_LIBOBJS instead of into LIBOBJS. +AC_DEFUN([unistringtests_LIBOBJ], [ + AS_LITERAL_IF([$1], [unistringtests_LIBSOURCES([$1.c])])dnl + unistringtests_LIBOBJS="$unistringtests_LIBOBJS $1.$ac_objext" +]) + +# Like AC_REPLACE_FUNCS, except that the module name goes +# into unistringtests_LIBOBJS instead of into LIBOBJS. +AC_DEFUN([unistringtests_REPLACE_FUNCS], [ + m4_foreach_w([gl_NAME], [$1], [AC_LIBSOURCES(gl_NAME[.c])])dnl + AC_CHECK_FUNCS([$1], , [unistringtests_LIBOBJ($ac_func)]) +]) + +# Like AC_LIBSOURCES, except the directory where the source file is +# expected is derived from the gnulib-tool parameterization, +# and alloca is special cased (for the alloca-opt module). +# We could also entirely rely on EXTRA_lib..._SOURCES. +AC_DEFUN([unistringtests_LIBSOURCES], [ + m4_foreach([_gl_NAME], [$1], [ + m4_if(_gl_NAME, [alloca.c], [], [ + m4_define([unistringtests_LIBSOURCES_DIR], [tests]) + m4_append([unistringtests_LIBSOURCES_LIST], _gl_NAME, [ ]) + ]) + ]) +]) + +# This macro records the list of files which have been installed by +# gnulib-tool and may be removed by future gnulib-tool invocations. +AC_DEFUN([unistring_FILE_LIST], [ + lib/array-mergesort.h + lib/attribute.h + lib/limits.in.h + lib/stdbool.in.h + lib/stdint.in.h + lib/sys_types.in.h + lib/unictype.in.h + lib/unictype/bitmap.h + lib/unictype/categ_C.c + lib/unictype/categ_C.h + lib/unictype/categ_Cc.c + lib/unictype/categ_Cc.h + lib/unictype/categ_Cf.c + lib/unictype/categ_Cf.h + lib/unictype/categ_Cn.c + lib/unictype/categ_Cn.h + lib/unictype/categ_Co.c + lib/unictype/categ_Co.h + lib/unictype/categ_Cs.c + lib/unictype/categ_Cs.h + lib/unictype/categ_L.c + lib/unictype/categ_L.h + lib/unictype/categ_LC.c + lib/unictype/categ_LC.h + lib/unictype/categ_Ll.c + lib/unictype/categ_Ll.h + lib/unictype/categ_Lm.c + lib/unictype/categ_Lm.h + lib/unictype/categ_Lo.c + lib/unictype/categ_Lo.h + lib/unictype/categ_Lt.c + lib/unictype/categ_Lt.h + lib/unictype/categ_Lu.c + lib/unictype/categ_Lu.h + lib/unictype/categ_M.c + lib/unictype/categ_M.h + lib/unictype/categ_Mc.c + lib/unictype/categ_Mc.h + lib/unictype/categ_Me.c + lib/unictype/categ_Me.h + lib/unictype/categ_Mn.c + lib/unictype/categ_Mn.h + lib/unictype/categ_N.c + lib/unictype/categ_N.h + lib/unictype/categ_Nd.c + lib/unictype/categ_Nd.h + lib/unictype/categ_Nl.c + lib/unictype/categ_Nl.h + lib/unictype/categ_No.c + lib/unictype/categ_No.h + lib/unictype/categ_P.c + lib/unictype/categ_P.h + lib/unictype/categ_Pc.c + lib/unictype/categ_Pc.h + lib/unictype/categ_Pd.c + lib/unictype/categ_Pd.h + lib/unictype/categ_Pe.c + lib/unictype/categ_Pe.h + lib/unictype/categ_Pf.c + lib/unictype/categ_Pf.h + lib/unictype/categ_Pi.c + lib/unictype/categ_Pi.h + lib/unictype/categ_Po.c + lib/unictype/categ_Po.h + lib/unictype/categ_Ps.c + lib/unictype/categ_Ps.h + lib/unictype/categ_S.c + lib/unictype/categ_S.h + lib/unictype/categ_Sc.c + lib/unictype/categ_Sc.h + lib/unictype/categ_Sk.c + lib/unictype/categ_Sk.h + lib/unictype/categ_Sm.c + lib/unictype/categ_Sm.h + lib/unictype/categ_So.c + lib/unictype/categ_So.h + lib/unictype/categ_Z.c + lib/unictype/categ_Z.h + lib/unictype/categ_Zl.c + lib/unictype/categ_Zl.h + lib/unictype/categ_Zp.c + lib/unictype/categ_Zp.h + lib/unictype/categ_Zs.c + lib/unictype/categ_Zs.h + lib/unictype/categ_and.c + lib/unictype/categ_and_not.c + lib/unictype/categ_byname.c + lib/unictype/categ_byname.gperf + lib/unictype/categ_longname.c + lib/unictype/categ_name.c + lib/unictype/categ_none.c + lib/unictype/categ_of.c + lib/unictype/categ_of.h + lib/unictype/categ_or.c + lib/unictype/categ_test.c + lib/unictype/combiningclass.c + lib/unictype/combiningclass.h + lib/unictype/pr_default_ignorable_code_point.c + lib/unictype/pr_default_ignorable_code_point.h + lib/unictype/pr_join_control.c + lib/unictype/pr_join_control.h + lib/unictype/pr_not_a_character.c + lib/unictype/pr_not_a_character.h + lib/uninorm.in.h + lib/uninorm/canonical-decomposition.c + lib/uninorm/compat-decomposition.c + lib/uninorm/composition-table.gperf + lib/uninorm/composition.c + lib/uninorm/decompose-internal.c + lib/uninorm/decompose-internal.h + lib/uninorm/decomposition-table.c + lib/uninorm/decomposition-table.h + lib/uninorm/decomposition-table1.h + lib/uninorm/decomposition-table2.h + lib/uninorm/decomposition.c + lib/uninorm/nfc.c + lib/uninorm/nfd.c + lib/uninorm/nfkc.c + lib/uninorm/nfkd.c + lib/uninorm/normalize-internal.h + lib/uninorm/u-normalize-internal.h + lib/uninorm/u16-normalize.c + lib/uninorm/u32-normalize.c + lib/uninorm/u8-normalize.c + lib/unistr.in.h + lib/unistr/u-cpy.h + lib/unistr/u16-cpy.c + lib/unistr/u16-mbtouc-unsafe-aux.c + lib/unistr/u16-mbtouc-unsafe.c + lib/unistr/u16-mbtoucr.c + lib/unistr/u16-to-u8.c + lib/unistr/u16-uctomb-aux.c + lib/unistr/u16-uctomb.c + lib/unistr/u32-cpy.c + lib/unistr/u32-mbtouc-unsafe.c + lib/unistr/u32-to-u8.c + lib/unistr/u32-uctomb.c + lib/unistr/u8-check.c + lib/unistr/u8-cpy.c + lib/unistr/u8-mbtouc-unsafe-aux.c + lib/unistr/u8-mbtouc-unsafe.c + lib/unistr/u8-mbtoucr.c + lib/unistr/u8-to-u16.c + lib/unistr/u8-to-u32.c + lib/unistr/u8-uctomb-aux.c + lib/unistr/u8-uctomb.c + lib/unitypes.in.h + lib/unused-parameter.h + m4/00gnulib.m4 + m4/absolute-header.m4 + m4/gnulib-common.m4 + m4/include_next.m4 + m4/inline.m4 + m4/libunistring-base.m4 + m4/limits-h.m4 + m4/multiarch.m4 + m4/off_t.m4 + m4/pid_t.m4 + m4/ssize_t.m4 + m4/stdbool.m4 + m4/stdint.m4 + m4/sys_types_h.m4 + m4/wint_t.m4 + m4/zzgnulib.m4 +]) diff --git a/lib/unistring/m4/inline.m4 b/lib/unistring/m4/inline.m4 new file mode 100644 index 0000000..04fc774 --- /dev/null +++ b/lib/unistring/m4/inline.m4 @@ -0,0 +1,40 @@ +# inline.m4 serial 4 +dnl Copyright (C) 2006, 2009-2021 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl Test for the 'inline' keyword or equivalent. +dnl Define 'inline' to a supported equivalent, or to nothing if not supported, +dnl like AC_C_INLINE does. Also, define HAVE_INLINE if 'inline' or an +dnl equivalent is effectively supported, i.e. if the compiler is likely to +dnl drop unused 'static inline' functions. +AC_DEFUN([gl_INLINE], +[ + AC_REQUIRE([AC_C_INLINE]) + AC_CACHE_CHECK([whether the compiler generally respects inline], + [gl_cv_c_inline_effective], + [if test $ac_cv_c_inline = no; then + gl_cv_c_inline_effective=no + else + dnl GCC defines __NO_INLINE__ if not optimizing or if -fno-inline is + dnl specified. + dnl Use AC_COMPILE_IFELSE here, not AC_EGREP_CPP, because the result + dnl depends on optimization flags, which can be in CFLAGS. + dnl (AC_EGREP_CPP looks only at the CPPFLAGS.) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([[]], + [[#ifdef __NO_INLINE__ + #error "inline is not effective" + #endif]])], + [gl_cv_c_inline_effective=yes], + [gl_cv_c_inline_effective=no]) + fi + ]) + if test $gl_cv_c_inline_effective = yes; then + AC_DEFINE([HAVE_INLINE], [1], + [Define to 1 if the compiler supports one of the keywords + 'inline', '__inline__', '__inline' and effectively inlines + functions marked as such.]) + fi +]) diff --git a/lib/unistring/m4/libunistring-base.m4 b/lib/unistring/m4/libunistring-base.m4 new file mode 100644 index 0000000..657bc0d --- /dev/null +++ b/lib/unistring/m4/libunistring-base.m4 @@ -0,0 +1,141 @@ +# libunistring-base.m4 serial 5 +dnl Copyright (C) 2010-2021 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl From Paolo Bonzini and Bruno Haible. + +dnl gl_LIBUNISTRING_MODULE([VERSION], [Module]) +dnl Declares that the source files of Module should be compiled, unless we +dnl are linking with libunistring and its version is >= the given VERSION. +dnl Defines an automake conditional LIBUNISTRING_COMPILE_$MODULE that is +dnl true if the source files of Module should be compiled. +dnl This macro is to be used for public libunistring API, not for +dnl undocumented API. +dnl +dnl You have to bump the VERSION argument to the next projected version +dnl number each time you make a change that affects the behaviour of the +dnl functions defined in Module (even if the sources of Module itself do not +dnl change). + +AC_DEFUN([gl_LIBUNISTRING_MODULE], +[ + AC_REQUIRE([gl_LIBUNISTRING_LIB_PREPARE]) + dnl Use the variables HAVE_LIBUNISTRING, LIBUNISTRING_VERSION from + dnl gl_LIBUNISTRING_CORE if that macro has been run. + AM_CONDITIONAL(AS_TR_CPP([LIBUNISTRING_COMPILE_$2]), + [gl_LIBUNISTRING_VERSION_CMP([$1])]) +]) + +dnl gl_LIBUNISTRING_LIBHEADER([VERSION], [HeaderFile]) +dnl Declares that HeaderFile should be created, unless we are linking +dnl with libunistring and its version is >= the given VERSION. +dnl HeaderFile should be relative to the lib directory and end in '.h'. +dnl Prepares for substituting LIBUNISTRING_HEADERFILE (to HeaderFile or empty). +dnl +dnl When we are linking with the already installed libunistring and its version +dnl is < VERSION, we create HeaderFile here, because we may compile functions +dnl (via gl_LIBUNISTRING_MODULE above) that are not contained in the installed +dnl version. +dnl When we are linking with the already installed libunistring and its version +dnl is > VERSION, we don't create HeaderFile here: it could cause compilation +dnl errors in other libunistring header files if some types are missing. +dnl +dnl You have to bump the VERSION argument to the next projected version +dnl number each time you make a non-comment change to the HeaderFile. + +AC_DEFUN([gl_LIBUNISTRING_LIBHEADER], +[ + AC_REQUIRE([gl_LIBUNISTRING_LIB_PREPARE]) + dnl Use the variables HAVE_LIBUNISTRING, LIBUNISTRING_VERSION from + dnl gl_LIBUNISTRING_CORE if that macro has been run. + if gl_LIBUNISTRING_VERSION_CMP([$1]); then + LIBUNISTRING_[]AS_TR_CPP([$2])='$2' + else + LIBUNISTRING_[]AS_TR_CPP([$2])= + fi + AC_SUBST([LIBUNISTRING_]AS_TR_CPP([$2])) +]) + +dnl Miscellaneous preparations/initializations. + +AC_DEFUN([gl_LIBUNISTRING_LIB_PREPARE], +[ + dnl Ensure that HAVE_LIBUNISTRING is fully determined at this point. + m4_ifdef([gl_LIBUNISTRING], [AC_REQUIRE([gl_LIBUNISTRING])]) + + AC_REQUIRE([AC_PROG_AWK]) + +dnl Sed expressions to extract the parts of a version number. +changequote(,) +gl_libunistring_sed_extract_major='/^[0-9]/{s/^\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' +gl_libunistring_sed_extract_minor='/^[0-9][0-9]*[.][0-9]/{s/^[0-9]*[.]\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' +gl_libunistring_sed_extract_subminor='/^[0-9][0-9]*[.][0-9][0-9]*[.][0-9]/{s/^[0-9]*[.][0-9]*[.]\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' +changequote([,]) + + if test "$HAVE_LIBUNISTRING" = yes; then + LIBUNISTRING_VERSION_MAJOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_major"` + LIBUNISTRING_VERSION_MINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_minor"` + LIBUNISTRING_VERSION_SUBMINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_subminor"` + fi +]) + +dnl gl_LIBUNISTRING_VERSION_CMP([VERSION]) +dnl Expands to a shell statement that evaluates to true if LIBUNISTRING_VERSION +dnl is less than the VERSION argument. +AC_DEFUN([gl_LIBUNISTRING_VERSION_CMP], +[ { test "$HAVE_LIBUNISTRING" != yes \ + || { + dnl AS_LITERAL_IF exists and works fine since autoconf-2.59 at least. + AS_LITERAL_IF([$1], + [dnl This is the optimized variant, that assumes the argument is a literal: + m4_pushdef([requested_version_major], + [gl_LIBUNISTRING_ARG_OR_ZERO(m4_bpatsubst([$1], [^\([0-9]*\).*], [\1]), [])]) + m4_pushdef([requested_version_minor], + [gl_LIBUNISTRING_ARG_OR_ZERO(m4_bpatsubst([$1], [^[0-9]*[.]\([0-9]*\).*], [\1]), [$1])]) + m4_pushdef([requested_version_subminor], + [gl_LIBUNISTRING_ARG_OR_ZERO(m4_bpatsubst([$1], [^[0-9]*[.][0-9]*[.]\([0-9]*\).*], [\1]), [$1])]) + test $LIBUNISTRING_VERSION_MAJOR -lt requested_version_major \ + || { test $LIBUNISTRING_VERSION_MAJOR -eq requested_version_major \ + && { test $LIBUNISTRING_VERSION_MINOR -lt requested_version_minor \ + || { test $LIBUNISTRING_VERSION_MINOR -eq requested_version_minor \ + && test $LIBUNISTRING_VERSION_SUBMINOR -lt requested_version_subminor + } + } + } + m4_popdef([requested_version_subminor]) + m4_popdef([requested_version_minor]) + m4_popdef([requested_version_major]) + ], + [dnl This is the unoptimized variant: + requested_version_major=`echo '$1' | sed -n -e "$gl_libunistring_sed_extract_major"` + requested_version_minor=`echo '$1' | sed -n -e "$gl_libunistring_sed_extract_minor"` + requested_version_subminor=`echo '$1' | sed -n -e "$gl_libunistring_sed_extract_subminor"` + test $LIBUNISTRING_VERSION_MAJOR -lt $requested_version_major \ + || { test $LIBUNISTRING_VERSION_MAJOR -eq $requested_version_major \ + && { test $LIBUNISTRING_VERSION_MINOR -lt $requested_version_minor \ + || { test $LIBUNISTRING_VERSION_MINOR -eq $requested_version_minor \ + && test $LIBUNISTRING_VERSION_SUBMINOR -lt $requested_version_subminor + } + } + } + ]) + } + }]) + +dnl gl_LIBUNISTRING_ARG_OR_ZERO([ARG], [ORIG]) expands to ARG if it is not the +dnl same as ORIG, otherwise to 0. +m4_define([gl_LIBUNISTRING_ARG_OR_ZERO], [m4_if([$1], [$2], [0], [$1])]) diff --git a/lib/unistring/stdbool.in.h b/lib/unistring/stdbool.in.h new file mode 100644 index 0000000..33e9538 --- /dev/null +++ b/lib/unistring/stdbool.in.h @@ -0,0 +1,141 @@ +/* Copyright (C) 2001-2003, 2006-2021 Free Software Foundation, Inc. + Written by Bruno Haible <haible@clisp.cons.org>, 2001. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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, see <https://www.gnu.org/licenses/>. */ + +#ifndef _GL_STDBOOL_H +#define _GL_STDBOOL_H + +/* ISO C 99 <stdbool.h> for platforms that lack it. */ + +/* Usage suggestions: + + Programs that use <stdbool.h> should be aware of some limitations + and standards compliance issues. + + Standards compliance: + + - <stdbool.h> must be #included before 'bool', 'false', 'true' + can be used. + + - You cannot assume that sizeof (bool) == 1. + + - Programs should not undefine the macros bool, true, and false, + as C99 lists that as an "obsolescent feature". + + Limitations of this substitute, when used in a C89 environment: + + - <stdbool.h> must be #included before the '_Bool' type can be used. + + - You cannot assume that _Bool is a typedef; it might be a macro. + + - Bit-fields of type 'bool' are not supported. Portable code + should use 'unsigned int foo : 1;' rather than 'bool foo : 1;'. + + - In C99, casts and automatic conversions to '_Bool' or 'bool' are + performed in such a way that every nonzero value gets converted + to 'true', and zero gets converted to 'false'. This doesn't work + with this substitute. With this substitute, only the values 0 and 1 + give the expected result when converted to _Bool' or 'bool'. + + - C99 allows the use of (_Bool)0.0 in constant expressions, but + this substitute cannot always provide this property. + + Also, it is suggested that programs use 'bool' rather than '_Bool'; + this isn't required, but 'bool' is more common. */ + + +/* 7.16. Boolean type and values */ + +/* BeOS <sys/socket.h> already #defines false 0, true 1. We use the same + definitions below, but temporarily we have to #undef them. */ +#if defined __BEOS__ && !defined __HAIKU__ +# include <OS.h> /* defines bool but not _Bool */ +# undef false +# undef true +#endif + +#ifdef __cplusplus +# define _Bool bool +# define bool bool +#else +# if defined __BEOS__ && !defined __HAIKU__ + /* A compiler known to have 'bool'. */ + /* If the compiler already has both 'bool' and '_Bool', we can assume they + are the same types. */ +# if !@HAVE__BOOL@ +typedef bool _Bool; +# endif +# else +# if !defined __GNUC__ + /* If @HAVE__BOOL@: + Some HP-UX cc and AIX IBM C compiler versions have compiler bugs when + the built-in _Bool type is used. See + https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html + https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html + https://lists.gnu.org/r/bug-coreutils/2005-10/msg00086.html + Similar bugs are likely with other compilers as well; this file + wouldn't be used if <stdbool.h> was working. + So we override the _Bool type. + If !@HAVE__BOOL@: + Need to define _Bool ourselves. As 'signed char' or as an enum type? + Use of a typedef, with SunPRO C, leads to a stupid + "warning: _Bool is a keyword in ISO C99". + Use of an enum type, with IRIX cc, leads to a stupid + "warning(1185): enumerated type mixed with another type". + Even the existence of an enum type, without a typedef, + "Invalid enumerator. (badenum)" with HP-UX cc on Tru64. + The only benefit of the enum, debuggability, is not important + with these compilers. So use 'signed char' and no enum. */ +# define _Bool signed char +# else + /* With this compiler, trust the _Bool type if the compiler has it. */ +# if !@HAVE__BOOL@ + /* For the sake of symbolic names in gdb, define true and false as + enum constants, not only as macros. + It is tempting to write + typedef enum { false = 0, true = 1 } _Bool; + so that gdb prints values of type 'bool' symbolically. But then + values of type '_Bool' might promote to 'int' or 'unsigned int' + (see ISO C 99 6.7.2.2.(4)); however, '_Bool' must promote to 'int' + (see ISO C 99 6.3.1.1.(2)). So add a negative value to the + enum; this ensures that '_Bool' promotes to 'int'. */ +typedef enum { _Bool_must_promote_to_int = -1, false = 0, true = 1 } _Bool; +# endif +# endif +# endif +# define bool _Bool +#endif + +/* The other macros must be usable in preprocessor directives. */ +#ifdef __cplusplus +# define false false +# define true true +#else +# define false 0 +# define true 1 +#endif + +#define __bool_true_false_are_defined 1 + +#endif /* _GL_STDBOOL_H */ diff --git a/lib/unistring/stdint.in.h b/lib/unistring/stdint.in.h new file mode 100644 index 0000000..41c7190 --- /dev/null +++ b/lib/unistring/stdint.in.h @@ -0,0 +1,749 @@ +/* Copyright (C) 2001-2002, 2004-2021 Free Software Foundation, Inc. + Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood. + This file is part of gnulib. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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, see <https://www.gnu.org/licenses/>. */ + +/* + * ISO C 99 <stdint.h> for platforms that lack it. + * <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/stdint.h.html> + */ + +#ifndef _@GUARD_PREFIX@_STDINT_H + +#if __GNUC__ >= 3 +@PRAGMA_SYSTEM_HEADER@ +#endif +@PRAGMA_COLUMNS@ + +/* When including a system file that in turn includes <inttypes.h>, + use the system <inttypes.h>, not our substitute. This avoids + problems with (for example) VMS, whose <sys/bitypes.h> includes + <inttypes.h>. */ +#define _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H + +/* On Android (Bionic libc), <sys/types.h> includes this file before + having defined 'time_t'. Therefore in this case avoid including + other system header files; just include the system's <stdint.h>. + Ideally we should test __BIONIC__ here, but it is only defined after + <sys/cdefs.h> has been included; hence test __ANDROID__ instead. */ +#if defined __ANDROID__ && defined _GL_INCLUDING_SYS_TYPES_H +# @INCLUDE_NEXT@ @NEXT_STDINT_H@ +#else + +/* Get those types that are already defined in other system include + files, so that we can "#define int8_t signed char" below without + worrying about a later system include file containing a "typedef + signed char int8_t;" that will get messed up by our macro. Our + macros should all be consistent with the system versions, except + for the "fast" types and macros, which we recommend against using + in public interfaces due to compiler differences. */ + +#if @HAVE_STDINT_H@ +# if defined __sgi && ! defined __c99 + /* Bypass IRIX's <stdint.h> if in C89 mode, since it merely annoys users + with "This header file is to be used only for c99 mode compilations" + diagnostics. */ +# define __STDINT_H__ +# endif + + /* Some pre-C++11 <stdint.h> implementations need this. */ +# ifdef __cplusplus +# ifndef __STDC_CONSTANT_MACROS +# define __STDC_CONSTANT_MACROS 1 +# endif +# ifndef __STDC_LIMIT_MACROS +# define __STDC_LIMIT_MACROS 1 +# endif +# endif + + /* Other systems may have an incomplete or buggy <stdint.h>. + Include it before <inttypes.h>, since any "#include <stdint.h>" + in <inttypes.h> would reinclude us, skipping our contents because + _@GUARD_PREFIX@_STDINT_H is defined. + The include_next requires a split double-inclusion guard. */ +# @INCLUDE_NEXT@ @NEXT_STDINT_H@ +#endif + +#if ! defined _@GUARD_PREFIX@_STDINT_H && ! defined _GL_JUST_INCLUDE_SYSTEM_STDINT_H +#define _@GUARD_PREFIX@_STDINT_H + +/* Get SCHAR_MIN, SCHAR_MAX, UCHAR_MAX, INT_MIN, INT_MAX, + LONG_MIN, LONG_MAX, ULONG_MAX, _GL_INTEGER_WIDTH. */ +#include <limits.h> + +/* Override WINT_MIN and WINT_MAX if gnulib's <wchar.h> or <wctype.h> overrides + wint_t. */ +#if @GNULIBHEADERS_OVERRIDE_WINT_T@ +# undef WINT_MIN +# undef WINT_MAX +# define WINT_MIN 0x0U +# define WINT_MAX 0xffffffffU +#endif + +#if ! @HAVE_C99_STDINT_H@ + +/* <sys/types.h> defines some of the stdint.h types as well, on glibc, + IRIX 6.5, and OpenBSD 3.8 (via <machine/types.h>). + AIX 5.2 <sys/types.h> isn't needed and causes troubles. + Mac OS X 10.4.6 <sys/types.h> includes <stdint.h> (which is us), but + relies on the system <stdint.h> definitions, so include + <sys/types.h> after @NEXT_STDINT_H@. */ +# if @HAVE_SYS_TYPES_H@ && ! defined _AIX +# include <sys/types.h> +# endif + +# if @HAVE_INTTYPES_H@ + /* In OpenBSD 3.8, <inttypes.h> includes <machine/types.h>, which defines + int{8,16,32,64}_t, uint{8,16,32,64}_t and __BIT_TYPES_DEFINED__. + <inttypes.h> also defines intptr_t and uintptr_t. */ +# include <inttypes.h> +# elif @HAVE_SYS_INTTYPES_H@ + /* Solaris 7 <sys/inttypes.h> has the types except the *_fast*_t types, and + the macros except for *_FAST*_*, INTPTR_MIN, PTRDIFF_MIN, PTRDIFF_MAX. */ +# include <sys/inttypes.h> +# endif + +# if @HAVE_SYS_BITYPES_H@ && ! defined __BIT_TYPES_DEFINED__ + /* Linux libc4 >= 4.6.7 and libc5 have a <sys/bitypes.h> that defines + int{8,16,32,64}_t and __BIT_TYPES_DEFINED__. In libc5 >= 5.2.2 it is + included by <sys/types.h>. */ +# include <sys/bitypes.h> +# endif + +# undef _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H + +/* Minimum and maximum values for an integer type under the usual assumption. + Return an unspecified value if BITS == 0, adding a check to pacify + picky compilers. */ + +/* These are separate macros, because if you try to merge these macros into + a single one, HP-UX cc rejects the resulting expression in constant + expressions. */ +# define _STDINT_UNSIGNED_MIN(bits, zero) \ + (zero) +# define _STDINT_SIGNED_MIN(bits, zero) \ + (~ _STDINT_MAX (1, bits, zero)) + +# define _STDINT_MAX(signed, bits, zero) \ + (((((zero) + 1) << ((bits) ? (bits) - 1 - (signed) : 0)) - 1) * 2 + 1) + +#if !GNULIB_defined_stdint_types + +/* 7.18.1.1. Exact-width integer types */ + +/* Here we assume a standard architecture where the hardware integer + types have 8, 16, 32, optionally 64 bits. */ + +# undef int8_t +# undef uint8_t +typedef signed char gl_int8_t; +typedef unsigned char gl_uint8_t; +# define int8_t gl_int8_t +# define uint8_t gl_uint8_t + +# undef int16_t +# undef uint16_t +typedef short int gl_int16_t; +typedef unsigned short int gl_uint16_t; +# define int16_t gl_int16_t +# define uint16_t gl_uint16_t + +# undef int32_t +# undef uint32_t +typedef int gl_int32_t; +typedef unsigned int gl_uint32_t; +# define int32_t gl_int32_t +# define uint32_t gl_uint32_t + +/* If the system defines INT64_MAX, assume int64_t works. That way, + if the underlying platform defines int64_t to be a 64-bit long long + int, the code below won't mistakenly define it to be a 64-bit long + int, which would mess up C++ name mangling. We must use #ifdef + rather than #if, to avoid an error with HP-UX 10.20 cc. */ + +# ifdef INT64_MAX +# define GL_INT64_T +# else +/* Do not undefine int64_t if gnulib is not being used with 64-bit + types, since otherwise it breaks platforms like Tandem/NSK. */ +# if LONG_MAX >> 31 >> 31 == 1 +# undef int64_t +typedef long int gl_int64_t; +# define int64_t gl_int64_t +# define GL_INT64_T +# elif defined _MSC_VER +# undef int64_t +typedef __int64 gl_int64_t; +# define int64_t gl_int64_t +# define GL_INT64_T +# else +# undef int64_t +typedef long long int gl_int64_t; +# define int64_t gl_int64_t +# define GL_INT64_T +# endif +# endif + +# ifdef UINT64_MAX +# define GL_UINT64_T +# else +# if ULONG_MAX >> 31 >> 31 >> 1 == 1 +# undef uint64_t +typedef unsigned long int gl_uint64_t; +# define uint64_t gl_uint64_t +# define GL_UINT64_T +# elif defined _MSC_VER +# undef uint64_t +typedef unsigned __int64 gl_uint64_t; +# define uint64_t gl_uint64_t +# define GL_UINT64_T +# else +# undef uint64_t +typedef unsigned long long int gl_uint64_t; +# define uint64_t gl_uint64_t +# define GL_UINT64_T +# endif +# endif + +/* Avoid collision with Solaris 2.5.1 <pthread.h> etc. */ +# define _UINT8_T +# define _UINT32_T +# define _UINT64_T + + +/* 7.18.1.2. Minimum-width integer types */ + +/* Here we assume a standard architecture where the hardware integer + types have 8, 16, 32, optionally 64 bits. Therefore the leastN_t types + are the same as the corresponding N_t types. */ + +# undef int_least8_t +# undef uint_least8_t +# undef int_least16_t +# undef uint_least16_t +# undef int_least32_t +# undef uint_least32_t +# undef int_least64_t +# undef uint_least64_t +# define int_least8_t int8_t +# define uint_least8_t uint8_t +# define int_least16_t int16_t +# define uint_least16_t uint16_t +# define int_least32_t int32_t +# define uint_least32_t uint32_t +# ifdef GL_INT64_T +# define int_least64_t int64_t +# endif +# ifdef GL_UINT64_T +# define uint_least64_t uint64_t +# endif + +/* 7.18.1.3. Fastest minimum-width integer types */ + +/* Note: Other <stdint.h> substitutes may define these types differently. + It is not recommended to use these types in public header files. */ + +/* Here we assume a standard architecture where the hardware integer + types have 8, 16, 32, optionally 64 bits. Therefore the fastN_t types + are taken from the same list of types. The following code normally + uses types consistent with glibc, as that lessens the chance of + incompatibility with older GNU hosts. */ + +# undef int_fast8_t +# undef uint_fast8_t +# undef int_fast16_t +# undef uint_fast16_t +# undef int_fast32_t +# undef uint_fast32_t +# undef int_fast64_t +# undef uint_fast64_t +typedef signed char gl_int_fast8_t; +typedef unsigned char gl_uint_fast8_t; + +# ifdef __sun +/* Define types compatible with SunOS 5.10, so that code compiled under + earlier SunOS versions works with code compiled under SunOS 5.10. */ +typedef int gl_int_fast32_t; +typedef unsigned int gl_uint_fast32_t; +# else +typedef long int gl_int_fast32_t; +typedef unsigned long int gl_uint_fast32_t; +# endif +typedef gl_int_fast32_t gl_int_fast16_t; +typedef gl_uint_fast32_t gl_uint_fast16_t; + +# define int_fast8_t gl_int_fast8_t +# define uint_fast8_t gl_uint_fast8_t +# define int_fast16_t gl_int_fast16_t +# define uint_fast16_t gl_uint_fast16_t +# define int_fast32_t gl_int_fast32_t +# define uint_fast32_t gl_uint_fast32_t +# ifdef GL_INT64_T +# define int_fast64_t int64_t +# endif +# ifdef GL_UINT64_T +# define uint_fast64_t uint64_t +# endif + +/* 7.18.1.4. Integer types capable of holding object pointers */ + +/* kLIBC's <stdint.h> defines _INTPTR_T_DECLARED and needs its own + definitions of intptr_t and uintptr_t (which use int and unsigned) + to avoid clashes with declarations of system functions like sbrk. + Similarly, MinGW WSL-5.4.1 <stdint.h> needs its own intptr_t and + uintptr_t to avoid conflicting declarations of system functions like + _findclose in <io.h>. */ +# if !((defined __KLIBC__ && defined _INTPTR_T_DECLARED) \ + || defined __MINGW32__) +# undef intptr_t +# undef uintptr_t +# ifdef _WIN64 +typedef long long int gl_intptr_t; +typedef unsigned long long int gl_uintptr_t; +# else +typedef long int gl_intptr_t; +typedef unsigned long int gl_uintptr_t; +# endif +# define intptr_t gl_intptr_t +# define uintptr_t gl_uintptr_t +# endif + +/* 7.18.1.5. Greatest-width integer types */ + +/* Note: These types are compiler dependent. It may be unwise to use them in + public header files. */ + +/* If the system defines INTMAX_MAX, assume that intmax_t works, and + similarly for UINTMAX_MAX and uintmax_t. This avoids problems with + assuming one type where another is used by the system. */ + +# ifndef INTMAX_MAX +# undef INTMAX_C +# undef intmax_t +# if LONG_MAX >> 30 == 1 +typedef long long int gl_intmax_t; +# define intmax_t gl_intmax_t +# elif defined GL_INT64_T +# define intmax_t int64_t +# else +typedef long int gl_intmax_t; +# define intmax_t gl_intmax_t +# endif +# endif + +# ifndef UINTMAX_MAX +# undef UINTMAX_C +# undef uintmax_t +# if ULONG_MAX >> 31 == 1 +typedef unsigned long long int gl_uintmax_t; +# define uintmax_t gl_uintmax_t +# elif defined GL_UINT64_T +# define uintmax_t uint64_t +# else +typedef unsigned long int gl_uintmax_t; +# define uintmax_t gl_uintmax_t +# endif +# endif + +/* Verify that intmax_t and uintmax_t have the same size. Too much code + breaks if this is not the case. If this check fails, the reason is likely + to be found in the autoconf macros. */ +typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t) + ? 1 : -1]; + +# define GNULIB_defined_stdint_types 1 +# endif /* !GNULIB_defined_stdint_types */ + +/* 7.18.2. Limits of specified-width integer types */ + +/* 7.18.2.1. Limits of exact-width integer types */ + +/* Here we assume a standard architecture where the hardware integer + types have 8, 16, 32, optionally 64 bits. */ + +# undef INT8_MIN +# undef INT8_MAX +# undef UINT8_MAX +# define INT8_MIN (~ INT8_MAX) +# define INT8_MAX 127 +# define UINT8_MAX 255 + +# undef INT16_MIN +# undef INT16_MAX +# undef UINT16_MAX +# define INT16_MIN (~ INT16_MAX) +# define INT16_MAX 32767 +# define UINT16_MAX 65535 + +# undef INT32_MIN +# undef INT32_MAX +# undef UINT32_MAX +# define INT32_MIN (~ INT32_MAX) +# define INT32_MAX 2147483647 +# define UINT32_MAX 4294967295U + +# if defined GL_INT64_T && ! defined INT64_MAX +/* Prefer (- INTMAX_C (1) << 63) over (~ INT64_MAX) because SunPRO C 5.0 + evaluates the latter incorrectly in preprocessor expressions. */ +# define INT64_MIN (- INTMAX_C (1) << 63) +# define INT64_MAX INTMAX_C (9223372036854775807) +# endif + +# if defined GL_UINT64_T && ! defined UINT64_MAX +# define UINT64_MAX UINTMAX_C (18446744073709551615) +# endif + +/* 7.18.2.2. Limits of minimum-width integer types */ + +/* Here we assume a standard architecture where the hardware integer + types have 8, 16, 32, optionally 64 bits. Therefore the leastN_t types + are the same as the corresponding N_t types. */ + +# undef INT_LEAST8_MIN +# undef INT_LEAST8_MAX +# undef UINT_LEAST8_MAX +# define INT_LEAST8_MIN INT8_MIN +# define INT_LEAST8_MAX INT8_MAX +# define UINT_LEAST8_MAX UINT8_MAX + +# undef INT_LEAST16_MIN +# undef INT_LEAST16_MAX +# undef UINT_LEAST16_MAX +# define INT_LEAST16_MIN INT16_MIN +# define INT_LEAST16_MAX INT16_MAX +# define UINT_LEAST16_MAX UINT16_MAX + +# undef INT_LEAST32_MIN +# undef INT_LEAST32_MAX +# undef UINT_LEAST32_MAX +# define INT_LEAST32_MIN INT32_MIN +# define INT_LEAST32_MAX INT32_MAX +# define UINT_LEAST32_MAX UINT32_MAX + +# undef INT_LEAST64_MIN +# undef INT_LEAST64_MAX +# ifdef GL_INT64_T +# define INT_LEAST64_MIN INT64_MIN +# define INT_LEAST64_MAX INT64_MAX +# endif + +# undef UINT_LEAST64_MAX +# ifdef GL_UINT64_T +# define UINT_LEAST64_MAX UINT64_MAX +# endif + +/* 7.18.2.3. Limits of fastest minimum-width integer types */ + +/* Here we assume a standard architecture where the hardware integer + types have 8, 16, 32, optionally 64 bits. Therefore the fastN_t types + are taken from the same list of types. */ + +# undef INT_FAST8_MIN +# undef INT_FAST8_MAX +# undef UINT_FAST8_MAX +# define INT_FAST8_MIN SCHAR_MIN +# define INT_FAST8_MAX SCHAR_MAX +# define UINT_FAST8_MAX UCHAR_MAX + +# undef INT_FAST16_MIN +# undef INT_FAST16_MAX +# undef UINT_FAST16_MAX +# define INT_FAST16_MIN INT_FAST32_MIN +# define INT_FAST16_MAX INT_FAST32_MAX +# define UINT_FAST16_MAX UINT_FAST32_MAX + +# undef INT_FAST32_MIN +# undef INT_FAST32_MAX +# undef UINT_FAST32_MAX +# ifdef __sun +# define INT_FAST32_MIN INT_MIN +# define INT_FAST32_MAX INT_MAX +# define UINT_FAST32_MAX UINT_MAX +# else +# define INT_FAST32_MIN LONG_MIN +# define INT_FAST32_MAX LONG_MAX +# define UINT_FAST32_MAX ULONG_MAX +# endif + +# undef INT_FAST64_MIN +# undef INT_FAST64_MAX +# ifdef GL_INT64_T +# define INT_FAST64_MIN INT64_MIN +# define INT_FAST64_MAX INT64_MAX +# endif + +# undef UINT_FAST64_MAX +# ifdef GL_UINT64_T +# define UINT_FAST64_MAX UINT64_MAX +# endif + +/* 7.18.2.4. Limits of integer types capable of holding object pointers */ + +# undef INTPTR_MIN +# undef INTPTR_MAX +# undef UINTPTR_MAX +# ifdef _WIN64 +# define INTPTR_MIN LLONG_MIN +# define INTPTR_MAX LLONG_MAX +# define UINTPTR_MAX ULLONG_MAX +# else +# define INTPTR_MIN LONG_MIN +# define INTPTR_MAX LONG_MAX +# define UINTPTR_MAX ULONG_MAX +# endif + +/* 7.18.2.5. Limits of greatest-width integer types */ + +# ifndef INTMAX_MAX +# undef INTMAX_MIN +# ifdef INT64_MAX +# define INTMAX_MIN INT64_MIN +# define INTMAX_MAX INT64_MAX +# else +# define INTMAX_MIN INT32_MIN +# define INTMAX_MAX INT32_MAX +# endif +# endif + +# ifndef UINTMAX_MAX +# ifdef UINT64_MAX +# define UINTMAX_MAX UINT64_MAX +# else +# define UINTMAX_MAX UINT32_MAX +# endif +# endif + +/* 7.18.3. Limits of other integer types */ + +/* ptrdiff_t limits */ +# undef PTRDIFF_MIN +# undef PTRDIFF_MAX +# if @APPLE_UNIVERSAL_BUILD@ +# ifdef _LP64 +# define PTRDIFF_MIN _STDINT_SIGNED_MIN (64, 0l) +# define PTRDIFF_MAX _STDINT_MAX (1, 64, 0l) +# else +# define PTRDIFF_MIN _STDINT_SIGNED_MIN (32, 0) +# define PTRDIFF_MAX _STDINT_MAX (1, 32, 0) +# endif +# else +# define PTRDIFF_MIN \ + _STDINT_SIGNED_MIN (@BITSIZEOF_PTRDIFF_T@, 0@PTRDIFF_T_SUFFIX@) +# define PTRDIFF_MAX \ + _STDINT_MAX (1, @BITSIZEOF_PTRDIFF_T@, 0@PTRDIFF_T_SUFFIX@) +# endif + +/* sig_atomic_t limits */ +# undef SIG_ATOMIC_MIN +# undef SIG_ATOMIC_MAX +# if @HAVE_SIGNED_SIG_ATOMIC_T@ +# define SIG_ATOMIC_MIN \ + _STDINT_SIGNED_MIN (@BITSIZEOF_SIG_ATOMIC_T@, 0@SIG_ATOMIC_T_SUFFIX@) +# else +# define SIG_ATOMIC_MIN \ + _STDINT_UNSIGNED_MIN (@BITSIZEOF_SIG_ATOMIC_T@, 0@SIG_ATOMIC_T_SUFFIX@) +# endif +# define SIG_ATOMIC_MAX \ + _STDINT_MAX (@HAVE_SIGNED_SIG_ATOMIC_T@, @BITSIZEOF_SIG_ATOMIC_T@, \ + 0@SIG_ATOMIC_T_SUFFIX@) + + +/* size_t limit */ +# undef SIZE_MAX +# if @APPLE_UNIVERSAL_BUILD@ +# ifdef _LP64 +# define SIZE_MAX _STDINT_MAX (0, 64, 0ul) +# else +# define SIZE_MAX _STDINT_MAX (0, 32, 0ul) +# endif +# else +# define SIZE_MAX _STDINT_MAX (0, @BITSIZEOF_SIZE_T@, 0@SIZE_T_SUFFIX@) +# endif + +/* wchar_t limits */ +/* Get WCHAR_MIN, WCHAR_MAX. + This include is not on the top, above, because on OSF/1 4.0 we have a + sequence of nested includes + <wchar.h> -> <stdio.h> -> <getopt.h> -> <stdlib.h>, and the latter includes + <stdint.h> and assumes its types are already defined. */ +# if @HAVE_WCHAR_H@ && ! (defined WCHAR_MIN && defined WCHAR_MAX) +# define _GL_JUST_INCLUDE_SYSTEM_WCHAR_H +# include <wchar.h> +# undef _GL_JUST_INCLUDE_SYSTEM_WCHAR_H +# endif +# undef WCHAR_MIN +# undef WCHAR_MAX +# if @HAVE_SIGNED_WCHAR_T@ +# define WCHAR_MIN \ + _STDINT_SIGNED_MIN (@BITSIZEOF_WCHAR_T@, 0@WCHAR_T_SUFFIX@) +# else +# define WCHAR_MIN \ + _STDINT_UNSIGNED_MIN (@BITSIZEOF_WCHAR_T@, 0@WCHAR_T_SUFFIX@) +# endif +# define WCHAR_MAX \ + _STDINT_MAX (@HAVE_SIGNED_WCHAR_T@, @BITSIZEOF_WCHAR_T@, 0@WCHAR_T_SUFFIX@) + +/* wint_t limits */ +/* If gnulib's <wchar.h> or <wctype.h> overrides wint_t, @WINT_T_SUFFIX@ is not + accurate, therefore use the definitions from above. */ +# if !@GNULIBHEADERS_OVERRIDE_WINT_T@ +# undef WINT_MIN +# undef WINT_MAX +# if @HAVE_SIGNED_WINT_T@ +# define WINT_MIN \ + _STDINT_SIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@) +# else +# define WINT_MIN \ + _STDINT_UNSIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@) +# endif +# define WINT_MAX \ + _STDINT_MAX (@HAVE_SIGNED_WINT_T@, @BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@) +# endif + +/* 7.18.4. Macros for integer constants */ + +/* 7.18.4.1. Macros for minimum-width integer constants */ +/* According to ISO C 99 Technical Corrigendum 1 */ + +/* Here we assume a standard architecture where the hardware integer + types have 8, 16, 32, optionally 64 bits, and int is 32 bits. */ + +# undef INT8_C +# undef UINT8_C +# define INT8_C(x) x +# define UINT8_C(x) x + +# undef INT16_C +# undef UINT16_C +# define INT16_C(x) x +# define UINT16_C(x) x + +# undef INT32_C +# undef UINT32_C +# define INT32_C(x) x +# define UINT32_C(x) x ## U + +# undef INT64_C +# undef UINT64_C +# if LONG_MAX >> 31 >> 31 == 1 +# define INT64_C(x) x##L +# elif defined _MSC_VER +# define INT64_C(x) x##i64 +# else +# define INT64_C(x) x##LL +# endif +# if ULONG_MAX >> 31 >> 31 >> 1 == 1 +# define UINT64_C(x) x##UL +# elif defined _MSC_VER +# define UINT64_C(x) x##ui64 +# else +# define UINT64_C(x) x##ULL +# endif + +/* 7.18.4.2. Macros for greatest-width integer constants */ + +# ifndef INTMAX_C +# if LONG_MAX >> 30 == 1 +# define INTMAX_C(x) x##LL +# elif defined GL_INT64_T +# define INTMAX_C(x) INT64_C(x) +# else +# define INTMAX_C(x) x##L +# endif +# endif + +# ifndef UINTMAX_C +# if ULONG_MAX >> 31 == 1 +# define UINTMAX_C(x) x##ULL +# elif defined GL_UINT64_T +# define UINTMAX_C(x) UINT64_C(x) +# else +# define UINTMAX_C(x) x##UL +# endif +# endif + +#endif /* !@HAVE_C99_STDINT_H@ */ + +/* Macros specified by ISO/IEC TS 18661-1:2014. */ + +#if (!defined UINTMAX_WIDTH \ + && (defined _GNU_SOURCE || defined __STDC_WANT_IEC_60559_BFP_EXT__)) +# ifdef INT8_MAX +# define INT8_WIDTH _GL_INTEGER_WIDTH (INT8_MIN, INT8_MAX) +# endif +# ifdef UINT8_MAX +# define UINT8_WIDTH _GL_INTEGER_WIDTH (0, UINT8_MAX) +# endif +# ifdef INT16_MAX +# define INT16_WIDTH _GL_INTEGER_WIDTH (INT16_MIN, INT16_MAX) +# endif +# ifdef UINT16_MAX +# define UINT16_WIDTH _GL_INTEGER_WIDTH (0, UINT16_MAX) +# endif +# ifdef INT32_MAX +# define INT32_WIDTH _GL_INTEGER_WIDTH (INT32_MIN, INT32_MAX) +# endif +# ifdef UINT32_MAX +# define UINT32_WIDTH _GL_INTEGER_WIDTH (0, UINT32_MAX) +# endif +# ifdef INT64_MAX +# define INT64_WIDTH _GL_INTEGER_WIDTH (INT64_MIN, INT64_MAX) +# endif +# ifdef UINT64_MAX +# define UINT64_WIDTH _GL_INTEGER_WIDTH (0, UINT64_MAX) +# endif +# define INT_LEAST8_WIDTH _GL_INTEGER_WIDTH (INT_LEAST8_MIN, INT_LEAST8_MAX) +# define UINT_LEAST8_WIDTH _GL_INTEGER_WIDTH (0, UINT_LEAST8_MAX) +# define INT_LEAST16_WIDTH _GL_INTEGER_WIDTH (INT_LEAST16_MIN, INT_LEAST16_MAX) +# define UINT_LEAST16_WIDTH _GL_INTEGER_WIDTH (0, UINT_LEAST16_MAX) +# define INT_LEAST32_WIDTH _GL_INTEGER_WIDTH (INT_LEAST32_MIN, INT_LEAST32_MAX) +# define UINT_LEAST32_WIDTH _GL_INTEGER_WIDTH (0, UINT_LEAST32_MAX) +# define INT_LEAST64_WIDTH _GL_INTEGER_WIDTH (INT_LEAST64_MIN, INT_LEAST64_MAX) +# define UINT_LEAST64_WIDTH _GL_INTEGER_WIDTH (0, UINT_LEAST64_MAX) +# define INT_FAST8_WIDTH _GL_INTEGER_WIDTH (INT_FAST8_MIN, INT_FAST8_MAX) +# define UINT_FAST8_WIDTH _GL_INTEGER_WIDTH (0, UINT_FAST8_MAX) +# define INT_FAST16_WIDTH _GL_INTEGER_WIDTH (INT_FAST16_MIN, INT_FAST16_MAX) +# define UINT_FAST16_WIDTH _GL_INTEGER_WIDTH (0, UINT_FAST16_MAX) +# define INT_FAST32_WIDTH _GL_INTEGER_WIDTH (INT_FAST32_MIN, INT_FAST32_MAX) +# define UINT_FAST32_WIDTH _GL_INTEGER_WIDTH (0, UINT_FAST32_MAX) +# define INT_FAST64_WIDTH _GL_INTEGER_WIDTH (INT_FAST64_MIN, INT_FAST64_MAX) +# define UINT_FAST64_WIDTH _GL_INTEGER_WIDTH (0, UINT_FAST64_MAX) +# define INTPTR_WIDTH _GL_INTEGER_WIDTH (INTPTR_MIN, INTPTR_MAX) +# define UINTPTR_WIDTH _GL_INTEGER_WIDTH (0, UINTPTR_MAX) +# define INTMAX_WIDTH _GL_INTEGER_WIDTH (INTMAX_MIN, INTMAX_MAX) +# define UINTMAX_WIDTH _GL_INTEGER_WIDTH (0, UINTMAX_MAX) +# define PTRDIFF_WIDTH _GL_INTEGER_WIDTH (PTRDIFF_MIN, PTRDIFF_MAX) +# define SIZE_WIDTH _GL_INTEGER_WIDTH (0, SIZE_MAX) +# define WCHAR_WIDTH _GL_INTEGER_WIDTH (WCHAR_MIN, WCHAR_MAX) +# ifdef WINT_MAX +# define WINT_WIDTH _GL_INTEGER_WIDTH (WINT_MIN, WINT_MAX) +# endif +# ifdef SIG_ATOMIC_MAX +# define SIG_ATOMIC_WIDTH _GL_INTEGER_WIDTH (SIG_ATOMIC_MIN, SIG_ATOMIC_MAX) +# endif +#endif /* !WINT_WIDTH && (_GNU_SOURCE || __STDC_WANT_IEC_60559_BFP_EXT__) */ + +#endif /* _@GUARD_PREFIX@_STDINT_H */ +#endif /* !(defined __ANDROID__ && ...) */ +#endif /* !defined _@GUARD_PREFIX@_STDINT_H && !defined _GL_JUST_INCLUDE_SYSTEM_STDINT_H */ diff --git a/lib/unistring/sys_types.in.h b/lib/unistring/sys_types.in.h new file mode 100644 index 0000000..f397d62 --- /dev/null +++ b/lib/unistring/sys_types.in.h @@ -0,0 +1,115 @@ +/* Provide a more complete sys/types.h. + + Copyright (C) 2011-2021 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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, see <https://www.gnu.org/licenses/>. */ + +#if __GNUC__ >= 3 +@PRAGMA_SYSTEM_HEADER@ +#endif +@PRAGMA_COLUMNS@ + +#if defined _WIN32 && !defined __CYGWIN__ \ + && (defined __need_off_t || defined __need___off64_t \ + || defined __need_ssize_t || defined __need_time_t) + +/* Special invocation convention inside mingw header files. */ + +#@INCLUDE_NEXT@ @NEXT_SYS_TYPES_H@ + +#else +/* Normal invocation convention. */ + +#ifndef _@GUARD_PREFIX@_SYS_TYPES_H + +/* The include_next requires a split double-inclusion guard. */ +# define _GL_INCLUDING_SYS_TYPES_H +#@INCLUDE_NEXT@ @NEXT_SYS_TYPES_H@ +# undef _GL_INCLUDING_SYS_TYPES_H + +#ifndef _@GUARD_PREFIX@_SYS_TYPES_H +#define _@GUARD_PREFIX@_SYS_TYPES_H + +/* Override off_t if Large File Support is requested on native Windows. */ +#if @WINDOWS_64_BIT_OFF_T@ +/* Same as int64_t in <stdint.h>. */ +# if defined _MSC_VER +# define off_t __int64 +# else +# define off_t long long int +# endif +/* Indicator, for gnulib internal purposes. */ +# define _GL_WINDOWS_64_BIT_OFF_T 1 +#endif + +/* Override dev_t and ino_t if distinguishable inodes support is requested + on native Windows. */ +#if @WINDOWS_STAT_INODES@ + +# if @WINDOWS_STAT_INODES@ == 2 +/* Experimental, not useful in Windows 10. */ + +/* Define dev_t to a 64-bit type. */ +# if !defined GNULIB_defined_dev_t +typedef unsigned long long int rpl_dev_t; +# undef dev_t +# define dev_t rpl_dev_t +# define GNULIB_defined_dev_t 1 +# endif + +/* Define ino_t to a 128-bit type. */ +# if !defined GNULIB_defined_ino_t +/* MSVC does not have a 128-bit integer type. + GCC has a 128-bit integer type __int128, but only on 64-bit targets. */ +typedef struct { unsigned long long int _gl_ino[2]; } rpl_ino_t; +# undef ino_t +# define ino_t rpl_ino_t +# define GNULIB_defined_ino_t 1 +# endif + +# else /* @WINDOWS_STAT_INODES@ == 1 */ + +/* Define ino_t to a 64-bit type. */ +# if !defined GNULIB_defined_ino_t +typedef unsigned long long int rpl_ino_t; +# undef ino_t +# define ino_t rpl_ino_t +# define GNULIB_defined_ino_t 1 +# endif + +# endif + +/* Indicator, for gnulib internal purposes. */ +# define _GL_WINDOWS_STAT_INODES @WINDOWS_STAT_INODES@ + +#endif + +/* MSVC 9 defines size_t in <stddef.h>, not in <sys/types.h>. */ +/* But avoid namespace pollution on glibc systems. */ +#if (defined _WIN32 && ! defined __CYGWIN__) && ! defined __GLIBC__ +# include <stddef.h> +#endif + +#endif /* _@GUARD_PREFIX@_SYS_TYPES_H */ +#endif /* _@GUARD_PREFIX@_SYS_TYPES_H */ +#endif /* __need_XXX */ diff --git a/lib/unistring/unictype.in.h b/lib/unistring/unictype.in.h new file mode 100644 index 0000000..b520188 --- /dev/null +++ b/lib/unistring/unictype.in.h @@ -0,0 +1,1062 @@ +/* Unicode character classification and properties. + Copyright (C) 2002, 2005-2021 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#ifndef _UNICTYPE_H +#define _UNICTYPE_H + +#include "unitypes.h" + +/* Get bool. */ +#include <stdbool.h> + +/* Get size_t. */ +#include <stddef.h> + +#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 can only be used with the uc_is_general_category_withtable + function. */ +enum +{ + UC_CATEGORY_MASK_L = 0x0000001f, + UC_CATEGORY_MASK_LC = 0x00000007, + 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_LC; +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_CASED_LETTER UC_CATEGORY_LC +#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) + _UC_ATTRIBUTE_PURE; + +/* Return the long name of a general category. */ +extern const char * + uc_general_category_long_name (uc_general_category_t category) + _UC_ATTRIBUTE_PURE; + +/* Return the general category given by name, e.g. "Lu", or by long name, + e.g. "Uppercase Letter". */ +extern uc_general_category_t + uc_general_category_byname (const char *category_name) + _UC_ATTRIBUTE_PURE; + +/* Return the general category of a Unicode character. */ +extern uc_general_category_t + uc_general_category (ucs4_t uc) + _UC_ATTRIBUTE_PURE; + +/* Test whether a Unicode character belongs to a given category. + The CATEGORY argument can be the combination of several predefined + general categories. */ +extern bool + uc_is_general_category (ucs4_t uc, uc_general_category_t category) + _UC_ATTRIBUTE_PURE; +/* Likewise. This function uses a big table comprising all categories. */ +extern bool + uc_is_general_category_withtable (ucs4_t uc, uint32_t bitmask) + _UC_ATTRIBUTE_CONST; + +/* ========================================================================= */ + +/* 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_ATA = 214, /* Attached Above */ + 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) + _UC_ATTRIBUTE_CONST; + +/* Return the name of a canonical combining class. */ +extern const char * + uc_combining_class_name (int ccc) + _UC_ATTRIBUTE_CONST; + +/* Return the long name of a canonical combining class. */ +extern const char * + uc_combining_class_long_name (int ccc) + _UC_ATTRIBUTE_CONST; + +/* Return the canonical combining class given by name, e.g. "BL", or by long + name, e.g. "Below Left". */ +extern int + uc_combining_class_byname (const char *ccc_name) + _UC_ATTRIBUTE_PURE; + +/* ========================================================================= */ + +/* Field 4 of Unicode Character Database: Bidi class. + Before Unicode 4.0, this field was called "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 */ + UC_BIDI_LRI, /* Left-to-Right Isolate */ + UC_BIDI_RLI, /* Right-to-Left Isolate */ + UC_BIDI_FSI, /* First Strong Isolate */ + UC_BIDI_PDI /* Pop Directional Isolate */ +}; + +/* Return the name of a bidi class. */ +extern const char * + uc_bidi_class_name (int bidi_class) + _UC_ATTRIBUTE_CONST; +/* Same; obsolete function name. */ +extern const char * + uc_bidi_category_name (int category) + _UC_ATTRIBUTE_CONST; + +/* Return the long name of a bidi class. */ +extern const char * + uc_bidi_class_long_name (int bidi_class) + _UC_ATTRIBUTE_CONST; + +/* Return the bidi class given by name, e.g. "LRE", or by long name, e.g. + "Left-to-Right Embedding". */ +extern int + uc_bidi_class_byname (const char *bidi_class_name) + _UC_ATTRIBUTE_PURE; +/* Same; obsolete function name. */ +extern int + uc_bidi_category_byname (const char *category_name) + _UC_ATTRIBUTE_PURE; + +/* Return the bidi class of a Unicode character. */ +extern int + uc_bidi_class (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +/* Same; obsolete function name. */ +extern int + uc_bidi_category (ucs4_t uc) + _UC_ATTRIBUTE_CONST; + +/* Test whether a Unicode character belongs to a given bidi class. */ +extern bool + uc_is_bidi_class (ucs4_t uc, int bidi_class) + _UC_ATTRIBUTE_CONST; +/* Same; obsolete function name. */ +extern bool + uc_is_bidi_category (ucs4_t uc, int category) + _UC_ATTRIBUTE_CONST; + +/* ========================================================================= */ + +/* Field 5 of Unicode Character Database: Character decomposition mapping. + See "uninorm.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) + _UC_ATTRIBUTE_CONST; + +/* ========================================================================= */ + +/* Field 7 of Unicode Character Database: Digit value. */ + +/* Return the digit value of a Unicode character. */ +extern int + uc_digit_value (ucs4_t uc) + _UC_ATTRIBUTE_CONST; + +/* ========================================================================= */ + +/* 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) + _UC_ATTRIBUTE_CONST; + +/* ========================================================================= */ + +/* 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". */ + +/* ========================================================================= */ + +/* Field 2 of the file ArabicShaping.txt in the Unicode Character Database. */ + +/* Possible joining types. */ +enum +{ + UC_JOINING_TYPE_U, /* Non_Joining */ + UC_JOINING_TYPE_T, /* Transparent */ + UC_JOINING_TYPE_C, /* Join_Causing */ + UC_JOINING_TYPE_L, /* Left_Joining */ + UC_JOINING_TYPE_R, /* Right_Joining */ + UC_JOINING_TYPE_D /* Dual_Joining */ +}; + +/* Return the name of a joining type. */ +extern const char * + uc_joining_type_name (int joining_type) + _UC_ATTRIBUTE_CONST; + +/* Return the long name of a joining type. */ +extern const char * + uc_joining_type_long_name (int joining_type) + _UC_ATTRIBUTE_CONST; + +/* Return the joining type given by name, e.g. "D", or by long name, e.g. + "Dual Joining". */ +extern int + uc_joining_type_byname (const char *joining_type_name) + _UC_ATTRIBUTE_PURE; + +/* Return the joining type of a Unicode character. */ +extern int + uc_joining_type (ucs4_t uc) + _UC_ATTRIBUTE_CONST; + +/* ========================================================================= */ + +/* Field 3 of the file ArabicShaping.txt in the Unicode Character Database. */ + +/* Possible joining groups. + This enumeration may be extended in the future. */ +enum +{ + UC_JOINING_GROUP_NONE, /* No_Joining_Group */ + UC_JOINING_GROUP_AIN, /* Ain */ + UC_JOINING_GROUP_ALAPH, /* Alaph */ + UC_JOINING_GROUP_ALEF, /* Alef */ + UC_JOINING_GROUP_BEH, /* Beh */ + UC_JOINING_GROUP_BETH, /* Beth */ + UC_JOINING_GROUP_BURUSHASKI_YEH_BARREE, /* Burushaski_Yeh_Barree */ + UC_JOINING_GROUP_DAL, /* Dal */ + UC_JOINING_GROUP_DALATH_RISH, /* Dalath_Rish */ + UC_JOINING_GROUP_E, /* E */ + UC_JOINING_GROUP_FARSI_YEH, /* Farsi_Yeh */ + UC_JOINING_GROUP_FE, /* Fe */ + UC_JOINING_GROUP_FEH, /* Feh */ + UC_JOINING_GROUP_FINAL_SEMKATH, /* Final_Semkath */ + UC_JOINING_GROUP_GAF, /* Gaf */ + UC_JOINING_GROUP_GAMAL, /* Gamal */ + UC_JOINING_GROUP_HAH, /* Hah */ + UC_JOINING_GROUP_HE, /* He */ + UC_JOINING_GROUP_HEH, /* Heh */ + UC_JOINING_GROUP_HEH_GOAL, /* Heh_Goal */ + UC_JOINING_GROUP_HETH, /* Heth */ + UC_JOINING_GROUP_KAF, /* Kaf */ + UC_JOINING_GROUP_KAPH, /* Kaph */ + UC_JOINING_GROUP_KHAPH, /* Khaph */ + UC_JOINING_GROUP_KNOTTED_HEH, /* Knotted_Heh */ + UC_JOINING_GROUP_LAM, /* Lam */ + UC_JOINING_GROUP_LAMADH, /* Lamadh */ + UC_JOINING_GROUP_MEEM, /* Meem */ + UC_JOINING_GROUP_MIM, /* Mim */ + UC_JOINING_GROUP_NOON, /* Noon */ + UC_JOINING_GROUP_NUN, /* Nun */ + UC_JOINING_GROUP_NYA, /* Nya */ + UC_JOINING_GROUP_PE, /* Pe */ + UC_JOINING_GROUP_QAF, /* Qaf */ + UC_JOINING_GROUP_QAPH, /* Qaph */ + UC_JOINING_GROUP_REH, /* Reh */ + UC_JOINING_GROUP_REVERSED_PE, /* Reversed_Pe */ + UC_JOINING_GROUP_SAD, /* Sad */ + UC_JOINING_GROUP_SADHE, /* Sadhe */ + UC_JOINING_GROUP_SEEN, /* Seen */ + UC_JOINING_GROUP_SEMKATH, /* Semkath */ + UC_JOINING_GROUP_SHIN, /* Shin */ + UC_JOINING_GROUP_SWASH_KAF, /* Swash_Kaf */ + UC_JOINING_GROUP_SYRIAC_WAW, /* Syriac_Waw */ + UC_JOINING_GROUP_TAH, /* Tah */ + UC_JOINING_GROUP_TAW, /* Taw */ + UC_JOINING_GROUP_TEH_MARBUTA, /* Teh_Marbuta */ + UC_JOINING_GROUP_TEH_MARBUTA_GOAL, /* Teh_Marbuta_Goal */ + UC_JOINING_GROUP_TETH, /* Teth */ + UC_JOINING_GROUP_WAW, /* Waw */ + UC_JOINING_GROUP_YEH, /* Yeh */ + UC_JOINING_GROUP_YEH_BARREE, /* Yeh_Barree */ + UC_JOINING_GROUP_YEH_WITH_TAIL, /* Yeh_With_Tail */ + UC_JOINING_GROUP_YUDH, /* Yudh */ + UC_JOINING_GROUP_YUDH_HE, /* Yudh_He */ + UC_JOINING_GROUP_ZAIN, /* Zain */ + UC_JOINING_GROUP_ZHAIN, /* Zhain */ + UC_JOINING_GROUP_ROHINGYA_YEH, /* Rohingya_Yeh */ + UC_JOINING_GROUP_STRAIGHT_WAW, /* Straight_Waw */ + UC_JOINING_GROUP_MANICHAEAN_ALEPH, /* Manichaean_Aleph */ + UC_JOINING_GROUP_MANICHAEAN_BETH, /* Manichaean_Beth */ + UC_JOINING_GROUP_MANICHAEAN_GIMEL, /* Manichaean_Gimel */ + UC_JOINING_GROUP_MANICHAEAN_DALETH, /* Manichaean_Daleth */ + UC_JOINING_GROUP_MANICHAEAN_WAW, /* Manichaean_Waw */ + UC_JOINING_GROUP_MANICHAEAN_ZAYIN, /* Manichaean_Zayin */ + UC_JOINING_GROUP_MANICHAEAN_HETH, /* Manichaean_Heth */ + UC_JOINING_GROUP_MANICHAEAN_TETH, /* Manichaean_Teth */ + UC_JOINING_GROUP_MANICHAEAN_YODH, /* Manichaean_Yodh */ + UC_JOINING_GROUP_MANICHAEAN_KAPH, /* Manichaean_Kaph */ + UC_JOINING_GROUP_MANICHAEAN_LAMEDH, /* Manichaean_Lamedh */ + UC_JOINING_GROUP_MANICHAEAN_DHAMEDH, /* Manichaean_Dhamedh */ + UC_JOINING_GROUP_MANICHAEAN_THAMEDH, /* Manichaean_Thamedh */ + UC_JOINING_GROUP_MANICHAEAN_MEM, /* Manichaean_Mem */ + UC_JOINING_GROUP_MANICHAEAN_NUN, /* Manichaean_Nun */ + UC_JOINING_GROUP_MANICHAEAN_SAMEKH, /* Manichaean_Aleph */ + UC_JOINING_GROUP_MANICHAEAN_AYIN, /* Manichaean_Ayin */ + UC_JOINING_GROUP_MANICHAEAN_PE, /* Manichaean_Pe */ + UC_JOINING_GROUP_MANICHAEAN_SADHE, /* Manichaean_Sadhe */ + UC_JOINING_GROUP_MANICHAEAN_QOPH, /* Manichaean_Qoph */ + UC_JOINING_GROUP_MANICHAEAN_RESH, /* Manichaean_Resh */ + UC_JOINING_GROUP_MANICHAEAN_TAW, /* Manichaean_Taw */ + UC_JOINING_GROUP_MANICHAEAN_ONE, /* Manichaean_One */ + UC_JOINING_GROUP_MANICHAEAN_FIVE, /* Manichaean_Five */ + UC_JOINING_GROUP_MANICHAEAN_TEN, /* Manichaean_Ten */ + UC_JOINING_GROUP_MANICHAEAN_TWENTY, /* Manichaean_Twenty */ + UC_JOINING_GROUP_MANICHAEAN_HUNDRED, /* Manichaean_Hundred */ + UC_JOINING_GROUP_AFRICAN_FEH, /* African_Feh */ + UC_JOINING_GROUP_AFRICAN_QAF, /* African_Qaf */ + UC_JOINING_GROUP_AFRICAN_NOON /* African_Noon */ +}; + +/* Return the name of a joining group. */ +extern const char * + uc_joining_group_name (int joining_group) + _UC_ATTRIBUTE_CONST; + +/* Return the joining group given by name, e.g. "Teh_Marbuta". */ +extern int + uc_joining_group_byname (const char *joining_group_name) + _UC_ATTRIBUTE_PURE; + +/* Return the joining group of a Unicode character. */ +extern int + uc_joining_group (ucs4_t uc) + _UC_ATTRIBUTE_CONST; + +/* ========================================================================= */ + +/* 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_CASED; +extern const uc_property_t UC_PROPERTY_CASE_IGNORABLE; +extern const uc_property_t UC_PROPERTY_CHANGES_WHEN_LOWERCASED; +extern const uc_property_t UC_PROPERTY_CHANGES_WHEN_UPPERCASED; +extern const uc_property_t UC_PROPERTY_CHANGES_WHEN_TITLECASED; +extern const uc_property_t UC_PROPERTY_CHANGES_WHEN_CASEFOLDED; +extern const uc_property_t UC_PROPERTY_CHANGES_WHEN_CASEMAPPED; +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 property is valid. */ +#define uc_property_is_valid(property) ((property).test_fn != NULL) + +/* 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) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_alphabetic (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_other_alphabetic (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_not_a_character (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_default_ignorable_code_point (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_other_default_ignorable_code_point (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_deprecated (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_logical_order_exception (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_variation_selector (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_private_use (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_unassigned_code_value (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_uppercase (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_other_uppercase (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_lowercase (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_other_lowercase (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_titlecase (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_cased (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_case_ignorable (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_changes_when_lowercased (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_changes_when_uppercased (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_changes_when_titlecased (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_changes_when_casefolded (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_changes_when_casemapped (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_soft_dotted (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_id_start (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_other_id_start (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_id_continue (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_other_id_continue (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_xid_start (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_xid_continue (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_pattern_white_space (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_pattern_syntax (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_join_control (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_grapheme_base (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_grapheme_extend (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_other_grapheme_extend (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_grapheme_link (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_control (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_left_to_right (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_hebrew_right_to_left (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_arabic_right_to_left (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_european_digit (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_eur_num_separator (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_eur_num_terminator (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_arabic_digit (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_common_separator (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_block_separator (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_segment_separator (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_whitespace (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_non_spacing_mark (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_boundary_neutral (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_pdf (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_embedding_or_override (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_bidi_other_neutral (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_hex_digit (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_ascii_hex_digit (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_ideographic (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_unified_ideograph (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_radical (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_ids_binary_operator (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_ids_trinary_operator (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_zero_width (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_space (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_non_break (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_iso_control (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_format_control (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_dash (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_hyphen (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_punctuation (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_line_separator (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_paragraph_separator (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_quotation_mark (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_sentence_terminal (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_terminal_punctuation (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_currency_symbol (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_math (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_other_math (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_paired_punctuation (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_left_of_pair (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_combining (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_composite (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_decimal_digit (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_numeric (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_diacritic (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_extender (ucs4_t uc) + _UC_ATTRIBUTE_CONST; +extern bool uc_is_property_ignorable_control (ucs4_t uc) + _UC_ATTRIBUTE_CONST; + +/* ========================================================================= */ + +/* Subdivision of 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) + _UC_ATTRIBUTE_CONST; + +/* Return the script given by name, e.g. "HAN". */ +extern const uc_script_t * + uc_script_byname (const char *script_name) + _UC_ATTRIBUTE_PURE; + +/* Test whether a Unicode character belongs to a given script. */ +extern bool + uc_is_script (ucs4_t uc, const uc_script_t *script) + _UC_ATTRIBUTE_PURE; + +/* 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) + _UC_ATTRIBUTE_CONST; + +/* Test whether a Unicode character belongs to a given block. */ +extern bool + uc_is_block (ucs4_t uc, const uc_block_t *block) + _UC_ATTRIBUTE_PURE; + +/* 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) + _UC_ATTRIBUTE_CONST; + +/* Test whether a Unicode character is considered whitespace in Java. */ +extern bool + uc_is_java_whitespace (ucs4_t uc) + _UC_ATTRIBUTE_CONST; + +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) + _UC_ATTRIBUTE_CONST; + +/* Return the categorization of a Unicode character w.r.t. the Java + identifier syntax. */ +extern int + uc_java_ident_category (ucs4_t uc) + _UC_ATTRIBUTE_CONST; + +/* ========================================================================= */ + +/* Like ISO C <ctype.h> and <wctype.h>. 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) + _UC_ATTRIBUTE_CONST; + +/* 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) + _UC_ATTRIBUTE_CONST; + +/* Test for any control character. */ +extern bool + uc_is_cntrl (ucs4_t uc) + _UC_ATTRIBUTE_CONST; + +/* Test for any character that corresponds to a decimal-digit character. */ +extern bool + uc_is_digit (ucs4_t uc) + _UC_ATTRIBUTE_CONST; + +/* 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) + _UC_ATTRIBUTE_CONST; + +/* 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) + _UC_ATTRIBUTE_CONST; + +/* Test for any printing character. */ +extern bool + uc_is_print (ucs4_t uc) + _UC_ATTRIBUTE_CONST; + +/* 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) + _UC_ATTRIBUTE_CONST; + +/* 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) + _UC_ATTRIBUTE_CONST; + +/* 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) + _UC_ATTRIBUTE_CONST; + +/* Test for any character that corresponds to a hexadecimal-digit + character. */ +extern bool + uc_is_xdigit (ucs4_t uc) + _UC_ATTRIBUTE_CONST; + +/* 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) + _UC_ATTRIBUTE_CONST; + +/* ========================================================================= */ + +#ifdef __cplusplus +} +#endif + +#endif /* _UNICTYPE_H */ diff --git a/lib/unistring/unictype/bitmap.h b/lib/unistring/unictype/bitmap.h new file mode 100644 index 0000000..3fab59a --- /dev/null +++ b/lib/unistring/unictype/bitmap.h @@ -0,0 +1,57 @@ +/* Three-level bitmap lookup. + Copyright (C) 2000-2002, 2005-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2000-2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +static inline int bitmap_lookup (const void *table, ucs4_t uc); + +/* These values are currently hardcoded into gen-uni-tables.c, function + output_predicate(). */ +#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 unsigned int *) table)[lookup2 + index3]; + + return (lookup3 >> (uc & 0x1f)) & 1; + } + } + } + return 0; +} diff --git a/lib/unistring/unictype/categ_C.c b/lib/unistring/unictype/categ_C.c new file mode 100644 index 0000000..23e7caf --- /dev/null +++ b/lib/unistring/unictype/categ_C.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_C.h b/lib/unistring/unictype/categ_C.h new file mode 100644 index 0000000..34e4097 --- /dev/null +++ b/lib/unistring/unictype/categ_C.h @@ -0,0 +1,994 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[78 << 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, + -1, + 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, + -1, + -1, + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * 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, + 18 + 640 * sizeof (short) / sizeof (int) + 384, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 400, + 18 + 640 * sizeof (short) / sizeof (int) + 416, + 18 + 640 * sizeof (short) / sizeof (int) + 432, + 18 + 640 * sizeof (short) / sizeof (int) + 448, + -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) + 464, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 496, + 18 + 640 * sizeof (short) / sizeof (int) + 512, + 18 + 640 * sizeof (short) / sizeof (int) + 528, + 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) + 624, + 18 + 640 * sizeof (short) / sizeof (int) + 640, + 18 + 640 * sizeof (short) / sizeof (int) + 656, + 18 + 640 * sizeof (short) / sizeof (int) + 672, + 18 + 640 * sizeof (short) / sizeof (int) + 688, + 18 + 640 * sizeof (short) / sizeof (int) + 704, + 18 + 640 * sizeof (short) / sizeof (int) + 720, + 18 + 640 * sizeof (short) / sizeof (int) + 736, + 18 + 640 * sizeof (short) / sizeof (int) + 752, + 18 + 640 * sizeof (short) / sizeof (int) + 768, + 18 + 640 * sizeof (short) / sizeof (int) + 784, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 800, + 18 + 640 * sizeof (short) / sizeof (int) + 816, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 832, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / 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) + 848, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 864, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 880, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 896, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 912, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 928, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 944, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 960, + 18 + 640 * sizeof (short) / sizeof (int) + 976, + 18 + 640 * sizeof (short) / sizeof (int) + 992, + 18 + 640 * sizeof (short) / sizeof (int) + 1008, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 1024, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 1040, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 1056, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 1072, + 18 + 640 * sizeof (short) / sizeof (int) + 1088, + 18 + 640 * sizeof (short) / sizeof (int) + 1104, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 1120, + 18 + 640 * sizeof (short) / sizeof (int) + 1136, + 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) + 1152, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 1168, + 18 + 640 * sizeof (short) / sizeof (int) + 1184, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 1200, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / 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) + 1216, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 1232, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480 + }, + { + 0xFFFFFFFFU, 0x00000000U, 0x00000000U, 0x80000000U, + 0xFFFFFFFFU, 0x00002000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03000000U, + 0x0000280FU, 0x00000004U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00010000U, 0x01800000U, 0x00000001U, + 0x00011900U, 0x00000000U, 0x0000FF00U, 0xFFE0F800U, + 0x3000003FU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x20000000U, 0x00000000U, + 0x0000C000U, 0x00000000U, 0x00001800U, 0x00000000U, + 0x00000000U, 0xFFFC0000U, 0x00000000U, 0xF8000000U, + 0x00000000U, 0x8000C000U, 0xB0000000U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xC0200000U, 0x000FFFFFU, 0x00000004U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00066010U, 0x0C3A0200U, 0x4F7F8660U, 0xF0000030U, + 0x00067811U, 0x2C920200U, 0xA1FDC678U, 0xFFC0003FU, + 0x00044011U, 0x0C120200U, 0xFFFEC440U, 0xFDFC0030U, + 0x00066011U, 0x0C120200U, 0x4F3FC660U, 0xFF000030U, + 0x29C23813U, 0x3C0038E7U, 0xFF7EC238U, 0xF800003FU, + 0x00022010U, 0x1C000200U, 0xF89FC220U, 0x00FF0030U, + 0x00022010U, 0x0C100200U, 0xBF9FC220U, 0xFFF90030U, + 0x00022011U, 0x18000000U, 0x000F0220U, 0x00000030U, + 0x03800013U, 0xD0040000U, 0x00A07B80U, 0xFFE3003FU, + 0x00000001U, 0x78000000U, 0xF0000000U, 0xFFFFFFFFU, + 0x010FDA69U, 0xC4001351U, 0x0C00C0A0U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000100U, 0x0001E000U, + 0x01000000U, 0x20000000U, 0xF8002000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000DF40U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xC280C200U, 0x00000000U, + 0x0000C200U, 0x80C20000U, 0x008000C2U, 0x00000000U, + 0x00C20000U, 0x00000000U, 0x18000000U, 0xE0000000U, + 0xFC000000U, 0x00000000U, 0x00000000U, 0xC0C00000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xE0000000U, 0x00000000U, 0x00000000U, 0xFE000000U, + 0xFFE02000U, 0xFF800000U, 0xFFF00000U, 0xFFF22000U, + 0x00000000U, 0x00000000U, 0xC0000000U, 0xFC00FC00U, + 0xFC00C000U, 0x00000000U, 0x00000000U, 0xFF000000U, + 0x00000000U, 0x0000F800U, 0x00000000U, 0xFFC00000U, + 0x80000000U, 0xF000F000U, 0x0000000EU, 0xFFE0C000U, + 0x00000000U, 0x0000F000U, 0x3800FC00U, 0x00000000U, + 0x30000000U, 0x00000000U, 0x80000000U, 0x60000000U, + 0xFC00FC00U, 0x8000C000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x0000F000U, 0xE0000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0FF00000U, + 0x00000000U, 0x07000000U, 0x00001C00U, 0x00000000U, + 0xFFFFFE00U, 0xFFFFFFFFU, 0x0000FF00U, 0xFC800000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x07C00000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xC0C00000U, 0x00000000U, 0x5500C0C0U, 0xC0000000U, + 0x00000000U, 0x00200000U, 0x10300020U, 0x80230000U, + 0x0000F800U, 0x00007C00U, 0x00000000U, 0x000CFFFFU, + 0xE0008000U, 0x80000000U, 0x0000FFFFU, 0xFFFE0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000F000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0xFFFFFF80U, 0xFFFFF800U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00300000U, + 0x00C00000U, 0x1C000000U, 0xFFFC0200U, 0xFFFF0FFFU, + 0x00000000U, 0x00008000U, 0x80000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x01F00000U, + 0x00000000U, 0x0000DF40U, 0x00000000U, 0x7FFE7F00U, + 0xFF800000U, 0x80808080U, 0x80808080U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFE0U, 0xFFFFFFFFU, + 0x04000000U, 0x00000000U, 0x00000000U, 0xFFF00000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFC00000U, 0xF000FFFFU, + 0x00000000U, 0x00000000U, 0x00000001U, 0x00000000U, + 0x01800000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000001FU, 0x0001C000U, 0x00000000U, 0x00000000U, + 0x00008000U, 0xF8000000U, 0x00000000U, 0x0000FFF0U, + 0x80000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFC00000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFC00000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000E000U, 0x00000000U, 0x0000FF80U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFF000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFF000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFF008000U, 0xFFFFFFFFU, 0x007FFFFFU, + 0x00000000U, 0xFC00F000U, 0x00000000U, 0xFF000000U, + 0x00000000U, 0x00000000U, 0xFC003FC0U, 0xC0000000U, + 0x00000000U, 0x00000000U, 0x7FF00000U, 0xE0000000U, + 0x00000000U, 0x00000000U, 0x3C004000U, 0x80000000U, + 0x00000000U, 0xFF800000U, 0x0C00C000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x07FFFFF8U, 0xFF800000U, + 0xFF818181U, 0x00008080U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFC00C000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x0000FFF0U, 0x00000780U, 0xF0000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000C000U, + 0x00000000U, 0x00000000U, 0xFC000000U, 0xFFFFFFFFU, + 0x1F07FF80U, 0xA0800000U, 0x00000024U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0007FFFCU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000FFFFU, 0x00000000U, + 0x00030000U, 0x00000000U, 0xFFFFFF00U, 0xC000FFFFU, + 0xFC000000U, 0x00000000U, 0x00080000U, 0x0020F080U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xE0000000U, + 0x00000001U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x80000000U, 0xE3030303U, 0xCFFF8080U, + 0x00001000U, 0x48000080U, 0xC000C000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0xF8000000U, + 0x00000078U, 0x00700000U, 0x00000000U, 0x00000000U, + 0xF0008000U, 0xFFFFFFFEU, 0x0000FFFFU, 0xC0000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xE0000000U, 0x00000000U, 0xFFFE0000U, 0xF0000000U, + 0x00000000U, 0x0000FFF0U, 0x0000F800U, 0xF8000000U, + 0x40000000U, 0x00000000U, 0xFFC000F0U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xC0000000U, 0x0000FC00U, 0x00F00000U, 0xF0000000U, + 0x00000000U, 0x0000FF00U, 0x00000000U, 0xFFFF7FF0U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFF800000U, 0xFFC00000U, 0xFFFFFF00U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x000002C0U, 0x6E400000U, 0x00400000U, 0x00000000U, + 0x80000000U, 0xFFFF007FU, 0xFFFFFFFFU, 0x07C80000U, + 0x70000000U, 0x7C000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x0F000000U, 0x00030000U, 0x00000000U, + 0x01100F90U, 0x78F00000U, 0xFE00FF00U, 0x00000000U, + 0x00000000U, 0xFFFFFFFFU, 0x00000000U, 0xFF800780U, + 0x00000000U, 0x01C00000U, 0x00C00000U, 0x00F80000U, + 0xE1FC0000U, 0xFFFF01FFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xFFFFFE00U, 0xFFFFFFFFU, + 0x00000000U, 0xFFF80000U, 0x00000000U, 0x03F80000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x80000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x0003C000U, 0x7FFF0000U, + 0x00000000U, 0x20000000U, 0x0000FFFCU, 0xFC00FE00U, + 0x00000000U, 0x00200000U, 0x0000FFF0U, 0xFF800000U, + 0x00000000U, 0x00000000U, 0x0000C000U, 0xFFE00001U, + 0x00040000U, 0x80000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x40004280U, 0x0000FC00U, 0x00000000U, 0xFC00F800U, + 0x00066010U, 0x0C120200U, 0x1F7EC660U, 0xFFE0E030U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xD4000000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xFC00FF00U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00C00000U, 0xC0000000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xFC00FFE0U, 0xFFFFE000U, + 0x00000000U, 0xFF000000U, 0xFFFFFC00U, 0xFFFFFFFFU, + 0x1C000000U, 0x0000F000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x00000000U, 0x00000000U, 0x7FF80000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000000U, 0xFE000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000200U, 0x00800000U, 0x0000FFC0U, 0x0000E000U, + 0x00030000U, 0xFF800100U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFC000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFE08000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFF0U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0xFFFF8000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xFFFFFF80U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0xFE000000U, 0x80000000U, 0xFFFF3C00U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU, 0xFFC0C000U, + 0x00000000U, 0x00000000U, 0x0400FFC0U, 0x1F000004U, + 0xFFFF0000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x0000FFE0U, 0x80000000U, + 0x00007FFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFEU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFFE000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFF80000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFCU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0xE000F800U, + 0x0C00FE00U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFC00000U, + 0x00000000U, 0x00000180U, 0x00000000U, 0x07F80000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFFFE00U, + 0x00000000U, 0x00000000U, 0xFFFFFFC0U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xFF800000U, 0xFFFC0000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00200000U, 0x00000000U, + 0x20000000U, 0x1400219BU, 0x00000010U, 0x00000000U, + 0x20201840U, 0x84000000U, 0x000203A0U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x000000C0U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00003000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x07FFF000U, 0xFFFF0001U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x06000080U, 0xFFFFF824U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFF800060U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x3C00F800U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000010U, 0xF5080169U, 0x5569157BU, 0xA1080869U, + 0xF0000400U, 0xF0000411U, 0xFFFFFFFFU, 0xFFFCFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x0000F000U, 0x00000000U, 0x00000000U, + 0xFFF00000U, 0x00018000U, 0x00010001U, 0xFFC00000U, + 0x0000E000U, 0x00008000U, 0x00000000U, 0x0000F000U, + 0x00000000U, 0xFFFFE000U, 0xFFFFFFFFU, 0x0000003FU, + 0x0000FFF8U, 0xF0000000U, 0xFFFCFE00U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFF80000U, 0xFF80E000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFF00000U, + 0x00000000U, 0x00000000U, 0xFFE00000U, 0xFFFFFFFFU, + 0x0000F000U, 0x00000000U, 0xFC00FF00U, 0x00000000U, + 0x0000FF00U, 0xFFFFC000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x8000FFFFU, 0x8006FF00U, 0x8000F000U, 0xFFFFFFFFU, + 0xFFFC0000U, 0xFFFFFFFFU, 0xFFFFFFFEU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFF800000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFE00000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xC0000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFCU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xC0000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFF0000U + } +}; diff --git a/lib/unistring/unictype/categ_Cc.c b/lib/unistring/unictype/categ_Cc.c new file mode 100644 index 0000000..b2f4c9b --- /dev/null +++ b/lib/unistring/unictype/categ_Cc.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Cc.h b/lib/unistring/unictype/categ_Cc.h new file mode 100644 index 0000000..1573450 --- /dev/null +++ b/lib/unistring/unictype/categ_Cc.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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 + }, + { + 0xFFFFFFFFU, 0x00000000U, 0x00000000U, 0x80000000U, + 0xFFFFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Cf.c b/lib/unistring/unictype/categ_Cf.c new file mode 100644 index 0000000..caa7836 --- /dev/null +++ b/lib/unistring/unictype/categ_Cf.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Cf.h b/lib/unistring/unictype/categ_Cf.h new file mode 100644 index 0000000..76deea9 --- /dev/null +++ b/lib/unistring/unictype/categ_Cf.h @@ -0,0 +1,464 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[10 << 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, + 16 + 384 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 48, + -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, + 16 + 384 * sizeof (short) / sizeof (int) + 80, + -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, + 16 + 384 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * 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, + 16 + 384 * 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, + -1, + -1 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00002000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x1000003FU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x20000000U, 0x00000000U, + 0x00008000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000004U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00004000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000F800U, 0x00007C00U, 0x00000000U, 0x0000FFDFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0E000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x20000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x0000000FU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x07F80000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000002U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Cn.c b/lib/unistring/unictype/categ_Cn.c new file mode 100644 index 0000000..57ceb96 --- /dev/null +++ b/lib/unistring/unictype/categ_Cn.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Cn.h b/lib/unistring/unictype/categ_Cn.h new file mode 100644 index 0000000..80849cc --- /dev/null +++ b/lib/unistring/unictype/categ_Cn.h @@ -0,0 +1,1118 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[77 << 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, + -1, + 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, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 272, + 18 + 768 * sizeof (short) / sizeof (int) + 288, + 18 + 768 * sizeof (short) / sizeof (int) + 304, + 18 + 768 * sizeof (short) / sizeof (int) + 320, + 18 + 768 * sizeof (short) / sizeof (int) + 336, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 768 * 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, + 18 + 768 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 384, + 18 + 768 * sizeof (short) / sizeof (int) + 400, + 18 + 768 * sizeof (short) / sizeof (int) + 416, + 18 + 768 * sizeof (short) / sizeof (int) + 432, + -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) + 448, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 480, + 18 + 768 * sizeof (short) / sizeof (int) + 496, + 18 + 768 * sizeof (short) / sizeof (int) + 512, + 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) + 592, + 18 + 768 * sizeof (short) / sizeof (int) + 608, + 18 + 768 * sizeof (short) / sizeof (int) + 624, + 18 + 768 * sizeof (short) / sizeof (int) + 640, + 18 + 768 * sizeof (short) / sizeof (int) + 656, + 18 + 768 * sizeof (short) / sizeof (int) + 672, + 18 + 768 * sizeof (short) / sizeof (int) + 688, + 18 + 768 * sizeof (short) / sizeof (int) + 704, + 18 + 768 * sizeof (short) / sizeof (int) + 720, + 18 + 768 * sizeof (short) / sizeof (int) + 736, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 768, + 18 + 768 * sizeof (short) / sizeof (int) + 784, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 800, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 816, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 832, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 848, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 864, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 880, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 896, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 912, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 928, + 18 + 768 * sizeof (short) / sizeof (int) + 944, + 18 + 768 * sizeof (short) / sizeof (int) + 960, + 18 + 768 * sizeof (short) / sizeof (int) + 976, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 992, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 1008, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 1024, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 1040, + 18 + 768 * sizeof (short) / sizeof (int) + 1056, + 18 + 768 * sizeof (short) / sizeof (int) + 1072, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 1088, + 18 + 768 * sizeof (short) / sizeof (int) + 1104, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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) + 1120, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 1136, + 18 + 768 * sizeof (short) / sizeof (int) + 1152, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 1168, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 1184, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 1200, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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) + 1216 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03000000U, + 0x0000280FU, 0x00000004U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00010000U, 0x01800000U, 0x00000001U, + 0x00011900U, 0x00000000U, 0x0000FF00U, 0xFFE0F800U, + 0x20000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00004000U, 0x00000000U, 0x00001800U, 0x00000000U, + 0x00000000U, 0xFFFC0000U, 0x00000000U, 0xF8000000U, + 0x00000000U, 0x8000C000U, 0xB0000000U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xC0200000U, 0x000FFFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00066010U, 0x0C3A0200U, 0x4F7F8660U, 0xF0000030U, + 0x00067811U, 0x2C920200U, 0xA1FDC678U, 0xFFC0003FU, + 0x00044011U, 0x0C120200U, 0xFFFEC440U, 0xFDFC0030U, + 0x00066011U, 0x0C120200U, 0x4F3FC660U, 0xFF000030U, + 0x29C23813U, 0x3C0038E7U, 0xFF7EC238U, 0xF800003FU, + 0x00022010U, 0x1C000200U, 0xF89FC220U, 0x00FF0030U, + 0x00022010U, 0x0C100200U, 0xBF9FC220U, 0xFFF90030U, + 0x00022011U, 0x18000000U, 0x000F0220U, 0x00000030U, + 0x03800013U, 0xD0040000U, 0x00A07B80U, 0xFFE3003FU, + 0x00000001U, 0x78000000U, 0xF0000000U, 0xFFFFFFFFU, + 0x010FDA69U, 0xC4001351U, 0x0C00C0A0U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000100U, 0x0001E000U, + 0x01000000U, 0x20000000U, 0xF8002000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000DF40U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xC280C200U, 0x00000000U, + 0x0000C200U, 0x80C20000U, 0x008000C2U, 0x00000000U, + 0x00C20000U, 0x00000000U, 0x18000000U, 0xE0000000U, + 0xFC000000U, 0x00000000U, 0x00000000U, 0xC0C00000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xE0000000U, 0x00000000U, 0x00000000U, 0xFE000000U, + 0xFFE02000U, 0xFF800000U, 0xFFF00000U, 0xFFF22000U, + 0x00000000U, 0x00000000U, 0xC0000000U, 0xFC00FC00U, + 0xFC008000U, 0x00000000U, 0x00000000U, 0xFF000000U, + 0x00000000U, 0x0000F800U, 0x00000000U, 0xFFC00000U, + 0x80000000U, 0xF000F000U, 0x0000000EU, 0xFFE0C000U, + 0x00000000U, 0x0000F000U, 0x3800FC00U, 0x00000000U, + 0x30000000U, 0x00000000U, 0x80000000U, 0x60000000U, + 0xFC00FC00U, 0x8000C000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x0000F000U, 0xE0000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0FF00000U, + 0x00000000U, 0x07000000U, 0x00001C00U, 0x00000000U, + 0xFFFFFE00U, 0xFFFFFFFFU, 0x0000FF00U, 0xFC800000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x07C00000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xC0C00000U, 0x00000000U, 0x5500C0C0U, 0xC0000000U, + 0x00000000U, 0x00200000U, 0x10300020U, 0x80230000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000C0020U, + 0xE0008000U, 0x80000000U, 0x0000FFFFU, 0xFFFE0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000F000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0xFFFFFF80U, 0xFFFFF800U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00300000U, + 0x00C00000U, 0x1C000000U, 0xFFFC0200U, 0xFFFF0FFFU, + 0x00000000U, 0x00008000U, 0x80000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x01F00000U, + 0x00000000U, 0x0000DF40U, 0x00000000U, 0x7FFE7F00U, + 0xFF800000U, 0x80808080U, 0x80808080U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFE0U, 0xFFFFFFFFU, + 0x04000000U, 0x00000000U, 0x00000000U, 0xFFF00000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFC00000U, 0xF000FFFFU, + 0x00000000U, 0x00000000U, 0x00000001U, 0x00000000U, + 0x01800000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000001FU, 0x0001C000U, 0x00000000U, 0x00000000U, + 0x00008000U, 0xF8000000U, 0x00000000U, 0x0000FFF0U, + 0x80000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFC00000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFC00000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000E000U, 0x00000000U, 0x0000FF80U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFF000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFF000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFF008000U, 0xFFFFFFFFU, 0x007FFFFFU, + 0x00000000U, 0xFC00F000U, 0x00000000U, 0xFF000000U, + 0x00000000U, 0x00000000U, 0xFC003FC0U, 0xC0000000U, + 0x00000000U, 0x00000000U, 0x7FF00000U, 0xE0000000U, + 0x00000000U, 0x00000000U, 0x3C004000U, 0x80000000U, + 0x00000000U, 0xFF800000U, 0x0C00C000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x07FFFFF8U, 0xFF800000U, + 0xFF818181U, 0x00008080U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFC00C000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x0000FFF0U, 0x00000780U, 0xF0000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000C000U, + 0x00000000U, 0x00000000U, 0xFC000000U, 0xFFFFFFFFU, + 0x1F07FF80U, 0xA0800000U, 0x00000024U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0007FFFCU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000FFFFU, 0x00000000U, + 0x00030000U, 0x00000000U, 0xFFFFFF00U, 0xC000FFFFU, + 0xFC000000U, 0x00000000U, 0x00080000U, 0x0020F080U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x60000000U, + 0x00000001U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x80000000U, 0xE3030303U, 0xC1FF8080U, + 0x00001000U, 0x48000080U, 0xC000C000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0xF8000000U, + 0x00000078U, 0x00700000U, 0x00000000U, 0x00000000U, + 0xF0008000U, 0xFFFFFFFEU, 0x0000FFFFU, 0xC0000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xE0000000U, 0x00000000U, 0xFFFE0000U, 0xF0000000U, + 0x00000000U, 0x0000FFF0U, 0x0000F800U, 0xF8000000U, + 0x40000000U, 0x00000000U, 0xFFC000F0U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xC0000000U, 0x0000FC00U, 0x00F00000U, 0xF0000000U, + 0x00000000U, 0x0000FF00U, 0x00000000U, 0xFFFF7FF0U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFF800000U, 0xFFC00000U, 0xFFFFFF00U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x000002C0U, 0x6E400000U, 0x00400000U, 0x00000000U, + 0x80000000U, 0xFFFF007FU, 0xFFFFFFFFU, 0x07C80000U, + 0x70000000U, 0x7C000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x0F000000U, 0x00030000U, 0x00000000U, + 0x01100F90U, 0x78F00000U, 0xFE00FF00U, 0x00000000U, + 0x00000000U, 0xFFFFFFFFU, 0x00000000U, 0xFF800780U, + 0x00000000U, 0x01C00000U, 0x00C00000U, 0x00F80000U, + 0xE1FC0000U, 0xFFFF01FFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xFFFFFE00U, 0xFFFFFFFFU, + 0x00000000U, 0xFFF80000U, 0x00000000U, 0x03F80000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x80000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x0003C000U, 0x7FFF0000U, + 0x00000000U, 0x00000000U, 0x0000FFFCU, 0xFC00FE00U, + 0x00000000U, 0x00200000U, 0x0000FFF0U, 0xFF800000U, + 0x00000000U, 0x00000000U, 0x0000C000U, 0xFFE00001U, + 0x00040000U, 0x80000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x40004280U, 0x0000FC00U, 0x00000000U, 0xFC00F800U, + 0x00066010U, 0x0C120200U, 0x1F7EC660U, 0xFFE0E030U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xD4000000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xFC00FF00U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00C00000U, 0xC0000000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xFC00FFE0U, 0xFFFFE000U, + 0x00000000U, 0xFF000000U, 0xFFFFFC00U, 0xFFFFFFFFU, + 0x1C000000U, 0x0000F000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x00000000U, 0x00000000U, 0x7FF80000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000000U, 0xFE000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000200U, 0x00800000U, 0x0000FFC0U, 0x0000E000U, + 0x00030000U, 0xFF800100U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFC000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFE08000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFF0U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0xFFFF8000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xFFFFFF80U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0xFE000000U, 0x80000000U, 0xFFFF3C00U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU, 0xFFC0C000U, + 0x00000000U, 0x00000000U, 0x0400FFC0U, 0x1F000004U, + 0xFFFF0000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x0000FFE0U, 0x80000000U, + 0x00007FFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFEU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFFE000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFF80000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFCU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0xE000F800U, + 0x0C00FE00U, 0xFFFFFFF0U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFC00000U, + 0x00000000U, 0x00000180U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFFFE00U, + 0x00000000U, 0x00000000U, 0xFFFFFFC0U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0xFF800000U, 0xFFFC0000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00200000U, 0x00000000U, + 0x20000000U, 0x1400219BU, 0x00000010U, 0x00000000U, + 0x20201840U, 0x84000000U, 0x000203A0U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x000000C0U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00003000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x07FFF000U, 0xFFFF0001U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x06000080U, 0xFFFFF824U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFF800060U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x3C00F800U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000010U, 0xF5080169U, 0x5569157BU, 0xA1080869U, + 0xF0000400U, 0xF0000411U, 0xFFFFFFFFU, 0xFFFCFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x0000F000U, 0x00000000U, 0x00000000U, + 0xFFF00000U, 0x00018000U, 0x00010001U, 0xFFC00000U, + 0x0000E000U, 0x00008000U, 0x00000000U, 0x0000F000U, + 0x00000000U, 0xFFFFE000U, 0xFFFFFFFFU, 0x0000003FU, + 0x0000FFF8U, 0xF0000000U, 0xFFFCFE00U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFF80000U, 0xFF80E000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFF00000U, + 0x00000000U, 0x00000000U, 0xFFE00000U, 0xFFFFFFFFU, + 0x0000F000U, 0x00000000U, 0xFC00FF00U, 0x00000000U, + 0x0000FF00U, 0xFFFFC000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x8000FFFFU, 0x8006FF00U, 0x8000F000U, 0xFFFFFFFFU, + 0xFFFC0000U, 0xFFFFFFFFU, 0xFFFFFFFEU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFF800000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFE00000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xC0000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFCU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xC0000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFDU, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xC0000000U + } +}; diff --git a/lib/unistring/unictype/categ_Co.c b/lib/unistring/unictype/categ_Co.c new file mode 100644 index 0000000..7f90e3c --- /dev/null +++ b/lib/unistring/unictype/categ_Co.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Co.h b/lib/unistring/unictype/categ_Co.h new file mode 100644 index 0000000..10d81e2 --- /dev/null +++ b/lib/unistring/unictype/categ_Co.h @@ -0,0 +1,310 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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 + }, + { + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x3FFFFFFFU + } +}; diff --git a/lib/unistring/unictype/categ_Cs.c b/lib/unistring/unictype/categ_Cs.c new file mode 100644 index 0000000..5c7b4d8 --- /dev/null +++ b/lib/unistring/unictype/categ_Cs.c @@ -0,0 +1,39 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Cs.h b/lib/unistring/unictype/categ_Cs.h new file mode 100644 index 0000000..478b157 --- /dev/null +++ b/lib/unistring/unictype/categ_Cs.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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 + }, + { + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU + } +}; diff --git a/lib/unistring/unictype/categ_L.c b/lib/unistring/unictype/categ_L.c new file mode 100644 index 0000000..827fdcf --- /dev/null +++ b/lib/unistring/unictype/categ_L.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_L.h b/lib/unistring/unictype/categ_L.h new file mode 100644 index 0000000..97c0b57 --- /dev/null +++ b/lib/unistring/unictype/categ_L.h @@ -0,0 +1,672 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[65 << 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, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 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, + 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) + 432, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 448, + 4 + 384 * sizeof (short) / sizeof (int) + 464, + 4 + 384 * sizeof (short) / sizeof (int) + 480, + 4 + 384 * sizeof (short) / sizeof (int) + 496, + 4 + 384 * sizeof (short) / sizeof (int) + 512, + 4 + 384 * sizeof (short) / sizeof (int) + 528, + 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, + 4 + 384 * sizeof (short) / sizeof (int) + 656, + 4 + 384 * sizeof (short) / sizeof (int) + 672, + 4 + 384 * sizeof (short) / sizeof (int) + 688, + 4 + 384 * sizeof (short) / sizeof (int) + 704, + 4 + 384 * sizeof (short) / sizeof (int) + 720, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 736, + 4 + 384 * sizeof (short) / sizeof (int) + 752, + -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) + 768, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 784, + -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) + 800, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 816, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 832, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 848, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 864, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 880, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 896, + 4 + 384 * sizeof (short) / sizeof (int) + 912, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 928, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 944, + -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) + 960, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 976, + 4 + 384 * sizeof (short) / sizeof (int) + 992, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 1008, + -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) + 1024, + -1, + -1 + }, + { + 0x00000000U, 0x00000000U, 0x07FFFFFEU, 0x07FFFFFEU, + 0x00000000U, 0x04200400U, 0xFF7FFFFFU, 0xFF7FFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0003FFC3U, 0x0000501FU, + 0x00000000U, 0x00000000U, 0x00000000U, 0xBCDF0000U, + 0xFFFFD740U, 0xFFFFFFFBU, 0xFFFFFFFFU, 0xFFBFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFC03U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFEFFFFU, 0x027FFFFFU, 0xFFFFFFFEU, + 0x000000FFU, 0x00000000U, 0xFFFF0000U, 0x000707FFU, + 0x00000000U, 0xFFFFFFFFU, 0x000007FFU, 0xFFFEC000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x002FFFFFU, 0x9C00C060U, + 0xFFFD0000U, 0x0000FFFFU, 0xFFFFE000U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x0002003FU, 0xFFFFFC00U, 0x043007FFU, + 0x043FFFFFU, 0x00000110U, 0x01FFFFFFU, 0x00000000U, + 0x00000000U, 0x3FDFFFFFU, 0x00000000U, 0x00000000U, + 0xFFFFFFF0U, 0x23FFFFFFU, 0xFF010000U, 0xFFFE0003U, + 0xFFF99FE1U, 0x23C5FDFFU, 0xB0004000U, 0x00030003U, + 0xFFF987E0U, 0x036DFDFFU, 0x5E000000U, 0x001C0000U, + 0xFFFBBFE0U, 0x23EDFDFFU, 0x00010000U, 0x02000003U, + 0xFFF99FE0U, 0x23EDFDFFU, 0xB0000000U, 0x00020003U, + 0xD63DC7E8U, 0x03FFC718U, 0x00010000U, 0x00000000U, + 0xFFFDDFE0U, 0x23FFFDFFU, 0x07000000U, 0x00000003U, + 0xFFFDDFE1U, 0x23EFFDFFU, 0x40000000U, 0x00060003U, + 0xFFFDDFE0U, 0x27FFFFFFU, 0x80704000U, 0xFC000003U, + 0xFC7FFFE0U, 0x2FFBFFFFU, 0x0000007FU, 0x00000000U, + 0xFFFFFFFEU, 0x000DFFFFU, 0x0000007FU, 0x00000000U, + 0xFEF02596U, 0x200DECAEU, 0xF000005FU, 0x00000000U, + 0x00000001U, 0x00000000U, 0xFFFFFEFFU, 0x00001FFFU, + 0x00001F00U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x800007FFU, 0x3C3F0000U, 0xFFE1C062U, + 0x00004003U, 0xFFFFFFFFU, 0xFFFF20BFU, 0xF7FFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x3D7F3DFFU, 0xFFFFFFFFU, + 0xFFFF3DFFU, 0x7F3DFFFFU, 0xFF7FFF3DU, 0xFFFFFFFFU, + 0xFF3DFFFFU, 0xFFFFFFFFU, 0x07FFFFFFU, 0x00000000U, + 0x0000FFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x3F3FFFFFU, + 0xFFFFFFFEU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFF9FFFU, + 0x07FFFFFEU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x01FE07FFU, + 0x0003DFFFU, 0x0003FFFFU, 0x0003FFFFU, 0x0001DFFFU, + 0xFFFFFFFFU, 0x000FFFFFU, 0x10800000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00FFFFFFU, + 0xFFFFFF9FU, 0xFFFF05FFU, 0xFFFFFFFFU, 0x003FFFFFU, + 0x7FFFFFFFU, 0x00000000U, 0xFFFF0000U, 0x001F3FFFU, + 0xFFFFFFFFU, 0xFFFF0FFFU, 0x000003FFU, 0x00000000U, + 0x007FFFFFU, 0xFFFFFFFFU, 0x001FFFFFU, 0x00000000U, + 0x00000000U, 0x00000080U, 0x00000000U, 0x00000000U, + 0xFFFFFFE0U, 0x000FFFFFU, 0x00000FE0U, 0x00000000U, + 0xFFFFFFF8U, 0xFC00C001U, 0xFFFFFFFFU, 0x0000003FU, + 0xFFFFFFFFU, 0x0000000FU, 0xFC00E000U, 0x3FFFFFFFU, + 0x000001FFU, 0x00000000U, 0x00000000U, 0x0063DE00U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x3F3FFFFFU, 0xFFFFFFFFU, 0xAAFF3F3FU, 0x3FFFFFFFU, + 0xFFFFFFFFU, 0x5FDFFFFFU, 0x0FCF1FDCU, 0x1FDC1FFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80020000U, + 0x1FFF0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x3E2FFC84U, 0xF3FFBD50U, 0x000043E0U, 0x00000000U, + 0x00000018U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFF7FFFU, 0x7FFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000C781FU, + 0xFFFFFFFFU, 0xFFFF20BFU, 0xFFFFFFFFU, 0x000080FFU, + 0x007FFFFFU, 0x7F7F7F7FU, 0x7F7F7F7FU, 0x00000000U, + 0x00000000U, 0x00008000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000060U, 0x183E0000U, 0xFFFFFFFEU, 0xFFFFFFFFU, + 0xE07FFFFFU, 0xFFFFFFFEU, 0xFFFFFFFFU, 0xF7FFFFFFU, + 0xFFFFFFE0U, 0xFFFE3FFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00007FFFU, 0x07FFFFFFU, 0x00000000U, 0xFFFF0000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x003FFFFFU, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x003FFFFFU, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00001FFFU, 0x00000000U, 0xFFFF0000U, 0x3FFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFF1FFFU, 0x00000C00U, 0xFFFFFFFFU, 0x80007FFFU, + 0x3FFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000003FU, + 0xFF800000U, 0xFFFFFFFCU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFF9FFU, 0x00FF7FFFU, 0x00000000U, 0xFF800000U, + 0xFFFFF7BBU, 0x00000007U, 0xFFFFFFFFU, 0x000FFFFFU, + 0xFFFFFFFCU, 0x000FFFFFU, 0x00000000U, 0x28FC0000U, + 0xFFFFFC00U, 0xFFFF003FU, 0x0000007FU, 0x1FFFFFFFU, + 0xFFFFFFF0U, 0x0007FFFFU, 0x00008000U, 0x7C00FFDFU, + 0xFFFFFFFFU, 0x000001FFU, 0x00000FF7U, 0xC47FFFFFU, + 0xFFFFFFFFU, 0x3E62FFFFU, 0x38000005U, 0x001C07FFU, + 0x007E7E7EU, 0xFFFF7F7FU, 0xF7FFFFFFU, 0xFFFF003FU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000007U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFF000FU, 0xFFFFF87FU, 0x0FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFF3FFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x03FFFFFFU, 0x00000000U, + 0xA0F8007FU, 0x5F7FFDFFU, 0xFFFFFFDBU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x0003FFFFU, 0xFFF80000U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x3FFFFFFFU, 0xFFFF0000U, 0xFFFFFFFFU, + 0xFFFCFFFFU, 0xFFFFFFFFU, 0x000000FFU, 0x0FFF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFDF0000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x1FFFFFFFU, + 0x00000000U, 0x07FFFFFEU, 0x07FFFFFEU, 0xFFFFFFC0U, + 0xFFFFFFFFU, 0x7FFFFFFFU, 0x1CFCFCFCU, 0x00000000U, + 0xFFFFEFFFU, 0xB7FFFF7FU, 0x3FFF3FFFU, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x07FFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x1FFFFFFFU, 0xFFFFFFFFU, 0x0001FFFFU, 0x00000000U, + 0xFFFFFFFFU, 0xFFFF0000U, 0xFFFF03FDU, 0x003FFFFFU, + 0x3FFFFFFFU, 0xFFFFFFFFU, 0x0000FF0FU, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x3FFFFFFFU, 0xFFFF0000U, 0xFF0FFFFFU, 0x0FFFFFFFU, + 0xFFFFFFFFU, 0xFFFF00FFU, 0xFFFFFFFFU, 0x0000000FU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x007FFFFFU, 0x003FFFFFU, 0x000000FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFD3FU, 0x91BFFFFFU, 0x003FFFFFU, 0x007FFFFFU, + 0x7FFFFFFFU, 0x00000000U, 0x00000000U, 0x0037FFFFU, + 0x003FFFFFU, 0x03FFFFFFU, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xC0FFFFFFU, 0x00000000U, 0x00000000U, + 0xFEEF0001U, 0x000FFFFFU, 0x00000000U, 0x1FFFFFFFU, + 0x1FFFFFFFU, 0x00000000U, 0xFFFFFEFFU, 0x0000001FU, + 0xFFFFFFFFU, 0x003FFFFFU, 0x003FFFFFU, 0x0007FFFFU, + 0x0003FFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000001FFU, 0x00000000U, + 0xFFFFFFFFU, 0x0007FFFFU, 0xFFFFFFFFU, 0x0007FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFF8U, 0x00FFFFFFU, 0x00000000U, 0x00000000U, + 0xFFFFFFF8U, 0x0000FFFFU, 0xFFFF0000U, 0x000001FFU, + 0xFFFFFFF8U, 0x0000007FU, 0xFFFF0000U, 0x0047FFFFU, + 0xFFFFFFF8U, 0x0007FFFFU, 0x1400001EU, 0x00000000U, + 0xFFFBFFFFU, 0x00000FFFU, 0x00000000U, 0x00000000U, + 0xBFFFBD7FU, 0xFFFF01FFU, 0x7FFFFFFFU, 0x00000000U, + 0xFFF99FE0U, 0x23EDFDFFU, 0xE0010000U, 0x00000003U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x001FFFFFU, 0x00000780U, 0x00000000U, + 0xFFFFFFFFU, 0x0000FFFFU, 0x000000B0U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x00007FFFU, 0x0F000000U, 0x00000000U, + 0xFFFFFFFFU, 0x0000FFFFU, 0x00000010U, 0x00000000U, + 0xFFFFFFFFU, 0x000007FFU, 0x00000000U, 0x00000000U, + 0x03FFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0x01FFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFDFFU, 0x00007FFFU, 0x00000001U, 0xFFFC0000U, + 0x0000FFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x03FFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000000FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x00007FFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000007FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x01FFFFFFU, 0x7FFFFFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFF0000U, 0x00003FFFU, + 0xFFFFFFFFU, 0x0000FFFFU, 0x0000000FU, 0xE0FFFFF8U, + 0x0000FFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0001001FU, 0x00000000U, + 0xFFF80000U, 0x00000000U, 0x00000000U, 0x00000001U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00001FFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0007FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000003U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x1FFF07FFU, + 0x03FF01FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFDFFFFFU, 0xFFFFFFFFU, + 0xDFFFFFFFU, 0xEBFFDE64U, 0xFFFFFFEFU, 0xFFFFFFFFU, + 0xDFDFE7BFU, 0x7BFFFFFFU, 0xFFFDFC5FU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFF3FU, 0xF7FFFFFDU, 0xF7FFFFFFU, + 0xFFDFFFFFU, 0xFFDFFFFFU, 0xFFFF7FFFU, 0xFFFF7FFFU, + 0xFFFFFDFFU, 0xFFFFFDFFU, 0x00000FF7U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000001FU, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000000FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFEFU, 0x0AF7FE96U, 0xAA96EA84U, 0x5EF7F796U, + 0x0FFFFBFFU, 0x0FFFFBEEU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x007FFFFFU, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x001FFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x3FFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x00000003U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x3FFFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_LC.c b/lib/unistring/unictype/categ_LC.c new file mode 100644 index 0000000..14ce800 --- /dev/null +++ b/lib/unistring/unictype/categ_LC.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2011-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2011. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_LC table. */ +#include "categ_LC.h" + +const uc_general_category_t UC_CATEGORY_LC = + { UC_CATEGORY_MASK_LC, 0, { &u_categ_LC } }; diff --git a/lib/unistring/unictype/categ_LC.h b/lib/unistring/unictype/categ_LC.h new file mode 100644 index 0000000..52cf851 --- /dev/null +++ b/lib/unistring/unictype/categ_LC.h @@ -0,0 +1,359 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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_categ_LC = +{ + { 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, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -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, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + -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 + }, + { + 0x00000000U, 0x00000000U, 0x07FFFFFEU, 0x07FFFFFEU, + 0x00000000U, 0x00200000U, 0xFF7FFFFFU, 0xFF7FFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xF7FFFFFFU, 0xFFFFFFF0U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFEFFFFFU, 0x0000FFFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xB8CF0000U, + 0xFFFFD740U, 0xFFFFFFFBU, 0xFFFFFFFFU, 0xFFBFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFC03U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFEFFFFU, 0x007FFFFFU, 0xFFFFFFFEU, + 0x000000FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFFU, 0x000020BFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x3F3FFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x000001FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x00000FFFU, 0x00000000U, 0xFEFFF800U, + 0x07FFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x3F3FFFFFU, 0xFFFFFFFFU, 0xAAFF3F3FU, 0x3FFFFFFFU, + 0xFFFFFFFFU, 0x5FDFFFFFU, 0x0FCF1FDCU, 0x1FDC1FFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x3E2FFC84U, 0xF21FBD50U, 0x000043E0U, 0x00000000U, + 0x00000018U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFF7FFFU, 0x7FFFFFFFU, 0xCFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000C781FU, + 0xFFFFFFFFU, 0x000020BFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0x00003FFFU, + 0x0FFFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFCU, 0xFFFFFFFFU, 0xFFFEFFFFU, + 0xFFFF78FFU, 0x00FF7FFFU, 0x00000000U, 0x04000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFF0000U, 0x07FFFFFFU, 0xFFFF003FU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00F8007FU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x07FFFFFEU, 0x07FFFFFEU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU, 0x00000000U, + 0x00000000U, 0xFFFF0000U, 0xFF0FFFFFU, 0x0FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x0007FFFFU, 0xFFFFFFFFU, 0x0007FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFDFFFFFU, 0xFFFFFFFFU, + 0xDFFFFFFFU, 0xEBFFDE64U, 0xFFFFFFEFU, 0xFFFFFFFFU, + 0xDFDFE7BFU, 0x7BFFFFFFU, 0xFFFDFC5FU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFF3FU, 0xF7FFFFFDU, 0xF7FFFFFFU, + 0xFFDFFFFFU, 0xFFDFFFFFU, 0xFFFF7FFFU, 0xFFFF7FFFU, + 0xFFFFFDFFU, 0xFFFFFDFFU, 0x00000FF7U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000000FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Ll.c b/lib/unistring/unictype/categ_Ll.c new file mode 100644 index 0000000..efc3e9e --- /dev/null +++ b/lib/unistring/unictype/categ_Ll.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Ll.h b/lib/unistring/unictype/categ_Ll.h new file mode 100644 index 0000000..ad9e42e --- /dev/null +++ b/lib/unistring/unictype/categ_Ll.h @@ -0,0 +1,355 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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_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, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -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, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + -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 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x07FFFFFEU, + 0x00000000U, 0x00200000U, 0x80000000U, 0xFF7FFFFFU, + 0xAAAAAAAAU, 0x55AAAAAAU, 0xAAAAAB55U, 0xD4AAAAAAU, + 0x4E243129U, 0xE6512D2AU, 0xB5555240U, 0xAA29AAAAU, + 0xAAAAAAAAU, 0x93FAAAAAU, 0xFFFFAA85U, 0xFFFFFFFFU, + 0xFFEFFFFFU, 0x0000FFFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x388A0000U, + 0x00010000U, 0xFFFFF000U, 0xAAE37FFFU, 0x192FAAAAU, + 0x00000000U, 0xFFFF0000U, 0xFFFFFFFFU, 0xAAAAAAAAU, + 0xAAAAA802U, 0xAAAAAAAAU, 0xAAAAD554U, 0xAAAAAAAAU, + 0xAAAAAAAAU, 0x0000AAAAU, 0x00000000U, 0xFFFFFFFEU, + 0x000000FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x3F000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x000001FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x00000FFFU, 0x00000000U, 0xFEFFF800U, + 0x07FFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0xAAAAAAAAU, 0xAAAAAAAAU, 0xAAAAAAAAU, 0xAAAAAAAAU, + 0xBFEAAAAAU, 0xAAAAAAAAU, 0xAAAAAAAAU, 0xAAAAAAAAU, + 0x003F00FFU, 0x00FF00FFU, 0x00FF003FU, 0x3FFF00FFU, + 0x00FF00FFU, 0x40DF00FFU, 0x00CF00DCU, 0x00DC00FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0008C400U, 0x32108000U, 0x000043C0U, 0x00000000U, + 0x00000010U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFF0000U, 0x7FFFFFFFU, 0x0FDA1562U, + 0xAAAAAAAAU, 0xAAAAAAAAU, 0xAAAAAAAAU, 0x0008501AU, + 0xFFFFFFFFU, 0x000020BFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xAAAAAAAAU, 0x00002AAAU, + 0x0AAAAAAAU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xAAABAAA8U, 0xAAAAAAAAU, 0x95FEAAAAU, + 0xAABA50AAU, 0x00A002AAU, 0x00000000U, 0x04000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFF0000U, 0x07FFFFFFU, 0xFFFF003FU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00F8007FU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x07FFFFFEU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFF00U, 0x0000FFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFF000000U, 0x0FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0x0007FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFC000000U, 0x000FFFFFU, 0xFFDFC000U, 0x000000FFU, + 0x0FFFFFFCU, 0xEBC00000U, 0x0000FFEFU, 0xFFFFFC00U, + 0xC000000FU, 0x00FFFFFFU, 0xFFFC0000U, 0x00000FFFU, + 0xFFFFFFC0U, 0xFC000000U, 0x000FFFFFU, 0xFFFFC000U, + 0x000000FFU, 0x0FFFFFFCU, 0xFFC00000U, 0x0000FFFFU, + 0xFFFFFC00U, 0x0000003FU, 0xF7FFFFFCU, 0xF0000003U, + 0x0FDFFFFFU, 0xFFC00000U, 0x003F7FFFU, 0xFFFF0000U, + 0x0000FDFFU, 0xFFFFFC00U, 0x00000BF7U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFCU, 0x0000000FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Lm.c b/lib/unistring/unictype/categ_Lm.c new file mode 100644 index 0000000..80f9a17 --- /dev/null +++ b/lib/unistring/unictype/categ_Lm.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Lm.h b/lib/unistring/unictype/categ_Lm.h new file mode 100644 index 0000000..658f976 --- /dev/null +++ b/lib/unistring/unictype/categ_Lm.h @@ -0,0 +1,371 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[22 << 4]; + } +u_categ_Lm = +{ + { 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, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + 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, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 320, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFF0000U, 0x0003FFC3U, 0x0000501FU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x04100000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x02000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000001U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000060U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x04300000U, + 0x04000000U, 0x00000110U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00020000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000040U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000040U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x10000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00800000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000008U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000080U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x3F000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFF000U, 0xFFFFFFFFU, 0x010007FFU, + 0xF8000000U, 0xFFFFFFFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80020000U, + 0x1FFF0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x30000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00008000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00008000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000020U, 0x083E0000U, 0x00000000U, 0x00000000U, + 0x60000000U, 0x00000000U, 0x00000000U, 0x70000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00200000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x3F000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00001000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x30000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFF800000U, 0x00000000U, 0x00000000U, 0x00010000U, + 0x00000100U, 0x00000000U, 0x00000000U, 0x03000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00008000U, 0x00000040U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00010000U, + 0x00000000U, 0x00000000U, 0x20000000U, 0x00180000U, + 0x00000000U, 0x00000000U, 0xF0000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00010000U, + 0xC0000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000000FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFF80000U, 0x00000000U, 0x00000000U, 0x00000001U + } +}; diff --git a/lib/unistring/unictype/categ_Lo.c b/lib/unistring/unictype/categ_Lo.c new file mode 100644 index 0000000..9f971ec --- /dev/null +++ b/lib/unistring/unictype/categ_Lo.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Lo.h b/lib/unistring/unictype/categ_Lo.h new file mode 100644 index 0000000..d7399eb --- /dev/null +++ b/lib/unistring/unictype/categ_Lo.h @@ -0,0 +1,660 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[62 << 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, + 4 + 384 * sizeof (short) / sizeof (int) + 224, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 336, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 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) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 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, + 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, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 608, + 4 + 384 * sizeof (short) / sizeof (int) + 624, + 4 + 384 * sizeof (short) / sizeof (int) + 640, + 4 + 384 * sizeof (short) / sizeof (int) + 656, + 4 + 384 * sizeof (short) / sizeof (int) + 672, + 4 + 384 * sizeof (short) / sizeof (int) + 688, + 4 + 384 * sizeof (short) / sizeof (int) + 704, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 720, + 4 + 384 * sizeof (short) / sizeof (int) + 736, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 752, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 768, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 784, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 800, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 816, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 832, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 848, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 864, + -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) + 880, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 896, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 912, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 928, + 4 + 384 * sizeof (short) / sizeof (int) + 944, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 960, + -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) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 976, + -1, + -1 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x04000400U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x08000000U, 0x0000000FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00100000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFF0000U, 0x000707FFU, + 0x00000000U, 0xFFFFFFFFU, 0x000007FEU, 0xFFFEC000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x002FFFFFU, 0x9C00C000U, + 0xFFFD0000U, 0x0000FFFFU, 0xFFFFE000U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x0002003FU, 0xFFFFFC00U, 0x000007FFU, + 0x003FFFFFU, 0x00000000U, 0x01FFFFFFU, 0x00000000U, + 0x00000000U, 0x3FDFFFFFU, 0x00000000U, 0x00000000U, + 0xFFFFFFF0U, 0x23FFFFFFU, 0xFF010000U, 0xFFFC0003U, + 0xFFF99FE1U, 0x23C5FDFFU, 0xB0004000U, 0x00030003U, + 0xFFF987E0U, 0x036DFDFFU, 0x5E000000U, 0x001C0000U, + 0xFFFBBFE0U, 0x23EDFDFFU, 0x00010000U, 0x02000003U, + 0xFFF99FE0U, 0x23EDFDFFU, 0xB0000000U, 0x00020003U, + 0xD63DC7E8U, 0x03FFC718U, 0x00010000U, 0x00000000U, + 0xFFFDDFE0U, 0x23FFFDFFU, 0x07000000U, 0x00000003U, + 0xFFFDDFE1U, 0x23EFFDFFU, 0x40000000U, 0x00060003U, + 0xFFFDDFE0U, 0x27FFFFFFU, 0x80704000U, 0xFC000003U, + 0xFC7FFFE0U, 0x2FFBFFFFU, 0x0000007FU, 0x00000000U, + 0xFFFFFFFEU, 0x000DFFFFU, 0x0000003FU, 0x00000000U, + 0xFEF02596U, 0x200DECAEU, 0xF000001FU, 0x00000000U, + 0x00000001U, 0x00000000U, 0xFFFFFEFFU, 0x00001FFFU, + 0x00001F00U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x800007FFU, 0x3C3F0000U, 0xFFE1C062U, + 0x00004003U, 0x00000000U, 0xFFFF0000U, 0xE7FFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x3D7F3DFFU, 0xFFFFFFFFU, + 0xFFFF3DFFU, 0x7F3DFFFFU, 0xFF7FFF3DU, 0xFFFFFFFFU, + 0xFF3DFFFFU, 0xFFFFFFFFU, 0x07FFFFFFU, 0x00000000U, + 0x0000FFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFEU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFF9FFFU, + 0x07FFFFFEU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x01FE07FFU, + 0x0003DFFFU, 0x0003FFFFU, 0x0003FFFFU, 0x0001DFFFU, + 0xFFFFFFFFU, 0x000FFFFFU, 0x10000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFFU, 0xFFFFFFF7U, 0x00FFFFFFU, + 0xFFFFFF9FU, 0xFFFF05FFU, 0xFFFFFFFFU, 0x003FFFFFU, + 0x7FFFFFFFU, 0x00000000U, 0xFFFF0000U, 0x001F3FFFU, + 0xFFFFFFFFU, 0xFFFF0FFFU, 0x000003FFU, 0x00000000U, + 0x007FFFFFU, 0xFFFFFFFFU, 0x001FFFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFE0U, 0x000FFFFFU, 0x00000FE0U, 0x00000000U, + 0xFFFFFFF8U, 0xFC00C001U, 0xFFFFFFFFU, 0x0000003FU, + 0xFFFFFFFFU, 0x0000000FU, 0xFC00E000U, 0x00FFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0063DE00U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x01E00000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFF0000U, 0xFFFFFFFFU, 0x000000FFU, + 0x007FFFFFU, 0x7F7F7F7FU, 0x7F7F7F7FU, 0x00000000U, + 0x00000040U, 0x10000000U, 0xFFFFFFFEU, 0xFFFFFFFFU, + 0x807FFFFFU, 0xFFFFFFFEU, 0xFFFFFFFFU, 0x87FFFFFFU, + 0xFFFFFFE0U, 0xFFFE3FFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00007FFFU, 0x07FFFFFFU, 0x00000000U, 0xFFFF0000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x003FFFFFU, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x003FFFFFU, 0x00000000U, + 0xFFDFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00001FFFU, 0x00000000U, 0xFFFF0000U, 0x00FFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFF0FFFU, 0x00000C00U, 0x00000000U, 0x00004000U, + 0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000003FU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00008000U, 0x00000000U, 0x00000000U, 0xF8800000U, + 0xFFFFF7BBU, 0x00000007U, 0xFFFFFFFFU, 0x000FFFFFU, + 0xFFFFFFFCU, 0x000FFFFFU, 0x00000000U, 0x28FC0000U, + 0xFFFFFC00U, 0xFFFF003FU, 0x0000007FU, 0x1FFFFFFFU, + 0xFFFFFFF0U, 0x0007FFFFU, 0x00000000U, 0x7C00FF9FU, + 0xFFFFFFFFU, 0x000001FFU, 0x00000FF7U, 0xC47EFFFFU, + 0xFFFFFFFFU, 0x3E62FFFFU, 0x18000005U, 0x000407FFU, + 0x007E7E7EU, 0x00007F7FU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0x00000007U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFF000FU, 0xFFFFF87FU, 0x0FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFF3FFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x03FFFFFFU, 0x00000000U, + 0xA0000000U, 0x5F7FFDFFU, 0xFFFFFFDBU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x0003FFFFU, 0xFFF80000U, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x3FFFFFFFU, 0xFFFF0000U, 0xFFFFFFFFU, + 0xFFFCFFFFU, 0xFFFFFFFFU, 0x000000FFU, 0x0FFF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFDF0000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x1FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFEFFC0U, + 0x3FFFFFFFU, 0x7FFFFFFFU, 0x1CFCFCFCU, 0x00000000U, + 0xFFFFEFFFU, 0xB7FFFF7FU, 0x3FFF3FFFU, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x07FFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x1FFFFFFFU, 0xFFFFFFFFU, 0x0001FFFFU, 0x00000000U, + 0xFFFFFFFFU, 0xFFFF0000U, 0xFFFF03FDU, 0x003FFFFFU, + 0x3FFFFFFFU, 0xFFFFFFFFU, 0x0000FF0FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFF0000U, 0xFFFFFFFFU, + 0x3FFFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFF00FFU, 0xFFFFFFFFU, 0x0000000FU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x007FFFFFU, 0x003FFFFFU, 0x000000FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFD3FU, 0x91BFFFFFU, 0x003FFFFFU, 0x007FFFFFU, + 0x7FFFFFFFU, 0x00000000U, 0x00000000U, 0x0037FFFFU, + 0x003FFFFFU, 0x03FFFFFFU, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xC0FFFFFFU, 0x00000000U, 0x00000000U, + 0xFEEF0001U, 0x000FFFFFU, 0x00000000U, 0x1FFFFFFFU, + 0x1FFFFFFFU, 0x00000000U, 0xFFFFFEFFU, 0x0000001FU, + 0xFFFFFFFFU, 0x003FFFFFU, 0x003FFFFFU, 0x0007FFFFU, + 0x0003FFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000001FFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFF8U, 0x00FFFFFFU, 0x00000000U, 0x00000000U, + 0xFFFFFFF8U, 0x0000FFFFU, 0xFFFF0000U, 0x000001FFU, + 0xFFFFFFF8U, 0x0000007FU, 0xFFFF0000U, 0x0047FFFFU, + 0xFFFFFFF8U, 0x0007FFFFU, 0x1400001EU, 0x00000000U, + 0xFFFBFFFFU, 0x00000FFFU, 0x00000000U, 0x00000000U, + 0xBFFFBD7FU, 0xFFFF01FFU, 0x7FFFFFFFU, 0x00000000U, + 0xFFF99FE0U, 0x23EDFDFFU, 0xE0010000U, 0x00000003U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x001FFFFFU, 0x00000780U, 0x00000000U, + 0xFFFFFFFFU, 0x0000FFFFU, 0x000000B0U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x00007FFFU, 0x0F000000U, 0x00000000U, + 0xFFFFFFFFU, 0x0000FFFFU, 0x00000010U, 0x00000000U, + 0xFFFFFFFFU, 0x000007FFU, 0x00000000U, 0x00000000U, + 0x03FFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0x01FFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFDFFU, 0x00007FFFU, 0x00000001U, 0xFFFC0000U, + 0x0000FFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x03FFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000000FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x00007FFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000007FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x01FFFFFFU, 0x7FFFFFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFF0000U, 0x00003FFFU, + 0xFFFFFFFFU, 0x0000FFFFU, 0x00000000U, 0xE0FFFFF8U, + 0x0000FFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0001001FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00001FFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0007FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000003U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x1FFF07FFU, + 0x03FF01FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000001FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFEFU, 0x0AF7FE96U, 0xAA96EA84U, 0x5EF7F796U, + 0x0FFFFBFFU, 0x0FFFFBEEU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x007FFFFFU, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x001FFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x3FFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x00000003U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x3FFFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Lt.c b/lib/unistring/unictype/categ_Lt.c new file mode 100644 index 0000000..39ae49d --- /dev/null +++ b/lib/unistring/unictype/categ_Lt.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Lt.h b/lib/unistring/unictype/categ_Lt.h new file mode 100644 index 0000000..f9d6683 --- /dev/null +++ b/lib/unistring/unictype/categ_Lt.h @@ -0,0 +1,160 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000920U, 0x00040000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFF00FF00U, 0x1000FF00U, 0x00001000U, 0x10000000U + } +}; diff --git a/lib/unistring/unictype/categ_Lu.c b/lib/unistring/unictype/categ_Lu.c new file mode 100644 index 0000000..1509706 --- /dev/null +++ b/lib/unistring/unictype/categ_Lu.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Lu.h b/lib/unistring/unictype/categ_Lu.h new file mode 100644 index 0000000..c21aa9a --- /dev/null +++ b/lib/unistring/unictype/categ_Lu.h @@ -0,0 +1,347 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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_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, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -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, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -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 + }, + { + 0x00000000U, 0x00000000U, 0x07FFFFFEU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x7F7FFFFFU, 0x00000000U, + 0x55555555U, 0xAA555555U, 0x555554AAU, 0x2B555555U, + 0xB1DBCED6U, 0x11AED2D5U, 0x4AAAA490U, 0x55D25555U, + 0x55555555U, 0x6C055555U, 0x0000557AU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80450000U, + 0xFFFED740U, 0x00000FFBU, 0x551C8000U, 0xE6905555U, + 0xFFFFFFFFU, 0x0000FFFFU, 0x00000000U, 0x55555555U, + 0x55555401U, 0x55555555U, 0x55552AABU, 0x55555555U, + 0x55555555U, 0xFFFE5555U, 0x007FFFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFFU, 0x000020BFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x003FFFFFU, + 0x55555555U, 0x55555555U, 0x55555555U, 0x55555555U, + 0x40155555U, 0x55555555U, 0x55555555U, 0x55555555U, + 0x3F00FF00U, 0xFF00FF00U, 0xAA003F00U, 0x0000FF00U, + 0x00000000U, 0x0F000000U, 0x0F000F00U, 0x0F001F00U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x3E273884U, 0xC00F3D50U, 0x00000020U, 0x00000000U, + 0x00000008U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x00007FFFU, 0x00000000U, 0xC025EA9DU, + 0x55555555U, 0x55555555U, 0x55555555U, 0x00042805U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x55555555U, 0x00001555U, + 0x05555555U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x55545554U, 0x55555555U, 0x6A005555U, + 0x55452855U, 0x005F7D55U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x07FFFFFEU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x000000FFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFF0000U, 0x000FFFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x0007FFFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFFFFFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x03FFFFFFU, 0xFFF00000U, 0x00003FFFU, 0xFFFFFF00U, + 0xD0000003U, 0x003FDE64U, 0xFFFF0000U, 0x000003FFU, + 0x1FDFE7B0U, 0x7B000000U, 0x0001FC5FU, 0xFFFFF000U, + 0x0000003FU, 0x03FFFFFFU, 0xFFF00000U, 0x00003FFFU, + 0xFFFFFF00U, 0xF0000003U, 0x003FFFFFU, 0xFFFF0000U, + 0x000003FFU, 0xFFFFFF00U, 0x00000001U, 0x07FFFFFCU, + 0xF0000000U, 0x001FFFFFU, 0xFFC00000U, 0x00007FFFU, + 0xFFFF0000U, 0x000001FFU, 0x00000400U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x00000003U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_M.c b/lib/unistring/unictype/categ_M.c new file mode 100644 index 0000000..bbc394b --- /dev/null +++ b/lib/unistring/unictype/categ_M.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_M.h b/lib/unistring/unictype/categ_M.h new file mode 100644 index 0000000..d3e03fd --- /dev/null +++ b/lib/unistring/unictype/categ_M.h @@ -0,0 +1,576 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[38 << 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, + 16 + 384 * sizeof (short) / sizeof (int) + 224, + -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, + -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, + 16 + 384 * sizeof (short) / sizeof (int) + 272, + 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, + 16 + 384 * sizeof (short) / sizeof (int) + 304, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 320, + 16 + 384 * sizeof (short) / sizeof (int) + 336, + 16 + 384 * sizeof (short) / sizeof (int) + 352, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 384, + 16 + 384 * sizeof (short) / sizeof (int) + 400, + 16 + 384 * sizeof (short) / sizeof (int) + 416, + 16 + 384 * sizeof (short) / sizeof (int) + 432, + -1, + -1, + 16 + 384 * 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, + 16 + 384 * sizeof (short) / sizeof (int) + 464, + -1, + 16 + 384 * 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, + 16 + 384 * sizeof (short) / sizeof (int) + 496, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 512, + 16 + 384 * sizeof (short) / sizeof (int) + 528, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 560, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 576, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x000003F8U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFE0000U, 0xBFFFFFFFU, 0x000000B6U, 0x00000000U, + 0x07FF0000U, 0x00000000U, 0xFFFFF800U, 0x00010000U, + 0x00000000U, 0x00000000U, 0x9FC00000U, 0x00003D9FU, + 0x00020000U, 0xFFFF0000U, 0x000007FFU, 0x00000000U, + 0x00000000U, 0x0001FFC0U, 0x00000000U, 0x000FF800U, + 0xFBC00000U, 0x00003EEFU, 0x0E000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFF00000U, 0xFFFFFFFBU, + 0x0000000FU, 0xDC000000U, 0x00FEFFFFU, 0x0000000CU, + 0x0000000EU, 0xD0000000U, 0x0080399FU, 0x0000000CU, + 0x0000000EU, 0xD0000000U, 0x00023987U, 0x00230000U, + 0x0000000EU, 0xD0000000U, 0x00003BBFU, 0x0000000CU, + 0x0000000EU, 0xD0000000U, 0x00C0399FU, 0x0000000CU, + 0x00000004U, 0xC0000000U, 0x00803DC7U, 0x00000000U, + 0x0000000FU, 0xC0000000U, 0x00603DDFU, 0x0000000CU, + 0x0000000EU, 0xD0000000U, 0x00603DDFU, 0x0000000CU, + 0x0000000EU, 0xC0000000U, 0x00803DDFU, 0x0000000CU, + 0x0000000CU, 0x00000000U, 0xFF5F8400U, 0x000C0000U, + 0x00000000U, 0x07F20000U, 0x00007F80U, 0x00000000U, + 0x00000000U, 0x1BF20000U, 0x00003F00U, 0x00000000U, + 0x03000000U, 0xC2A00000U, 0x00000000U, 0xFFFE0000U, + 0xFEFFE0DFU, 0x1FFFFFFFU, 0x00000040U, 0x00000000U, + 0x00000000U, 0x7FFFF800U, 0xC3C00000U, 0x001E3F9DU, + 0x3C00BFFCU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xE0000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x001C0000U, 0x001C0000U, 0x000C0000U, 0x000C0000U, + 0x00000000U, 0xFFF00000U, 0x200FFFFFU, 0x00000000U, + 0x00003800U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000060U, 0x00000200U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x0FFF0FFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0F800000U, 0x00000000U, 0x7FE00000U, 0x9FFFFFFFU, + 0x00000000U, 0x7FFF0000U, 0x00000000U, 0x00000000U, + 0x0000001FU, 0xFFF00000U, 0x0000001FU, 0x000FF800U, + 0x00000007U, 0x00003FFEU, 0x00000000U, 0x000FFFC0U, + 0x00000000U, 0x00FFFFF0U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFF70000U, 0x031C21FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0xF83FFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFF0000U, 0x0001FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00038000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFFFFFFU, + 0x00000000U, 0x0000FC00U, 0x00000000U, 0x00000000U, + 0x06000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x3FF78000U, + 0xC0000000U, 0x00000000U, 0x00000000U, 0x00030000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000844U, 0x000000F8U, 0x00000000U, 0x00000000U, + 0x00000003U, 0xFFF00000U, 0x0000003FU, 0x0003FFFFU, + 0x00000000U, 0x00003FC0U, 0x000FFF80U, 0x00000000U, + 0x0000000FU, 0xFFF80000U, 0x00000001U, 0x00000020U, + 0x00000000U, 0x007FFE00U, 0x00003008U, 0x38000000U, + 0x00000000U, 0xC19D0000U, 0x00000002U, 0x0060F800U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000037F8U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x40000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000FFFFU, 0x0000FFFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x20000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000001U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x07C00000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000F06EU, 0x87000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000060U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000007U, 0xFF000000U, 0x0000007FU, 0x80000000U, + 0x00000007U, 0x07FF0000U, 0x00000000U, 0x00000000U, + 0x00000007U, 0x001FFF80U, 0x00000000U, 0x00080000U, + 0x00000007U, 0xFFF80000U, 0x00001C01U, 0x00000000U, + 0x00000000U, 0x40FFF000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x80000000U, 0x000007FFU, + 0x0000000FU, 0xD0000000U, 0x0080399FU, 0x001F1FCCU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFE00000U, 0x0000007FU, 0x00000000U, + 0x00000000U, 0xFFFF0000U, 0x0000000FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFF3F8000U, 0x30000001U, 0x00000000U, + 0x00000000U, 0xFFFF0000U, 0x00000001U, 0x00000000U, + 0x00000000U, 0x00FFF800U, 0x00000000U, 0x00000000U, + 0xE0000000U, 0x00000FFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFF7F8000U, 0x00000000U, 0x00000000U, + 0xFFFC0000U, 0x007FFEFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x001F0000U, + 0x00000000U, 0x007F0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFE0000U, 0x7FFFFFFFU, + 0x00078000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x60000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xF807E3E0U, + 0x00000FE7U, 0x00003C00U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000001CU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xF87FFFFFU, 0xFFFFFFFFU, 0x00201FFFU, + 0xF8000010U, 0x0000FFFEU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xF9FFFF7FU, 0x000007DBU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x007F0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x000007F0U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU + } +}; diff --git a/lib/unistring/unictype/categ_Mc.c b/lib/unistring/unictype/categ_Mc.c new file mode 100644 index 0000000..c1a5420 --- /dev/null +++ b/lib/unistring/unictype/categ_Mc.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Mc.h b/lib/unistring/unictype/categ_Mc.h new file mode 100644 index 0000000..89ffe6c --- /dev/null +++ b/lib/unistring/unictype/categ_Mc.h @@ -0,0 +1,359 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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_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, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + 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, + -1, + -1, + -1, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000008U, 0xC8000000U, 0x0000DE01U, 0x00000000U, + 0x0000000CU, 0xC0000000U, 0x00801981U, 0x00000000U, + 0x00000008U, 0xC0000000U, 0x00000001U, 0x00000000U, + 0x00000008U, 0xC0000000U, 0x00001A01U, 0x00000000U, + 0x0000000CU, 0x40000000U, 0x00801981U, 0x00000000U, + 0x00000000U, 0xC0000000U, 0x00801DC6U, 0x00000000U, + 0x0000000EU, 0x00000000U, 0x0000001EU, 0x00000000U, + 0x0000000CU, 0x40000000U, 0x00600D9FU, 0x00000000U, + 0x0000000CU, 0xC0000000U, 0x00801DC1U, 0x00000000U, + 0x0000000CU, 0x00000000U, 0xFF038000U, 0x000C0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xC0000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x19021800U, 0x00C00000U, 0x00003F9CU, + 0x1C009F98U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xC0400000U, 0x000001BFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x01FB0E78U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x06000000U, 0x00000000U, 0x00A00000U, 0x0007E01AU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000010U, 0xE8200000U, 0x0000001BU, 0x00000000U, + 0x00000004U, 0x000004C2U, 0x00000000U, 0x000C5C80U, + 0x00000000U, 0x00300FF0U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000C0002U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x0000C000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000098U, 0x00000000U, 0x00000000U, + 0x00000003U, 0xFFF00000U, 0x0000000FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x000C0000U, 0x00000000U, + 0x00000008U, 0xEC300000U, 0x00000001U, 0x00000000U, + 0x00000000U, 0x00198000U, 0x00002000U, 0x28000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0020C800U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000016D8U, + 0x00000005U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000004U, 0x01870000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00001000U, 0x00000000U, 0x00000000U, + 0x00000004U, 0x80380000U, 0x00000001U, 0x00000000U, + 0x00000000U, 0x002C7000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000007U, + 0x0000000CU, 0xC0000000U, 0x0080399EU, 0x0000000CU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00E00000U, 0x00000023U, 0x00000000U, + 0x00000000U, 0x7A070000U, 0x00000002U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x4F038000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x58070000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x0040D000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000043U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x40008000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00120200U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFE0000U, 0x7FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0007E060U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Me.c b/lib/unistring/unictype/categ_Me.c new file mode 100644 index 0000000..9e590ab --- /dev/null +++ b/lib/unistring/unictype/categ_Me.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Me.h b/lib/unistring/unictype/categ_Me.h new file mode 100644 index 0000000..ea68dbf --- /dev/null +++ b/lib/unistring/unictype/categ_Me.h @@ -0,0 +1,168 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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_categ_Me = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -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, + 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 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000300U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x40000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xE0000000U, 0x0000001DU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00070000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Mn.c b/lib/unistring/unictype/categ_Mn.c new file mode 100644 index 0000000..57e5524 --- /dev/null +++ b/lib/unistring/unictype/categ_Mn.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Mn.h b/lib/unistring/unictype/categ_Mn.h new file mode 100644 index 0000000..06e660a --- /dev/null +++ b/lib/unistring/unictype/categ_Mn.h @@ -0,0 +1,576 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[38 << 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, + 16 + 384 * sizeof (short) / sizeof (int) + 224, + -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, + -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, + 16 + 384 * sizeof (short) / sizeof (int) + 272, + 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, + 16 + 384 * sizeof (short) / sizeof (int) + 304, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 320, + 16 + 384 * sizeof (short) / sizeof (int) + 336, + 16 + 384 * sizeof (short) / sizeof (int) + 352, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 384, + 16 + 384 * sizeof (short) / sizeof (int) + 400, + 16 + 384 * sizeof (short) / sizeof (int) + 416, + 16 + 384 * sizeof (short) / sizeof (int) + 432, + -1, + -1, + 16 + 384 * 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, + 16 + 384 * sizeof (short) / sizeof (int) + 464, + -1, + 16 + 384 * 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, + 16 + 384 * sizeof (short) / sizeof (int) + 496, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 512, + 16 + 384 * sizeof (short) / sizeof (int) + 528, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 560, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 576, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x000000F8U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFE0000U, 0xBFFFFFFFU, 0x000000B6U, 0x00000000U, + 0x07FF0000U, 0x00000000U, 0xFFFFF800U, 0x00010000U, + 0x00000000U, 0x00000000U, 0x9FC00000U, 0x00003D9FU, + 0x00020000U, 0xFFFF0000U, 0x000007FFU, 0x00000000U, + 0x00000000U, 0x0001FFC0U, 0x00000000U, 0x000FF800U, + 0xFBC00000U, 0x00003EEFU, 0x0E000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFF00000U, 0xFFFFFFFBU, + 0x00000007U, 0x14000000U, 0x00FE21FEU, 0x0000000CU, + 0x00000002U, 0x10000000U, 0x0000201EU, 0x0000000CU, + 0x00000006U, 0x10000000U, 0x00023986U, 0x00230000U, + 0x00000006U, 0x10000000U, 0x000021BEU, 0x0000000CU, + 0x00000002U, 0x90000000U, 0x0040201EU, 0x0000000CU, + 0x00000004U, 0x00000000U, 0x00002001U, 0x00000000U, + 0x00000001U, 0xC0000000U, 0x00603DC1U, 0x0000000CU, + 0x00000002U, 0x90000000U, 0x00003040U, 0x0000000CU, + 0x00000002U, 0x00000000U, 0x0000201EU, 0x0000000CU, + 0x00000000U, 0x00000000U, 0x005C0400U, 0x00000000U, + 0x00000000U, 0x07F20000U, 0x00007F80U, 0x00000000U, + 0x00000000U, 0x1BF20000U, 0x00003F00U, 0x00000000U, + 0x03000000U, 0x02A00000U, 0x00000000U, 0x7FFE0000U, + 0xFEFFE0DFU, 0x1FFFFFFFU, 0x00000040U, 0x00000000U, + 0x00000000U, 0x66FDE000U, 0xC3000000U, 0x001E0001U, + 0x20002064U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xE0000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x001C0000U, 0x001C0000U, 0x000C0000U, 0x000C0000U, + 0x00000000U, 0x3FB00000U, 0x200FFE40U, 0x00000000U, + 0x00003800U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000060U, 0x00000200U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x0E040187U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x09800000U, 0x00000000U, 0x7F400000U, 0x9FF81FE5U, + 0x00000000U, 0x3FFF0000U, 0x00000000U, 0x00000000U, + 0x0000000FU, 0x17D00000U, 0x00000004U, 0x000FF800U, + 0x00000003U, 0x00003B3CU, 0x00000000U, 0x0003A340U, + 0x00000000U, 0x00CFF000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFF70000U, 0x031021FDU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0xF83FFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x1FFF0000U, 0x0001FFE2U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00038000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFFFFFFU, + 0x00000000U, 0x00003C00U, 0x00000000U, 0x00000000U, + 0x06000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x3FF08000U, + 0xC0000000U, 0x00000000U, 0x00000000U, 0x00030000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000844U, 0x00000060U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000030U, 0x0003FFFFU, + 0x00000000U, 0x00003FC0U, 0x0003FF80U, 0x00000000U, + 0x00000007U, 0x13C80000U, 0x00000000U, 0x00000020U, + 0x00000000U, 0x00667E00U, 0x00001008U, 0x10000000U, + 0x00000000U, 0xC19D0000U, 0x00000002U, 0x00403000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00002120U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x40000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000FFFFU, 0x0000FFFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x20000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000001U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x07C00000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000F06EU, 0x87000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000060U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000002U, 0xFF000000U, 0x0000007FU, 0x80000000U, + 0x00000003U, 0x06780000U, 0x00000000U, 0x00000000U, + 0x00000007U, 0x001FEF80U, 0x00000000U, 0x00080000U, + 0x00000003U, 0x7FC00000U, 0x00001C00U, 0x00000000U, + 0x00000000U, 0x40D38000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x80000000U, 0x000007F8U, + 0x00000003U, 0x10000000U, 0x00000001U, 0x001F1FC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFF000000U, 0x0000005CU, 0x00000000U, + 0x00000000U, 0x85F80000U, 0x0000000DU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xB03C0000U, 0x30000001U, 0x00000000U, + 0x00000000U, 0xA7F80000U, 0x00000001U, 0x00000000U, + 0x00000000U, 0x00BF2800U, 0x00000000U, 0x00000000U, + 0xE0000000U, 0x00000FBCU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xBF7F0000U, 0x00000000U, 0x00000000U, + 0xFFFC0000U, 0x006DFCFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x001F0000U, + 0x00000000U, 0x007F0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00078000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x60000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xF8000380U, + 0x00000FE7U, 0x00003C00U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000001CU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xF87FFFFFU, 0xFFFFFFFFU, 0x00201FFFU, + 0xF8000010U, 0x0000FFFEU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xF9FFFF7FU, 0x000007DBU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x007F0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x000007F0U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU + } +}; diff --git a/lib/unistring/unictype/categ_N.c b/lib/unistring/unictype/categ_N.c new file mode 100644 index 0000000..51f367d --- /dev/null +++ b/lib/unistring/unictype/categ_N.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_N.h b/lib/unistring/unictype/categ_N.h new file mode 100644 index 0000000..3287963 --- /dev/null +++ b/lib/unistring/unictype/categ_N.h @@ -0,0 +1,447 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[41 << 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, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + 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, + 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, + -1, + -1, + -1, + -1, + -1, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + 3 + 256 * sizeof (short) / sizeof (int) + 368, + 3 + 256 * sizeof (short) / sizeof (int) + 384, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 400, + 3 + 256 * sizeof (short) / sizeof (int) + 416, + 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, + 3 + 256 * sizeof (short) / sizeof (int) + 496, + 3 + 256 * sizeof (short) / sizeof (int) + 512, + 3 + 256 * sizeof (short) / sizeof (int) + 528, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + -1, + 3 + 256 * 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, + 3 + 256 * 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, + 3 + 256 * sizeof (short) / sizeof (int) + 592, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 608, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 624, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 640, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x03FF0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x720C0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000003FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x000003FFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03F0FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00FCFFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0007FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x7F00FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x7F000000U, 0x01FFFFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x000FFFFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x000003FFU, 0x00000000U, + 0x03FF0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x1FFFFE00U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0001C000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03FF03FFU, + 0x03FF0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000FFC0U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x07FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x03FF03FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x03FF0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF03FFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03F10000U, + 0x000003FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFF0000U, 0xFFFFFFFFU, + 0x000003E7U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFFFFFFU, + 0x0FFFFFFFU, 0x00000000U, 0x00000000U, 0xFFFFFC00U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFC00000U, + 0x000FFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x20000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000080U, 0x070003FEU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x003C0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x000003FFU, 0xFFFEFF00U, 0x00000000U, + 0x000003FFU, 0xFFFE0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x000003FFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x003F0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x000003FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x03FF0000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x03FF0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFF80U, 0x000FFFFFU, 0xFFFFFFFFU, 0x01FFFFFFU, + 0x00000C00U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0FFFFFFEU, + 0x00000000U, 0x0000000FU, 0x00000402U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x003E0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x000003FFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFF000000U, 0xFE000000U, + 0x00000000U, 0x0000FF80U, 0x00000000U, 0xF8000000U, + 0x0FC00000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x30000000U, 0xFFFCFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x000000FFU, 0x60000000U, + 0xE0000000U, 0x00000000U, 0x00000000U, 0x0000F800U, + 0x00000000U, 0x00000000U, 0xFF000000U, 0xFF000000U, + 0x00000000U, 0x0000FE00U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFC000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x7FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFC0000U, 0x0000FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U, + 0x00000000U, 0xFFC00000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x001FFFFEU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x000003FFU, 0x00000000U, + 0x00000000U, 0x0FFF0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0007FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFF0000U, 0x00001FFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00007FFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000003FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFBFF0000U, 0x00000003U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0003FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFC000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000FF80U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00001FFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Nd.c b/lib/unistring/unictype/categ_Nd.c new file mode 100644 index 0000000..18594e9 --- /dev/null +++ b/lib/unistring/unictype/categ_Nd.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Nd.h b/lib/unistring/unictype/categ_Nd.h new file mode 100644 index 0000000..613f583 --- /dev/null +++ b/lib/unistring/unictype/categ_Nd.h @@ -0,0 +1,379 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[24 << 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) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + 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, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + -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, + 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, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + -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 + }, + { + 0x00000000U, 0x03FF0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000003FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x000003FFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x000003FFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x000003FFU, 0x00000000U, + 0x03FF0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000003FFU, + 0x03FF0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000FFC0U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x03FF03FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x03FF0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF03FFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x000003FFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x000003FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x03FF0000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x03FF0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x000003FFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U, + 0x00000000U, 0xFFC00000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x000003FFU, 0x00000000U, + 0x00000000U, 0x03FF0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000003FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000003FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFC000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Nl.c b/lib/unistring/unictype/categ_Nl.c new file mode 100644 index 0000000..b11143f --- /dev/null +++ b/lib/unistring/unictype/categ_Nl.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Nl.h b/lib/unistring/unictype/categ_Nl.h new file mode 100644 index 0000000..902a59b --- /dev/null +++ b/lib/unistring/unictype/categ_Nl.h @@ -0,0 +1,311 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[7 << 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, + 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, + 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, + 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, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0001C000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFFFFFFU, + 0x000001E7U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000080U, 0x070003FEU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0x001FFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000402U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x003E0000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00007FFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_No.c b/lib/unistring/unictype/categ_No.c new file mode 100644 index 0000000..ca1ef70 --- /dev/null +++ b/lib/unistring/unictype/categ_No.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_No.h b/lib/unistring/unictype/categ_No.h new file mode 100644 index 0000000..20f952d --- /dev/null +++ b/lib/unistring/unictype/categ_No.h @@ -0,0 +1,399 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[29 << 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, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + 3 + 256 * sizeof (short) / sizeof (int) + 320, + 3 + 256 * sizeof (short) / sizeof (int) + 336, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + 3 + 256 * sizeof (short) / sizeof (int) + 368, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 384, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 432, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 448, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x720C0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03F00000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00FC0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00070000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x7F000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x7F000000U, 0x01FF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x000FFC00U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x1FFFFE00U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x04000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03F10000U, + 0x000003FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFF0000U, 0x00000000U, + 0x00000200U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFFFFFFFU, + 0x0FFFFFFFU, 0x00000000U, 0x00000000U, 0xFFFFFC00U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFFC00000U, + 0x000FFFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x20000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x003C0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x000003FFU, 0xFFFEFF00U, 0x00000000U, + 0x000003FFU, 0xFFFE0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x003F0000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFF80U, 0x000FFFFFU, 0x00000000U, 0x01E00000U, + 0x00000C00U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0FFFFFFEU, + 0x00000000U, 0x0000000FU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFF000000U, 0xFE000000U, + 0x00000000U, 0x0000FF80U, 0x00000000U, 0xF8000000U, + 0x0FC00000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x30000000U, 0xFFFCFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x000000FFU, 0x60000000U, + 0xE0000000U, 0x00000000U, 0x00000000U, 0x0000F800U, + 0x00000000U, 0x00000000U, 0xFF000000U, 0xFF000000U, + 0x00000000U, 0x0000FE00U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xFC000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x7FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFC0000U, 0x0000003FU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x001FFFFEU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x0C000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0007FC00U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFC000000U, 0x00001FFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xF8000000U, 0x00000003U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0003FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000FF80U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00001FFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_P.c b/lib/unistring/unictype/categ_P.c new file mode 100644 index 0000000..152d370 --- /dev/null +++ b/lib/unistring/unictype/categ_P.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_P.h b/lib/unistring/unictype/categ_P.h new file mode 100644 index 0000000..8818e82 --- /dev/null +++ b/lib/unistring/unictype/categ_P.h @@ -0,0 +1,455 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[43 << 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, + 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, + 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, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + 3 + 256 * sizeof (short) / sizeof (int) + 368, + 3 + 256 * sizeof (short) / sizeof (int) + 384, + 3 + 256 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 448, + 3 + 256 * sizeof (short) / sizeof (int) + 464, + 3 + 256 * sizeof (short) / sizeof (int) + 480, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 496, + 3 + 256 * sizeof (short) / sizeof (int) + 512, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 528, + 3 + 256 * sizeof (short) / sizeof (int) + 544, + 3 + 256 * sizeof (short) / sizeof (int) + 560, + 3 + 256 * sizeof (short) / sizeof (int) + 576, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 592, + -1, + -1, + -1, + 3 + 256 * 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, + 3 + 256 * 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, + 3 + 256 * sizeof (short) / sizeof (int) + 640, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 656, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 672, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x8C00F7EEU, 0xB8000001U, 0x28000000U, + 0x00000000U, 0x88C00882U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x40000000U, + 0x00000080U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFC000000U, 0x00000000U, + 0x00000600U, 0x40000000U, 0x00000049U, 0x00180000U, + 0xC8003600U, 0x00000000U, 0x00000000U, 0x00003C00U, + 0x00000000U, 0x00000000U, 0x00100000U, 0x00000000U, + 0x00003FFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03800000U, + 0x00000000U, 0x7FFF0000U, 0x40000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00010030U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00010000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00100000U, + 0x00000000U, 0x00000000U, 0x0C008000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0017FFF0U, 0x3C000000U, 0x00000000U, 0x00000000U, + 0x00000020U, 0x00000000U, 0x061F0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000FC00U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x08000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000001FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000001U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00006000U, + 0x18000000U, 0x00000000U, 0x00000000U, 0x00003800U, + 0x00000000U, 0x00600000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x07700000U, 0x00000000U, + 0x000007FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000030U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xC0000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00003F7FU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFC000000U, 0x00000001U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xF0000000U, + 0x00000000U, 0xF8000000U, 0x00000000U, 0xC0000000U, + 0x00000000U, 0x00000000U, 0x000800FFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFF0000U, 0xFFFF00FFU, 0x7FFBFFEFU, 0x60000000U, + 0x00006000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000F00U, 0x00000600U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x003FFF00U, + 0x00000000U, 0x00000000U, 0x00000060U, 0x0000FFC0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x01FFFFF8U, 0x00000000U, 0x0F000000U, 0x30000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xDE000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00010000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFF7FFFU, 0x0000001FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFF3FF0EU, 0x20010000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000001U, 0x00000000U, 0x08000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xC0000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000E000U, 0x00000000U, 0x00000000U, 0x40080000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00FC0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00F00000U, + 0x00000000U, 0x00000000U, 0x0000C000U, 0x17000000U, + 0x00000000U, 0x0000C000U, 0x80000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xC0003FFEU, 0x00000000U, + 0x00000000U, 0x00000000U, 0xF0000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xC0000000U, 0x00030000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000800U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xC0000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x03FF0000U, 0xFFFF0000U, 0xFFF7FFFFU, 0x00000D0BU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x8C00F7EEU, 0xB8000001U, 0xA8000000U, 0x0000003FU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000007U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x80000000U, 0x00000000U, 0x00010000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00008000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00800000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x80000000U, 0x80000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x01FF0000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x007F0000U, + 0x00000000U, 0xFE000000U, 0x00000000U, 0x00000000U, + 0x1E000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00003F80U, 0x00000000U, + 0x00000000U, 0xD8000000U, 0x00000003U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000000FU, 0x00300000U, + 0x00000000U, 0x00000000U, 0xE80023E0U, 0x00000000U, + 0x00000000U, 0x3F000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000200U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x2800F800U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000040U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00FFFFFEU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000000EU, 0x00001FFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x70000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000003EU, 0x00030000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x001F0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000C000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00200000U, + 0x00000000U, 0x0F800000U, 0x00000010U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x80000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000F80U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xC0000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Pc.c b/lib/unistring/unictype/categ_Pc.c new file mode 100644 index 0000000..4020342 --- /dev/null +++ b/lib/unistring/unictype/categ_Pc.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Pc.h b/lib/unistring/unictype/categ_Pc.h new file mode 100644 index 0000000..f182c71 --- /dev/null +++ b/lib/unistring/unictype/categ_Pc.h @@ -0,0 +1,164 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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 + }, + { + 0x00000000U, 0x00000000U, 0x80000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x80000000U, 0x00100001U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00180000U, 0x0000E000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x80000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Pd.c b/lib/unistring/unictype/categ_Pd.c new file mode 100644 index 0000000..f713b69 --- /dev/null +++ b/lib/unistring/unictype/categ_Pd.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Pd.h b/lib/unistring/unictype/categ_Pd.h new file mode 100644 index 0000000..daa9a0d --- /dev/null +++ b/lib/unistring/unictype/categ_Pd.h @@ -0,0 +1,184 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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_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, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -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 + }, + { + 0x00000000U, 0x00002000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000400U, 0x40000000U, 0x00000000U, 0x00000000U, + 0x00000001U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000040U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x003F0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x04800000U, 0x0C000000U, 0x00000001U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x10000000U, 0x00010000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000001U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00060000U, 0x01000000U, 0x00000008U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00002000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Pe.c b/lib/unistring/unictype/categ_Pe.c new file mode 100644 index 0000000..7cf5331 --- /dev/null +++ b/lib/unistring/unictype/categ_Pe.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Pe.h b/lib/unistring/unictype/categ_Pe.h new file mode 100644 index 0000000..a15831a --- /dev/null +++ b/lib/unistring/unictype/categ_Pe.h @@ -0,0 +1,196 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[11 << 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, + 2 + 128 * sizeof (short) / sizeof (int) + 112, + 2 + 128 * 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, + 2 + 128 * sizeof (short) / sizeof (int) + 144, + 2 + 128 * sizeof (short) / sizeof (int) + 160 + }, + { + 0x00000000U, 0x00000200U, 0x20000000U, 0x20000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x28000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x10000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000040U, 0x40000000U, + 0x00004000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000A00U, 0x00000400U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x002AAA00U, + 0x00000000U, 0x00000000U, 0x00000040U, 0x0000AA80U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x01555550U, 0x00000000U, 0x0A000000U, 0x20000000U, + 0x00000000U, 0x000002A8U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xCAA2AA00U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x40000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x01000000U, 0x55400000U, 0x54000115U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000200U, 0x20000000U, 0x20000000U, 0x00000009U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Pf.c b/lib/unistring/unictype/categ_Pf.c new file mode 100644 index 0000000..f78ff73 --- /dev/null +++ b/lib/unistring/unictype/categ_Pf.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Pf.h b/lib/unistring/unictype/categ_Pf.h new file mode 100644 index 0000000..5559188 --- /dev/null +++ b/lib/unistring/unictype/categ_Pf.h @@ -0,0 +1,164 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x08000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x22000000U, 0x04000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x20002428U, 0x00000002U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Pi.c b/lib/unistring/unictype/categ_Pi.c new file mode 100644 index 0000000..9740468 --- /dev/null +++ b/lib/unistring/unictype/categ_Pi.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Pi.h b/lib/unistring/unictype/categ_Pi.h new file mode 100644 index 0000000..8ee94f4 --- /dev/null +++ b/lib/unistring/unictype/categ_Pi.h @@ -0,0 +1,164 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000800U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x99000000U, 0x02000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x10001214U, 0x00000001U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Po.c b/lib/unistring/unictype/categ_Po.c new file mode 100644 index 0000000..9d5e880 --- /dev/null +++ b/lib/unistring/unictype/categ_Po.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Po.h b/lib/unistring/unictype/categ_Po.h new file mode 100644 index 0000000..bca38f9 --- /dev/null +++ b/lib/unistring/unictype/categ_Po.h @@ -0,0 +1,435 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[38 << 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, + 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, + 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, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + 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, + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 400, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 416, + 3 + 256 * sizeof (short) / sizeof (int) + 432, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 448, + 3 + 256 * sizeof (short) / sizeof (int) + 464, + 3 + 256 * sizeof (short) / sizeof (int) + 480, + 3 + 256 * sizeof (short) / sizeof (int) + 496, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 512, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 528, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 560, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 576, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 592, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x8C00D4EEU, 0x10000001U, 0x00000000U, + 0x00000000U, 0x80C00082U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x40000000U, + 0x00000080U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFC000000U, 0x00000000U, + 0x00000200U, 0x00000000U, 0x00000049U, 0x00180000U, + 0xC8003600U, 0x00000000U, 0x00000000U, 0x00003C00U, + 0x00000000U, 0x00000000U, 0x00100000U, 0x00000000U, + 0x00003FFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03800000U, + 0x00000000U, 0x7FFF0000U, 0x40000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00010030U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00010000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00100000U, + 0x00000000U, 0x00000000U, 0x0C008000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0017FFF0U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000020U, 0x00000000U, 0x061F0000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000FC00U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x08000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000001FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00006000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00003800U, + 0x00000000U, 0x00600000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x07700000U, 0x00000000U, + 0x000007BFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000030U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xC0000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00003F7FU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFC000000U, 0x00000001U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xF0000000U, + 0x00000000U, 0xF8000000U, 0x00000000U, 0xC0000000U, + 0x00000000U, 0x00000000U, 0x000800FFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00C00000U, 0x79FF00FFU, 0x7FEBFF8EU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xDE000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00010000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xCB7FC9C3U, 0xF3FF7C00U, 0x0000001AU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000000EU, 0x20000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x08000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xC0000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000E000U, 0x00000000U, 0x00000000U, 0x40080000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00FC0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00F00000U, + 0x00000000U, 0x00000000U, 0x0000C000U, 0x17000000U, + 0x00000000U, 0x0000C000U, 0x80000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xC0003FFEU, 0x00000000U, + 0x00000000U, 0x00000000U, 0xF0000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xC0000000U, 0x00030000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000800U, + 0x027F0000U, 0x00010000U, 0x80F71E60U, 0x00000D03U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x8C00D4EEU, 0x10000001U, 0x00000000U, 0x00000032U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000007U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x80000000U, 0x00000000U, 0x00010000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00008000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00800000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x80000000U, 0x80000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x01FF0000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x007F0000U, + 0x00000000U, 0xFE000000U, 0x00000000U, 0x00000000U, + 0x1E000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00003F80U, 0x00000000U, + 0x00000000U, 0xD8000000U, 0x00000003U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000000FU, 0x00300000U, + 0x00000000U, 0x00000000U, 0xE80023E0U, 0x00000000U, + 0x00000000U, 0x3F000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000200U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x2800F800U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000040U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00FFFFFEU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000000EU, 0x00001FFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x70000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x0000003EU, 0x00030000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x001F0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000C000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00200000U, + 0x00000000U, 0x0F800000U, 0x00000010U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x80000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000F80U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xC0000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Ps.c b/lib/unistring/unictype/categ_Ps.c new file mode 100644 index 0000000..399d4bc --- /dev/null +++ b/lib/unistring/unictype/categ_Ps.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Ps.h b/lib/unistring/unictype/categ_Ps.h new file mode 100644 index 0000000..77941cb --- /dev/null +++ b/lib/unistring/unictype/categ_Ps.h @@ -0,0 +1,196 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[11 << 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, + 2 + 128 * sizeof (short) / sizeof (int) + 112, + 2 + 128 * 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, + 2 + 128 * sizeof (short) / sizeof (int) + 144, + 2 + 128 * sizeof (short) / sizeof (int) + 160 + }, + { + 0x00000000U, 0x00000100U, 0x08000000U, 0x08000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x14000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x08000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x44000000U, 0x00000000U, 0x00000020U, 0x20000000U, + 0x00002000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000500U, 0x00000200U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00155500U, + 0x00000000U, 0x00000000U, 0x00000020U, 0x00005540U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00AAAAA8U, 0x00000000U, 0x05000000U, 0x10000000U, + 0x00000000U, 0x00000154U, 0x00000004U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x25515500U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x80000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00800000U, 0xAAA00000U, 0x2A00008AU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000100U, 0x08000000U, 0x88000000U, 0x00000004U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_S.c b/lib/unistring/unictype/categ_S.c new file mode 100644 index 0000000..3779933 --- /dev/null +++ b/lib/unistring/unictype/categ_S.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_S.h b/lib/unistring/unictype/categ_S.h new file mode 100644 index 0000000..5147dd0 --- /dev/null +++ b/lib/unistring/unictype/categ_S.h @@ -0,0 +1,475 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[48 << 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, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + 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, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + 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, + 3 + 256 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 384, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + 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, + 3 + 256 * sizeof (short) / sizeof (int) + 464, + 3 + 256 * sizeof (short) / sizeof (int) + 480, + 3 + 256 * sizeof (short) / sizeof (int) + 496, + 3 + 256 * sizeof (short) / sizeof (int) + 512, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 528, + 3 + 256 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * 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, + 3 + 256 * 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, + 3 + 256 * sizeof (short) / sizeof (int) + 592, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 608, + 3 + 256 * sizeof (short) / sizeof (int) + 624, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 640, + 3 + 256 * sizeof (short) / sizeof (int) + 656, + 3 + 256 * sizeof (short) / sizeof (int) + 672, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 688, + 3 + 256 * sizeof (short) / sizeof (int) + 704, + 3 + 256 * sizeof (short) / sizeof (int) + 720, + 3 + 256 * sizeof (short) / sizeof (int) + 656, + 3 + 256 * sizeof (short) / sizeof (int) + 736, + 3 + 256 * sizeof (short) / sizeof (int) + 752, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x70000810U, 0x40000000U, 0x50000001U, + 0x00000000U, 0x0113D37CU, 0x00800000U, 0x00800000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFC003CU, 0xFFFFAFE0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00200000U, + 0x00000030U, 0x00000000U, 0x00000000U, 0x00400000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000004U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000E000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000C9C0U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x40000000U, 0x60000200U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00400000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0C0C0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00020000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00010000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x07F80000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00008000U, 0x02000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x80000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFCE8000EU, 0x01500000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xC0000000U, 0x01E0DFBFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xC0000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x03FF0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x08000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000001U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xC0000000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x1FF007FEU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xA0000000U, 0xE000E003U, 0x6000E000U, + 0x00000000U, 0x00000000U, 0x00040010U, 0x1C000000U, + 0x00001C00U, 0x7FFFFFFFU, 0x00000000U, 0x00000000U, + 0xC1D0037BU, 0x0C0042AFU, 0x0000BC1FU, 0x00000000U, + 0xFFFF0C00U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFF0FFU, 0xFFFFF9FFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x7FFFFFFFU, + 0xFFFFFFFFU, 0x0000007FU, 0x000007FFU, 0x00000000U, + 0xF0000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000003FFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000000FFU, + 0xFFF00000U, 0xFFFFFFFFU, 0xFFFFFF9FU, 0xFFFF003FU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFE000007U, 0xFFFFFFFFU, 0xF0FFFFFFU, 0xCFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFCFFFFFU, + 0xFF3FFFFFU, 0xE3FFFFFFU, 0x0003FDFFU, 0x0000F000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000007E0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFBFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000FFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x003FFFFFU, 0x0FFF0000U, + 0x000C0010U, 0xC0C00001U, 0x00000000U, 0x00000000U, + 0x18000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFC30000U, 0x00000000U, 0xFFFFFFFFU, 0x0000000FU, + 0x7FFFFFFFU, 0xFFFFFC00U, 0x000100FFU, 0xFFFFFFFFU, + 0xFFFFFC00U, 0x0001FFFFU, 0xFFFFFFFFU, 0x7FFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFF0000U, 0xFFFFFFFFU, 0x0000007FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x007FFFFFU, 0x00000003U, 0x00000000U, 0x00000000U, + 0x00000600U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x03C00F00U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03800000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x08000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000200U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFC0000U, 0x00000003U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x30000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000274U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x70000810U, 0x40000000U, 0x50000001U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x30007F7FU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFF800000U, 0x00000000U, 0xFE000000U, + 0x0FFF73FFU, 0x00000001U, 0xFFFF0000U, 0x1FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x01800000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000100U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x80000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xF0000000U, 0x00000020U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x10000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x003FFFFFU, + 0xFFFFFFFFU, 0xFFFFFE7FU, 0xFFFFFFFFU, 0x00001C1FU, + 0xFFFFF018U, 0xFFFFC3FFU, 0xFFFFFFFFU, 0x000001FFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000023U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x007FFFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x08000002U, 0x08000000U, + 0x00200000U, 0x00200000U, 0x00008000U, 0x00008000U, + 0x00000200U, 0x00000200U, 0x00000008U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x07800000U, 0x00000000U, 0xFFDFE000U, + 0x0000006FU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00030000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFF0FFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x000FFFFFU, 0xFFFE7FFFU, 0xFFFEFFFEU, 0x003FFFFFU, + 0xFFFF0000U, 0xFFFF7FFFU, 0xFFFFFFFFU, 0xFFFF0FFFU, + 0xFFFFFFFFU, 0x00001FFFU, 0x00000000U, 0xFFFFFFC0U, + 0xFFFF0007U, 0x0FFFFFFFU, 0x000301FFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0007FFFFU, 0x007F1FFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000FFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x001FFFFFU, 0x00000000U, + 0xFFFF0FFFU, 0xFFFFFFFFU, 0x03FF00FFU, 0xFFFFFFFFU, + 0xFFFF00FFU, 0x00003FFFU, 0x00000000U, 0x00000000U, + 0x7FFF0000U, 0x7FF900FFU, 0x7FFF0FFFU, 0x00000000U, + 0x0003FFFFU, 0x00000000U, 0x00000001U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Sc.c b/lib/unistring/unictype/categ_Sc.c new file mode 100644 index 0000000..07442e9 --- /dev/null +++ b/lib/unistring/unictype/categ_Sc.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Sc.h b/lib/unistring/unictype/categ_Sc.h new file mode 100644 index 0000000..b11965d --- /dev/null +++ b/lib/unistring/unictype/categ_Sc.h @@ -0,0 +1,196 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[11 << 4]; + } +u_categ_Sc = +{ + { 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, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + -1, + -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, + 2 + 128 * 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, + 2 + 128 * sizeof (short) / sizeof (int) + 144, + 2 + 128 * sizeof (short) / sizeof (int) + 160 + }, + { + 0x00000000U, 0x00000010U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x0000003CU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00008000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000800U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x080C0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00020000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x02000000U, + 0x00000000U, 0x80000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x08000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x7FFFFFFFU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x01000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x10000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000200U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000010U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000063U + } +}; diff --git a/lib/unistring/unictype/categ_Sk.c b/lib/unistring/unictype/categ_Sk.c new file mode 100644 index 0000000..ab7a56a --- /dev/null +++ b/lib/unistring/unictype/categ_Sk.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Sk.h b/lib/unistring/unictype/categ_Sk.h new file mode 100644 index 0000000..6843868 --- /dev/null +++ b/lib/unistring/unictype/categ_Sk.h @@ -0,0 +1,319 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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_categ_Sk = +{ + { 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, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -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, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -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, + -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 + }, + { + 0x00000000U, 0x00000000U, 0x40000000U, 0x00000001U, + 0x00000000U, 0x01108100U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFC003CU, 0xFFFFAFE0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00200000U, + 0x00000030U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xA0000000U, 0xE000E003U, 0x6000E000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x18000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x007FFFFFU, 0x00000003U, 0x00000000U, 0x00000000U, + 0x00000600U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x08000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFFFC0000U, 0x00000003U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x40000000U, 0x00000001U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000008U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xF8000000U + } +}; diff --git a/lib/unistring/unictype/categ_Sm.c b/lib/unistring/unictype/categ_Sm.c new file mode 100644 index 0000000..29c824d --- /dev/null +++ b/lib/unistring/unictype/categ_Sm.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Sm.h b/lib/unistring/unictype/categ_Sm.h new file mode 100644 index 0000000..e16f449 --- /dev/null +++ b/lib/unistring/unictype/categ_Sm.h @@ -0,0 +1,335 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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_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, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -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, + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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, + 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, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -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 + }, + { + 0x00000000U, 0x70000800U, 0x00000000U, 0x50000000U, + 0x00000000U, 0x00021000U, 0x00800000U, 0x00800000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00400000U, + 0x000001C0U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00040010U, 0x1C000000U, + 0x00001C00U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x01000000U, 0x00000000U, 0x0000081FU, 0x00000000U, + 0x0C1F0000U, 0x00004049U, 0x0014C000U, 0xFFF00000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000003U, 0x00000000U, 0x10000000U, + 0xF8000000U, 0x000FFFFFU, 0xF0000000U, 0x00000003U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00800000U, 0x00000002U, 0xFF000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00008000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFF9FU, 0xFFFF003FU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFE000007U, 0xFFFFFFFFU, 0xF0FFFFFFU, 0xCFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0xFFFF0000U, 0x00001F9FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000200U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000074U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x70000800U, 0x00000000U, 0x50000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00001E04U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x08000002U, 0x08000000U, + 0x00200000U, 0x00200000U, 0x00008000U, 0x00008000U, + 0x00000200U, 0x00000200U, 0x00000008U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00030000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_So.c b/lib/unistring/unictype/categ_So.c new file mode 100644 index 0000000..132bb45 --- /dev/null +++ b/lib/unistring/unictype/categ_So.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_So.h b/lib/unistring/unictype/categ_So.h new file mode 100644 index 0000000..1fac8b1 --- /dev/null +++ b/lib/unistring/unictype/categ_So.h @@ -0,0 +1,447 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[41 << 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, + 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, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + 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, + -1, + 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, + 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, + 3 + 256 * sizeof (short) / sizeof (int) + 464, + -1, + -1, + -1, + -1, + -1, + 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, + 3 + 256 * sizeof (short) / sizeof (int) + 496, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -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) + 512, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 528, + 3 + 256 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 560, + 3 + 256 * sizeof (short) / sizeof (int) + 576, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 592, + 3 + 256 * sizeof (short) / sizeof (int) + 608, + 3 + 256 * sizeof (short) / sizeof (int) + 560, + 3 + 256 * sizeof (short) / sizeof (int) + 624, + 3 + 256 * sizeof (short) / sizeof (int) + 640, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00014240U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000004U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00006000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000C000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x40000000U, 0x60000200U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00400000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x04000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00010000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x05F80000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00008000U, 0x02000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFCE8000EU, 0x01500000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xC0000000U, 0x01E0DFBFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xC0000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x03FF0000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000001U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xC0000000U, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x1FF007FEU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xC0D0037BU, 0x0C0042AFU, 0x0000B400U, 0x00000000U, + 0xF3E00C00U, 0xFFFFBFB6U, 0xFFEB3FFFU, 0x000FFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFF0FFU, 0xFFFFF9FCU, 0xFFFFFFFFU, 0xEFFFFFFFU, + 0x07FFFFFFU, 0xFFF00000U, 0x0FFFFFFFU, 0x7FFFFFFCU, + 0xFFFFFFFFU, 0x0000007FU, 0x000007FFU, 0x00000000U, + 0xF0000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000003FFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFF7FFFFFU, 0xFFFFFFFDU, 0x00FFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFF7FFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000000FFU, + 0xFFF00000U, 0xFFFFFFFFU, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0x0000FFFFU, 0xFFFFE060U, 0xFFCFFFFFU, + 0xFF3FFFFFU, 0xE3FFFFFFU, 0x0003FDFFU, 0x0000F000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x000007E0U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFBFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000FFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x003FFFFFU, 0x0FFF0000U, + 0x000C0010U, 0xC0C00001U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFC30000U, 0x00000000U, 0xFFFFFFFFU, 0x0000000FU, + 0x7FFFFFFFU, 0xFFFFFC00U, 0x000100FFU, 0xFFFFFFFFU, + 0xFFFFFC00U, 0x0001FFFFU, 0xFFFFFFFFU, 0x7FFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFF0000U, 0xFFFFFFFFU, 0x0000007FU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x02C00F00U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x03800000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x20000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x30006110U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xFF800000U, 0x00000000U, 0xFE000000U, + 0x0FFF73FFU, 0x00000001U, 0xFFFF0000U, 0x1FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x01800000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000100U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x80000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0xF0000000U, 0x00000020U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x10000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x003FFFFFU, + 0xFFFFFFFFU, 0xFFFFFE7FU, 0xFFFFFFFFU, 0x00001C1FU, + 0xFFFFF018U, 0xFFFFC3FFU, 0xFFFFFFFFU, 0x000001FFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000023U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x007FFFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x07800000U, 0x00000000U, 0xFFDFE000U, + 0x0000006FU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFF0FFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x000FFFFFU, 0xFFFE7FFFU, 0xFFFEFFFEU, 0x003FFFFFU, + 0xFFFF0000U, 0xFFFF7FFFU, 0xFFFFFFFFU, 0xFFFF0FFFU, + 0xFFFFFFFFU, 0x00001FFFU, 0x00000000U, 0xFFFFFFC0U, + 0xFFFF0007U, 0x0FFFFFFFU, 0x000301FFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x07FFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0007FFFFU, 0x007F1FFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000FFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x001FFFFFU, 0x00000000U, + 0xFFFF0FFFU, 0xFFFFFFFFU, 0x03FF00FFU, 0xFFFFFFFFU, + 0xFFFF00FFU, 0x00003FFFU, 0x00000000U, 0x00000000U, + 0x7FFF0000U, 0x7FF900FFU, 0x7FFF0FFFU, 0x00000000U, + 0x0003FFFFU, 0x00000000U, 0x00000001U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Z.c b/lib/unistring/unictype/categ_Z.c new file mode 100644 index 0000000..5b3ed0b --- /dev/null +++ b/lib/unistring/unictype/categ_Z.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Z.h b/lib/unistring/unictype/categ_Z.h new file mode 100644 index 0000000..172cc93 --- /dev/null +++ b/lib/unistring/unictype/categ_Z.h @@ -0,0 +1,168 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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_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, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x00000001U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000001U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000001U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x000007FFU, 0x00008300U, 0x80000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000001U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Zl.c b/lib/unistring/unictype/categ_Zl.c new file mode 100644 index 0000000..4964533 --- /dev/null +++ b/lib/unistring/unictype/categ_Zl.c @@ -0,0 +1,39 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Zl.h b/lib/unistring/unictype/categ_Zl.h new file mode 100644 index 0000000..1082fdc --- /dev/null +++ b/lib/unistring/unictype/categ_Zl.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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 + }, + { + 0x00000000U, 0x00000100U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Zp.c b/lib/unistring/unictype/categ_Zp.c new file mode 100644 index 0000000..ce22fff --- /dev/null +++ b/lib/unistring/unictype/categ_Zp.c @@ -0,0 +1,39 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Zp.h b/lib/unistring/unictype/categ_Zp.h new file mode 100644 index 0000000..1bcf4bf --- /dev/null +++ b/lib/unistring/unictype/categ_Zp.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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 + }, + { + 0x00000000U, 0x00000200U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_Zs.c b/lib/unistring/unictype/categ_Zs.c new file mode 100644 index 0000000..eeed0ca --- /dev/null +++ b/lib/unistring/unictype/categ_Zs.c @@ -0,0 +1,36 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_Zs.h b/lib/unistring/unictype/categ_Zs.h new file mode 100644 index 0000000..e93f3df --- /dev/null +++ b/lib/unistring/unictype/categ_Zs.h @@ -0,0 +1,168 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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_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, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x00000001U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000001U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000001U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x000007FFU, 0x00008000U, 0x80000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000001U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/categ_and.c b/lib/unistring/unictype/categ_and.c new file mode 100644 index 0000000..ffca2ba --- /dev/null +++ b/lib/unistring/unictype/categ_and.c @@ -0,0 +1,54 @@ +/* Categories of Unicode characters. + Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2007. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_and_not.c b/lib/unistring/unictype/categ_and_not.c new file mode 100644 index 0000000..af51e32 --- /dev/null +++ b/lib/unistring/unictype/categ_and_not.c @@ -0,0 +1,51 @@ +/* Categories of Unicode characters. + Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2007. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_byname.c b/lib/unistring/unictype/categ_byname.c new file mode 100644 index 0000000..ecc3acb --- /dev/null +++ b/lib/unistring/unictype/categ_byname.c @@ -0,0 +1,200 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2011-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unictype.h" + +#include <stdlib.h> +#include <string.h> + +/* Indices stored in the 'struct named_category' elements of the perfect hash + table. We don't use uc_general_category_t values or their addresses + directly, because this would introduce load-time relocations. */ +enum +{ + UC_CATEGORY_INDEX_L, + UC_CATEGORY_INDEX_LC, + UC_CATEGORY_INDEX_Lu, + UC_CATEGORY_INDEX_Ll, + UC_CATEGORY_INDEX_Lt, + UC_CATEGORY_INDEX_Lm, + UC_CATEGORY_INDEX_Lo, + UC_CATEGORY_INDEX_M, + UC_CATEGORY_INDEX_Mn, + UC_CATEGORY_INDEX_Mc, + UC_CATEGORY_INDEX_Me, + UC_CATEGORY_INDEX_N, + UC_CATEGORY_INDEX_Nd, + UC_CATEGORY_INDEX_Nl, + UC_CATEGORY_INDEX_No, + UC_CATEGORY_INDEX_P, + UC_CATEGORY_INDEX_Pc, + UC_CATEGORY_INDEX_Pd, + UC_CATEGORY_INDEX_Ps, + UC_CATEGORY_INDEX_Pe, + UC_CATEGORY_INDEX_Pi, + UC_CATEGORY_INDEX_Pf, + UC_CATEGORY_INDEX_Po, + UC_CATEGORY_INDEX_S, + UC_CATEGORY_INDEX_Sm, + UC_CATEGORY_INDEX_Sc, + UC_CATEGORY_INDEX_Sk, + UC_CATEGORY_INDEX_So, + UC_CATEGORY_INDEX_Z, + UC_CATEGORY_INDEX_Zs, + UC_CATEGORY_INDEX_Zl, + UC_CATEGORY_INDEX_Zp, + UC_CATEGORY_INDEX_C, + UC_CATEGORY_INDEX_Cc, + UC_CATEGORY_INDEX_Cf, + UC_CATEGORY_INDEX_Cs, + UC_CATEGORY_INDEX_Co, + UC_CATEGORY_INDEX_Cn +}; + +#include "unictype/categ_byname.h" + +uc_general_category_t +uc_general_category_byname (const char *category_name) +{ + size_t len; + + len = strlen (category_name); + if (len <= MAX_WORD_LENGTH) + { + char buf[MAX_WORD_LENGTH + 1]; + const struct named_category *found; + + /* Copy category_name into buf, converting '_' and '-' to ' '. */ + { + const char *p = category_name; + char *q = buf; + + for (;; p++, q++) + { + char c = *p; + + if (c == '_' || c == '-') + c = ' '; + *q = c; + if (c == '\0') + break; + } + } + /* Here q == buf + len. */ + + /* Do a hash table lookup, with case-insensitive comparison. */ + found = uc_general_category_lookup (buf, len); + if (found != NULL) + /* Use a 'switch' statement here, because a table would introduce + load-time relocations. */ + switch (found->category_index) + { + case UC_CATEGORY_INDEX_L: + return UC_CATEGORY_L; + case UC_CATEGORY_INDEX_LC: + return UC_CATEGORY_LC; + case UC_CATEGORY_INDEX_Lu: + return UC_CATEGORY_Lu; + case UC_CATEGORY_INDEX_Ll: + return UC_CATEGORY_Ll; + case UC_CATEGORY_INDEX_Lt: + return UC_CATEGORY_Lt; + case UC_CATEGORY_INDEX_Lm: + return UC_CATEGORY_Lm; + case UC_CATEGORY_INDEX_Lo: + return UC_CATEGORY_Lo; + case UC_CATEGORY_INDEX_M: + return UC_CATEGORY_M; + case UC_CATEGORY_INDEX_Mn: + return UC_CATEGORY_Mn; + case UC_CATEGORY_INDEX_Mc: + return UC_CATEGORY_Mc; + case UC_CATEGORY_INDEX_Me: + return UC_CATEGORY_Me; + case UC_CATEGORY_INDEX_N: + return UC_CATEGORY_N; + case UC_CATEGORY_INDEX_Nd: + return UC_CATEGORY_Nd; + case UC_CATEGORY_INDEX_Nl: + return UC_CATEGORY_Nl; + case UC_CATEGORY_INDEX_No: + return UC_CATEGORY_No; + case UC_CATEGORY_INDEX_P: + return UC_CATEGORY_P; + case UC_CATEGORY_INDEX_Pc: + return UC_CATEGORY_Pc; + case UC_CATEGORY_INDEX_Pd: + return UC_CATEGORY_Pd; + case UC_CATEGORY_INDEX_Ps: + return UC_CATEGORY_Ps; + case UC_CATEGORY_INDEX_Pe: + return UC_CATEGORY_Pe; + case UC_CATEGORY_INDEX_Pi: + return UC_CATEGORY_Pi; + case UC_CATEGORY_INDEX_Pf: + return UC_CATEGORY_Pf; + case UC_CATEGORY_INDEX_Po: + return UC_CATEGORY_Po; + case UC_CATEGORY_INDEX_S: + return UC_CATEGORY_S; + case UC_CATEGORY_INDEX_Sm: + return UC_CATEGORY_Sm; + case UC_CATEGORY_INDEX_Sc: + return UC_CATEGORY_Sc; + case UC_CATEGORY_INDEX_Sk: + return UC_CATEGORY_Sk; + case UC_CATEGORY_INDEX_So: + return UC_CATEGORY_So; + case UC_CATEGORY_INDEX_Z: + return UC_CATEGORY_Z; + case UC_CATEGORY_INDEX_Zs: + return UC_CATEGORY_Zs; + case UC_CATEGORY_INDEX_Zl: + return UC_CATEGORY_Zl; + case UC_CATEGORY_INDEX_Zp: + return UC_CATEGORY_Zp; + case UC_CATEGORY_INDEX_C: + return UC_CATEGORY_C; + case UC_CATEGORY_INDEX_Cc: + return UC_CATEGORY_Cc; + case UC_CATEGORY_INDEX_Cf: + return UC_CATEGORY_Cf; + case UC_CATEGORY_INDEX_Cs: + return UC_CATEGORY_Cs; + case UC_CATEGORY_INDEX_Co: + return UC_CATEGORY_Co; + case UC_CATEGORY_INDEX_Cn: + return UC_CATEGORY_Cn; + default: + abort (); + } + } + /* Invalid category name. */ + return _UC_CATEGORY_NONE; +} diff --git a/lib/unistring/unictype/categ_byname.gperf b/lib/unistring/unictype/categ_byname.gperf new file mode 100644 index 0000000..54d1996 --- /dev/null +++ b/lib/unistring/unictype/categ_byname.gperf @@ -0,0 +1,116 @@ +/* Categories of Unicode characters. */ +struct named_category { int name; unsigned int category_index; }; +%struct-type +%ignore-case +%language=ANSI-C +%define hash-function-name general_category_hash +%define lookup-function-name uc_general_category_lookup +%readonly-tables +%global-table +%define word-array-name general_category_names +%pic +%define string-pool-name general_category_stringpool +%% +L, UC_CATEGORY_INDEX_L +LC, UC_CATEGORY_INDEX_LC +Lu, UC_CATEGORY_INDEX_Lu +Ll, UC_CATEGORY_INDEX_Ll +Lt, UC_CATEGORY_INDEX_Lt +Lm, UC_CATEGORY_INDEX_Lm +Lo, UC_CATEGORY_INDEX_Lo +M, UC_CATEGORY_INDEX_M +Mn, UC_CATEGORY_INDEX_Mn +Mc, UC_CATEGORY_INDEX_Mc +Me, UC_CATEGORY_INDEX_Me +N, UC_CATEGORY_INDEX_N +Nd, UC_CATEGORY_INDEX_Nd +Nl, UC_CATEGORY_INDEX_Nl +No, UC_CATEGORY_INDEX_No +P, UC_CATEGORY_INDEX_P +Pc, UC_CATEGORY_INDEX_Pc +Pd, UC_CATEGORY_INDEX_Pd +Ps, UC_CATEGORY_INDEX_Ps +Pe, UC_CATEGORY_INDEX_Pe +Pi, UC_CATEGORY_INDEX_Pi +Pf, UC_CATEGORY_INDEX_Pf +Po, UC_CATEGORY_INDEX_Po +S, UC_CATEGORY_INDEX_S +Sm, UC_CATEGORY_INDEX_Sm +Sc, UC_CATEGORY_INDEX_Sc +Sk, UC_CATEGORY_INDEX_Sk +So, UC_CATEGORY_INDEX_So +Z, UC_CATEGORY_INDEX_Z +Zs, UC_CATEGORY_INDEX_Zs +Zl, UC_CATEGORY_INDEX_Zl +Zp, UC_CATEGORY_INDEX_Zp +C, UC_CATEGORY_INDEX_C +Cc, UC_CATEGORY_INDEX_Cc +Cf, UC_CATEGORY_INDEX_Cf +Cs, UC_CATEGORY_INDEX_Cs +Co, UC_CATEGORY_INDEX_Co +Cn, UC_CATEGORY_INDEX_Cn +Letter, UC_CATEGORY_INDEX_L +Cased Letter, UC_CATEGORY_INDEX_LC +CasedLetter, UC_CATEGORY_INDEX_LC +Uppercase Letter, UC_CATEGORY_INDEX_Lu +UppercaseLetter, UC_CATEGORY_INDEX_Lu +Lowercase Letter, UC_CATEGORY_INDEX_Ll +LowercaseLetter, UC_CATEGORY_INDEX_Ll +Titlecase Letter, UC_CATEGORY_INDEX_Lt +TitlecaseLetter, UC_CATEGORY_INDEX_Lt +Modifier Letter, UC_CATEGORY_INDEX_Lm +ModifierLetter, UC_CATEGORY_INDEX_Lm +Other Letter, UC_CATEGORY_INDEX_Lo +OtherLetter, UC_CATEGORY_INDEX_Lo +Mark, UC_CATEGORY_INDEX_M +Nonspacing Mark, UC_CATEGORY_INDEX_Mn +NonspacingMark, UC_CATEGORY_INDEX_Mn +Spacing Mark, UC_CATEGORY_INDEX_Mc +SpacingMark, UC_CATEGORY_INDEX_Mc +Enclosing Mark, UC_CATEGORY_INDEX_Me +EnclosingMark, UC_CATEGORY_INDEX_Me +Number, UC_CATEGORY_INDEX_N +Decimal Number, UC_CATEGORY_INDEX_Nd +DecimalNumber, UC_CATEGORY_INDEX_Nd +Letter Number, UC_CATEGORY_INDEX_Nl +LetterNumber, UC_CATEGORY_INDEX_Nl +Other Number, UC_CATEGORY_INDEX_No +OtherNumber, UC_CATEGORY_INDEX_No +Punctuation, UC_CATEGORY_INDEX_P +Connector Punctuation, UC_CATEGORY_INDEX_Pc +ConnectorPunctuation, UC_CATEGORY_INDEX_Pc +Dash Punctuation, UC_CATEGORY_INDEX_Pd +DashPunctuation, UC_CATEGORY_INDEX_Pd +Open Punctuation, UC_CATEGORY_INDEX_Ps +OpenPunctuation, UC_CATEGORY_INDEX_Ps +Close Punctuation, UC_CATEGORY_INDEX_Pe +ClosePunctuation, UC_CATEGORY_INDEX_Pe +Initial Punctuation, UC_CATEGORY_INDEX_Pi +InitialPunctuation, UC_CATEGORY_INDEX_Pi +Final Punctuation, UC_CATEGORY_INDEX_Pf +FinalPunctuation, UC_CATEGORY_INDEX_Pf +Other Punctuation, UC_CATEGORY_INDEX_Po +OtherPunctuation, UC_CATEGORY_INDEX_Po +Symbol, UC_CATEGORY_INDEX_S +Math Symbol, UC_CATEGORY_INDEX_Sm +MathSymbol, UC_CATEGORY_INDEX_Sm +Currency Symbol, UC_CATEGORY_INDEX_Sc +CurrencySymbol, UC_CATEGORY_INDEX_Sc +Modifier Symbol, UC_CATEGORY_INDEX_Sk +ModifierSymbol, UC_CATEGORY_INDEX_Sk +Other Symbol, UC_CATEGORY_INDEX_So +OtherSymbol, UC_CATEGORY_INDEX_So +Separator, UC_CATEGORY_INDEX_Z +Space Separator, UC_CATEGORY_INDEX_Zs +SpaceSeparator, UC_CATEGORY_INDEX_Zs +Line Separator, UC_CATEGORY_INDEX_Zl +LineSeparator, UC_CATEGORY_INDEX_Zl +Paragraph Separator, UC_CATEGORY_INDEX_Zp +ParagraphSeparator, UC_CATEGORY_INDEX_Zp +Other, UC_CATEGORY_INDEX_C +Control, UC_CATEGORY_INDEX_Cc +Format, UC_CATEGORY_INDEX_Cf +Surrogate, UC_CATEGORY_INDEX_Cs +Private Use, UC_CATEGORY_INDEX_Co +PrivateUse, UC_CATEGORY_INDEX_Co +Unassigned, UC_CATEGORY_INDEX_Cn diff --git a/lib/unistring/unictype/categ_byname.h b/lib/unistring/unictype/categ_byname.h new file mode 100644 index 0000000..1f28a13 --- /dev/null +++ b/lib/unistring/unictype/categ_byname.h @@ -0,0 +1,616 @@ +/* ANSI-C code produced by gperf version 3.1 */ +/* Command-line: gperf -m 10 ./unictype/categ_byname.gperf */ +/* Computed positions: -k'1-2,7,$' */ + +#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ + && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \ + && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \ + && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \ + && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \ + && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \ + && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \ + && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \ + && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \ + && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \ + && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \ + && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \ + && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \ + && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \ + && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \ + && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \ + && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \ + && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \ + && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \ + && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \ + && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \ + && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \ + && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126)) +/* The character set is not based on ISO-646. */ +#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gperf@gnu.org>." +#endif + +#line 2 "./unictype/categ_byname.gperf" +struct named_category { int name; unsigned int category_index; }; + +#define TOTAL_KEYWORDS 103 +#define MIN_WORD_LENGTH 1 +#define MAX_WORD_LENGTH 21 +#define MIN_HASH_VALUE 1 +#define MAX_HASH_VALUE 150 +/* maximum key range = 150, duplicates = 0 */ + +#ifndef GPERF_DOWNCASE +#define GPERF_DOWNCASE 1 +static unsigned char gperf_downcase[256] = + { + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255 + }; +#endif + +#ifndef GPERF_CASE_STRCMP +#define GPERF_CASE_STRCMP 1 +static int +gperf_case_strcmp (register const char *s1, register const char *s2) +{ + for (;;) + { + unsigned char c1 = gperf_downcase[(unsigned char)*s1++]; + unsigned char c2 = gperf_downcase[(unsigned char)*s2++]; + if (c1 != 0 && c1 == c2) + continue; + return (int)c1 - (int)c2; + } +} +#endif + +#ifdef __GNUC__ +__inline +#else +#ifdef __cplusplus +inline +#endif +#endif +static unsigned int +general_category_hash (register const char *str, register size_t len) +{ + static const unsigned char asso_values[] = + { + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 1, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 16, 151, 1, 66, 21, + 9, 25, 151, 62, 151, 49, 0, 51, 4, 7, + 6, 151, 25, 42, 5, 8, 151, 151, 151, 0, + 45, 151, 151, 151, 151, 151, 151, 16, 151, 1, + 66, 21, 9, 25, 151, 62, 151, 49, 0, 51, + 4, 7, 6, 151, 25, 42, 5, 8, 151, 151, + 151, 0, 45, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, + 151, 151, 151, 151, 151, 151 + }; + register unsigned int hval = len; + + switch (hval) + { + default: + hval += asso_values[(unsigned char)str[6]]; + /*FALLTHROUGH*/ + case 6: + case 5: + case 4: + case 3: + case 2: + hval += asso_values[(unsigned char)str[1]]; + /*FALLTHROUGH*/ + case 1: + hval += asso_values[(unsigned char)str[0]]; + break; + } + return hval + asso_values[(unsigned char)str[len - 1]]; +} + +struct general_category_stringpool_t + { + char general_category_stringpool_str1[sizeof("L")]; + char general_category_stringpool_str2[sizeof("Ll")]; + char general_category_stringpool_str3[sizeof("C")]; + char general_category_stringpool_str4[sizeof("LC")]; + char general_category_stringpool_str5[sizeof("Cc")]; + char general_category_stringpool_str6[sizeof("Nl")]; + char general_category_stringpool_str9[sizeof("N")]; + char general_category_stringpool_str10[sizeof("Pc")]; + char general_category_stringpool_str11[sizeof("Cn")]; + char general_category_stringpool_str12[sizeof("Lt")]; + char general_category_stringpool_str13[sizeof("P")]; + char general_category_stringpool_str15[sizeof("Control")]; + char general_category_stringpool_str16[sizeof("Lo")]; + char general_category_stringpool_str17[sizeof("Co")]; + char general_category_stringpool_str18[sizeof("Lu")]; + char general_category_stringpool_str20[sizeof("No")]; + char general_category_stringpool_str21[sizeof("Cf")]; + char general_category_stringpool_str22[sizeof("Po")]; + char general_category_stringpool_str23[sizeof("OtherSymbol")]; + char general_category_stringpool_str24[sizeof("CurrencySymbol")]; + char general_category_stringpool_str25[sizeof("Currency Symbol")]; + char general_category_stringpool_str26[sizeof("Pf")]; + char general_category_stringpool_str27[sizeof("Format")]; + char general_category_stringpool_str28[sizeof("Close Punctuation")]; + char general_category_stringpool_str29[sizeof("ClosePunctuation")]; + char general_category_stringpool_str36[sizeof("OpenPunctuation")]; + char general_category_stringpool_str37[sizeof("ConnectorPunctuation")]; + char general_category_stringpool_str38[sizeof("Connector Punctuation")]; + char general_category_stringpool_str39[sizeof("Other Punctuation")]; + char general_category_stringpool_str40[sizeof("OtherPunctuation")]; + char general_category_stringpool_str41[sizeof("Open Punctuation")]; + char general_category_stringpool_str42[sizeof("Other")]; + char general_category_stringpool_str43[sizeof("Number")]; + char general_category_stringpool_str45[sizeof("Punctuation")]; + char general_category_stringpool_str46[sizeof("Sc")]; + char general_category_stringpool_str47[sizeof("Zl")]; + char general_category_stringpool_str48[sizeof("Symbol")]; + char general_category_stringpool_str49[sizeof("Other Letter")]; + char general_category_stringpool_str50[sizeof("Pe")]; + char general_category_stringpool_str52[sizeof("Letter")]; + char general_category_stringpool_str53[sizeof("Other Number")]; + char general_category_stringpool_str54[sizeof("Cased Letter")]; + char general_category_stringpool_str55[sizeof("Mc")]; + char general_category_stringpool_str56[sizeof("OtherNumber")]; + char general_category_stringpool_str58[sizeof("So")]; + char general_category_stringpool_str59[sizeof("Zp")]; + char general_category_stringpool_str60[sizeof("Letter Number")]; + char general_category_stringpool_str61[sizeof("Mn")]; + char general_category_stringpool_str62[sizeof("LetterNumber")]; + char general_category_stringpool_str63[sizeof("LowercaseLetter")]; + char general_category_stringpool_str64[sizeof("Lowercase Letter")]; + char general_category_stringpool_str66[sizeof("Other Symbol")]; + char general_category_stringpool_str69[sizeof("OtherLetter")]; + char general_category_stringpool_str70[sizeof("UppercaseLetter")]; + char general_category_stringpool_str71[sizeof("Uppercase Letter")]; + char general_category_stringpool_str74[sizeof("CasedLetter")]; + char general_category_stringpool_str75[sizeof("NonspacingMark")]; + char general_category_stringpool_str76[sizeof("Nonspacing Mark")]; + char general_category_stringpool_str78[sizeof("Math Symbol")]; + char general_category_stringpool_str81[sizeof("ParagraphSeparator")]; + char general_category_stringpool_str82[sizeof("Paragraph Separator")]; + char general_category_stringpool_str83[sizeof("PrivateUse")]; + char general_category_stringpool_str84[sizeof("Private Use")]; + char general_category_stringpool_str85[sizeof("S")]; + char general_category_stringpool_str87[sizeof("Cs")]; + char general_category_stringpool_str88[sizeof("InitialPunctuation")]; + char general_category_stringpool_str89[sizeof("Initial Punctuation")]; + char general_category_stringpool_str91[sizeof("Z")]; + char general_category_stringpool_str92[sizeof("Ps")]; + char general_category_stringpool_str93[sizeof("ModifierSymbol")]; + char general_category_stringpool_str94[sizeof("Modifier Symbol")]; + char general_category_stringpool_str95[sizeof("Me")]; + char general_category_stringpool_str96[sizeof("Surrogate")]; + char general_category_stringpool_str98[sizeof("Final Punctuation")]; + char general_category_stringpool_str99[sizeof("FinalPunctuation")]; + char general_category_stringpool_str102[sizeof("Separator")]; + char general_category_stringpool_str103[sizeof("M")]; + char general_category_stringpool_str104[sizeof("Lm")]; + char general_category_stringpool_str105[sizeof("DashPunctuation")]; + char general_category_stringpool_str106[sizeof("LineSeparator")]; + char general_category_stringpool_str108[sizeof("SpaceSeparator")]; + char general_category_stringpool_str110[sizeof("Dash Punctuation")]; + char general_category_stringpool_str113[sizeof("Unassigned")]; + char general_category_stringpool_str118[sizeof("ModifierLetter")]; + char general_category_stringpool_str119[sizeof("Modifier Letter")]; + char general_category_stringpool_str120[sizeof("Mark")]; + char general_category_stringpool_str122[sizeof("Line Separator")]; + char general_category_stringpool_str123[sizeof("TitlecaseLetter")]; + char general_category_stringpool_str124[sizeof("Titlecase Letter")]; + char general_category_stringpool_str125[sizeof("DecimalNumber")]; + char general_category_stringpool_str126[sizeof("Decimal Number")]; + char general_category_stringpool_str128[sizeof("MathSymbol")]; + char general_category_stringpool_str130[sizeof("Space Separator")]; + char general_category_stringpool_str131[sizeof("Zs")]; + char general_category_stringpool_str132[sizeof("Pi")]; + char general_category_stringpool_str133[sizeof("SpacingMark")]; + char general_category_stringpool_str134[sizeof("Spacing Mark")]; + char general_category_stringpool_str138[sizeof("Nd")]; + char general_category_stringpool_str140[sizeof("Pd")]; + char general_category_stringpool_str142[sizeof("Sk")]; + char general_category_stringpool_str146[sizeof("Sm")]; + char general_category_stringpool_str149[sizeof("EnclosingMark")]; + char general_category_stringpool_str150[sizeof("Enclosing Mark")]; + }; +static const struct general_category_stringpool_t general_category_stringpool_contents = + { + "L", + "Ll", + "C", + "LC", + "Cc", + "Nl", + "N", + "Pc", + "Cn", + "Lt", + "P", + "Control", + "Lo", + "Co", + "Lu", + "No", + "Cf", + "Po", + "OtherSymbol", + "CurrencySymbol", + "Currency Symbol", + "Pf", + "Format", + "Close Punctuation", + "ClosePunctuation", + "OpenPunctuation", + "ConnectorPunctuation", + "Connector Punctuation", + "Other Punctuation", + "OtherPunctuation", + "Open Punctuation", + "Other", + "Number", + "Punctuation", + "Sc", + "Zl", + "Symbol", + "Other Letter", + "Pe", + "Letter", + "Other Number", + "Cased Letter", + "Mc", + "OtherNumber", + "So", + "Zp", + "Letter Number", + "Mn", + "LetterNumber", + "LowercaseLetter", + "Lowercase Letter", + "Other Symbol", + "OtherLetter", + "UppercaseLetter", + "Uppercase Letter", + "CasedLetter", + "NonspacingMark", + "Nonspacing Mark", + "Math Symbol", + "ParagraphSeparator", + "Paragraph Separator", + "PrivateUse", + "Private Use", + "S", + "Cs", + "InitialPunctuation", + "Initial Punctuation", + "Z", + "Ps", + "ModifierSymbol", + "Modifier Symbol", + "Me", + "Surrogate", + "Final Punctuation", + "FinalPunctuation", + "Separator", + "M", + "Lm", + "DashPunctuation", + "LineSeparator", + "SpaceSeparator", + "Dash Punctuation", + "Unassigned", + "ModifierLetter", + "Modifier Letter", + "Mark", + "Line Separator", + "TitlecaseLetter", + "Titlecase Letter", + "DecimalNumber", + "Decimal Number", + "MathSymbol", + "Space Separator", + "Zs", + "Pi", + "SpacingMark", + "Spacing Mark", + "Nd", + "Pd", + "Sk", + "Sm", + "EnclosingMark", + "Enclosing Mark" + }; +#define general_category_stringpool ((const char *) &general_category_stringpool_contents) + +static const struct named_category general_category_names[] = + { + {-1}, +#line 14 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str1, UC_CATEGORY_INDEX_L}, +#line 17 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str2, UC_CATEGORY_INDEX_Ll}, +#line 46 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str3, UC_CATEGORY_INDEX_C}, +#line 15 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str4, UC_CATEGORY_INDEX_LC}, +#line 47 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str5, UC_CATEGORY_INDEX_Cc}, +#line 27 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str6, UC_CATEGORY_INDEX_Nl}, + {-1}, {-1}, +#line 25 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str9, UC_CATEGORY_INDEX_N}, +#line 30 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str10, UC_CATEGORY_INDEX_Pc}, +#line 51 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str11, UC_CATEGORY_INDEX_Cn}, +#line 18 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str12, UC_CATEGORY_INDEX_Lt}, +#line 29 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str13, UC_CATEGORY_INDEX_P}, + {-1}, +#line 111 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str15, UC_CATEGORY_INDEX_Cc}, +#line 20 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str16, UC_CATEGORY_INDEX_Lo}, +#line 50 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str17, UC_CATEGORY_INDEX_Co}, +#line 16 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str18, UC_CATEGORY_INDEX_Lu}, + {-1}, +#line 28 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str20, UC_CATEGORY_INDEX_No}, +#line 48 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str21, UC_CATEGORY_INDEX_Cf}, +#line 36 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str22, UC_CATEGORY_INDEX_Po}, +#line 102 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str23, UC_CATEGORY_INDEX_So}, +#line 98 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str24, UC_CATEGORY_INDEX_Sc}, +#line 97 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str25, UC_CATEGORY_INDEX_Sc}, +#line 35 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str26, UC_CATEGORY_INDEX_Pf}, +#line 112 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str27, UC_CATEGORY_INDEX_Cf}, +#line 86 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str28, UC_CATEGORY_INDEX_Pe}, +#line 87 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str29, UC_CATEGORY_INDEX_Pe}, + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, +#line 85 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str36, UC_CATEGORY_INDEX_Ps}, +#line 81 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str37, UC_CATEGORY_INDEX_Pc}, +#line 80 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str38, UC_CATEGORY_INDEX_Pc}, +#line 92 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str39, UC_CATEGORY_INDEX_Po}, +#line 93 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str40, UC_CATEGORY_INDEX_Po}, +#line 84 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str41, UC_CATEGORY_INDEX_Ps}, +#line 110 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str42, UC_CATEGORY_INDEX_C}, +#line 72 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str43, UC_CATEGORY_INDEX_N}, + {-1}, +#line 79 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str45, UC_CATEGORY_INDEX_P}, +#line 39 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str46, UC_CATEGORY_INDEX_Sc}, +#line 44 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str47, UC_CATEGORY_INDEX_Zl}, +#line 94 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str48, UC_CATEGORY_INDEX_S}, +#line 63 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str49, UC_CATEGORY_INDEX_Lo}, +#line 33 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str50, UC_CATEGORY_INDEX_Pe}, + {-1}, +#line 52 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str52, UC_CATEGORY_INDEX_L}, +#line 77 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str53, UC_CATEGORY_INDEX_No}, +#line 53 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str54, UC_CATEGORY_INDEX_LC}, +#line 23 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str55, UC_CATEGORY_INDEX_Mc}, +#line 78 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str56, UC_CATEGORY_INDEX_No}, + {-1}, +#line 41 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str58, UC_CATEGORY_INDEX_So}, +#line 45 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str59, UC_CATEGORY_INDEX_Zp}, +#line 75 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str60, UC_CATEGORY_INDEX_Nl}, +#line 22 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str61, UC_CATEGORY_INDEX_Mn}, +#line 76 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str62, UC_CATEGORY_INDEX_Nl}, +#line 58 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str63, UC_CATEGORY_INDEX_Ll}, +#line 57 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str64, UC_CATEGORY_INDEX_Ll}, + {-1}, +#line 101 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str66, UC_CATEGORY_INDEX_So}, + {-1}, {-1}, +#line 64 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str69, UC_CATEGORY_INDEX_Lo}, +#line 56 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str70, UC_CATEGORY_INDEX_Lu}, +#line 55 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str71, UC_CATEGORY_INDEX_Lu}, + {-1}, {-1}, +#line 54 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str74, UC_CATEGORY_INDEX_LC}, +#line 67 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str75, UC_CATEGORY_INDEX_Mn}, +#line 66 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str76, UC_CATEGORY_INDEX_Mn}, + {-1}, +#line 95 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str78, UC_CATEGORY_INDEX_Sm}, + {-1}, {-1}, +#line 109 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str81, UC_CATEGORY_INDEX_Zp}, +#line 108 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str82, UC_CATEGORY_INDEX_Zp}, +#line 115 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str83, UC_CATEGORY_INDEX_Co}, +#line 114 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str84, UC_CATEGORY_INDEX_Co}, +#line 37 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str85, UC_CATEGORY_INDEX_S}, + {-1}, +#line 49 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str87, UC_CATEGORY_INDEX_Cs}, +#line 89 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str88, UC_CATEGORY_INDEX_Pi}, +#line 88 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str89, UC_CATEGORY_INDEX_Pi}, + {-1}, +#line 42 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str91, UC_CATEGORY_INDEX_Z}, +#line 32 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str92, UC_CATEGORY_INDEX_Ps}, +#line 100 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str93, UC_CATEGORY_INDEX_Sk}, +#line 99 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str94, UC_CATEGORY_INDEX_Sk}, +#line 24 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str95, UC_CATEGORY_INDEX_Me}, +#line 113 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str96, UC_CATEGORY_INDEX_Cs}, + {-1}, +#line 90 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str98, UC_CATEGORY_INDEX_Pf}, +#line 91 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str99, UC_CATEGORY_INDEX_Pf}, + {-1}, {-1}, +#line 103 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str102, UC_CATEGORY_INDEX_Z}, +#line 21 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str103, UC_CATEGORY_INDEX_M}, +#line 19 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str104, UC_CATEGORY_INDEX_Lm}, +#line 83 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str105, UC_CATEGORY_INDEX_Pd}, +#line 107 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str106, UC_CATEGORY_INDEX_Zl}, + {-1}, +#line 105 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str108, UC_CATEGORY_INDEX_Zs}, + {-1}, +#line 82 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str110, UC_CATEGORY_INDEX_Pd}, + {-1}, {-1}, +#line 116 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str113, UC_CATEGORY_INDEX_Cn}, + {-1}, {-1}, {-1}, {-1}, +#line 62 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str118, UC_CATEGORY_INDEX_Lm}, +#line 61 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str119, UC_CATEGORY_INDEX_Lm}, +#line 65 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str120, UC_CATEGORY_INDEX_M}, + {-1}, +#line 106 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str122, UC_CATEGORY_INDEX_Zl}, +#line 60 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str123, UC_CATEGORY_INDEX_Lt}, +#line 59 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str124, UC_CATEGORY_INDEX_Lt}, +#line 74 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str125, UC_CATEGORY_INDEX_Nd}, +#line 73 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str126, UC_CATEGORY_INDEX_Nd}, + {-1}, +#line 96 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str128, UC_CATEGORY_INDEX_Sm}, + {-1}, +#line 104 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str130, UC_CATEGORY_INDEX_Zs}, +#line 43 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str131, UC_CATEGORY_INDEX_Zs}, +#line 34 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str132, UC_CATEGORY_INDEX_Pi}, +#line 69 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str133, UC_CATEGORY_INDEX_Mc}, +#line 68 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str134, UC_CATEGORY_INDEX_Mc}, + {-1}, {-1}, {-1}, +#line 26 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str138, UC_CATEGORY_INDEX_Nd}, + {-1}, +#line 31 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str140, UC_CATEGORY_INDEX_Pd}, + {-1}, +#line 40 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str142, UC_CATEGORY_INDEX_Sk}, + {-1}, {-1}, {-1}, +#line 38 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str146, UC_CATEGORY_INDEX_Sm}, + {-1}, {-1}, +#line 71 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str149, UC_CATEGORY_INDEX_Me}, +#line 70 "./unictype/categ_byname.gperf" + {(int)(size_t)&((struct general_category_stringpool_t *)0)->general_category_stringpool_str150, UC_CATEGORY_INDEX_Me} + }; + +static const struct named_category * +uc_general_category_lookup (register const char *str, register size_t len) +{ + if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) + { + register unsigned int key = general_category_hash (str, len); + + if (key <= MAX_HASH_VALUE) + { + register int o = general_category_names[key].name; + if (o >= 0) + { + register const char *s = o + general_category_stringpool; + + if ((((unsigned char)*str ^ (unsigned char)*s) & ~32) == 0 && !gperf_case_strcmp (str, s)) + return &general_category_names[key]; + } + } + } + return 0; +} diff --git a/lib/unistring/unictype/categ_longname.c b/lib/unistring/unictype/categ_longname.c new file mode 100644 index 0000000..9dbc9cb --- /dev/null +++ b/lib/unistring/unictype/categ_longname.c @@ -0,0 +1,115 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2011-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2011. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unictype.h" + +static const char u_category_long_name[30][22] = +{ + "Uppercase Letter", + "Lowercase Letter", + "Titlecase Letter", + "Modifier Letter", + "Other Letter", + "Nonspacing Mark", + "Spacing Mark", + "Enclosing Mark", + "Decimal Number", + "Letter Number", + "Other Number", + "Connector Punctuation", + "Dash Punctuation", + "Open Punctuation", + "Close Punctuation", + "Initial Punctuation", + "Final Punctuation", + "Other Punctuation", + "Math Symbol", + "Currency Symbol", + "Modifier Symbol", + "Other Symbol", + "Space Separator", + "Line Separator", + "Paragraph Separator", + "Control", + "Format", + "Surrogate", + "Private Use", + "Unassigned" +}; + +const char * +uc_general_category_long_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_long_name) / sizeof (u_category_long_name[0])) + return u_category_long_name[bit]; + } + else + { + if (bitmask == UC_CATEGORY_MASK_L) + return "Letter"; + if (bitmask == UC_CATEGORY_MASK_LC) + return "Cased Letter"; + if (bitmask == UC_CATEGORY_MASK_M) + return "Mark"; + if (bitmask == UC_CATEGORY_MASK_N) + return "Number"; + if (bitmask == UC_CATEGORY_MASK_P) + return "Punctuation"; + if (bitmask == UC_CATEGORY_MASK_S) + return "Symbol"; + if (bitmask == UC_CATEGORY_MASK_Z) + return "Separator"; + if (bitmask == UC_CATEGORY_MASK_C) + return "Other"; + } + } + return NULL; +} diff --git a/lib/unistring/unictype/categ_name.c b/lib/unistring/unictype/categ_name.c new file mode 100644 index 0000000..be512c5 --- /dev/null +++ b/lib/unistring/unictype/categ_name.c @@ -0,0 +1,88 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2011-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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_LC) + return "LC"; + 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/unistring/unictype/categ_none.c b/lib/unistring/unictype/categ_none.c new file mode 100644 index 0000000..0aec635 --- /dev/null +++ b/lib/unistring/unictype/categ_none.c @@ -0,0 +1,39 @@ +/* Categories of Unicode characters. + Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2007. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_of.c b/lib/unistring/unictype/categ_of.c new file mode 100644 index 0000000..fb0c075 --- /dev/null +++ b/lib/unistring/unictype/categ_of.c @@ -0,0 +1,90 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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 = + (((unsigned int) u_category.level3[index3>>4] + | ((unsigned int) 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/unistring/unictype/categ_of.h b/lib/unistring/unictype/categ_of.h new file mode 100644 index 0000000..605b235 --- /dev/null +++ b/lib/unistring/unictype/categ_of.h @@ -0,0 +1,1428 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[216 * 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, + 2048, 2176, 2304, 2432, 2560, 2688, 2816, 2944, + 3072, 3200, 3328, 3456, 3584, 3712, 3840, 3968, + 4096, 4224, 4352, 4352, 4480, 4608, 4736, 4864, + 4992, 4352, 4352, 4352, 5120, 5248, 5376, 5504, + 5632, 5760, 5888, 6016, 6144, 6272, 6400, 6528, + 6656, 6784, 6912, 7040, 7168, 7296, 7424, 7552, + 7680, 7808, 7936, 8064, 8192, 8192, 8320, 8448, + 8576, 8704, 8832, 8960, 9088, 8832, 9216, 9344, + 8832, 8832, 8192, 9472, 8192, 8192, 9600, 9728, + 9856, 9984, 10112, 10240, 10368, 10496, 8832, 10624, + 10752, 10880, 11008, 11136, 11264, 11392, 8832, 8832, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 11520, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 11648, + 11776, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 11904, 4352, 4352, 12032, 12160, 12288, 12416, + 12544, 12672, 12800, 12928, 13056, 13184, 13312, 13440, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 13568, + 13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696, + 13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 4352, 4352, 13952, 14080, 14208, 14336, + 4352, 4352, 14464, 14592, 14720, 14848, 14976, 15104, + 15232, 15360, 15488, 15616, -1, 15744, 15872, 16000, + 16128, 16256, 16384, -1, 4352, 4352, 16512, -1, + 16640, 16768, 16896, 17024, 17152, 17280, 17408, 17536, + 17664, 17792, -1, -1, 17920, -1, -1, -1, + 18048, 18176, 18304, 18432, 18560, 18688, 18816, -1, + 18944, 19072, -1, 19200, 19328, 19456, 19584, -1, + -1, 19712, -1, -1, -1, 19840, -1, -1, + 19968, 20096, -1, -1, -1, -1, -1, -1, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 20224, + 20352, 4352, 20480, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 20608, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 4352, 4352, 4352, 4352, 20736, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 4352, 4352, 4352, 4352, 20864, 20992, 21120, 21248, + -1, -1, -1, -1, -1, -1, 21376, 21504, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 21632, + 4352, 4352, 4352, 4352, 4352, 21760, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 21888, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 22016, 22144, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -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, 22272, 22400, 22528, 22656, -1, 22784, -1, + 22912, 23040, 23168, 23296, 23424, 23552, 23680, 23808, + 8832, 8832, 8832, 8832, 23936, 24064, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 24192, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 4352, 24320, 24448, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 24576, 24704, -1, -1, + 24832, 24960, 25088, 25216, 25344, -1, 8832, 25472, + 8832, 8832, 8832, 8832, 8832, 25600, 25728, 25856, + 25984, 26112, 26240, 26368, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 26496, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 26624, 4352, + 26752, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 4352, 4352, 4352, + 4352, 4352, 4352, 4352, 4352, 26880, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 4352, 4352, 4352, 4352, 27008, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 27136, -1, 27264, 27392, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824, + 13824, 13824, 13824, 13824, 13824, 13824, 13824, 27520 + }, + { + 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, 0xb48d, 0x2792, 0xa575, 0x2a55, + 0x4345, 0x548c, 0xa811, 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, 0x3a52, 0xa0e8, 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, 0x8020, 0x2830, 0xbd08, 0x108f, 0x0442, + 0xf7bd, 0x294e, 0x0088, 0x0e80, 0x003a, 0x0001, 0x0000, 0x0000, + 0x0000, 0x0000, 0x7400, 0x0000, 0x0000, 0x1000, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0042, 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, 0xe729, 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, 0x0200, 0x2008, + 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x001d, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x7de8, 0x18c4, 0x8c63, 0x843d, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x3d08, 0xdeb2, 0x9d6b, 0x94bd, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x2b0a, 0x94b1, 0x4a58, 0xbd2c, 0xdef7, + 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0xde90, 0xef7b, 0x9084, 0x7b18, 0xbdef, 0xdef7, 0xef7b, + 0x6b5a, 0xb5ad, 0x3294, 0x19c6, 0xad63, 0x94a5, 0x4a52, 0xa529, + 0xa894, 0x8c7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1083, 0x0842, 0x8421, 0x5290, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x2108, 0x1084, + 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, 0x2d74, 0x94a5, 0xc652, + 0xa528, 0x5296, 0x210a, 0x2108, 0x1084, 0x0842, 0x4211, 0x256a, + 0xc631, 0x6318, 0x318c, 0x18c6, 0xd763, 0x10a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0xde94, + 0x2109, 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, 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, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x4842, 0xa529, + 0x528c, 0x294a, 0x94a5, 0x4a32, 0xa329, 0x5294, 0xef4a, 0xc631, + 0x6318, 0x318c, 0x18c6, 0xec63, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0xa421, 0xd294, 0xec7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, + 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x3a42, 0x8421, 0x4210, 0xef48, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x4a5e, 0xa529, 0x5294, 0x294a, 0xe8a5, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, + 0x14a5, 0x0843, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x5314, 0x3188, 0x94a6, 0x4a52, 0xc529, 0x6318, + 0x318a, 0x94a4, 0x4a52, 0x8429, 0x4210, 0x2108, 0x9484, 0x2312, + 0x0842, 0x8421, 0x4210, 0x1071, 0x0842, 0x8421, 0x4210, 0x2108, + 0x18a4, 0x09d3, 0x8421, 0x4210, 0x277a, 0x77a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x93a4, + 0x3bde, 0x8421, 0x5ef4, 0x3188, 0x94a6, 0x7a52, 0xa637, 0x6377, + 0xe90a, 0xf7bd, 0x7bde, 0xbd37, 0x4ef7, 0x2748, 0x9484, 0x3bd2, + 0x0842, 0x8421, 0x4210, 0xcc84, 0x94a9, 0x4a52, 0xd9d5, 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, 0xf4bd, 0x7bde, 0x9def, 0x4210, 0xe93a, 0xf7bd, 0x3bde, + 0x0842, 0x8421, 0x4210, 0x10a5, 0x4a42, 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, 0xf671, 0x7bde, 0x9def, 0xdef4, 0xef7b, + 0x18bd, 0x09d3, 0x8421, 0x4210, 0x277a, 0x77a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x13a4, + 0x09d2, 0x8421, 0x5ef4, 0x2988, 0x94a6, 0x7a52, 0xa637, 0x6377, + 0xef4a, 0xf7bd, 0x7bde, 0xbd31, 0x4ef7, 0x2748, 0x9484, 0x3bd2, + 0x0842, 0x8421, 0x4210, 0x2895, 0x94a5, 0xbd52, 0xdef7, 0xef7b, + 0x17bd, 0x09d2, 0x8421, 0xde90, 0x213b, 0x13a4, 0x4842, 0x9def, + 0x4e90, 0x213a, 0x77bd, 0x7a42, 0x84ef, 0xde90, 0x213b, 0x1084, + 0x0842, 0x8421, 0xdef4, 0x31bb, 0x98c5, 0xbbde, 0xa631, 0x631b, + 0xef4a, 0xf7a4, 0x7bde, 0xbd37, 0xdef7, 0xef7b, 0xf7bd, 0x3bde, + 0x0842, 0x8421, 0x4210, 0xa94a, 0x6b5a, 0x75ad, 0xded6, 0xef7b, + 0x18c5, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x1084, + 0x0842, 0x8421, 0xdef4, 0x2949, 0x18c5, 0x7a63, 0xa529, 0x5297, + 0xef4a, 0xf7bd, 0x4bde, 0x84e9, 0xde90, 0xef7b, 0x9484, 0x3bd2, + 0x0842, 0x8421, 0x4210, 0xf7bd, 0x7bde, 0x4aef, 0xa529, 0xaa94, + 0x18a4, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x1084, + 0x09d2, 0x8421, 0x5ef4, 0x2988, 0x18c6, 0x7a63, 0xa631, 0x531b, + 0xef4a, 0xf7bd, 0x8dde, 0xbde9, 0xdef7, 0xe93b, 0x9484, 0x3bd2, + 0x0842, 0x8421, 0x4210, 0x909d, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x18bd, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0xde90, 0x3189, 0x94a6, 0xba52, 0xa631, 0x631b, + 0xa90a, 0xf7bd, 0x084e, 0x4a31, 0xa529, 0x2294, 0x9484, 0x3bd2, + 0x0842, 0x8421, 0x4210, 0x294a, 0x94a5, 0xaa52, 0x4212, 0x2108, + 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, 0x3bde, + 0x0842, 0x8421, 0x4210, 0x1bbd, 0x7b13, 0xbdef, 0xdef7, 0xef7b, + 0x109d, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x10a4, + 0x4a52, 0xa529, 0xde94, 0x9f7b, 0x1084, 0xc842, 0xa528, 0x5294, + 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, 0x2108, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xd6a4, 0x631a, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6b1a, 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, 0x4210, 0xef7a, 0x94bd, 0x4a52, 0xa529, 0x5294, 0x314a, + 0x94a5, 0x6252, 0x8429, 0x4210, 0x294a, 0x94a5, 0x4a52, 0xbd29, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0xad7a, 0xd6b5, 0x6b5a, 0xb5a9, 0x5ad6, + 0xad7b, 0xc631, 0x6b18, 0x35ad, 0xdec6, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x6310, 0x294a, 0x94c5, + 0x4a52, 0xa629, 0x6314, 0x214a, 0x2108, 0x1084, 0x0842, 0x18c5, + 0x8c63, 0x1084, 0x8842, 0xa531, 0x4210, 0x2948, 0x1885, 0x0863, + 0xc631, 0x6318, 0x210c, 0x94a4, 0x0852, 0x8421, 0x4210, 0x2108, + 0x1484, 0x4a63, 0xc631, 0x6318, 0x310a, 0x2108, 0x1084, 0x0842, + 0x6319, 0xad4a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4000, 0xbd07, 0xdef7, + 0xef41, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x3890, 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, 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, 0x294b, 0xc631, 0x6318, + 0x518c, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0xef7a, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0xd6b5, 0x6b5a, 0xb5ad, + 0xdef6, 0xef7b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x4000, 0x21ef, 0x1084, 0xef42, + 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, 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, 0x8421, 0x4210, 0x2108, + 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, 0x1089, 0x0842, 0xa421, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x213a, 0x9484, 0x7a52, 0xbdef, + 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x9484, + 0x6252, 0xbdec, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, + 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, + 0x8a52, 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, 0xee8a, 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, 0x4a42, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0xde90, 0xef7b, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x4842, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0xe908, 0x14a5, 0x8c63, 0xc529, 0xd318, 0xef7b, 0x14c6, + 0x8c63, 0xa631, 0xd294, 0xef7b, 0xf7b5, 0x231e, 0x0842, 0x8421, + 0x4210, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0xef48, 0x1084, 0x7a42, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0xd210, 0xef7b, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0xdef4, + 0xef7b, 0x2108, 0x1084, 0x0842, 0xdea9, 0xad7b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xc529, + 0xd298, 0x8c7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x4c42, 0xa531, 0x5294, 0xe94a, 0x14c5, 0x4a63, + 0xa529, 0x5294, 0x318c, 0x98c6, 0x4a52, 0xa529, 0x5294, 0x2f7a, + 0x2108, 0x1084, 0x0842, 0xdef5, 0xef7b, 0x2108, 0x1084, 0x0842, + 0xdef5, 0xef7b, 0xc631, 0x6318, 0x311c, 0x18c6, 0xef63, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0xe9ca, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x94a5, 0x0862, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 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, + 0x18a5, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x94c4, 0x8a52, 0xa531, 0x5298, 0x210a, 0x2108, + 0x1084, 0x0842, 0x4211, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x4842, + 0xa531, 0x6318, 0x298a, 0x18a5, 0x7bd3, 0xbdef, 0x1ef7, 0x8c63, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x8c62, 0xc631, 0x5318, 0x294a, 0x94a5, + 0x4c62, 0xbd29, 0x18f7, 0x8c63, 0x2108, 0x1084, 0x0842, 0xdef5, + 0x2109, 0x2108, 0x1084, 0x0842, 0x4211, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x6321, 0x318c, 0x8c46, + 0x8421, 0x4210, 0xa108, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, + 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xc631, 0x6318, 0xbd8c, 0xdef7, + 0xef7b, 0x94a5, 0x4a58, 0xa529, 0x5294, 0x294a, 0x94c5, 0x4a52, + 0x8529, 0x4210, 0x210a, 0x1884, 0x0853, 0xa5e9, 0xdef4, 0xef7b, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x3084, 0x18c6, 0x8c63, + 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, + 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, + 0x6318, 0x108c, 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, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xbdef, 0x52f7, 0x294a, + 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, + 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, + 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, + 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, + 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, + 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x4200, 0x2108, + 0x1084, 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, + 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, 0xbbad, + 0x5ad6, 0xad6b, 0xd6b5, 0xf46a, 0x94ae, 0x4a52, 0x2949, 0x1b9b, + 0x294a, 0x94a5, 0x4a52, 0x2949, 0xeb9b, 0x8c63, 0xc631, 0x6318, + 0x318c, 0xef7a, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, + 0xe739, 0x739c, 0x39ce, 0xece7, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x39ce, 0x9ca7, 0x4a73, + 0xa529, 0x5294, 0x294a, 0xf7a5, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x82b5, 0x6b5a, 0xb505, 0x0006, 0x0840, 0x8000, 0x4150, 0x12ad, + 0x0000, 0xad40, 0xd6b5, 0x2a0a, 0xa0a8, 0x0002, 0x0d40, 0x0000, + 0x0810, 0x2421, 0x1ad4, 0x0002, 0x4a52, 0x4129, 0x2108, 0x5954, + 0xa86b, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0x2529, 0x5210, 0x494a, 0xdad5, 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, 0xcdad, 0x5735, 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, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, + 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, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xcdad, 0xd735, 0x735c, 0x35cd, 0x9cd7, 0x4a52, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x6b55, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0x4a52, 0x9b29, 0x5293, 0x294a, + 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x6529, + 0xcd73, 0xd735, 0x735c, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0xca52, 0x9ae6, 0xae6b, 0xe6b9, 0x6b9a, 0xb9ae, 0x9ae6, 0x4e6b, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 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, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x6b29, 0x5295, 0x294a, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, 0xb5ad, 0x5ad6, 0xad6b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ef, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0xdef6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad7, + 0xad6b, 0xf6b5, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0x5ef7, 0xad6b, 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, 0x0000, 0x8020, 0x4010, 0x2108, 0x3084, 0x0006, + 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, 0x1056, 0x2840, 0x80a5, 0x7bd0, 0x3def, 0x18c6, 0x8c55, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0xbd0f, 0xdef7, 0xef43, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0xbd21, 0xdef7, 0x1f7b, 0xf7b1, 0x7bde, 0xbdef, 0xdef7, 0x2f7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xbde9, + 0xdef7, 0xef7b, 0x1084, 0x0842, 0x84e9, 0x4210, 0xe908, 0x1084, + 0x0842, 0x84e9, 0x4210, 0xe908, 0x1084, 0x0842, 0x84e9, 0x4210, + 0xe908, 0x1084, 0x0842, 0x84e9, 0x4210, 0xe908, 0x94a5, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, + 0x3e31, 0x60f8, 0xf18c, 0xf8c1, 0x8c60, 0xc631, 0x6318, 0x3164, + 0xf8b2, 0x8c60, 0x360f, 0x5cd7, 0xcd73, 0x18c5, 0x1c63, 0xc631, + 0x6318, 0x318c, 0x1632, 0x8c63, 0xb62c, 0x7b18, 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, 0x318a, 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, 0xef48, 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, 0x8421, 0xde90, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, + 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xed6b, 0x294a, 0x94a5, 0x4a52, 0x5ad5, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0x4aad, 0xa529, + 0x5294, 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, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x4842, 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, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x6321, 0x318c, 0x8c46, + 0x1084, 0x0842, 0x8421, 0x3210, 0x8c62, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x2108, 0x1084, 0x0842, 0xd211, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x8020, 0x0200, 0x2008, 0x0080, + 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, + 0x2008, 0x0080, 0x2902, 0x9ce7, 0x4a58, 0xa529, 0x5294, 0x1c4a, + 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, + 0x3080, 0x2946, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x4842, + 0x294a, 0x94a5, 0x4a52, 0xc4a5, 0x6318, 0xbd8c, 0xdef7, 0xef7b, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x631d, + 0x318c, 0x18c6, 0x8294, 0x0200, 0x2008, 0x0080, 0x0802, 0x8021, + 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, + 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, + 0x2008, 0x0080, 0x0802, 0x8423, 0x4210, 0x0108, 0x1004, 0x0800, + 0x8020, 0x0200, 0x8308, 0x1052, 0x2040, 0x8020, 0x0210, 0x2008, + 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0000, 0xe800, 0x0000, + 0x0200, 0xbd08, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0x6327, 0x4204, 0x2108, + 0x1484, 0x4842, 0x8421, 0x4290, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x4a63, 0xb531, 0xdad6, 0xef7b, 0x294a, + 0x54a5, 0xb3ad, 0xdef6, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x6312, 0xbd8c, 0xdef7, 0xef7b, + 0x10c6, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x8c62, 0xc631, 0x6318, 0x318c, 0x18c6, 0x4a53, 0xbdef, 0xdef7, + 0x8c7b, 0x2108, 0x1084, 0x0842, 0xdef5, 0xef7b, 0x94a5, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x10a5, 0x0842, 0x3121, 0x1246, 0xef49, + 0x2108, 0x1084, 0x0842, 0x4211, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x4842, 0xa529, 0x5294, 0x8c4a, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xa529, 0x5294, + 0x294a, 0x18a5, 0x7bd3, 0xbdef, 0xdef7, 0x8f7b, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0xef7a, + 0x14a5, 0x0843, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x9084, + 0x4c62, 0xa529, 0x5318, 0x318c, 0xc626, 0x6318, 0x318c, 0x18c6, + 0x1f63, 0x2108, 0x1084, 0x0842, 0xdef5, 0x8c7b, 0x1084, 0xca42, + 0x8420, 0x4210, 0x2108, 0x2108, 0x1084, 0x0842, 0x4211, 0xe908, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x5294, 0x314a, 0x14a6, + 0x4a63, 0xbde9, 0xdef7, 0xef7b, 0x9084, 0x0842, 0x8421, 0x5210, + 0xef4c, 0x2108, 0x1084, 0x0842, 0x1ef5, 0x8c63, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1083, 0x0842, 0xb5a9, 0x5312, 0x210c, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x9485, + 0x0852, 0x8529, 0x4210, 0x2948, 0x90a4, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0x4277, 0x8c46, 0x1084, 0x0842, + 0x8421, 0x5310, 0x318a, 0x9231, 0x4c31, 0xbde9, 0xdef7, 0xef7b, + 0x109d, 0x0842, 0x9de9, 0x4210, 0xe908, 0x109d, 0x0842, 0xbde9, + 0xdef7, 0xef7b, 0x1084, 0x0842, 0x84e9, 0x4210, 0xe908, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x3a04, 0x18c6, 0x8421, 0x4210, + 0xbdef, 0xdef7, 0xef7b, 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, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x8a63, + 0xc531, 0x6898, 0xef4a, 0x2108, 0x1084, 0x0842, 0xdef5, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x7bd2, 0xbdef, 0xdef7, 0xef7b, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xbde9, 0x4277, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0xd210, 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, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 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, 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, 0x5084, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0xf694, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0x77bd, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x6b88, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x13bd, 0x0842, 0x8421, + 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, 0x4a52, 0xa529, 0x5294, 0x294a, 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, + 0xc631, 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, 0x552a, 0xed6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0xdad6, 0xef7b, 0xf7b5, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xef4b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0xef7a, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0xf7a4, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x2945, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xd529, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x294a, 0x7bd5, 0xbdef, 0xdef7, 0xef7b, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1124, 0x0842, 0x8421, 0xdea4, + 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x4842, 0xa529, 0xde94, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x8f48, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x7bd2, 0x84ef, 0x4210, + 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, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x7bd0, 0x21ef, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0xd084, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xbd21, 0xdef7, 0xef7b, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x7bd2, + 0xbdef, 0xdef7, 0x8f7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0xbde9, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x4842, 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, + 0xbd21, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x4842, 0xa4ef, 0x4213, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x4842, 0xa427, 0x4ef7, 0x277a, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x4842, 0x4a8f, 0xa529, 0x5294, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x55a9, 0xa529, 0x5294, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0xe908, 0xf7bd, 0x7bde, 0x4a57, 0xa529, 0x5294, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x9084, 0x484e, 0xbdef, 0xa577, 0x5294, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x8842, 0x4a52, + 0xd529, 0x8f7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0xdef4, 0x8f7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0xbd21, 0xaef7, 0x2114, 0x294a, 0x94a5, 0x4a52, 0xa529, + 0x5294, 0x2bbd, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 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, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x8a94, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x5294, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x9521, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x4a42, + 0xbde9, 0xa577, 0x5294, 0xc631, 0x6318, 0xbdec, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x4842, 0x3def, 0x18c6, 0x8c63, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x4842, 0x4aef, 0xa529, 0x5294, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x9084, 0x7bde, 0x4aef, 0xa529, 0x5294, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0xf484, 0x7bde, 0x3def, + 0x18c6, 0xef7b, 0xf7bd, 0x7bde, 0x5def, 0xa529, 0x5294, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0xdef7, + 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, 0x0000, 0x8000, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x7bde, 0xbdef, 0xa52b, 0x5294, + 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, + 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0xea94, + 0x18a6, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0xa521, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x3189, 0x18c6, + 0xef63, 0x2bbd, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x14a5, + 0x0842, 0x8421, 0x4210, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0x2f7b, + 0x18a5, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x98c6, + 0x4a52, 0xa631, 0x1894, 0x8c75, 0xf631, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0xa421, 0xdef7, 0xef7b, 0x2108, 0x1084, 0x0842, 0xdef5, 0xef7b, + 0x14a5, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa529, 0x6294, 0x294a, 0x94a5, + 0x3a52, 0x0842, 0x8421, 0x4210, 0xc631, 0x7bd8, 0xbdef, 0xdef7, + 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x9084, 0x2312, 0xbde9, 0xdef7, 0xef7b, + 0x18a5, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x4c63, 0xa529, 0x5294, 0x314a, 0x1086, 0x6242, 0x318c, 0x5296, + 0xef62, 0x2108, 0x1084, 0x0842, 0x4891, 0x8c62, 0x295d, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x7aa5, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x7484, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x6210, 0x298c, 0x18a5, + 0x4c53, 0x3129, 0x18c6, 0xe963, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0xa4e9, 0x4213, 0x2748, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2748, 0x1084, 0x0842, 0x2421, 0xdef6, 0xef7b, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2908, 0x98c6, 0x4a52, + 0xa529, 0xde94, 0xef7b, 0x2108, 0x1084, 0x0842, 0xdef5, 0xef7b, + 0x18a5, 0x09d3, 0x8421, 0x4210, 0x277a, 0x77a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x13a4, + 0x09d2, 0x8421, 0x5ef4, 0x3188, 0x18c5, 0x7a63, 0xa637, 0x6377, + 0xef4c, 0xf7a4, 0x7bde, 0xbd37, 0xdef7, 0x2109, 0x1884, 0x7bd3, + 0xa529, 0x5294, 0xef7a, 0x94a5, 0x7a52, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x8c42, 0xa531, 0x5294, 0x294a, 0x94c6, 0x4c52, 0x8421, 0x1890, + 0x8c63, 0x2108, 0x1084, 0x0842, 0xd8f5, 0xef63, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x98c6, + 0x4a52, 0xc529, 0x6314, 0x298c, 0x94c5, 0x4842, 0xbd24, 0xdef7, + 0xef7b, 0x2108, 0x1084, 0x0842, 0xdef5, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x3108, 0x94c6, + 0x4a52, 0xc6ef, 0x5318, 0x298a, 0xc625, 0x6318, 0x318c, 0x18c6, + 0x8c63, 0xc631, 0x6318, 0x848c, 0x5210, 0xef4a, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x98c6, + 0x4a52, 0xa529, 0x6314, 0x298a, 0xc625, 0x7a48, 0xbdef, 0xdef7, + 0xef7b, 0x2108, 0x1084, 0x0842, 0xdef5, 0xef7b, 0xc631, 0x6318, + 0x318c, 0x18c6, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x6290, 0x318a, 0x94a5, + 0x8a52, 0xbd29, 0xdef7, 0xef7b, 0x2108, 0x1084, 0x0842, 0xdef5, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0xdef4, 0x294b, 0x94c6, 0x8a52, 0xa529, 0xd294, 0xef7b, 0x2108, + 0x1084, 0x0842, 0x1529, 0xac63, 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, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x2108, 0x1084, + 0x0842, 0xa529, 0x5294, 0xa94a, 0x7bde, 0xbdef, 0xdef7, 0x277b, + 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, + 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x3108, 0x94a5, + 0x4a52, 0xa5e9, 0x5294, 0x298a, 0xc624, 0x6318, 0xbdef, 0xdef7, + 0xef7b, 0x2108, 0x1084, 0x0842, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0xef7a, 0x1231, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x97bd, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xdd29, 0x5294, 0x294a, 0x94c5, + 0x4a62, 0xbde9, 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, + 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, 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, 0x5294, + 0x294a, 0x94a5, 0xea52, 0xc631, 0x7b18, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 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, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0xe908, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 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, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0xa421, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0xe908, 0x2108, 0x1084, + 0x0842, 0xdef5, 0x8c7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, + 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0xef48, 0x94a5, 0x6252, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x94a5, + 0x4a52, 0x3189, 0x58c6, 0xad6b, 0x8c63, 0x6b11, 0xbdef, 0xdef7, + 0xef7b, 0x2108, 0x1084, 0x0842, 0xa575, 0x5294, 0x754a, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xbd21, 0xdef7, 0x2109, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0xf7bd, 0x7bde, 0xbdef, + 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x7a42, 0xbdef, 0xdef7, + 0xef7b, 0x18c4, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, + 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0xe98c, + 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0x2f7b, 0x94a5, 0xc631, 0x6318, + 0x318c, 0x18c6, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7a3, 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, 0xef7a, 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, 0x9084, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xf484, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, + 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0xde90, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0xef7a, + 0x1084, 0x0842, 0xa421, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, + 0x5ef4, 0x894b, 0x6b5a, 0x7bdd, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 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, 0x5ad6, 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, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 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, + 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xb5a9, 0x52d6, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0xa529, 0x5294, 0xad6a, 0xd6b5, 0x4b5a, 0xb5ad, 0x5ad6, 0xad6b, + 0xd6b5, 0x6a5a, 0x318d, 0xd8c6, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, + 0x52f7, 0x294a, 0x94bd, 0x4a52, 0xa529, 0x5294, 0x294a, 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, 0x4a52, 0xa5e9, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, + 0x52f7, 0x294a, 0xf4a5, 0x7a52, 0xa529, 0xde94, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x7a42, 0x4a57, 0xa529, + 0x5294, 0x94a5, 0x4a52, 0xbde9, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x8400, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4a50, 0xa529, 0xde94, + 0xef7b, 0x2108, 0x1084, 0x0842, 0xdef5, 0x8c7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x09d2, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x909d, 0x7a4e, 0x9d27, 0x4210, 0x2108, 0x9084, + 0x084e, 0x9d21, 0xd274, 0xef7b, 0x93bd, 0x7bde, 0x9d27, 0xd274, + 0x2109, 0x909d, 0x7a4e, 0x9d27, 0xd274, 0x2749, 0x909d, 0x7a4e, + 0x8427, 0x4e90, 0x2108, 0x9084, 0x084e, 0x9d21, 0x4210, 0xe93a, + 0x1084, 0x0842, 0x8421, 0x4274, 0x2108, 0x1084, 0x0842, 0x8421, + 0xd210, 0xef7b, 0x109d, 0x09d2, 0x8421, 0x4274, 0x2108, 0x1084, + 0x0842, 0x8421, 0xd210, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf652, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0xdad6, 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, 0x7bda, 0xbdef, + 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, 0xd6bd, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6bd, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6bd, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xbdef, 0xdef7, 0xef7b, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0xef7a, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0xdad6, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, + 0xd6b5, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0xdad6, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0xdef7, + 0xef7b, 0xf6b5, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 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, 0x4a56, 0xa529, + 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, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xef7b, 0xd6b5, 0x6b5a, 0xbded, 0xdef7, 0xef7b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, 0xbdef, 0xdef7, 0xef7b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x7b5a, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xd6b5, 0x6b5a, 0xb5ad, 0xdad6, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xbdad, 0xdef7, + 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0xdef6, 0xef7b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, + 0xd6b5, 0x6b5a, 0xbdad, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xef6b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xed6b, 0xd6b5, 0x6b5a, 0xbdad, 0xdef7, 0xef7b, 0xf7b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, 0xd6b5, 0x6b5a, 0xb5ad, 0xdad6, + 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xf6b5, 0x7bde, 0xbdef, + 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7b5, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0xbde9, 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, + 0x7a42, 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0xef48, 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, 0xf484, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 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/unistring/unictype/categ_or.c b/lib/unistring/unictype/categ_or.c new file mode 100644 index 0000000..d1ca517 --- /dev/null +++ b/lib/unistring/unictype/categ_or.c @@ -0,0 +1,51 @@ +/* Categories of Unicode characters. + Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2007. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/categ_test.c b/lib/unistring/unictype/categ_test.c new file mode 100644 index 0000000..b9fbabf --- /dev/null +++ b/lib/unistring/unictype/categ_test.c @@ -0,0 +1,41 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/combiningclass.c b/lib/unistring/unictype/combiningclass.c new file mode 100644 index 0000000..cd7ad59 --- /dev/null +++ b/lib/unistring/unictype/combiningclass.c @@ -0,0 +1,56 @@ +/* Combining classes of Unicode characters. + Copyright (C) 2002, 2006, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unictype.h" + +/* Define u_combclass table. */ +#include "combiningclass.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/unistring/unictype/combiningclass.h b/lib/unistring/unictype/combiningclass.h new file mode 100644 index 0000000..ddfe9b0 --- /dev/null +++ b/lib/unistring/unictype/combiningclass.h @@ -0,0 +1,1351 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Combining class of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[75 << 7]; + } +u_combclass = +{ + { 0, 512 }, + { + -1, -1, -1, -1, -1, -1, 0, -1, + -1, 128, -1, 256, 384, 512, 640, 768, + 896, 1024, 1152, 1280, 1280, 1280, 1280, 1408, + 1536, 1280, 1408, 1664, 1792, 1920, 2048, 2176, + 2304, 2432, -1, -1, -1, -1, 2560, -1, + -1, -1, -1, -1, -1, -1, 2688, 2816, + -1, 2944, 3072, -1, 3200, 3328, 3456, 3584, + 3712, 3840, -1, 3968, -1, -1, -1, -1, + -1, 4096, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 4224, 4352, 4480, -1, -1, -1, -1, + 4608, 4736, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 4864, 4992, -1, -1, + 5120, 5248, 5376, 5504, -1, 5632, -1, 5760, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 5888, -1, + -1, -1, -1, -1, 6016, -1, -1, -1, + -1, -1, -1, 6144, -1, 6272, 6400, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 6528, 6656, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 6784, 6912, 7040, 7168, 7296, 7424, 7552, -1, + 7680, 7808, -1, 7936, 8064, 8192, 8320, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 8064, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -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, 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, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 8704, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -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, 9088, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 9216, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 9344, 9472, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -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, 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, 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, 230, 230, + 30, 31, 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 27, 28, 29, 30, 31, + 32, 33, 34, 230, 230, 220, 220, 230, + 230, 230, 230, 230, 220, 230, 230, 220, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 35, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 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, 230, 230, + 230, 230, 0, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 0, 230, 230, 230, + 0, 230, 230, 230, 230, 230, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 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, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 0, 220, 230, 230, 220, 230, + 230, 220, 230, 230, 230, 220, 220, 220, + 27, 28, 29, 230, 230, 230, 220, 230, + 230, 220, 220, 230, 230, 230, 230, 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, 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 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, 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, + 9, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 230, 230, 230, + 230, 230, 230, 230, 230, 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, + 230, 230, 230, 230, 230, 220, 220, 220, + 220, 220, 220, 230, 230, 220, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 7, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 9, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 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, 9, 9, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 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, 9, 9, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 7, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, 1, 220, 220, 220, + 220, 220, 230, 230, 220, 220, 220, 220, + 230, 0, 1, 1, 1, 1, 1, 1, + 1, 0, 0, 0, 0, 220, 0, 0, + 0, 0, 0, 0, 230, 0, 0, 0, + 230, 230, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, 230, 230, 234, 214, 220, + 202, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 0, 0, + 0, 0, 0, 230, 233, 220, 230, 220, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, + 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, 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, 9, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 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, 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, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 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, 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, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 230, 230, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, 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, 0, 0, 0, 0, + 0, 0, 0, 0, 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, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 220, 220, 220, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 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, 7, 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, + 230, 0, 230, 230, 220, 0, 0, 230, + 230, 0, 0, 0, 0, 0, 230, 230, + 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, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 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, 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, 230, 230, 230, 220, + 220, 220, 220, 220, 220, 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, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 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, + 220, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 230, 230, + 230, 230, 230, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 220, 0, 230, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, 230, 220, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 9, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 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, 9, 7, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, 9, 9, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 7, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, 7, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 9, 7, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 7, 9, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 7, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 9, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 230, 230, + 230, 230, 230, 230, 230, 0, 0, 0, + 230, 230, 230, 230, 230, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 9, 0, 0, 0, 7, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 9, 7, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 9, + 7, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 9, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 9, 7, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 230, 230, 230, 230, 230, 230, 230, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 216, 216, 1, + 1, 1, 0, 0, 0, 226, 216, 216, + 216, 216, 216, 0, 0, 0, 0, 0, + 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, + 230, 230, 230, 230, 230, 230, 230, 0, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 0, 0, 230, 230, 230, 230, 230, + 230, 230, 0, 230, 230, 0, 230, 230, + 230, 230, 230, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 220, 220, 220, 220, 220, 220, 220, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 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, 7, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 + } +}; diff --git a/lib/unistring/unictype/pr_default_ignorable_code_point.c b/lib/unistring/unictype/pr_default_ignorable_code_point.c new file mode 100644 index 0000000..c3e7d27 --- /dev/null +++ b/lib/unistring/unictype/pr_default_ignorable_code_point.c @@ -0,0 +1,44 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/pr_default_ignorable_code_point.h b/lib/unistring/unictype/pr_default_ignorable_code_point.h new file mode 100644 index 0000000..0324b54 --- /dev/null +++ b/lib/unistring/unictype/pr_default_ignorable_code_point.h @@ -0,0 +1,472 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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[12 << 4]; + } +u_property_default_ignorable_code_point = +{ + { 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, + 16 + 384 * sizeof (short) / sizeof (int) + 16, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 64, + 16 + 384 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * 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, + 16 + 384 * 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, + 16 + 384 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * 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, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00002000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00008000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x10000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x80000000U, 0x00000001U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00300000U, 0x00000000U, 0x00000000U, + 0x00007800U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000F800U, 0x00007C00U, 0x00000000U, 0x0000FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000010U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0000FFFFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000001U, 0x00000000U, 0x01FF0000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x0000000FU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x07F80000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU + } +}; diff --git a/lib/unistring/unictype/pr_join_control.c b/lib/unistring/unictype/pr_join_control.c new file mode 100644 index 0000000..8aebae5 --- /dev/null +++ b/lib/unistring/unictype/pr_join_control.c @@ -0,0 +1,56 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/pr_join_control.h b/lib/unistring/unictype/pr_join_control.h new file mode 100644 index 0000000..05f9118 --- /dev/null +++ b/lib/unistring/unictype/pr_join_control.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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 + }, + { + 0x00003000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unistring/unictype/pr_not_a_character.c b/lib/unistring/unictype/pr_not_a_character.c new file mode 100644 index 0000000..d87e791 --- /dev/null +++ b/lib/unistring/unictype/pr_not_a_character.c @@ -0,0 +1,44 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* 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/unistring/unictype/pr_not_a_character.h b/lib/unistring/unictype/pr_not_a_character.h new file mode 100644 index 0000000..332f8c8 --- /dev/null +++ b/lib/unistring/unictype/pr_not_a_character.h @@ -0,0 +1,306 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.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 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0xFFFF0000U, 0x0000FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0xC0000000U + } +}; diff --git a/lib/unistring/uninorm.in.h b/lib/unistring/uninorm.in.h new file mode 100644 index 0000000..645b7f6 --- /dev/null +++ b/lib/unistring/uninorm.in.h @@ -0,0 +1,257 @@ +/* Normalization forms (composition and decomposition) of Unicode strings. + Copyright (C) 2001-2002, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#ifndef _UNINORM_H +#define _UNINORM_H + +/* Get size_t. */ +#include <stddef.h> + +#include "unitypes.h" + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Conventions: + + All functions prefixed with u8_ operate on UTF-8 encoded strings. + Their unit is an uint8_t (1 byte). + + All functions prefixed with u16_ operate on UTF-16 encoded strings. + Their unit is an uint16_t (a 2-byte word). + + All functions prefixed with u32_ operate on UCS-4 encoded strings. + Their unit is an uint32_t (a 4-byte word). + + All argument pairs (s, n) denote a Unicode string s[0..n-1] with exactly + n units. + + Functions returning a string result take a (resultbuf, lengthp) argument + pair. If resultbuf is not NULL and the result fits into *lengthp units, + it is put in resultbuf, and resultbuf is returned. Otherwise, a freshly + allocated string is returned. In both cases, *lengthp is set to the + length (number of units) of the returned string. In case of error, + NULL is returned and errno is set. */ + + +enum +{ + UC_DECOMP_CANONICAL,/* Canonical decomposition. */ + UC_DECOMP_FONT, /* <font> A font variant (e.g. a blackletter form). */ + UC_DECOMP_NOBREAK, /* <noBreak> A no-break version of a space or hyphen. */ + UC_DECOMP_INITIAL, /* <initial> An initial presentation form (Arabic). */ + UC_DECOMP_MEDIAL, /* <medial> A medial presentation form (Arabic). */ + UC_DECOMP_FINAL, /* <final> A final presentation form (Arabic). */ + UC_DECOMP_ISOLATED,/* <isolated> An isolated presentation form (Arabic). */ + UC_DECOMP_CIRCLE, /* <circle> An encircled form. */ + UC_DECOMP_SUPER, /* <super> A superscript form. */ + UC_DECOMP_SUB, /* <sub> A subscript form. */ + UC_DECOMP_VERTICAL,/* <vertical> A vertical layout presentation form. */ + UC_DECOMP_WIDE, /* <wide> A wide (or zenkaku) compatibility character. */ + UC_DECOMP_NARROW, /* <narrow> A narrow (or hankaku) compatibility character. */ + UC_DECOMP_SMALL, /* <small> A small variant form (CNS compatibility). */ + UC_DECOMP_SQUARE, /* <square> A CJK squared font variant. */ + UC_DECOMP_FRACTION,/* <fraction> A vulgar fraction form. */ + UC_DECOMP_COMPAT /* <compat> Otherwise unspecified compatibility character. */ +}; + +/* Maximum size of decomposition of a single Unicode character. */ +#define UC_DECOMPOSITION_MAX_LENGTH 32 + +/* Return the character decomposition mapping of a Unicode character. + DECOMPOSITION must point to an array of at least UC_DECOMPOSITION_MAX_LENGTH + ucs_t elements. + When a decomposition exists, DECOMPOSITION[0..N-1] and *DECOMP_TAG are + filled and N is returned. Otherwise -1 is returned. */ +extern int + uc_decomposition (ucs4_t uc, int *decomp_tag, ucs4_t *decomposition); + +/* Return the canonical character decomposition mapping of a Unicode character. + DECOMPOSITION must point to an array of at least UC_DECOMPOSITION_MAX_LENGTH + ucs_t elements. + When a decomposition exists, DECOMPOSITION[0..N-1] is filled and N is + returned. Otherwise -1 is returned. */ +extern int + uc_canonical_decomposition (ucs4_t uc, ucs4_t *decomposition); + + +/* Attempt to combine the Unicode characters uc1, uc2. + uc1 is known to have canonical combining class 0. + Return the combination of uc1 and uc2, if it exists. + Return 0 otherwise. + Not all decompositions can be recombined using this function. See the + Unicode file CompositionExclusions.txt for details. */ +extern ucs4_t + uc_composition (ucs4_t uc1, ucs4_t uc2) + _UC_ATTRIBUTE_CONST; + + +/* An object of type uninorm_t denotes a Unicode normalization form. */ +struct unicode_normalization_form; +typedef const struct unicode_normalization_form *uninorm_t; + +/* UNINORM_NFD: Normalization form D: canonical decomposition. */ +extern const struct unicode_normalization_form uninorm_nfd; +#define UNINORM_NFD (&uninorm_nfd) + +/* UNINORM_NFC: Normalization form C: canonical decomposition, then + canonical composition. */ +extern const struct unicode_normalization_form uninorm_nfc; +#define UNINORM_NFC (&uninorm_nfc) + +/* UNINORM_NFKD: Normalization form KD: compatibility decomposition. */ +extern const struct unicode_normalization_form uninorm_nfkd; +#define UNINORM_NFKD (&uninorm_nfkd) + +/* UNINORM_NFKC: Normalization form KC: compatibility decomposition, then + canonical composition. */ +extern const struct unicode_normalization_form uninorm_nfkc; +#define UNINORM_NFKC (&uninorm_nfkc) + +/* Test whether a normalization form does compatibility decomposition. */ +#define uninorm_is_compat_decomposing(nf) \ + ((* (const unsigned int *) (nf) >> 0) & 1) + +/* Test whether a normalization form includes canonical composition. */ +#define uninorm_is_composing(nf) \ + ((* (const unsigned int *) (nf) >> 1) & 1) + +/* Return the decomposing variant of a normalization form. + This maps NFC,NFD -> NFD and NFKC,NFKD -> NFKD. */ +extern uninorm_t + uninorm_decomposing_form (uninorm_t nf) + _UC_ATTRIBUTE_PURE; + + +/* Return the specified normalization form of a string. */ +extern uint8_t * + u8_normalize (uninorm_t nf, const uint8_t *s, size_t n, + uint8_t *_UC_RESTRICT resultbuf, size_t *lengthp); +extern uint16_t * + u16_normalize (uninorm_t nf, const uint16_t *s, size_t n, + uint16_t *_UC_RESTRICT resultbuf, size_t *lengthp); +extern uint32_t * + u32_normalize (uninorm_t nf, const uint32_t *s, size_t n, + uint32_t *_UC_RESTRICT resultbuf, size_t *lengthp); + + +/* Compare S1 and S2, ignoring differences in normalization. + NF must be either UNINORM_NFD or UNINORM_NFKD. + If successful, set *RESULTP to -1 if S1 < S2, 0 if S1 = S2, 1 if S1 > S2, and + return 0. Upon failure, return -1 with errno set. */ +extern int + u8_normcmp (const uint8_t *s1, size_t n1, const uint8_t *s2, size_t n2, + uninorm_t nf, int *resultp); +extern int + u16_normcmp (const uint16_t *s1, size_t n1, const uint16_t *s2, size_t n2, + uninorm_t nf, int *resultp); +extern int + u32_normcmp (const uint32_t *s1, size_t n1, const uint32_t *s2, size_t n2, + uninorm_t nf, int *resultp); + + +/* Converts the string S of length N to a NUL-terminated byte sequence, in such + a way that comparing uN_normxfrm (S1) and uN_normxfrm (S2) with uN_cmp2() is + equivalent to comparing S1 and S2 with uN_normcoll(). + NF must be either UNINORM_NFC or UNINORM_NFKC. */ +extern char * + u8_normxfrm (const uint8_t *s, size_t n, uninorm_t nf, + char *resultbuf, size_t *lengthp); +extern char * + u16_normxfrm (const uint16_t *s, size_t n, uninorm_t nf, + char *resultbuf, size_t *lengthp); +extern char * + u32_normxfrm (const uint32_t *s, size_t n, uninorm_t nf, + char *resultbuf, size_t *lengthp); + + +/* Compare S1 and S2, ignoring differences in normalization, using the + collation rules of the current locale. + NF must be either UNINORM_NFC or UNINORM_NFKC. + If successful, set *RESULTP to -1 if S1 < S2, 0 if S1 = S2, 1 if S1 > S2, and + return 0. Upon failure, return -1 with errno set. */ +extern int + u8_normcoll (const uint8_t *s1, size_t n1, const uint8_t *s2, size_t n2, + uninorm_t nf, int *resultp); +extern int + u16_normcoll (const uint16_t *s1, size_t n1, const uint16_t *s2, size_t n2, + uninorm_t nf, int *resultp); +extern int + u32_normcoll (const uint32_t *s1, size_t n1, const uint32_t *s2, size_t n2, + uninorm_t nf, int *resultp); + + +/* Normalization of a stream of Unicode characters. + + A "stream of Unicode characters" is essentially a function that accepts an + ucs4_t argument repeatedly, optionally combined with a function that + "flushes" the stream. */ + +/* Data type of a stream of Unicode characters that normalizes its input + according to a given normalization form and passes the normalized character + sequence to the encapsulated stream of Unicode characters. */ +struct uninorm_filter; + +/* Create and return a normalization filter for Unicode characters. + The pair (stream_func, stream_data) is the encapsulated stream. + stream_func (stream_data, uc) receives the Unicode character uc + and returns 0 if successful, or -1 with errno set upon failure. + Return the new filter, or NULL with errno set upon failure. */ +extern struct uninorm_filter * + uninorm_filter_create (uninorm_t nf, + int (*stream_func) (void *stream_data, ucs4_t uc), + void *stream_data); + +/* Stuff a Unicode character into a normalizing filter. + Return 0 if successful, or -1 with errno set upon failure. */ +extern int + uninorm_filter_write (struct uninorm_filter *filter, ucs4_t uc); + +/* Bring data buffered in the filter to its destination, the encapsulated + stream. + Return 0 if successful, or -1 with errno set upon failure. + Note! If after calling this function, additional characters are written + into the filter, the resulting character sequence in the encapsulated stream + will not necessarily be normalized. */ +extern int + uninorm_filter_flush (struct uninorm_filter *filter); + +/* Bring data buffered in the filter to its destination, the encapsulated + stream, then close and free the filter. + Return 0 if successful, or -1 with errno set upon failure. */ +extern int + uninorm_filter_free (struct uninorm_filter *filter); + + +#ifdef __cplusplus +} +#endif + + +#endif /* _UNINORM_H */ diff --git a/lib/unistring/uninorm/canonical-decomposition.c b/lib/unistring/uninorm/canonical-decomposition.c new file mode 100644 index 0000000..7df3689 --- /dev/null +++ b/lib/unistring/uninorm/canonical-decomposition.c @@ -0,0 +1,116 @@ +/* Canonical decomposition of Unicode characters. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "uninorm.h" + +#include <stdlib.h> + +#include "uninorm/decomposition-table.h" + +int +uc_canonical_decomposition (ucs4_t uc, ucs4_t *decomposition) +{ + if (uc >= 0xAC00 && uc < 0xD7A4) + { + /* Hangul syllable. See Unicode standard, chapter 3, section + "Hangul Syllable Decomposition", See also the clarification at + <https://www.unicode.org/versions/Unicode5.1.0/>, section + "Clarification of Hangul Jamo Handling". */ + unsigned int t; + + uc -= 0xAC00; + t = uc % 28; + + if (t == 0) + { + unsigned int v, l; + + uc = uc / 28; + v = uc % 21; + l = uc / 21; + + decomposition[0] = 0x1100 + l; + decomposition[1] = 0x1161 + v; + return 2; + } + else + { +#if 1 /* Return the pairwise decomposition, not the full decomposition. */ + decomposition[0] = 0xAC00 + uc - t; /* = 0xAC00 + (l * 21 + v) * 28; */ + decomposition[1] = 0x11A7 + t; + return 2; +#else + unsigned int v, l; + + uc = uc / 28; + v = uc % 21; + l = uc / 21; + + decomposition[0] = 0x1100 + l; + decomposition[1] = 0x1161 + v; + decomposition[2] = 0x11A7 + t; + return 3; +#endif + } + } + else if (uc < 0x110000) + { + unsigned short entry = decomp_index (uc); + /* An entry of (unsigned short)(-1) denotes an absent entry. + Otherwise, bit 15 of the entry tells whether the decomposition + is a canonical one. */ + if (entry < 0x8000) + { + const unsigned char *p; + unsigned int element; + unsigned int length; + + p = &gl_uninorm_decomp_chars_table[3 * entry]; + element = (p[0] << 16) | (p[1] << 8) | p[2]; + /* The first element has 5 bits for the decomposition type. */ + if (((element >> 18) & 0x1f) != UC_DECOMP_CANONICAL) + abort (); + length = 1; + for (;;) + { + /* Every element has an 18 bits wide Unicode code point. */ + *decomposition = element & 0x3ffff; + /* Bit 23 tells whether there are more elements, */ + if ((element & (1 << 23)) == 0) + break; + p += 3; + element = (p[0] << 16) | (p[1] << 8) | p[2]; + decomposition++; + length++; + } + return length; + } + } + return -1; +} diff --git a/lib/unistring/uninorm/compat-decomposition.c b/lib/unistring/uninorm/compat-decomposition.c new file mode 100644 index 0000000..db2fbbb --- /dev/null +++ b/lib/unistring/uninorm/compat-decomposition.c @@ -0,0 +1,40 @@ +/* Compatibility decomposition of Unicode characters. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "decompose-internal.h" + +#include "uninorm.h" + +int +uc_compat_decomposition (ucs4_t uc, ucs4_t *decomposition) +{ + int tag; + + return uc_decomposition (uc, &tag, decomposition); +} diff --git a/lib/unistring/uninorm/composition-table.gperf b/lib/unistring/uninorm/composition-table.gperf new file mode 100644 index 0000000..b82a5ad --- /dev/null +++ b/lib/unistring/uninorm/composition-table.gperf @@ -0,0 +1,979 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Canonical composition of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.0.0. */ + +/* Copyright (C) 2009 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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, see <https://www.gnu.org/licenses/>. */ + +struct composition_rule { char codes[6]; }; +%struct-type +%language=ANSI-C +%define slot-name codes +%define hash-function-name gl_uninorm_compose_hash +%define lookup-function-name gl_uninorm_compose_lookup +%compare-lengths +%compare-strncmp +%readonly-tables +%omit-struct-type +%% +"\x00\x00\x41\x00\x03\x00", 0x00c0 +"\x00\x00\x41\x00\x03\x01", 0x00c1 +"\x00\x00\x41\x00\x03\x02", 0x00c2 +"\x00\x00\x41\x00\x03\x03", 0x00c3 +"\x00\x00\x41\x00\x03\x08", 0x00c4 +"\x00\x00\x41\x00\x03\x0a", 0x00c5 +"\x00\x00\x43\x00\x03\x27", 0x00c7 +"\x00\x00\x45\x00\x03\x00", 0x00c8 +"\x00\x00\x45\x00\x03\x01", 0x00c9 +"\x00\x00\x45\x00\x03\x02", 0x00ca +"\x00\x00\x45\x00\x03\x08", 0x00cb +"\x00\x00\x49\x00\x03\x00", 0x00cc +"\x00\x00\x49\x00\x03\x01", 0x00cd +"\x00\x00\x49\x00\x03\x02", 0x00ce +"\x00\x00\x49\x00\x03\x08", 0x00cf +"\x00\x00\x4e\x00\x03\x03", 0x00d1 +"\x00\x00\x4f\x00\x03\x00", 0x00d2 +"\x00\x00\x4f\x00\x03\x01", 0x00d3 +"\x00\x00\x4f\x00\x03\x02", 0x00d4 +"\x00\x00\x4f\x00\x03\x03", 0x00d5 +"\x00\x00\x4f\x00\x03\x08", 0x00d6 +"\x00\x00\x55\x00\x03\x00", 0x00d9 +"\x00\x00\x55\x00\x03\x01", 0x00da +"\x00\x00\x55\x00\x03\x02", 0x00db +"\x00\x00\x55\x00\x03\x08", 0x00dc +"\x00\x00\x59\x00\x03\x01", 0x00dd +"\x00\x00\x61\x00\x03\x00", 0x00e0 +"\x00\x00\x61\x00\x03\x01", 0x00e1 +"\x00\x00\x61\x00\x03\x02", 0x00e2 +"\x00\x00\x61\x00\x03\x03", 0x00e3 +"\x00\x00\x61\x00\x03\x08", 0x00e4 +"\x00\x00\x61\x00\x03\x0a", 0x00e5 +"\x00\x00\x63\x00\x03\x27", 0x00e7 +"\x00\x00\x65\x00\x03\x00", 0x00e8 +"\x00\x00\x65\x00\x03\x01", 0x00e9 +"\x00\x00\x65\x00\x03\x02", 0x00ea +"\x00\x00\x65\x00\x03\x08", 0x00eb +"\x00\x00\x69\x00\x03\x00", 0x00ec +"\x00\x00\x69\x00\x03\x01", 0x00ed +"\x00\x00\x69\x00\x03\x02", 0x00ee +"\x00\x00\x69\x00\x03\x08", 0x00ef +"\x00\x00\x6e\x00\x03\x03", 0x00f1 +"\x00\x00\x6f\x00\x03\x00", 0x00f2 +"\x00\x00\x6f\x00\x03\x01", 0x00f3 +"\x00\x00\x6f\x00\x03\x02", 0x00f4 +"\x00\x00\x6f\x00\x03\x03", 0x00f5 +"\x00\x00\x6f\x00\x03\x08", 0x00f6 +"\x00\x00\x75\x00\x03\x00", 0x00f9 +"\x00\x00\x75\x00\x03\x01", 0x00fa +"\x00\x00\x75\x00\x03\x02", 0x00fb +"\x00\x00\x75\x00\x03\x08", 0x00fc +"\x00\x00\x79\x00\x03\x01", 0x00fd +"\x00\x00\x79\x00\x03\x08", 0x00ff +"\x00\x00\x41\x00\x03\x04", 0x0100 +"\x00\x00\x61\x00\x03\x04", 0x0101 +"\x00\x00\x41\x00\x03\x06", 0x0102 +"\x00\x00\x61\x00\x03\x06", 0x0103 +"\x00\x00\x41\x00\x03\x28", 0x0104 +"\x00\x00\x61\x00\x03\x28", 0x0105 +"\x00\x00\x43\x00\x03\x01", 0x0106 +"\x00\x00\x63\x00\x03\x01", 0x0107 +"\x00\x00\x43\x00\x03\x02", 0x0108 +"\x00\x00\x63\x00\x03\x02", 0x0109 +"\x00\x00\x43\x00\x03\x07", 0x010a +"\x00\x00\x63\x00\x03\x07", 0x010b +"\x00\x00\x43\x00\x03\x0c", 0x010c +"\x00\x00\x63\x00\x03\x0c", 0x010d +"\x00\x00\x44\x00\x03\x0c", 0x010e +"\x00\x00\x64\x00\x03\x0c", 0x010f +"\x00\x00\x45\x00\x03\x04", 0x0112 +"\x00\x00\x65\x00\x03\x04", 0x0113 +"\x00\x00\x45\x00\x03\x06", 0x0114 +"\x00\x00\x65\x00\x03\x06", 0x0115 +"\x00\x00\x45\x00\x03\x07", 0x0116 +"\x00\x00\x65\x00\x03\x07", 0x0117 +"\x00\x00\x45\x00\x03\x28", 0x0118 +"\x00\x00\x65\x00\x03\x28", 0x0119 +"\x00\x00\x45\x00\x03\x0c", 0x011a +"\x00\x00\x65\x00\x03\x0c", 0x011b +"\x00\x00\x47\x00\x03\x02", 0x011c +"\x00\x00\x67\x00\x03\x02", 0x011d +"\x00\x00\x47\x00\x03\x06", 0x011e +"\x00\x00\x67\x00\x03\x06", 0x011f +"\x00\x00\x47\x00\x03\x07", 0x0120 +"\x00\x00\x67\x00\x03\x07", 0x0121 +"\x00\x00\x47\x00\x03\x27", 0x0122 +"\x00\x00\x67\x00\x03\x27", 0x0123 +"\x00\x00\x48\x00\x03\x02", 0x0124 +"\x00\x00\x68\x00\x03\x02", 0x0125 +"\x00\x00\x49\x00\x03\x03", 0x0128 +"\x00\x00\x69\x00\x03\x03", 0x0129 +"\x00\x00\x49\x00\x03\x04", 0x012a +"\x00\x00\x69\x00\x03\x04", 0x012b +"\x00\x00\x49\x00\x03\x06", 0x012c +"\x00\x00\x69\x00\x03\x06", 0x012d +"\x00\x00\x49\x00\x03\x28", 0x012e +"\x00\x00\x69\x00\x03\x28", 0x012f +"\x00\x00\x49\x00\x03\x07", 0x0130 +"\x00\x00\x4a\x00\x03\x02", 0x0134 +"\x00\x00\x6a\x00\x03\x02", 0x0135 +"\x00\x00\x4b\x00\x03\x27", 0x0136 +"\x00\x00\x6b\x00\x03\x27", 0x0137 +"\x00\x00\x4c\x00\x03\x01", 0x0139 +"\x00\x00\x6c\x00\x03\x01", 0x013a +"\x00\x00\x4c\x00\x03\x27", 0x013b +"\x00\x00\x6c\x00\x03\x27", 0x013c +"\x00\x00\x4c\x00\x03\x0c", 0x013d +"\x00\x00\x6c\x00\x03\x0c", 0x013e +"\x00\x00\x4e\x00\x03\x01", 0x0143 +"\x00\x00\x6e\x00\x03\x01", 0x0144 +"\x00\x00\x4e\x00\x03\x27", 0x0145 +"\x00\x00\x6e\x00\x03\x27", 0x0146 +"\x00\x00\x4e\x00\x03\x0c", 0x0147 +"\x00\x00\x6e\x00\x03\x0c", 0x0148 +"\x00\x00\x4f\x00\x03\x04", 0x014c +"\x00\x00\x6f\x00\x03\x04", 0x014d +"\x00\x00\x4f\x00\x03\x06", 0x014e +"\x00\x00\x6f\x00\x03\x06", 0x014f +"\x00\x00\x4f\x00\x03\x0b", 0x0150 +"\x00\x00\x6f\x00\x03\x0b", 0x0151 +"\x00\x00\x52\x00\x03\x01", 0x0154 +"\x00\x00\x72\x00\x03\x01", 0x0155 +"\x00\x00\x52\x00\x03\x27", 0x0156 +"\x00\x00\x72\x00\x03\x27", 0x0157 +"\x00\x00\x52\x00\x03\x0c", 0x0158 +"\x00\x00\x72\x00\x03\x0c", 0x0159 +"\x00\x00\x53\x00\x03\x01", 0x015a +"\x00\x00\x73\x00\x03\x01", 0x015b +"\x00\x00\x53\x00\x03\x02", 0x015c +"\x00\x00\x73\x00\x03\x02", 0x015d +"\x00\x00\x53\x00\x03\x27", 0x015e +"\x00\x00\x73\x00\x03\x27", 0x015f +"\x00\x00\x53\x00\x03\x0c", 0x0160 +"\x00\x00\x73\x00\x03\x0c", 0x0161 +"\x00\x00\x54\x00\x03\x27", 0x0162 +"\x00\x00\x74\x00\x03\x27", 0x0163 +"\x00\x00\x54\x00\x03\x0c", 0x0164 +"\x00\x00\x74\x00\x03\x0c", 0x0165 +"\x00\x00\x55\x00\x03\x03", 0x0168 +"\x00\x00\x75\x00\x03\x03", 0x0169 +"\x00\x00\x55\x00\x03\x04", 0x016a +"\x00\x00\x75\x00\x03\x04", 0x016b +"\x00\x00\x55\x00\x03\x06", 0x016c +"\x00\x00\x75\x00\x03\x06", 0x016d +"\x00\x00\x55\x00\x03\x0a", 0x016e +"\x00\x00\x75\x00\x03\x0a", 0x016f +"\x00\x00\x55\x00\x03\x0b", 0x0170 +"\x00\x00\x75\x00\x03\x0b", 0x0171 +"\x00\x00\x55\x00\x03\x28", 0x0172 +"\x00\x00\x75\x00\x03\x28", 0x0173 +"\x00\x00\x57\x00\x03\x02", 0x0174 +"\x00\x00\x77\x00\x03\x02", 0x0175 +"\x00\x00\x59\x00\x03\x02", 0x0176 +"\x00\x00\x79\x00\x03\x02", 0x0177 +"\x00\x00\x59\x00\x03\x08", 0x0178 +"\x00\x00\x5a\x00\x03\x01", 0x0179 +"\x00\x00\x7a\x00\x03\x01", 0x017a +"\x00\x00\x5a\x00\x03\x07", 0x017b +"\x00\x00\x7a\x00\x03\x07", 0x017c +"\x00\x00\x5a\x00\x03\x0c", 0x017d +"\x00\x00\x7a\x00\x03\x0c", 0x017e +"\x00\x00\x4f\x00\x03\x1b", 0x01a0 +"\x00\x00\x6f\x00\x03\x1b", 0x01a1 +"\x00\x00\x55\x00\x03\x1b", 0x01af +"\x00\x00\x75\x00\x03\x1b", 0x01b0 +"\x00\x00\x41\x00\x03\x0c", 0x01cd +"\x00\x00\x61\x00\x03\x0c", 0x01ce +"\x00\x00\x49\x00\x03\x0c", 0x01cf +"\x00\x00\x69\x00\x03\x0c", 0x01d0 +"\x00\x00\x4f\x00\x03\x0c", 0x01d1 +"\x00\x00\x6f\x00\x03\x0c", 0x01d2 +"\x00\x00\x55\x00\x03\x0c", 0x01d3 +"\x00\x00\x75\x00\x03\x0c", 0x01d4 +"\x00\x00\xdc\x00\x03\x04", 0x01d5 +"\x00\x00\xfc\x00\x03\x04", 0x01d6 +"\x00\x00\xdc\x00\x03\x01", 0x01d7 +"\x00\x00\xfc\x00\x03\x01", 0x01d8 +"\x00\x00\xdc\x00\x03\x0c", 0x01d9 +"\x00\x00\xfc\x00\x03\x0c", 0x01da +"\x00\x00\xdc\x00\x03\x00", 0x01db +"\x00\x00\xfc\x00\x03\x00", 0x01dc +"\x00\x00\xc4\x00\x03\x04", 0x01de +"\x00\x00\xe4\x00\x03\x04", 0x01df +"\x00\x02\x26\x00\x03\x04", 0x01e0 +"\x00\x02\x27\x00\x03\x04", 0x01e1 +"\x00\x00\xc6\x00\x03\x04", 0x01e2 +"\x00\x00\xe6\x00\x03\x04", 0x01e3 +"\x00\x00\x47\x00\x03\x0c", 0x01e6 +"\x00\x00\x67\x00\x03\x0c", 0x01e7 +"\x00\x00\x4b\x00\x03\x0c", 0x01e8 +"\x00\x00\x6b\x00\x03\x0c", 0x01e9 +"\x00\x00\x4f\x00\x03\x28", 0x01ea +"\x00\x00\x6f\x00\x03\x28", 0x01eb +"\x00\x01\xea\x00\x03\x04", 0x01ec +"\x00\x01\xeb\x00\x03\x04", 0x01ed +"\x00\x01\xb7\x00\x03\x0c", 0x01ee +"\x00\x02\x92\x00\x03\x0c", 0x01ef +"\x00\x00\x6a\x00\x03\x0c", 0x01f0 +"\x00\x00\x47\x00\x03\x01", 0x01f4 +"\x00\x00\x67\x00\x03\x01", 0x01f5 +"\x00\x00\x4e\x00\x03\x00", 0x01f8 +"\x00\x00\x6e\x00\x03\x00", 0x01f9 +"\x00\x00\xc5\x00\x03\x01", 0x01fa +"\x00\x00\xe5\x00\x03\x01", 0x01fb +"\x00\x00\xc6\x00\x03\x01", 0x01fc +"\x00\x00\xe6\x00\x03\x01", 0x01fd +"\x00\x00\xd8\x00\x03\x01", 0x01fe +"\x00\x00\xf8\x00\x03\x01", 0x01ff +"\x00\x00\x41\x00\x03\x0f", 0x0200 +"\x00\x00\x61\x00\x03\x0f", 0x0201 +"\x00\x00\x41\x00\x03\x11", 0x0202 +"\x00\x00\x61\x00\x03\x11", 0x0203 +"\x00\x00\x45\x00\x03\x0f", 0x0204 +"\x00\x00\x65\x00\x03\x0f", 0x0205 +"\x00\x00\x45\x00\x03\x11", 0x0206 +"\x00\x00\x65\x00\x03\x11", 0x0207 +"\x00\x00\x49\x00\x03\x0f", 0x0208 +"\x00\x00\x69\x00\x03\x0f", 0x0209 +"\x00\x00\x49\x00\x03\x11", 0x020a +"\x00\x00\x69\x00\x03\x11", 0x020b +"\x00\x00\x4f\x00\x03\x0f", 0x020c +"\x00\x00\x6f\x00\x03\x0f", 0x020d +"\x00\x00\x4f\x00\x03\x11", 0x020e +"\x00\x00\x6f\x00\x03\x11", 0x020f +"\x00\x00\x52\x00\x03\x0f", 0x0210 +"\x00\x00\x72\x00\x03\x0f", 0x0211 +"\x00\x00\x52\x00\x03\x11", 0x0212 +"\x00\x00\x72\x00\x03\x11", 0x0213 +"\x00\x00\x55\x00\x03\x0f", 0x0214 +"\x00\x00\x75\x00\x03\x0f", 0x0215 +"\x00\x00\x55\x00\x03\x11", 0x0216 +"\x00\x00\x75\x00\x03\x11", 0x0217 +"\x00\x00\x53\x00\x03\x26", 0x0218 +"\x00\x00\x73\x00\x03\x26", 0x0219 +"\x00\x00\x54\x00\x03\x26", 0x021a +"\x00\x00\x74\x00\x03\x26", 0x021b +"\x00\x00\x48\x00\x03\x0c", 0x021e +"\x00\x00\x68\x00\x03\x0c", 0x021f +"\x00\x00\x41\x00\x03\x07", 0x0226 +"\x00\x00\x61\x00\x03\x07", 0x0227 +"\x00\x00\x45\x00\x03\x27", 0x0228 +"\x00\x00\x65\x00\x03\x27", 0x0229 +"\x00\x00\xd6\x00\x03\x04", 0x022a +"\x00\x00\xf6\x00\x03\x04", 0x022b +"\x00\x00\xd5\x00\x03\x04", 0x022c +"\x00\x00\xf5\x00\x03\x04", 0x022d +"\x00\x00\x4f\x00\x03\x07", 0x022e +"\x00\x00\x6f\x00\x03\x07", 0x022f +"\x00\x02\x2e\x00\x03\x04", 0x0230 +"\x00\x02\x2f\x00\x03\x04", 0x0231 +"\x00\x00\x59\x00\x03\x04", 0x0232 +"\x00\x00\x79\x00\x03\x04", 0x0233 +"\x00\x00\xa8\x00\x03\x01", 0x0385 +"\x00\x03\x91\x00\x03\x01", 0x0386 +"\x00\x03\x95\x00\x03\x01", 0x0388 +"\x00\x03\x97\x00\x03\x01", 0x0389 +"\x00\x03\x99\x00\x03\x01", 0x038a +"\x00\x03\x9f\x00\x03\x01", 0x038c +"\x00\x03\xa5\x00\x03\x01", 0x038e +"\x00\x03\xa9\x00\x03\x01", 0x038f +"\x00\x03\xca\x00\x03\x01", 0x0390 +"\x00\x03\x99\x00\x03\x08", 0x03aa +"\x00\x03\xa5\x00\x03\x08", 0x03ab +"\x00\x03\xb1\x00\x03\x01", 0x03ac +"\x00\x03\xb5\x00\x03\x01", 0x03ad +"\x00\x03\xb7\x00\x03\x01", 0x03ae +"\x00\x03\xb9\x00\x03\x01", 0x03af +"\x00\x03\xcb\x00\x03\x01", 0x03b0 +"\x00\x03\xb9\x00\x03\x08", 0x03ca +"\x00\x03\xc5\x00\x03\x08", 0x03cb +"\x00\x03\xbf\x00\x03\x01", 0x03cc +"\x00\x03\xc5\x00\x03\x01", 0x03cd +"\x00\x03\xc9\x00\x03\x01", 0x03ce +"\x00\x03\xd2\x00\x03\x01", 0x03d3 +"\x00\x03\xd2\x00\x03\x08", 0x03d4 +"\x00\x04\x15\x00\x03\x00", 0x0400 +"\x00\x04\x15\x00\x03\x08", 0x0401 +"\x00\x04\x13\x00\x03\x01", 0x0403 +"\x00\x04\x06\x00\x03\x08", 0x0407 +"\x00\x04\x1a\x00\x03\x01", 0x040c +"\x00\x04\x18\x00\x03\x00", 0x040d +"\x00\x04\x23\x00\x03\x06", 0x040e +"\x00\x04\x18\x00\x03\x06", 0x0419 +"\x00\x04\x38\x00\x03\x06", 0x0439 +"\x00\x04\x35\x00\x03\x00", 0x0450 +"\x00\x04\x35\x00\x03\x08", 0x0451 +"\x00\x04\x33\x00\x03\x01", 0x0453 +"\x00\x04\x56\x00\x03\x08", 0x0457 +"\x00\x04\x3a\x00\x03\x01", 0x045c +"\x00\x04\x38\x00\x03\x00", 0x045d +"\x00\x04\x43\x00\x03\x06", 0x045e +"\x00\x04\x74\x00\x03\x0f", 0x0476 +"\x00\x04\x75\x00\x03\x0f", 0x0477 +"\x00\x04\x16\x00\x03\x06", 0x04c1 +"\x00\x04\x36\x00\x03\x06", 0x04c2 +"\x00\x04\x10\x00\x03\x06", 0x04d0 +"\x00\x04\x30\x00\x03\x06", 0x04d1 +"\x00\x04\x10\x00\x03\x08", 0x04d2 +"\x00\x04\x30\x00\x03\x08", 0x04d3 +"\x00\x04\x15\x00\x03\x06", 0x04d6 +"\x00\x04\x35\x00\x03\x06", 0x04d7 +"\x00\x04\xd8\x00\x03\x08", 0x04da +"\x00\x04\xd9\x00\x03\x08", 0x04db +"\x00\x04\x16\x00\x03\x08", 0x04dc +"\x00\x04\x36\x00\x03\x08", 0x04dd +"\x00\x04\x17\x00\x03\x08", 0x04de +"\x00\x04\x37\x00\x03\x08", 0x04df +"\x00\x04\x18\x00\x03\x04", 0x04e2 +"\x00\x04\x38\x00\x03\x04", 0x04e3 +"\x00\x04\x18\x00\x03\x08", 0x04e4 +"\x00\x04\x38\x00\x03\x08", 0x04e5 +"\x00\x04\x1e\x00\x03\x08", 0x04e6 +"\x00\x04\x3e\x00\x03\x08", 0x04e7 +"\x00\x04\xe8\x00\x03\x08", 0x04ea +"\x00\x04\xe9\x00\x03\x08", 0x04eb +"\x00\x04\x2d\x00\x03\x08", 0x04ec +"\x00\x04\x4d\x00\x03\x08", 0x04ed +"\x00\x04\x23\x00\x03\x04", 0x04ee +"\x00\x04\x43\x00\x03\x04", 0x04ef +"\x00\x04\x23\x00\x03\x08", 0x04f0 +"\x00\x04\x43\x00\x03\x08", 0x04f1 +"\x00\x04\x23\x00\x03\x0b", 0x04f2 +"\x00\x04\x43\x00\x03\x0b", 0x04f3 +"\x00\x04\x27\x00\x03\x08", 0x04f4 +"\x00\x04\x47\x00\x03\x08", 0x04f5 +"\x00\x04\x2b\x00\x03\x08", 0x04f8 +"\x00\x04\x4b\x00\x03\x08", 0x04f9 +"\x00\x06\x27\x00\x06\x53", 0x0622 +"\x00\x06\x27\x00\x06\x54", 0x0623 +"\x00\x06\x48\x00\x06\x54", 0x0624 +"\x00\x06\x27\x00\x06\x55", 0x0625 +"\x00\x06\x4a\x00\x06\x54", 0x0626 +"\x00\x06\xd5\x00\x06\x54", 0x06c0 +"\x00\x06\xc1\x00\x06\x54", 0x06c2 +"\x00\x06\xd2\x00\x06\x54", 0x06d3 +"\x00\x09\x28\x00\x09\x3c", 0x0929 +"\x00\x09\x30\x00\x09\x3c", 0x0931 +"\x00\x09\x33\x00\x09\x3c", 0x0934 +"\x00\x09\xc7\x00\x09\xbe", 0x09cb +"\x00\x09\xc7\x00\x09\xd7", 0x09cc +"\x00\x0b\x47\x00\x0b\x56", 0x0b48 +"\x00\x0b\x47\x00\x0b\x3e", 0x0b4b +"\x00\x0b\x47\x00\x0b\x57", 0x0b4c +"\x00\x0b\x92\x00\x0b\xd7", 0x0b94 +"\x00\x0b\xc6\x00\x0b\xbe", 0x0bca +"\x00\x0b\xc7\x00\x0b\xbe", 0x0bcb +"\x00\x0b\xc6\x00\x0b\xd7", 0x0bcc +"\x00\x0c\x46\x00\x0c\x56", 0x0c48 +"\x00\x0c\xbf\x00\x0c\xd5", 0x0cc0 +"\x00\x0c\xc6\x00\x0c\xd5", 0x0cc7 +"\x00\x0c\xc6\x00\x0c\xd6", 0x0cc8 +"\x00\x0c\xc6\x00\x0c\xc2", 0x0cca +"\x00\x0c\xca\x00\x0c\xd5", 0x0ccb +"\x00\x0d\x46\x00\x0d\x3e", 0x0d4a +"\x00\x0d\x47\x00\x0d\x3e", 0x0d4b +"\x00\x0d\x46\x00\x0d\x57", 0x0d4c +"\x00\x0d\xd9\x00\x0d\xca", 0x0dda +"\x00\x0d\xd9\x00\x0d\xcf", 0x0ddc +"\x00\x0d\xdc\x00\x0d\xca", 0x0ddd +"\x00\x0d\xd9\x00\x0d\xdf", 0x0dde +"\x00\x10\x25\x00\x10\x2e", 0x1026 +"\x00\x1b\x05\x00\x1b\x35", 0x1b06 +"\x00\x1b\x07\x00\x1b\x35", 0x1b08 +"\x00\x1b\x09\x00\x1b\x35", 0x1b0a +"\x00\x1b\x0b\x00\x1b\x35", 0x1b0c +"\x00\x1b\x0d\x00\x1b\x35", 0x1b0e +"\x00\x1b\x11\x00\x1b\x35", 0x1b12 +"\x00\x1b\x3a\x00\x1b\x35", 0x1b3b +"\x00\x1b\x3c\x00\x1b\x35", 0x1b3d +"\x00\x1b\x3e\x00\x1b\x35", 0x1b40 +"\x00\x1b\x3f\x00\x1b\x35", 0x1b41 +"\x00\x1b\x42\x00\x1b\x35", 0x1b43 +"\x00\x00\x41\x00\x03\x25", 0x1e00 +"\x00\x00\x61\x00\x03\x25", 0x1e01 +"\x00\x00\x42\x00\x03\x07", 0x1e02 +"\x00\x00\x62\x00\x03\x07", 0x1e03 +"\x00\x00\x42\x00\x03\x23", 0x1e04 +"\x00\x00\x62\x00\x03\x23", 0x1e05 +"\x00\x00\x42\x00\x03\x31", 0x1e06 +"\x00\x00\x62\x00\x03\x31", 0x1e07 +"\x00\x00\xc7\x00\x03\x01", 0x1e08 +"\x00\x00\xe7\x00\x03\x01", 0x1e09 +"\x00\x00\x44\x00\x03\x07", 0x1e0a +"\x00\x00\x64\x00\x03\x07", 0x1e0b +"\x00\x00\x44\x00\x03\x23", 0x1e0c +"\x00\x00\x64\x00\x03\x23", 0x1e0d +"\x00\x00\x44\x00\x03\x31", 0x1e0e +"\x00\x00\x64\x00\x03\x31", 0x1e0f +"\x00\x00\x44\x00\x03\x27", 0x1e10 +"\x00\x00\x64\x00\x03\x27", 0x1e11 +"\x00\x00\x44\x00\x03\x2d", 0x1e12 +"\x00\x00\x64\x00\x03\x2d", 0x1e13 +"\x00\x01\x12\x00\x03\x00", 0x1e14 +"\x00\x01\x13\x00\x03\x00", 0x1e15 +"\x00\x01\x12\x00\x03\x01", 0x1e16 +"\x00\x01\x13\x00\x03\x01", 0x1e17 +"\x00\x00\x45\x00\x03\x2d", 0x1e18 +"\x00\x00\x65\x00\x03\x2d", 0x1e19 +"\x00\x00\x45\x00\x03\x30", 0x1e1a +"\x00\x00\x65\x00\x03\x30", 0x1e1b +"\x00\x02\x28\x00\x03\x06", 0x1e1c +"\x00\x02\x29\x00\x03\x06", 0x1e1d +"\x00\x00\x46\x00\x03\x07", 0x1e1e +"\x00\x00\x66\x00\x03\x07", 0x1e1f +"\x00\x00\x47\x00\x03\x04", 0x1e20 +"\x00\x00\x67\x00\x03\x04", 0x1e21 +"\x00\x00\x48\x00\x03\x07", 0x1e22 +"\x00\x00\x68\x00\x03\x07", 0x1e23 +"\x00\x00\x48\x00\x03\x23", 0x1e24 +"\x00\x00\x68\x00\x03\x23", 0x1e25 +"\x00\x00\x48\x00\x03\x08", 0x1e26 +"\x00\x00\x68\x00\x03\x08", 0x1e27 +"\x00\x00\x48\x00\x03\x27", 0x1e28 +"\x00\x00\x68\x00\x03\x27", 0x1e29 +"\x00\x00\x48\x00\x03\x2e", 0x1e2a +"\x00\x00\x68\x00\x03\x2e", 0x1e2b +"\x00\x00\x49\x00\x03\x30", 0x1e2c +"\x00\x00\x69\x00\x03\x30", 0x1e2d +"\x00\x00\xcf\x00\x03\x01", 0x1e2e +"\x00\x00\xef\x00\x03\x01", 0x1e2f +"\x00\x00\x4b\x00\x03\x01", 0x1e30 +"\x00\x00\x6b\x00\x03\x01", 0x1e31 +"\x00\x00\x4b\x00\x03\x23", 0x1e32 +"\x00\x00\x6b\x00\x03\x23", 0x1e33 +"\x00\x00\x4b\x00\x03\x31", 0x1e34 +"\x00\x00\x6b\x00\x03\x31", 0x1e35 +"\x00\x00\x4c\x00\x03\x23", 0x1e36 +"\x00\x00\x6c\x00\x03\x23", 0x1e37 +"\x00\x1e\x36\x00\x03\x04", 0x1e38 +"\x00\x1e\x37\x00\x03\x04", 0x1e39 +"\x00\x00\x4c\x00\x03\x31", 0x1e3a +"\x00\x00\x6c\x00\x03\x31", 0x1e3b +"\x00\x00\x4c\x00\x03\x2d", 0x1e3c +"\x00\x00\x6c\x00\x03\x2d", 0x1e3d +"\x00\x00\x4d\x00\x03\x01", 0x1e3e +"\x00\x00\x6d\x00\x03\x01", 0x1e3f +"\x00\x00\x4d\x00\x03\x07", 0x1e40 +"\x00\x00\x6d\x00\x03\x07", 0x1e41 +"\x00\x00\x4d\x00\x03\x23", 0x1e42 +"\x00\x00\x6d\x00\x03\x23", 0x1e43 +"\x00\x00\x4e\x00\x03\x07", 0x1e44 +"\x00\x00\x6e\x00\x03\x07", 0x1e45 +"\x00\x00\x4e\x00\x03\x23", 0x1e46 +"\x00\x00\x6e\x00\x03\x23", 0x1e47 +"\x00\x00\x4e\x00\x03\x31", 0x1e48 +"\x00\x00\x6e\x00\x03\x31", 0x1e49 +"\x00\x00\x4e\x00\x03\x2d", 0x1e4a +"\x00\x00\x6e\x00\x03\x2d", 0x1e4b +"\x00\x00\xd5\x00\x03\x01", 0x1e4c +"\x00\x00\xf5\x00\x03\x01", 0x1e4d +"\x00\x00\xd5\x00\x03\x08", 0x1e4e +"\x00\x00\xf5\x00\x03\x08", 0x1e4f +"\x00\x01\x4c\x00\x03\x00", 0x1e50 +"\x00\x01\x4d\x00\x03\x00", 0x1e51 +"\x00\x01\x4c\x00\x03\x01", 0x1e52 +"\x00\x01\x4d\x00\x03\x01", 0x1e53 +"\x00\x00\x50\x00\x03\x01", 0x1e54 +"\x00\x00\x70\x00\x03\x01", 0x1e55 +"\x00\x00\x50\x00\x03\x07", 0x1e56 +"\x00\x00\x70\x00\x03\x07", 0x1e57 +"\x00\x00\x52\x00\x03\x07", 0x1e58 +"\x00\x00\x72\x00\x03\x07", 0x1e59 +"\x00\x00\x52\x00\x03\x23", 0x1e5a +"\x00\x00\x72\x00\x03\x23", 0x1e5b +"\x00\x1e\x5a\x00\x03\x04", 0x1e5c +"\x00\x1e\x5b\x00\x03\x04", 0x1e5d +"\x00\x00\x52\x00\x03\x31", 0x1e5e +"\x00\x00\x72\x00\x03\x31", 0x1e5f +"\x00\x00\x53\x00\x03\x07", 0x1e60 +"\x00\x00\x73\x00\x03\x07", 0x1e61 +"\x00\x00\x53\x00\x03\x23", 0x1e62 +"\x00\x00\x73\x00\x03\x23", 0x1e63 +"\x00\x01\x5a\x00\x03\x07", 0x1e64 +"\x00\x01\x5b\x00\x03\x07", 0x1e65 +"\x00\x01\x60\x00\x03\x07", 0x1e66 +"\x00\x01\x61\x00\x03\x07", 0x1e67 +"\x00\x1e\x62\x00\x03\x07", 0x1e68 +"\x00\x1e\x63\x00\x03\x07", 0x1e69 +"\x00\x00\x54\x00\x03\x07", 0x1e6a +"\x00\x00\x74\x00\x03\x07", 0x1e6b +"\x00\x00\x54\x00\x03\x23", 0x1e6c +"\x00\x00\x74\x00\x03\x23", 0x1e6d +"\x00\x00\x54\x00\x03\x31", 0x1e6e +"\x00\x00\x74\x00\x03\x31", 0x1e6f +"\x00\x00\x54\x00\x03\x2d", 0x1e70 +"\x00\x00\x74\x00\x03\x2d", 0x1e71 +"\x00\x00\x55\x00\x03\x24", 0x1e72 +"\x00\x00\x75\x00\x03\x24", 0x1e73 +"\x00\x00\x55\x00\x03\x30", 0x1e74 +"\x00\x00\x75\x00\x03\x30", 0x1e75 +"\x00\x00\x55\x00\x03\x2d", 0x1e76 +"\x00\x00\x75\x00\x03\x2d", 0x1e77 +"\x00\x01\x68\x00\x03\x01", 0x1e78 +"\x00\x01\x69\x00\x03\x01", 0x1e79 +"\x00\x01\x6a\x00\x03\x08", 0x1e7a +"\x00\x01\x6b\x00\x03\x08", 0x1e7b +"\x00\x00\x56\x00\x03\x03", 0x1e7c +"\x00\x00\x76\x00\x03\x03", 0x1e7d +"\x00\x00\x56\x00\x03\x23", 0x1e7e +"\x00\x00\x76\x00\x03\x23", 0x1e7f +"\x00\x00\x57\x00\x03\x00", 0x1e80 +"\x00\x00\x77\x00\x03\x00", 0x1e81 +"\x00\x00\x57\x00\x03\x01", 0x1e82 +"\x00\x00\x77\x00\x03\x01", 0x1e83 +"\x00\x00\x57\x00\x03\x08", 0x1e84 +"\x00\x00\x77\x00\x03\x08", 0x1e85 +"\x00\x00\x57\x00\x03\x07", 0x1e86 +"\x00\x00\x77\x00\x03\x07", 0x1e87 +"\x00\x00\x57\x00\x03\x23", 0x1e88 +"\x00\x00\x77\x00\x03\x23", 0x1e89 +"\x00\x00\x58\x00\x03\x07", 0x1e8a +"\x00\x00\x78\x00\x03\x07", 0x1e8b +"\x00\x00\x58\x00\x03\x08", 0x1e8c +"\x00\x00\x78\x00\x03\x08", 0x1e8d +"\x00\x00\x59\x00\x03\x07", 0x1e8e +"\x00\x00\x79\x00\x03\x07", 0x1e8f +"\x00\x00\x5a\x00\x03\x02", 0x1e90 +"\x00\x00\x7a\x00\x03\x02", 0x1e91 +"\x00\x00\x5a\x00\x03\x23", 0x1e92 +"\x00\x00\x7a\x00\x03\x23", 0x1e93 +"\x00\x00\x5a\x00\x03\x31", 0x1e94 +"\x00\x00\x7a\x00\x03\x31", 0x1e95 +"\x00\x00\x68\x00\x03\x31", 0x1e96 +"\x00\x00\x74\x00\x03\x08", 0x1e97 +"\x00\x00\x77\x00\x03\x0a", 0x1e98 +"\x00\x00\x79\x00\x03\x0a", 0x1e99 +"\x00\x01\x7f\x00\x03\x07", 0x1e9b +"\x00\x00\x41\x00\x03\x23", 0x1ea0 +"\x00\x00\x61\x00\x03\x23", 0x1ea1 +"\x00\x00\x41\x00\x03\x09", 0x1ea2 +"\x00\x00\x61\x00\x03\x09", 0x1ea3 +"\x00\x00\xc2\x00\x03\x01", 0x1ea4 +"\x00\x00\xe2\x00\x03\x01", 0x1ea5 +"\x00\x00\xc2\x00\x03\x00", 0x1ea6 +"\x00\x00\xe2\x00\x03\x00", 0x1ea7 +"\x00\x00\xc2\x00\x03\x09", 0x1ea8 +"\x00\x00\xe2\x00\x03\x09", 0x1ea9 +"\x00\x00\xc2\x00\x03\x03", 0x1eaa +"\x00\x00\xe2\x00\x03\x03", 0x1eab +"\x00\x1e\xa0\x00\x03\x02", 0x1eac +"\x00\x1e\xa1\x00\x03\x02", 0x1ead +"\x00\x01\x02\x00\x03\x01", 0x1eae +"\x00\x01\x03\x00\x03\x01", 0x1eaf +"\x00\x01\x02\x00\x03\x00", 0x1eb0 +"\x00\x01\x03\x00\x03\x00", 0x1eb1 +"\x00\x01\x02\x00\x03\x09", 0x1eb2 +"\x00\x01\x03\x00\x03\x09", 0x1eb3 +"\x00\x01\x02\x00\x03\x03", 0x1eb4 +"\x00\x01\x03\x00\x03\x03", 0x1eb5 +"\x00\x1e\xa0\x00\x03\x06", 0x1eb6 +"\x00\x1e\xa1\x00\x03\x06", 0x1eb7 +"\x00\x00\x45\x00\x03\x23", 0x1eb8 +"\x00\x00\x65\x00\x03\x23", 0x1eb9 +"\x00\x00\x45\x00\x03\x09", 0x1eba +"\x00\x00\x65\x00\x03\x09", 0x1ebb +"\x00\x00\x45\x00\x03\x03", 0x1ebc +"\x00\x00\x65\x00\x03\x03", 0x1ebd +"\x00\x00\xca\x00\x03\x01", 0x1ebe +"\x00\x00\xea\x00\x03\x01", 0x1ebf +"\x00\x00\xca\x00\x03\x00", 0x1ec0 +"\x00\x00\xea\x00\x03\x00", 0x1ec1 +"\x00\x00\xca\x00\x03\x09", 0x1ec2 +"\x00\x00\xea\x00\x03\x09", 0x1ec3 +"\x00\x00\xca\x00\x03\x03", 0x1ec4 +"\x00\x00\xea\x00\x03\x03", 0x1ec5 +"\x00\x1e\xb8\x00\x03\x02", 0x1ec6 +"\x00\x1e\xb9\x00\x03\x02", 0x1ec7 +"\x00\x00\x49\x00\x03\x09", 0x1ec8 +"\x00\x00\x69\x00\x03\x09", 0x1ec9 +"\x00\x00\x49\x00\x03\x23", 0x1eca +"\x00\x00\x69\x00\x03\x23", 0x1ecb +"\x00\x00\x4f\x00\x03\x23", 0x1ecc +"\x00\x00\x6f\x00\x03\x23", 0x1ecd +"\x00\x00\x4f\x00\x03\x09", 0x1ece +"\x00\x00\x6f\x00\x03\x09", 0x1ecf +"\x00\x00\xd4\x00\x03\x01", 0x1ed0 +"\x00\x00\xf4\x00\x03\x01", 0x1ed1 +"\x00\x00\xd4\x00\x03\x00", 0x1ed2 +"\x00\x00\xf4\x00\x03\x00", 0x1ed3 +"\x00\x00\xd4\x00\x03\x09", 0x1ed4 +"\x00\x00\xf4\x00\x03\x09", 0x1ed5 +"\x00\x00\xd4\x00\x03\x03", 0x1ed6 +"\x00\x00\xf4\x00\x03\x03", 0x1ed7 +"\x00\x1e\xcc\x00\x03\x02", 0x1ed8 +"\x00\x1e\xcd\x00\x03\x02", 0x1ed9 +"\x00\x01\xa0\x00\x03\x01", 0x1eda +"\x00\x01\xa1\x00\x03\x01", 0x1edb +"\x00\x01\xa0\x00\x03\x00", 0x1edc +"\x00\x01\xa1\x00\x03\x00", 0x1edd +"\x00\x01\xa0\x00\x03\x09", 0x1ede +"\x00\x01\xa1\x00\x03\x09", 0x1edf +"\x00\x01\xa0\x00\x03\x03", 0x1ee0 +"\x00\x01\xa1\x00\x03\x03", 0x1ee1 +"\x00\x01\xa0\x00\x03\x23", 0x1ee2 +"\x00\x01\xa1\x00\x03\x23", 0x1ee3 +"\x00\x00\x55\x00\x03\x23", 0x1ee4 +"\x00\x00\x75\x00\x03\x23", 0x1ee5 +"\x00\x00\x55\x00\x03\x09", 0x1ee6 +"\x00\x00\x75\x00\x03\x09", 0x1ee7 +"\x00\x01\xaf\x00\x03\x01", 0x1ee8 +"\x00\x01\xb0\x00\x03\x01", 0x1ee9 +"\x00\x01\xaf\x00\x03\x00", 0x1eea +"\x00\x01\xb0\x00\x03\x00", 0x1eeb +"\x00\x01\xaf\x00\x03\x09", 0x1eec +"\x00\x01\xb0\x00\x03\x09", 0x1eed +"\x00\x01\xaf\x00\x03\x03", 0x1eee +"\x00\x01\xb0\x00\x03\x03", 0x1eef +"\x00\x01\xaf\x00\x03\x23", 0x1ef0 +"\x00\x01\xb0\x00\x03\x23", 0x1ef1 +"\x00\x00\x59\x00\x03\x00", 0x1ef2 +"\x00\x00\x79\x00\x03\x00", 0x1ef3 +"\x00\x00\x59\x00\x03\x23", 0x1ef4 +"\x00\x00\x79\x00\x03\x23", 0x1ef5 +"\x00\x00\x59\x00\x03\x09", 0x1ef6 +"\x00\x00\x79\x00\x03\x09", 0x1ef7 +"\x00\x00\x59\x00\x03\x03", 0x1ef8 +"\x00\x00\x79\x00\x03\x03", 0x1ef9 +"\x00\x03\xb1\x00\x03\x13", 0x1f00 +"\x00\x03\xb1\x00\x03\x14", 0x1f01 +"\x00\x1f\x00\x00\x03\x00", 0x1f02 +"\x00\x1f\x01\x00\x03\x00", 0x1f03 +"\x00\x1f\x00\x00\x03\x01", 0x1f04 +"\x00\x1f\x01\x00\x03\x01", 0x1f05 +"\x00\x1f\x00\x00\x03\x42", 0x1f06 +"\x00\x1f\x01\x00\x03\x42", 0x1f07 +"\x00\x03\x91\x00\x03\x13", 0x1f08 +"\x00\x03\x91\x00\x03\x14", 0x1f09 +"\x00\x1f\x08\x00\x03\x00", 0x1f0a +"\x00\x1f\x09\x00\x03\x00", 0x1f0b +"\x00\x1f\x08\x00\x03\x01", 0x1f0c +"\x00\x1f\x09\x00\x03\x01", 0x1f0d +"\x00\x1f\x08\x00\x03\x42", 0x1f0e +"\x00\x1f\x09\x00\x03\x42", 0x1f0f +"\x00\x03\xb5\x00\x03\x13", 0x1f10 +"\x00\x03\xb5\x00\x03\x14", 0x1f11 +"\x00\x1f\x10\x00\x03\x00", 0x1f12 +"\x00\x1f\x11\x00\x03\x00", 0x1f13 +"\x00\x1f\x10\x00\x03\x01", 0x1f14 +"\x00\x1f\x11\x00\x03\x01", 0x1f15 +"\x00\x03\x95\x00\x03\x13", 0x1f18 +"\x00\x03\x95\x00\x03\x14", 0x1f19 +"\x00\x1f\x18\x00\x03\x00", 0x1f1a +"\x00\x1f\x19\x00\x03\x00", 0x1f1b +"\x00\x1f\x18\x00\x03\x01", 0x1f1c +"\x00\x1f\x19\x00\x03\x01", 0x1f1d +"\x00\x03\xb7\x00\x03\x13", 0x1f20 +"\x00\x03\xb7\x00\x03\x14", 0x1f21 +"\x00\x1f\x20\x00\x03\x00", 0x1f22 +"\x00\x1f\x21\x00\x03\x00", 0x1f23 +"\x00\x1f\x20\x00\x03\x01", 0x1f24 +"\x00\x1f\x21\x00\x03\x01", 0x1f25 +"\x00\x1f\x20\x00\x03\x42", 0x1f26 +"\x00\x1f\x21\x00\x03\x42", 0x1f27 +"\x00\x03\x97\x00\x03\x13", 0x1f28 +"\x00\x03\x97\x00\x03\x14", 0x1f29 +"\x00\x1f\x28\x00\x03\x00", 0x1f2a +"\x00\x1f\x29\x00\x03\x00", 0x1f2b +"\x00\x1f\x28\x00\x03\x01", 0x1f2c +"\x00\x1f\x29\x00\x03\x01", 0x1f2d +"\x00\x1f\x28\x00\x03\x42", 0x1f2e +"\x00\x1f\x29\x00\x03\x42", 0x1f2f +"\x00\x03\xb9\x00\x03\x13", 0x1f30 +"\x00\x03\xb9\x00\x03\x14", 0x1f31 +"\x00\x1f\x30\x00\x03\x00", 0x1f32 +"\x00\x1f\x31\x00\x03\x00", 0x1f33 +"\x00\x1f\x30\x00\x03\x01", 0x1f34 +"\x00\x1f\x31\x00\x03\x01", 0x1f35 +"\x00\x1f\x30\x00\x03\x42", 0x1f36 +"\x00\x1f\x31\x00\x03\x42", 0x1f37 +"\x00\x03\x99\x00\x03\x13", 0x1f38 +"\x00\x03\x99\x00\x03\x14", 0x1f39 +"\x00\x1f\x38\x00\x03\x00", 0x1f3a +"\x00\x1f\x39\x00\x03\x00", 0x1f3b +"\x00\x1f\x38\x00\x03\x01", 0x1f3c +"\x00\x1f\x39\x00\x03\x01", 0x1f3d +"\x00\x1f\x38\x00\x03\x42", 0x1f3e +"\x00\x1f\x39\x00\x03\x42", 0x1f3f +"\x00\x03\xbf\x00\x03\x13", 0x1f40 +"\x00\x03\xbf\x00\x03\x14", 0x1f41 +"\x00\x1f\x40\x00\x03\x00", 0x1f42 +"\x00\x1f\x41\x00\x03\x00", 0x1f43 +"\x00\x1f\x40\x00\x03\x01", 0x1f44 +"\x00\x1f\x41\x00\x03\x01", 0x1f45 +"\x00\x03\x9f\x00\x03\x13", 0x1f48 +"\x00\x03\x9f\x00\x03\x14", 0x1f49 +"\x00\x1f\x48\x00\x03\x00", 0x1f4a +"\x00\x1f\x49\x00\x03\x00", 0x1f4b +"\x00\x1f\x48\x00\x03\x01", 0x1f4c +"\x00\x1f\x49\x00\x03\x01", 0x1f4d +"\x00\x03\xc5\x00\x03\x13", 0x1f50 +"\x00\x03\xc5\x00\x03\x14", 0x1f51 +"\x00\x1f\x50\x00\x03\x00", 0x1f52 +"\x00\x1f\x51\x00\x03\x00", 0x1f53 +"\x00\x1f\x50\x00\x03\x01", 0x1f54 +"\x00\x1f\x51\x00\x03\x01", 0x1f55 +"\x00\x1f\x50\x00\x03\x42", 0x1f56 +"\x00\x1f\x51\x00\x03\x42", 0x1f57 +"\x00\x03\xa5\x00\x03\x14", 0x1f59 +"\x00\x1f\x59\x00\x03\x00", 0x1f5b +"\x00\x1f\x59\x00\x03\x01", 0x1f5d +"\x00\x1f\x59\x00\x03\x42", 0x1f5f +"\x00\x03\xc9\x00\x03\x13", 0x1f60 +"\x00\x03\xc9\x00\x03\x14", 0x1f61 +"\x00\x1f\x60\x00\x03\x00", 0x1f62 +"\x00\x1f\x61\x00\x03\x00", 0x1f63 +"\x00\x1f\x60\x00\x03\x01", 0x1f64 +"\x00\x1f\x61\x00\x03\x01", 0x1f65 +"\x00\x1f\x60\x00\x03\x42", 0x1f66 +"\x00\x1f\x61\x00\x03\x42", 0x1f67 +"\x00\x03\xa9\x00\x03\x13", 0x1f68 +"\x00\x03\xa9\x00\x03\x14", 0x1f69 +"\x00\x1f\x68\x00\x03\x00", 0x1f6a +"\x00\x1f\x69\x00\x03\x00", 0x1f6b +"\x00\x1f\x68\x00\x03\x01", 0x1f6c +"\x00\x1f\x69\x00\x03\x01", 0x1f6d +"\x00\x1f\x68\x00\x03\x42", 0x1f6e +"\x00\x1f\x69\x00\x03\x42", 0x1f6f +"\x00\x03\xb1\x00\x03\x00", 0x1f70 +"\x00\x03\xb5\x00\x03\x00", 0x1f72 +"\x00\x03\xb7\x00\x03\x00", 0x1f74 +"\x00\x03\xb9\x00\x03\x00", 0x1f76 +"\x00\x03\xbf\x00\x03\x00", 0x1f78 +"\x00\x03\xc5\x00\x03\x00", 0x1f7a +"\x00\x03\xc9\x00\x03\x00", 0x1f7c +"\x00\x1f\x00\x00\x03\x45", 0x1f80 +"\x00\x1f\x01\x00\x03\x45", 0x1f81 +"\x00\x1f\x02\x00\x03\x45", 0x1f82 +"\x00\x1f\x03\x00\x03\x45", 0x1f83 +"\x00\x1f\x04\x00\x03\x45", 0x1f84 +"\x00\x1f\x05\x00\x03\x45", 0x1f85 +"\x00\x1f\x06\x00\x03\x45", 0x1f86 +"\x00\x1f\x07\x00\x03\x45", 0x1f87 +"\x00\x1f\x08\x00\x03\x45", 0x1f88 +"\x00\x1f\x09\x00\x03\x45", 0x1f89 +"\x00\x1f\x0a\x00\x03\x45", 0x1f8a +"\x00\x1f\x0b\x00\x03\x45", 0x1f8b +"\x00\x1f\x0c\x00\x03\x45", 0x1f8c +"\x00\x1f\x0d\x00\x03\x45", 0x1f8d +"\x00\x1f\x0e\x00\x03\x45", 0x1f8e +"\x00\x1f\x0f\x00\x03\x45", 0x1f8f +"\x00\x1f\x20\x00\x03\x45", 0x1f90 +"\x00\x1f\x21\x00\x03\x45", 0x1f91 +"\x00\x1f\x22\x00\x03\x45", 0x1f92 +"\x00\x1f\x23\x00\x03\x45", 0x1f93 +"\x00\x1f\x24\x00\x03\x45", 0x1f94 +"\x00\x1f\x25\x00\x03\x45", 0x1f95 +"\x00\x1f\x26\x00\x03\x45", 0x1f96 +"\x00\x1f\x27\x00\x03\x45", 0x1f97 +"\x00\x1f\x28\x00\x03\x45", 0x1f98 +"\x00\x1f\x29\x00\x03\x45", 0x1f99 +"\x00\x1f\x2a\x00\x03\x45", 0x1f9a +"\x00\x1f\x2b\x00\x03\x45", 0x1f9b +"\x00\x1f\x2c\x00\x03\x45", 0x1f9c +"\x00\x1f\x2d\x00\x03\x45", 0x1f9d +"\x00\x1f\x2e\x00\x03\x45", 0x1f9e +"\x00\x1f\x2f\x00\x03\x45", 0x1f9f +"\x00\x1f\x60\x00\x03\x45", 0x1fa0 +"\x00\x1f\x61\x00\x03\x45", 0x1fa1 +"\x00\x1f\x62\x00\x03\x45", 0x1fa2 +"\x00\x1f\x63\x00\x03\x45", 0x1fa3 +"\x00\x1f\x64\x00\x03\x45", 0x1fa4 +"\x00\x1f\x65\x00\x03\x45", 0x1fa5 +"\x00\x1f\x66\x00\x03\x45", 0x1fa6 +"\x00\x1f\x67\x00\x03\x45", 0x1fa7 +"\x00\x1f\x68\x00\x03\x45", 0x1fa8 +"\x00\x1f\x69\x00\x03\x45", 0x1fa9 +"\x00\x1f\x6a\x00\x03\x45", 0x1faa +"\x00\x1f\x6b\x00\x03\x45", 0x1fab +"\x00\x1f\x6c\x00\x03\x45", 0x1fac +"\x00\x1f\x6d\x00\x03\x45", 0x1fad +"\x00\x1f\x6e\x00\x03\x45", 0x1fae +"\x00\x1f\x6f\x00\x03\x45", 0x1faf +"\x00\x03\xb1\x00\x03\x06", 0x1fb0 +"\x00\x03\xb1\x00\x03\x04", 0x1fb1 +"\x00\x1f\x70\x00\x03\x45", 0x1fb2 +"\x00\x03\xb1\x00\x03\x45", 0x1fb3 +"\x00\x03\xac\x00\x03\x45", 0x1fb4 +"\x00\x03\xb1\x00\x03\x42", 0x1fb6 +"\x00\x1f\xb6\x00\x03\x45", 0x1fb7 +"\x00\x03\x91\x00\x03\x06", 0x1fb8 +"\x00\x03\x91\x00\x03\x04", 0x1fb9 +"\x00\x03\x91\x00\x03\x00", 0x1fba +"\x00\x03\x91\x00\x03\x45", 0x1fbc +"\x00\x00\xa8\x00\x03\x42", 0x1fc1 +"\x00\x1f\x74\x00\x03\x45", 0x1fc2 +"\x00\x03\xb7\x00\x03\x45", 0x1fc3 +"\x00\x03\xae\x00\x03\x45", 0x1fc4 +"\x00\x03\xb7\x00\x03\x42", 0x1fc6 +"\x00\x1f\xc6\x00\x03\x45", 0x1fc7 +"\x00\x03\x95\x00\x03\x00", 0x1fc8 +"\x00\x03\x97\x00\x03\x00", 0x1fca +"\x00\x03\x97\x00\x03\x45", 0x1fcc +"\x00\x1f\xbf\x00\x03\x00", 0x1fcd +"\x00\x1f\xbf\x00\x03\x01", 0x1fce +"\x00\x1f\xbf\x00\x03\x42", 0x1fcf +"\x00\x03\xb9\x00\x03\x06", 0x1fd0 +"\x00\x03\xb9\x00\x03\x04", 0x1fd1 +"\x00\x03\xca\x00\x03\x00", 0x1fd2 +"\x00\x03\xb9\x00\x03\x42", 0x1fd6 +"\x00\x03\xca\x00\x03\x42", 0x1fd7 +"\x00\x03\x99\x00\x03\x06", 0x1fd8 +"\x00\x03\x99\x00\x03\x04", 0x1fd9 +"\x00\x03\x99\x00\x03\x00", 0x1fda +"\x00\x1f\xfe\x00\x03\x00", 0x1fdd +"\x00\x1f\xfe\x00\x03\x01", 0x1fde +"\x00\x1f\xfe\x00\x03\x42", 0x1fdf +"\x00\x03\xc5\x00\x03\x06", 0x1fe0 +"\x00\x03\xc5\x00\x03\x04", 0x1fe1 +"\x00\x03\xcb\x00\x03\x00", 0x1fe2 +"\x00\x03\xc1\x00\x03\x13", 0x1fe4 +"\x00\x03\xc1\x00\x03\x14", 0x1fe5 +"\x00\x03\xc5\x00\x03\x42", 0x1fe6 +"\x00\x03\xcb\x00\x03\x42", 0x1fe7 +"\x00\x03\xa5\x00\x03\x06", 0x1fe8 +"\x00\x03\xa5\x00\x03\x04", 0x1fe9 +"\x00\x03\xa5\x00\x03\x00", 0x1fea +"\x00\x03\xa1\x00\x03\x14", 0x1fec +"\x00\x00\xa8\x00\x03\x00", 0x1fed +"\x00\x1f\x7c\x00\x03\x45", 0x1ff2 +"\x00\x03\xc9\x00\x03\x45", 0x1ff3 +"\x00\x03\xce\x00\x03\x45", 0x1ff4 +"\x00\x03\xc9\x00\x03\x42", 0x1ff6 +"\x00\x1f\xf6\x00\x03\x45", 0x1ff7 +"\x00\x03\x9f\x00\x03\x00", 0x1ff8 +"\x00\x03\xa9\x00\x03\x00", 0x1ffa +"\x00\x03\xa9\x00\x03\x45", 0x1ffc +"\x00\x21\x90\x00\x03\x38", 0x219a +"\x00\x21\x92\x00\x03\x38", 0x219b +"\x00\x21\x94\x00\x03\x38", 0x21ae +"\x00\x21\xd0\x00\x03\x38", 0x21cd +"\x00\x21\xd4\x00\x03\x38", 0x21ce +"\x00\x21\xd2\x00\x03\x38", 0x21cf +"\x00\x22\x03\x00\x03\x38", 0x2204 +"\x00\x22\x08\x00\x03\x38", 0x2209 +"\x00\x22\x0b\x00\x03\x38", 0x220c +"\x00\x22\x23\x00\x03\x38", 0x2224 +"\x00\x22\x25\x00\x03\x38", 0x2226 +"\x00\x22\x3c\x00\x03\x38", 0x2241 +"\x00\x22\x43\x00\x03\x38", 0x2244 +"\x00\x22\x45\x00\x03\x38", 0x2247 +"\x00\x22\x48\x00\x03\x38", 0x2249 +"\x00\x00\x3d\x00\x03\x38", 0x2260 +"\x00\x22\x61\x00\x03\x38", 0x2262 +"\x00\x22\x4d\x00\x03\x38", 0x226d +"\x00\x00\x3c\x00\x03\x38", 0x226e +"\x00\x00\x3e\x00\x03\x38", 0x226f +"\x00\x22\x64\x00\x03\x38", 0x2270 +"\x00\x22\x65\x00\x03\x38", 0x2271 +"\x00\x22\x72\x00\x03\x38", 0x2274 +"\x00\x22\x73\x00\x03\x38", 0x2275 +"\x00\x22\x76\x00\x03\x38", 0x2278 +"\x00\x22\x77\x00\x03\x38", 0x2279 +"\x00\x22\x7a\x00\x03\x38", 0x2280 +"\x00\x22\x7b\x00\x03\x38", 0x2281 +"\x00\x22\x82\x00\x03\x38", 0x2284 +"\x00\x22\x83\x00\x03\x38", 0x2285 +"\x00\x22\x86\x00\x03\x38", 0x2288 +"\x00\x22\x87\x00\x03\x38", 0x2289 +"\x00\x22\xa2\x00\x03\x38", 0x22ac +"\x00\x22\xa8\x00\x03\x38", 0x22ad +"\x00\x22\xa9\x00\x03\x38", 0x22ae +"\x00\x22\xab\x00\x03\x38", 0x22af +"\x00\x22\x7c\x00\x03\x38", 0x22e0 +"\x00\x22\x7d\x00\x03\x38", 0x22e1 +"\x00\x22\x91\x00\x03\x38", 0x22e2 +"\x00\x22\x92\x00\x03\x38", 0x22e3 +"\x00\x22\xb2\x00\x03\x38", 0x22ea +"\x00\x22\xb3\x00\x03\x38", 0x22eb +"\x00\x22\xb4\x00\x03\x38", 0x22ec +"\x00\x22\xb5\x00\x03\x38", 0x22ed +"\x00\x30\x4b\x00\x30\x99", 0x304c +"\x00\x30\x4d\x00\x30\x99", 0x304e +"\x00\x30\x4f\x00\x30\x99", 0x3050 +"\x00\x30\x51\x00\x30\x99", 0x3052 +"\x00\x30\x53\x00\x30\x99", 0x3054 +"\x00\x30\x55\x00\x30\x99", 0x3056 +"\x00\x30\x57\x00\x30\x99", 0x3058 +"\x00\x30\x59\x00\x30\x99", 0x305a +"\x00\x30\x5b\x00\x30\x99", 0x305c +"\x00\x30\x5d\x00\x30\x99", 0x305e +"\x00\x30\x5f\x00\x30\x99", 0x3060 +"\x00\x30\x61\x00\x30\x99", 0x3062 +"\x00\x30\x64\x00\x30\x99", 0x3065 +"\x00\x30\x66\x00\x30\x99", 0x3067 +"\x00\x30\x68\x00\x30\x99", 0x3069 +"\x00\x30\x6f\x00\x30\x99", 0x3070 +"\x00\x30\x6f\x00\x30\x9a", 0x3071 +"\x00\x30\x72\x00\x30\x99", 0x3073 +"\x00\x30\x72\x00\x30\x9a", 0x3074 +"\x00\x30\x75\x00\x30\x99", 0x3076 +"\x00\x30\x75\x00\x30\x9a", 0x3077 +"\x00\x30\x78\x00\x30\x99", 0x3079 +"\x00\x30\x78\x00\x30\x9a", 0x307a +"\x00\x30\x7b\x00\x30\x99", 0x307c +"\x00\x30\x7b\x00\x30\x9a", 0x307d +"\x00\x30\x46\x00\x30\x99", 0x3094 +"\x00\x30\x9d\x00\x30\x99", 0x309e +"\x00\x30\xab\x00\x30\x99", 0x30ac +"\x00\x30\xad\x00\x30\x99", 0x30ae +"\x00\x30\xaf\x00\x30\x99", 0x30b0 +"\x00\x30\xb1\x00\x30\x99", 0x30b2 +"\x00\x30\xb3\x00\x30\x99", 0x30b4 +"\x00\x30\xb5\x00\x30\x99", 0x30b6 +"\x00\x30\xb7\x00\x30\x99", 0x30b8 +"\x00\x30\xb9\x00\x30\x99", 0x30ba +"\x00\x30\xbb\x00\x30\x99", 0x30bc +"\x00\x30\xbd\x00\x30\x99", 0x30be +"\x00\x30\xbf\x00\x30\x99", 0x30c0 +"\x00\x30\xc1\x00\x30\x99", 0x30c2 +"\x00\x30\xc4\x00\x30\x99", 0x30c5 +"\x00\x30\xc6\x00\x30\x99", 0x30c7 +"\x00\x30\xc8\x00\x30\x99", 0x30c9 +"\x00\x30\xcf\x00\x30\x99", 0x30d0 +"\x00\x30\xcf\x00\x30\x9a", 0x30d1 +"\x00\x30\xd2\x00\x30\x99", 0x30d3 +"\x00\x30\xd2\x00\x30\x9a", 0x30d4 +"\x00\x30\xd5\x00\x30\x99", 0x30d6 +"\x00\x30\xd5\x00\x30\x9a", 0x30d7 +"\x00\x30\xd8\x00\x30\x99", 0x30d9 +"\x00\x30\xd8\x00\x30\x9a", 0x30da +"\x00\x30\xdb\x00\x30\x99", 0x30dc +"\x00\x30\xdb\x00\x30\x9a", 0x30dd +"\x00\x30\xa6\x00\x30\x99", 0x30f4 +"\x00\x30\xef\x00\x30\x99", 0x30f7 +"\x00\x30\xf0\x00\x30\x99", 0x30f8 +"\x00\x30\xf1\x00\x30\x99", 0x30f9 +"\x00\x30\xf2\x00\x30\x99", 0x30fa +"\x00\x30\xfd\x00\x30\x99", 0x30fe +"\x01\x10\x99\x01\x10\xba", 0x1109a +"\x01\x10\x9b\x01\x10\xba", 0x1109c +"\x01\x10\xa5\x01\x10\xba", 0x110ab +"\x01\x11\x31\x01\x11\x27", 0x1112e +"\x01\x11\x32\x01\x11\x27", 0x1112f +"\x01\x13\x47\x01\x13\x3e", 0x1134b +"\x01\x13\x47\x01\x13\x57", 0x1134c +"\x01\x14\xb9\x01\x14\xba", 0x114bb +"\x01\x14\xb9\x01\x14\xb0", 0x114bc +"\x01\x14\xb9\x01\x14\xbd", 0x114be +"\x01\x15\xb8\x01\x15\xaf", 0x115ba +"\x01\x15\xb9\x01\x15\xaf", 0x115bb diff --git a/lib/unistring/uninorm/composition-table.h b/lib/unistring/uninorm/composition-table.h new file mode 100644 index 0000000..8107a4a --- /dev/null +++ b/lib/unistring/uninorm/composition-table.h @@ -0,0 +1,2197 @@ +/* ANSI-C code produced by gperf version 3.1 */ +/* Command-line: gperf -m 1 ./uninorm/composition-table.gperf */ +/* Computed positions: -k'2-3,6' */ + + +#define TOTAL_KEYWORDS 940 +#define MIN_WORD_LENGTH 6 +#define MAX_WORD_LENGTH 6 +#define MIN_HASH_VALUE 1 +#define MAX_HASH_VALUE 1565 +/* maximum key range = 1565, duplicates = 0 */ + +#ifdef __GNUC__ +__inline +#else +#ifdef __cplusplus +inline +#endif +#endif +/*ARGSUSED*/ +static unsigned int +gl_uninorm_compose_hash (register const char *str, register size_t len) +{ + static const unsigned short asso_values[] = + { + 7, 1, 0, 3, 58, 132, 531, 62, 4, 33, + 117, 268, 476, 135, 509, 481, 103, 265, 249, 495, + 61, 124, 336, 409, 703, 241, 435, 462, 738, 1566, + 48, 13, 901, 766, 322, 635, 192, 621, 846, 13, + 337, 65, 161, 130, 103, 28, 255, 640, 133, 342, + 172, 52, 1566, 818, 201, 34, 695, 50, 31, 1566, + 16, 35, 438, 139, 63, 89, 272, 2, 588, 167, + 12, 375, 289, 61, 44, 548, 431, 452, 395, 180, + 794, 853, 362, 561, 456, 202, 677, 360, 195, 300, + 572, 715, 1566, 291, 1566, 276, 814, 26, 634, 579, + 270, 98, 423, 415, 323, 42, 862, 657, 559, 324, + 262, 124, 863, 1566, 251, 538, 236, 133, 47, 406, + 691, 219, 590, 5, 56, 83, 1566, 1, 1566, 1566, + 65, 39, 1566, 1566, 37, 35, 1566, 1566, 1566, 1566, + 1566, 1566, 1566, 1566, 4, 527, 18, 1566, 0, 849, + 1566, 781, 1566, 572, 59, 73, 1566, 204, 1566, 417, + 618, 511, 20, 1566, 1566, 708, 167, 1566, 855, 685, + 1566, 333, 73, 136, 71, 625, 611, 523, 12, 311, + 11, 649, 10, 505, 62, 482, 1566, 113, 1566, 126, + 7, 476, 1566, 614, 853, 1, 41, 560, 553, 261, + 104, 719, 668, 854, 19, 10, 9, 728, 31, 1566, + 442, 1566, 749, 313, 12, 0, 659, 3, 1566, 329, + 37, 1566, 1566, 1566, 44, 1566, 847, 1566, 33, 4, + 23, 1, 33, 24, 757, 4, 1566, 1566, 1566, 3, + 93, 73, 72, 1566, 824, 20, 17, 1566, 0, 1566, + 1566, 1566, 77, 46, 460, 1566, 1566 + }; + return asso_values[(unsigned char)str[5]+1] + asso_values[(unsigned char)str[2]] + asso_values[(unsigned char)str[1]]; +} + +static const struct composition_rule * +gl_uninorm_compose_lookup (register const char *str, register size_t len) +{ + static const unsigned char lengthtable[] = + { + 0, 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, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 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, 0, 6, 6, 6, 6, 6, 6, 6, 6, + 0, 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, 0, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 0, + 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, 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, 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, 0, 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, 0, 6, 6, 0, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 0, 6, 6, 6, 6, 6, 6, 0, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 0, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 0, 6, 6, + 0, 6, 0, 6, 0, 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, 0, 6, 6, 6, 6, 0, 6, + 6, 6, 0, 6, 0, 6, 6, 6, 6, 0, 6, 6, 0, 6, + 6, 6, 0, 6, 0, 0, 0, 6, 0, 6, 0, 6, 6, 6, + 6, 0, 6, 6, 6, 6, 6, 0, 6, 0, 6, 0, 0, 6, + 6, 6, 6, 0, 6, 0, 0, 6, 6, 0, 6, 6, 6, 0, + 6, 0, 0, 0, 6, 0, 6, 6, 0, 6, 6, 0, 0, 0, + 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 6, 0, + 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 6, 6, 6, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, + 0, 0, 0, 0, 0, 0, 6, 6, 0, 6, 6, 6, 0, 6, + 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, + 6, 0, 0, 0, 6, 0, 0, 6, 6, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 6, 0, 0, 0, 6, 6, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, + 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, + 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6 + }; + static const struct composition_rule wordlist[] = + { + {""}, +#line 581 "./uninorm/composition-table.gperf" + {"\000\001\002\000\003\001", 0x1eae}, +#line 583 "./uninorm/composition-table.gperf" + {"\000\001\002\000\003\000", 0x1eb0}, + {""}, +#line 582 "./uninorm/composition-table.gperf" + {"\000\001\003\000\003\001", 0x1eaf}, +#line 584 "./uninorm/composition-table.gperf" + {"\000\001\003\000\003\000", 0x1eb1}, +#line 566 "./uninorm/composition-table.gperf" + {"\000\001\177\000\003\007", 0x1e9b}, +#line 247 "./uninorm/composition-table.gperf" + {"\000\000\370\000\003\001", 0x01ff}, +#line 421 "./uninorm/composition-table.gperf" + {"\000\000\347\000\003\001", 0x1e09}, +#line 99 "./uninorm/composition-table.gperf" + {"\000\000C\000\003\001", 0x0106}, +#line 459 "./uninorm/composition-table.gperf" + {"\000\000\357\000\003\001", 0x1e2f}, +#line 243 "./uninorm/composition-table.gperf" + {"\000\000\345\000\003\001", 0x01fb}, +#line 101 "./uninorm/composition-table.gperf" + {"\000\000C\000\003\002", 0x0108}, +#line 103 "./uninorm/composition-table.gperf" + {"\000\000C\000\003\007", 0x010a}, +#line 662 "./uninorm/composition-table.gperf" + {"\000\037\001\000\003\001", 0x1f05}, +#line 660 "./uninorm/composition-table.gperf" + {"\000\037\001\000\003\000", 0x1f03}, +#line 664 "./uninorm/composition-table.gperf" + {"\000\037\001\000\003B", 0x1f07}, +#line 669 "./uninorm/composition-table.gperf" + {"\000\037\010\000\003\001", 0x1f0c}, +#line 667 "./uninorm/composition-table.gperf" + {"\000\037\010\000\003\000", 0x1f0a}, +#line 671 "./uninorm/composition-table.gperf" + {"\000\037\010\000\003B", 0x1f0e}, +#line 661 "./uninorm/composition-table.gperf" + {"\000\037\000\000\003\001", 0x1f04}, +#line 659 "./uninorm/composition-table.gperf" + {"\000\037\000\000\003\000", 0x1f02}, +#line 663 "./uninorm/composition-table.gperf" + {"\000\037\000\000\003B", 0x1f06}, +#line 442 "./uninorm/composition-table.gperf" + {"\000\000F\000\003\007", 0x1e1e}, +#line 860 "./uninorm/composition-table.gperf" + {"\000\003\316\000\003E", 0x1ff4}, +#line 766 "./uninorm/composition-table.gperf" + {"\000\037\002\000\003E", 0x1f82}, +#line 765 "./uninorm/composition-table.gperf" + {"\000\037\001\000\003E", 0x1f81}, +#line 489 "./uninorm/composition-table.gperf" + {"\000\000\365\000\003\001", 0x1e4d}, +#line 767 "./uninorm/composition-table.gperf" + {"\000\037\003\000\003E", 0x1f83}, +#line 772 "./uninorm/composition-table.gperf" + {"\000\037\010\000\003E", 0x1f88}, +#line 245 "./uninorm/composition-table.gperf" + {"\000\000\346\000\003\001", 0x01fd}, +#line 515 "./uninorm/composition-table.gperf" + {"\000\001a\000\003\007", 0x1e67}, +#line 764 "./uninorm/composition-table.gperf" + {"\000\037\000\000\003E", 0x1f80}, +#line 67 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\001", 0x00e1}, +#line 66 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\000", 0x00e0}, +#line 818 "./uninorm/composition-table.gperf" + {"\000\037\266\000\003E", 0x1fb7}, +#line 68 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\002", 0x00e2}, +#line 279 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\007", 0x0227}, +#line 787 "./uninorm/composition-table.gperf" + {"\000\037'\000\003E", 0x1f97}, +#line 746 "./uninorm/composition-table.gperf" + {"\000\037a\000\003\001", 0x1f65}, +#line 744 "./uninorm/composition-table.gperf" + {"\000\037a\000\003\000", 0x1f63}, +#line 748 "./uninorm/composition-table.gperf" + {"\000\037a\000\003B", 0x1f67}, +#line 862 "./uninorm/composition-table.gperf" + {"\000\037\366\000\003E", 0x1ff7}, +#line 533 "./uninorm/composition-table.gperf" + {"\000\001i\000\003\001", 0x1e79}, +#line 215 "./uninorm/composition-table.gperf" + {"\000\000\334\000\003\001", 0x01d7}, +#line 219 "./uninorm/composition-table.gperf" + {"\000\000\334\000\003\000", 0x01db}, +#line 670 "./uninorm/composition-table.gperf" + {"\000\037\011\000\003\001", 0x1f0d}, +#line 668 "./uninorm/composition-table.gperf" + {"\000\037\011\000\003\000", 0x1f0b}, +#line 672 "./uninorm/composition-table.gperf" + {"\000\037\011\000\003B", 0x1f0f}, +#line 78 "./uninorm/composition-table.gperf" + {"\000\000i\000\003\001", 0x00ed}, +#line 77 "./uninorm/composition-table.gperf" + {"\000\000i\000\003\000", 0x00ec}, +#line 797 "./uninorm/composition-table.gperf" + {"\000\037a\000\003E", 0x1fa1}, +#line 79 "./uninorm/composition-table.gperf" + {"\000\000i\000\003\002", 0x00ee}, +#line 793 "./uninorm/composition-table.gperf" + {"\000\037-\000\003E", 0x1f9d}, +#line 138 "./uninorm/composition-table.gperf" + {"\000\000J\000\003\002", 0x0134}, +#line 754 "./uninorm/composition-table.gperf" + {"\000\037i\000\003\001", 0x1f6d}, +#line 752 "./uninorm/composition-table.gperf" + {"\000\037i\000\003\000", 0x1f6b}, +#line 756 "./uninorm/composition-table.gperf" + {"\000\037i\000\003B", 0x1f6f}, +#line 773 "./uninorm/composition-table.gperf" + {"\000\037\011\000\003E", 0x1f89}, +#line 587 "./uninorm/composition-table.gperf" + {"\000\001\002\000\003\003", 0x1eb4}, +#line 491 "./uninorm/composition-table.gperf" + {"\000\000\365\000\003\010", 0x1e4f}, +#line 624 "./uninorm/composition-table.gperf" + {"\000\036\315\000\003\002", 0x1ed9}, +#line 588 "./uninorm/composition-table.gperf" + {"\000\001\003\000\003\003", 0x1eb5}, +#line 714 "./uninorm/composition-table.gperf" + {"\000\0379\000\003\001", 0x1f3d}, +#line 712 "./uninorm/composition-table.gperf" + {"\000\0379\000\003\000", 0x1f3b}, +#line 716 "./uninorm/composition-table.gperf" + {"\000\0379\000\003B", 0x1f3f}, +#line 70 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\010", 0x00e4}, +#line 805 "./uninorm/composition-table.gperf" + {"\000\037i\000\003E", 0x1fa9}, +#line 52 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\001", 0x00cd}, +#line 51 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\000", 0x00cc}, +#line 623 "./uninorm/composition-table.gperf" + {"\000\036\314\000\003\002", 0x1ed8}, +#line 53 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\002", 0x00ce}, +#line 137 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\007", 0x0130}, +#line 884 "./uninorm/composition-table.gperf" + {"\000\000<\000\0038", 0x226e}, +#line 728 "./uninorm/composition-table.gperf" + {"\000\037I\000\003\001", 0x1f4d}, +#line 726 "./uninorm/composition-table.gperf" + {"\000\037I\000\003\000", 0x1f4b}, +#line 721 "./uninorm/composition-table.gperf" + {"\000\037@\000\003\001", 0x1f44}, +#line 719 "./uninorm/composition-table.gperf" + {"\000\037@\000\003\000", 0x1f42}, +#line 698 "./uninorm/composition-table.gperf" + {"\000\037)\000\003\001", 0x1f2d}, +#line 696 "./uninorm/composition-table.gperf" + {"\000\037)\000\003\000", 0x1f2b}, +#line 700 "./uninorm/composition-table.gperf" + {"\000\037)\000\003B", 0x1f2f}, +#line 858 "./uninorm/composition-table.gperf" + {"\000\037|\000\003E", 0x1ff2}, +#line 80 "./uninorm/composition-table.gperf" + {"\000\000i\000\003\010", 0x00ef}, +#line 768 "./uninorm/composition-table.gperf" + {"\000\037\004\000\003E", 0x1f84}, +#line 216 "./uninorm/composition-table.gperf" + {"\000\000\374\000\003\001", 0x01d8}, +#line 220 "./uninorm/composition-table.gperf" + {"\000\000\374\000\003\000", 0x01dc}, +#line 826 "./uninorm/composition-table.gperf" + {"\000\003\256\000\003E", 0x1fc4}, +#line 771 "./uninorm/composition-table.gperf" + {"\000\037\007\000\003E", 0x1f87}, +#line 816 "./uninorm/composition-table.gperf" + {"\000\003\254\000\003E", 0x1fb4}, +#line 328 "./uninorm/composition-table.gperf" + {"\000\004:\000\003\001", 0x045c}, +#line 789 "./uninorm/composition-table.gperf" + {"\000\037)\000\003E", 0x1f99}, +#line 69 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\003", 0x00e3}, +#line 881 "./uninorm/composition-table.gperf" + {"\000\000=\000\0038", 0x2260}, +#line 360 "./uninorm/composition-table.gperf" + {"\000\004C\000\003\010", 0x04f1}, +#line 342 "./uninorm/composition-table.gperf" + {"\000\004\331\000\003\010", 0x04db}, +#line 96 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\006", 0x0103}, +#line 41 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\001", 0x00c1}, +#line 40 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\000", 0x00c0}, +#line 98 "./uninorm/composition-table.gperf" + {"\000\000a\000\003(", 0x0105}, +#line 42 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\002", 0x00c2}, +#line 278 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\007", 0x0226}, +#line 54 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\010", 0x00cf}, +#line 722 "./uninorm/composition-table.gperf" + {"\000\037A\000\003\001", 0x1f45}, +#line 720 "./uninorm/composition-table.gperf" + {"\000\037A\000\003\000", 0x1f43}, +#line 363 "./uninorm/composition-table.gperf" + {"\000\004'\000\003\010", 0x04f4}, +#line 74 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\001", 0x00e9}, +#line 73 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\000", 0x00e8}, +#line 130 "./uninorm/composition-table.gperf" + {"\000\000i\000\003\003", 0x0129}, +#line 75 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\002", 0x00ea}, +#line 114 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\007", 0x0117}, +#line 326 "./uninorm/composition-table.gperf" + {"\000\0043\000\003\001", 0x0453}, +#line 134 "./uninorm/composition-table.gperf" + {"\000\000i\000\003\006", 0x012d}, +#line 537 "./uninorm/composition-table.gperf" + {"\000\000v\000\003\003", 0x1e7d}, +#line 605 "./uninorm/composition-table.gperf" + {"\000\036\270\000\003\002", 0x1ec6}, +#line 136 "./uninorm/composition-table.gperf" + {"\000\000i\000\003(", 0x012f}, +#line 354 "./uninorm/composition-table.gperf" + {"\000\004\351\000\003\010", 0x04eb}, +#line 677 "./uninorm/composition-table.gperf" + {"\000\037\020\000\003\001", 0x1f14}, +#line 675 "./uninorm/composition-table.gperf" + {"\000\037\020\000\003\000", 0x1f12}, +#line 585 "./uninorm/composition-table.gperf" + {"\000\001\002\000\003\011", 0x1eb2}, +#line 355 "./uninorm/composition-table.gperf" + {"\000\004-\000\003\010", 0x04ec}, +#line 377 "./uninorm/composition-table.gperf" + {"\000\0113\000\011<", 0x0934}, +#line 586 "./uninorm/composition-table.gperf" + {"\000\001\003\000\003\011", 0x1eb3}, +#line 330 "./uninorm/composition-table.gperf" + {"\000\004C\000\003\006", 0x045e}, +#line 801 "./uninorm/composition-table.gperf" + {"\000\037e\000\003E", 0x1fa5}, +#line 353 "./uninorm/composition-table.gperf" + {"\000\004\350\000\003\010", 0x04ea}, +#line 346 "./uninorm/composition-table.gperf" + {"\000\0047\000\003\010", 0x04df}, +#line 129 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\003", 0x0128}, +#line 441 "./uninorm/composition-table.gperf" + {"\000\002)\000\003\006", 0x1e1d}, +#line 792 "./uninorm/composition-table.gperf" + {"\000\037,\000\003E", 0x1f9c}, +#line 44 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\010", 0x00c4}, +#line 133 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\006", 0x012c}, +#line 83 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\001", 0x00f3}, +#line 82 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\000", 0x00f2}, +#line 135 "./uninorm/composition-table.gperf" + {"\000\000I\000\003(", 0x012e}, +#line 84 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\002", 0x00f4}, +#line 287 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\007", 0x022f}, +#line 249 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\017", 0x0201}, +#line 234 "./uninorm/composition-table.gperf" + {"\000\001\353\000\003\004", 0x01ed}, +#line 76 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\010", 0x00eb}, +#line 351 "./uninorm/composition-table.gperf" + {"\000\004\036\000\003\010", 0x04e6}, +#line 88 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\001", 0x00fa}, +#line 87 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\000", 0x00f9}, +#line 774 "./uninorm/composition-table.gperf" + {"\000\037\012\000\003E", 0x1f8a}, +#line 89 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\002", 0x00fb}, +#line 105 "./uninorm/composition-table.gperf" + {"\000\000C\000\003\014", 0x010c}, +#line 224 "./uninorm/composition-table.gperf" + {"\000\002'\000\003\004", 0x01e1}, +#line 705 "./uninorm/composition-table.gperf" + {"\000\0370\000\003\001", 0x1f34}, +#line 703 "./uninorm/composition-table.gperf" + {"\000\0370\000\003\000", 0x1f32}, +#line 707 "./uninorm/composition-table.gperf" + {"\000\0370\000\003B", 0x1f36}, +#line 811 "./uninorm/composition-table.gperf" + {"\000\037o\000\003E", 0x1faf}, +#line 570 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\011", 0x1ea3}, +#line 282 "./uninorm/composition-table.gperf" + {"\000\000\326\000\003\004", 0x022a}, +#line 257 "./uninorm/composition-table.gperf" + {"\000\000i\000\003\017", 0x0209}, +#line 236 "./uninorm/composition-table.gperf" + {"\000\002\222\000\003\014", 0x01ef}, +#line 43 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\003", 0x00c3}, +#line 791 "./uninorm/composition-table.gperf" + {"\000\037+\000\003E", 0x1f9b}, +#line 283 "./uninorm/composition-table.gperf" + {"\000\000\366\000\003\004", 0x022b}, +#line 769 "./uninorm/composition-table.gperf" + {"\000\037\005\000\003E", 0x1f85}, +#line 95 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\006", 0x0102}, +#line 285 "./uninorm/composition-table.gperf" + {"\000\000\365\000\003\004", 0x022d}, +#line 777 "./uninorm/composition-table.gperf" + {"\000\037\015\000\003E", 0x1f8d}, +#line 97 "./uninorm/composition-table.gperf" + {"\000\000A\000\003(", 0x0104}, +#line 226 "./uninorm/composition-table.gperf" + {"\000\000\346\000\003\004", 0x01e3}, +#line 596 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\003", 0x1ebd}, +#line 86 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\010", 0x00f6}, +#line 94 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\004", 0x0101}, +#line 608 "./uninorm/composition-table.gperf" + {"\000\000i\000\003\011", 0x1ec9}, +#line 112 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\006", 0x0115}, +#line 206 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\014", 0x01ce}, +#line 397 "./uninorm/composition-table.gperf" + {"\000\015\331\000\015\317", 0x0ddc}, +#line 116 "./uninorm/composition-table.gperf" + {"\000\000e\000\003(", 0x0119}, +#line 256 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\017", 0x0208}, +#line 222 "./uninorm/composition-table.gperf" + {"\000\000\344\000\003\004", 0x01df}, +#line 90 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\010", 0x00fc}, +#line 48 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\001", 0x00c9}, +#line 47 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\000", 0x00c8}, +#line 213 "./uninorm/composition-table.gperf" + {"\000\000\334\000\003\004", 0x01d5}, +#line 49 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\002", 0x00ca}, +#line 113 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\007", 0x0116}, +#line 217 "./uninorm/composition-table.gperf" + {"\000\000\334\000\003\014", 0x01d9}, +#line 221 "./uninorm/composition-table.gperf" + {"\000\000\304\000\003\004", 0x01de}, +#line 132 "./uninorm/composition-table.gperf" + {"\000\000i\000\003\004", 0x012b}, +#line 399 "./uninorm/composition-table.gperf" + {"\000\015\331\000\015\337", 0x0dde}, +#line 315 "./uninorm/composition-table.gperf" + {"\000\004\025\000\003\000", 0x0400}, +#line 208 "./uninorm/composition-table.gperf" + {"\000\000i\000\003\014", 0x01d0}, +#line 607 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\011", 0x1ec8}, +#line 790 "./uninorm/composition-table.gperf" + {"\000\037*\000\003E", 0x1f9a}, +#line 57 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\001", 0x00d3}, +#line 56 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\000", 0x00d2}, +#line 85 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\003", 0x00f5}, +#line 58 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\002", 0x00d4}, +#line 286 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\007", 0x022e}, +#line 358 "./uninorm/composition-table.gperf" + {"\000\004C\000\003\004", 0x04ef}, +#line 157 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\006", 0x014f}, +#line 337 "./uninorm/composition-table.gperf" + {"\000\004\020\000\003\010", 0x04d2}, +#line 963 "./uninorm/composition-table.gperf" + {"\0000\357\0000\231", 0x30f7}, +#line 232 "./uninorm/composition-table.gperf" + {"\000\000o\000\003(", 0x01eb}, +#line 933 "./uninorm/composition-table.gperf" + {"\0000{\0000\231", 0x307c}, +#line 179 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\003", 0x0169}, +#line 248 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\017", 0x0200}, +#line 131 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\004", 0x012a}, +#line 376 "./uninorm/composition-table.gperf" + {"\000\0110\000\011<", 0x0931}, +#line 183 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\006", 0x016d}, +#line 207 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\014", 0x01cf}, +#line 935 "./uninorm/composition-table.gperf" + {"\0000F\0000\231", 0x3094}, +#line 189 "./uninorm/composition-table.gperf" + {"\000\000u\000\003(", 0x0173}, +#line 550 "./uninorm/composition-table.gperf" + {"\000\000X\000\003\007", 0x1e8a}, +#line 50 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\010", 0x00cb}, +#line 253 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\017", 0x0205}, +#line 62 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\001", 0x00da}, +#line 61 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\000", 0x00d9}, +#line 934 "./uninorm/composition-table.gperf" + {"\0000{\0000\232", 0x307d}, +#line 63 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\002", 0x00db}, +#line 569 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\011", 0x1ea2}, +#line 469 "./uninorm/composition-table.gperf" + {"\000\0367\000\003\004", 0x1e39}, +#line 316 "./uninorm/composition-table.gperf" + {"\000\004\025\000\003\010", 0x0401}, +#line 214 "./uninorm/composition-table.gperf" + {"\000\000\374\000\003\004", 0x01d6}, +#line 784 "./uninorm/composition-table.gperf" + {"\000\037$\000\003E", 0x1f94}, +#line 921 "./uninorm/composition-table.gperf" + {"\0000a\0000\231", 0x3062}, +#line 218 "./uninorm/composition-table.gperf" + {"\000\000\374\000\003\014", 0x01da}, +#line 60 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\010", 0x00d6}, +#line 365 "./uninorm/composition-table.gperf" + {"\000\004+\000\003\010", 0x04f8}, +#line 594 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\011", 0x1ebb}, +#line 335 "./uninorm/composition-table.gperf" + {"\000\004\020\000\003\006", 0x04d0}, +#line 338 "./uninorm/composition-table.gperf" + {"\000\0040\000\003\010", 0x04d3}, +#line 568 "./uninorm/composition-table.gperf" + {"\000\000a\000\003#", 0x1ea1}, +#line 91 "./uninorm/composition-table.gperf" + {"\000\000y\000\003\001", 0x00fd}, +#line 650 "./uninorm/composition-table.gperf" + {"\000\000y\000\003\000", 0x1ef3}, +#line 93 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\004", 0x0100}, +#line 193 "./uninorm/composition-table.gperf" + {"\000\000y\000\003\002", 0x0177}, +#line 555 "./uninorm/composition-table.gperf" + {"\000\000y\000\003\007", 0x1e8f}, +#line 205 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\014", 0x01cd}, +#line 595 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\003", 0x1ebc}, +#line 949 "./uninorm/composition-table.gperf" + {"\0000\304\0000\231", 0x30c5}, +#line 261 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\017", 0x020d}, +#line 552 "./uninorm/composition-table.gperf" + {"\000\000X\000\003\010", 0x1e8c}, +#line 111 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\006", 0x0114}, +#line 110 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\004", 0x0113}, +#line 967 "./uninorm/composition-table.gperf" + {"\0000\375\0000\231", 0x30fe}, +#line 115 "./uninorm/composition-table.gperf" + {"\000\000E\000\003(", 0x0118}, +#line 118 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\014", 0x011b}, +#line 610 "./uninorm/composition-table.gperf" + {"\000\000i\000\003#", 0x1ecb}, +#line 64 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\010", 0x00dc}, +#line 269 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\017", 0x0215}, +#line 339 "./uninorm/composition-table.gperf" + {"\000\004\025\000\003\006", 0x04d6}, +#line 59 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\003", 0x00d5}, +#line 539 "./uninorm/composition-table.gperf" + {"\000\000v\000\003#", 0x1e7f}, +#line 519 "./uninorm/composition-table.gperf" + {"\000\000t\000\003\007", 0x1e6b}, +#line 614 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\011", 0x1ecf}, +#line 156 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\006", 0x014e}, +#line 434 "./uninorm/composition-table.gperf" + {"\000\001\022\000\003\001", 0x1e16}, +#line 432 "./uninorm/composition-table.gperf" + {"\000\001\022\000\003\000", 0x1e14}, +#line 231 "./uninorm/composition-table.gperf" + {"\000\000O\000\003(", 0x01ea}, +#line 336 "./uninorm/composition-table.gperf" + {"\000\0040\000\003\006", 0x04d1}, +#line 684 "./uninorm/composition-table.gperf" + {"\000\037\031\000\003\001", 0x1f1d}, +#line 682 "./uninorm/composition-table.gperf" + {"\000\037\031\000\003\000", 0x1f1b}, +#line 275 "./uninorm/composition-table.gperf" + {"\000\000t\000\003&", 0x021b}, +#line 638 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\011", 0x1ee7}, +#line 161 "./uninorm/composition-table.gperf" + {"\000\000r\000\003\001", 0x0155}, +#line 92 "./uninorm/composition-table.gperf" + {"\000\000y\000\003\010", 0x00ff}, +#line 609 "./uninorm/composition-table.gperf" + {"\000\000I\000\003#", 0x1eca}, +#line 824 "./uninorm/composition-table.gperf" + {"\000\037t\000\003E", 0x1fc2}, +#line 501 "./uninorm/composition-table.gperf" + {"\000\000r\000\003\007", 0x1e59}, +#line 155 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\004", 0x014d}, +#line 966 "./uninorm/composition-table.gperf" + {"\0000\362\0000\231", 0x30fa}, +#line 965 "./uninorm/composition-table.gperf" + {"\0000\361\0000\231", 0x30f9}, +#line 210 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\014", 0x01d2}, +#line 178 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\003", 0x0168}, +#line 420 "./uninorm/composition-table.gperf" + {"\000\000\307\000\003\001", 0x1e08}, +#line 149 "./uninorm/composition-table.gperf" + {"\000\000n\000\003\001", 0x0144}, +#line 241 "./uninorm/composition-table.gperf" + {"\000\000n\000\003\000", 0x01f9}, +#line 182 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\006", 0x016c}, +#line 181 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\004", 0x016b}, +#line 481 "./uninorm/composition-table.gperf" + {"\000\000n\000\003\007", 0x1e45}, +#line 188 "./uninorm/composition-table.gperf" + {"\000\000U\000\003(", 0x0172}, +#line 212 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\014", 0x01d4}, +#line 563 "./uninorm/composition-table.gperf" + {"\000\000t\000\003\010", 0x1e97}, +#line 252 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\017", 0x0204}, +#line 678 "./uninorm/composition-table.gperf" + {"\000\037\021\000\003\001", 0x1f15}, +#line 676 "./uninorm/composition-table.gperf" + {"\000\037\021\000\003\000", 0x1f13}, +#line 794 "./uninorm/composition-table.gperf" + {"\000\037.\000\003E", 0x1f9e}, +#line 423 "./uninorm/composition-table.gperf" + {"\000\000d\000\003\007", 0x1e0b}, +#line 251 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\021", 0x0203}, +#line 414 "./uninorm/composition-table.gperf" + {"\000\000B\000\003\007", 0x1e02}, +#line 656 "./uninorm/composition-table.gperf" + {"\000\000y\000\003\003", 0x1ef9}, +#line 964 "./uninorm/composition-table.gperf" + {"\0000\360\0000\231", 0x30f8}, +#line 393 "./uninorm/composition-table.gperf" + {"\000\015F\000\015>", 0x0d4a}, +#line 810 "./uninorm/composition-table.gperf" + {"\000\037n\000\003E", 0x1fae}, +#line 567 "./uninorm/composition-table.gperf" + {"\000\000A\000\003#", 0x1ea0}, +#line 969 "./uninorm/composition-table.gperf" + {"\001\020\233\001\020\272", 0x1109c}, +#line 260 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\017", 0x020c}, +#line 593 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\011", 0x1eba}, +#line 344 "./uninorm/composition-table.gperf" + {"\000\0046\000\003\010", 0x04dd}, +#line 775 "./uninorm/composition-table.gperf" + {"\000\037\013\000\003E", 0x1f8b}, +#line 332 "./uninorm/composition-table.gperf" + {"\000\004u\000\003\017", 0x0477}, +#line 800 "./uninorm/composition-table.gperf" + {"\000\037d\000\003E", 0x1fa4}, +#line 951 "./uninorm/composition-table.gperf" + {"\0000\310\0000\231", 0x30c9}, +#line 592 "./uninorm/composition-table.gperf" + {"\000\000e\000\003#", 0x1eb9}, +#line 259 "./uninorm/composition-table.gperf" + {"\000\000i\000\003\021", 0x020b}, +#line 127 "./uninorm/composition-table.gperf" + {"\000\000H\000\003\002", 0x0124}, +#line 446 "./uninorm/composition-table.gperf" + {"\000\000H\000\003\007", 0x1e22}, +#line 71 "./uninorm/composition-table.gperf" + {"\000\000a\000\003\012", 0x00e5}, +#line 727 "./uninorm/composition-table.gperf" + {"\000\037H\000\003\001", 0x1f4c}, +#line 725 "./uninorm/composition-table.gperf" + {"\000\037H\000\003\000", 0x1f4a}, +#line 613 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\011", 0x1ece}, +#line 945 "./uninorm/composition-table.gperf" + {"\0000\273\0000\231", 0x30bc}, +#line 109 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\004", 0x0112}, +#line 65 "./uninorm/composition-table.gperf" + {"\000\000Y\000\003\001", 0x00dd}, +#line 649 "./uninorm/composition-table.gperf" + {"\000\000Y\000\003\000", 0x1ef2}, +#line 117 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\014", 0x011a}, +#line 192 "./uninorm/composition-table.gperf" + {"\000\000Y\000\003\002", 0x0176}, +#line 554 "./uninorm/composition-table.gperf" + {"\000\000Y\000\003\007", 0x1e8e}, +#line 268 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\017", 0x0214}, +#line 739 "./uninorm/composition-table.gperf" + {"\000\037Y\000\003\001", 0x1f5d}, +#line 738 "./uninorm/composition-table.gperf" + {"\000\037Y\000\003\000", 0x1f5b}, +#line 740 "./uninorm/composition-table.gperf" + {"\000\037Y\000\003B", 0x1f5f}, +#line 925 "./uninorm/composition-table.gperf" + {"\0000o\0000\231", 0x3070}, +#line 258 "./uninorm/composition-table.gperf" + {"\000\000I\000\003\021", 0x020a}, +#line 946 "./uninorm/composition-table.gperf" + {"\0000\275\0000\231", 0x30be}, +#line 154 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\004", 0x014c}, +#line 488 "./uninorm/composition-table.gperf" + {"\000\000\325\000\003\001", 0x1e4c}, +#line 334 "./uninorm/composition-table.gperf" + {"\000\0046\000\003\006", 0x04c2}, +#line 209 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\014", 0x01d1}, +#line 612 "./uninorm/composition-table.gperf" + {"\000\000o\000\003#", 0x1ecd}, +#line 532 "./uninorm/composition-table.gperf" + {"\000\001h\000\003\001", 0x1e78}, +#line 929 "./uninorm/composition-table.gperf" + {"\0000u\0000\231", 0x3076}, +#line 637 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\011", 0x1ee6}, +#line 81 "./uninorm/composition-table.gperf" + {"\000\000n\000\003\003", 0x00f1}, +#line 938 "./uninorm/composition-table.gperf" + {"\0000\255\0000\231", 0x30ae}, +#line 450 "./uninorm/composition-table.gperf" + {"\000\000H\000\003\010", 0x1e26}, +#line 926 "./uninorm/composition-table.gperf" + {"\0000o\0000\232", 0x3071}, +#line 475 "./uninorm/composition-table.gperf" + {"\000\000m\000\003\001", 0x1e3f}, +#line 636 "./uninorm/composition-table.gperf" + {"\000\000u\000\003#", 0x1ee5}, +#line 128 "./uninorm/composition-table.gperf" + {"\000\000h\000\003\002", 0x0125}, +#line 447 "./uninorm/composition-table.gperf" + {"\000\000h\000\003\007", 0x1e23}, +#line 477 "./uninorm/composition-table.gperf" + {"\000\000m\000\003\007", 0x1e41}, +#line 753 "./uninorm/composition-table.gperf" + {"\000\037h\000\003\001", 0x1f6c}, +#line 751 "./uninorm/composition-table.gperf" + {"\000\037h\000\003\000", 0x1f6a}, +#line 755 "./uninorm/composition-table.gperf" + {"\000\037h\000\003B", 0x1f6e}, +#line 930 "./uninorm/composition-table.gperf" + {"\0000u\0000\232", 0x3077}, +#line 194 "./uninorm/composition-table.gperf" + {"\000\000Y\000\003\010", 0x0178}, +#line 180 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\004", 0x016a}, +#line 395 "./uninorm/composition-table.gperf" + {"\000\015F\000\015W", 0x0d4c}, +#line 654 "./uninorm/composition-table.gperf" + {"\000\000y\000\003\011", 0x1ef7}, +#line 211 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\014", 0x01d3}, +#line 250 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\021", 0x0202}, +#line 46 "./uninorm/composition-table.gperf" + {"\000\000C\000\003'", 0x00c7}, +#line 782 "./uninorm/composition-table.gperf" + {"\000\037\"\000\003E", 0x1f92}, +#line 804 "./uninorm/composition-table.gperf" + {"\000\037h\000\003E", 0x1fa8}, +#line 809 "./uninorm/composition-table.gperf" + {"\000\037m\000\003E", 0x1fad}, +#line 697 "./uninorm/composition-table.gperf" + {"\000\037(\000\003\001", 0x1f2c}, +#line 695 "./uninorm/composition-table.gperf" + {"\000\037(\000\003\000", 0x1f2a}, +#line 699 "./uninorm/composition-table.gperf" + {"\000\037(\000\003B", 0x1f2e}, +#line 490 "./uninorm/composition-table.gperf" + {"\000\000\325\000\003\010", 0x1e4e}, +#line 255 "./uninorm/composition-table.gperf" + {"\000\000e\000\003\021", 0x0207}, +#line 706 "./uninorm/composition-table.gperf" + {"\000\0371\000\003\001", 0x1f35}, +#line 704 "./uninorm/composition-table.gperf" + {"\000\0371\000\003\000", 0x1f33}, +#line 708 "./uninorm/composition-table.gperf" + {"\000\0371\000\003B", 0x1f37}, +#line 291 "./uninorm/composition-table.gperf" + {"\000\000y\000\003\004", 0x0233}, +#line 962 "./uninorm/composition-table.gperf" + {"\0000\246\0000\231", 0x30f4}, +#line 437 "./uninorm/composition-table.gperf" + {"\000\000e\000\003-", 0x1e19}, +#line 265 "./uninorm/composition-table.gperf" + {"\000\000r\000\003\017", 0x0211}, +#line 788 "./uninorm/composition-table.gperf" + {"\000\037(\000\003E", 0x1f98}, +#line 451 "./uninorm/composition-table.gperf" + {"\000\000h\000\003\010", 0x1e27}, +#line 45 "./uninorm/composition-table.gperf" + {"\000\000A\000\003\012", 0x00c5}, +#line 655 "./uninorm/composition-table.gperf" + {"\000\000Y\000\003\003", 0x1ef8}, +#line 591 "./uninorm/composition-table.gperf" + {"\000\000E\000\003#", 0x1eb8}, +#line 542 "./uninorm/composition-table.gperf" + {"\000\000W\000\003\001", 0x1e82}, +#line 540 "./uninorm/composition-table.gperf" + {"\000\000W\000\003\000", 0x1e80}, +#line 160 "./uninorm/composition-table.gperf" + {"\000\000R\000\003\001", 0x0154}, +#line 190 "./uninorm/composition-table.gperf" + {"\000\000W\000\003\002", 0x0174}, +#line 546 "./uninorm/composition-table.gperf" + {"\000\000W\000\003\007", 0x1e86}, +#line 912 "./uninorm/composition-table.gperf" + {"\0000O\0000\231", 0x3050}, +#line 500 "./uninorm/composition-table.gperf" + {"\000\000R\000\003\007", 0x1e58}, +#line 878 "./uninorm/composition-table.gperf" + {"\000\"C\000\0038", 0x2244}, +#line 872 "./uninorm/composition-table.gperf" + {"\000\"\003\000\0038", 0x2204}, +#line 873 "./uninorm/composition-table.gperf" + {"\000\"\010\000\0038", 0x2209}, +#line 893 "./uninorm/composition-table.gperf" + {"\000\"{\000\0038", 0x2281}, +#line 177 "./uninorm/composition-table.gperf" + {"\000\000t\000\003\014", 0x0165}, +#line 611 "./uninorm/composition-table.gperf" + {"\000\000O\000\003#", 0x1ecc}, +#line 263 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\021", 0x020f}, +#line 468 "./uninorm/composition-table.gperf" + {"\000\0366\000\003\004", 0x1e38}, +#line 238 "./uninorm/composition-table.gperf" + {"\000\000G\000\003\001", 0x01f4}, +#line 908 "./uninorm/composition-table.gperf" + {"\000\"\264\000\0038", 0x22ec}, +#line 906 "./uninorm/composition-table.gperf" + {"\000\"\262\000\0038", 0x22ea}, +#line 119 "./uninorm/composition-table.gperf" + {"\000\000G\000\003\002", 0x011c}, +#line 123 "./uninorm/composition-table.gperf" + {"\000\000G\000\003\007", 0x0120}, +#line 288 "./uninorm/composition-table.gperf" + {"\000\002.\000\003\004", 0x0230}, +#line 877 "./uninorm/composition-table.gperf" + {"\000\"<\000\0038", 0x2241}, +#line 271 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\021", 0x0217}, +#line 905 "./uninorm/composition-table.gperf" + {"\000\"\222\000\0038", 0x22e3}, +#line 457 "./uninorm/composition-table.gperf" + {"\000\000i\000\0030", 0x1e2d}, +#line 898 "./uninorm/composition-table.gperf" + {"\000\"\242\000\0038", 0x22ac}, +#line 165 "./uninorm/composition-table.gperf" + {"\000\000r\000\003\014", 0x0159}, +#line 915 "./uninorm/composition-table.gperf" + {"\0000U\0000\231", 0x3056}, +#line 531 "./uninorm/composition-table.gperf" + {"\000\000u\000\003-", 0x1e77}, +#line 936 "./uninorm/composition-table.gperf" + {"\0000\235\0000\231", 0x309e}, +#line 331 "./uninorm/composition-table.gperf" + {"\000\004t\000\003\017", 0x0476}, +#line 882 "./uninorm/composition-table.gperf" + {"\000\"a\000\0038", 0x2262}, +#line 440 "./uninorm/composition-table.gperf" + {"\000\002(\000\003\006", 0x1e1c}, +#line 544 "./uninorm/composition-table.gperf" + {"\000\000W\000\003\010", 0x1e84}, +#line 635 "./uninorm/composition-table.gperf" + {"\000\000U\000\003#", 0x1ee4}, +#line 148 "./uninorm/composition-table.gperf" + {"\000\000N\000\003\001", 0x0143}, +#line 240 "./uninorm/composition-table.gperf" + {"\000\000N\000\003\000", 0x01f8}, +#line 153 "./uninorm/composition-table.gperf" + {"\000\000n\000\003\014", 0x0148}, +#line 375 "./uninorm/composition-table.gperf" + {"\000\011(\000\011<", 0x0929}, +#line 480 "./uninorm/composition-table.gperf" + {"\000\000N\000\003\007", 0x1e44}, +#line 897 "./uninorm/composition-table.gperf" + {"\000\"\207\000\0038", 0x2289}, +#line 185 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\012", 0x016f}, +#line 896 "./uninorm/composition-table.gperf" + {"\000\"\206\000\0038", 0x2288}, +#line 456 "./uninorm/composition-table.gperf" + {"\000\000I\000\0030", 0x1e2c}, +#line 895 "./uninorm/composition-table.gperf" + {"\000\"\203\000\0038", 0x2285}, +#line 108 "./uninorm/composition-table.gperf" + {"\000\000d\000\003\014", 0x010f}, +#line 543 "./uninorm/composition-table.gperf" + {"\000\000w\000\003\001", 0x1e83}, +#line 541 "./uninorm/composition-table.gperf" + {"\000\000w\000\003\000", 0x1e81}, +#line 523 "./uninorm/composition-table.gperf" + {"\000\000t\000\0031", 0x1e6f}, +#line 191 "./uninorm/composition-table.gperf" + {"\000\000w\000\003\002", 0x0175}, +#line 547 "./uninorm/composition-table.gperf" + {"\000\000w\000\003\007", 0x1e87}, +#line 652 "./uninorm/composition-table.gperf" + {"\000\000y\000\003#", 0x1ef5}, +#line 890 "./uninorm/composition-table.gperf" + {"\000\"v\000\0038", 0x2278}, +#line 297 "./uninorm/composition-table.gperf" + {"\000\003\237\000\003\001", 0x038c}, +#line 863 "./uninorm/composition-table.gperf" + {"\000\003\237\000\003\000", 0x1ff8}, +#line 239 "./uninorm/composition-table.gperf" + {"\000\000g\000\003\001", 0x01f5}, +#line 254 "./uninorm/composition-table.gperf" + {"\000\000E\000\003\021", 0x0206}, +#line 653 "./uninorm/composition-table.gperf" + {"\000\000Y\000\003\011", 0x1ef6}, +#line 120 "./uninorm/composition-table.gperf" + {"\000\000g\000\003\002", 0x011d}, +#line 124 "./uninorm/composition-table.gperf" + {"\000\000g\000\003\007", 0x0121}, +#line 343 "./uninorm/composition-table.gperf" + {"\000\004\026\000\003\010", 0x04dc}, +#line 902 "./uninorm/composition-table.gperf" + {"\000\"|\000\0038", 0x22e0}, +#line 436 "./uninorm/composition-table.gperf" + {"\000\000E\000\003-", 0x1e18}, +#line 507 "./uninorm/composition-table.gperf" + {"\000\000r\000\0031", 0x1e5f}, +#line 276 "./uninorm/composition-table.gperf" + {"\000\000H\000\003\014", 0x021e}, +#line 494 "./uninorm/composition-table.gperf" + {"\000\001L\000\003\001", 0x1e52}, +#line 492 "./uninorm/composition-table.gperf" + {"\000\001L\000\003\000", 0x1e50}, +#line 443 "./uninorm/composition-table.gperf" + {"\000\000f\000\003\007", 0x1e1f}, +#line 521 "./uninorm/composition-table.gperf" + {"\000\000t\000\003#", 0x1e6d}, +#line 262 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\021", 0x020e}, +#line 894 "./uninorm/composition-table.gperf" + {"\000\"\202\000\0038", 0x2284}, +#line 142 "./uninorm/composition-table.gperf" + {"\000\000L\000\003\001", 0x0139}, +#line 290 "./uninorm/composition-table.gperf" + {"\000\000Y\000\003\004", 0x0232}, +#line 803 "./uninorm/composition-table.gperf" + {"\000\037g\000\003E", 0x1fa7}, +#line 485 "./uninorm/composition-table.gperf" + {"\000\000n\000\0031", 0x1e49}, +#line 281 "./uninorm/composition-table.gperf" + {"\000\000e\000\003'", 0x0229}, +#line 927 "./uninorm/composition-table.gperf" + {"\0000r\0000\231", 0x3073}, +#line 121 "./uninorm/composition-table.gperf" + {"\000\000G\000\003\006", 0x011e}, +#line 313 "./uninorm/composition-table.gperf" + {"\000\003\322\000\003\001", 0x03d3}, +#line 545 "./uninorm/composition-table.gperf" + {"\000\000w\000\003\010", 0x1e85}, +#line 439 "./uninorm/composition-table.gperf" + {"\000\000e\000\0030", 0x1e1b}, +#line 802 "./uninorm/composition-table.gperf" + {"\000\037f\000\003E", 0x1fa6}, +#line 427 "./uninorm/composition-table.gperf" + {"\000\000d\000\0031", 0x1e0f}, +#line 503 "./uninorm/composition-table.gperf" + {"\000\000r\000\003#", 0x1e5b}, +#line 418 "./uninorm/composition-table.gperf" + {"\000\000B\000\0031", 0x1e06}, +#line 284 "./uninorm/composition-table.gperf" + {"\000\000\325\000\003\004", 0x022c}, +#line 495 "./uninorm/composition-table.gperf" + {"\000\001M\000\003\001", 0x1e53}, +#line 493 "./uninorm/composition-table.gperf" + {"\000\001M\000\003\000", 0x1e51}, +#line 903 "./uninorm/composition-table.gperf" + {"\000\"}\000\0038", 0x22e1}, +#line 333 "./uninorm/composition-table.gperf" + {"\000\004\026\000\003\006", 0x04c1}, +#line 928 "./uninorm/composition-table.gperf" + {"\0000r\0000\232", 0x3074}, +#line 270 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\021", 0x0216}, +#line 474 "./uninorm/composition-table.gperf" + {"\000\000M\000\003\001", 0x1e3e}, +#line 55 "./uninorm/composition-table.gperf" + {"\000\000N\000\003\003", 0x00d1}, +#line 483 "./uninorm/composition-table.gperf" + {"\000\000n\000\003#", 0x1e47}, +#line 922 "./uninorm/composition-table.gperf" + {"\0000d\0000\231", 0x3065}, +#line 476 "./uninorm/composition-table.gperf" + {"\000\000M\000\003\007", 0x1e40}, +#line 530 "./uninorm/composition-table.gperf" + {"\000\000U\000\003-", 0x1e76}, +#line 277 "./uninorm/composition-table.gperf" + {"\000\000h\000\003\014", 0x021f}, +#line 364 "./uninorm/composition-table.gperf" + {"\000\004G\000\003\010", 0x04f5}, +#line 518 "./uninorm/composition-table.gperf" + {"\000\000T\000\003\007", 0x1e6a}, +#line 920 "./uninorm/composition-table.gperf" + {"\0000_\0000\231", 0x3060}, +#line 425 "./uninorm/composition-table.gperf" + {"\000\000d\000\003#", 0x1e0d}, +#line 887 "./uninorm/composition-table.gperf" + {"\000\"e\000\0038", 0x2271}, +#line 416 "./uninorm/composition-table.gperf" + {"\000\000B\000\003#", 0x1e04}, +#line 264 "./uninorm/composition-table.gperf" + {"\000\000R\000\003\017", 0x0210}, +#line 844 "./uninorm/composition-table.gperf" + {"\000\037\376\000\003\001", 0x1fde}, +#line 843 "./uninorm/composition-table.gperf" + {"\000\037\376\000\003\000", 0x1fdd}, +#line 845 "./uninorm/composition-table.gperf" + {"\000\037\376\000\003B", 0x1fdf}, +#line 274 "./uninorm/composition-table.gperf" + {"\000\000T\000\003&", 0x021a}, +#line 184 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\012", 0x016e}, +#line 314 "./uninorm/composition-table.gperf" + {"\000\003\322\000\003\010", 0x03d4}, +#line 310 "./uninorm/composition-table.gperf" + {"\000\003\277\000\003\001", 0x03cc}, +#line 761 "./uninorm/composition-table.gperf" + {"\000\003\277\000\003\000", 0x1f78}, +#line 723 "./uninorm/composition-table.gperf" + {"\000\003\237\000\003\023", 0x1f48}, +#line 529 "./uninorm/composition-table.gperf" + {"\000\000u\000\0030", 0x1e75}, +#line 919 "./uninorm/composition-table.gperf" + {"\0000]\0000\231", 0x305e}, +#line 122 "./uninorm/composition-table.gperf" + {"\000\000g\000\003\006", 0x011f}, +#line 306 "./uninorm/composition-table.gperf" + {"\000\003\271\000\003\001", 0x03af}, +#line 760 "./uninorm/composition-table.gperf" + {"\000\003\271\000\003\000", 0x1f76}, +#line 838 "./uninorm/composition-table.gperf" + {"\000\003\271\000\003B", 0x1fd6}, +#line 448 "./uninorm/composition-table.gperf" + {"\000\000H\000\003#", 0x1e24}, +#line 833 "./uninorm/composition-table.gperf" + {"\000\037\277\000\003\001", 0x1fce}, +#line 832 "./uninorm/composition-table.gperf" + {"\000\037\277\000\003\000", 0x1fcd}, +#line 834 "./uninorm/composition-table.gperf" + {"\000\037\277\000\003B", 0x1fcf}, +#line 917 "./uninorm/composition-table.gperf" + {"\0000Y\0000\231", 0x305a}, +#line 319 "./uninorm/composition-table.gperf" + {"\000\004\032\000\003\001", 0x040c}, +#line 565 "./uninorm/composition-table.gperf" + {"\000\000y\000\003\012", 0x1e99}, +#line 885 "./uninorm/composition-table.gperf" + {"\000\000>\000\0038", 0x226f}, +#line 435 "./uninorm/composition-table.gperf" + {"\000\001\023\000\003\001", 0x1e17}, +#line 433 "./uninorm/composition-table.gperf" + {"\000\001\023\000\003\000", 0x1e15}, +#line 525 "./uninorm/composition-table.gperf" + {"\000\000t\000\003-", 0x1e71}, +#line 651 "./uninorm/composition-table.gperf" + {"\000\000Y\000\003#", 0x1ef4}, +#line 345 "./uninorm/composition-table.gperf" + {"\000\004\027\000\003\010", 0x04de}, +#line 776 "./uninorm/composition-table.gperf" + {"\000\037\014\000\003E", 0x1f8c}, +#line 562 "./uninorm/composition-table.gperf" + {"\000\000h\000\0031", 0x1e96}, +#line 941 "./uninorm/composition-table.gperf" + {"\0000\263\0000\231", 0x30b4}, +#line 164 "./uninorm/composition-table.gperf" + {"\000\000R\000\003\014", 0x0158}, +#line 956 "./uninorm/composition-table.gperf" + {"\0000\325\0000\231", 0x30d6}, +#line 779 "./uninorm/composition-table.gperf" + {"\000\037\017\000\003E", 0x1f8f}, +#line 267 "./uninorm/composition-table.gperf" + {"\000\000r\000\003\021", 0x0213}, +#line 305 "./uninorm/composition-table.gperf" + {"\000\003\267\000\003\001", 0x03ae}, +#line 759 "./uninorm/composition-table.gperf" + {"\000\003\267\000\003\000", 0x1f74}, +#line 827 "./uninorm/composition-table.gperf" + {"\000\003\267\000\003B", 0x1fc6}, +#line 280 "./uninorm/composition-table.gperf" + {"\000\000E\000\003'", 0x0228}, +#line 626 "./uninorm/composition-table.gperf" + {"\000\001\241\000\003\001", 0x1edb}, +#line 628 "./uninorm/composition-table.gperf" + {"\000\001\241\000\003\000", 0x1edd}, +#line 444 "./uninorm/composition-table.gperf" + {"\000\000G\000\003\004", 0x1e20}, +#line 924 "./uninorm/composition-table.gperf" + {"\0000h\0000\231", 0x3069}, +#line 438 "./uninorm/composition-table.gperf" + {"\000\000E\000\0030", 0x1e1a}, +#line 227 "./uninorm/composition-table.gperf" + {"\000\000G\000\003\014", 0x01e6}, +#line 308 "./uninorm/composition-table.gperf" + {"\000\003\271\000\003\010", 0x03ca}, +#line 957 "./uninorm/composition-table.gperf" + {"\0000\325\0000\232", 0x30d7}, +#line 825 "./uninorm/composition-table.gperf" + {"\000\003\267\000\003E", 0x1fc3}, +#line 960 "./uninorm/composition-table.gperf" + {"\0000\333\0000\231", 0x30dc}, +#line 449 "./uninorm/composition-table.gperf" + {"\000\000h\000\003#", 0x1e25}, +#line 479 "./uninorm/composition-table.gperf" + {"\000\000m\000\003#", 0x1e43}, +#line 487 "./uninorm/composition-table.gperf" + {"\000\000n\000\003-", 0x1e4b}, +#line 937 "./uninorm/composition-table.gperf" + {"\0000\253\0000\231", 0x30ac}, +#line 303 "./uninorm/composition-table.gperf" + {"\000\003\261\000\003\001", 0x03ac}, +#line 757 "./uninorm/composition-table.gperf" + {"\000\003\261\000\003\000", 0x1f70}, +#line 817 "./uninorm/composition-table.gperf" + {"\000\003\261\000\003B", 0x1fb6}, +#line 352 "./uninorm/composition-table.gperf" + {"\000\004>\000\003\010", 0x04e7}, +#line 293 "./uninorm/composition-table.gperf" + {"\000\003\221\000\003\001", 0x0386}, +#line 821 "./uninorm/composition-table.gperf" + {"\000\003\221\000\003\000", 0x1fba}, +#line 431 "./uninorm/composition-table.gperf" + {"\000\000d\000\003-", 0x1e13}, +#line 606 "./uninorm/composition-table.gperf" + {"\000\036\271\000\003\002", 0x1ec7}, +#line 778 "./uninorm/composition-table.gperf" + {"\000\037\016\000\003E", 0x1f8e}, +#line 961 "./uninorm/composition-table.gperf" + {"\0000\333\0000\232", 0x30dd}, +#line 362 "./uninorm/composition-table.gperf" + {"\000\004C\000\003\013", 0x04f3}, +#line 152 "./uninorm/composition-table.gperf" + {"\000\000N\000\003\014", 0x0147}, +#line 815 "./uninorm/composition-table.gperf" + {"\000\003\261\000\003E", 0x1fb3}, +#line 879 "./uninorm/composition-table.gperf" + {"\000\"E\000\0038", 0x2247}, +#line 717 "./uninorm/composition-table.gperf" + {"\000\003\277\000\003\023", 0x1f40}, +#line 506 "./uninorm/composition-table.gperf" + {"\000\000R\000\0031", 0x1e5e}, +#line 822 "./uninorm/composition-table.gperf" + {"\000\003\221\000\003E", 0x1fbc}, +#line 356 "./uninorm/composition-table.gperf" + {"\000\004M\000\003\010", 0x04ed}, +#line 724 "./uninorm/composition-table.gperf" + {"\000\003\237\000\003\024", 0x1f49}, +#line 167 "./uninorm/composition-table.gperf" + {"\000\000s\000\003\001", 0x015b}, +#line 701 "./uninorm/composition-table.gperf" + {"\000\003\271\000\003\023", 0x1f30}, +#line 835 "./uninorm/composition-table.gperf" + {"\000\003\271\000\003\006", 0x1fd0}, +#line 169 "./uninorm/composition-table.gperf" + {"\000\000s\000\003\002", 0x015d}, +#line 509 "./uninorm/composition-table.gperf" + {"\000\000s\000\003\007", 0x1e61}, +#line 977 "./uninorm/composition-table.gperf" + {"\001\024\271\001\024\275", 0x114be}, +#line 528 "./uninorm/composition-table.gperf" + {"\000\000U\000\0030", 0x1e74}, +#line 916 "./uninorm/composition-table.gperf" + {"\0000W\0000\231", 0x3058}, +#line 317 "./uninorm/composition-table.gperf" + {"\000\004\023\000\003\001", 0x0403}, +#line 445 "./uninorm/composition-table.gperf" + {"\000\000g\000\003\004", 0x1e21}, +#line 460 "./uninorm/composition-table.gperf" + {"\000\000K\000\003\001", 0x1e30}, +#line 770 "./uninorm/composition-table.gperf" + {"\000\037\006\000\003E", 0x1f86}, +#line 228 "./uninorm/composition-table.gperf" + {"\000\000g\000\003\014", 0x01e7}, +#line 273 "./uninorm/composition-table.gperf" + {"\000\000s\000\003&", 0x0219}, +#line 548 "./uninorm/composition-table.gperf" + {"\000\000W\000\003#", 0x1e88}, +#line 244 "./uninorm/composition-table.gperf" + {"\000\000\306\000\003\001", 0x01fc}, +#line 502 "./uninorm/composition-table.gperf" + {"\000\000R\000\003#", 0x1e5a}, +#line 580 "./uninorm/composition-table.gperf" + {"\000\036\241\000\003\002", 0x1ead}, +#line 311 "./uninorm/composition-table.gperf" + {"\000\003\305\000\003\001", 0x03cd}, +#line 762 "./uninorm/composition-table.gperf" + {"\000\003\305\000\003\000", 0x1f7a}, +#line 851 "./uninorm/composition-table.gperf" + {"\000\003\305\000\003B", 0x1fe6}, +#line 143 "./uninorm/composition-table.gperf" + {"\000\000l\000\003\001", 0x013a}, +#line 242 "./uninorm/composition-table.gperf" + {"\000\000\305\000\003\001", 0x01fa}, +#line 166 "./uninorm/composition-table.gperf" + {"\000\000S\000\003\001", 0x015a}, +#line 685 "./uninorm/composition-table.gperf" + {"\000\003\267\000\003\023", 0x1f20}, +#line 632 "./uninorm/composition-table.gperf" + {"\000\001\241\000\003\003", 0x1ee1}, +#line 168 "./uninorm/composition-table.gperf" + {"\000\000S\000\003\002", 0x015c}, +#line 508 "./uninorm/composition-table.gperf" + {"\000\000S\000\003\007", 0x1e60}, +#line 146 "./uninorm/composition-table.gperf" + {"\000\000L\000\003\014", 0x013d}, +#line 484 "./uninorm/composition-table.gperf" + {"\000\000N\000\0031", 0x1e48}, +#line 296 "./uninorm/composition-table.gperf" + {"\000\003\231\000\003\001", 0x038a}, +#line 842 "./uninorm/composition-table.gperf" + {"\000\003\231\000\003\000", 0x1fda}, +#line 512 "./uninorm/composition-table.gperf" + {"\000\001Z\000\003\007", 0x1e64}, +#line 828 "./uninorm/composition-table.gperf" + {"\000\037\306\000\003E", 0x1fc7}, +#line 195 "./uninorm/composition-table.gperf" + {"\000\000Z\000\003\001", 0x0179}, +#line 175 "./uninorm/composition-table.gperf" + {"\000\000t\000\003'", 0x0163}, +#line 272 "./uninorm/composition-table.gperf" + {"\000\000S\000\003&", 0x0218}, +#line 556 "./uninorm/composition-table.gperf" + {"\000\000Z\000\003\002", 0x1e90}, +#line 197 "./uninorm/composition-table.gperf" + {"\000\000Z\000\003\007", 0x017b}, +#line 808 "./uninorm/composition-table.gperf" + {"\000\037l\000\003E", 0x1fac}, + {""}, +#line 100 "./uninorm/composition-table.gperf" + {"\000\000c\000\003\001", 0x0107}, +#line 657 "./uninorm/composition-table.gperf" + {"\000\003\261\000\003\023", 0x1f00}, +#line 812 "./uninorm/composition-table.gperf" + {"\000\003\261\000\003\006", 0x1fb0}, +#line 102 "./uninorm/composition-table.gperf" + {"\000\000c\000\003\002", 0x0109}, +#line 104 "./uninorm/composition-table.gperf" + {"\000\000c\000\003\007", 0x010b}, +#line 665 "./uninorm/composition-table.gperf" + {"\000\003\221\000\003\023", 0x1f08}, +#line 819 "./uninorm/composition-table.gperf" + {"\000\003\221\000\003\006", 0x1fb8}, + {""}, +#line 482 "./uninorm/composition-table.gperf" + {"\000\000N\000\003#", 0x1e46}, +#line 163 "./uninorm/composition-table.gperf" + {"\000\000r\000\003'", 0x0157}, +#line 309 "./uninorm/composition-table.gperf" + {"\000\003\305\000\003\010", 0x03cb}, +#line 196 "./uninorm/composition-table.gperf" + {"\000\000z\000\003\001", 0x017a}, +#line 176 "./uninorm/composition-table.gperf" + {"\000\000T\000\003\014", 0x0164}, +#line 422 "./uninorm/composition-table.gperf" + {"\000\000D\000\003\007", 0x1e0a}, +#line 557 "./uninorm/composition-table.gperf" + {"\000\000z\000\003\002", 0x1e91}, +#line 198 "./uninorm/composition-table.gperf" + {"\000\000z\000\003\007", 0x017c}, + {""}, +#line 718 "./uninorm/composition-table.gperf" + {"\000\003\277\000\003\024", 0x1f41}, +#line 799 "./uninorm/composition-table.gperf" + {"\000\037c\000\003E", 0x1fa3}, +#line 549 "./uninorm/composition-table.gperf" + {"\000\000w\000\003#", 0x1e89}, +#line 151 "./uninorm/composition-table.gperf" + {"\000\000n\000\003'", 0x0146}, +#line 159 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\013", 0x0151}, +#line 301 "./uninorm/composition-table.gperf" + {"\000\003\231\000\003\010", 0x03aa}, +#line 702 "./uninorm/composition-table.gperf" + {"\000\003\271\000\003\024", 0x1f31}, +#line 470 "./uninorm/composition-table.gperf" + {"\000\000L\000\0031", 0x1e3a}, + {""}, +#line 640 "./uninorm/composition-table.gperf" + {"\000\001\260\000\003\001", 0x1ee9}, +#line 642 "./uninorm/composition-table.gperf" + {"\000\001\260\000\003\000", 0x1eeb}, +#line 429 "./uninorm/composition-table.gperf" + {"\000\000d\000\003'", 0x1e11}, +#line 923 "./uninorm/composition-table.gperf" + {"\0000f\0000\231", 0x3067}, +#line 187 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\013", 0x0171}, +#line 836 "./uninorm/composition-table.gperf" + {"\000\003\271\000\003\004", 0x1fd1}, +#line 266 "./uninorm/composition-table.gperf" + {"\000\000R\000\003\021", 0x0212}, +#line 625 "./uninorm/composition-table.gperf" + {"\000\001\240\000\003\001", 0x1eda}, +#line 627 "./uninorm/composition-table.gperf" + {"\000\001\240\000\003\000", 0x1edc}, +#line 590 "./uninorm/composition-table.gperf" + {"\000\036\241\000\003\006", 0x1eb7}, +#line 318 "./uninorm/composition-table.gperf" + {"\000\004\006\000\003\010", 0x0407}, +#line 888 "./uninorm/composition-table.gperf" + {"\000\"r\000\0038", 0x2274}, +#line 729 "./uninorm/composition-table.gperf" + {"\000\003\305\000\003\023", 0x1f50}, +#line 846 "./uninorm/composition-table.gperf" + {"\000\003\305\000\003\006", 0x1fe0}, +#line 639 "./uninorm/composition-table.gperf" + {"\000\001\257\000\003\001", 0x1ee8}, +#line 641 "./uninorm/composition-table.gperf" + {"\000\001\257\000\003\000", 0x1eea}, + {""}, +#line 630 "./uninorm/composition-table.gperf" + {"\000\001\241\000\003\011", 0x1edf}, +#line 466 "./uninorm/composition-table.gperf" + {"\000\000L\000\003#", 0x1e36}, +#line 517 "./uninorm/composition-table.gperf" + {"\000\036c\000\003\007", 0x1e69}, +#line 686 "./uninorm/composition-table.gperf" + {"\000\003\267\000\003\024", 0x1f21}, +#line 452 "./uninorm/composition-table.gperf" + {"\000\000H\000\003'", 0x1e28}, +#line 954 "./uninorm/composition-table.gperf" + {"\0000\322\0000\231", 0x30d3}, +#line 522 "./uninorm/composition-table.gperf" + {"\000\000T\000\0031", 0x1e6e}, +#line 709 "./uninorm/composition-table.gperf" + {"\000\003\231\000\003\023", 0x1f38}, +#line 840 "./uninorm/composition-table.gperf" + {"\000\003\231\000\003\006", 0x1fd8}, +#line 856 "./uninorm/composition-table.gperf" + {"\000\003\241\000\003\024", 0x1fec}, +#line 366 "./uninorm/composition-table.gperf" + {"\000\004K\000\003\010", 0x04f9}, +#line 874 "./uninorm/composition-table.gperf" + {"\000\"\013\000\0038", 0x220c}, +#line 235 "./uninorm/composition-table.gperf" + {"\000\001\267\000\003\014", 0x01ee}, +#line 886 "./uninorm/composition-table.gperf" + {"\000\"d\000\0038", 0x2270}, + {""}, +#line 911 "./uninorm/composition-table.gperf" + {"\0000M\0000\231", 0x304e}, +#line 415 "./uninorm/composition-table.gperf" + {"\000\000b\000\003\007", 0x1e03}, +#line 785 "./uninorm/composition-table.gperf" + {"\000\037%\000\003E", 0x1f95}, + {""}, +#line 955 "./uninorm/composition-table.gperf" + {"\0000\322\0000\232", 0x30d4}, +#line 394 "./uninorm/composition-table.gperf" + {"\000\015G\000\015>", 0x0d4b}, +#line 658 "./uninorm/composition-table.gperf" + {"\000\003\261\000\003\024", 0x1f01}, +#line 478 "./uninorm/composition-table.gperf" + {"\000\000M\000\003#", 0x1e42}, +#line 304 "./uninorm/composition-table.gperf" + {"\000\003\265\000\003\001", 0x03ad}, +#line 758 "./uninorm/composition-table.gperf" + {"\000\003\265\000\003\000", 0x1f72}, +#line 666 "./uninorm/composition-table.gperf" + {"\000\003\221\000\003\024", 0x1f09}, +#line 520 "./uninorm/composition-table.gperf" + {"\000\000T\000\003#", 0x1e6c}, +#line 975 "./uninorm/composition-table.gperf" + {"\001\024\271\001\024\272", 0x114bb}, +#line 486 "./uninorm/composition-table.gperf" + {"\000\000N\000\003-", 0x1e4a}, +#line 813 "./uninorm/composition-table.gperf" + {"\000\003\261\000\003\004", 0x1fb1}, +#line 798 "./uninorm/composition-table.gperf" + {"\000\037b\000\003E", 0x1fa2}, +#line 783 "./uninorm/composition-table.gperf" + {"\000\037#\000\003E", 0x1f93}, +#line 880 "./uninorm/composition-table.gperf" + {"\000\"H\000\0038", 0x2249}, +#line 820 "./uninorm/composition-table.gperf" + {"\000\003\221\000\003\004", 0x1fb9}, +#line 158 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\013", 0x0150}, +#line 461 "./uninorm/composition-table.gperf" + {"\000\000k\000\003\001", 0x1e31}, +#line 795 "./uninorm/composition-table.gperf" + {"\000\037/\000\003E", 0x1f9f}, +#line 246 "./uninorm/composition-table.gperf" + {"\000\000\330\000\003\001", 0x01fe}, +#line 453 "./uninorm/composition-table.gperf" + {"\000\000h\000\003'", 0x1e29}, +#line 947 "./uninorm/composition-table.gperf" + {"\0000\277\0000\231", 0x30c0}, +#line 579 "./uninorm/composition-table.gperf" + {"\000\036\240\000\003\002", 0x1eac}, +#line 646 "./uninorm/composition-table.gperf" + {"\000\001\260\000\003\003", 0x1eef}, +#line 300 "./uninorm/composition-table.gperf" + {"\000\003\312\000\003\001", 0x0390}, +#line 837 "./uninorm/composition-table.gperf" + {"\000\003\312\000\003\000", 0x1fd2}, +#line 839 "./uninorm/composition-table.gperf" + {"\000\003\312\000\003B", 0x1fd7}, +#line 944 "./uninorm/composition-table.gperf" + {"\0000\271\0000\231", 0x30ba}, +#line 597 "./uninorm/composition-table.gperf" + {"\000\000\312\000\003\001", 0x1ebe}, +#line 599 "./uninorm/composition-table.gperf" + {"\000\000\312\000\003\000", 0x1ec0}, +#line 631 "./uninorm/composition-table.gperf" + {"\000\001\240\000\003\003", 0x1ee0}, +#line 849 "./uninorm/composition-table.gperf" + {"\000\003\301\000\003\023", 0x1fe4}, +#line 408 "./uninorm/composition-table.gperf" + {"\000\033<\000\0335", 0x1b3d}, +#line 173 "./uninorm/composition-table.gperf" + {"\000\000s\000\003\014", 0x0161}, +#line 564 "./uninorm/composition-table.gperf" + {"\000\000w\000\003\012", 0x1e98}, +#line 807 "./uninorm/composition-table.gperf" + {"\000\037k\000\003E", 0x1fab}, +#line 907 "./uninorm/composition-table.gperf" + {"\000\"\263\000\0038", 0x22eb}, +#line 645 "./uninorm/composition-table.gperf" + {"\000\001\257\000\003\003", 0x1eee}, +#line 186 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\013", 0x0170}, +#line 516 "./uninorm/composition-table.gperf" + {"\000\036b\000\003\007", 0x1e68}, +#line 730 "./uninorm/composition-table.gperf" + {"\000\003\305\000\003\024", 0x1f51}, +#line 299 "./uninorm/composition-table.gperf" + {"\000\003\251\000\003\001", 0x038f}, +#line 864 "./uninorm/composition-table.gperf" + {"\000\003\251\000\003\000", 0x1ffa}, +#line 229 "./uninorm/composition-table.gperf" + {"\000\000K\000\003\014", 0x01e8}, +#line 535 "./uninorm/composition-table.gperf" + {"\000\001k\000\003\010", 0x1e7b}, +#line 225 "./uninorm/composition-table.gperf" + {"\000\000\306\000\003\004", 0x01e2}, +#line 472 "./uninorm/composition-table.gperf" + {"\000\000L\000\003-", 0x1e3c}, +#line 407 "./uninorm/composition-table.gperf" + {"\000\033:\000\0335", 0x1b3b}, +#line 847 "./uninorm/composition-table.gperf" + {"\000\003\305\000\003\004", 0x1fe1}, +#line 403 "./uninorm/composition-table.gperf" + {"\000\033\011\000\0335", 0x1b0a}, +#line 943 "./uninorm/composition-table.gperf" + {"\0000\267\0000\231", 0x30b8}, + {""}, +#line 710 "./uninorm/composition-table.gperf" + {"\000\003\231\000\003\024", 0x1f39}, +#line 865 "./uninorm/composition-table.gperf" + {"\000\003\251\000\003E", 0x1ffc}, +#line 147 "./uninorm/composition-table.gperf" + {"\000\000l\000\003\014", 0x013e}, +#line 551 "./uninorm/composition-table.gperf" + {"\000\000x\000\003\007", 0x1e8b}, +#line 172 "./uninorm/composition-table.gperf" + {"\000\000S\000\003\014", 0x0160}, +#line 634 "./uninorm/composition-table.gperf" + {"\000\001\241\000\003#", 0x1ee3}, +#line 901 "./uninorm/composition-table.gperf" + {"\000\"\253\000\0038", 0x22af}, +#line 162 "./uninorm/composition-table.gperf" + {"\000\000R\000\003'", 0x0156}, +#line 841 "./uninorm/composition-table.gperf" + {"\000\003\231\000\003\004", 0x1fd9}, +#line 713 "./uninorm/composition-table.gperf" + {"\000\0378\000\003\001", 0x1f3c}, +#line 711 "./uninorm/composition-table.gperf" + {"\000\0378\000\003\000", 0x1f3a}, +#line 715 "./uninorm/composition-table.gperf" + {"\000\0378\000\003B", 0x1f3e}, +#line 298 "./uninorm/composition-table.gperf" + {"\000\003\245\000\003\001", 0x038e}, +#line 855 "./uninorm/composition-table.gperf" + {"\000\003\245\000\003\000", 0x1fea}, +#line 673 "./uninorm/composition-table.gperf" + {"\000\003\265\000\003\023", 0x1f10}, +#line 199 "./uninorm/composition-table.gperf" + {"\000\000Z\000\003\014", 0x017d}, +#line 940 "./uninorm/composition-table.gperf" + {"\0000\261\0000\231", 0x30b2}, +#line 683 "./uninorm/composition-table.gperf" + {"\000\037\030\000\003\001", 0x1f1c}, +#line 681 "./uninorm/composition-table.gperf" + {"\000\037\030\000\003\000", 0x1f1a}, +#line 524 "./uninorm/composition-table.gperf" + {"\000\000T\000\003-", 0x1e70}, +#line 125 "./uninorm/composition-table.gperf" + {"\000\000G\000\003'", 0x0122}, +#line 513 "./uninorm/composition-table.gperf" + {"\000\001[\000\003\007", 0x1e65}, +#line 106 "./uninorm/composition-table.gperf" + {"\000\000c\000\003\014", 0x010d}, +#line 312 "./uninorm/composition-table.gperf" + {"\000\003\311\000\003\001", 0x03ce}, +#line 763 "./uninorm/composition-table.gperf" + {"\000\003\311\000\003\000", 0x1f7c}, +#line 861 "./uninorm/composition-table.gperf" + {"\000\003\311\000\003B", 0x1ff6}, +#line 402 "./uninorm/composition-table.gperf" + {"\000\033\007\000\0335", 0x1b08}, +#line 359 "./uninorm/composition-table.gperf" + {"\000\004#\000\003\010", 0x04f0}, +#line 464 "./uninorm/composition-table.gperf" + {"\000\000K\000\0031", 0x1e34}, +#line 589 "./uninorm/composition-table.gperf" + {"\000\036\240\000\003\006", 0x1eb6}, +#line 644 "./uninorm/composition-table.gperf" + {"\000\001\260\000\003\011", 0x1eed}, +#line 107 "./uninorm/composition-table.gperf" + {"\000\000D\000\003\014", 0x010e}, +#line 553 "./uninorm/composition-table.gperf" + {"\000\000x\000\003\010", 0x1e8d}, +#line 200 "./uninorm/composition-table.gperf" + {"\000\000z\000\003\014", 0x017e}, +#line 603 "./uninorm/composition-table.gperf" + {"\000\000\312\000\003\003", 0x1ec4}, +#line 859 "./uninorm/composition-table.gperf" + {"\000\003\311\000\003E", 0x1ff3}, +#line 458 "./uninorm/composition-table.gperf" + {"\000\000\317\000\003\001", 0x1e2e}, +#line 629 "./uninorm/composition-table.gperf" + {"\000\001\240\000\003\011", 0x1ede}, +#line 511 "./uninorm/composition-table.gperf" + {"\000\000s\000\003#", 0x1e63}, +#line 471 "./uninorm/composition-table.gperf" + {"\000\000l\000\0031", 0x1e3b}, +#line 150 "./uninorm/composition-table.gperf" + {"\000\000N\000\003'", 0x0145}, +#line 910 "./uninorm/composition-table.gperf" + {"\0000K\0000\231", 0x304c}, +#line 850 "./uninorm/composition-table.gperf" + {"\000\003\301\000\003\024", 0x1fe5}, +#line 536 "./uninorm/composition-table.gperf" + {"\000\000V\000\003\003", 0x1e7c}, +#line 643 "./uninorm/composition-table.gperf" + {"\000\001\257\000\003\011", 0x1eec}, +#line 302 "./uninorm/composition-table.gperf" + {"\000\003\245\000\003\010", 0x03ab}, +#line 950 "./uninorm/composition-table.gperf" + {"\0000\306\0000\231", 0x30c7}, +#line 368 "./uninorm/composition-table.gperf" + {"\000\006'\000\006T", 0x0623}, +#line 462 "./uninorm/composition-table.gperf" + {"\000\000K\000\003#", 0x1e32}, + {""}, +#line 749 "./uninorm/composition-table.gperf" + {"\000\003\251\000\003\023", 0x1f68}, +#line 341 "./uninorm/composition-table.gperf" + {"\000\004\330\000\003\010", 0x04da}, +#line 560 "./uninorm/composition-table.gperf" + {"\000\000Z\000\0031", 0x1e94}, +#line 504 "./uninorm/composition-table.gperf" + {"\000\036Z\000\003\004", 0x1e5c}, +#line 914 "./uninorm/composition-table.gperf" + {"\0000S\0000\231", 0x3054}, +#line 329 "./uninorm/composition-table.gperf" + {"\000\0048\000\003\000", 0x045d}, +#line 321 "./uninorm/composition-table.gperf" + {"\000\004#\000\003\006", 0x040e}, +#line 615 "./uninorm/composition-table.gperf" + {"\000\000\324\000\003\001", 0x1ed0}, +#line 617 "./uninorm/composition-table.gperf" + {"\000\000\324\000\003\000", 0x1ed2}, +#line 467 "./uninorm/composition-table.gperf" + {"\000\000l\000\003#", 0x1e37}, +#line 126 "./uninorm/composition-table.gperf" + {"\000\000g\000\003'", 0x0123}, +#line 510 "./uninorm/composition-table.gperf" + {"\000\000S\000\003#", 0x1e62}, +#line 527 "./uninorm/composition-table.gperf" + {"\000\000u\000\003$", 0x1e73}, +#line 320 "./uninorm/composition-table.gperf" + {"\000\004\030\000\003\000", 0x040d}, + {""}, +#line 598 "./uninorm/composition-table.gperf" + {"\000\000\352\000\003\001", 0x1ebf}, +#line 600 "./uninorm/composition-table.gperf" + {"\000\000\352\000\003\000", 0x1ec1}, + {""}, +#line 426 "./uninorm/composition-table.gperf" + {"\000\000D\000\0031", 0x1e0e}, +#line 327 "./uninorm/composition-table.gperf" + {"\000\004V\000\003\010", 0x0457}, +#line 561 "./uninorm/composition-table.gperf" + {"\000\000z\000\0031", 0x1e95}, +#line 378 "./uninorm/composition-table.gperf" + {"\000\011\307\000\011\276", 0x09cb}, +#line 558 "./uninorm/composition-table.gperf" + {"\000\000Z\000\003#", 0x1e92}, +#line 289 "./uninorm/composition-table.gperf" + {"\000\002/\000\003\004", 0x0231}, +#line 853 "./uninorm/composition-table.gperf" + {"\000\003\245\000\003\006", 0x1fe8}, +#line 972 "./uninorm/composition-table.gperf" + {"\001\0212\001\021'", 0x1112f}, +#line 144 "./uninorm/composition-table.gperf" + {"\000\000L\000\003'", 0x013b}, +#line 674 "./uninorm/composition-table.gperf" + {"\000\003\265\000\003\024", 0x1f11}, +#line 371 "./uninorm/composition-table.gperf" + {"\000\006J\000\006T", 0x0626}, +#line 891 "./uninorm/composition-table.gperf" + {"\000\"w\000\0038", 0x2279}, +#line 690 "./uninorm/composition-table.gperf" + {"\000\037!\000\003\001", 0x1f25}, +#line 688 "./uninorm/composition-table.gperf" + {"\000\037!\000\003\000", 0x1f23}, +#line 692 "./uninorm/composition-table.gperf" + {"\000\037!\000\003B", 0x1f27}, +#line 381 "./uninorm/composition-table.gperf" + {"\000\013G\000\013>", 0x0b4b}, +#line 741 "./uninorm/composition-table.gperf" + {"\000\003\311\000\003\023", 0x1f60}, +#line 295 "./uninorm/composition-table.gperf" + {"\000\003\227\000\003\001", 0x0389}, +#line 830 "./uninorm/composition-table.gperf" + {"\000\003\227\000\003\000", 0x1fca}, +#line 350 "./uninorm/composition-table.gperf" + {"\000\0048\000\003\010", 0x04e5}, +#line 424 "./uninorm/composition-table.gperf" + {"\000\000D\000\003#", 0x1e0c}, +#line 968 "./uninorm/composition-table.gperf" + {"\001\020\231\001\020\272", 0x1109a}, +#line 559 "./uninorm/composition-table.gperf" + {"\000\000z\000\003#", 0x1e93}, + {""}, +#line 781 "./uninorm/composition-table.gperf" + {"\000\037!\000\003E", 0x1f91}, +#line 601 "./uninorm/composition-table.gperf" + {"\000\000\312\000\003\011", 0x1ec2}, + {""}, +#line 349 "./uninorm/composition-table.gperf" + {"\000\004\030\000\003\010", 0x04e4}, +#line 401 "./uninorm/composition-table.gperf" + {"\000\033\005\000\0335", 0x1b06}, +#line 831 "./uninorm/composition-table.gperf" + {"\000\003\227\000\003E", 0x1fcc}, +#line 978 "./uninorm/composition-table.gperf" + {"\001\025\270\001\025\257", 0x115ba}, +#line 405 "./uninorm/composition-table.gperf" + {"\000\033\015\000\0335", 0x1b0e}, +#line 230 "./uninorm/composition-table.gperf" + {"\000\000k\000\003\014", 0x01e9}, +#line 174 "./uninorm/composition-table.gperf" + {"\000\000T\000\003'", 0x0162}, +#line 496 "./uninorm/composition-table.gperf" + {"\000\000P\000\003\001", 0x1e54}, +#line 410 "./uninorm/composition-table.gperf" + {"\000\033?\000\0335", 0x1b41}, + {""}, +#line 648 "./uninorm/composition-table.gperf" + {"\000\001\260\000\003#", 0x1ef1}, +#line 498 "./uninorm/composition-table.gperf" + {"\000\000P\000\003\007", 0x1e56}, +#line 948 "./uninorm/composition-table.gperf" + {"\0000\301\0000\231", 0x30c2}, +#line 733 "./uninorm/composition-table.gperf" + {"\000\037P\000\003\001", 0x1f54}, +#line 731 "./uninorm/composition-table.gperf" + {"\000\037P\000\003\000", 0x1f52}, +#line 735 "./uninorm/composition-table.gperf" + {"\000\037P\000\003B", 0x1f56}, + {""}, +#line 633 "./uninorm/composition-table.gperf" + {"\000\001\240\000\003#", 0x1ee2}, +#line 750 "./uninorm/composition-table.gperf" + {"\000\003\251\000\003\024", 0x1f69}, +#line 419 "./uninorm/composition-table.gperf" + {"\000\000b\000\0031", 0x1e07}, +#line 621 "./uninorm/composition-table.gperf" + {"\000\000\324\000\003\003", 0x1ed6}, +#line 323 "./uninorm/composition-table.gperf" + {"\000\0048\000\003\006", 0x0439}, +#line 868 "./uninorm/composition-table.gperf" + {"\000!\224\000\0038", 0x21ae}, +#line 939 "./uninorm/composition-table.gperf" + {"\0000\257\0000\231", 0x30b0}, +#line 647 "./uninorm/composition-table.gperf" + {"\000\001\257\000\003#", 0x1ef0}, +#line 514 "./uninorm/composition-table.gperf" + {"\000\001`\000\003\007", 0x1e66}, +#line 866 "./uninorm/composition-table.gperf" + {"\000!\220\000\0038", 0x219a}, +#line 473 "./uninorm/composition-table.gperf" + {"\000\000l\000\003-", 0x1e3d}, +#line 604 "./uninorm/composition-table.gperf" + {"\000\000\352\000\003\003", 0x1ec5}, +#line 322 "./uninorm/composition-table.gperf" + {"\000\004\030\000\003\006", 0x0419}, +#line 883 "./uninorm/composition-table.gperf" + {"\000\"M\000\0038", 0x226d}, +#line 357 "./uninorm/composition-table.gperf" + {"\000\004#\000\003\004", 0x04ee}, + {""}, +#line 745 "./uninorm/composition-table.gperf" + {"\000\037`\000\003\001", 0x1f64}, +#line 743 "./uninorm/composition-table.gperf" + {"\000\037`\000\003\000", 0x1f62}, +#line 747 "./uninorm/composition-table.gperf" + {"\000\037`\000\003B", 0x1f66}, +#line 526 "./uninorm/composition-table.gperf" + {"\000\000U\000\003$", 0x1e72}, +#line 616 "./uninorm/composition-table.gperf" + {"\000\000\364\000\003\001", 0x1ed1}, +#line 618 "./uninorm/composition-table.gperf" + {"\000\000\364\000\003\000", 0x1ed3}, +#line 417 "./uninorm/composition-table.gperf" + {"\000\000b\000\003#", 0x1e05}, +#line 867 "./uninorm/composition-table.gperf" + {"\000!\222\000\0038", 0x219b}, +#line 737 "./uninorm/composition-table.gperf" + {"\000\003\245\000\003\024", 0x1f59}, +#line 465 "./uninorm/composition-table.gperf" + {"\000\000k\000\0031", 0x1e35}, + {""}, +#line 382 "./uninorm/composition-table.gperf" + {"\000\013G\000\013W", 0x0b4c}, +#line 796 "./uninorm/composition-table.gperf" + {"\000\037`\000\003E", 0x1fa0}, + {""}, +#line 942 "./uninorm/composition-table.gperf" + {"\0000\265\0000\231", 0x30b6}, + {""}, +#line 854 "./uninorm/composition-table.gperf" + {"\000\003\245\000\003\004", 0x1fe9}, + {""}, +#line 693 "./uninorm/composition-table.gperf" + {"\000\003\227\000\003\023", 0x1f28}, +#line 742 "./uninorm/composition-table.gperf" + {"\000\003\311\000\003\024", 0x1f61}, +#line 869 "./uninorm/composition-table.gperf" + {"\000!\320\000\0038", 0x21cd}, +#line 387 "./uninorm/composition-table.gperf" + {"\000\014F\000\014V", 0x0c48}, + {""}, +#line 430 "./uninorm/composition-table.gperf" + {"\000\000D\000\003-", 0x1e12}, +#line 958 "./uninorm/composition-table.gperf" + {"\0000\330\0000\231", 0x30d9}, +#line 294 "./uninorm/composition-table.gperf" + {"\000\003\225\000\003\001", 0x0388}, +#line 829 "./uninorm/composition-table.gperf" + {"\000\003\225\000\003\000", 0x1fc8}, +#line 572 "./uninorm/composition-table.gperf" + {"\000\000\342\000\003\001", 0x1ea5}, +#line 574 "./uninorm/composition-table.gperf" + {"\000\000\342\000\003\000", 0x1ea7}, +#line 463 "./uninorm/composition-table.gperf" + {"\000\000k\000\003#", 0x1e33}, +#line 307 "./uninorm/composition-table.gperf" + {"\000\003\313\000\003\001", 0x03b0}, +#line 848 "./uninorm/composition-table.gperf" + {"\000\003\313\000\003\000", 0x1fe2}, +#line 852 "./uninorm/composition-table.gperf" + {"\000\003\313\000\003B", 0x1fe7}, +#line 571 "./uninorm/composition-table.gperf" + {"\000\000\302\000\003\001", 0x1ea4}, +#line 573 "./uninorm/composition-table.gperf" + {"\000\000\302\000\003\000", 0x1ea6}, +#line 292 "./uninorm/composition-table.gperf" + {"\000\000\250\000\003\001", 0x0385}, +#line 857 "./uninorm/composition-table.gperf" + {"\000\000\250\000\003\000", 0x1fed}, +#line 823 "./uninorm/composition-table.gperf" + {"\000\000\250\000\003B", 0x1fc1}, +#line 959 "./uninorm/composition-table.gperf" + {"\0000\330\0000\232", 0x30da}, +#line 734 "./uninorm/composition-table.gperf" + {"\000\037Q\000\003\001", 0x1f55}, +#line 732 "./uninorm/composition-table.gperf" + {"\000\037Q\000\003\000", 0x1f53}, +#line 736 "./uninorm/composition-table.gperf" + {"\000\037Q\000\003B", 0x1f57}, +#line 202 "./uninorm/composition-table.gperf" + {"\000\000o\000\003\033", 0x01a1}, +#line 497 "./uninorm/composition-table.gperf" + {"\000\000p\000\003\001", 0x1e55}, +#line 786 "./uninorm/composition-table.gperf" + {"\000\037&\000\003E", 0x1f96}, +#line 139 "./uninorm/composition-table.gperf" + {"\000\000j\000\003\002", 0x0135}, +#line 619 "./uninorm/composition-table.gperf" + {"\000\000\324\000\003\011", 0x1ed4}, +#line 499 "./uninorm/composition-table.gperf" + {"\000\000p\000\003\007", 0x1e57}, + {""}, +#line 538 "./uninorm/composition-table.gperf" + {"\000\000V\000\003#", 0x1e7e}, +#line 324 "./uninorm/composition-table.gperf" + {"\000\0045\000\003\000", 0x0450}, +#line 204 "./uninorm/composition-table.gperf" + {"\000\000u\000\003\033", 0x01b0}, +#line 413 "./uninorm/composition-table.gperf" + {"\000\000a\000\003%", 0x1e01}, + {""}, +#line 602 "./uninorm/composition-table.gperf" + {"\000\000\352\000\003\011", 0x1ec3}, +#line 171 "./uninorm/composition-table.gperf" + {"\000\000s\000\003'", 0x015f}, +#line 931 "./uninorm/composition-table.gperf" + {"\0000x\0000\231", 0x3079}, + {""}, +#line 348 "./uninorm/composition-table.gperf" + {"\000\0048\000\003\004", 0x04e3}, + {""}, +#line 806 "./uninorm/composition-table.gperf" + {"\000\037j\000\003E", 0x1faa}, +#line 814 "./uninorm/composition-table.gperf" + {"\000\037p\000\003E", 0x1fb2}, +#line 622 "./uninorm/composition-table.gperf" + {"\000\000\364\000\003\003", 0x1ed7}, +#line 233 "./uninorm/composition-table.gperf" + {"\000\001\352\000\003\004", 0x01ec}, + {""}, +#line 140 "./uninorm/composition-table.gperf" + {"\000\000K\000\003'", 0x0136}, +#line 347 "./uninorm/composition-table.gperf" + {"\000\004\030\000\003\004", 0x04e2}, + {""}, +#line 505 "./uninorm/composition-table.gperf" + {"\000\036[\000\003\004", 0x1e5d}, +#line 534 "./uninorm/composition-table.gperf" + {"\000\001j\000\003\010", 0x1e7a}, +#line 932 "./uninorm/composition-table.gperf" + {"\0000x\0000\232", 0x307a}, + {""}, +#line 904 "./uninorm/composition-table.gperf" + {"\000\"\221\000\0038", 0x22e2}, + {""}, {""}, {""}, +#line 145 "./uninorm/composition-table.gperf" + {"\000\000l\000\003'", 0x013c}, + {""}, +#line 170 "./uninorm/composition-table.gperf" + {"\000\000S\000\003'", 0x015e}, + {""}, +#line 918 "./uninorm/composition-table.gperf" + {"\0000[\0000\231", 0x305c}, +#line 694 "./uninorm/composition-table.gperf" + {"\000\003\227\000\003\024", 0x1f29}, +#line 325 "./uninorm/composition-table.gperf" + {"\000\0045\000\003\010", 0x0451}, +#line 889 "./uninorm/composition-table.gperf" + {"\000\"s\000\0038", 0x2275}, + {""}, +#line 578 "./uninorm/composition-table.gperf" + {"\000\000\342\000\003\003", 0x1eab}, +#line 679 "./uninorm/composition-table.gperf" + {"\000\003\225\000\003\023", 0x1f18}, +#line 689 "./uninorm/composition-table.gperf" + {"\000\037 \000\003\001", 0x1f24}, +#line 687 "./uninorm/composition-table.gperf" + {"\000\037 \000\003\000", 0x1f22}, +#line 691 "./uninorm/composition-table.gperf" + {"\000\037 \000\003B", 0x1f26}, + {""}, +#line 577 "./uninorm/composition-table.gperf" + {"\000\000\302\000\003\003", 0x1eaa}, + {""}, +#line 952 "./uninorm/composition-table.gperf" + {"\0000\317\0000\231", 0x30d0}, + {""}, {""}, +#line 72 "./uninorm/composition-table.gperf" + {"\000\000c\000\003'", 0x00e7}, +#line 970 "./uninorm/composition-table.gperf" + {"\001\020\245\001\020\272", 0x110ab}, +#line 201 "./uninorm/composition-table.gperf" + {"\000\000O\000\003\033", 0x01a0}, +#line 780 "./uninorm/composition-table.gperf" + {"\000\037 \000\003E", 0x1f90}, + {""}, +#line 406 "./uninorm/composition-table.gperf" + {"\000\033\021\000\0335", 0x1b12}, + {""}, {""}, +#line 404 "./uninorm/composition-table.gperf" + {"\000\033\013\000\0335", 0x1b0c}, +#line 428 "./uninorm/composition-table.gperf" + {"\000\000D\000\003'", 0x1e10}, + {""}, +#line 953 "./uninorm/composition-table.gperf" + {"\0000\317\0000\232", 0x30d1}, +#line 411 "./uninorm/composition-table.gperf" + {"\000\033B\000\0335", 0x1b43}, +#line 454 "./uninorm/composition-table.gperf" + {"\000\000H\000\003.", 0x1e2a}, + {""}, +#line 340 "./uninorm/composition-table.gperf" + {"\000\0045\000\003\006", 0x04d7}, + {""}, {""}, {""}, +#line 412 "./uninorm/composition-table.gperf" + {"\000\000A\000\003%", 0x1e00}, + {""}, +#line 971 "./uninorm/composition-table.gperf" + {"\001\0211\001\021'", 0x1112e}, +#line 383 "./uninorm/composition-table.gperf" + {"\000\013\222\000\013\327", 0x0b94}, + {""}, +#line 203 "./uninorm/composition-table.gperf" + {"\000\000U\000\003\033", 0x01af}, +#line 620 "./uninorm/composition-table.gperf" + {"\000\000\364\000\003\011", 0x1ed5}, + {""}, {""}, {""}, {""}, +#line 379 "./uninorm/composition-table.gperf" + {"\000\011\307\000\011\327", 0x09cc}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 892 "./uninorm/composition-table.gperf" + {"\000\"z\000\0038", 0x2280}, + {""}, +#line 388 "./uninorm/composition-table.gperf" + {"\000\014\277\000\014\325", 0x0cc0}, + {""}, {""}, {""}, {""}, {""}, +#line 455 "./uninorm/composition-table.gperf" + {"\000\000h\000\003.", 0x1e2b}, +#line 576 "./uninorm/composition-table.gperf" + {"\000\000\342\000\003\011", 0x1ea9}, + {""}, {""}, {""}, {""}, +#line 680 "./uninorm/composition-table.gperf" + {"\000\003\225\000\003\024", 0x1f19}, +#line 575 "./uninorm/composition-table.gperf" + {"\000\000\302\000\003\011", 0x1ea8}, +#line 223 "./uninorm/composition-table.gperf" + {"\000\002&\000\003\004", 0x01e0}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, +#line 396 "./uninorm/composition-table.gperf" + {"\000\015\331\000\015\312", 0x0dda}, +#line 876 "./uninorm/composition-table.gperf" + {"\000\"%\000\0038", 0x2226}, + {""}, {""}, {""}, {""}, {""}, {""}, +#line 367 "./uninorm/composition-table.gperf" + {"\000\006'\000\006S", 0x0622}, +#line 141 "./uninorm/composition-table.gperf" + {"\000\000k\000\003'", 0x0137}, + {""}, +#line 380 "./uninorm/composition-table.gperf" + {"\000\013G\000\013V", 0x0b48}, +#line 237 "./uninorm/composition-table.gperf" + {"\000\000j\000\003\014", 0x01f0}, +#line 385 "./uninorm/composition-table.gperf" + {"\000\013\307\000\013\276", 0x0bcb}, + {""}, +#line 875 "./uninorm/composition-table.gperf" + {"\000\"#\000\0038", 0x2224}, + {""}, +#line 973 "./uninorm/composition-table.gperf" + {"\001\023G\001\023>", 0x1134b}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, +#line 909 "./uninorm/composition-table.gperf" + {"\000\"\265\000\0038", 0x22ed}, +#line 369 "./uninorm/composition-table.gperf" + {"\000\006H\000\006T", 0x0624}, + {""}, {""}, {""}, +#line 398 "./uninorm/composition-table.gperf" + {"\000\015\334\000\015\312", 0x0ddd}, + {""}, {""}, +#line 390 "./uninorm/composition-table.gperf" + {"\000\014\306\000\014\326", 0x0cc8}, +#line 391 "./uninorm/composition-table.gperf" + {"\000\014\306\000\014\302", 0x0cca}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, +#line 389 "./uninorm/composition-table.gperf" + {"\000\014\306\000\014\325", 0x0cc7}, + {""}, {""}, {""}, +#line 913 "./uninorm/composition-table.gperf" + {"\0000Q\0000\231", 0x3052}, +#line 372 "./uninorm/composition-table.gperf" + {"\000\006\325\000\006T", 0x06c0}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, +#line 900 "./uninorm/composition-table.gperf" + {"\000\"\251\000\0038", 0x22ae}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 974 "./uninorm/composition-table.gperf" + {"\001\023G\001\023W", 0x1134c}, +#line 976 "./uninorm/composition-table.gperf" + {"\001\024\271\001\024\260", 0x114bc}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 409 "./uninorm/composition-table.gperf" + {"\000\033>\000\0335", 0x1b40}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 392 "./uninorm/composition-table.gperf" + {"\000\014\312\000\014\325", 0x0ccb}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, +#line 361 "./uninorm/composition-table.gperf" + {"\000\004#\000\003\013", 0x04f2}, + {""}, {""}, {""}, {""}, {""}, +#line 374 "./uninorm/composition-table.gperf" + {"\000\006\322\000\006T", 0x06d3}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, +#line 979 "./uninorm/composition-table.gperf" + {"\001\025\271\001\025\257", 0x115bb}, + {""}, {""}, {""}, +#line 370 "./uninorm/composition-table.gperf" + {"\000\006'\000\006U", 0x0625}, + {""}, {""}, {""}, {""}, {""}, +#line 899 "./uninorm/composition-table.gperf" + {"\000\"\250\000\0038", 0x22ad}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, +#line 871 "./uninorm/composition-table.gperf" + {"\000!\322\000\0038", 0x21cf}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, +#line 384 "./uninorm/composition-table.gperf" + {"\000\013\306\000\013\276", 0x0bca}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, +#line 373 "./uninorm/composition-table.gperf" + {"\000\006\301\000\006T", 0x06c2}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 400 "./uninorm/composition-table.gperf" + {"\000\020%\000\020.", 0x1026}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 386 "./uninorm/composition-table.gperf" + {"\000\013\306\000\013\327", 0x0bcc}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, +#line 870 "./uninorm/composition-table.gperf" + {"\000!\324\000\0038", 0x21ce} + }; + + if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) + { + register unsigned int key = gl_uninorm_compose_hash (str, len); + + if (key <= MAX_HASH_VALUE) + if (len == lengthtable[key]) + { + register const char *s = wordlist[key].codes; + + if (*str == *s && !memcmp (str + 1, s + 1, len - 1)) + return &wordlist[key]; + } + } + return 0; +} diff --git a/lib/unistring/uninorm/composition.c b/lib/unistring/uninorm/composition.c new file mode 100644 index 0000000..d08ec84 --- /dev/null +++ b/lib/unistring/uninorm/composition.c @@ -0,0 +1,96 @@ +/* Canonical composition of Unicode characters. + Copyright (C) 2002, 2006, 2009, 2011-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "uninorm.h" + +#include <string.h> + +struct composition_rule { char codes[6]; unsigned int combined; }; + +#include "composition-table.h" + +ucs4_t +uc_composition (ucs4_t uc1, ucs4_t uc2) +{ + if (uc1 < 0x12000 && uc2 < 0x12000) + { + if (uc2 >= 0x1161 && uc2 < 0x1161 + 21 + && uc1 >= 0x1100 && uc1 < 0x1100 + 19) + { + /* Hangul: Combine single letter L and single letter V to form + two-letter syllable LV. */ + return 0xAC00 + ((uc1 - 0x1100) * 21 + (uc2 - 0x1161)) * 28; + } + else if (uc2 > 0x11A7 && uc2 < 0x11A7 + 28 + && uc1 >= 0xAC00 && uc1 < 0xD7A4 && ((uc1 - 0xAC00) % 28) == 0) + { + /* Hangul: Combine two-letter syllable LV with single-letter T + to form three-letter syllable LVT. */ + return uc1 + (uc2 - 0x11A7); + } + else + { +#if 0 + unsigned int uc = MUL1 * uc1 * MUL2 * uc2; + unsigned int index1 = uc >> composition_header_0; + if (index1 < composition_header_1) + { + int lookup1 = u_composition.level1[index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> composition_header_2) & composition_header_3; + int lookup2 = u_composition.level2[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = (uc & composition_header_4); + unsigned int lookup3 = u_composition.level3[lookup2 + index3]; + if ((lookup3 >> 16) == uc2) + return lookup3 & ((1U << 16) - 1); + } + } + } +#else + char codes[6]; + const struct composition_rule *rule; + + codes[0] = (uc1 >> 16) & 0xff; + codes[1] = (uc1 >> 8) & 0xff; + codes[2] = uc1 & 0xff; + codes[3] = (uc2 >> 16) & 0xff; + codes[4] = (uc2 >> 8) & 0xff; + codes[5] = uc2 & 0xff; + + rule = gl_uninorm_compose_lookup (codes, 6); + if (rule != NULL) + return rule->combined; +#endif + } + } + return 0; +} diff --git a/lib/unistring/uninorm/decompose-internal.c b/lib/unistring/uninorm/decompose-internal.c new file mode 100644 index 0000000..2c7ee20 --- /dev/null +++ b/lib/unistring/uninorm/decompose-internal.c @@ -0,0 +1,38 @@ +/* Decomposition of Unicode strings. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "decompose-internal.h" + +#define ELEMENT struct ucs4_with_ccc +#define COMPARE(a,b) ((a)->ccc - (b)->ccc) +#define STATIC +#define STATIC_FROMTO static +#define merge_sort_fromto gl_uninorm_decompose_merge_sort_fromto +#define merge_sort_inplace gl_uninorm_decompose_merge_sort_inplace +#include "array-mergesort.h" diff --git a/lib/unistring/uninorm/decompose-internal.h b/lib/unistring/uninorm/decompose-internal.h new file mode 100644 index 0000000..d0ed2e0 --- /dev/null +++ b/lib/unistring/uninorm/decompose-internal.h @@ -0,0 +1,45 @@ +/* Decomposition of Unicode strings. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <stddef.h> + +#include "unitypes.h" + +/* Variant of uc_decomposition that does not produce the 'tag'. */ +extern int + uc_compat_decomposition (ucs4_t uc, ucs4_t *decomposition); + +/* A Unicode character together with its canonical combining class. */ +struct ucs4_with_ccc +{ + ucs4_t code; + int ccc; /* range 0..255 */ +}; + +/* Stable-sort an array of 'struct ucs4_with_ccc'. */ +extern void + gl_uninorm_decompose_merge_sort_inplace (struct ucs4_with_ccc *src, size_t n, + struct ucs4_with_ccc *tmp); diff --git a/lib/unistring/uninorm/decomposition-table.c b/lib/unistring/uninorm/decomposition-table.c new file mode 100644 index 0000000..dbbad4f --- /dev/null +++ b/lib/unistring/uninorm/decomposition-table.c @@ -0,0 +1,32 @@ +/* Decomposition of Unicode characters. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "uninorm/decomposition-table.h" + +#include "uninorm/decomposition-table2.h" diff --git a/lib/unistring/uninorm/decomposition-table.h b/lib/unistring/uninorm/decomposition-table.h new file mode 100644 index 0000000..c31dd77 --- /dev/null +++ b/lib/unistring/uninorm/decomposition-table.h @@ -0,0 +1,57 @@ +/* Decomposition of Unicode characters. + Copyright (C) 2001-2003, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + + +#include "unitypes.h" + +/* The decomposition table is made of two parts: + - A table containing the actual arrays of decomposed equivalents. + (This table is separate because the maximum length of a decomposition + is 18, much larger than the average length 1.497 of a decomposition). + - A 3-level table of indices into this array. */ + +#include "decomposition-table1.h" + +static inline unsigned short +decomp_index (ucs4_t uc) +{ + unsigned int index1 = uc >> decomp_header_0; + if (index1 < decomp_header_1) + { + int lookup1 = gl_uninorm_decomp_index_table.level1[index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> decomp_header_2) & decomp_header_3; + int lookup2 = gl_uninorm_decomp_index_table.level2[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = uc & decomp_header_4; + return gl_uninorm_decomp_index_table.level3[lookup2 + index3]; + } + } + } + return (unsigned short)(-1); +} diff --git a/lib/unistring/uninorm/decomposition-table1.h b/lib/unistring/uninorm/decomposition-table1.h new file mode 100644 index 0000000..5fb5ff2 --- /dev/null +++ b/lib/unistring/uninorm/decomposition-table1.h @@ -0,0 +1,20 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Decomposition of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.0.0. */ + +extern const unsigned char gl_uninorm_decomp_chars_table[]; + +#define decomp_header_0 10 +#define decomp_header_1 191 +#define decomp_header_2 5 +#define decomp_header_3 31 +#define decomp_header_4 31 + +typedef struct + { + int level1[191]; + int level2[23 << 5]; + unsigned short level3[277 << 5]; + } +decomp_index_table_t; +extern const decomp_index_table_t gl_uninorm_decomp_index_table; diff --git a/lib/unistring/uninorm/decomposition-table2.h b/lib/unistring/uninorm/decomposition-table2.h new file mode 100644 index 0000000..539819b --- /dev/null +++ b/lib/unistring/uninorm/decomposition-table2.h @@ -0,0 +1,3373 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Decomposition of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.0.0. */ + +const unsigned char gl_uninorm_decomp_chars_table[] = +{ + 0x08, 0x00, 0x20, 0xC0, 0x00, 0x20, 0x00, 0x03, 0x08, 0x20, 0x00, 0x61, + 0xC0, 0x00, 0x20, 0x00, 0x03, 0x04, 0x20, 0x00, 0x32, 0x20, 0x00, 0x33, + 0xC0, 0x00, 0x20, 0x00, 0x03, 0x01, 0x40, 0x03, 0xBC, 0xC0, 0x00, 0x20, + 0x00, 0x03, 0x27, 0x20, 0x00, 0x31, 0x20, 0x00, 0x6F, 0xBC, 0x00, 0x31, + 0x80, 0x20, 0x44, 0x00, 0x00, 0x34, 0xBC, 0x00, 0x31, 0x80, 0x20, 0x44, + 0x00, 0x00, 0x32, 0xBC, 0x00, 0x33, 0x80, 0x20, 0x44, 0x00, 0x00, 0x34, + 0x80, 0x00, 0x41, 0x00, 0x03, 0x00, 0x80, 0x00, 0x41, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x41, 0x00, 0x03, 0x02, 0x80, 0x00, 0x41, 0x00, 0x03, 0x03, + 0x80, 0x00, 0x41, 0x00, 0x03, 0x08, 0x80, 0x00, 0x41, 0x00, 0x03, 0x0A, + 0x80, 0x00, 0x43, 0x00, 0x03, 0x27, 0x80, 0x00, 0x45, 0x00, 0x03, 0x00, + 0x80, 0x00, 0x45, 0x00, 0x03, 0x01, 0x80, 0x00, 0x45, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x45, 0x00, 0x03, 0x08, 0x80, 0x00, 0x49, 0x00, 0x03, 0x00, + 0x80, 0x00, 0x49, 0x00, 0x03, 0x01, 0x80, 0x00, 0x49, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x49, 0x00, 0x03, 0x08, 0x80, 0x00, 0x4E, 0x00, 0x03, 0x03, + 0x80, 0x00, 0x4F, 0x00, 0x03, 0x00, 0x80, 0x00, 0x4F, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x4F, 0x00, 0x03, 0x02, 0x80, 0x00, 0x4F, 0x00, 0x03, 0x03, + 0x80, 0x00, 0x4F, 0x00, 0x03, 0x08, 0x80, 0x00, 0x55, 0x00, 0x03, 0x00, + 0x80, 0x00, 0x55, 0x00, 0x03, 0x01, 0x80, 0x00, 0x55, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x55, 0x00, 0x03, 0x08, 0x80, 0x00, 0x59, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x61, 0x00, 0x03, 0x00, 0x80, 0x00, 0x61, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x61, 0x00, 0x03, 0x02, 0x80, 0x00, 0x61, 0x00, 0x03, 0x03, + 0x80, 0x00, 0x61, 0x00, 0x03, 0x08, 0x80, 0x00, 0x61, 0x00, 0x03, 0x0A, + 0x80, 0x00, 0x63, 0x00, 0x03, 0x27, 0x80, 0x00, 0x65, 0x00, 0x03, 0x00, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x01, 0x80, 0x00, 0x65, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x08, 0x80, 0x00, 0x69, 0x00, 0x03, 0x00, + 0x80, 0x00, 0x69, 0x00, 0x03, 0x01, 0x80, 0x00, 0x69, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x69, 0x00, 0x03, 0x08, 0x80, 0x00, 0x6E, 0x00, 0x03, 0x03, + 0x80, 0x00, 0x6F, 0x00, 0x03, 0x00, 0x80, 0x00, 0x6F, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x6F, 0x00, 0x03, 0x02, 0x80, 0x00, 0x6F, 0x00, 0x03, 0x03, + 0x80, 0x00, 0x6F, 0x00, 0x03, 0x08, 0x80, 0x00, 0x75, 0x00, 0x03, 0x00, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x01, 0x80, 0x00, 0x75, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x08, 0x80, 0x00, 0x79, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x79, 0x00, 0x03, 0x08, 0x80, 0x00, 0x41, 0x00, 0x03, 0x04, + 0x80, 0x00, 0x61, 0x00, 0x03, 0x04, 0x80, 0x00, 0x41, 0x00, 0x03, 0x06, + 0x80, 0x00, 0x61, 0x00, 0x03, 0x06, 0x80, 0x00, 0x41, 0x00, 0x03, 0x28, + 0x80, 0x00, 0x61, 0x00, 0x03, 0x28, 0x80, 0x00, 0x43, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x63, 0x00, 0x03, 0x01, 0x80, 0x00, 0x43, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x63, 0x00, 0x03, 0x02, 0x80, 0x00, 0x43, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x63, 0x00, 0x03, 0x07, 0x80, 0x00, 0x43, 0x00, 0x03, 0x0C, + 0x80, 0x00, 0x63, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x44, 0x00, 0x03, 0x0C, + 0x80, 0x00, 0x64, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x45, 0x00, 0x03, 0x04, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x04, 0x80, 0x00, 0x45, 0x00, 0x03, 0x06, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x06, 0x80, 0x00, 0x45, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x07, 0x80, 0x00, 0x45, 0x00, 0x03, 0x28, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x28, 0x80, 0x00, 0x45, 0x00, 0x03, 0x0C, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x47, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x67, 0x00, 0x03, 0x02, 0x80, 0x00, 0x47, 0x00, 0x03, 0x06, + 0x80, 0x00, 0x67, 0x00, 0x03, 0x06, 0x80, 0x00, 0x47, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x67, 0x00, 0x03, 0x07, 0x80, 0x00, 0x47, 0x00, 0x03, 0x27, + 0x80, 0x00, 0x67, 0x00, 0x03, 0x27, 0x80, 0x00, 0x48, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x68, 0x00, 0x03, 0x02, 0x80, 0x00, 0x49, 0x00, 0x03, 0x03, + 0x80, 0x00, 0x69, 0x00, 0x03, 0x03, 0x80, 0x00, 0x49, 0x00, 0x03, 0x04, + 0x80, 0x00, 0x69, 0x00, 0x03, 0x04, 0x80, 0x00, 0x49, 0x00, 0x03, 0x06, + 0x80, 0x00, 0x69, 0x00, 0x03, 0x06, 0x80, 0x00, 0x49, 0x00, 0x03, 0x28, + 0x80, 0x00, 0x69, 0x00, 0x03, 0x28, 0x80, 0x00, 0x49, 0x00, 0x03, 0x07, + 0xC0, 0x00, 0x49, 0x00, 0x00, 0x4A, 0xC0, 0x00, 0x69, 0x00, 0x00, 0x6A, + 0x80, 0x00, 0x4A, 0x00, 0x03, 0x02, 0x80, 0x00, 0x6A, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x4B, 0x00, 0x03, 0x27, 0x80, 0x00, 0x6B, 0x00, 0x03, 0x27, + 0x80, 0x00, 0x4C, 0x00, 0x03, 0x01, 0x80, 0x00, 0x6C, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x4C, 0x00, 0x03, 0x27, 0x80, 0x00, 0x6C, 0x00, 0x03, 0x27, + 0x80, 0x00, 0x4C, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x6C, 0x00, 0x03, 0x0C, + 0xC0, 0x00, 0x4C, 0x00, 0x00, 0xB7, 0xC0, 0x00, 0x6C, 0x00, 0x00, 0xB7, + 0x80, 0x00, 0x4E, 0x00, 0x03, 0x01, 0x80, 0x00, 0x6E, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x4E, 0x00, 0x03, 0x27, 0x80, 0x00, 0x6E, 0x00, 0x03, 0x27, + 0x80, 0x00, 0x4E, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x6E, 0x00, 0x03, 0x0C, + 0xC0, 0x02, 0xBC, 0x00, 0x00, 0x6E, 0x80, 0x00, 0x4F, 0x00, 0x03, 0x04, + 0x80, 0x00, 0x6F, 0x00, 0x03, 0x04, 0x80, 0x00, 0x4F, 0x00, 0x03, 0x06, + 0x80, 0x00, 0x6F, 0x00, 0x03, 0x06, 0x80, 0x00, 0x4F, 0x00, 0x03, 0x0B, + 0x80, 0x00, 0x6F, 0x00, 0x03, 0x0B, 0x80, 0x00, 0x52, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x72, 0x00, 0x03, 0x01, 0x80, 0x00, 0x52, 0x00, 0x03, 0x27, + 0x80, 0x00, 0x72, 0x00, 0x03, 0x27, 0x80, 0x00, 0x52, 0x00, 0x03, 0x0C, + 0x80, 0x00, 0x72, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x53, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x73, 0x00, 0x03, 0x01, 0x80, 0x00, 0x53, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x73, 0x00, 0x03, 0x02, 0x80, 0x00, 0x53, 0x00, 0x03, 0x27, + 0x80, 0x00, 0x73, 0x00, 0x03, 0x27, 0x80, 0x00, 0x53, 0x00, 0x03, 0x0C, + 0x80, 0x00, 0x73, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x54, 0x00, 0x03, 0x27, + 0x80, 0x00, 0x74, 0x00, 0x03, 0x27, 0x80, 0x00, 0x54, 0x00, 0x03, 0x0C, + 0x80, 0x00, 0x74, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x55, 0x00, 0x03, 0x03, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x03, 0x80, 0x00, 0x55, 0x00, 0x03, 0x04, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x04, 0x80, 0x00, 0x55, 0x00, 0x03, 0x06, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x06, 0x80, 0x00, 0x55, 0x00, 0x03, 0x0A, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x0A, 0x80, 0x00, 0x55, 0x00, 0x03, 0x0B, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x0B, 0x80, 0x00, 0x55, 0x00, 0x03, 0x28, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x28, 0x80, 0x00, 0x57, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x77, 0x00, 0x03, 0x02, 0x80, 0x00, 0x59, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x79, 0x00, 0x03, 0x02, 0x80, 0x00, 0x59, 0x00, 0x03, 0x08, + 0x80, 0x00, 0x5A, 0x00, 0x03, 0x01, 0x80, 0x00, 0x7A, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x5A, 0x00, 0x03, 0x07, 0x80, 0x00, 0x7A, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x5A, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x7A, 0x00, 0x03, 0x0C, + 0x40, 0x00, 0x73, 0x80, 0x00, 0x4F, 0x00, 0x03, 0x1B, 0x80, 0x00, 0x6F, + 0x00, 0x03, 0x1B, 0x80, 0x00, 0x55, 0x00, 0x03, 0x1B, 0x80, 0x00, 0x75, + 0x00, 0x03, 0x1B, 0xC0, 0x00, 0x44, 0x00, 0x01, 0x7D, 0xC0, 0x00, 0x44, + 0x00, 0x01, 0x7E, 0xC0, 0x00, 0x64, 0x00, 0x01, 0x7E, 0xC0, 0x00, 0x4C, + 0x00, 0x00, 0x4A, 0xC0, 0x00, 0x4C, 0x00, 0x00, 0x6A, 0xC0, 0x00, 0x6C, + 0x00, 0x00, 0x6A, 0xC0, 0x00, 0x4E, 0x00, 0x00, 0x4A, 0xC0, 0x00, 0x4E, + 0x00, 0x00, 0x6A, 0xC0, 0x00, 0x6E, 0x00, 0x00, 0x6A, 0x80, 0x00, 0x41, + 0x00, 0x03, 0x0C, 0x80, 0x00, 0x61, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x49, + 0x00, 0x03, 0x0C, 0x80, 0x00, 0x69, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x4F, + 0x00, 0x03, 0x0C, 0x80, 0x00, 0x6F, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x55, + 0x00, 0x03, 0x0C, 0x80, 0x00, 0x75, 0x00, 0x03, 0x0C, 0x80, 0x00, 0xDC, + 0x00, 0x03, 0x04, 0x80, 0x00, 0xFC, 0x00, 0x03, 0x04, 0x80, 0x00, 0xDC, + 0x00, 0x03, 0x01, 0x80, 0x00, 0xFC, 0x00, 0x03, 0x01, 0x80, 0x00, 0xDC, + 0x00, 0x03, 0x0C, 0x80, 0x00, 0xFC, 0x00, 0x03, 0x0C, 0x80, 0x00, 0xDC, + 0x00, 0x03, 0x00, 0x80, 0x00, 0xFC, 0x00, 0x03, 0x00, 0x80, 0x00, 0xC4, + 0x00, 0x03, 0x04, 0x80, 0x00, 0xE4, 0x00, 0x03, 0x04, 0x80, 0x02, 0x26, + 0x00, 0x03, 0x04, 0x80, 0x02, 0x27, 0x00, 0x03, 0x04, 0x80, 0x00, 0xC6, + 0x00, 0x03, 0x04, 0x80, 0x00, 0xE6, 0x00, 0x03, 0x04, 0x80, 0x00, 0x47, + 0x00, 0x03, 0x0C, 0x80, 0x00, 0x67, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x4B, + 0x00, 0x03, 0x0C, 0x80, 0x00, 0x6B, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x4F, + 0x00, 0x03, 0x28, 0x80, 0x00, 0x6F, 0x00, 0x03, 0x28, 0x80, 0x01, 0xEA, + 0x00, 0x03, 0x04, 0x80, 0x01, 0xEB, 0x00, 0x03, 0x04, 0x80, 0x01, 0xB7, + 0x00, 0x03, 0x0C, 0x80, 0x02, 0x92, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x6A, + 0x00, 0x03, 0x0C, 0xC0, 0x00, 0x44, 0x00, 0x00, 0x5A, 0xC0, 0x00, 0x44, + 0x00, 0x00, 0x7A, 0xC0, 0x00, 0x64, 0x00, 0x00, 0x7A, 0x80, 0x00, 0x47, + 0x00, 0x03, 0x01, 0x80, 0x00, 0x67, 0x00, 0x03, 0x01, 0x80, 0x00, 0x4E, + 0x00, 0x03, 0x00, 0x80, 0x00, 0x6E, 0x00, 0x03, 0x00, 0x80, 0x00, 0xC5, + 0x00, 0x03, 0x01, 0x80, 0x00, 0xE5, 0x00, 0x03, 0x01, 0x80, 0x00, 0xC6, + 0x00, 0x03, 0x01, 0x80, 0x00, 0xE6, 0x00, 0x03, 0x01, 0x80, 0x00, 0xD8, + 0x00, 0x03, 0x01, 0x80, 0x00, 0xF8, 0x00, 0x03, 0x01, 0x80, 0x00, 0x41, + 0x00, 0x03, 0x0F, 0x80, 0x00, 0x61, 0x00, 0x03, 0x0F, 0x80, 0x00, 0x41, + 0x00, 0x03, 0x11, 0x80, 0x00, 0x61, 0x00, 0x03, 0x11, 0x80, 0x00, 0x45, + 0x00, 0x03, 0x0F, 0x80, 0x00, 0x65, 0x00, 0x03, 0x0F, 0x80, 0x00, 0x45, + 0x00, 0x03, 0x11, 0x80, 0x00, 0x65, 0x00, 0x03, 0x11, 0x80, 0x00, 0x49, + 0x00, 0x03, 0x0F, 0x80, 0x00, 0x69, 0x00, 0x03, 0x0F, 0x80, 0x00, 0x49, + 0x00, 0x03, 0x11, 0x80, 0x00, 0x69, 0x00, 0x03, 0x11, 0x80, 0x00, 0x4F, + 0x00, 0x03, 0x0F, 0x80, 0x00, 0x6F, 0x00, 0x03, 0x0F, 0x80, 0x00, 0x4F, + 0x00, 0x03, 0x11, 0x80, 0x00, 0x6F, 0x00, 0x03, 0x11, 0x80, 0x00, 0x52, + 0x00, 0x03, 0x0F, 0x80, 0x00, 0x72, 0x00, 0x03, 0x0F, 0x80, 0x00, 0x52, + 0x00, 0x03, 0x11, 0x80, 0x00, 0x72, 0x00, 0x03, 0x11, 0x80, 0x00, 0x55, + 0x00, 0x03, 0x0F, 0x80, 0x00, 0x75, 0x00, 0x03, 0x0F, 0x80, 0x00, 0x55, + 0x00, 0x03, 0x11, 0x80, 0x00, 0x75, 0x00, 0x03, 0x11, 0x80, 0x00, 0x53, + 0x00, 0x03, 0x26, 0x80, 0x00, 0x73, 0x00, 0x03, 0x26, 0x80, 0x00, 0x54, + 0x00, 0x03, 0x26, 0x80, 0x00, 0x74, 0x00, 0x03, 0x26, 0x80, 0x00, 0x48, + 0x00, 0x03, 0x0C, 0x80, 0x00, 0x68, 0x00, 0x03, 0x0C, 0x80, 0x00, 0x41, + 0x00, 0x03, 0x07, 0x80, 0x00, 0x61, 0x00, 0x03, 0x07, 0x80, 0x00, 0x45, + 0x00, 0x03, 0x27, 0x80, 0x00, 0x65, 0x00, 0x03, 0x27, 0x80, 0x00, 0xD6, + 0x00, 0x03, 0x04, 0x80, 0x00, 0xF6, 0x00, 0x03, 0x04, 0x80, 0x00, 0xD5, + 0x00, 0x03, 0x04, 0x80, 0x00, 0xF5, 0x00, 0x03, 0x04, 0x80, 0x00, 0x4F, + 0x00, 0x03, 0x07, 0x80, 0x00, 0x6F, 0x00, 0x03, 0x07, 0x80, 0x02, 0x2E, + 0x00, 0x03, 0x04, 0x80, 0x02, 0x2F, 0x00, 0x03, 0x04, 0x80, 0x00, 0x59, + 0x00, 0x03, 0x04, 0x80, 0x00, 0x79, 0x00, 0x03, 0x04, 0x20, 0x00, 0x68, + 0x20, 0x02, 0x66, 0x20, 0x00, 0x6A, 0x20, 0x00, 0x72, 0x20, 0x02, 0x79, + 0x20, 0x02, 0x7B, 0x20, 0x02, 0x81, 0x20, 0x00, 0x77, 0x20, 0x00, 0x79, + 0xC0, 0x00, 0x20, 0x00, 0x03, 0x06, 0xC0, 0x00, 0x20, 0x00, 0x03, 0x07, + 0xC0, 0x00, 0x20, 0x00, 0x03, 0x0A, 0xC0, 0x00, 0x20, 0x00, 0x03, 0x28, + 0xC0, 0x00, 0x20, 0x00, 0x03, 0x03, 0xC0, 0x00, 0x20, 0x00, 0x03, 0x0B, + 0x20, 0x02, 0x63, 0x20, 0x00, 0x6C, 0x20, 0x00, 0x73, 0x20, 0x00, 0x78, + 0x20, 0x02, 0x95, 0x00, 0x03, 0x00, 0x00, 0x03, 0x01, 0x00, 0x03, 0x13, + 0x80, 0x03, 0x08, 0x00, 0x03, 0x01, 0x00, 0x02, 0xB9, 0xC0, 0x00, 0x20, + 0x00, 0x03, 0x45, 0x00, 0x00, 0x3B, 0xC0, 0x00, 0x20, 0x00, 0x03, 0x01, + 0x80, 0x00, 0xA8, 0x00, 0x03, 0x01, 0x80, 0x03, 0x91, 0x00, 0x03, 0x01, + 0x00, 0x00, 0xB7, 0x80, 0x03, 0x95, 0x00, 0x03, 0x01, 0x80, 0x03, 0x97, + 0x00, 0x03, 0x01, 0x80, 0x03, 0x99, 0x00, 0x03, 0x01, 0x80, 0x03, 0x9F, + 0x00, 0x03, 0x01, 0x80, 0x03, 0xA5, 0x00, 0x03, 0x01, 0x80, 0x03, 0xA9, + 0x00, 0x03, 0x01, 0x80, 0x03, 0xCA, 0x00, 0x03, 0x01, 0x80, 0x03, 0x99, + 0x00, 0x03, 0x08, 0x80, 0x03, 0xA5, 0x00, 0x03, 0x08, 0x80, 0x03, 0xB1, + 0x00, 0x03, 0x01, 0x80, 0x03, 0xB5, 0x00, 0x03, 0x01, 0x80, 0x03, 0xB7, + 0x00, 0x03, 0x01, 0x80, 0x03, 0xB9, 0x00, 0x03, 0x01, 0x80, 0x03, 0xCB, + 0x00, 0x03, 0x01, 0x80, 0x03, 0xB9, 0x00, 0x03, 0x08, 0x80, 0x03, 0xC5, + 0x00, 0x03, 0x08, 0x80, 0x03, 0xBF, 0x00, 0x03, 0x01, 0x80, 0x03, 0xC5, + 0x00, 0x03, 0x01, 0x80, 0x03, 0xC9, 0x00, 0x03, 0x01, 0x40, 0x03, 0xB2, + 0x40, 0x03, 0xB8, 0x40, 0x03, 0xA5, 0x80, 0x03, 0xD2, 0x00, 0x03, 0x01, + 0x80, 0x03, 0xD2, 0x00, 0x03, 0x08, 0x40, 0x03, 0xC6, 0x40, 0x03, 0xC0, + 0x40, 0x03, 0xBA, 0x40, 0x03, 0xC1, 0x40, 0x03, 0xC2, 0x40, 0x03, 0x98, + 0x40, 0x03, 0xB5, 0x40, 0x03, 0xA3, 0x80, 0x04, 0x15, 0x00, 0x03, 0x00, + 0x80, 0x04, 0x15, 0x00, 0x03, 0x08, 0x80, 0x04, 0x13, 0x00, 0x03, 0x01, + 0x80, 0x04, 0x06, 0x00, 0x03, 0x08, 0x80, 0x04, 0x1A, 0x00, 0x03, 0x01, + 0x80, 0x04, 0x18, 0x00, 0x03, 0x00, 0x80, 0x04, 0x23, 0x00, 0x03, 0x06, + 0x80, 0x04, 0x18, 0x00, 0x03, 0x06, 0x80, 0x04, 0x38, 0x00, 0x03, 0x06, + 0x80, 0x04, 0x35, 0x00, 0x03, 0x00, 0x80, 0x04, 0x35, 0x00, 0x03, 0x08, + 0x80, 0x04, 0x33, 0x00, 0x03, 0x01, 0x80, 0x04, 0x56, 0x00, 0x03, 0x08, + 0x80, 0x04, 0x3A, 0x00, 0x03, 0x01, 0x80, 0x04, 0x38, 0x00, 0x03, 0x00, + 0x80, 0x04, 0x43, 0x00, 0x03, 0x06, 0x80, 0x04, 0x74, 0x00, 0x03, 0x0F, + 0x80, 0x04, 0x75, 0x00, 0x03, 0x0F, 0x80, 0x04, 0x16, 0x00, 0x03, 0x06, + 0x80, 0x04, 0x36, 0x00, 0x03, 0x06, 0x80, 0x04, 0x10, 0x00, 0x03, 0x06, + 0x80, 0x04, 0x30, 0x00, 0x03, 0x06, 0x80, 0x04, 0x10, 0x00, 0x03, 0x08, + 0x80, 0x04, 0x30, 0x00, 0x03, 0x08, 0x80, 0x04, 0x15, 0x00, 0x03, 0x06, + 0x80, 0x04, 0x35, 0x00, 0x03, 0x06, 0x80, 0x04, 0xD8, 0x00, 0x03, 0x08, + 0x80, 0x04, 0xD9, 0x00, 0x03, 0x08, 0x80, 0x04, 0x16, 0x00, 0x03, 0x08, + 0x80, 0x04, 0x36, 0x00, 0x03, 0x08, 0x80, 0x04, 0x17, 0x00, 0x03, 0x08, + 0x80, 0x04, 0x37, 0x00, 0x03, 0x08, 0x80, 0x04, 0x18, 0x00, 0x03, 0x04, + 0x80, 0x04, 0x38, 0x00, 0x03, 0x04, 0x80, 0x04, 0x18, 0x00, 0x03, 0x08, + 0x80, 0x04, 0x38, 0x00, 0x03, 0x08, 0x80, 0x04, 0x1E, 0x00, 0x03, 0x08, + 0x80, 0x04, 0x3E, 0x00, 0x03, 0x08, 0x80, 0x04, 0xE8, 0x00, 0x03, 0x08, + 0x80, 0x04, 0xE9, 0x00, 0x03, 0x08, 0x80, 0x04, 0x2D, 0x00, 0x03, 0x08, + 0x80, 0x04, 0x4D, 0x00, 0x03, 0x08, 0x80, 0x04, 0x23, 0x00, 0x03, 0x04, + 0x80, 0x04, 0x43, 0x00, 0x03, 0x04, 0x80, 0x04, 0x23, 0x00, 0x03, 0x08, + 0x80, 0x04, 0x43, 0x00, 0x03, 0x08, 0x80, 0x04, 0x23, 0x00, 0x03, 0x0B, + 0x80, 0x04, 0x43, 0x00, 0x03, 0x0B, 0x80, 0x04, 0x27, 0x00, 0x03, 0x08, + 0x80, 0x04, 0x47, 0x00, 0x03, 0x08, 0x80, 0x04, 0x2B, 0x00, 0x03, 0x08, + 0x80, 0x04, 0x4B, 0x00, 0x03, 0x08, 0xC0, 0x05, 0x65, 0x00, 0x05, 0x82, + 0x80, 0x06, 0x27, 0x00, 0x06, 0x53, 0x80, 0x06, 0x27, 0x00, 0x06, 0x54, + 0x80, 0x06, 0x48, 0x00, 0x06, 0x54, 0x80, 0x06, 0x27, 0x00, 0x06, 0x55, + 0x80, 0x06, 0x4A, 0x00, 0x06, 0x54, 0xC0, 0x06, 0x27, 0x00, 0x06, 0x74, + 0xC0, 0x06, 0x48, 0x00, 0x06, 0x74, 0xC0, 0x06, 0xC7, 0x00, 0x06, 0x74, + 0xC0, 0x06, 0x4A, 0x00, 0x06, 0x74, 0x80, 0x06, 0xD5, 0x00, 0x06, 0x54, + 0x80, 0x06, 0xC1, 0x00, 0x06, 0x54, 0x80, 0x06, 0xD2, 0x00, 0x06, 0x54, + 0x80, 0x09, 0x28, 0x00, 0x09, 0x3C, 0x80, 0x09, 0x30, 0x00, 0x09, 0x3C, + 0x80, 0x09, 0x33, 0x00, 0x09, 0x3C, 0x80, 0x09, 0x15, 0x00, 0x09, 0x3C, + 0x80, 0x09, 0x16, 0x00, 0x09, 0x3C, 0x80, 0x09, 0x17, 0x00, 0x09, 0x3C, + 0x80, 0x09, 0x1C, 0x00, 0x09, 0x3C, 0x80, 0x09, 0x21, 0x00, 0x09, 0x3C, + 0x80, 0x09, 0x22, 0x00, 0x09, 0x3C, 0x80, 0x09, 0x2B, 0x00, 0x09, 0x3C, + 0x80, 0x09, 0x2F, 0x00, 0x09, 0x3C, 0x80, 0x09, 0xC7, 0x00, 0x09, 0xBE, + 0x80, 0x09, 0xC7, 0x00, 0x09, 0xD7, 0x80, 0x09, 0xA1, 0x00, 0x09, 0xBC, + 0x80, 0x09, 0xA2, 0x00, 0x09, 0xBC, 0x80, 0x09, 0xAF, 0x00, 0x09, 0xBC, + 0x80, 0x0A, 0x32, 0x00, 0x0A, 0x3C, 0x80, 0x0A, 0x38, 0x00, 0x0A, 0x3C, + 0x80, 0x0A, 0x16, 0x00, 0x0A, 0x3C, 0x80, 0x0A, 0x17, 0x00, 0x0A, 0x3C, + 0x80, 0x0A, 0x1C, 0x00, 0x0A, 0x3C, 0x80, 0x0A, 0x2B, 0x00, 0x0A, 0x3C, + 0x80, 0x0B, 0x47, 0x00, 0x0B, 0x56, 0x80, 0x0B, 0x47, 0x00, 0x0B, 0x3E, + 0x80, 0x0B, 0x47, 0x00, 0x0B, 0x57, 0x80, 0x0B, 0x21, 0x00, 0x0B, 0x3C, + 0x80, 0x0B, 0x22, 0x00, 0x0B, 0x3C, 0x80, 0x0B, 0x92, 0x00, 0x0B, 0xD7, + 0x80, 0x0B, 0xC6, 0x00, 0x0B, 0xBE, 0x80, 0x0B, 0xC7, 0x00, 0x0B, 0xBE, + 0x80, 0x0B, 0xC6, 0x00, 0x0B, 0xD7, 0x80, 0x0C, 0x46, 0x00, 0x0C, 0x56, + 0x80, 0x0C, 0xBF, 0x00, 0x0C, 0xD5, 0x80, 0x0C, 0xC6, 0x00, 0x0C, 0xD5, + 0x80, 0x0C, 0xC6, 0x00, 0x0C, 0xD6, 0x80, 0x0C, 0xC6, 0x00, 0x0C, 0xC2, + 0x80, 0x0C, 0xCA, 0x00, 0x0C, 0xD5, 0x80, 0x0D, 0x46, 0x00, 0x0D, 0x3E, + 0x80, 0x0D, 0x47, 0x00, 0x0D, 0x3E, 0x80, 0x0D, 0x46, 0x00, 0x0D, 0x57, + 0x80, 0x0D, 0xD9, 0x00, 0x0D, 0xCA, 0x80, 0x0D, 0xD9, 0x00, 0x0D, 0xCF, + 0x80, 0x0D, 0xDC, 0x00, 0x0D, 0xCA, 0x80, 0x0D, 0xD9, 0x00, 0x0D, 0xDF, + 0xC0, 0x0E, 0x4D, 0x00, 0x0E, 0x32, 0xC0, 0x0E, 0xCD, 0x00, 0x0E, 0xB2, + 0xC0, 0x0E, 0xAB, 0x00, 0x0E, 0x99, 0xC0, 0x0E, 0xAB, 0x00, 0x0E, 0xA1, + 0x08, 0x0F, 0x0B, 0x80, 0x0F, 0x42, 0x00, 0x0F, 0xB7, 0x80, 0x0F, 0x4C, + 0x00, 0x0F, 0xB7, 0x80, 0x0F, 0x51, 0x00, 0x0F, 0xB7, 0x80, 0x0F, 0x56, + 0x00, 0x0F, 0xB7, 0x80, 0x0F, 0x5B, 0x00, 0x0F, 0xB7, 0x80, 0x0F, 0x40, + 0x00, 0x0F, 0xB5, 0x80, 0x0F, 0x71, 0x00, 0x0F, 0x72, 0x80, 0x0F, 0x71, + 0x00, 0x0F, 0x74, 0x80, 0x0F, 0xB2, 0x00, 0x0F, 0x80, 0xC0, 0x0F, 0xB2, + 0x00, 0x0F, 0x81, 0x80, 0x0F, 0xB3, 0x00, 0x0F, 0x80, 0xC0, 0x0F, 0xB3, + 0x00, 0x0F, 0x81, 0x80, 0x0F, 0x71, 0x00, 0x0F, 0x80, 0x80, 0x0F, 0x92, + 0x00, 0x0F, 0xB7, 0x80, 0x0F, 0x9C, 0x00, 0x0F, 0xB7, 0x80, 0x0F, 0xA1, + 0x00, 0x0F, 0xB7, 0x80, 0x0F, 0xA6, 0x00, 0x0F, 0xB7, 0x80, 0x0F, 0xAB, + 0x00, 0x0F, 0xB7, 0x80, 0x0F, 0x90, 0x00, 0x0F, 0xB5, 0x80, 0x10, 0x25, + 0x00, 0x10, 0x2E, 0x20, 0x10, 0xDC, 0x80, 0x1B, 0x05, 0x00, 0x1B, 0x35, + 0x80, 0x1B, 0x07, 0x00, 0x1B, 0x35, 0x80, 0x1B, 0x09, 0x00, 0x1B, 0x35, + 0x80, 0x1B, 0x0B, 0x00, 0x1B, 0x35, 0x80, 0x1B, 0x0D, 0x00, 0x1B, 0x35, + 0x80, 0x1B, 0x11, 0x00, 0x1B, 0x35, 0x80, 0x1B, 0x3A, 0x00, 0x1B, 0x35, + 0x80, 0x1B, 0x3C, 0x00, 0x1B, 0x35, 0x80, 0x1B, 0x3E, 0x00, 0x1B, 0x35, + 0x80, 0x1B, 0x3F, 0x00, 0x1B, 0x35, 0x80, 0x1B, 0x42, 0x00, 0x1B, 0x35, + 0x20, 0x00, 0x41, 0x20, 0x00, 0xC6, 0x20, 0x00, 0x42, 0x20, 0x00, 0x44, + 0x20, 0x00, 0x45, 0x20, 0x01, 0x8E, 0x20, 0x00, 0x47, 0x20, 0x00, 0x48, + 0x20, 0x00, 0x49, 0x20, 0x00, 0x4A, 0x20, 0x00, 0x4B, 0x20, 0x00, 0x4C, + 0x20, 0x00, 0x4D, 0x20, 0x00, 0x4E, 0x20, 0x00, 0x4F, 0x20, 0x02, 0x22, + 0x20, 0x00, 0x50, 0x20, 0x00, 0x52, 0x20, 0x00, 0x54, 0x20, 0x00, 0x55, + 0x20, 0x00, 0x57, 0x20, 0x00, 0x61, 0x20, 0x02, 0x50, 0x20, 0x02, 0x51, + 0x20, 0x1D, 0x02, 0x20, 0x00, 0x62, 0x20, 0x00, 0x64, 0x20, 0x00, 0x65, + 0x20, 0x02, 0x59, 0x20, 0x02, 0x5B, 0x20, 0x02, 0x5C, 0x20, 0x00, 0x67, + 0x20, 0x00, 0x6B, 0x20, 0x00, 0x6D, 0x20, 0x01, 0x4B, 0x20, 0x00, 0x6F, + 0x20, 0x02, 0x54, 0x20, 0x1D, 0x16, 0x20, 0x1D, 0x17, 0x20, 0x00, 0x70, + 0x20, 0x00, 0x74, 0x20, 0x00, 0x75, 0x20, 0x1D, 0x1D, 0x20, 0x02, 0x6F, + 0x20, 0x00, 0x76, 0x20, 0x1D, 0x25, 0x20, 0x03, 0xB2, 0x20, 0x03, 0xB3, + 0x20, 0x03, 0xB4, 0x20, 0x03, 0xC6, 0x20, 0x03, 0xC7, 0x24, 0x00, 0x69, + 0x24, 0x00, 0x72, 0x24, 0x00, 0x75, 0x24, 0x00, 0x76, 0x24, 0x03, 0xB2, + 0x24, 0x03, 0xB3, 0x24, 0x03, 0xC1, 0x24, 0x03, 0xC6, 0x24, 0x03, 0xC7, + 0x20, 0x04, 0x3D, 0x20, 0x02, 0x52, 0x20, 0x00, 0x63, 0x20, 0x02, 0x55, + 0x20, 0x00, 0xF0, 0x20, 0x02, 0x5C, 0x20, 0x00, 0x66, 0x20, 0x02, 0x5F, + 0x20, 0x02, 0x61, 0x20, 0x02, 0x65, 0x20, 0x02, 0x68, 0x20, 0x02, 0x69, + 0x20, 0x02, 0x6A, 0x20, 0x1D, 0x7B, 0x20, 0x02, 0x9D, 0x20, 0x02, 0x6D, + 0x20, 0x1D, 0x85, 0x20, 0x02, 0x9F, 0x20, 0x02, 0x71, 0x20, 0x02, 0x70, + 0x20, 0x02, 0x72, 0x20, 0x02, 0x73, 0x20, 0x02, 0x74, 0x20, 0x02, 0x75, + 0x20, 0x02, 0x78, 0x20, 0x02, 0x82, 0x20, 0x02, 0x83, 0x20, 0x01, 0xAB, + 0x20, 0x02, 0x89, 0x20, 0x02, 0x8A, 0x20, 0x1D, 0x1C, 0x20, 0x02, 0x8B, + 0x20, 0x02, 0x8C, 0x20, 0x00, 0x7A, 0x20, 0x02, 0x90, 0x20, 0x02, 0x91, + 0x20, 0x02, 0x92, 0x20, 0x03, 0xB8, 0x80, 0x00, 0x41, 0x00, 0x03, 0x25, + 0x80, 0x00, 0x61, 0x00, 0x03, 0x25, 0x80, 0x00, 0x42, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x62, 0x00, 0x03, 0x07, 0x80, 0x00, 0x42, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x62, 0x00, 0x03, 0x23, 0x80, 0x00, 0x42, 0x00, 0x03, 0x31, + 0x80, 0x00, 0x62, 0x00, 0x03, 0x31, 0x80, 0x00, 0xC7, 0x00, 0x03, 0x01, + 0x80, 0x00, 0xE7, 0x00, 0x03, 0x01, 0x80, 0x00, 0x44, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x64, 0x00, 0x03, 0x07, 0x80, 0x00, 0x44, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x64, 0x00, 0x03, 0x23, 0x80, 0x00, 0x44, 0x00, 0x03, 0x31, + 0x80, 0x00, 0x64, 0x00, 0x03, 0x31, 0x80, 0x00, 0x44, 0x00, 0x03, 0x27, + 0x80, 0x00, 0x64, 0x00, 0x03, 0x27, 0x80, 0x00, 0x44, 0x00, 0x03, 0x2D, + 0x80, 0x00, 0x64, 0x00, 0x03, 0x2D, 0x80, 0x01, 0x12, 0x00, 0x03, 0x00, + 0x80, 0x01, 0x13, 0x00, 0x03, 0x00, 0x80, 0x01, 0x12, 0x00, 0x03, 0x01, + 0x80, 0x01, 0x13, 0x00, 0x03, 0x01, 0x80, 0x00, 0x45, 0x00, 0x03, 0x2D, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x2D, 0x80, 0x00, 0x45, 0x00, 0x03, 0x30, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x30, 0x80, 0x02, 0x28, 0x00, 0x03, 0x06, + 0x80, 0x02, 0x29, 0x00, 0x03, 0x06, 0x80, 0x00, 0x46, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x66, 0x00, 0x03, 0x07, 0x80, 0x00, 0x47, 0x00, 0x03, 0x04, + 0x80, 0x00, 0x67, 0x00, 0x03, 0x04, 0x80, 0x00, 0x48, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x68, 0x00, 0x03, 0x07, 0x80, 0x00, 0x48, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x68, 0x00, 0x03, 0x23, 0x80, 0x00, 0x48, 0x00, 0x03, 0x08, + 0x80, 0x00, 0x68, 0x00, 0x03, 0x08, 0x80, 0x00, 0x48, 0x00, 0x03, 0x27, + 0x80, 0x00, 0x68, 0x00, 0x03, 0x27, 0x80, 0x00, 0x48, 0x00, 0x03, 0x2E, + 0x80, 0x00, 0x68, 0x00, 0x03, 0x2E, 0x80, 0x00, 0x49, 0x00, 0x03, 0x30, + 0x80, 0x00, 0x69, 0x00, 0x03, 0x30, 0x80, 0x00, 0xCF, 0x00, 0x03, 0x01, + 0x80, 0x00, 0xEF, 0x00, 0x03, 0x01, 0x80, 0x00, 0x4B, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x6B, 0x00, 0x03, 0x01, 0x80, 0x00, 0x4B, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x6B, 0x00, 0x03, 0x23, 0x80, 0x00, 0x4B, 0x00, 0x03, 0x31, + 0x80, 0x00, 0x6B, 0x00, 0x03, 0x31, 0x80, 0x00, 0x4C, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x6C, 0x00, 0x03, 0x23, 0x80, 0x1E, 0x36, 0x00, 0x03, 0x04, + 0x80, 0x1E, 0x37, 0x00, 0x03, 0x04, 0x80, 0x00, 0x4C, 0x00, 0x03, 0x31, + 0x80, 0x00, 0x6C, 0x00, 0x03, 0x31, 0x80, 0x00, 0x4C, 0x00, 0x03, 0x2D, + 0x80, 0x00, 0x6C, 0x00, 0x03, 0x2D, 0x80, 0x00, 0x4D, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x6D, 0x00, 0x03, 0x01, 0x80, 0x00, 0x4D, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x6D, 0x00, 0x03, 0x07, 0x80, 0x00, 0x4D, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x6D, 0x00, 0x03, 0x23, 0x80, 0x00, 0x4E, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x6E, 0x00, 0x03, 0x07, 0x80, 0x00, 0x4E, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x6E, 0x00, 0x03, 0x23, 0x80, 0x00, 0x4E, 0x00, 0x03, 0x31, + 0x80, 0x00, 0x6E, 0x00, 0x03, 0x31, 0x80, 0x00, 0x4E, 0x00, 0x03, 0x2D, + 0x80, 0x00, 0x6E, 0x00, 0x03, 0x2D, 0x80, 0x00, 0xD5, 0x00, 0x03, 0x01, + 0x80, 0x00, 0xF5, 0x00, 0x03, 0x01, 0x80, 0x00, 0xD5, 0x00, 0x03, 0x08, + 0x80, 0x00, 0xF5, 0x00, 0x03, 0x08, 0x80, 0x01, 0x4C, 0x00, 0x03, 0x00, + 0x80, 0x01, 0x4D, 0x00, 0x03, 0x00, 0x80, 0x01, 0x4C, 0x00, 0x03, 0x01, + 0x80, 0x01, 0x4D, 0x00, 0x03, 0x01, 0x80, 0x00, 0x50, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x70, 0x00, 0x03, 0x01, 0x80, 0x00, 0x50, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x70, 0x00, 0x03, 0x07, 0x80, 0x00, 0x52, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x72, 0x00, 0x03, 0x07, 0x80, 0x00, 0x52, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x72, 0x00, 0x03, 0x23, 0x80, 0x1E, 0x5A, 0x00, 0x03, 0x04, + 0x80, 0x1E, 0x5B, 0x00, 0x03, 0x04, 0x80, 0x00, 0x52, 0x00, 0x03, 0x31, + 0x80, 0x00, 0x72, 0x00, 0x03, 0x31, 0x80, 0x00, 0x53, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x73, 0x00, 0x03, 0x07, 0x80, 0x00, 0x53, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x73, 0x00, 0x03, 0x23, 0x80, 0x01, 0x5A, 0x00, 0x03, 0x07, + 0x80, 0x01, 0x5B, 0x00, 0x03, 0x07, 0x80, 0x01, 0x60, 0x00, 0x03, 0x07, + 0x80, 0x01, 0x61, 0x00, 0x03, 0x07, 0x80, 0x1E, 0x62, 0x00, 0x03, 0x07, + 0x80, 0x1E, 0x63, 0x00, 0x03, 0x07, 0x80, 0x00, 0x54, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x74, 0x00, 0x03, 0x07, 0x80, 0x00, 0x54, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x74, 0x00, 0x03, 0x23, 0x80, 0x00, 0x54, 0x00, 0x03, 0x31, + 0x80, 0x00, 0x74, 0x00, 0x03, 0x31, 0x80, 0x00, 0x54, 0x00, 0x03, 0x2D, + 0x80, 0x00, 0x74, 0x00, 0x03, 0x2D, 0x80, 0x00, 0x55, 0x00, 0x03, 0x24, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x24, 0x80, 0x00, 0x55, 0x00, 0x03, 0x30, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x30, 0x80, 0x00, 0x55, 0x00, 0x03, 0x2D, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x2D, 0x80, 0x01, 0x68, 0x00, 0x03, 0x01, + 0x80, 0x01, 0x69, 0x00, 0x03, 0x01, 0x80, 0x01, 0x6A, 0x00, 0x03, 0x08, + 0x80, 0x01, 0x6B, 0x00, 0x03, 0x08, 0x80, 0x00, 0x56, 0x00, 0x03, 0x03, + 0x80, 0x00, 0x76, 0x00, 0x03, 0x03, 0x80, 0x00, 0x56, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x76, 0x00, 0x03, 0x23, 0x80, 0x00, 0x57, 0x00, 0x03, 0x00, + 0x80, 0x00, 0x77, 0x00, 0x03, 0x00, 0x80, 0x00, 0x57, 0x00, 0x03, 0x01, + 0x80, 0x00, 0x77, 0x00, 0x03, 0x01, 0x80, 0x00, 0x57, 0x00, 0x03, 0x08, + 0x80, 0x00, 0x77, 0x00, 0x03, 0x08, 0x80, 0x00, 0x57, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x77, 0x00, 0x03, 0x07, 0x80, 0x00, 0x57, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x77, 0x00, 0x03, 0x23, 0x80, 0x00, 0x58, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x78, 0x00, 0x03, 0x07, 0x80, 0x00, 0x58, 0x00, 0x03, 0x08, + 0x80, 0x00, 0x78, 0x00, 0x03, 0x08, 0x80, 0x00, 0x59, 0x00, 0x03, 0x07, + 0x80, 0x00, 0x79, 0x00, 0x03, 0x07, 0x80, 0x00, 0x5A, 0x00, 0x03, 0x02, + 0x80, 0x00, 0x7A, 0x00, 0x03, 0x02, 0x80, 0x00, 0x5A, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x7A, 0x00, 0x03, 0x23, 0x80, 0x00, 0x5A, 0x00, 0x03, 0x31, + 0x80, 0x00, 0x7A, 0x00, 0x03, 0x31, 0x80, 0x00, 0x68, 0x00, 0x03, 0x31, + 0x80, 0x00, 0x74, 0x00, 0x03, 0x08, 0x80, 0x00, 0x77, 0x00, 0x03, 0x0A, + 0x80, 0x00, 0x79, 0x00, 0x03, 0x0A, 0xC0, 0x00, 0x61, 0x00, 0x02, 0xBE, + 0x80, 0x01, 0x7F, 0x00, 0x03, 0x07, 0x80, 0x00, 0x41, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x61, 0x00, 0x03, 0x23, 0x80, 0x00, 0x41, 0x00, 0x03, 0x09, + 0x80, 0x00, 0x61, 0x00, 0x03, 0x09, 0x80, 0x00, 0xC2, 0x00, 0x03, 0x01, + 0x80, 0x00, 0xE2, 0x00, 0x03, 0x01, 0x80, 0x00, 0xC2, 0x00, 0x03, 0x00, + 0x80, 0x00, 0xE2, 0x00, 0x03, 0x00, 0x80, 0x00, 0xC2, 0x00, 0x03, 0x09, + 0x80, 0x00, 0xE2, 0x00, 0x03, 0x09, 0x80, 0x00, 0xC2, 0x00, 0x03, 0x03, + 0x80, 0x00, 0xE2, 0x00, 0x03, 0x03, 0x80, 0x1E, 0xA0, 0x00, 0x03, 0x02, + 0x80, 0x1E, 0xA1, 0x00, 0x03, 0x02, 0x80, 0x01, 0x02, 0x00, 0x03, 0x01, + 0x80, 0x01, 0x03, 0x00, 0x03, 0x01, 0x80, 0x01, 0x02, 0x00, 0x03, 0x00, + 0x80, 0x01, 0x03, 0x00, 0x03, 0x00, 0x80, 0x01, 0x02, 0x00, 0x03, 0x09, + 0x80, 0x01, 0x03, 0x00, 0x03, 0x09, 0x80, 0x01, 0x02, 0x00, 0x03, 0x03, + 0x80, 0x01, 0x03, 0x00, 0x03, 0x03, 0x80, 0x1E, 0xA0, 0x00, 0x03, 0x06, + 0x80, 0x1E, 0xA1, 0x00, 0x03, 0x06, 0x80, 0x00, 0x45, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x23, 0x80, 0x00, 0x45, 0x00, 0x03, 0x09, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x09, 0x80, 0x00, 0x45, 0x00, 0x03, 0x03, + 0x80, 0x00, 0x65, 0x00, 0x03, 0x03, 0x80, 0x00, 0xCA, 0x00, 0x03, 0x01, + 0x80, 0x00, 0xEA, 0x00, 0x03, 0x01, 0x80, 0x00, 0xCA, 0x00, 0x03, 0x00, + 0x80, 0x00, 0xEA, 0x00, 0x03, 0x00, 0x80, 0x00, 0xCA, 0x00, 0x03, 0x09, + 0x80, 0x00, 0xEA, 0x00, 0x03, 0x09, 0x80, 0x00, 0xCA, 0x00, 0x03, 0x03, + 0x80, 0x00, 0xEA, 0x00, 0x03, 0x03, 0x80, 0x1E, 0xB8, 0x00, 0x03, 0x02, + 0x80, 0x1E, 0xB9, 0x00, 0x03, 0x02, 0x80, 0x00, 0x49, 0x00, 0x03, 0x09, + 0x80, 0x00, 0x69, 0x00, 0x03, 0x09, 0x80, 0x00, 0x49, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x69, 0x00, 0x03, 0x23, 0x80, 0x00, 0x4F, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x6F, 0x00, 0x03, 0x23, 0x80, 0x00, 0x4F, 0x00, 0x03, 0x09, + 0x80, 0x00, 0x6F, 0x00, 0x03, 0x09, 0x80, 0x00, 0xD4, 0x00, 0x03, 0x01, + 0x80, 0x00, 0xF4, 0x00, 0x03, 0x01, 0x80, 0x00, 0xD4, 0x00, 0x03, 0x00, + 0x80, 0x00, 0xF4, 0x00, 0x03, 0x00, 0x80, 0x00, 0xD4, 0x00, 0x03, 0x09, + 0x80, 0x00, 0xF4, 0x00, 0x03, 0x09, 0x80, 0x00, 0xD4, 0x00, 0x03, 0x03, + 0x80, 0x00, 0xF4, 0x00, 0x03, 0x03, 0x80, 0x1E, 0xCC, 0x00, 0x03, 0x02, + 0x80, 0x1E, 0xCD, 0x00, 0x03, 0x02, 0x80, 0x01, 0xA0, 0x00, 0x03, 0x01, + 0x80, 0x01, 0xA1, 0x00, 0x03, 0x01, 0x80, 0x01, 0xA0, 0x00, 0x03, 0x00, + 0x80, 0x01, 0xA1, 0x00, 0x03, 0x00, 0x80, 0x01, 0xA0, 0x00, 0x03, 0x09, + 0x80, 0x01, 0xA1, 0x00, 0x03, 0x09, 0x80, 0x01, 0xA0, 0x00, 0x03, 0x03, + 0x80, 0x01, 0xA1, 0x00, 0x03, 0x03, 0x80, 0x01, 0xA0, 0x00, 0x03, 0x23, + 0x80, 0x01, 0xA1, 0x00, 0x03, 0x23, 0x80, 0x00, 0x55, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x23, 0x80, 0x00, 0x55, 0x00, 0x03, 0x09, + 0x80, 0x00, 0x75, 0x00, 0x03, 0x09, 0x80, 0x01, 0xAF, 0x00, 0x03, 0x01, + 0x80, 0x01, 0xB0, 0x00, 0x03, 0x01, 0x80, 0x01, 0xAF, 0x00, 0x03, 0x00, + 0x80, 0x01, 0xB0, 0x00, 0x03, 0x00, 0x80, 0x01, 0xAF, 0x00, 0x03, 0x09, + 0x80, 0x01, 0xB0, 0x00, 0x03, 0x09, 0x80, 0x01, 0xAF, 0x00, 0x03, 0x03, + 0x80, 0x01, 0xB0, 0x00, 0x03, 0x03, 0x80, 0x01, 0xAF, 0x00, 0x03, 0x23, + 0x80, 0x01, 0xB0, 0x00, 0x03, 0x23, 0x80, 0x00, 0x59, 0x00, 0x03, 0x00, + 0x80, 0x00, 0x79, 0x00, 0x03, 0x00, 0x80, 0x00, 0x59, 0x00, 0x03, 0x23, + 0x80, 0x00, 0x79, 0x00, 0x03, 0x23, 0x80, 0x00, 0x59, 0x00, 0x03, 0x09, + 0x80, 0x00, 0x79, 0x00, 0x03, 0x09, 0x80, 0x00, 0x59, 0x00, 0x03, 0x03, + 0x80, 0x00, 0x79, 0x00, 0x03, 0x03, 0x80, 0x03, 0xB1, 0x00, 0x03, 0x13, + 0x80, 0x03, 0xB1, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x00, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x01, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x00, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x01, 0x00, 0x03, 0x01, 0x80, 0x1F, 0x00, 0x00, 0x03, 0x42, + 0x80, 0x1F, 0x01, 0x00, 0x03, 0x42, 0x80, 0x03, 0x91, 0x00, 0x03, 0x13, + 0x80, 0x03, 0x91, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x08, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x09, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x08, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x09, 0x00, 0x03, 0x01, 0x80, 0x1F, 0x08, 0x00, 0x03, 0x42, + 0x80, 0x1F, 0x09, 0x00, 0x03, 0x42, 0x80, 0x03, 0xB5, 0x00, 0x03, 0x13, + 0x80, 0x03, 0xB5, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x10, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x11, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x10, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x11, 0x00, 0x03, 0x01, 0x80, 0x03, 0x95, 0x00, 0x03, 0x13, + 0x80, 0x03, 0x95, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x18, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x19, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x18, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x19, 0x00, 0x03, 0x01, 0x80, 0x03, 0xB7, 0x00, 0x03, 0x13, + 0x80, 0x03, 0xB7, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x20, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x21, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x20, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x21, 0x00, 0x03, 0x01, 0x80, 0x1F, 0x20, 0x00, 0x03, 0x42, + 0x80, 0x1F, 0x21, 0x00, 0x03, 0x42, 0x80, 0x03, 0x97, 0x00, 0x03, 0x13, + 0x80, 0x03, 0x97, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x28, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x29, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x28, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x29, 0x00, 0x03, 0x01, 0x80, 0x1F, 0x28, 0x00, 0x03, 0x42, + 0x80, 0x1F, 0x29, 0x00, 0x03, 0x42, 0x80, 0x03, 0xB9, 0x00, 0x03, 0x13, + 0x80, 0x03, 0xB9, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x30, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x31, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x30, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x31, 0x00, 0x03, 0x01, 0x80, 0x1F, 0x30, 0x00, 0x03, 0x42, + 0x80, 0x1F, 0x31, 0x00, 0x03, 0x42, 0x80, 0x03, 0x99, 0x00, 0x03, 0x13, + 0x80, 0x03, 0x99, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x38, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x39, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x38, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x39, 0x00, 0x03, 0x01, 0x80, 0x1F, 0x38, 0x00, 0x03, 0x42, + 0x80, 0x1F, 0x39, 0x00, 0x03, 0x42, 0x80, 0x03, 0xBF, 0x00, 0x03, 0x13, + 0x80, 0x03, 0xBF, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x40, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x41, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x40, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x41, 0x00, 0x03, 0x01, 0x80, 0x03, 0x9F, 0x00, 0x03, 0x13, + 0x80, 0x03, 0x9F, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x48, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x49, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x48, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x49, 0x00, 0x03, 0x01, 0x80, 0x03, 0xC5, 0x00, 0x03, 0x13, + 0x80, 0x03, 0xC5, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x50, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x51, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x50, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x51, 0x00, 0x03, 0x01, 0x80, 0x1F, 0x50, 0x00, 0x03, 0x42, + 0x80, 0x1F, 0x51, 0x00, 0x03, 0x42, 0x80, 0x03, 0xA5, 0x00, 0x03, 0x14, + 0x80, 0x1F, 0x59, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x59, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x59, 0x00, 0x03, 0x42, 0x80, 0x03, 0xC9, 0x00, 0x03, 0x13, + 0x80, 0x03, 0xC9, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x60, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x61, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x60, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x61, 0x00, 0x03, 0x01, 0x80, 0x1F, 0x60, 0x00, 0x03, 0x42, + 0x80, 0x1F, 0x61, 0x00, 0x03, 0x42, 0x80, 0x03, 0xA9, 0x00, 0x03, 0x13, + 0x80, 0x03, 0xA9, 0x00, 0x03, 0x14, 0x80, 0x1F, 0x68, 0x00, 0x03, 0x00, + 0x80, 0x1F, 0x69, 0x00, 0x03, 0x00, 0x80, 0x1F, 0x68, 0x00, 0x03, 0x01, + 0x80, 0x1F, 0x69, 0x00, 0x03, 0x01, 0x80, 0x1F, 0x68, 0x00, 0x03, 0x42, + 0x80, 0x1F, 0x69, 0x00, 0x03, 0x42, 0x80, 0x03, 0xB1, 0x00, 0x03, 0x00, + 0x00, 0x03, 0xAC, 0x80, 0x03, 0xB5, 0x00, 0x03, 0x00, 0x00, 0x03, 0xAD, + 0x80, 0x03, 0xB7, 0x00, 0x03, 0x00, 0x00, 0x03, 0xAE, 0x80, 0x03, 0xB9, + 0x00, 0x03, 0x00, 0x00, 0x03, 0xAF, 0x80, 0x03, 0xBF, 0x00, 0x03, 0x00, + 0x00, 0x03, 0xCC, 0x80, 0x03, 0xC5, 0x00, 0x03, 0x00, 0x00, 0x03, 0xCD, + 0x80, 0x03, 0xC9, 0x00, 0x03, 0x00, 0x00, 0x03, 0xCE, 0x80, 0x1F, 0x00, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x01, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x02, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x03, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x04, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x05, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x06, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x07, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x08, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x09, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x0A, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x0B, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x0C, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x0D, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x0E, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x0F, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x20, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x21, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x22, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x23, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x24, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x25, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x26, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x27, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x28, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x29, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x2A, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x2B, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x2C, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x2D, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x2E, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x2F, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x60, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x61, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x62, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x63, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x64, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x65, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x66, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x67, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x68, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x69, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x6A, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x6B, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x6C, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x6D, 0x00, 0x03, 0x45, 0x80, 0x1F, 0x6E, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0x6F, 0x00, 0x03, 0x45, 0x80, 0x03, 0xB1, + 0x00, 0x03, 0x06, 0x80, 0x03, 0xB1, 0x00, 0x03, 0x04, 0x80, 0x1F, 0x70, + 0x00, 0x03, 0x45, 0x80, 0x03, 0xB1, 0x00, 0x03, 0x45, 0x80, 0x03, 0xAC, + 0x00, 0x03, 0x45, 0x80, 0x03, 0xB1, 0x00, 0x03, 0x42, 0x80, 0x1F, 0xB6, + 0x00, 0x03, 0x45, 0x80, 0x03, 0x91, 0x00, 0x03, 0x06, 0x80, 0x03, 0x91, + 0x00, 0x03, 0x04, 0x80, 0x03, 0x91, 0x00, 0x03, 0x00, 0x00, 0x03, 0x86, + 0x80, 0x03, 0x91, 0x00, 0x03, 0x45, 0xC0, 0x00, 0x20, 0x00, 0x03, 0x13, + 0x00, 0x03, 0xB9, 0xC0, 0x00, 0x20, 0x00, 0x03, 0x13, 0xC0, 0x00, 0x20, + 0x00, 0x03, 0x42, 0x80, 0x00, 0xA8, 0x00, 0x03, 0x42, 0x80, 0x1F, 0x74, + 0x00, 0x03, 0x45, 0x80, 0x03, 0xB7, 0x00, 0x03, 0x45, 0x80, 0x03, 0xAE, + 0x00, 0x03, 0x45, 0x80, 0x03, 0xB7, 0x00, 0x03, 0x42, 0x80, 0x1F, 0xC6, + 0x00, 0x03, 0x45, 0x80, 0x03, 0x95, 0x00, 0x03, 0x00, 0x00, 0x03, 0x88, + 0x80, 0x03, 0x97, 0x00, 0x03, 0x00, 0x00, 0x03, 0x89, 0x80, 0x03, 0x97, + 0x00, 0x03, 0x45, 0x80, 0x1F, 0xBF, 0x00, 0x03, 0x00, 0x80, 0x1F, 0xBF, + 0x00, 0x03, 0x01, 0x80, 0x1F, 0xBF, 0x00, 0x03, 0x42, 0x80, 0x03, 0xB9, + 0x00, 0x03, 0x06, 0x80, 0x03, 0xB9, 0x00, 0x03, 0x04, 0x80, 0x03, 0xCA, + 0x00, 0x03, 0x00, 0x00, 0x03, 0x90, 0x80, 0x03, 0xB9, 0x00, 0x03, 0x42, + 0x80, 0x03, 0xCA, 0x00, 0x03, 0x42, 0x80, 0x03, 0x99, 0x00, 0x03, 0x06, + 0x80, 0x03, 0x99, 0x00, 0x03, 0x04, 0x80, 0x03, 0x99, 0x00, 0x03, 0x00, + 0x00, 0x03, 0x8A, 0x80, 0x1F, 0xFE, 0x00, 0x03, 0x00, 0x80, 0x1F, 0xFE, + 0x00, 0x03, 0x01, 0x80, 0x1F, 0xFE, 0x00, 0x03, 0x42, 0x80, 0x03, 0xC5, + 0x00, 0x03, 0x06, 0x80, 0x03, 0xC5, 0x00, 0x03, 0x04, 0x80, 0x03, 0xCB, + 0x00, 0x03, 0x00, 0x00, 0x03, 0xB0, 0x80, 0x03, 0xC1, 0x00, 0x03, 0x13, + 0x80, 0x03, 0xC1, 0x00, 0x03, 0x14, 0x80, 0x03, 0xC5, 0x00, 0x03, 0x42, + 0x80, 0x03, 0xCB, 0x00, 0x03, 0x42, 0x80, 0x03, 0xA5, 0x00, 0x03, 0x06, + 0x80, 0x03, 0xA5, 0x00, 0x03, 0x04, 0x80, 0x03, 0xA5, 0x00, 0x03, 0x00, + 0x00, 0x03, 0x8E, 0x80, 0x03, 0xA1, 0x00, 0x03, 0x14, 0x80, 0x00, 0xA8, + 0x00, 0x03, 0x00, 0x00, 0x03, 0x85, 0x00, 0x00, 0x60, 0x80, 0x1F, 0x7C, + 0x00, 0x03, 0x45, 0x80, 0x03, 0xC9, 0x00, 0x03, 0x45, 0x80, 0x03, 0xCE, + 0x00, 0x03, 0x45, 0x80, 0x03, 0xC9, 0x00, 0x03, 0x42, 0x80, 0x1F, 0xF6, + 0x00, 0x03, 0x45, 0x80, 0x03, 0x9F, 0x00, 0x03, 0x00, 0x00, 0x03, 0x8C, + 0x80, 0x03, 0xA9, 0x00, 0x03, 0x00, 0x00, 0x03, 0x8F, 0x80, 0x03, 0xA9, + 0x00, 0x03, 0x45, 0x00, 0x00, 0xB4, 0xC0, 0x00, 0x20, 0x00, 0x03, 0x14, + 0x00, 0x20, 0x02, 0x00, 0x20, 0x03, 0x40, 0x00, 0x20, 0x40, 0x00, 0x20, + 0x40, 0x00, 0x20, 0x40, 0x00, 0x20, 0x40, 0x00, 0x20, 0x08, 0x00, 0x20, + 0x40, 0x00, 0x20, 0x40, 0x00, 0x20, 0x40, 0x00, 0x20, 0x08, 0x20, 0x10, + 0xC0, 0x00, 0x20, 0x00, 0x03, 0x33, 0x40, 0x00, 0x2E, 0xC0, 0x00, 0x2E, + 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x2E, 0x80, 0x00, 0x2E, 0x00, 0x00, 0x2E, + 0x08, 0x00, 0x20, 0xC0, 0x20, 0x32, 0x00, 0x20, 0x32, 0xC0, 0x20, 0x32, + 0x80, 0x20, 0x32, 0x00, 0x20, 0x32, 0xC0, 0x20, 0x35, 0x00, 0x20, 0x35, + 0xC0, 0x20, 0x35, 0x80, 0x20, 0x35, 0x00, 0x20, 0x35, 0xC0, 0x00, 0x21, + 0x00, 0x00, 0x21, 0xC0, 0x00, 0x20, 0x00, 0x03, 0x05, 0xC0, 0x00, 0x3F, + 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0x21, 0xC0, 0x00, 0x21, + 0x00, 0x00, 0x3F, 0xC0, 0x20, 0x32, 0x80, 0x20, 0x32, 0x80, 0x20, 0x32, + 0x00, 0x20, 0x32, 0x40, 0x00, 0x20, 0x20, 0x00, 0x30, 0x20, 0x00, 0x69, + 0x20, 0x00, 0x34, 0x20, 0x00, 0x35, 0x20, 0x00, 0x36, 0x20, 0x00, 0x37, + 0x20, 0x00, 0x38, 0x20, 0x00, 0x39, 0x20, 0x00, 0x2B, 0x20, 0x22, 0x12, + 0x20, 0x00, 0x3D, 0x20, 0x00, 0x28, 0x20, 0x00, 0x29, 0x20, 0x00, 0x6E, + 0x24, 0x00, 0x30, 0x24, 0x00, 0x31, 0x24, 0x00, 0x32, 0x24, 0x00, 0x33, + 0x24, 0x00, 0x34, 0x24, 0x00, 0x35, 0x24, 0x00, 0x36, 0x24, 0x00, 0x37, + 0x24, 0x00, 0x38, 0x24, 0x00, 0x39, 0x24, 0x00, 0x2B, 0x24, 0x22, 0x12, + 0x24, 0x00, 0x3D, 0x24, 0x00, 0x28, 0x24, 0x00, 0x29, 0x24, 0x00, 0x61, + 0x24, 0x00, 0x65, 0x24, 0x00, 0x6F, 0x24, 0x00, 0x78, 0x24, 0x02, 0x59, + 0x24, 0x00, 0x68, 0x24, 0x00, 0x6B, 0x24, 0x00, 0x6C, 0x24, 0x00, 0x6D, + 0x24, 0x00, 0x6E, 0x24, 0x00, 0x70, 0x24, 0x00, 0x73, 0x24, 0x00, 0x74, + 0xC0, 0x00, 0x52, 0x00, 0x00, 0x73, 0xC0, 0x00, 0x61, 0x80, 0x00, 0x2F, + 0x00, 0x00, 0x63, 0xC0, 0x00, 0x61, 0x80, 0x00, 0x2F, 0x00, 0x00, 0x73, + 0x04, 0x00, 0x43, 0xC0, 0x00, 0xB0, 0x00, 0x00, 0x43, 0xC0, 0x00, 0x63, + 0x80, 0x00, 0x2F, 0x00, 0x00, 0x6F, 0xC0, 0x00, 0x63, 0x80, 0x00, 0x2F, + 0x00, 0x00, 0x75, 0x40, 0x01, 0x90, 0xC0, 0x00, 0xB0, 0x00, 0x00, 0x46, + 0x04, 0x00, 0x67, 0x04, 0x00, 0x48, 0x04, 0x00, 0x48, 0x04, 0x00, 0x48, + 0x04, 0x00, 0x68, 0x04, 0x01, 0x27, 0x04, 0x00, 0x49, 0x04, 0x00, 0x49, + 0x04, 0x00, 0x4C, 0x04, 0x00, 0x6C, 0x04, 0x00, 0x4E, 0xC0, 0x00, 0x4E, + 0x00, 0x00, 0x6F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x52, + 0x04, 0x00, 0x52, 0x04, 0x00, 0x52, 0xA0, 0x00, 0x53, 0x00, 0x00, 0x4D, + 0xC0, 0x00, 0x54, 0x80, 0x00, 0x45, 0x00, 0x00, 0x4C, 0xA0, 0x00, 0x54, + 0x00, 0x00, 0x4D, 0x04, 0x00, 0x5A, 0x00, 0x03, 0xA9, 0x04, 0x00, 0x5A, + 0x00, 0x00, 0x4B, 0x00, 0x00, 0xC5, 0x04, 0x00, 0x42, 0x04, 0x00, 0x43, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, 0x04, 0x00, 0x4D, + 0x04, 0x00, 0x6F, 0x40, 0x05, 0xD0, 0x40, 0x05, 0xD1, 0x40, 0x05, 0xD2, + 0x40, 0x05, 0xD3, 0x04, 0x00, 0x69, 0xC0, 0x00, 0x46, 0x80, 0x00, 0x41, + 0x00, 0x00, 0x58, 0x04, 0x03, 0xC0, 0x04, 0x03, 0xB3, 0x04, 0x03, 0x93, + 0x04, 0x03, 0xA0, 0x04, 0x22, 0x11, 0x04, 0x00, 0x44, 0x04, 0x00, 0x64, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x69, 0x04, 0x00, 0x6A, 0xBC, 0x00, 0x31, + 0x80, 0x20, 0x44, 0x00, 0x00, 0x37, 0xBC, 0x00, 0x31, 0x80, 0x20, 0x44, + 0x00, 0x00, 0x39, 0xBC, 0x00, 0x31, 0x80, 0x20, 0x44, 0x80, 0x00, 0x31, + 0x00, 0x00, 0x30, 0xBC, 0x00, 0x31, 0x80, 0x20, 0x44, 0x00, 0x00, 0x33, + 0xBC, 0x00, 0x32, 0x80, 0x20, 0x44, 0x00, 0x00, 0x33, 0xBC, 0x00, 0x31, + 0x80, 0x20, 0x44, 0x00, 0x00, 0x35, 0xBC, 0x00, 0x32, 0x80, 0x20, 0x44, + 0x00, 0x00, 0x35, 0xBC, 0x00, 0x33, 0x80, 0x20, 0x44, 0x00, 0x00, 0x35, + 0xBC, 0x00, 0x34, 0x80, 0x20, 0x44, 0x00, 0x00, 0x35, 0xBC, 0x00, 0x31, + 0x80, 0x20, 0x44, 0x00, 0x00, 0x36, 0xBC, 0x00, 0x35, 0x80, 0x20, 0x44, + 0x00, 0x00, 0x36, 0xBC, 0x00, 0x31, 0x80, 0x20, 0x44, 0x00, 0x00, 0x38, + 0xBC, 0x00, 0x33, 0x80, 0x20, 0x44, 0x00, 0x00, 0x38, 0xBC, 0x00, 0x35, + 0x80, 0x20, 0x44, 0x00, 0x00, 0x38, 0xBC, 0x00, 0x37, 0x80, 0x20, 0x44, + 0x00, 0x00, 0x38, 0xBC, 0x00, 0x31, 0x00, 0x20, 0x44, 0x40, 0x00, 0x49, + 0xC0, 0x00, 0x49, 0x00, 0x00, 0x49, 0xC0, 0x00, 0x49, 0x80, 0x00, 0x49, + 0x00, 0x00, 0x49, 0xC0, 0x00, 0x49, 0x00, 0x00, 0x56, 0x40, 0x00, 0x56, + 0xC0, 0x00, 0x56, 0x00, 0x00, 0x49, 0xC0, 0x00, 0x56, 0x80, 0x00, 0x49, + 0x00, 0x00, 0x49, 0xC0, 0x00, 0x56, 0x80, 0x00, 0x49, 0x80, 0x00, 0x49, + 0x00, 0x00, 0x49, 0xC0, 0x00, 0x49, 0x00, 0x00, 0x58, 0x40, 0x00, 0x58, + 0xC0, 0x00, 0x58, 0x00, 0x00, 0x49, 0xC0, 0x00, 0x58, 0x80, 0x00, 0x49, + 0x00, 0x00, 0x49, 0x40, 0x00, 0x4C, 0x40, 0x00, 0x43, 0x40, 0x00, 0x44, + 0x40, 0x00, 0x4D, 0x40, 0x00, 0x69, 0xC0, 0x00, 0x69, 0x00, 0x00, 0x69, + 0xC0, 0x00, 0x69, 0x80, 0x00, 0x69, 0x00, 0x00, 0x69, 0xC0, 0x00, 0x69, + 0x00, 0x00, 0x76, 0x40, 0x00, 0x76, 0xC0, 0x00, 0x76, 0x00, 0x00, 0x69, + 0xC0, 0x00, 0x76, 0x80, 0x00, 0x69, 0x00, 0x00, 0x69, 0xC0, 0x00, 0x76, + 0x80, 0x00, 0x69, 0x80, 0x00, 0x69, 0x00, 0x00, 0x69, 0xC0, 0x00, 0x69, + 0x00, 0x00, 0x78, 0x40, 0x00, 0x78, 0xC0, 0x00, 0x78, 0x00, 0x00, 0x69, + 0xC0, 0x00, 0x78, 0x80, 0x00, 0x69, 0x00, 0x00, 0x69, 0x40, 0x00, 0x6C, + 0x40, 0x00, 0x63, 0x40, 0x00, 0x64, 0x40, 0x00, 0x6D, 0xBC, 0x00, 0x30, + 0x80, 0x20, 0x44, 0x00, 0x00, 0x33, 0x80, 0x21, 0x90, 0x00, 0x03, 0x38, + 0x80, 0x21, 0x92, 0x00, 0x03, 0x38, 0x80, 0x21, 0x94, 0x00, 0x03, 0x38, + 0x80, 0x21, 0xD0, 0x00, 0x03, 0x38, 0x80, 0x21, 0xD4, 0x00, 0x03, 0x38, + 0x80, 0x21, 0xD2, 0x00, 0x03, 0x38, 0x80, 0x22, 0x03, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x08, 0x00, 0x03, 0x38, 0x80, 0x22, 0x0B, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x23, 0x00, 0x03, 0x38, 0x80, 0x22, 0x25, 0x00, 0x03, 0x38, + 0xC0, 0x22, 0x2B, 0x00, 0x22, 0x2B, 0xC0, 0x22, 0x2B, 0x80, 0x22, 0x2B, + 0x00, 0x22, 0x2B, 0xC0, 0x22, 0x2E, 0x00, 0x22, 0x2E, 0xC0, 0x22, 0x2E, + 0x80, 0x22, 0x2E, 0x00, 0x22, 0x2E, 0x80, 0x22, 0x3C, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x43, 0x00, 0x03, 0x38, 0x80, 0x22, 0x45, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x48, 0x00, 0x03, 0x38, 0x80, 0x00, 0x3D, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x61, 0x00, 0x03, 0x38, 0x80, 0x22, 0x4D, 0x00, 0x03, 0x38, + 0x80, 0x00, 0x3C, 0x00, 0x03, 0x38, 0x80, 0x00, 0x3E, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x64, 0x00, 0x03, 0x38, 0x80, 0x22, 0x65, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x72, 0x00, 0x03, 0x38, 0x80, 0x22, 0x73, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x76, 0x00, 0x03, 0x38, 0x80, 0x22, 0x77, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x7A, 0x00, 0x03, 0x38, 0x80, 0x22, 0x7B, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x82, 0x00, 0x03, 0x38, 0x80, 0x22, 0x83, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x86, 0x00, 0x03, 0x38, 0x80, 0x22, 0x87, 0x00, 0x03, 0x38, + 0x80, 0x22, 0xA2, 0x00, 0x03, 0x38, 0x80, 0x22, 0xA8, 0x00, 0x03, 0x38, + 0x80, 0x22, 0xA9, 0x00, 0x03, 0x38, 0x80, 0x22, 0xAB, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x7C, 0x00, 0x03, 0x38, 0x80, 0x22, 0x7D, 0x00, 0x03, 0x38, + 0x80, 0x22, 0x91, 0x00, 0x03, 0x38, 0x80, 0x22, 0x92, 0x00, 0x03, 0x38, + 0x80, 0x22, 0xB2, 0x00, 0x03, 0x38, 0x80, 0x22, 0xB3, 0x00, 0x03, 0x38, + 0x80, 0x22, 0xB4, 0x00, 0x03, 0x38, 0x80, 0x22, 0xB5, 0x00, 0x03, 0x38, + 0x00, 0x30, 0x08, 0x00, 0x30, 0x09, 0x1C, 0x00, 0x31, 0x1C, 0x00, 0x32, + 0x1C, 0x00, 0x33, 0x1C, 0x00, 0x34, 0x1C, 0x00, 0x35, 0x1C, 0x00, 0x36, + 0x1C, 0x00, 0x37, 0x1C, 0x00, 0x38, 0x1C, 0x00, 0x39, 0x9C, 0x00, 0x31, + 0x00, 0x00, 0x30, 0x9C, 0x00, 0x31, 0x00, 0x00, 0x31, 0x9C, 0x00, 0x31, + 0x00, 0x00, 0x32, 0x9C, 0x00, 0x31, 0x00, 0x00, 0x33, 0x9C, 0x00, 0x31, + 0x00, 0x00, 0x34, 0x9C, 0x00, 0x31, 0x00, 0x00, 0x35, 0x9C, 0x00, 0x31, + 0x00, 0x00, 0x36, 0x9C, 0x00, 0x31, 0x00, 0x00, 0x37, 0x9C, 0x00, 0x31, + 0x00, 0x00, 0x38, 0x9C, 0x00, 0x31, 0x00, 0x00, 0x39, 0x9C, 0x00, 0x32, + 0x00, 0x00, 0x30, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x31, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x32, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x33, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x34, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x35, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x36, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x37, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x38, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x39, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x31, 0x80, 0x00, 0x30, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x31, 0x80, 0x00, 0x31, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x31, 0x80, 0x00, 0x32, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x31, 0x80, 0x00, 0x33, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x31, 0x80, 0x00, 0x34, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x31, 0x80, 0x00, 0x35, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x31, 0x80, 0x00, 0x36, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x31, 0x80, 0x00, 0x37, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x31, 0x80, 0x00, 0x38, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x31, 0x80, 0x00, 0x39, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x32, 0x80, 0x00, 0x30, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x31, 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x32, 0x00, 0x00, 0x2E, + 0xC0, 0x00, 0x33, 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x34, 0x00, 0x00, 0x2E, + 0xC0, 0x00, 0x35, 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x36, 0x00, 0x00, 0x2E, + 0xC0, 0x00, 0x37, 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x38, 0x00, 0x00, 0x2E, + 0xC0, 0x00, 0x39, 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x30, + 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x31, 0x00, 0x00, 0x2E, + 0xC0, 0x00, 0x31, 0x80, 0x00, 0x32, 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x31, + 0x80, 0x00, 0x33, 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x34, + 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x35, 0x00, 0x00, 0x2E, + 0xC0, 0x00, 0x31, 0x80, 0x00, 0x36, 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x31, + 0x80, 0x00, 0x37, 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x38, + 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x39, 0x00, 0x00, 0x2E, + 0xC0, 0x00, 0x32, 0x80, 0x00, 0x30, 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x62, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x63, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x64, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x65, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x66, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x67, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x68, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x69, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x6A, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x6B, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x6C, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x6D, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x6E, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x6F, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x70, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x71, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x72, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x73, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x74, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x75, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x76, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x77, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x78, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x79, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x7A, + 0x00, 0x00, 0x29, 0x1C, 0x00, 0x41, 0x1C, 0x00, 0x42, 0x1C, 0x00, 0x43, + 0x1C, 0x00, 0x44, 0x1C, 0x00, 0x45, 0x1C, 0x00, 0x46, 0x1C, 0x00, 0x47, + 0x1C, 0x00, 0x48, 0x1C, 0x00, 0x49, 0x1C, 0x00, 0x4A, 0x1C, 0x00, 0x4B, + 0x1C, 0x00, 0x4C, 0x1C, 0x00, 0x4D, 0x1C, 0x00, 0x4E, 0x1C, 0x00, 0x4F, + 0x1C, 0x00, 0x50, 0x1C, 0x00, 0x51, 0x1C, 0x00, 0x52, 0x1C, 0x00, 0x53, + 0x1C, 0x00, 0x54, 0x1C, 0x00, 0x55, 0x1C, 0x00, 0x56, 0x1C, 0x00, 0x57, + 0x1C, 0x00, 0x58, 0x1C, 0x00, 0x59, 0x1C, 0x00, 0x5A, 0x1C, 0x00, 0x61, + 0x1C, 0x00, 0x62, 0x1C, 0x00, 0x63, 0x1C, 0x00, 0x64, 0x1C, 0x00, 0x65, + 0x1C, 0x00, 0x66, 0x1C, 0x00, 0x67, 0x1C, 0x00, 0x68, 0x1C, 0x00, 0x69, + 0x1C, 0x00, 0x6A, 0x1C, 0x00, 0x6B, 0x1C, 0x00, 0x6C, 0x1C, 0x00, 0x6D, + 0x1C, 0x00, 0x6E, 0x1C, 0x00, 0x6F, 0x1C, 0x00, 0x70, 0x1C, 0x00, 0x71, + 0x1C, 0x00, 0x72, 0x1C, 0x00, 0x73, 0x1C, 0x00, 0x74, 0x1C, 0x00, 0x75, + 0x1C, 0x00, 0x76, 0x1C, 0x00, 0x77, 0x1C, 0x00, 0x78, 0x1C, 0x00, 0x79, + 0x1C, 0x00, 0x7A, 0x1C, 0x00, 0x30, 0xC0, 0x22, 0x2B, 0x80, 0x22, 0x2B, + 0x80, 0x22, 0x2B, 0x00, 0x22, 0x2B, 0xC0, 0x00, 0x3A, 0x80, 0x00, 0x3A, + 0x00, 0x00, 0x3D, 0xC0, 0x00, 0x3D, 0x00, 0x00, 0x3D, 0xC0, 0x00, 0x3D, + 0x80, 0x00, 0x3D, 0x00, 0x00, 0x3D, 0x80, 0x2A, 0xDD, 0x00, 0x03, 0x38, + 0x24, 0x00, 0x6A, 0x20, 0x00, 0x56, 0x20, 0x2D, 0x61, 0x40, 0x6B, 0xCD, + 0x40, 0x9F, 0x9F, 0x40, 0x4E, 0x00, 0x40, 0x4E, 0x28, 0x40, 0x4E, 0x36, + 0x40, 0x4E, 0x3F, 0x40, 0x4E, 0x59, 0x40, 0x4E, 0x85, 0x40, 0x4E, 0x8C, + 0x40, 0x4E, 0xA0, 0x40, 0x4E, 0xBA, 0x40, 0x51, 0x3F, 0x40, 0x51, 0x65, + 0x40, 0x51, 0x6B, 0x40, 0x51, 0x82, 0x40, 0x51, 0x96, 0x40, 0x51, 0xAB, + 0x40, 0x51, 0xE0, 0x40, 0x51, 0xF5, 0x40, 0x52, 0x00, 0x40, 0x52, 0x9B, + 0x40, 0x52, 0xF9, 0x40, 0x53, 0x15, 0x40, 0x53, 0x1A, 0x40, 0x53, 0x38, + 0x40, 0x53, 0x41, 0x40, 0x53, 0x5C, 0x40, 0x53, 0x69, 0x40, 0x53, 0x82, + 0x40, 0x53, 0xB6, 0x40, 0x53, 0xC8, 0x40, 0x53, 0xE3, 0x40, 0x56, 0xD7, + 0x40, 0x57, 0x1F, 0x40, 0x58, 0xEB, 0x40, 0x59, 0x02, 0x40, 0x59, 0x0A, + 0x40, 0x59, 0x15, 0x40, 0x59, 0x27, 0x40, 0x59, 0x73, 0x40, 0x5B, 0x50, + 0x40, 0x5B, 0x80, 0x40, 0x5B, 0xF8, 0x40, 0x5C, 0x0F, 0x40, 0x5C, 0x22, + 0x40, 0x5C, 0x38, 0x40, 0x5C, 0x6E, 0x40, 0x5C, 0x71, 0x40, 0x5D, 0xDB, + 0x40, 0x5D, 0xE5, 0x40, 0x5D, 0xF1, 0x40, 0x5D, 0xFE, 0x40, 0x5E, 0x72, + 0x40, 0x5E, 0x7A, 0x40, 0x5E, 0x7F, 0x40, 0x5E, 0xF4, 0x40, 0x5E, 0xFE, + 0x40, 0x5F, 0x0B, 0x40, 0x5F, 0x13, 0x40, 0x5F, 0x50, 0x40, 0x5F, 0x61, + 0x40, 0x5F, 0x73, 0x40, 0x5F, 0xC3, 0x40, 0x62, 0x08, 0x40, 0x62, 0x36, + 0x40, 0x62, 0x4B, 0x40, 0x65, 0x2F, 0x40, 0x65, 0x34, 0x40, 0x65, 0x87, + 0x40, 0x65, 0x97, 0x40, 0x65, 0xA4, 0x40, 0x65, 0xB9, 0x40, 0x65, 0xE0, + 0x40, 0x65, 0xE5, 0x40, 0x66, 0xF0, 0x40, 0x67, 0x08, 0x40, 0x67, 0x28, + 0x40, 0x6B, 0x20, 0x40, 0x6B, 0x62, 0x40, 0x6B, 0x79, 0x40, 0x6B, 0xB3, + 0x40, 0x6B, 0xCB, 0x40, 0x6B, 0xD4, 0x40, 0x6B, 0xDB, 0x40, 0x6C, 0x0F, + 0x40, 0x6C, 0x14, 0x40, 0x6C, 0x34, 0x40, 0x70, 0x6B, 0x40, 0x72, 0x2A, + 0x40, 0x72, 0x36, 0x40, 0x72, 0x3B, 0x40, 0x72, 0x3F, 0x40, 0x72, 0x47, + 0x40, 0x72, 0x59, 0x40, 0x72, 0x5B, 0x40, 0x72, 0xAC, 0x40, 0x73, 0x84, + 0x40, 0x73, 0x89, 0x40, 0x74, 0xDC, 0x40, 0x74, 0xE6, 0x40, 0x75, 0x18, + 0x40, 0x75, 0x1F, 0x40, 0x75, 0x28, 0x40, 0x75, 0x30, 0x40, 0x75, 0x8B, + 0x40, 0x75, 0x92, 0x40, 0x76, 0x76, 0x40, 0x76, 0x7D, 0x40, 0x76, 0xAE, + 0x40, 0x76, 0xBF, 0x40, 0x76, 0xEE, 0x40, 0x77, 0xDB, 0x40, 0x77, 0xE2, + 0x40, 0x77, 0xF3, 0x40, 0x79, 0x3A, 0x40, 0x79, 0xB8, 0x40, 0x79, 0xBE, + 0x40, 0x7A, 0x74, 0x40, 0x7A, 0xCB, 0x40, 0x7A, 0xF9, 0x40, 0x7C, 0x73, + 0x40, 0x7C, 0xF8, 0x40, 0x7F, 0x36, 0x40, 0x7F, 0x51, 0x40, 0x7F, 0x8A, + 0x40, 0x7F, 0xBD, 0x40, 0x80, 0x01, 0x40, 0x80, 0x0C, 0x40, 0x80, 0x12, + 0x40, 0x80, 0x33, 0x40, 0x80, 0x7F, 0x40, 0x80, 0x89, 0x40, 0x81, 0xE3, + 0x40, 0x81, 0xEA, 0x40, 0x81, 0xF3, 0x40, 0x81, 0xFC, 0x40, 0x82, 0x0C, + 0x40, 0x82, 0x1B, 0x40, 0x82, 0x1F, 0x40, 0x82, 0x6E, 0x40, 0x82, 0x72, + 0x40, 0x82, 0x78, 0x40, 0x86, 0x4D, 0x40, 0x86, 0x6B, 0x40, 0x88, 0x40, + 0x40, 0x88, 0x4C, 0x40, 0x88, 0x63, 0x40, 0x89, 0x7E, 0x40, 0x89, 0x8B, + 0x40, 0x89, 0xD2, 0x40, 0x8A, 0x00, 0x40, 0x8C, 0x37, 0x40, 0x8C, 0x46, + 0x40, 0x8C, 0x55, 0x40, 0x8C, 0x78, 0x40, 0x8C, 0x9D, 0x40, 0x8D, 0x64, + 0x40, 0x8D, 0x70, 0x40, 0x8D, 0xB3, 0x40, 0x8E, 0xAB, 0x40, 0x8E, 0xCA, + 0x40, 0x8F, 0x9B, 0x40, 0x8F, 0xB0, 0x40, 0x8F, 0xB5, 0x40, 0x90, 0x91, + 0x40, 0x91, 0x49, 0x40, 0x91, 0xC6, 0x40, 0x91, 0xCC, 0x40, 0x91, 0xD1, + 0x40, 0x95, 0x77, 0x40, 0x95, 0x80, 0x40, 0x96, 0x1C, 0x40, 0x96, 0xB6, + 0x40, 0x96, 0xB9, 0x40, 0x96, 0xE8, 0x40, 0x97, 0x51, 0x40, 0x97, 0x5E, + 0x40, 0x97, 0x62, 0x40, 0x97, 0x69, 0x40, 0x97, 0xCB, 0x40, 0x97, 0xED, + 0x40, 0x97, 0xF3, 0x40, 0x98, 0x01, 0x40, 0x98, 0xA8, 0x40, 0x98, 0xDB, + 0x40, 0x98, 0xDF, 0x40, 0x99, 0x96, 0x40, 0x99, 0x99, 0x40, 0x99, 0xAC, + 0x40, 0x9A, 0xA8, 0x40, 0x9A, 0xD8, 0x40, 0x9A, 0xDF, 0x40, 0x9B, 0x25, + 0x40, 0x9B, 0x2F, 0x40, 0x9B, 0x32, 0x40, 0x9B, 0x3C, 0x40, 0x9B, 0x5A, + 0x40, 0x9C, 0xE5, 0x40, 0x9E, 0x75, 0x40, 0x9E, 0x7F, 0x40, 0x9E, 0xA5, + 0x40, 0x9E, 0xBB, 0x40, 0x9E, 0xC3, 0x40, 0x9E, 0xCD, 0x40, 0x9E, 0xD1, + 0x40, 0x9E, 0xF9, 0x40, 0x9E, 0xFD, 0x40, 0x9F, 0x0E, 0x40, 0x9F, 0x13, + 0x40, 0x9F, 0x20, 0x40, 0x9F, 0x3B, 0x40, 0x9F, 0x4A, 0x40, 0x9F, 0x52, + 0x40, 0x9F, 0x8D, 0x40, 0x9F, 0x9C, 0x40, 0x9F, 0xA0, 0x2C, 0x00, 0x20, + 0x40, 0x30, 0x12, 0x40, 0x53, 0x41, 0x40, 0x53, 0x44, 0x40, 0x53, 0x45, + 0x80, 0x30, 0x4B, 0x00, 0x30, 0x99, 0x80, 0x30, 0x4D, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x4F, 0x00, 0x30, 0x99, 0x80, 0x30, 0x51, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x53, 0x00, 0x30, 0x99, 0x80, 0x30, 0x55, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x57, 0x00, 0x30, 0x99, 0x80, 0x30, 0x59, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x5B, 0x00, 0x30, 0x99, 0x80, 0x30, 0x5D, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x5F, 0x00, 0x30, 0x99, 0x80, 0x30, 0x61, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x64, 0x00, 0x30, 0x99, 0x80, 0x30, 0x66, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x68, 0x00, 0x30, 0x99, 0x80, 0x30, 0x6F, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x6F, 0x00, 0x30, 0x9A, 0x80, 0x30, 0x72, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x72, 0x00, 0x30, 0x9A, 0x80, 0x30, 0x75, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x75, 0x00, 0x30, 0x9A, 0x80, 0x30, 0x78, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x78, 0x00, 0x30, 0x9A, 0x80, 0x30, 0x7B, 0x00, 0x30, 0x99, + 0x80, 0x30, 0x7B, 0x00, 0x30, 0x9A, 0x80, 0x30, 0x46, 0x00, 0x30, 0x99, + 0xC0, 0x00, 0x20, 0x00, 0x30, 0x99, 0xC0, 0x00, 0x20, 0x00, 0x30, 0x9A, + 0x80, 0x30, 0x9D, 0x00, 0x30, 0x99, 0xA8, 0x30, 0x88, 0x00, 0x30, 0x8A, + 0x80, 0x30, 0xAB, 0x00, 0x30, 0x99, 0x80, 0x30, 0xAD, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xAF, 0x00, 0x30, 0x99, 0x80, 0x30, 0xB1, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xB3, 0x00, 0x30, 0x99, 0x80, 0x30, 0xB5, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xB7, 0x00, 0x30, 0x99, 0x80, 0x30, 0xB9, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xBB, 0x00, 0x30, 0x99, 0x80, 0x30, 0xBD, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xBF, 0x00, 0x30, 0x99, 0x80, 0x30, 0xC1, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xC4, 0x00, 0x30, 0x99, 0x80, 0x30, 0xC6, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xC8, 0x00, 0x30, 0x99, 0x80, 0x30, 0xCF, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xCF, 0x00, 0x30, 0x9A, 0x80, 0x30, 0xD2, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xD2, 0x00, 0x30, 0x9A, 0x80, 0x30, 0xD5, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xD5, 0x00, 0x30, 0x9A, 0x80, 0x30, 0xD8, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xD8, 0x00, 0x30, 0x9A, 0x80, 0x30, 0xDB, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xDB, 0x00, 0x30, 0x9A, 0x80, 0x30, 0xA6, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xEF, 0x00, 0x30, 0x99, 0x80, 0x30, 0xF0, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xF1, 0x00, 0x30, 0x99, 0x80, 0x30, 0xF2, 0x00, 0x30, 0x99, + 0x80, 0x30, 0xFD, 0x00, 0x30, 0x99, 0xA8, 0x30, 0xB3, 0x00, 0x30, 0xC8, + 0x40, 0x11, 0x00, 0x40, 0x11, 0x01, 0x40, 0x11, 0xAA, 0x40, 0x11, 0x02, + 0x40, 0x11, 0xAC, 0x40, 0x11, 0xAD, 0x40, 0x11, 0x03, 0x40, 0x11, 0x04, + 0x40, 0x11, 0x05, 0x40, 0x11, 0xB0, 0x40, 0x11, 0xB1, 0x40, 0x11, 0xB2, + 0x40, 0x11, 0xB3, 0x40, 0x11, 0xB4, 0x40, 0x11, 0xB5, 0x40, 0x11, 0x1A, + 0x40, 0x11, 0x06, 0x40, 0x11, 0x07, 0x40, 0x11, 0x08, 0x40, 0x11, 0x21, + 0x40, 0x11, 0x09, 0x40, 0x11, 0x0A, 0x40, 0x11, 0x0B, 0x40, 0x11, 0x0C, + 0x40, 0x11, 0x0D, 0x40, 0x11, 0x0E, 0x40, 0x11, 0x0F, 0x40, 0x11, 0x10, + 0x40, 0x11, 0x11, 0x40, 0x11, 0x12, 0x40, 0x11, 0x61, 0x40, 0x11, 0x62, + 0x40, 0x11, 0x63, 0x40, 0x11, 0x64, 0x40, 0x11, 0x65, 0x40, 0x11, 0x66, + 0x40, 0x11, 0x67, 0x40, 0x11, 0x68, 0x40, 0x11, 0x69, 0x40, 0x11, 0x6A, + 0x40, 0x11, 0x6B, 0x40, 0x11, 0x6C, 0x40, 0x11, 0x6D, 0x40, 0x11, 0x6E, + 0x40, 0x11, 0x6F, 0x40, 0x11, 0x70, 0x40, 0x11, 0x71, 0x40, 0x11, 0x72, + 0x40, 0x11, 0x73, 0x40, 0x11, 0x74, 0x40, 0x11, 0x75, 0x40, 0x11, 0x60, + 0x40, 0x11, 0x14, 0x40, 0x11, 0x15, 0x40, 0x11, 0xC7, 0x40, 0x11, 0xC8, + 0x40, 0x11, 0xCC, 0x40, 0x11, 0xCE, 0x40, 0x11, 0xD3, 0x40, 0x11, 0xD7, + 0x40, 0x11, 0xD9, 0x40, 0x11, 0x1C, 0x40, 0x11, 0xDD, 0x40, 0x11, 0xDF, + 0x40, 0x11, 0x1D, 0x40, 0x11, 0x1E, 0x40, 0x11, 0x20, 0x40, 0x11, 0x22, + 0x40, 0x11, 0x23, 0x40, 0x11, 0x27, 0x40, 0x11, 0x29, 0x40, 0x11, 0x2B, + 0x40, 0x11, 0x2C, 0x40, 0x11, 0x2D, 0x40, 0x11, 0x2E, 0x40, 0x11, 0x2F, + 0x40, 0x11, 0x32, 0x40, 0x11, 0x36, 0x40, 0x11, 0x40, 0x40, 0x11, 0x47, + 0x40, 0x11, 0x4C, 0x40, 0x11, 0xF1, 0x40, 0x11, 0xF2, 0x40, 0x11, 0x57, + 0x40, 0x11, 0x58, 0x40, 0x11, 0x59, 0x40, 0x11, 0x84, 0x40, 0x11, 0x85, + 0x40, 0x11, 0x88, 0x40, 0x11, 0x91, 0x40, 0x11, 0x92, 0x40, 0x11, 0x94, + 0x40, 0x11, 0x9E, 0x40, 0x11, 0xA1, 0x20, 0x4E, 0x00, 0x20, 0x4E, 0x8C, + 0x20, 0x4E, 0x09, 0x20, 0x56, 0xDB, 0x20, 0x4E, 0x0A, 0x20, 0x4E, 0x2D, + 0x20, 0x4E, 0x0B, 0x20, 0x75, 0x32, 0x20, 0x4E, 0x59, 0x20, 0x4E, 0x19, + 0x20, 0x4E, 0x01, 0x20, 0x59, 0x29, 0x20, 0x57, 0x30, 0x20, 0x4E, 0xBA, + 0xC0, 0x00, 0x28, 0x80, 0x11, 0x00, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x11, 0x02, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x03, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x05, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x11, 0x06, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x11, 0x07, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x09, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x0B, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x11, 0x0C, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x11, 0x0E, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x0F, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x10, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x11, 0x11, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x11, 0x12, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x00, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x02, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x03, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x05, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x06, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x07, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x09, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x0B, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x0C, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x0E, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x0F, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x10, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x11, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x12, + 0x80, 0x11, 0x61, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x0C, + 0x80, 0x11, 0x6E, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x0B, + 0x80, 0x11, 0x69, 0x80, 0x11, 0x0C, 0x80, 0x11, 0x65, 0x80, 0x11, 0xAB, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x11, 0x0B, 0x80, 0x11, 0x69, + 0x80, 0x11, 0x12, 0x80, 0x11, 0x6E, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x4E, 0x00, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x4E, 0x8C, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x4E, 0x09, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x56, 0xDB, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x4E, 0x94, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x51, 0x6D, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x4E, 0x03, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x51, 0x6B, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x4E, 0x5D, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x53, 0x41, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x67, 0x08, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x70, 0x6B, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x6C, 0x34, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x67, 0x28, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x91, 0xD1, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x57, 0x1F, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x65, 0xE5, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x68, 0x2A, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x67, 0x09, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x79, 0x3E, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x54, 0x0D, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x72, 0x79, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x8C, 0xA1, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x79, 0x5D, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x52, 0xB4, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x4E, 0xE3, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x54, 0x7C, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x5B, 0x66, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x76, 0xE3, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x4F, 0x01, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x8C, 0xC7, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x53, 0x54, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x79, 0x6D, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x4F, 0x11, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x81, 0xEA, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x81, 0xF3, 0x00, 0x00, 0x29, 0x1C, 0x55, 0x4F, + 0x1C, 0x5E, 0x7C, 0x1C, 0x65, 0x87, 0x1C, 0x7B, 0x8F, 0xB8, 0x00, 0x50, + 0x80, 0x00, 0x54, 0x00, 0x00, 0x45, 0x9C, 0x00, 0x32, 0x00, 0x00, 0x31, + 0x9C, 0x00, 0x32, 0x00, 0x00, 0x32, 0x9C, 0x00, 0x32, 0x00, 0x00, 0x33, + 0x9C, 0x00, 0x32, 0x00, 0x00, 0x34, 0x9C, 0x00, 0x32, 0x00, 0x00, 0x35, + 0x9C, 0x00, 0x32, 0x00, 0x00, 0x36, 0x9C, 0x00, 0x32, 0x00, 0x00, 0x37, + 0x9C, 0x00, 0x32, 0x00, 0x00, 0x38, 0x9C, 0x00, 0x32, 0x00, 0x00, 0x39, + 0x9C, 0x00, 0x33, 0x00, 0x00, 0x30, 0x9C, 0x00, 0x33, 0x00, 0x00, 0x31, + 0x9C, 0x00, 0x33, 0x00, 0x00, 0x32, 0x9C, 0x00, 0x33, 0x00, 0x00, 0x33, + 0x9C, 0x00, 0x33, 0x00, 0x00, 0x34, 0x9C, 0x00, 0x33, 0x00, 0x00, 0x35, + 0x1C, 0x11, 0x00, 0x1C, 0x11, 0x02, 0x1C, 0x11, 0x03, 0x1C, 0x11, 0x05, + 0x1C, 0x11, 0x06, 0x1C, 0x11, 0x07, 0x1C, 0x11, 0x09, 0x1C, 0x11, 0x0B, + 0x1C, 0x11, 0x0C, 0x1C, 0x11, 0x0E, 0x1C, 0x11, 0x0F, 0x1C, 0x11, 0x10, + 0x1C, 0x11, 0x11, 0x1C, 0x11, 0x12, 0x9C, 0x11, 0x00, 0x00, 0x11, 0x61, + 0x9C, 0x11, 0x02, 0x00, 0x11, 0x61, 0x9C, 0x11, 0x03, 0x00, 0x11, 0x61, + 0x9C, 0x11, 0x05, 0x00, 0x11, 0x61, 0x9C, 0x11, 0x06, 0x00, 0x11, 0x61, + 0x9C, 0x11, 0x07, 0x00, 0x11, 0x61, 0x9C, 0x11, 0x09, 0x00, 0x11, 0x61, + 0x9C, 0x11, 0x0B, 0x00, 0x11, 0x61, 0x9C, 0x11, 0x0C, 0x00, 0x11, 0x61, + 0x9C, 0x11, 0x0E, 0x00, 0x11, 0x61, 0x9C, 0x11, 0x0F, 0x00, 0x11, 0x61, + 0x9C, 0x11, 0x10, 0x00, 0x11, 0x61, 0x9C, 0x11, 0x11, 0x00, 0x11, 0x61, + 0x9C, 0x11, 0x12, 0x00, 0x11, 0x61, 0x9C, 0x11, 0x0E, 0x80, 0x11, 0x61, + 0x80, 0x11, 0xB7, 0x80, 0x11, 0x00, 0x00, 0x11, 0x69, 0x9C, 0x11, 0x0C, + 0x80, 0x11, 0x6E, 0x80, 0x11, 0x0B, 0x00, 0x11, 0x74, 0x9C, 0x11, 0x0B, + 0x00, 0x11, 0x6E, 0x1C, 0x4E, 0x00, 0x1C, 0x4E, 0x8C, 0x1C, 0x4E, 0x09, + 0x1C, 0x56, 0xDB, 0x1C, 0x4E, 0x94, 0x1C, 0x51, 0x6D, 0x1C, 0x4E, 0x03, + 0x1C, 0x51, 0x6B, 0x1C, 0x4E, 0x5D, 0x1C, 0x53, 0x41, 0x1C, 0x67, 0x08, + 0x1C, 0x70, 0x6B, 0x1C, 0x6C, 0x34, 0x1C, 0x67, 0x28, 0x1C, 0x91, 0xD1, + 0x1C, 0x57, 0x1F, 0x1C, 0x65, 0xE5, 0x1C, 0x68, 0x2A, 0x1C, 0x67, 0x09, + 0x1C, 0x79, 0x3E, 0x1C, 0x54, 0x0D, 0x1C, 0x72, 0x79, 0x1C, 0x8C, 0xA1, + 0x1C, 0x79, 0x5D, 0x1C, 0x52, 0xB4, 0x1C, 0x79, 0xD8, 0x1C, 0x75, 0x37, + 0x1C, 0x59, 0x73, 0x1C, 0x90, 0x69, 0x1C, 0x51, 0x2A, 0x1C, 0x53, 0x70, + 0x1C, 0x6C, 0xE8, 0x1C, 0x98, 0x05, 0x1C, 0x4F, 0x11, 0x1C, 0x51, 0x99, + 0x1C, 0x6B, 0x63, 0x1C, 0x4E, 0x0A, 0x1C, 0x4E, 0x2D, 0x1C, 0x4E, 0x0B, + 0x1C, 0x5D, 0xE6, 0x1C, 0x53, 0xF3, 0x1C, 0x53, 0x3B, 0x1C, 0x5B, 0x97, + 0x1C, 0x5B, 0x66, 0x1C, 0x76, 0xE3, 0x1C, 0x4F, 0x01, 0x1C, 0x8C, 0xC7, + 0x1C, 0x53, 0x54, 0x1C, 0x59, 0x1C, 0x9C, 0x00, 0x33, 0x00, 0x00, 0x36, + 0x9C, 0x00, 0x33, 0x00, 0x00, 0x37, 0x9C, 0x00, 0x33, 0x00, 0x00, 0x38, + 0x9C, 0x00, 0x33, 0x00, 0x00, 0x39, 0x9C, 0x00, 0x34, 0x00, 0x00, 0x30, + 0x9C, 0x00, 0x34, 0x00, 0x00, 0x31, 0x9C, 0x00, 0x34, 0x00, 0x00, 0x32, + 0x9C, 0x00, 0x34, 0x00, 0x00, 0x33, 0x9C, 0x00, 0x34, 0x00, 0x00, 0x34, + 0x9C, 0x00, 0x34, 0x00, 0x00, 0x35, 0x9C, 0x00, 0x34, 0x00, 0x00, 0x36, + 0x9C, 0x00, 0x34, 0x00, 0x00, 0x37, 0x9C, 0x00, 0x34, 0x00, 0x00, 0x38, + 0x9C, 0x00, 0x34, 0x00, 0x00, 0x39, 0x9C, 0x00, 0x35, 0x00, 0x00, 0x30, + 0xC0, 0x00, 0x31, 0x00, 0x67, 0x08, 0xC0, 0x00, 0x32, 0x00, 0x67, 0x08, + 0xC0, 0x00, 0x33, 0x00, 0x67, 0x08, 0xC0, 0x00, 0x34, 0x00, 0x67, 0x08, + 0xC0, 0x00, 0x35, 0x00, 0x67, 0x08, 0xC0, 0x00, 0x36, 0x00, 0x67, 0x08, + 0xC0, 0x00, 0x37, 0x00, 0x67, 0x08, 0xC0, 0x00, 0x38, 0x00, 0x67, 0x08, + 0xC0, 0x00, 0x39, 0x00, 0x67, 0x08, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x30, + 0x00, 0x67, 0x08, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x31, 0x00, 0x67, 0x08, + 0xC0, 0x00, 0x31, 0x80, 0x00, 0x32, 0x00, 0x67, 0x08, 0xB8, 0x00, 0x48, + 0x00, 0x00, 0x67, 0xB8, 0x00, 0x65, 0x80, 0x00, 0x72, 0x00, 0x00, 0x67, + 0xB8, 0x00, 0x65, 0x00, 0x00, 0x56, 0xB8, 0x00, 0x4C, 0x80, 0x00, 0x54, + 0x00, 0x00, 0x44, 0x1C, 0x30, 0xA2, 0x1C, 0x30, 0xA4, 0x1C, 0x30, 0xA6, + 0x1C, 0x30, 0xA8, 0x1C, 0x30, 0xAA, 0x1C, 0x30, 0xAB, 0x1C, 0x30, 0xAD, + 0x1C, 0x30, 0xAF, 0x1C, 0x30, 0xB1, 0x1C, 0x30, 0xB3, 0x1C, 0x30, 0xB5, + 0x1C, 0x30, 0xB7, 0x1C, 0x30, 0xB9, 0x1C, 0x30, 0xBB, 0x1C, 0x30, 0xBD, + 0x1C, 0x30, 0xBF, 0x1C, 0x30, 0xC1, 0x1C, 0x30, 0xC4, 0x1C, 0x30, 0xC6, + 0x1C, 0x30, 0xC8, 0x1C, 0x30, 0xCA, 0x1C, 0x30, 0xCB, 0x1C, 0x30, 0xCC, + 0x1C, 0x30, 0xCD, 0x1C, 0x30, 0xCE, 0x1C, 0x30, 0xCF, 0x1C, 0x30, 0xD2, + 0x1C, 0x30, 0xD5, 0x1C, 0x30, 0xD8, 0x1C, 0x30, 0xDB, 0x1C, 0x30, 0xDE, + 0x1C, 0x30, 0xDF, 0x1C, 0x30, 0xE0, 0x1C, 0x30, 0xE1, 0x1C, 0x30, 0xE2, + 0x1C, 0x30, 0xE4, 0x1C, 0x30, 0xE6, 0x1C, 0x30, 0xE8, 0x1C, 0x30, 0xE9, + 0x1C, 0x30, 0xEA, 0x1C, 0x30, 0xEB, 0x1C, 0x30, 0xEC, 0x1C, 0x30, 0xED, + 0x1C, 0x30, 0xEF, 0x1C, 0x30, 0xF0, 0x1C, 0x30, 0xF1, 0x1C, 0x30, 0xF2, + 0xB8, 0x30, 0xA2, 0x80, 0x30, 0xD1, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xC8, + 0xB8, 0x30, 0xA2, 0x80, 0x30, 0xEB, 0x80, 0x30, 0xD5, 0x00, 0x30, 0xA1, + 0xB8, 0x30, 0xA2, 0x80, 0x30, 0xF3, 0x80, 0x30, 0xDA, 0x00, 0x30, 0xA2, + 0xB8, 0x30, 0xA2, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xEB, 0xB8, 0x30, 0xA4, + 0x80, 0x30, 0xCB, 0x80, 0x30, 0xF3, 0x00, 0x30, 0xB0, 0xB8, 0x30, 0xA4, + 0x80, 0x30, 0xF3, 0x00, 0x30, 0xC1, 0xB8, 0x30, 0xA6, 0x80, 0x30, 0xA9, + 0x00, 0x30, 0xF3, 0xB8, 0x30, 0xA8, 0x80, 0x30, 0xB9, 0x80, 0x30, 0xAF, + 0x80, 0x30, 0xFC, 0x00, 0x30, 0xC9, 0xB8, 0x30, 0xA8, 0x80, 0x30, 0xFC, + 0x80, 0x30, 0xAB, 0x00, 0x30, 0xFC, 0xB8, 0x30, 0xAA, 0x80, 0x30, 0xF3, + 0x00, 0x30, 0xB9, 0xB8, 0x30, 0xAA, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xE0, + 0xB8, 0x30, 0xAB, 0x80, 0x30, 0xA4, 0x00, 0x30, 0xEA, 0xB8, 0x30, 0xAB, + 0x80, 0x30, 0xE9, 0x80, 0x30, 0xC3, 0x00, 0x30, 0xC8, 0xB8, 0x30, 0xAB, + 0x80, 0x30, 0xED, 0x80, 0x30, 0xEA, 0x00, 0x30, 0xFC, 0xB8, 0x30, 0xAC, + 0x80, 0x30, 0xED, 0x00, 0x30, 0xF3, 0xB8, 0x30, 0xAC, 0x80, 0x30, 0xF3, + 0x00, 0x30, 0xDE, 0xB8, 0x30, 0xAE, 0x00, 0x30, 0xAC, 0xB8, 0x30, 0xAE, + 0x80, 0x30, 0xCB, 0x00, 0x30, 0xFC, 0xB8, 0x30, 0xAD, 0x80, 0x30, 0xE5, + 0x80, 0x30, 0xEA, 0x00, 0x30, 0xFC, 0xB8, 0x30, 0xAE, 0x80, 0x30, 0xEB, + 0x80, 0x30, 0xC0, 0x00, 0x30, 0xFC, 0xB8, 0x30, 0xAD, 0x00, 0x30, 0xED, + 0xB8, 0x30, 0xAD, 0x80, 0x30, 0xED, 0x80, 0x30, 0xB0, 0x80, 0x30, 0xE9, + 0x00, 0x30, 0xE0, 0xB8, 0x30, 0xAD, 0x80, 0x30, 0xED, 0x80, 0x30, 0xE1, + 0x80, 0x30, 0xFC, 0x80, 0x30, 0xC8, 0x00, 0x30, 0xEB, 0xB8, 0x30, 0xAD, + 0x80, 0x30, 0xED, 0x80, 0x30, 0xEF, 0x80, 0x30, 0xC3, 0x00, 0x30, 0xC8, + 0xB8, 0x30, 0xB0, 0x80, 0x30, 0xE9, 0x00, 0x30, 0xE0, 0xB8, 0x30, 0xB0, + 0x80, 0x30, 0xE9, 0x80, 0x30, 0xE0, 0x80, 0x30, 0xC8, 0x00, 0x30, 0xF3, + 0xB8, 0x30, 0xAF, 0x80, 0x30, 0xEB, 0x80, 0x30, 0xBC, 0x80, 0x30, 0xA4, + 0x00, 0x30, 0xED, 0xB8, 0x30, 0xAF, 0x80, 0x30, 0xED, 0x80, 0x30, 0xFC, + 0x00, 0x30, 0xCD, 0xB8, 0x30, 0xB1, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xB9, + 0xB8, 0x30, 0xB3, 0x80, 0x30, 0xEB, 0x00, 0x30, 0xCA, 0xB8, 0x30, 0xB3, + 0x80, 0x30, 0xFC, 0x00, 0x30, 0xDD, 0xB8, 0x30, 0xB5, 0x80, 0x30, 0xA4, + 0x80, 0x30, 0xAF, 0x00, 0x30, 0xEB, 0xB8, 0x30, 0xB5, 0x80, 0x30, 0xF3, + 0x80, 0x30, 0xC1, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xE0, 0xB8, 0x30, 0xB7, + 0x80, 0x30, 0xEA, 0x80, 0x30, 0xF3, 0x00, 0x30, 0xB0, 0xB8, 0x30, 0xBB, + 0x80, 0x30, 0xF3, 0x00, 0x30, 0xC1, 0xB8, 0x30, 0xBB, 0x80, 0x30, 0xF3, + 0x00, 0x30, 0xC8, 0xB8, 0x30, 0xC0, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xB9, + 0xB8, 0x30, 0xC7, 0x00, 0x30, 0xB7, 0xB8, 0x30, 0xC9, 0x00, 0x30, 0xEB, + 0xB8, 0x30, 0xC8, 0x00, 0x30, 0xF3, 0xB8, 0x30, 0xCA, 0x00, 0x30, 0xCE, + 0xB8, 0x30, 0xCE, 0x80, 0x30, 0xC3, 0x00, 0x30, 0xC8, 0xB8, 0x30, 0xCF, + 0x80, 0x30, 0xA4, 0x00, 0x30, 0xC4, 0xB8, 0x30, 0xD1, 0x80, 0x30, 0xFC, + 0x80, 0x30, 0xBB, 0x80, 0x30, 0xF3, 0x00, 0x30, 0xC8, 0xB8, 0x30, 0xD1, + 0x80, 0x30, 0xFC, 0x00, 0x30, 0xC4, 0xB8, 0x30, 0xD0, 0x80, 0x30, 0xFC, + 0x80, 0x30, 0xEC, 0x00, 0x30, 0xEB, 0xB8, 0x30, 0xD4, 0x80, 0x30, 0xA2, + 0x80, 0x30, 0xB9, 0x80, 0x30, 0xC8, 0x00, 0x30, 0xEB, 0xB8, 0x30, 0xD4, + 0x80, 0x30, 0xAF, 0x00, 0x30, 0xEB, 0xB8, 0x30, 0xD4, 0x00, 0x30, 0xB3, + 0xB8, 0x30, 0xD3, 0x00, 0x30, 0xEB, 0xB8, 0x30, 0xD5, 0x80, 0x30, 0xA1, + 0x80, 0x30, 0xE9, 0x80, 0x30, 0xC3, 0x00, 0x30, 0xC9, 0xB8, 0x30, 0xD5, + 0x80, 0x30, 0xA3, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xC8, 0xB8, 0x30, 0xD6, + 0x80, 0x30, 0xC3, 0x80, 0x30, 0xB7, 0x80, 0x30, 0xA7, 0x00, 0x30, 0xEB, + 0xB8, 0x30, 0xD5, 0x80, 0x30, 0xE9, 0x00, 0x30, 0xF3, 0xB8, 0x30, 0xD8, + 0x80, 0x30, 0xAF, 0x80, 0x30, 0xBF, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xEB, + 0xB8, 0x30, 0xDA, 0x00, 0x30, 0xBD, 0xB8, 0x30, 0xDA, 0x80, 0x30, 0xCB, + 0x00, 0x30, 0xD2, 0xB8, 0x30, 0xD8, 0x80, 0x30, 0xEB, 0x00, 0x30, 0xC4, + 0xB8, 0x30, 0xDA, 0x80, 0x30, 0xF3, 0x00, 0x30, 0xB9, 0xB8, 0x30, 0xDA, + 0x80, 0x30, 0xFC, 0x00, 0x30, 0xB8, 0xB8, 0x30, 0xD9, 0x80, 0x30, 0xFC, + 0x00, 0x30, 0xBF, 0xB8, 0x30, 0xDD, 0x80, 0x30, 0xA4, 0x80, 0x30, 0xF3, + 0x00, 0x30, 0xC8, 0xB8, 0x30, 0xDC, 0x80, 0x30, 0xEB, 0x00, 0x30, 0xC8, + 0xB8, 0x30, 0xDB, 0x00, 0x30, 0xF3, 0xB8, 0x30, 0xDD, 0x80, 0x30, 0xF3, + 0x00, 0x30, 0xC9, 0xB8, 0x30, 0xDB, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xEB, + 0xB8, 0x30, 0xDB, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xF3, 0xB8, 0x30, 0xDE, + 0x80, 0x30, 0xA4, 0x80, 0x30, 0xAF, 0x00, 0x30, 0xED, 0xB8, 0x30, 0xDE, + 0x80, 0x30, 0xA4, 0x00, 0x30, 0xEB, 0xB8, 0x30, 0xDE, 0x80, 0x30, 0xC3, + 0x00, 0x30, 0xCF, 0xB8, 0x30, 0xDE, 0x80, 0x30, 0xEB, 0x00, 0x30, 0xAF, + 0xB8, 0x30, 0xDE, 0x80, 0x30, 0xF3, 0x80, 0x30, 0xB7, 0x80, 0x30, 0xE7, + 0x00, 0x30, 0xF3, 0xB8, 0x30, 0xDF, 0x80, 0x30, 0xAF, 0x80, 0x30, 0xED, + 0x00, 0x30, 0xF3, 0xB8, 0x30, 0xDF, 0x00, 0x30, 0xEA, 0xB8, 0x30, 0xDF, + 0x80, 0x30, 0xEA, 0x80, 0x30, 0xD0, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xEB, + 0xB8, 0x30, 0xE1, 0x00, 0x30, 0xAC, 0xB8, 0x30, 0xE1, 0x80, 0x30, 0xAC, + 0x80, 0x30, 0xC8, 0x00, 0x30, 0xF3, 0xB8, 0x30, 0xE1, 0x80, 0x30, 0xFC, + 0x80, 0x30, 0xC8, 0x00, 0x30, 0xEB, 0xB8, 0x30, 0xE4, 0x80, 0x30, 0xFC, + 0x00, 0x30, 0xC9, 0xB8, 0x30, 0xE4, 0x80, 0x30, 0xFC, 0x00, 0x30, 0xEB, + 0xB8, 0x30, 0xE6, 0x80, 0x30, 0xA2, 0x00, 0x30, 0xF3, 0xB8, 0x30, 0xEA, + 0x80, 0x30, 0xC3, 0x80, 0x30, 0xC8, 0x00, 0x30, 0xEB, 0xB8, 0x30, 0xEA, + 0x00, 0x30, 0xE9, 0xB8, 0x30, 0xEB, 0x80, 0x30, 0xD4, 0x00, 0x30, 0xFC, + 0xB8, 0x30, 0xEB, 0x80, 0x30, 0xFC, 0x80, 0x30, 0xD6, 0x00, 0x30, 0xEB, + 0xB8, 0x30, 0xEC, 0x00, 0x30, 0xE0, 0xB8, 0x30, 0xEC, 0x80, 0x30, 0xF3, + 0x80, 0x30, 0xC8, 0x80, 0x30, 0xB2, 0x00, 0x30, 0xF3, 0xB8, 0x30, 0xEF, + 0x80, 0x30, 0xC3, 0x00, 0x30, 0xC8, 0xC0, 0x00, 0x30, 0x00, 0x70, 0xB9, + 0xC0, 0x00, 0x31, 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x32, 0x00, 0x70, 0xB9, + 0xC0, 0x00, 0x33, 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x34, 0x00, 0x70, 0xB9, + 0xC0, 0x00, 0x35, 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x36, 0x00, 0x70, 0xB9, + 0xC0, 0x00, 0x37, 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x38, 0x00, 0x70, 0xB9, + 0xC0, 0x00, 0x39, 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x30, + 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x31, 0x00, 0x70, 0xB9, + 0xC0, 0x00, 0x31, 0x80, 0x00, 0x32, 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x31, + 0x80, 0x00, 0x33, 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x34, + 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x35, 0x00, 0x70, 0xB9, + 0xC0, 0x00, 0x31, 0x80, 0x00, 0x36, 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x31, + 0x80, 0x00, 0x37, 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x38, + 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x39, 0x00, 0x70, 0xB9, + 0xC0, 0x00, 0x32, 0x80, 0x00, 0x30, 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x32, + 0x80, 0x00, 0x31, 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x32, 0x80, 0x00, 0x32, + 0x00, 0x70, 0xB9, 0xC0, 0x00, 0x32, 0x80, 0x00, 0x33, 0x00, 0x70, 0xB9, + 0xC0, 0x00, 0x32, 0x80, 0x00, 0x34, 0x00, 0x70, 0xB9, 0xB8, 0x00, 0x68, + 0x80, 0x00, 0x50, 0x00, 0x00, 0x61, 0xB8, 0x00, 0x64, 0x00, 0x00, 0x61, + 0xB8, 0x00, 0x41, 0x00, 0x00, 0x55, 0xB8, 0x00, 0x62, 0x80, 0x00, 0x61, + 0x00, 0x00, 0x72, 0xB8, 0x00, 0x6F, 0x00, 0x00, 0x56, 0xB8, 0x00, 0x70, + 0x00, 0x00, 0x63, 0xB8, 0x00, 0x64, 0x00, 0x00, 0x6D, 0xB8, 0x00, 0x64, + 0x80, 0x00, 0x6D, 0x00, 0x00, 0xB2, 0xB8, 0x00, 0x64, 0x80, 0x00, 0x6D, + 0x00, 0x00, 0xB3, 0xB8, 0x00, 0x49, 0x00, 0x00, 0x55, 0xB8, 0x5E, 0x73, + 0x00, 0x62, 0x10, 0xB8, 0x66, 0x2D, 0x00, 0x54, 0x8C, 0xB8, 0x59, 0x27, + 0x00, 0x6B, 0x63, 0xB8, 0x66, 0x0E, 0x00, 0x6C, 0xBB, 0xB8, 0x68, 0x2A, + 0x80, 0x5F, 0x0F, 0x80, 0x4F, 0x1A, 0x00, 0x79, 0x3E, 0xB8, 0x00, 0x70, + 0x00, 0x00, 0x41, 0xB8, 0x00, 0x6E, 0x00, 0x00, 0x41, 0xB8, 0x03, 0xBC, + 0x00, 0x00, 0x41, 0xB8, 0x00, 0x6D, 0x00, 0x00, 0x41, 0xB8, 0x00, 0x6B, + 0x00, 0x00, 0x41, 0xB8, 0x00, 0x4B, 0x00, 0x00, 0x42, 0xB8, 0x00, 0x4D, + 0x00, 0x00, 0x42, 0xB8, 0x00, 0x47, 0x00, 0x00, 0x42, 0xB8, 0x00, 0x63, + 0x80, 0x00, 0x61, 0x00, 0x00, 0x6C, 0xB8, 0x00, 0x6B, 0x80, 0x00, 0x63, + 0x80, 0x00, 0x61, 0x00, 0x00, 0x6C, 0xB8, 0x00, 0x70, 0x00, 0x00, 0x46, + 0xB8, 0x00, 0x6E, 0x00, 0x00, 0x46, 0xB8, 0x03, 0xBC, 0x00, 0x00, 0x46, + 0xB8, 0x03, 0xBC, 0x00, 0x00, 0x67, 0xB8, 0x00, 0x6D, 0x00, 0x00, 0x67, + 0xB8, 0x00, 0x6B, 0x00, 0x00, 0x67, 0xB8, 0x00, 0x48, 0x00, 0x00, 0x7A, + 0xB8, 0x00, 0x6B, 0x80, 0x00, 0x48, 0x00, 0x00, 0x7A, 0xB8, 0x00, 0x4D, + 0x80, 0x00, 0x48, 0x00, 0x00, 0x7A, 0xB8, 0x00, 0x47, 0x80, 0x00, 0x48, + 0x00, 0x00, 0x7A, 0xB8, 0x00, 0x54, 0x80, 0x00, 0x48, 0x00, 0x00, 0x7A, + 0xB8, 0x03, 0xBC, 0x00, 0x21, 0x13, 0xB8, 0x00, 0x6D, 0x00, 0x21, 0x13, + 0xB8, 0x00, 0x64, 0x00, 0x21, 0x13, 0xB8, 0x00, 0x6B, 0x00, 0x21, 0x13, + 0xB8, 0x00, 0x66, 0x00, 0x00, 0x6D, 0xB8, 0x00, 0x6E, 0x00, 0x00, 0x6D, + 0xB8, 0x03, 0xBC, 0x00, 0x00, 0x6D, 0xB8, 0x00, 0x6D, 0x00, 0x00, 0x6D, + 0xB8, 0x00, 0x63, 0x00, 0x00, 0x6D, 0xB8, 0x00, 0x6B, 0x00, 0x00, 0x6D, + 0xB8, 0x00, 0x6D, 0x80, 0x00, 0x6D, 0x00, 0x00, 0xB2, 0xB8, 0x00, 0x63, + 0x80, 0x00, 0x6D, 0x00, 0x00, 0xB2, 0xB8, 0x00, 0x6D, 0x00, 0x00, 0xB2, + 0xB8, 0x00, 0x6B, 0x80, 0x00, 0x6D, 0x00, 0x00, 0xB2, 0xB8, 0x00, 0x6D, + 0x80, 0x00, 0x6D, 0x00, 0x00, 0xB3, 0xB8, 0x00, 0x63, 0x80, 0x00, 0x6D, + 0x00, 0x00, 0xB3, 0xB8, 0x00, 0x6D, 0x00, 0x00, 0xB3, 0xB8, 0x00, 0x6B, + 0x80, 0x00, 0x6D, 0x00, 0x00, 0xB3, 0xB8, 0x00, 0x6D, 0x80, 0x22, 0x15, + 0x00, 0x00, 0x73, 0xB8, 0x00, 0x6D, 0x80, 0x22, 0x15, 0x80, 0x00, 0x73, + 0x00, 0x00, 0xB2, 0xB8, 0x00, 0x50, 0x00, 0x00, 0x61, 0xB8, 0x00, 0x6B, + 0x80, 0x00, 0x50, 0x00, 0x00, 0x61, 0xB8, 0x00, 0x4D, 0x80, 0x00, 0x50, + 0x00, 0x00, 0x61, 0xB8, 0x00, 0x47, 0x80, 0x00, 0x50, 0x00, 0x00, 0x61, + 0xB8, 0x00, 0x72, 0x80, 0x00, 0x61, 0x00, 0x00, 0x64, 0xB8, 0x00, 0x72, + 0x80, 0x00, 0x61, 0x80, 0x00, 0x64, 0x80, 0x22, 0x15, 0x00, 0x00, 0x73, + 0xB8, 0x00, 0x72, 0x80, 0x00, 0x61, 0x80, 0x00, 0x64, 0x80, 0x22, 0x15, + 0x80, 0x00, 0x73, 0x00, 0x00, 0xB2, 0xB8, 0x00, 0x70, 0x00, 0x00, 0x73, + 0xB8, 0x00, 0x6E, 0x00, 0x00, 0x73, 0xB8, 0x03, 0xBC, 0x00, 0x00, 0x73, + 0xB8, 0x00, 0x6D, 0x00, 0x00, 0x73, 0xB8, 0x00, 0x70, 0x00, 0x00, 0x56, + 0xB8, 0x00, 0x6E, 0x00, 0x00, 0x56, 0xB8, 0x03, 0xBC, 0x00, 0x00, 0x56, + 0xB8, 0x00, 0x6D, 0x00, 0x00, 0x56, 0xB8, 0x00, 0x6B, 0x00, 0x00, 0x56, + 0xB8, 0x00, 0x4D, 0x00, 0x00, 0x56, 0xB8, 0x00, 0x70, 0x00, 0x00, 0x57, + 0xB8, 0x00, 0x6E, 0x00, 0x00, 0x57, 0xB8, 0x03, 0xBC, 0x00, 0x00, 0x57, + 0xB8, 0x00, 0x6D, 0x00, 0x00, 0x57, 0xB8, 0x00, 0x6B, 0x00, 0x00, 0x57, + 0xB8, 0x00, 0x4D, 0x00, 0x00, 0x57, 0xB8, 0x00, 0x6B, 0x00, 0x03, 0xA9, + 0xB8, 0x00, 0x4D, 0x00, 0x03, 0xA9, 0xB8, 0x00, 0x61, 0x80, 0x00, 0x2E, + 0x80, 0x00, 0x6D, 0x00, 0x00, 0x2E, 0xB8, 0x00, 0x42, 0x00, 0x00, 0x71, + 0xB8, 0x00, 0x63, 0x00, 0x00, 0x63, 0xB8, 0x00, 0x63, 0x00, 0x00, 0x64, + 0xB8, 0x00, 0x43, 0x80, 0x22, 0x15, 0x80, 0x00, 0x6B, 0x00, 0x00, 0x67, + 0xB8, 0x00, 0x43, 0x80, 0x00, 0x6F, 0x00, 0x00, 0x2E, 0xB8, 0x00, 0x64, + 0x00, 0x00, 0x42, 0xB8, 0x00, 0x47, 0x00, 0x00, 0x79, 0xB8, 0x00, 0x68, + 0x00, 0x00, 0x61, 0xB8, 0x00, 0x48, 0x00, 0x00, 0x50, 0xB8, 0x00, 0x69, + 0x00, 0x00, 0x6E, 0xB8, 0x00, 0x4B, 0x00, 0x00, 0x4B, 0xB8, 0x00, 0x4B, + 0x00, 0x00, 0x4D, 0xB8, 0x00, 0x6B, 0x00, 0x00, 0x74, 0xB8, 0x00, 0x6C, + 0x00, 0x00, 0x6D, 0xB8, 0x00, 0x6C, 0x00, 0x00, 0x6E, 0xB8, 0x00, 0x6C, + 0x80, 0x00, 0x6F, 0x00, 0x00, 0x67, 0xB8, 0x00, 0x6C, 0x00, 0x00, 0x78, + 0xB8, 0x00, 0x6D, 0x00, 0x00, 0x62, 0xB8, 0x00, 0x6D, 0x80, 0x00, 0x69, + 0x00, 0x00, 0x6C, 0xB8, 0x00, 0x6D, 0x80, 0x00, 0x6F, 0x00, 0x00, 0x6C, + 0xB8, 0x00, 0x50, 0x00, 0x00, 0x48, 0xB8, 0x00, 0x70, 0x80, 0x00, 0x2E, + 0x80, 0x00, 0x6D, 0x00, 0x00, 0x2E, 0xB8, 0x00, 0x50, 0x80, 0x00, 0x50, + 0x00, 0x00, 0x4D, 0xB8, 0x00, 0x50, 0x00, 0x00, 0x52, 0xB8, 0x00, 0x73, + 0x00, 0x00, 0x72, 0xB8, 0x00, 0x53, 0x00, 0x00, 0x76, 0xB8, 0x00, 0x57, + 0x00, 0x00, 0x62, 0xB8, 0x00, 0x56, 0x80, 0x22, 0x15, 0x00, 0x00, 0x6D, + 0xB8, 0x00, 0x41, 0x80, 0x22, 0x15, 0x00, 0x00, 0x6D, 0xC0, 0x00, 0x31, + 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x32, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x33, + 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x34, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x35, + 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x36, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x37, + 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x38, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x39, + 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x30, 0x00, 0x65, 0xE5, + 0xC0, 0x00, 0x31, 0x80, 0x00, 0x31, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x31, + 0x80, 0x00, 0x32, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x33, + 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x34, 0x00, 0x65, 0xE5, + 0xC0, 0x00, 0x31, 0x80, 0x00, 0x35, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x31, + 0x80, 0x00, 0x36, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x37, + 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x38, 0x00, 0x65, 0xE5, + 0xC0, 0x00, 0x31, 0x80, 0x00, 0x39, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x32, + 0x80, 0x00, 0x30, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x32, 0x80, 0x00, 0x31, + 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x32, 0x80, 0x00, 0x32, 0x00, 0x65, 0xE5, + 0xC0, 0x00, 0x32, 0x80, 0x00, 0x33, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x32, + 0x80, 0x00, 0x34, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x32, 0x80, 0x00, 0x35, + 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x32, 0x80, 0x00, 0x36, 0x00, 0x65, 0xE5, + 0xC0, 0x00, 0x32, 0x80, 0x00, 0x37, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x32, + 0x80, 0x00, 0x38, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x32, 0x80, 0x00, 0x39, + 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x33, 0x80, 0x00, 0x30, 0x00, 0x65, 0xE5, + 0xC0, 0x00, 0x33, 0x80, 0x00, 0x31, 0x00, 0x65, 0xE5, 0xB8, 0x00, 0x67, + 0x80, 0x00, 0x61, 0x00, 0x00, 0x6C, 0x20, 0x04, 0x4A, 0x20, 0x04, 0x4C, + 0x20, 0xA7, 0x6F, 0x20, 0x01, 0x26, 0x20, 0x01, 0x53, 0x20, 0xA7, 0x27, + 0x20, 0xAB, 0x37, 0x20, 0x02, 0x6B, 0x20, 0xAB, 0x52, 0x00, 0x8C, 0x48, + 0x00, 0x66, 0xF4, 0x00, 0x8E, 0xCA, 0x00, 0x8C, 0xC8, 0x00, 0x6E, 0xD1, + 0x00, 0x4E, 0x32, 0x00, 0x53, 0xE5, 0x00, 0x9F, 0x9C, 0x00, 0x9F, 0x9C, + 0x00, 0x59, 0x51, 0x00, 0x91, 0xD1, 0x00, 0x55, 0x87, 0x00, 0x59, 0x48, + 0x00, 0x61, 0xF6, 0x00, 0x76, 0x69, 0x00, 0x7F, 0x85, 0x00, 0x86, 0x3F, + 0x00, 0x87, 0xBA, 0x00, 0x88, 0xF8, 0x00, 0x90, 0x8F, 0x00, 0x6A, 0x02, + 0x00, 0x6D, 0x1B, 0x00, 0x70, 0xD9, 0x00, 0x73, 0xDE, 0x00, 0x84, 0x3D, + 0x00, 0x91, 0x6A, 0x00, 0x99, 0xF1, 0x00, 0x4E, 0x82, 0x00, 0x53, 0x75, + 0x00, 0x6B, 0x04, 0x00, 0x72, 0x1B, 0x00, 0x86, 0x2D, 0x00, 0x9E, 0x1E, + 0x00, 0x5D, 0x50, 0x00, 0x6F, 0xEB, 0x00, 0x85, 0xCD, 0x00, 0x89, 0x64, + 0x00, 0x62, 0xC9, 0x00, 0x81, 0xD8, 0x00, 0x88, 0x1F, 0x00, 0x5E, 0xCA, + 0x00, 0x67, 0x17, 0x00, 0x6D, 0x6A, 0x00, 0x72, 0xFC, 0x00, 0x90, 0xCE, + 0x00, 0x4F, 0x86, 0x00, 0x51, 0xB7, 0x00, 0x52, 0xDE, 0x00, 0x64, 0xC4, + 0x00, 0x6A, 0xD3, 0x00, 0x72, 0x10, 0x00, 0x76, 0xE7, 0x00, 0x80, 0x01, + 0x00, 0x86, 0x06, 0x00, 0x86, 0x5C, 0x00, 0x8D, 0xEF, 0x00, 0x97, 0x32, + 0x00, 0x9B, 0x6F, 0x00, 0x9D, 0xFA, 0x00, 0x78, 0x8C, 0x00, 0x79, 0x7F, + 0x00, 0x7D, 0xA0, 0x00, 0x83, 0xC9, 0x00, 0x93, 0x04, 0x00, 0x9E, 0x7F, + 0x00, 0x8A, 0xD6, 0x00, 0x58, 0xDF, 0x00, 0x5F, 0x04, 0x00, 0x7C, 0x60, + 0x00, 0x80, 0x7E, 0x00, 0x72, 0x62, 0x00, 0x78, 0xCA, 0x00, 0x8C, 0xC2, + 0x00, 0x96, 0xF7, 0x00, 0x58, 0xD8, 0x00, 0x5C, 0x62, 0x00, 0x6A, 0x13, + 0x00, 0x6D, 0xDA, 0x00, 0x6F, 0x0F, 0x00, 0x7D, 0x2F, 0x00, 0x7E, 0x37, + 0x00, 0x96, 0x4B, 0x00, 0x52, 0xD2, 0x00, 0x80, 0x8B, 0x00, 0x51, 0xDC, + 0x00, 0x51, 0xCC, 0x00, 0x7A, 0x1C, 0x00, 0x7D, 0xBE, 0x00, 0x83, 0xF1, + 0x00, 0x96, 0x75, 0x00, 0x8B, 0x80, 0x00, 0x62, 0xCF, 0x00, 0x6A, 0x02, + 0x00, 0x8A, 0xFE, 0x00, 0x4E, 0x39, 0x00, 0x5B, 0xE7, 0x00, 0x60, 0x12, + 0x00, 0x73, 0x87, 0x00, 0x75, 0x70, 0x00, 0x53, 0x17, 0x00, 0x78, 0xFB, + 0x00, 0x4F, 0xBF, 0x00, 0x5F, 0xA9, 0x00, 0x4E, 0x0D, 0x00, 0x6C, 0xCC, + 0x00, 0x65, 0x78, 0x00, 0x7D, 0x22, 0x00, 0x53, 0xC3, 0x00, 0x58, 0x5E, + 0x00, 0x77, 0x01, 0x00, 0x84, 0x49, 0x00, 0x8A, 0xAA, 0x00, 0x6B, 0xBA, + 0x00, 0x8F, 0xB0, 0x00, 0x6C, 0x88, 0x00, 0x62, 0xFE, 0x00, 0x82, 0xE5, + 0x00, 0x63, 0xA0, 0x00, 0x75, 0x65, 0x00, 0x4E, 0xAE, 0x00, 0x51, 0x69, + 0x00, 0x51, 0xC9, 0x00, 0x68, 0x81, 0x00, 0x7C, 0xE7, 0x00, 0x82, 0x6F, + 0x00, 0x8A, 0xD2, 0x00, 0x91, 0xCF, 0x00, 0x52, 0xF5, 0x00, 0x54, 0x42, + 0x00, 0x59, 0x73, 0x00, 0x5E, 0xEC, 0x00, 0x65, 0xC5, 0x00, 0x6F, 0xFE, + 0x00, 0x79, 0x2A, 0x00, 0x95, 0xAD, 0x00, 0x9A, 0x6A, 0x00, 0x9E, 0x97, + 0x00, 0x9E, 0xCE, 0x00, 0x52, 0x9B, 0x00, 0x66, 0xC6, 0x00, 0x6B, 0x77, + 0x00, 0x8F, 0x62, 0x00, 0x5E, 0x74, 0x00, 0x61, 0x90, 0x00, 0x62, 0x00, + 0x00, 0x64, 0x9A, 0x00, 0x6F, 0x23, 0x00, 0x71, 0x49, 0x00, 0x74, 0x89, + 0x00, 0x79, 0xCA, 0x00, 0x7D, 0xF4, 0x00, 0x80, 0x6F, 0x00, 0x8F, 0x26, + 0x00, 0x84, 0xEE, 0x00, 0x90, 0x23, 0x00, 0x93, 0x4A, 0x00, 0x52, 0x17, + 0x00, 0x52, 0xA3, 0x00, 0x54, 0xBD, 0x00, 0x70, 0xC8, 0x00, 0x88, 0xC2, + 0x00, 0x8A, 0xAA, 0x00, 0x5E, 0xC9, 0x00, 0x5F, 0xF5, 0x00, 0x63, 0x7B, + 0x00, 0x6B, 0xAE, 0x00, 0x7C, 0x3E, 0x00, 0x73, 0x75, 0x00, 0x4E, 0xE4, + 0x00, 0x56, 0xF9, 0x00, 0x5B, 0xE7, 0x00, 0x5D, 0xBA, 0x00, 0x60, 0x1C, + 0x00, 0x73, 0xB2, 0x00, 0x74, 0x69, 0x00, 0x7F, 0x9A, 0x00, 0x80, 0x46, + 0x00, 0x92, 0x34, 0x00, 0x96, 0xF6, 0x00, 0x97, 0x48, 0x00, 0x98, 0x18, + 0x00, 0x4F, 0x8B, 0x00, 0x79, 0xAE, 0x00, 0x91, 0xB4, 0x00, 0x96, 0xB8, + 0x00, 0x60, 0xE1, 0x00, 0x4E, 0x86, 0x00, 0x50, 0xDA, 0x00, 0x5B, 0xEE, + 0x00, 0x5C, 0x3F, 0x00, 0x65, 0x99, 0x00, 0x6A, 0x02, 0x00, 0x71, 0xCE, + 0x00, 0x76, 0x42, 0x00, 0x84, 0xFC, 0x00, 0x90, 0x7C, 0x00, 0x9F, 0x8D, + 0x00, 0x66, 0x88, 0x00, 0x96, 0x2E, 0x00, 0x52, 0x89, 0x00, 0x67, 0x7B, + 0x00, 0x67, 0xF3, 0x00, 0x6D, 0x41, 0x00, 0x6E, 0x9C, 0x00, 0x74, 0x09, + 0x00, 0x75, 0x59, 0x00, 0x78, 0x6B, 0x00, 0x7D, 0x10, 0x00, 0x98, 0x5E, + 0x00, 0x51, 0x6D, 0x00, 0x62, 0x2E, 0x00, 0x96, 0x78, 0x00, 0x50, 0x2B, + 0x00, 0x5D, 0x19, 0x00, 0x6D, 0xEA, 0x00, 0x8F, 0x2A, 0x00, 0x5F, 0x8B, + 0x00, 0x61, 0x44, 0x00, 0x68, 0x17, 0x00, 0x73, 0x87, 0x00, 0x96, 0x86, + 0x00, 0x52, 0x29, 0x00, 0x54, 0x0F, 0x00, 0x5C, 0x65, 0x00, 0x66, 0x13, + 0x00, 0x67, 0x4E, 0x00, 0x68, 0xA8, 0x00, 0x6C, 0xE5, 0x00, 0x74, 0x06, + 0x00, 0x75, 0xE2, 0x00, 0x7F, 0x79, 0x00, 0x88, 0xCF, 0x00, 0x88, 0xE1, + 0x00, 0x91, 0xCC, 0x00, 0x96, 0xE2, 0x00, 0x53, 0x3F, 0x00, 0x6E, 0xBA, + 0x00, 0x54, 0x1D, 0x00, 0x71, 0xD0, 0x00, 0x74, 0x98, 0x00, 0x85, 0xFA, + 0x00, 0x96, 0xA3, 0x00, 0x9C, 0x57, 0x00, 0x9E, 0x9F, 0x00, 0x67, 0x97, + 0x00, 0x6D, 0xCB, 0x00, 0x81, 0xE8, 0x00, 0x7A, 0xCB, 0x00, 0x7B, 0x20, + 0x00, 0x7C, 0x92, 0x00, 0x72, 0xC0, 0x00, 0x70, 0x99, 0x00, 0x8B, 0x58, + 0x00, 0x4E, 0xC0, 0x00, 0x83, 0x36, 0x00, 0x52, 0x3A, 0x00, 0x52, 0x07, + 0x00, 0x5E, 0xA6, 0x00, 0x62, 0xD3, 0x00, 0x7C, 0xD6, 0x00, 0x5B, 0x85, + 0x00, 0x6D, 0x1E, 0x00, 0x66, 0xB4, 0x00, 0x8F, 0x3B, 0x00, 0x88, 0x4C, + 0x00, 0x96, 0x4D, 0x00, 0x89, 0x8B, 0x00, 0x5E, 0xD3, 0x00, 0x51, 0x40, + 0x00, 0x55, 0xC0, 0x00, 0x58, 0x5A, 0x00, 0x66, 0x74, 0x00, 0x51, 0xDE, + 0x00, 0x73, 0x2A, 0x00, 0x76, 0xCA, 0x00, 0x79, 0x3C, 0x00, 0x79, 0x5E, + 0x00, 0x79, 0x65, 0x00, 0x79, 0x8F, 0x00, 0x97, 0x56, 0x00, 0x7C, 0xBE, + 0x00, 0x7F, 0xBD, 0x00, 0x86, 0x12, 0x00, 0x8A, 0xF8, 0x00, 0x90, 0x38, + 0x00, 0x90, 0xFD, 0x00, 0x98, 0xEF, 0x00, 0x98, 0xFC, 0x00, 0x99, 0x28, + 0x00, 0x9D, 0xB4, 0x00, 0x90, 0xDE, 0x00, 0x96, 0xB7, 0x00, 0x4F, 0xAE, + 0x00, 0x50, 0xE7, 0x00, 0x51, 0x4D, 0x00, 0x52, 0xC9, 0x00, 0x52, 0xE4, + 0x00, 0x53, 0x51, 0x00, 0x55, 0x9D, 0x00, 0x56, 0x06, 0x00, 0x56, 0x68, + 0x00, 0x58, 0x40, 0x00, 0x58, 0xA8, 0x00, 0x5C, 0x64, 0x00, 0x5C, 0x6E, + 0x00, 0x60, 0x94, 0x00, 0x61, 0x68, 0x00, 0x61, 0x8E, 0x00, 0x61, 0xF2, + 0x00, 0x65, 0x4F, 0x00, 0x65, 0xE2, 0x00, 0x66, 0x91, 0x00, 0x68, 0x85, + 0x00, 0x6D, 0x77, 0x00, 0x6E, 0x1A, 0x00, 0x6F, 0x22, 0x00, 0x71, 0x6E, + 0x00, 0x72, 0x2B, 0x00, 0x74, 0x22, 0x00, 0x78, 0x91, 0x00, 0x79, 0x3E, + 0x00, 0x79, 0x49, 0x00, 0x79, 0x48, 0x00, 0x79, 0x50, 0x00, 0x79, 0x56, + 0x00, 0x79, 0x5D, 0x00, 0x79, 0x8D, 0x00, 0x79, 0x8E, 0x00, 0x7A, 0x40, + 0x00, 0x7A, 0x81, 0x00, 0x7B, 0xC0, 0x00, 0x7D, 0xF4, 0x00, 0x7E, 0x09, + 0x00, 0x7E, 0x41, 0x00, 0x7F, 0x72, 0x00, 0x80, 0x05, 0x00, 0x81, 0xED, + 0x00, 0x82, 0x79, 0x00, 0x82, 0x79, 0x00, 0x84, 0x57, 0x00, 0x89, 0x10, + 0x00, 0x89, 0x96, 0x00, 0x8B, 0x01, 0x00, 0x8B, 0x39, 0x00, 0x8C, 0xD3, + 0x00, 0x8D, 0x08, 0x00, 0x8F, 0xB6, 0x00, 0x90, 0x38, 0x00, 0x96, 0xE3, + 0x00, 0x97, 0xFF, 0x00, 0x98, 0x3B, 0x00, 0x60, 0x75, 0x02, 0x42, 0xEE, + 0x00, 0x82, 0x18, 0x00, 0x4E, 0x26, 0x00, 0x51, 0xB5, 0x00, 0x51, 0x68, + 0x00, 0x4F, 0x80, 0x00, 0x51, 0x45, 0x00, 0x51, 0x80, 0x00, 0x52, 0xC7, + 0x00, 0x52, 0xFA, 0x00, 0x55, 0x9D, 0x00, 0x55, 0x55, 0x00, 0x55, 0x99, + 0x00, 0x55, 0xE2, 0x00, 0x58, 0x5A, 0x00, 0x58, 0xB3, 0x00, 0x59, 0x44, + 0x00, 0x59, 0x54, 0x00, 0x5A, 0x62, 0x00, 0x5B, 0x28, 0x00, 0x5E, 0xD2, + 0x00, 0x5E, 0xD9, 0x00, 0x5F, 0x69, 0x00, 0x5F, 0xAD, 0x00, 0x60, 0xD8, + 0x00, 0x61, 0x4E, 0x00, 0x61, 0x08, 0x00, 0x61, 0x8E, 0x00, 0x61, 0x60, + 0x00, 0x61, 0xF2, 0x00, 0x62, 0x34, 0x00, 0x63, 0xC4, 0x00, 0x64, 0x1C, + 0x00, 0x64, 0x52, 0x00, 0x65, 0x56, 0x00, 0x66, 0x74, 0x00, 0x67, 0x17, + 0x00, 0x67, 0x1B, 0x00, 0x67, 0x56, 0x00, 0x6B, 0x79, 0x00, 0x6B, 0xBA, + 0x00, 0x6D, 0x41, 0x00, 0x6E, 0xDB, 0x00, 0x6E, 0xCB, 0x00, 0x6F, 0x22, + 0x00, 0x70, 0x1E, 0x00, 0x71, 0x6E, 0x00, 0x77, 0xA7, 0x00, 0x72, 0x35, + 0x00, 0x72, 0xAF, 0x00, 0x73, 0x2A, 0x00, 0x74, 0x71, 0x00, 0x75, 0x06, + 0x00, 0x75, 0x3B, 0x00, 0x76, 0x1D, 0x00, 0x76, 0x1F, 0x00, 0x76, 0xCA, + 0x00, 0x76, 0xDB, 0x00, 0x76, 0xF4, 0x00, 0x77, 0x4A, 0x00, 0x77, 0x40, + 0x00, 0x78, 0xCC, 0x00, 0x7A, 0xB1, 0x00, 0x7B, 0xC0, 0x00, 0x7C, 0x7B, + 0x00, 0x7D, 0x5B, 0x00, 0x7D, 0xF4, 0x00, 0x7F, 0x3E, 0x00, 0x80, 0x05, + 0x00, 0x83, 0x52, 0x00, 0x83, 0xEF, 0x00, 0x87, 0x79, 0x00, 0x89, 0x41, + 0x00, 0x89, 0x86, 0x00, 0x89, 0x96, 0x00, 0x8A, 0xBF, 0x00, 0x8A, 0xF8, + 0x00, 0x8A, 0xCB, 0x00, 0x8B, 0x01, 0x00, 0x8A, 0xFE, 0x00, 0x8A, 0xED, + 0x00, 0x8B, 0x39, 0x00, 0x8B, 0x8A, 0x00, 0x8D, 0x08, 0x00, 0x8F, 0x38, + 0x00, 0x90, 0x72, 0x00, 0x91, 0x99, 0x00, 0x92, 0x76, 0x00, 0x96, 0x7C, + 0x00, 0x96, 0xE3, 0x00, 0x97, 0x56, 0x00, 0x97, 0xDB, 0x00, 0x97, 0xFF, + 0x00, 0x98, 0x0B, 0x00, 0x98, 0x3B, 0x00, 0x9B, 0x12, 0x00, 0x9F, 0x9C, + 0x02, 0x28, 0x4A, 0x02, 0x28, 0x44, 0x02, 0x33, 0xD5, 0x00, 0x3B, 0x9D, + 0x00, 0x40, 0x18, 0x00, 0x40, 0x39, 0x02, 0x52, 0x49, 0x02, 0x5C, 0xD0, + 0x02, 0x7E, 0xD3, 0x00, 0x9F, 0x43, 0x00, 0x9F, 0x8E, 0xC0, 0x00, 0x66, + 0x00, 0x00, 0x66, 0xC0, 0x00, 0x66, 0x00, 0x00, 0x69, 0xC0, 0x00, 0x66, + 0x00, 0x00, 0x6C, 0xC0, 0x00, 0x66, 0x80, 0x00, 0x66, 0x00, 0x00, 0x69, + 0xC0, 0x00, 0x66, 0x80, 0x00, 0x66, 0x00, 0x00, 0x6C, 0xC0, 0x01, 0x7F, + 0x00, 0x00, 0x74, 0xC0, 0x00, 0x73, 0x00, 0x00, 0x74, 0xC0, 0x05, 0x74, + 0x00, 0x05, 0x76, 0xC0, 0x05, 0x74, 0x00, 0x05, 0x65, 0xC0, 0x05, 0x74, + 0x00, 0x05, 0x6B, 0xC0, 0x05, 0x7E, 0x00, 0x05, 0x76, 0xC0, 0x05, 0x74, + 0x00, 0x05, 0x6D, 0x80, 0x05, 0xD9, 0x00, 0x05, 0xB4, 0x80, 0x05, 0xF2, + 0x00, 0x05, 0xB7, 0x04, 0x05, 0xE2, 0x04, 0x05, 0xD0, 0x04, 0x05, 0xD3, + 0x04, 0x05, 0xD4, 0x04, 0x05, 0xDB, 0x04, 0x05, 0xDC, 0x04, 0x05, 0xDD, + 0x04, 0x05, 0xE8, 0x04, 0x05, 0xEA, 0x04, 0x00, 0x2B, 0x80, 0x05, 0xE9, + 0x00, 0x05, 0xC1, 0x80, 0x05, 0xE9, 0x00, 0x05, 0xC2, 0x80, 0xFB, 0x49, + 0x00, 0x05, 0xC1, 0x80, 0xFB, 0x49, 0x00, 0x05, 0xC2, 0x80, 0x05, 0xD0, + 0x00, 0x05, 0xB7, 0x80, 0x05, 0xD0, 0x00, 0x05, 0xB8, 0x80, 0x05, 0xD0, + 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD1, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD2, + 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD3, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD4, + 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD5, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD6, + 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD8, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD9, + 0x00, 0x05, 0xBC, 0x80, 0x05, 0xDA, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xDB, + 0x00, 0x05, 0xBC, 0x80, 0x05, 0xDC, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xDE, + 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE0, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE1, + 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE3, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE4, + 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE6, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE7, + 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE8, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE9, + 0x00, 0x05, 0xBC, 0x80, 0x05, 0xEA, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD5, + 0x00, 0x05, 0xB9, 0x80, 0x05, 0xD1, 0x00, 0x05, 0xBF, 0x80, 0x05, 0xDB, + 0x00, 0x05, 0xBF, 0x80, 0x05, 0xE4, 0x00, 0x05, 0xBF, 0xC0, 0x05, 0xD0, + 0x00, 0x05, 0xDC, 0x18, 0x06, 0x71, 0x14, 0x06, 0x71, 0x18, 0x06, 0x7B, + 0x14, 0x06, 0x7B, 0x0C, 0x06, 0x7B, 0x10, 0x06, 0x7B, 0x18, 0x06, 0x7E, + 0x14, 0x06, 0x7E, 0x0C, 0x06, 0x7E, 0x10, 0x06, 0x7E, 0x18, 0x06, 0x80, + 0x14, 0x06, 0x80, 0x0C, 0x06, 0x80, 0x10, 0x06, 0x80, 0x18, 0x06, 0x7A, + 0x14, 0x06, 0x7A, 0x0C, 0x06, 0x7A, 0x10, 0x06, 0x7A, 0x18, 0x06, 0x7F, + 0x14, 0x06, 0x7F, 0x0C, 0x06, 0x7F, 0x10, 0x06, 0x7F, 0x18, 0x06, 0x79, + 0x14, 0x06, 0x79, 0x0C, 0x06, 0x79, 0x10, 0x06, 0x79, 0x18, 0x06, 0xA4, + 0x14, 0x06, 0xA4, 0x0C, 0x06, 0xA4, 0x10, 0x06, 0xA4, 0x18, 0x06, 0xA6, + 0x14, 0x06, 0xA6, 0x0C, 0x06, 0xA6, 0x10, 0x06, 0xA6, 0x18, 0x06, 0x84, + 0x14, 0x06, 0x84, 0x0C, 0x06, 0x84, 0x10, 0x06, 0x84, 0x18, 0x06, 0x83, + 0x14, 0x06, 0x83, 0x0C, 0x06, 0x83, 0x10, 0x06, 0x83, 0x18, 0x06, 0x86, + 0x14, 0x06, 0x86, 0x0C, 0x06, 0x86, 0x10, 0x06, 0x86, 0x18, 0x06, 0x87, + 0x14, 0x06, 0x87, 0x0C, 0x06, 0x87, 0x10, 0x06, 0x87, 0x18, 0x06, 0x8D, + 0x14, 0x06, 0x8D, 0x18, 0x06, 0x8C, 0x14, 0x06, 0x8C, 0x18, 0x06, 0x8E, + 0x14, 0x06, 0x8E, 0x18, 0x06, 0x88, 0x14, 0x06, 0x88, 0x18, 0x06, 0x98, + 0x14, 0x06, 0x98, 0x18, 0x06, 0x91, 0x14, 0x06, 0x91, 0x18, 0x06, 0xA9, + 0x14, 0x06, 0xA9, 0x0C, 0x06, 0xA9, 0x10, 0x06, 0xA9, 0x18, 0x06, 0xAF, + 0x14, 0x06, 0xAF, 0x0C, 0x06, 0xAF, 0x10, 0x06, 0xAF, 0x18, 0x06, 0xB3, + 0x14, 0x06, 0xB3, 0x0C, 0x06, 0xB3, 0x10, 0x06, 0xB3, 0x18, 0x06, 0xB1, + 0x14, 0x06, 0xB1, 0x0C, 0x06, 0xB1, 0x10, 0x06, 0xB1, 0x18, 0x06, 0xBA, + 0x14, 0x06, 0xBA, 0x18, 0x06, 0xBB, 0x14, 0x06, 0xBB, 0x0C, 0x06, 0xBB, + 0x10, 0x06, 0xBB, 0x18, 0x06, 0xC0, 0x14, 0x06, 0xC0, 0x18, 0x06, 0xC1, + 0x14, 0x06, 0xC1, 0x0C, 0x06, 0xC1, 0x10, 0x06, 0xC1, 0x18, 0x06, 0xBE, + 0x14, 0x06, 0xBE, 0x0C, 0x06, 0xBE, 0x10, 0x06, 0xBE, 0x18, 0x06, 0xD2, + 0x14, 0x06, 0xD2, 0x18, 0x06, 0xD3, 0x14, 0x06, 0xD3, 0x18, 0x06, 0xAD, + 0x14, 0x06, 0xAD, 0x0C, 0x06, 0xAD, 0x10, 0x06, 0xAD, 0x18, 0x06, 0xC7, + 0x14, 0x06, 0xC7, 0x18, 0x06, 0xC6, 0x14, 0x06, 0xC6, 0x18, 0x06, 0xC8, + 0x14, 0x06, 0xC8, 0x18, 0x06, 0x77, 0x18, 0x06, 0xCB, 0x14, 0x06, 0xCB, + 0x18, 0x06, 0xC5, 0x14, 0x06, 0xC5, 0x18, 0x06, 0xC9, 0x14, 0x06, 0xC9, + 0x18, 0x06, 0xD0, 0x14, 0x06, 0xD0, 0x0C, 0x06, 0xD0, 0x10, 0x06, 0xD0, + 0x0C, 0x06, 0x49, 0x10, 0x06, 0x49, 0x98, 0x06, 0x26, 0x00, 0x06, 0x27, + 0x94, 0x06, 0x26, 0x00, 0x06, 0x27, 0x98, 0x06, 0x26, 0x00, 0x06, 0xD5, + 0x94, 0x06, 0x26, 0x00, 0x06, 0xD5, 0x98, 0x06, 0x26, 0x00, 0x06, 0x48, + 0x94, 0x06, 0x26, 0x00, 0x06, 0x48, 0x98, 0x06, 0x26, 0x00, 0x06, 0xC7, + 0x94, 0x06, 0x26, 0x00, 0x06, 0xC7, 0x98, 0x06, 0x26, 0x00, 0x06, 0xC6, + 0x94, 0x06, 0x26, 0x00, 0x06, 0xC6, 0x98, 0x06, 0x26, 0x00, 0x06, 0xC8, + 0x94, 0x06, 0x26, 0x00, 0x06, 0xC8, 0x98, 0x06, 0x26, 0x00, 0x06, 0xD0, + 0x94, 0x06, 0x26, 0x00, 0x06, 0xD0, 0x8C, 0x06, 0x26, 0x00, 0x06, 0xD0, + 0x98, 0x06, 0x26, 0x00, 0x06, 0x49, 0x94, 0x06, 0x26, 0x00, 0x06, 0x49, + 0x8C, 0x06, 0x26, 0x00, 0x06, 0x49, 0x18, 0x06, 0xCC, 0x14, 0x06, 0xCC, + 0x0C, 0x06, 0xCC, 0x10, 0x06, 0xCC, 0x98, 0x06, 0x26, 0x00, 0x06, 0x2C, + 0x98, 0x06, 0x26, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x26, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x26, 0x00, 0x06, 0x49, 0x98, 0x06, 0x26, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x28, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x28, 0x00, 0x06, 0x2D, + 0x98, 0x06, 0x28, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x28, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x28, 0x00, 0x06, 0x49, 0x98, 0x06, 0x28, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x2A, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x2A, 0x00, 0x06, 0x2D, + 0x98, 0x06, 0x2A, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x2A, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x2A, 0x00, 0x06, 0x49, 0x98, 0x06, 0x2A, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x2B, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x2B, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x2B, 0x00, 0x06, 0x49, 0x98, 0x06, 0x2B, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x2C, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x2C, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x2D, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x2D, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x2E, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x2E, 0x00, 0x06, 0x2D, + 0x98, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x98, 0x06, 0x33, 0x00, 0x06, 0x2C, + 0x98, 0x06, 0x33, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x33, 0x00, 0x06, 0x2E, + 0x98, 0x06, 0x33, 0x00, 0x06, 0x45, 0x98, 0x06, 0x35, 0x00, 0x06, 0x2D, + 0x98, 0x06, 0x35, 0x00, 0x06, 0x45, 0x98, 0x06, 0x36, 0x00, 0x06, 0x2C, + 0x98, 0x06, 0x36, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x36, 0x00, 0x06, 0x2E, + 0x98, 0x06, 0x36, 0x00, 0x06, 0x45, 0x98, 0x06, 0x37, 0x00, 0x06, 0x2D, + 0x98, 0x06, 0x37, 0x00, 0x06, 0x45, 0x98, 0x06, 0x38, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x39, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x39, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x3A, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x3A, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x41, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x41, 0x00, 0x06, 0x2D, + 0x98, 0x06, 0x41, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x41, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x41, 0x00, 0x06, 0x49, 0x98, 0x06, 0x41, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x42, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x42, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x42, 0x00, 0x06, 0x49, 0x98, 0x06, 0x42, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x43, 0x00, 0x06, 0x27, 0x98, 0x06, 0x43, 0x00, 0x06, 0x2C, + 0x98, 0x06, 0x43, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x43, 0x00, 0x06, 0x2E, + 0x98, 0x06, 0x43, 0x00, 0x06, 0x44, 0x98, 0x06, 0x43, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x43, 0x00, 0x06, 0x49, 0x98, 0x06, 0x43, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x44, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x44, 0x00, 0x06, 0x2D, + 0x98, 0x06, 0x44, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x44, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x44, 0x00, 0x06, 0x49, 0x98, 0x06, 0x44, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x45, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x45, 0x00, 0x06, 0x2D, + 0x98, 0x06, 0x45, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x45, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x45, 0x00, 0x06, 0x49, 0x98, 0x06, 0x45, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x46, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x46, 0x00, 0x06, 0x2D, + 0x98, 0x06, 0x46, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x46, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x46, 0x00, 0x06, 0x49, 0x98, 0x06, 0x46, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x47, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x47, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x47, 0x00, 0x06, 0x49, 0x98, 0x06, 0x47, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x4A, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x4A, 0x00, 0x06, 0x2D, + 0x98, 0x06, 0x4A, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x4A, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x4A, 0x00, 0x06, 0x49, 0x98, 0x06, 0x4A, 0x00, 0x06, 0x4A, + 0x98, 0x06, 0x30, 0x00, 0x06, 0x70, 0x98, 0x06, 0x31, 0x00, 0x06, 0x70, + 0x98, 0x06, 0x49, 0x00, 0x06, 0x70, 0x98, 0x00, 0x20, 0x80, 0x06, 0x4C, + 0x00, 0x06, 0x51, 0x98, 0x00, 0x20, 0x80, 0x06, 0x4D, 0x00, 0x06, 0x51, + 0x98, 0x00, 0x20, 0x80, 0x06, 0x4E, 0x00, 0x06, 0x51, 0x98, 0x00, 0x20, + 0x80, 0x06, 0x4F, 0x00, 0x06, 0x51, 0x98, 0x00, 0x20, 0x80, 0x06, 0x50, + 0x00, 0x06, 0x51, 0x98, 0x00, 0x20, 0x80, 0x06, 0x51, 0x00, 0x06, 0x70, + 0x94, 0x06, 0x26, 0x00, 0x06, 0x31, 0x94, 0x06, 0x26, 0x00, 0x06, 0x32, + 0x94, 0x06, 0x26, 0x00, 0x06, 0x45, 0x94, 0x06, 0x26, 0x00, 0x06, 0x46, + 0x94, 0x06, 0x26, 0x00, 0x06, 0x49, 0x94, 0x06, 0x26, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x28, 0x00, 0x06, 0x31, 0x94, 0x06, 0x28, 0x00, 0x06, 0x32, + 0x94, 0x06, 0x28, 0x00, 0x06, 0x45, 0x94, 0x06, 0x28, 0x00, 0x06, 0x46, + 0x94, 0x06, 0x28, 0x00, 0x06, 0x49, 0x94, 0x06, 0x28, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x2A, 0x00, 0x06, 0x31, 0x94, 0x06, 0x2A, 0x00, 0x06, 0x32, + 0x94, 0x06, 0x2A, 0x00, 0x06, 0x45, 0x94, 0x06, 0x2A, 0x00, 0x06, 0x46, + 0x94, 0x06, 0x2A, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2A, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x2B, 0x00, 0x06, 0x31, 0x94, 0x06, 0x2B, 0x00, 0x06, 0x32, + 0x94, 0x06, 0x2B, 0x00, 0x06, 0x45, 0x94, 0x06, 0x2B, 0x00, 0x06, 0x46, + 0x94, 0x06, 0x2B, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2B, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x41, 0x00, 0x06, 0x49, 0x94, 0x06, 0x41, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x42, 0x00, 0x06, 0x49, 0x94, 0x06, 0x42, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x43, 0x00, 0x06, 0x27, 0x94, 0x06, 0x43, 0x00, 0x06, 0x44, + 0x94, 0x06, 0x43, 0x00, 0x06, 0x45, 0x94, 0x06, 0x43, 0x00, 0x06, 0x49, + 0x94, 0x06, 0x43, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x44, 0x00, 0x06, 0x45, + 0x94, 0x06, 0x44, 0x00, 0x06, 0x49, 0x94, 0x06, 0x44, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x45, 0x00, 0x06, 0x27, 0x94, 0x06, 0x45, 0x00, 0x06, 0x45, + 0x94, 0x06, 0x46, 0x00, 0x06, 0x31, 0x94, 0x06, 0x46, 0x00, 0x06, 0x32, + 0x94, 0x06, 0x46, 0x00, 0x06, 0x45, 0x94, 0x06, 0x46, 0x00, 0x06, 0x46, + 0x94, 0x06, 0x46, 0x00, 0x06, 0x49, 0x94, 0x06, 0x46, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x49, 0x00, 0x06, 0x70, 0x94, 0x06, 0x4A, 0x00, 0x06, 0x31, + 0x94, 0x06, 0x4A, 0x00, 0x06, 0x32, 0x94, 0x06, 0x4A, 0x00, 0x06, 0x45, + 0x94, 0x06, 0x4A, 0x00, 0x06, 0x46, 0x94, 0x06, 0x4A, 0x00, 0x06, 0x49, + 0x94, 0x06, 0x4A, 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x26, 0x00, 0x06, 0x2C, + 0x8C, 0x06, 0x26, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x26, 0x00, 0x06, 0x2E, + 0x8C, 0x06, 0x26, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x26, 0x00, 0x06, 0x47, + 0x8C, 0x06, 0x28, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x28, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x28, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x28, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x28, 0x00, 0x06, 0x47, 0x8C, 0x06, 0x2A, 0x00, 0x06, 0x2C, + 0x8C, 0x06, 0x2A, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x2A, 0x00, 0x06, 0x2E, + 0x8C, 0x06, 0x2A, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2A, 0x00, 0x06, 0x47, + 0x8C, 0x06, 0x2B, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2C, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2D, 0x00, 0x06, 0x2C, + 0x8C, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2E, 0x00, 0x06, 0x2C, + 0x8C, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x33, 0x00, 0x06, 0x2C, + 0x8C, 0x06, 0x33, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x33, 0x00, 0x06, 0x2E, + 0x8C, 0x06, 0x33, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x35, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x35, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x35, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x36, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x36, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x36, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x36, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x37, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x38, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x39, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x39, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x3A, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x3A, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x41, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x41, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x41, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x41, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x42, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x42, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x43, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x43, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x43, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x43, 0x00, 0x06, 0x44, + 0x8C, 0x06, 0x43, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x44, 0x00, 0x06, 0x2C, + 0x8C, 0x06, 0x44, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x44, 0x00, 0x06, 0x2E, + 0x8C, 0x06, 0x44, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x44, 0x00, 0x06, 0x47, + 0x8C, 0x06, 0x45, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x45, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x45, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x45, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x46, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x46, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x46, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x46, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x46, 0x00, 0x06, 0x47, 0x8C, 0x06, 0x47, 0x00, 0x06, 0x2C, + 0x8C, 0x06, 0x47, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x47, 0x00, 0x06, 0x70, + 0x8C, 0x06, 0x4A, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x4A, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x4A, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x4A, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x4A, 0x00, 0x06, 0x47, 0x90, 0x06, 0x26, 0x00, 0x06, 0x45, + 0x90, 0x06, 0x26, 0x00, 0x06, 0x47, 0x90, 0x06, 0x28, 0x00, 0x06, 0x45, + 0x90, 0x06, 0x28, 0x00, 0x06, 0x47, 0x90, 0x06, 0x2A, 0x00, 0x06, 0x45, + 0x90, 0x06, 0x2A, 0x00, 0x06, 0x47, 0x90, 0x06, 0x2B, 0x00, 0x06, 0x45, + 0x90, 0x06, 0x2B, 0x00, 0x06, 0x47, 0x90, 0x06, 0x33, 0x00, 0x06, 0x45, + 0x90, 0x06, 0x33, 0x00, 0x06, 0x47, 0x90, 0x06, 0x34, 0x00, 0x06, 0x45, + 0x90, 0x06, 0x34, 0x00, 0x06, 0x47, 0x90, 0x06, 0x43, 0x00, 0x06, 0x44, + 0x90, 0x06, 0x43, 0x00, 0x06, 0x45, 0x90, 0x06, 0x44, 0x00, 0x06, 0x45, + 0x90, 0x06, 0x46, 0x00, 0x06, 0x45, 0x90, 0x06, 0x46, 0x00, 0x06, 0x47, + 0x90, 0x06, 0x4A, 0x00, 0x06, 0x45, 0x90, 0x06, 0x4A, 0x00, 0x06, 0x47, + 0x90, 0x06, 0x40, 0x80, 0x06, 0x4E, 0x00, 0x06, 0x51, 0x90, 0x06, 0x40, + 0x80, 0x06, 0x4F, 0x00, 0x06, 0x51, 0x90, 0x06, 0x40, 0x80, 0x06, 0x50, + 0x00, 0x06, 0x51, 0x98, 0x06, 0x37, 0x00, 0x06, 0x49, 0x98, 0x06, 0x37, + 0x00, 0x06, 0x4A, 0x98, 0x06, 0x39, 0x00, 0x06, 0x49, 0x98, 0x06, 0x39, + 0x00, 0x06, 0x4A, 0x98, 0x06, 0x3A, 0x00, 0x06, 0x49, 0x98, 0x06, 0x3A, + 0x00, 0x06, 0x4A, 0x98, 0x06, 0x33, 0x00, 0x06, 0x49, 0x98, 0x06, 0x33, + 0x00, 0x06, 0x4A, 0x98, 0x06, 0x34, 0x00, 0x06, 0x49, 0x98, 0x06, 0x34, + 0x00, 0x06, 0x4A, 0x98, 0x06, 0x2D, 0x00, 0x06, 0x49, 0x98, 0x06, 0x2D, + 0x00, 0x06, 0x4A, 0x98, 0x06, 0x2C, 0x00, 0x06, 0x49, 0x98, 0x06, 0x2C, + 0x00, 0x06, 0x4A, 0x98, 0x06, 0x2E, 0x00, 0x06, 0x49, 0x98, 0x06, 0x2E, + 0x00, 0x06, 0x4A, 0x98, 0x06, 0x35, 0x00, 0x06, 0x49, 0x98, 0x06, 0x35, + 0x00, 0x06, 0x4A, 0x98, 0x06, 0x36, 0x00, 0x06, 0x49, 0x98, 0x06, 0x36, + 0x00, 0x06, 0x4A, 0x98, 0x06, 0x34, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x34, + 0x00, 0x06, 0x2D, 0x98, 0x06, 0x34, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x34, + 0x00, 0x06, 0x45, 0x98, 0x06, 0x34, 0x00, 0x06, 0x31, 0x98, 0x06, 0x33, + 0x00, 0x06, 0x31, 0x98, 0x06, 0x35, 0x00, 0x06, 0x31, 0x98, 0x06, 0x36, + 0x00, 0x06, 0x31, 0x94, 0x06, 0x37, 0x00, 0x06, 0x49, 0x94, 0x06, 0x37, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x39, 0x00, 0x06, 0x49, 0x94, 0x06, 0x39, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x3A, 0x00, 0x06, 0x49, 0x94, 0x06, 0x3A, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x33, 0x00, 0x06, 0x49, 0x94, 0x06, 0x33, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x34, 0x00, 0x06, 0x49, 0x94, 0x06, 0x34, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2D, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2D, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2C, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2C, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2E, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2E, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x35, 0x00, 0x06, 0x49, 0x94, 0x06, 0x35, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x36, 0x00, 0x06, 0x49, 0x94, 0x06, 0x36, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x34, 0x00, 0x06, 0x2C, 0x94, 0x06, 0x34, + 0x00, 0x06, 0x2D, 0x94, 0x06, 0x34, 0x00, 0x06, 0x2E, 0x94, 0x06, 0x34, + 0x00, 0x06, 0x45, 0x94, 0x06, 0x34, 0x00, 0x06, 0x31, 0x94, 0x06, 0x33, + 0x00, 0x06, 0x31, 0x94, 0x06, 0x35, 0x00, 0x06, 0x31, 0x94, 0x06, 0x36, + 0x00, 0x06, 0x31, 0x8C, 0x06, 0x34, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x34, + 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x34, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x34, + 0x00, 0x06, 0x45, 0x8C, 0x06, 0x33, 0x00, 0x06, 0x47, 0x8C, 0x06, 0x34, + 0x00, 0x06, 0x47, 0x8C, 0x06, 0x37, 0x00, 0x06, 0x45, 0x90, 0x06, 0x33, + 0x00, 0x06, 0x2C, 0x90, 0x06, 0x33, 0x00, 0x06, 0x2D, 0x90, 0x06, 0x33, + 0x00, 0x06, 0x2E, 0x90, 0x06, 0x34, 0x00, 0x06, 0x2C, 0x90, 0x06, 0x34, + 0x00, 0x06, 0x2D, 0x90, 0x06, 0x34, 0x00, 0x06, 0x2E, 0x90, 0x06, 0x37, + 0x00, 0x06, 0x45, 0x90, 0x06, 0x38, 0x00, 0x06, 0x45, 0x94, 0x06, 0x27, + 0x00, 0x06, 0x4B, 0x98, 0x06, 0x27, 0x00, 0x06, 0x4B, 0x8C, 0x06, 0x2A, + 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x2D, + 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x2C, + 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2A, + 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2E, 0x94, 0x06, 0x2C, + 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x2C, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x2D, 0x94, 0x06, 0x2D, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x2D, 0x80, 0x06, 0x45, 0x00, 0x06, 0x49, 0x8C, 0x06, 0x33, + 0x80, 0x06, 0x2D, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x33, 0x80, 0x06, 0x2C, + 0x00, 0x06, 0x2D, 0x94, 0x06, 0x33, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x49, + 0x94, 0x06, 0x33, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x33, + 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x33, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x2C, 0x94, 0x06, 0x33, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x33, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x35, + 0x80, 0x06, 0x2D, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x35, 0x80, 0x06, 0x2D, + 0x00, 0x06, 0x2D, 0x94, 0x06, 0x35, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, + 0x94, 0x06, 0x34, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x34, + 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x94, 0x06, 0x34, 0x80, 0x06, 0x2C, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x34, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2E, + 0x8C, 0x06, 0x34, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2E, 0x94, 0x06, 0x34, + 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x34, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x45, 0x94, 0x06, 0x36, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x49, + 0x94, 0x06, 0x36, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x36, + 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x94, 0x06, 0x37, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x37, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x37, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x37, + 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x39, 0x80, 0x06, 0x2C, + 0x00, 0x06, 0x45, 0x94, 0x06, 0x39, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x39, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x39, + 0x80, 0x06, 0x45, 0x00, 0x06, 0x49, 0x94, 0x06, 0x3A, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x45, 0x94, 0x06, 0x3A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x3A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x49, 0x94, 0x06, 0x41, + 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x41, 0x80, 0x06, 0x2E, + 0x00, 0x06, 0x45, 0x94, 0x06, 0x42, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, + 0x94, 0x06, 0x42, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x44, + 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2D, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x49, + 0x8C, 0x06, 0x44, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2C, 0x94, 0x06, 0x44, + 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2C, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2E, + 0x00, 0x06, 0x45, 0x8C, 0x06, 0x44, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, + 0x94, 0x06, 0x44, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x44, + 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2D, + 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, + 0x94, 0x06, 0x45, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x45, + 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2C, + 0x00, 0x06, 0x45, 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x2C, + 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x45, + 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x47, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x47, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x46, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x94, 0x06, 0x46, + 0x80, 0x06, 0x2D, 0x00, 0x06, 0x49, 0x94, 0x06, 0x46, 0x80, 0x06, 0x2C, + 0x00, 0x06, 0x45, 0x8C, 0x06, 0x46, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, + 0x94, 0x06, 0x46, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x49, 0x94, 0x06, 0x46, + 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x46, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x49, 0x94, 0x06, 0x4A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x4A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x28, + 0x80, 0x06, 0x2E, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x2C, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x49, + 0x94, 0x06, 0x2A, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A, + 0x80, 0x06, 0x2E, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x49, + 0x94, 0x06, 0x2C, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2C, + 0x80, 0x06, 0x2D, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2C, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x49, 0x94, 0x06, 0x33, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x49, + 0x94, 0x06, 0x35, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x34, + 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x36, 0x80, 0x06, 0x2D, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x44, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x4A, + 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x4A, 0x80, 0x06, 0x2C, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x4A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x45, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x42, + 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x46, 0x80, 0x06, 0x2D, + 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x42, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, + 0x8C, 0x06, 0x44, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x94, 0x06, 0x39, + 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x43, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x46, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2D, + 0x94, 0x06, 0x45, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x44, + 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x94, 0x06, 0x43, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x45, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, + 0x94, 0x06, 0x46, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2D, 0x94, 0x06, 0x2C, + 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2D, 0x80, 0x06, 0x2C, + 0x00, 0x06, 0x4A, 0x94, 0x06, 0x45, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x4A, + 0x94, 0x06, 0x41, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x28, + 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x43, 0x80, 0x06, 0x45, + 0x00, 0x06, 0x45, 0x8C, 0x06, 0x39, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, + 0x8C, 0x06, 0x35, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x33, + 0x80, 0x06, 0x2E, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x46, 0x80, 0x06, 0x2C, + 0x00, 0x06, 0x4A, 0x98, 0x06, 0x35, 0x80, 0x06, 0x44, 0x00, 0x06, 0xD2, + 0x98, 0x06, 0x42, 0x80, 0x06, 0x44, 0x00, 0x06, 0xD2, 0x98, 0x06, 0x27, + 0x80, 0x06, 0x44, 0x80, 0x06, 0x44, 0x00, 0x06, 0x47, 0x98, 0x06, 0x27, + 0x80, 0x06, 0x43, 0x80, 0x06, 0x28, 0x00, 0x06, 0x31, 0x98, 0x06, 0x45, + 0x80, 0x06, 0x2D, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2F, 0x98, 0x06, 0x35, + 0x80, 0x06, 0x44, 0x80, 0x06, 0x39, 0x00, 0x06, 0x45, 0x98, 0x06, 0x31, + 0x80, 0x06, 0x33, 0x80, 0x06, 0x48, 0x00, 0x06, 0x44, 0x98, 0x06, 0x39, + 0x80, 0x06, 0x44, 0x80, 0x06, 0x4A, 0x00, 0x06, 0x47, 0x98, 0x06, 0x48, + 0x80, 0x06, 0x33, 0x80, 0x06, 0x44, 0x00, 0x06, 0x45, 0x98, 0x06, 0x35, + 0x80, 0x06, 0x44, 0x00, 0x06, 0x49, 0x98, 0x06, 0x35, 0x80, 0x06, 0x44, + 0x80, 0x06, 0x49, 0x80, 0x00, 0x20, 0x80, 0x06, 0x27, 0x80, 0x06, 0x44, + 0x80, 0x06, 0x44, 0x80, 0x06, 0x47, 0x80, 0x00, 0x20, 0x80, 0x06, 0x39, + 0x80, 0x06, 0x44, 0x80, 0x06, 0x4A, 0x80, 0x06, 0x47, 0x80, 0x00, 0x20, + 0x80, 0x06, 0x48, 0x80, 0x06, 0x33, 0x80, 0x06, 0x44, 0x00, 0x06, 0x45, + 0x98, 0x06, 0x2C, 0x80, 0x06, 0x44, 0x80, 0x00, 0x20, 0x80, 0x06, 0x2C, + 0x80, 0x06, 0x44, 0x80, 0x06, 0x27, 0x80, 0x06, 0x44, 0x00, 0x06, 0x47, + 0x98, 0x06, 0x31, 0x80, 0x06, 0xCC, 0x80, 0x06, 0x27, 0x00, 0x06, 0x44, + 0x28, 0x00, 0x2C, 0x28, 0x30, 0x01, 0x28, 0x30, 0x02, 0x28, 0x00, 0x3A, + 0x28, 0x00, 0x3B, 0x28, 0x00, 0x21, 0x28, 0x00, 0x3F, 0x28, 0x30, 0x16, + 0x28, 0x30, 0x17, 0x28, 0x20, 0x26, 0x28, 0x20, 0x25, 0x28, 0x20, 0x14, + 0x28, 0x20, 0x13, 0x28, 0x00, 0x5F, 0x28, 0x00, 0x5F, 0x28, 0x00, 0x28, + 0x28, 0x00, 0x29, 0x28, 0x00, 0x7B, 0x28, 0x00, 0x7D, 0x28, 0x30, 0x14, + 0x28, 0x30, 0x15, 0x28, 0x30, 0x10, 0x28, 0x30, 0x11, 0x28, 0x30, 0x0A, + 0x28, 0x30, 0x0B, 0x28, 0x30, 0x08, 0x28, 0x30, 0x09, 0x28, 0x30, 0x0C, + 0x28, 0x30, 0x0D, 0x28, 0x30, 0x0E, 0x28, 0x30, 0x0F, 0x28, 0x00, 0x5B, + 0x28, 0x00, 0x5D, 0x40, 0x20, 0x3E, 0x40, 0x20, 0x3E, 0x40, 0x20, 0x3E, + 0x40, 0x20, 0x3E, 0x40, 0x00, 0x5F, 0x40, 0x00, 0x5F, 0x40, 0x00, 0x5F, + 0x34, 0x00, 0x2C, 0x34, 0x30, 0x01, 0x34, 0x00, 0x2E, 0x34, 0x00, 0x3B, + 0x34, 0x00, 0x3A, 0x34, 0x00, 0x3F, 0x34, 0x00, 0x21, 0x34, 0x20, 0x14, + 0x34, 0x00, 0x28, 0x34, 0x00, 0x29, 0x34, 0x00, 0x7B, 0x34, 0x00, 0x7D, + 0x34, 0x30, 0x14, 0x34, 0x30, 0x15, 0x34, 0x00, 0x23, 0x34, 0x00, 0x26, + 0x34, 0x00, 0x2A, 0x34, 0x00, 0x2B, 0x34, 0x00, 0x2D, 0x34, 0x00, 0x3C, + 0x34, 0x00, 0x3E, 0x34, 0x00, 0x3D, 0x34, 0x00, 0x5C, 0x34, 0x00, 0x24, + 0x34, 0x00, 0x25, 0x34, 0x00, 0x40, 0x98, 0x00, 0x20, 0x00, 0x06, 0x4B, + 0x90, 0x06, 0x40, 0x00, 0x06, 0x4B, 0x98, 0x00, 0x20, 0x00, 0x06, 0x4C, + 0x98, 0x00, 0x20, 0x00, 0x06, 0x4D, 0x98, 0x00, 0x20, 0x00, 0x06, 0x4E, + 0x90, 0x06, 0x40, 0x00, 0x06, 0x4E, 0x98, 0x00, 0x20, 0x00, 0x06, 0x4F, + 0x90, 0x06, 0x40, 0x00, 0x06, 0x4F, 0x98, 0x00, 0x20, 0x00, 0x06, 0x50, + 0x90, 0x06, 0x40, 0x00, 0x06, 0x50, 0x98, 0x00, 0x20, 0x00, 0x06, 0x51, + 0x90, 0x06, 0x40, 0x00, 0x06, 0x51, 0x98, 0x00, 0x20, 0x00, 0x06, 0x52, + 0x90, 0x06, 0x40, 0x00, 0x06, 0x52, 0x18, 0x06, 0x21, 0x18, 0x06, 0x22, + 0x14, 0x06, 0x22, 0x18, 0x06, 0x23, 0x14, 0x06, 0x23, 0x18, 0x06, 0x24, + 0x14, 0x06, 0x24, 0x18, 0x06, 0x25, 0x14, 0x06, 0x25, 0x18, 0x06, 0x26, + 0x14, 0x06, 0x26, 0x0C, 0x06, 0x26, 0x10, 0x06, 0x26, 0x18, 0x06, 0x27, + 0x14, 0x06, 0x27, 0x18, 0x06, 0x28, 0x14, 0x06, 0x28, 0x0C, 0x06, 0x28, + 0x10, 0x06, 0x28, 0x18, 0x06, 0x29, 0x14, 0x06, 0x29, 0x18, 0x06, 0x2A, + 0x14, 0x06, 0x2A, 0x0C, 0x06, 0x2A, 0x10, 0x06, 0x2A, 0x18, 0x06, 0x2B, + 0x14, 0x06, 0x2B, 0x0C, 0x06, 0x2B, 0x10, 0x06, 0x2B, 0x18, 0x06, 0x2C, + 0x14, 0x06, 0x2C, 0x0C, 0x06, 0x2C, 0x10, 0x06, 0x2C, 0x18, 0x06, 0x2D, + 0x14, 0x06, 0x2D, 0x0C, 0x06, 0x2D, 0x10, 0x06, 0x2D, 0x18, 0x06, 0x2E, + 0x14, 0x06, 0x2E, 0x0C, 0x06, 0x2E, 0x10, 0x06, 0x2E, 0x18, 0x06, 0x2F, + 0x14, 0x06, 0x2F, 0x18, 0x06, 0x30, 0x14, 0x06, 0x30, 0x18, 0x06, 0x31, + 0x14, 0x06, 0x31, 0x18, 0x06, 0x32, 0x14, 0x06, 0x32, 0x18, 0x06, 0x33, + 0x14, 0x06, 0x33, 0x0C, 0x06, 0x33, 0x10, 0x06, 0x33, 0x18, 0x06, 0x34, + 0x14, 0x06, 0x34, 0x0C, 0x06, 0x34, 0x10, 0x06, 0x34, 0x18, 0x06, 0x35, + 0x14, 0x06, 0x35, 0x0C, 0x06, 0x35, 0x10, 0x06, 0x35, 0x18, 0x06, 0x36, + 0x14, 0x06, 0x36, 0x0C, 0x06, 0x36, 0x10, 0x06, 0x36, 0x18, 0x06, 0x37, + 0x14, 0x06, 0x37, 0x0C, 0x06, 0x37, 0x10, 0x06, 0x37, 0x18, 0x06, 0x38, + 0x14, 0x06, 0x38, 0x0C, 0x06, 0x38, 0x10, 0x06, 0x38, 0x18, 0x06, 0x39, + 0x14, 0x06, 0x39, 0x0C, 0x06, 0x39, 0x10, 0x06, 0x39, 0x18, 0x06, 0x3A, + 0x14, 0x06, 0x3A, 0x0C, 0x06, 0x3A, 0x10, 0x06, 0x3A, 0x18, 0x06, 0x41, + 0x14, 0x06, 0x41, 0x0C, 0x06, 0x41, 0x10, 0x06, 0x41, 0x18, 0x06, 0x42, + 0x14, 0x06, 0x42, 0x0C, 0x06, 0x42, 0x10, 0x06, 0x42, 0x18, 0x06, 0x43, + 0x14, 0x06, 0x43, 0x0C, 0x06, 0x43, 0x10, 0x06, 0x43, 0x18, 0x06, 0x44, + 0x14, 0x06, 0x44, 0x0C, 0x06, 0x44, 0x10, 0x06, 0x44, 0x18, 0x06, 0x45, + 0x14, 0x06, 0x45, 0x0C, 0x06, 0x45, 0x10, 0x06, 0x45, 0x18, 0x06, 0x46, + 0x14, 0x06, 0x46, 0x0C, 0x06, 0x46, 0x10, 0x06, 0x46, 0x18, 0x06, 0x47, + 0x14, 0x06, 0x47, 0x0C, 0x06, 0x47, 0x10, 0x06, 0x47, 0x18, 0x06, 0x48, + 0x14, 0x06, 0x48, 0x18, 0x06, 0x49, 0x14, 0x06, 0x49, 0x18, 0x06, 0x4A, + 0x14, 0x06, 0x4A, 0x0C, 0x06, 0x4A, 0x10, 0x06, 0x4A, 0x98, 0x06, 0x44, + 0x00, 0x06, 0x22, 0x94, 0x06, 0x44, 0x00, 0x06, 0x22, 0x98, 0x06, 0x44, + 0x00, 0x06, 0x23, 0x94, 0x06, 0x44, 0x00, 0x06, 0x23, 0x98, 0x06, 0x44, + 0x00, 0x06, 0x25, 0x94, 0x06, 0x44, 0x00, 0x06, 0x25, 0x98, 0x06, 0x44, + 0x00, 0x06, 0x27, 0x94, 0x06, 0x44, 0x00, 0x06, 0x27, 0x2C, 0x00, 0x21, + 0x2C, 0x00, 0x22, 0x2C, 0x00, 0x23, 0x2C, 0x00, 0x24, 0x2C, 0x00, 0x25, + 0x2C, 0x00, 0x26, 0x2C, 0x00, 0x27, 0x2C, 0x00, 0x28, 0x2C, 0x00, 0x29, + 0x2C, 0x00, 0x2A, 0x2C, 0x00, 0x2B, 0x2C, 0x00, 0x2C, 0x2C, 0x00, 0x2D, + 0x2C, 0x00, 0x2E, 0x2C, 0x00, 0x2F, 0x2C, 0x00, 0x30, 0x2C, 0x00, 0x31, + 0x2C, 0x00, 0x32, 0x2C, 0x00, 0x33, 0x2C, 0x00, 0x34, 0x2C, 0x00, 0x35, + 0x2C, 0x00, 0x36, 0x2C, 0x00, 0x37, 0x2C, 0x00, 0x38, 0x2C, 0x00, 0x39, + 0x2C, 0x00, 0x3A, 0x2C, 0x00, 0x3B, 0x2C, 0x00, 0x3C, 0x2C, 0x00, 0x3D, + 0x2C, 0x00, 0x3E, 0x2C, 0x00, 0x3F, 0x2C, 0x00, 0x40, 0x2C, 0x00, 0x41, + 0x2C, 0x00, 0x42, 0x2C, 0x00, 0x43, 0x2C, 0x00, 0x44, 0x2C, 0x00, 0x45, + 0x2C, 0x00, 0x46, 0x2C, 0x00, 0x47, 0x2C, 0x00, 0x48, 0x2C, 0x00, 0x49, + 0x2C, 0x00, 0x4A, 0x2C, 0x00, 0x4B, 0x2C, 0x00, 0x4C, 0x2C, 0x00, 0x4D, + 0x2C, 0x00, 0x4E, 0x2C, 0x00, 0x4F, 0x2C, 0x00, 0x50, 0x2C, 0x00, 0x51, + 0x2C, 0x00, 0x52, 0x2C, 0x00, 0x53, 0x2C, 0x00, 0x54, 0x2C, 0x00, 0x55, + 0x2C, 0x00, 0x56, 0x2C, 0x00, 0x57, 0x2C, 0x00, 0x58, 0x2C, 0x00, 0x59, + 0x2C, 0x00, 0x5A, 0x2C, 0x00, 0x5B, 0x2C, 0x00, 0x5C, 0x2C, 0x00, 0x5D, + 0x2C, 0x00, 0x5E, 0x2C, 0x00, 0x5F, 0x2C, 0x00, 0x60, 0x2C, 0x00, 0x61, + 0x2C, 0x00, 0x62, 0x2C, 0x00, 0x63, 0x2C, 0x00, 0x64, 0x2C, 0x00, 0x65, + 0x2C, 0x00, 0x66, 0x2C, 0x00, 0x67, 0x2C, 0x00, 0x68, 0x2C, 0x00, 0x69, + 0x2C, 0x00, 0x6A, 0x2C, 0x00, 0x6B, 0x2C, 0x00, 0x6C, 0x2C, 0x00, 0x6D, + 0x2C, 0x00, 0x6E, 0x2C, 0x00, 0x6F, 0x2C, 0x00, 0x70, 0x2C, 0x00, 0x71, + 0x2C, 0x00, 0x72, 0x2C, 0x00, 0x73, 0x2C, 0x00, 0x74, 0x2C, 0x00, 0x75, + 0x2C, 0x00, 0x76, 0x2C, 0x00, 0x77, 0x2C, 0x00, 0x78, 0x2C, 0x00, 0x79, + 0x2C, 0x00, 0x7A, 0x2C, 0x00, 0x7B, 0x2C, 0x00, 0x7C, 0x2C, 0x00, 0x7D, + 0x2C, 0x00, 0x7E, 0x2C, 0x29, 0x85, 0x2C, 0x29, 0x86, 0x30, 0x30, 0x02, + 0x30, 0x30, 0x0C, 0x30, 0x30, 0x0D, 0x30, 0x30, 0x01, 0x30, 0x30, 0xFB, + 0x30, 0x30, 0xF2, 0x30, 0x30, 0xA1, 0x30, 0x30, 0xA3, 0x30, 0x30, 0xA5, + 0x30, 0x30, 0xA7, 0x30, 0x30, 0xA9, 0x30, 0x30, 0xE3, 0x30, 0x30, 0xE5, + 0x30, 0x30, 0xE7, 0x30, 0x30, 0xC3, 0x30, 0x30, 0xFC, 0x30, 0x30, 0xA2, + 0x30, 0x30, 0xA4, 0x30, 0x30, 0xA6, 0x30, 0x30, 0xA8, 0x30, 0x30, 0xAA, + 0x30, 0x30, 0xAB, 0x30, 0x30, 0xAD, 0x30, 0x30, 0xAF, 0x30, 0x30, 0xB1, + 0x30, 0x30, 0xB3, 0x30, 0x30, 0xB5, 0x30, 0x30, 0xB7, 0x30, 0x30, 0xB9, + 0x30, 0x30, 0xBB, 0x30, 0x30, 0xBD, 0x30, 0x30, 0xBF, 0x30, 0x30, 0xC1, + 0x30, 0x30, 0xC4, 0x30, 0x30, 0xC6, 0x30, 0x30, 0xC8, 0x30, 0x30, 0xCA, + 0x30, 0x30, 0xCB, 0x30, 0x30, 0xCC, 0x30, 0x30, 0xCD, 0x30, 0x30, 0xCE, + 0x30, 0x30, 0xCF, 0x30, 0x30, 0xD2, 0x30, 0x30, 0xD5, 0x30, 0x30, 0xD8, + 0x30, 0x30, 0xDB, 0x30, 0x30, 0xDE, 0x30, 0x30, 0xDF, 0x30, 0x30, 0xE0, + 0x30, 0x30, 0xE1, 0x30, 0x30, 0xE2, 0x30, 0x30, 0xE4, 0x30, 0x30, 0xE6, + 0x30, 0x30, 0xE8, 0x30, 0x30, 0xE9, 0x30, 0x30, 0xEA, 0x30, 0x30, 0xEB, + 0x30, 0x30, 0xEC, 0x30, 0x30, 0xED, 0x30, 0x30, 0xEF, 0x30, 0x30, 0xF3, + 0x30, 0x30, 0x99, 0x30, 0x30, 0x9A, 0x30, 0x31, 0x64, 0x30, 0x31, 0x31, + 0x30, 0x31, 0x32, 0x30, 0x31, 0x33, 0x30, 0x31, 0x34, 0x30, 0x31, 0x35, + 0x30, 0x31, 0x36, 0x30, 0x31, 0x37, 0x30, 0x31, 0x38, 0x30, 0x31, 0x39, + 0x30, 0x31, 0x3A, 0x30, 0x31, 0x3B, 0x30, 0x31, 0x3C, 0x30, 0x31, 0x3D, + 0x30, 0x31, 0x3E, 0x30, 0x31, 0x3F, 0x30, 0x31, 0x40, 0x30, 0x31, 0x41, + 0x30, 0x31, 0x42, 0x30, 0x31, 0x43, 0x30, 0x31, 0x44, 0x30, 0x31, 0x45, + 0x30, 0x31, 0x46, 0x30, 0x31, 0x47, 0x30, 0x31, 0x48, 0x30, 0x31, 0x49, + 0x30, 0x31, 0x4A, 0x30, 0x31, 0x4B, 0x30, 0x31, 0x4C, 0x30, 0x31, 0x4D, + 0x30, 0x31, 0x4E, 0x30, 0x31, 0x4F, 0x30, 0x31, 0x50, 0x30, 0x31, 0x51, + 0x30, 0x31, 0x52, 0x30, 0x31, 0x53, 0x30, 0x31, 0x54, 0x30, 0x31, 0x55, + 0x30, 0x31, 0x56, 0x30, 0x31, 0x57, 0x30, 0x31, 0x58, 0x30, 0x31, 0x59, + 0x30, 0x31, 0x5A, 0x30, 0x31, 0x5B, 0x30, 0x31, 0x5C, 0x30, 0x31, 0x5D, + 0x30, 0x31, 0x5E, 0x30, 0x31, 0x5F, 0x30, 0x31, 0x60, 0x30, 0x31, 0x61, + 0x30, 0x31, 0x62, 0x30, 0x31, 0x63, 0x2C, 0x00, 0xA2, 0x2C, 0x00, 0xA3, + 0x2C, 0x00, 0xAC, 0x2C, 0x00, 0xAF, 0x2C, 0x00, 0xA6, 0x2C, 0x00, 0xA5, + 0x2C, 0x20, 0xA9, 0x30, 0x25, 0x02, 0x30, 0x21, 0x90, 0x30, 0x21, 0x91, + 0x30, 0x21, 0x92, 0x30, 0x21, 0x93, 0x30, 0x25, 0xA0, 0x30, 0x25, 0xCB, + 0x81, 0x10, 0x99, 0x01, 0x10, 0xBA, 0x81, 0x10, 0x9B, 0x01, 0x10, 0xBA, + 0x81, 0x10, 0xA5, 0x01, 0x10, 0xBA, 0x81, 0x11, 0x31, 0x01, 0x11, 0x27, + 0x81, 0x11, 0x32, 0x01, 0x11, 0x27, 0x81, 0x13, 0x47, 0x01, 0x13, 0x3E, + 0x81, 0x13, 0x47, 0x01, 0x13, 0x57, 0x81, 0x14, 0xB9, 0x01, 0x14, 0xBA, + 0x81, 0x14, 0xB9, 0x01, 0x14, 0xB0, 0x81, 0x14, 0xB9, 0x01, 0x14, 0xBD, + 0x81, 0x15, 0xB8, 0x01, 0x15, 0xAF, 0x81, 0x15, 0xB9, 0x01, 0x15, 0xAF, + 0x81, 0xD1, 0x57, 0x01, 0xD1, 0x65, 0x81, 0xD1, 0x58, 0x01, 0xD1, 0x65, + 0x81, 0xD1, 0x5F, 0x01, 0xD1, 0x6E, 0x81, 0xD1, 0x5F, 0x01, 0xD1, 0x6F, + 0x81, 0xD1, 0x5F, 0x01, 0xD1, 0x70, 0x81, 0xD1, 0x5F, 0x01, 0xD1, 0x71, + 0x81, 0xD1, 0x5F, 0x01, 0xD1, 0x72, 0x81, 0xD1, 0xB9, 0x01, 0xD1, 0x65, + 0x81, 0xD1, 0xBA, 0x01, 0xD1, 0x65, 0x81, 0xD1, 0xBB, 0x01, 0xD1, 0x6E, + 0x81, 0xD1, 0xBC, 0x01, 0xD1, 0x6E, 0x81, 0xD1, 0xBB, 0x01, 0xD1, 0x6F, + 0x81, 0xD1, 0xBC, 0x01, 0xD1, 0x6F, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, + 0x04, 0x00, 0x43, 0x04, 0x00, 0x44, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, + 0x04, 0x00, 0x47, 0x04, 0x00, 0x48, 0x04, 0x00, 0x49, 0x04, 0x00, 0x4A, + 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x04, 0x00, 0x4E, + 0x04, 0x00, 0x4F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x52, + 0x04, 0x00, 0x53, 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, + 0x04, 0x00, 0x57, 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x5A, + 0x04, 0x00, 0x61, 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x68, + 0x04, 0x00, 0x69, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, + 0x04, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, + 0x04, 0x00, 0x71, 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, + 0x04, 0x00, 0x75, 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, + 0x04, 0x00, 0x79, 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, + 0x04, 0x00, 0x43, 0x04, 0x00, 0x44, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, + 0x04, 0x00, 0x47, 0x04, 0x00, 0x48, 0x04, 0x00, 0x49, 0x04, 0x00, 0x4A, + 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x04, 0x00, 0x4E, + 0x04, 0x00, 0x4F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x52, + 0x04, 0x00, 0x53, 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, + 0x04, 0x00, 0x57, 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x5A, + 0x04, 0x00, 0x61, 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x69, + 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, 0x04, 0x00, 0x6D, + 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, 0x04, 0x00, 0x71, + 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, 0x04, 0x00, 0x75, + 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, 0x04, 0x00, 0x79, + 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, 0x04, 0x00, 0x43, + 0x04, 0x00, 0x44, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, 0x04, 0x00, 0x47, + 0x04, 0x00, 0x48, 0x04, 0x00, 0x49, 0x04, 0x00, 0x4A, 0x04, 0x00, 0x4B, + 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x04, 0x00, 0x4E, 0x04, 0x00, 0x4F, + 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x52, 0x04, 0x00, 0x53, + 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, 0x04, 0x00, 0x57, + 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x5A, 0x04, 0x00, 0x61, + 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, 0x04, 0x00, 0x65, + 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x68, 0x04, 0x00, 0x69, + 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, 0x04, 0x00, 0x6D, + 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, 0x04, 0x00, 0x71, + 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, 0x04, 0x00, 0x75, + 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, 0x04, 0x00, 0x79, + 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x43, 0x04, 0x00, 0x44, + 0x04, 0x00, 0x47, 0x04, 0x00, 0x4A, 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4E, + 0x04, 0x00, 0x4F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x53, + 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, 0x04, 0x00, 0x57, + 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x5A, 0x04, 0x00, 0x61, + 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, 0x04, 0x00, 0x66, + 0x04, 0x00, 0x68, 0x04, 0x00, 0x69, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, + 0x04, 0x00, 0x6C, 0x04, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x04, 0x00, 0x70, + 0x04, 0x00, 0x71, 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, + 0x04, 0x00, 0x75, 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, + 0x04, 0x00, 0x79, 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, + 0x04, 0x00, 0x43, 0x04, 0x00, 0x44, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, + 0x04, 0x00, 0x47, 0x04, 0x00, 0x48, 0x04, 0x00, 0x49, 0x04, 0x00, 0x4A, + 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x04, 0x00, 0x4E, + 0x04, 0x00, 0x4F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x52, + 0x04, 0x00, 0x53, 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, + 0x04, 0x00, 0x57, 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x5A, + 0x04, 0x00, 0x61, 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x68, + 0x04, 0x00, 0x69, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, + 0x04, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, + 0x04, 0x00, 0x71, 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, + 0x04, 0x00, 0x75, 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, + 0x04, 0x00, 0x79, 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, + 0x04, 0x00, 0x44, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, 0x04, 0x00, 0x47, + 0x04, 0x00, 0x4A, 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, + 0x04, 0x00, 0x4E, 0x04, 0x00, 0x4F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, + 0x04, 0x00, 0x53, 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, + 0x04, 0x00, 0x57, 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x61, + 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, 0x04, 0x00, 0x65, + 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x68, 0x04, 0x00, 0x69, + 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, 0x04, 0x00, 0x6D, + 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, 0x04, 0x00, 0x71, + 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, 0x04, 0x00, 0x75, + 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, 0x04, 0x00, 0x79, + 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, 0x04, 0x00, 0x44, + 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, 0x04, 0x00, 0x47, 0x04, 0x00, 0x49, + 0x04, 0x00, 0x4A, 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, + 0x04, 0x00, 0x4F, 0x04, 0x00, 0x53, 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, + 0x04, 0x00, 0x56, 0x04, 0x00, 0x57, 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, + 0x04, 0x00, 0x61, 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x68, + 0x04, 0x00, 0x69, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, + 0x04, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, + 0x04, 0x00, 0x71, 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, + 0x04, 0x00, 0x75, 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, + 0x04, 0x00, 0x79, 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, + 0x04, 0x00, 0x43, 0x04, 0x00, 0x44, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, + 0x04, 0x00, 0x47, 0x04, 0x00, 0x48, 0x04, 0x00, 0x49, 0x04, 0x00, 0x4A, + 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x04, 0x00, 0x4E, + 0x04, 0x00, 0x4F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x52, + 0x04, 0x00, 0x53, 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, + 0x04, 0x00, 0x57, 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x5A, + 0x04, 0x00, 0x61, 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x68, + 0x04, 0x00, 0x69, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, + 0x04, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, + 0x04, 0x00, 0x71, 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, + 0x04, 0x00, 0x75, 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, + 0x04, 0x00, 0x79, 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, + 0x04, 0x00, 0x43, 0x04, 0x00, 0x44, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, + 0x04, 0x00, 0x47, 0x04, 0x00, 0x48, 0x04, 0x00, 0x49, 0x04, 0x00, 0x4A, + 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x04, 0x00, 0x4E, + 0x04, 0x00, 0x4F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x52, + 0x04, 0x00, 0x53, 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, + 0x04, 0x00, 0x57, 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x5A, + 0x04, 0x00, 0x61, 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x68, + 0x04, 0x00, 0x69, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, + 0x04, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, + 0x04, 0x00, 0x71, 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, + 0x04, 0x00, 0x75, 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, + 0x04, 0x00, 0x79, 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, + 0x04, 0x00, 0x43, 0x04, 0x00, 0x44, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, + 0x04, 0x00, 0x47, 0x04, 0x00, 0x48, 0x04, 0x00, 0x49, 0x04, 0x00, 0x4A, + 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x04, 0x00, 0x4E, + 0x04, 0x00, 0x4F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x52, + 0x04, 0x00, 0x53, 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, + 0x04, 0x00, 0x57, 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x5A, + 0x04, 0x00, 0x61, 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x68, + 0x04, 0x00, 0x69, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, + 0x04, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, + 0x04, 0x00, 0x71, 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, + 0x04, 0x00, 0x75, 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, + 0x04, 0x00, 0x79, 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, + 0x04, 0x00, 0x43, 0x04, 0x00, 0x44, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, + 0x04, 0x00, 0x47, 0x04, 0x00, 0x48, 0x04, 0x00, 0x49, 0x04, 0x00, 0x4A, + 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x04, 0x00, 0x4E, + 0x04, 0x00, 0x4F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x52, + 0x04, 0x00, 0x53, 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, + 0x04, 0x00, 0x57, 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x5A, + 0x04, 0x00, 0x61, 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x68, + 0x04, 0x00, 0x69, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, + 0x04, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, + 0x04, 0x00, 0x71, 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, + 0x04, 0x00, 0x75, 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, + 0x04, 0x00, 0x79, 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, + 0x04, 0x00, 0x43, 0x04, 0x00, 0x44, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, + 0x04, 0x00, 0x47, 0x04, 0x00, 0x48, 0x04, 0x00, 0x49, 0x04, 0x00, 0x4A, + 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x04, 0x00, 0x4E, + 0x04, 0x00, 0x4F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x52, + 0x04, 0x00, 0x53, 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, + 0x04, 0x00, 0x57, 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x5A, + 0x04, 0x00, 0x61, 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x68, + 0x04, 0x00, 0x69, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, + 0x04, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, + 0x04, 0x00, 0x71, 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, + 0x04, 0x00, 0x75, 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, + 0x04, 0x00, 0x79, 0x04, 0x00, 0x7A, 0x04, 0x00, 0x41, 0x04, 0x00, 0x42, + 0x04, 0x00, 0x43, 0x04, 0x00, 0x44, 0x04, 0x00, 0x45, 0x04, 0x00, 0x46, + 0x04, 0x00, 0x47, 0x04, 0x00, 0x48, 0x04, 0x00, 0x49, 0x04, 0x00, 0x4A, + 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x04, 0x00, 0x4E, + 0x04, 0x00, 0x4F, 0x04, 0x00, 0x50, 0x04, 0x00, 0x51, 0x04, 0x00, 0x52, + 0x04, 0x00, 0x53, 0x04, 0x00, 0x54, 0x04, 0x00, 0x55, 0x04, 0x00, 0x56, + 0x04, 0x00, 0x57, 0x04, 0x00, 0x58, 0x04, 0x00, 0x59, 0x04, 0x00, 0x5A, + 0x04, 0x00, 0x61, 0x04, 0x00, 0x62, 0x04, 0x00, 0x63, 0x04, 0x00, 0x64, + 0x04, 0x00, 0x65, 0x04, 0x00, 0x66, 0x04, 0x00, 0x67, 0x04, 0x00, 0x68, + 0x04, 0x00, 0x69, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6C, + 0x04, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x04, 0x00, 0x6F, 0x04, 0x00, 0x70, + 0x04, 0x00, 0x71, 0x04, 0x00, 0x72, 0x04, 0x00, 0x73, 0x04, 0x00, 0x74, + 0x04, 0x00, 0x75, 0x04, 0x00, 0x76, 0x04, 0x00, 0x77, 0x04, 0x00, 0x78, + 0x04, 0x00, 0x79, 0x04, 0x00, 0x7A, 0x04, 0x01, 0x31, 0x04, 0x02, 0x37, + 0x04, 0x03, 0x91, 0x04, 0x03, 0x92, 0x04, 0x03, 0x93, 0x04, 0x03, 0x94, + 0x04, 0x03, 0x95, 0x04, 0x03, 0x96, 0x04, 0x03, 0x97, 0x04, 0x03, 0x98, + 0x04, 0x03, 0x99, 0x04, 0x03, 0x9A, 0x04, 0x03, 0x9B, 0x04, 0x03, 0x9C, + 0x04, 0x03, 0x9D, 0x04, 0x03, 0x9E, 0x04, 0x03, 0x9F, 0x04, 0x03, 0xA0, + 0x04, 0x03, 0xA1, 0x04, 0x03, 0xF4, 0x04, 0x03, 0xA3, 0x04, 0x03, 0xA4, + 0x04, 0x03, 0xA5, 0x04, 0x03, 0xA6, 0x04, 0x03, 0xA7, 0x04, 0x03, 0xA8, + 0x04, 0x03, 0xA9, 0x04, 0x22, 0x07, 0x04, 0x03, 0xB1, 0x04, 0x03, 0xB2, + 0x04, 0x03, 0xB3, 0x04, 0x03, 0xB4, 0x04, 0x03, 0xB5, 0x04, 0x03, 0xB6, + 0x04, 0x03, 0xB7, 0x04, 0x03, 0xB8, 0x04, 0x03, 0xB9, 0x04, 0x03, 0xBA, + 0x04, 0x03, 0xBB, 0x04, 0x03, 0xBC, 0x04, 0x03, 0xBD, 0x04, 0x03, 0xBE, + 0x04, 0x03, 0xBF, 0x04, 0x03, 0xC0, 0x04, 0x03, 0xC1, 0x04, 0x03, 0xC2, + 0x04, 0x03, 0xC3, 0x04, 0x03, 0xC4, 0x04, 0x03, 0xC5, 0x04, 0x03, 0xC6, + 0x04, 0x03, 0xC7, 0x04, 0x03, 0xC8, 0x04, 0x03, 0xC9, 0x04, 0x22, 0x02, + 0x04, 0x03, 0xF5, 0x04, 0x03, 0xD1, 0x04, 0x03, 0xF0, 0x04, 0x03, 0xD5, + 0x04, 0x03, 0xF1, 0x04, 0x03, 0xD6, 0x04, 0x03, 0x91, 0x04, 0x03, 0x92, + 0x04, 0x03, 0x93, 0x04, 0x03, 0x94, 0x04, 0x03, 0x95, 0x04, 0x03, 0x96, + 0x04, 0x03, 0x97, 0x04, 0x03, 0x98, 0x04, 0x03, 0x99, 0x04, 0x03, 0x9A, + 0x04, 0x03, 0x9B, 0x04, 0x03, 0x9C, 0x04, 0x03, 0x9D, 0x04, 0x03, 0x9E, + 0x04, 0x03, 0x9F, 0x04, 0x03, 0xA0, 0x04, 0x03, 0xA1, 0x04, 0x03, 0xF4, + 0x04, 0x03, 0xA3, 0x04, 0x03, 0xA4, 0x04, 0x03, 0xA5, 0x04, 0x03, 0xA6, + 0x04, 0x03, 0xA7, 0x04, 0x03, 0xA8, 0x04, 0x03, 0xA9, 0x04, 0x22, 0x07, + 0x04, 0x03, 0xB1, 0x04, 0x03, 0xB2, 0x04, 0x03, 0xB3, 0x04, 0x03, 0xB4, + 0x04, 0x03, 0xB5, 0x04, 0x03, 0xB6, 0x04, 0x03, 0xB7, 0x04, 0x03, 0xB8, + 0x04, 0x03, 0xB9, 0x04, 0x03, 0xBA, 0x04, 0x03, 0xBB, 0x04, 0x03, 0xBC, + 0x04, 0x03, 0xBD, 0x04, 0x03, 0xBE, 0x04, 0x03, 0xBF, 0x04, 0x03, 0xC0, + 0x04, 0x03, 0xC1, 0x04, 0x03, 0xC2, 0x04, 0x03, 0xC3, 0x04, 0x03, 0xC4, + 0x04, 0x03, 0xC5, 0x04, 0x03, 0xC6, 0x04, 0x03, 0xC7, 0x04, 0x03, 0xC8, + 0x04, 0x03, 0xC9, 0x04, 0x22, 0x02, 0x04, 0x03, 0xF5, 0x04, 0x03, 0xD1, + 0x04, 0x03, 0xF0, 0x04, 0x03, 0xD5, 0x04, 0x03, 0xF1, 0x04, 0x03, 0xD6, + 0x04, 0x03, 0x91, 0x04, 0x03, 0x92, 0x04, 0x03, 0x93, 0x04, 0x03, 0x94, + 0x04, 0x03, 0x95, 0x04, 0x03, 0x96, 0x04, 0x03, 0x97, 0x04, 0x03, 0x98, + 0x04, 0x03, 0x99, 0x04, 0x03, 0x9A, 0x04, 0x03, 0x9B, 0x04, 0x03, 0x9C, + 0x04, 0x03, 0x9D, 0x04, 0x03, 0x9E, 0x04, 0x03, 0x9F, 0x04, 0x03, 0xA0, + 0x04, 0x03, 0xA1, 0x04, 0x03, 0xF4, 0x04, 0x03, 0xA3, 0x04, 0x03, 0xA4, + 0x04, 0x03, 0xA5, 0x04, 0x03, 0xA6, 0x04, 0x03, 0xA7, 0x04, 0x03, 0xA8, + 0x04, 0x03, 0xA9, 0x04, 0x22, 0x07, 0x04, 0x03, 0xB1, 0x04, 0x03, 0xB2, + 0x04, 0x03, 0xB3, 0x04, 0x03, 0xB4, 0x04, 0x03, 0xB5, 0x04, 0x03, 0xB6, + 0x04, 0x03, 0xB7, 0x04, 0x03, 0xB8, 0x04, 0x03, 0xB9, 0x04, 0x03, 0xBA, + 0x04, 0x03, 0xBB, 0x04, 0x03, 0xBC, 0x04, 0x03, 0xBD, 0x04, 0x03, 0xBE, + 0x04, 0x03, 0xBF, 0x04, 0x03, 0xC0, 0x04, 0x03, 0xC1, 0x04, 0x03, 0xC2, + 0x04, 0x03, 0xC3, 0x04, 0x03, 0xC4, 0x04, 0x03, 0xC5, 0x04, 0x03, 0xC6, + 0x04, 0x03, 0xC7, 0x04, 0x03, 0xC8, 0x04, 0x03, 0xC9, 0x04, 0x22, 0x02, + 0x04, 0x03, 0xF5, 0x04, 0x03, 0xD1, 0x04, 0x03, 0xF0, 0x04, 0x03, 0xD5, + 0x04, 0x03, 0xF1, 0x04, 0x03, 0xD6, 0x04, 0x03, 0x91, 0x04, 0x03, 0x92, + 0x04, 0x03, 0x93, 0x04, 0x03, 0x94, 0x04, 0x03, 0x95, 0x04, 0x03, 0x96, + 0x04, 0x03, 0x97, 0x04, 0x03, 0x98, 0x04, 0x03, 0x99, 0x04, 0x03, 0x9A, + 0x04, 0x03, 0x9B, 0x04, 0x03, 0x9C, 0x04, 0x03, 0x9D, 0x04, 0x03, 0x9E, + 0x04, 0x03, 0x9F, 0x04, 0x03, 0xA0, 0x04, 0x03, 0xA1, 0x04, 0x03, 0xF4, + 0x04, 0x03, 0xA3, 0x04, 0x03, 0xA4, 0x04, 0x03, 0xA5, 0x04, 0x03, 0xA6, + 0x04, 0x03, 0xA7, 0x04, 0x03, 0xA8, 0x04, 0x03, 0xA9, 0x04, 0x22, 0x07, + 0x04, 0x03, 0xB1, 0x04, 0x03, 0xB2, 0x04, 0x03, 0xB3, 0x04, 0x03, 0xB4, + 0x04, 0x03, 0xB5, 0x04, 0x03, 0xB6, 0x04, 0x03, 0xB7, 0x04, 0x03, 0xB8, + 0x04, 0x03, 0xB9, 0x04, 0x03, 0xBA, 0x04, 0x03, 0xBB, 0x04, 0x03, 0xBC, + 0x04, 0x03, 0xBD, 0x04, 0x03, 0xBE, 0x04, 0x03, 0xBF, 0x04, 0x03, 0xC0, + 0x04, 0x03, 0xC1, 0x04, 0x03, 0xC2, 0x04, 0x03, 0xC3, 0x04, 0x03, 0xC4, + 0x04, 0x03, 0xC5, 0x04, 0x03, 0xC6, 0x04, 0x03, 0xC7, 0x04, 0x03, 0xC8, + 0x04, 0x03, 0xC9, 0x04, 0x22, 0x02, 0x04, 0x03, 0xF5, 0x04, 0x03, 0xD1, + 0x04, 0x03, 0xF0, 0x04, 0x03, 0xD5, 0x04, 0x03, 0xF1, 0x04, 0x03, 0xD6, + 0x04, 0x03, 0x91, 0x04, 0x03, 0x92, 0x04, 0x03, 0x93, 0x04, 0x03, 0x94, + 0x04, 0x03, 0x95, 0x04, 0x03, 0x96, 0x04, 0x03, 0x97, 0x04, 0x03, 0x98, + 0x04, 0x03, 0x99, 0x04, 0x03, 0x9A, 0x04, 0x03, 0x9B, 0x04, 0x03, 0x9C, + 0x04, 0x03, 0x9D, 0x04, 0x03, 0x9E, 0x04, 0x03, 0x9F, 0x04, 0x03, 0xA0, + 0x04, 0x03, 0xA1, 0x04, 0x03, 0xF4, 0x04, 0x03, 0xA3, 0x04, 0x03, 0xA4, + 0x04, 0x03, 0xA5, 0x04, 0x03, 0xA6, 0x04, 0x03, 0xA7, 0x04, 0x03, 0xA8, + 0x04, 0x03, 0xA9, 0x04, 0x22, 0x07, 0x04, 0x03, 0xB1, 0x04, 0x03, 0xB2, + 0x04, 0x03, 0xB3, 0x04, 0x03, 0xB4, 0x04, 0x03, 0xB5, 0x04, 0x03, 0xB6, + 0x04, 0x03, 0xB7, 0x04, 0x03, 0xB8, 0x04, 0x03, 0xB9, 0x04, 0x03, 0xBA, + 0x04, 0x03, 0xBB, 0x04, 0x03, 0xBC, 0x04, 0x03, 0xBD, 0x04, 0x03, 0xBE, + 0x04, 0x03, 0xBF, 0x04, 0x03, 0xC0, 0x04, 0x03, 0xC1, 0x04, 0x03, 0xC2, + 0x04, 0x03, 0xC3, 0x04, 0x03, 0xC4, 0x04, 0x03, 0xC5, 0x04, 0x03, 0xC6, + 0x04, 0x03, 0xC7, 0x04, 0x03, 0xC8, 0x04, 0x03, 0xC9, 0x04, 0x22, 0x02, + 0x04, 0x03, 0xF5, 0x04, 0x03, 0xD1, 0x04, 0x03, 0xF0, 0x04, 0x03, 0xD5, + 0x04, 0x03, 0xF1, 0x04, 0x03, 0xD6, 0x04, 0x03, 0xDC, 0x04, 0x03, 0xDD, + 0x04, 0x00, 0x30, 0x04, 0x00, 0x31, 0x04, 0x00, 0x32, 0x04, 0x00, 0x33, + 0x04, 0x00, 0x34, 0x04, 0x00, 0x35, 0x04, 0x00, 0x36, 0x04, 0x00, 0x37, + 0x04, 0x00, 0x38, 0x04, 0x00, 0x39, 0x04, 0x00, 0x30, 0x04, 0x00, 0x31, + 0x04, 0x00, 0x32, 0x04, 0x00, 0x33, 0x04, 0x00, 0x34, 0x04, 0x00, 0x35, + 0x04, 0x00, 0x36, 0x04, 0x00, 0x37, 0x04, 0x00, 0x38, 0x04, 0x00, 0x39, + 0x04, 0x00, 0x30, 0x04, 0x00, 0x31, 0x04, 0x00, 0x32, 0x04, 0x00, 0x33, + 0x04, 0x00, 0x34, 0x04, 0x00, 0x35, 0x04, 0x00, 0x36, 0x04, 0x00, 0x37, + 0x04, 0x00, 0x38, 0x04, 0x00, 0x39, 0x04, 0x00, 0x30, 0x04, 0x00, 0x31, + 0x04, 0x00, 0x32, 0x04, 0x00, 0x33, 0x04, 0x00, 0x34, 0x04, 0x00, 0x35, + 0x04, 0x00, 0x36, 0x04, 0x00, 0x37, 0x04, 0x00, 0x38, 0x04, 0x00, 0x39, + 0x04, 0x00, 0x30, 0x04, 0x00, 0x31, 0x04, 0x00, 0x32, 0x04, 0x00, 0x33, + 0x04, 0x00, 0x34, 0x04, 0x00, 0x35, 0x04, 0x00, 0x36, 0x04, 0x00, 0x37, + 0x04, 0x00, 0x38, 0x04, 0x00, 0x39, 0x04, 0x06, 0x27, 0x04, 0x06, 0x28, + 0x04, 0x06, 0x2C, 0x04, 0x06, 0x2F, 0x04, 0x06, 0x48, 0x04, 0x06, 0x32, + 0x04, 0x06, 0x2D, 0x04, 0x06, 0x37, 0x04, 0x06, 0x4A, 0x04, 0x06, 0x43, + 0x04, 0x06, 0x44, 0x04, 0x06, 0x45, 0x04, 0x06, 0x46, 0x04, 0x06, 0x33, + 0x04, 0x06, 0x39, 0x04, 0x06, 0x41, 0x04, 0x06, 0x35, 0x04, 0x06, 0x42, + 0x04, 0x06, 0x31, 0x04, 0x06, 0x34, 0x04, 0x06, 0x2A, 0x04, 0x06, 0x2B, + 0x04, 0x06, 0x2E, 0x04, 0x06, 0x30, 0x04, 0x06, 0x36, 0x04, 0x06, 0x38, + 0x04, 0x06, 0x3A, 0x04, 0x06, 0x6E, 0x04, 0x06, 0xBA, 0x04, 0x06, 0xA1, + 0x04, 0x06, 0x6F, 0x04, 0x06, 0x28, 0x04, 0x06, 0x2C, 0x04, 0x06, 0x47, + 0x04, 0x06, 0x2D, 0x04, 0x06, 0x4A, 0x04, 0x06, 0x43, 0x04, 0x06, 0x44, + 0x04, 0x06, 0x45, 0x04, 0x06, 0x46, 0x04, 0x06, 0x33, 0x04, 0x06, 0x39, + 0x04, 0x06, 0x41, 0x04, 0x06, 0x35, 0x04, 0x06, 0x42, 0x04, 0x06, 0x34, + 0x04, 0x06, 0x2A, 0x04, 0x06, 0x2B, 0x04, 0x06, 0x2E, 0x04, 0x06, 0x36, + 0x04, 0x06, 0x3A, 0x04, 0x06, 0x2C, 0x04, 0x06, 0x2D, 0x04, 0x06, 0x4A, + 0x04, 0x06, 0x44, 0x04, 0x06, 0x46, 0x04, 0x06, 0x33, 0x04, 0x06, 0x39, + 0x04, 0x06, 0x35, 0x04, 0x06, 0x42, 0x04, 0x06, 0x34, 0x04, 0x06, 0x2E, + 0x04, 0x06, 0x36, 0x04, 0x06, 0x3A, 0x04, 0x06, 0xBA, 0x04, 0x06, 0x6F, + 0x04, 0x06, 0x28, 0x04, 0x06, 0x2C, 0x04, 0x06, 0x47, 0x04, 0x06, 0x2D, + 0x04, 0x06, 0x37, 0x04, 0x06, 0x4A, 0x04, 0x06, 0x43, 0x04, 0x06, 0x45, + 0x04, 0x06, 0x46, 0x04, 0x06, 0x33, 0x04, 0x06, 0x39, 0x04, 0x06, 0x41, + 0x04, 0x06, 0x35, 0x04, 0x06, 0x42, 0x04, 0x06, 0x34, 0x04, 0x06, 0x2A, + 0x04, 0x06, 0x2B, 0x04, 0x06, 0x2E, 0x04, 0x06, 0x36, 0x04, 0x06, 0x38, + 0x04, 0x06, 0x3A, 0x04, 0x06, 0x6E, 0x04, 0x06, 0xA1, 0x04, 0x06, 0x27, + 0x04, 0x06, 0x28, 0x04, 0x06, 0x2C, 0x04, 0x06, 0x2F, 0x04, 0x06, 0x47, + 0x04, 0x06, 0x48, 0x04, 0x06, 0x32, 0x04, 0x06, 0x2D, 0x04, 0x06, 0x37, + 0x04, 0x06, 0x4A, 0x04, 0x06, 0x44, 0x04, 0x06, 0x45, 0x04, 0x06, 0x46, + 0x04, 0x06, 0x33, 0x04, 0x06, 0x39, 0x04, 0x06, 0x41, 0x04, 0x06, 0x35, + 0x04, 0x06, 0x42, 0x04, 0x06, 0x31, 0x04, 0x06, 0x34, 0x04, 0x06, 0x2A, + 0x04, 0x06, 0x2B, 0x04, 0x06, 0x2E, 0x04, 0x06, 0x30, 0x04, 0x06, 0x36, + 0x04, 0x06, 0x38, 0x04, 0x06, 0x3A, 0x04, 0x06, 0x28, 0x04, 0x06, 0x2C, + 0x04, 0x06, 0x2F, 0x04, 0x06, 0x48, 0x04, 0x06, 0x32, 0x04, 0x06, 0x2D, + 0x04, 0x06, 0x37, 0x04, 0x06, 0x4A, 0x04, 0x06, 0x44, 0x04, 0x06, 0x45, + 0x04, 0x06, 0x46, 0x04, 0x06, 0x33, 0x04, 0x06, 0x39, 0x04, 0x06, 0x41, + 0x04, 0x06, 0x35, 0x04, 0x06, 0x42, 0x04, 0x06, 0x31, 0x04, 0x06, 0x34, + 0x04, 0x06, 0x2A, 0x04, 0x06, 0x2B, 0x04, 0x06, 0x2E, 0x04, 0x06, 0x30, + 0x04, 0x06, 0x36, 0x04, 0x06, 0x38, 0x04, 0x06, 0x3A, 0xC0, 0x00, 0x30, + 0x00, 0x00, 0x2E, 0xC0, 0x00, 0x30, 0x00, 0x00, 0x2C, 0xC0, 0x00, 0x31, + 0x00, 0x00, 0x2C, 0xC0, 0x00, 0x32, 0x00, 0x00, 0x2C, 0xC0, 0x00, 0x33, + 0x00, 0x00, 0x2C, 0xC0, 0x00, 0x34, 0x00, 0x00, 0x2C, 0xC0, 0x00, 0x35, + 0x00, 0x00, 0x2C, 0xC0, 0x00, 0x36, 0x00, 0x00, 0x2C, 0xC0, 0x00, 0x37, + 0x00, 0x00, 0x2C, 0xC0, 0x00, 0x38, 0x00, 0x00, 0x2C, 0xC0, 0x00, 0x39, + 0x00, 0x00, 0x2C, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x41, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x42, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x43, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x44, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x45, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x46, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x47, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x48, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x49, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x4A, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x4B, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x4C, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x4D, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x4E, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x4F, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x50, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x51, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x52, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x53, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x54, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x55, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x56, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, + 0x80, 0x00, 0x57, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x58, + 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28, 0x80, 0x00, 0x59, 0x00, 0x00, 0x29, + 0xC0, 0x00, 0x28, 0x80, 0x00, 0x5A, 0x00, 0x00, 0x29, 0xC0, 0x30, 0x14, + 0x80, 0x00, 0x53, 0x00, 0x30, 0x15, 0x1C, 0x00, 0x43, 0x1C, 0x00, 0x52, + 0x9C, 0x00, 0x43, 0x00, 0x00, 0x44, 0x9C, 0x00, 0x57, 0x00, 0x00, 0x5A, + 0x38, 0x00, 0x41, 0x38, 0x00, 0x42, 0x38, 0x00, 0x43, 0x38, 0x00, 0x44, + 0x38, 0x00, 0x45, 0x38, 0x00, 0x46, 0x38, 0x00, 0x47, 0x38, 0x00, 0x48, + 0x38, 0x00, 0x49, 0x38, 0x00, 0x4A, 0x38, 0x00, 0x4B, 0x38, 0x00, 0x4C, + 0x38, 0x00, 0x4D, 0x38, 0x00, 0x4E, 0x38, 0x00, 0x4F, 0x38, 0x00, 0x50, + 0x38, 0x00, 0x51, 0x38, 0x00, 0x52, 0x38, 0x00, 0x53, 0x38, 0x00, 0x54, + 0x38, 0x00, 0x55, 0x38, 0x00, 0x56, 0x38, 0x00, 0x57, 0x38, 0x00, 0x58, + 0x38, 0x00, 0x59, 0x38, 0x00, 0x5A, 0xB8, 0x00, 0x48, 0x00, 0x00, 0x56, + 0xB8, 0x00, 0x4D, 0x00, 0x00, 0x56, 0xB8, 0x00, 0x53, 0x00, 0x00, 0x44, + 0xB8, 0x00, 0x53, 0x00, 0x00, 0x53, 0xB8, 0x00, 0x50, 0x80, 0x00, 0x50, + 0x00, 0x00, 0x56, 0xB8, 0x00, 0x57, 0x00, 0x00, 0x43, 0xA0, 0x00, 0x4D, + 0x00, 0x00, 0x43, 0xA0, 0x00, 0x4D, 0x00, 0x00, 0x44, 0xB8, 0x00, 0x44, + 0x00, 0x00, 0x4A, 0xB8, 0x30, 0x7B, 0x00, 0x30, 0x4B, 0xB8, 0x30, 0xB3, + 0x00, 0x30, 0xB3, 0x38, 0x30, 0xB5, 0x38, 0x62, 0x4B, 0x38, 0x5B, 0x57, + 0x38, 0x53, 0xCC, 0x38, 0x30, 0xC7, 0x38, 0x4E, 0x8C, 0x38, 0x59, 0x1A, + 0x38, 0x89, 0xE3, 0x38, 0x59, 0x29, 0x38, 0x4E, 0xA4, 0x38, 0x66, 0x20, + 0x38, 0x71, 0x21, 0x38, 0x65, 0x99, 0x38, 0x52, 0x4D, 0x38, 0x5F, 0x8C, + 0x38, 0x51, 0x8D, 0x38, 0x65, 0xB0, 0x38, 0x52, 0x1D, 0x38, 0x7D, 0x42, + 0x38, 0x75, 0x1F, 0x38, 0x8C, 0xA9, 0x38, 0x58, 0xF0, 0x38, 0x54, 0x39, + 0x38, 0x6F, 0x14, 0x38, 0x62, 0x95, 0x38, 0x63, 0x55, 0x38, 0x4E, 0x00, + 0x38, 0x4E, 0x09, 0x38, 0x90, 0x4A, 0x38, 0x5D, 0xE6, 0x38, 0x4E, 0x2D, + 0x38, 0x53, 0xF3, 0x38, 0x63, 0x07, 0x38, 0x8D, 0x70, 0x38, 0x62, 0x53, + 0x38, 0x79, 0x81, 0x38, 0x7A, 0x7A, 0x38, 0x54, 0x08, 0x38, 0x6E, 0x80, + 0x38, 0x67, 0x09, 0x38, 0x67, 0x08, 0x38, 0x75, 0x33, 0x38, 0x52, 0x72, + 0x38, 0x55, 0xB6, 0x38, 0x91, 0x4D, 0xC0, 0x30, 0x14, 0x80, 0x67, 0x2C, + 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x4E, 0x09, 0x00, 0x30, 0x15, + 0xC0, 0x30, 0x14, 0x80, 0x4E, 0x8C, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, + 0x80, 0x5B, 0x89, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x70, 0xB9, + 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x62, 0x53, 0x00, 0x30, 0x15, + 0xC0, 0x30, 0x14, 0x80, 0x76, 0xD7, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, + 0x80, 0x52, 0xDD, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x65, 0x57, + 0x00, 0x30, 0x15, 0x1C, 0x5F, 0x97, 0x1C, 0x53, 0xEF, 0x00, 0x4E, 0x3D, + 0x00, 0x4E, 0x38, 0x00, 0x4E, 0x41, 0x02, 0x01, 0x22, 0x00, 0x4F, 0x60, + 0x00, 0x4F, 0xAE, 0x00, 0x4F, 0xBB, 0x00, 0x50, 0x02, 0x00, 0x50, 0x7A, + 0x00, 0x50, 0x99, 0x00, 0x50, 0xE7, 0x00, 0x50, 0xCF, 0x00, 0x34, 0x9E, + 0x02, 0x06, 0x3A, 0x00, 0x51, 0x4D, 0x00, 0x51, 0x54, 0x00, 0x51, 0x64, + 0x00, 0x51, 0x77, 0x02, 0x05, 0x1C, 0x00, 0x34, 0xB9, 0x00, 0x51, 0x67, + 0x00, 0x51, 0x8D, 0x02, 0x05, 0x4B, 0x00, 0x51, 0x97, 0x00, 0x51, 0xA4, + 0x00, 0x4E, 0xCC, 0x00, 0x51, 0xAC, 0x00, 0x51, 0xB5, 0x02, 0x91, 0xDF, + 0x00, 0x51, 0xF5, 0x00, 0x52, 0x03, 0x00, 0x34, 0xDF, 0x00, 0x52, 0x3B, + 0x00, 0x52, 0x46, 0x00, 0x52, 0x72, 0x00, 0x52, 0x77, 0x00, 0x35, 0x15, + 0x00, 0x52, 0xC7, 0x00, 0x52, 0xC9, 0x00, 0x52, 0xE4, 0x00, 0x52, 0xFA, + 0x00, 0x53, 0x05, 0x00, 0x53, 0x06, 0x00, 0x53, 0x17, 0x00, 0x53, 0x49, + 0x00, 0x53, 0x51, 0x00, 0x53, 0x5A, 0x00, 0x53, 0x73, 0x00, 0x53, 0x7D, + 0x00, 0x53, 0x7F, 0x00, 0x53, 0x7F, 0x00, 0x53, 0x7F, 0x02, 0x0A, 0x2C, + 0x00, 0x70, 0x70, 0x00, 0x53, 0xCA, 0x00, 0x53, 0xDF, 0x02, 0x0B, 0x63, + 0x00, 0x53, 0xEB, 0x00, 0x53, 0xF1, 0x00, 0x54, 0x06, 0x00, 0x54, 0x9E, + 0x00, 0x54, 0x38, 0x00, 0x54, 0x48, 0x00, 0x54, 0x68, 0x00, 0x54, 0xA2, + 0x00, 0x54, 0xF6, 0x00, 0x55, 0x10, 0x00, 0x55, 0x53, 0x00, 0x55, 0x63, + 0x00, 0x55, 0x84, 0x00, 0x55, 0x84, 0x00, 0x55, 0x99, 0x00, 0x55, 0xAB, + 0x00, 0x55, 0xB3, 0x00, 0x55, 0xC2, 0x00, 0x57, 0x16, 0x00, 0x56, 0x06, + 0x00, 0x57, 0x17, 0x00, 0x56, 0x51, 0x00, 0x56, 0x74, 0x00, 0x52, 0x07, + 0x00, 0x58, 0xEE, 0x00, 0x57, 0xCE, 0x00, 0x57, 0xF4, 0x00, 0x58, 0x0D, + 0x00, 0x57, 0x8B, 0x00, 0x58, 0x32, 0x00, 0x58, 0x31, 0x00, 0x58, 0xAC, + 0x02, 0x14, 0xE4, 0x00, 0x58, 0xF2, 0x00, 0x58, 0xF7, 0x00, 0x59, 0x06, + 0x00, 0x59, 0x1A, 0x00, 0x59, 0x22, 0x00, 0x59, 0x62, 0x02, 0x16, 0xA8, + 0x02, 0x16, 0xEA, 0x00, 0x59, 0xEC, 0x00, 0x5A, 0x1B, 0x00, 0x5A, 0x27, + 0x00, 0x59, 0xD8, 0x00, 0x5A, 0x66, 0x00, 0x36, 0xEE, 0x00, 0x36, 0xFC, + 0x00, 0x5B, 0x08, 0x00, 0x5B, 0x3E, 0x00, 0x5B, 0x3E, 0x02, 0x19, 0xC8, + 0x00, 0x5B, 0xC3, 0x00, 0x5B, 0xD8, 0x00, 0x5B, 0xE7, 0x00, 0x5B, 0xF3, + 0x02, 0x1B, 0x18, 0x00, 0x5B, 0xFF, 0x00, 0x5C, 0x06, 0x00, 0x5F, 0x53, + 0x00, 0x5C, 0x22, 0x00, 0x37, 0x81, 0x00, 0x5C, 0x60, 0x00, 0x5C, 0x6E, + 0x00, 0x5C, 0xC0, 0x00, 0x5C, 0x8D, 0x02, 0x1D, 0xE4, 0x00, 0x5D, 0x43, + 0x02, 0x1D, 0xE6, 0x00, 0x5D, 0x6E, 0x00, 0x5D, 0x6B, 0x00, 0x5D, 0x7C, + 0x00, 0x5D, 0xE1, 0x00, 0x5D, 0xE2, 0x00, 0x38, 0x2F, 0x00, 0x5D, 0xFD, + 0x00, 0x5E, 0x28, 0x00, 0x5E, 0x3D, 0x00, 0x5E, 0x69, 0x00, 0x38, 0x62, + 0x02, 0x21, 0x83, 0x00, 0x38, 0x7C, 0x00, 0x5E, 0xB0, 0x00, 0x5E, 0xB3, + 0x00, 0x5E, 0xB6, 0x00, 0x5E, 0xCA, 0x02, 0xA3, 0x92, 0x00, 0x5E, 0xFE, + 0x02, 0x23, 0x31, 0x02, 0x23, 0x31, 0x00, 0x82, 0x01, 0x00, 0x5F, 0x22, + 0x00, 0x5F, 0x22, 0x00, 0x38, 0xC7, 0x02, 0x32, 0xB8, 0x02, 0x61, 0xDA, + 0x00, 0x5F, 0x62, 0x00, 0x5F, 0x6B, 0x00, 0x38, 0xE3, 0x00, 0x5F, 0x9A, + 0x00, 0x5F, 0xCD, 0x00, 0x5F, 0xD7, 0x00, 0x5F, 0xF9, 0x00, 0x60, 0x81, + 0x00, 0x39, 0x3A, 0x00, 0x39, 0x1C, 0x00, 0x60, 0x94, 0x02, 0x26, 0xD4, + 0x00, 0x60, 0xC7, 0x00, 0x61, 0x48, 0x00, 0x61, 0x4C, 0x00, 0x61, 0x4E, + 0x00, 0x61, 0x4C, 0x00, 0x61, 0x7A, 0x00, 0x61, 0x8E, 0x00, 0x61, 0xB2, + 0x00, 0x61, 0xA4, 0x00, 0x61, 0xAF, 0x00, 0x61, 0xDE, 0x00, 0x61, 0xF2, + 0x00, 0x61, 0xF6, 0x00, 0x62, 0x10, 0x00, 0x62, 0x1B, 0x00, 0x62, 0x5D, + 0x00, 0x62, 0xB1, 0x00, 0x62, 0xD4, 0x00, 0x63, 0x50, 0x02, 0x2B, 0x0C, + 0x00, 0x63, 0x3D, 0x00, 0x62, 0xFC, 0x00, 0x63, 0x68, 0x00, 0x63, 0x83, + 0x00, 0x63, 0xE4, 0x02, 0x2B, 0xF1, 0x00, 0x64, 0x22, 0x00, 0x63, 0xC5, + 0x00, 0x63, 0xA9, 0x00, 0x3A, 0x2E, 0x00, 0x64, 0x69, 0x00, 0x64, 0x7E, + 0x00, 0x64, 0x9D, 0x00, 0x64, 0x77, 0x00, 0x3A, 0x6C, 0x00, 0x65, 0x4F, + 0x00, 0x65, 0x6C, 0x02, 0x30, 0x0A, 0x00, 0x65, 0xE3, 0x00, 0x66, 0xF8, + 0x00, 0x66, 0x49, 0x00, 0x3B, 0x19, 0x00, 0x66, 0x91, 0x00, 0x3B, 0x08, + 0x00, 0x3A, 0xE4, 0x00, 0x51, 0x92, 0x00, 0x51, 0x95, 0x00, 0x67, 0x00, + 0x00, 0x66, 0x9C, 0x00, 0x80, 0xAD, 0x00, 0x43, 0xD9, 0x00, 0x67, 0x17, + 0x00, 0x67, 0x1B, 0x00, 0x67, 0x21, 0x00, 0x67, 0x5E, 0x00, 0x67, 0x53, + 0x02, 0x33, 0xC3, 0x00, 0x3B, 0x49, 0x00, 0x67, 0xFA, 0x00, 0x67, 0x85, + 0x00, 0x68, 0x52, 0x00, 0x68, 0x85, 0x02, 0x34, 0x6D, 0x00, 0x68, 0x8E, + 0x00, 0x68, 0x1F, 0x00, 0x69, 0x14, 0x00, 0x3B, 0x9D, 0x00, 0x69, 0x42, + 0x00, 0x69, 0xA3, 0x00, 0x69, 0xEA, 0x00, 0x6A, 0xA8, 0x02, 0x36, 0xA3, + 0x00, 0x6A, 0xDB, 0x00, 0x3C, 0x18, 0x00, 0x6B, 0x21, 0x02, 0x38, 0xA7, + 0x00, 0x6B, 0x54, 0x00, 0x3C, 0x4E, 0x00, 0x6B, 0x72, 0x00, 0x6B, 0x9F, + 0x00, 0x6B, 0xBA, 0x00, 0x6B, 0xBB, 0x02, 0x3A, 0x8D, 0x02, 0x1D, 0x0B, + 0x02, 0x3A, 0xFA, 0x00, 0x6C, 0x4E, 0x02, 0x3C, 0xBC, 0x00, 0x6C, 0xBF, + 0x00, 0x6C, 0xCD, 0x00, 0x6C, 0x67, 0x00, 0x6D, 0x16, 0x00, 0x6D, 0x3E, + 0x00, 0x6D, 0x77, 0x00, 0x6D, 0x41, 0x00, 0x6D, 0x69, 0x00, 0x6D, 0x78, + 0x00, 0x6D, 0x85, 0x02, 0x3D, 0x1E, 0x00, 0x6D, 0x34, 0x00, 0x6E, 0x2F, + 0x00, 0x6E, 0x6E, 0x00, 0x3D, 0x33, 0x00, 0x6E, 0xCB, 0x00, 0x6E, 0xC7, + 0x02, 0x3E, 0xD1, 0x00, 0x6D, 0xF9, 0x00, 0x6F, 0x6E, 0x02, 0x3F, 0x5E, + 0x02, 0x3F, 0x8E, 0x00, 0x6F, 0xC6, 0x00, 0x70, 0x39, 0x00, 0x70, 0x1E, + 0x00, 0x70, 0x1B, 0x00, 0x3D, 0x96, 0x00, 0x70, 0x4A, 0x00, 0x70, 0x7D, + 0x00, 0x70, 0x77, 0x00, 0x70, 0xAD, 0x02, 0x05, 0x25, 0x00, 0x71, 0x45, + 0x02, 0x42, 0x63, 0x00, 0x71, 0x9C, 0x02, 0x43, 0xAB, 0x00, 0x72, 0x28, + 0x00, 0x72, 0x35, 0x00, 0x72, 0x50, 0x02, 0x46, 0x08, 0x00, 0x72, 0x80, + 0x00, 0x72, 0x95, 0x02, 0x47, 0x35, 0x02, 0x48, 0x14, 0x00, 0x73, 0x7A, + 0x00, 0x73, 0x8B, 0x00, 0x3E, 0xAC, 0x00, 0x73, 0xA5, 0x00, 0x3E, 0xB8, + 0x00, 0x3E, 0xB8, 0x00, 0x74, 0x47, 0x00, 0x74, 0x5C, 0x00, 0x74, 0x71, + 0x00, 0x74, 0x85, 0x00, 0x74, 0xCA, 0x00, 0x3F, 0x1B, 0x00, 0x75, 0x24, + 0x02, 0x4C, 0x36, 0x00, 0x75, 0x3E, 0x02, 0x4C, 0x92, 0x00, 0x75, 0x70, + 0x02, 0x21, 0x9F, 0x00, 0x76, 0x10, 0x02, 0x4F, 0xA1, 0x02, 0x4F, 0xB8, + 0x02, 0x50, 0x44, 0x00, 0x3F, 0xFC, 0x00, 0x40, 0x08, 0x00, 0x76, 0xF4, + 0x02, 0x50, 0xF3, 0x02, 0x50, 0xF2, 0x02, 0x51, 0x19, 0x02, 0x51, 0x33, + 0x00, 0x77, 0x1E, 0x00, 0x77, 0x1F, 0x00, 0x77, 0x1F, 0x00, 0x77, 0x4A, + 0x00, 0x40, 0x39, 0x00, 0x77, 0x8B, 0x00, 0x40, 0x46, 0x00, 0x40, 0x96, + 0x02, 0x54, 0x1D, 0x00, 0x78, 0x4E, 0x00, 0x78, 0x8C, 0x00, 0x78, 0xCC, + 0x00, 0x40, 0xE3, 0x02, 0x56, 0x26, 0x00, 0x79, 0x56, 0x02, 0x56, 0x9A, + 0x02, 0x56, 0xC5, 0x00, 0x79, 0x8F, 0x00, 0x79, 0xEB, 0x00, 0x41, 0x2F, + 0x00, 0x7A, 0x40, 0x00, 0x7A, 0x4A, 0x00, 0x7A, 0x4F, 0x02, 0x59, 0x7C, + 0x02, 0x5A, 0xA7, 0x02, 0x5A, 0xA7, 0x00, 0x7A, 0xEE, 0x00, 0x42, 0x02, + 0x02, 0x5B, 0xAB, 0x00, 0x7B, 0xC6, 0x00, 0x7B, 0xC9, 0x00, 0x42, 0x27, + 0x02, 0x5C, 0x80, 0x00, 0x7C, 0xD2, 0x00, 0x42, 0xA0, 0x00, 0x7C, 0xE8, + 0x00, 0x7C, 0xE3, 0x00, 0x7D, 0x00, 0x02, 0x5F, 0x86, 0x00, 0x7D, 0x63, + 0x00, 0x43, 0x01, 0x00, 0x7D, 0xC7, 0x00, 0x7E, 0x02, 0x00, 0x7E, 0x45, + 0x00, 0x43, 0x34, 0x02, 0x62, 0x28, 0x02, 0x62, 0x47, 0x00, 0x43, 0x59, + 0x02, 0x62, 0xD9, 0x00, 0x7F, 0x7A, 0x02, 0x63, 0x3E, 0x00, 0x7F, 0x95, + 0x00, 0x7F, 0xFA, 0x00, 0x80, 0x05, 0x02, 0x64, 0xDA, 0x02, 0x65, 0x23, + 0x00, 0x80, 0x60, 0x02, 0x65, 0xA8, 0x00, 0x80, 0x70, 0x02, 0x33, 0x5F, + 0x00, 0x43, 0xD5, 0x00, 0x80, 0xB2, 0x00, 0x81, 0x03, 0x00, 0x44, 0x0B, + 0x00, 0x81, 0x3E, 0x00, 0x5A, 0xB5, 0x02, 0x67, 0xA7, 0x02, 0x67, 0xB5, + 0x02, 0x33, 0x93, 0x02, 0x33, 0x9C, 0x00, 0x82, 0x01, 0x00, 0x82, 0x04, + 0x00, 0x8F, 0x9E, 0x00, 0x44, 0x6B, 0x00, 0x82, 0x91, 0x00, 0x82, 0x8B, + 0x00, 0x82, 0x9D, 0x00, 0x52, 0xB3, 0x00, 0x82, 0xB1, 0x00, 0x82, 0xB3, + 0x00, 0x82, 0xBD, 0x00, 0x82, 0xE6, 0x02, 0x6B, 0x3C, 0x00, 0x82, 0xE5, + 0x00, 0x83, 0x1D, 0x00, 0x83, 0x63, 0x00, 0x83, 0xAD, 0x00, 0x83, 0x23, + 0x00, 0x83, 0xBD, 0x00, 0x83, 0xE7, 0x00, 0x84, 0x57, 0x00, 0x83, 0x53, + 0x00, 0x83, 0xCA, 0x00, 0x83, 0xCC, 0x00, 0x83, 0xDC, 0x02, 0x6C, 0x36, + 0x02, 0x6D, 0x6B, 0x02, 0x6C, 0xD5, 0x00, 0x45, 0x2B, 0x00, 0x84, 0xF1, + 0x00, 0x84, 0xF3, 0x00, 0x85, 0x16, 0x02, 0x73, 0xCA, 0x00, 0x85, 0x64, + 0x02, 0x6F, 0x2C, 0x00, 0x45, 0x5D, 0x00, 0x45, 0x61, 0x02, 0x6F, 0xB1, + 0x02, 0x70, 0xD2, 0x00, 0x45, 0x6B, 0x00, 0x86, 0x50, 0x00, 0x86, 0x5C, + 0x00, 0x86, 0x67, 0x00, 0x86, 0x69, 0x00, 0x86, 0xA9, 0x00, 0x86, 0x88, + 0x00, 0x87, 0x0E, 0x00, 0x86, 0xE2, 0x00, 0x87, 0x79, 0x00, 0x87, 0x28, + 0x00, 0x87, 0x6B, 0x00, 0x87, 0x86, 0x00, 0x45, 0xD7, 0x00, 0x87, 0xE1, + 0x00, 0x88, 0x01, 0x00, 0x45, 0xF9, 0x00, 0x88, 0x60, 0x00, 0x88, 0x63, + 0x02, 0x76, 0x67, 0x00, 0x88, 0xD7, 0x00, 0x88, 0xDE, 0x00, 0x46, 0x35, + 0x00, 0x88, 0xFA, 0x00, 0x34, 0xBB, 0x02, 0x78, 0xAE, 0x02, 0x79, 0x66, + 0x00, 0x46, 0xBE, 0x00, 0x46, 0xC7, 0x00, 0x8A, 0xA0, 0x00, 0x8A, 0xED, + 0x00, 0x8B, 0x8A, 0x00, 0x8C, 0x55, 0x02, 0x7C, 0xA8, 0x00, 0x8C, 0xAB, + 0x00, 0x8C, 0xC1, 0x00, 0x8D, 0x1B, 0x00, 0x8D, 0x77, 0x02, 0x7F, 0x2F, + 0x02, 0x08, 0x04, 0x00, 0x8D, 0xCB, 0x00, 0x8D, 0xBC, 0x00, 0x8D, 0xF0, + 0x02, 0x08, 0xDE, 0x00, 0x8E, 0xD4, 0x00, 0x8F, 0x38, 0x02, 0x85, 0xD2, + 0x02, 0x85, 0xED, 0x00, 0x90, 0x94, 0x00, 0x90, 0xF1, 0x00, 0x91, 0x11, + 0x02, 0x87, 0x2E, 0x00, 0x91, 0x1B, 0x00, 0x92, 0x38, 0x00, 0x92, 0xD7, + 0x00, 0x92, 0xD8, 0x00, 0x92, 0x7C, 0x00, 0x93, 0xF9, 0x00, 0x94, 0x15, + 0x02, 0x8B, 0xFA, 0x00, 0x95, 0x8B, 0x00, 0x49, 0x95, 0x00, 0x95, 0xB7, + 0x02, 0x8D, 0x77, 0x00, 0x49, 0xE6, 0x00, 0x96, 0xC3, 0x00, 0x5D, 0xB2, + 0x00, 0x97, 0x23, 0x02, 0x91, 0x45, 0x02, 0x92, 0x1A, 0x00, 0x4A, 0x6E, + 0x00, 0x4A, 0x76, 0x00, 0x97, 0xE0, 0x02, 0x94, 0x0A, 0x00, 0x4A, 0xB2, + 0x02, 0x94, 0x96, 0x00, 0x98, 0x0B, 0x00, 0x98, 0x0B, 0x00, 0x98, 0x29, + 0x02, 0x95, 0xB6, 0x00, 0x98, 0xE2, 0x00, 0x4B, 0x33, 0x00, 0x99, 0x29, + 0x00, 0x99, 0xA7, 0x00, 0x99, 0xC2, 0x00, 0x99, 0xFE, 0x00, 0x4B, 0xCE, + 0x02, 0x9B, 0x30, 0x00, 0x9B, 0x12, 0x00, 0x9C, 0x40, 0x00, 0x9C, 0xFD, + 0x00, 0x4C, 0xCE, 0x00, 0x4C, 0xED, 0x00, 0x9D, 0x67, 0x02, 0xA0, 0xCE, + 0x00, 0x4C, 0xF8, 0x02, 0xA1, 0x05, 0x02, 0xA2, 0x0E, 0x02, 0xA2, 0x91, + 0x00, 0x9E, 0xBB, 0x00, 0x4D, 0x56, 0x00, 0x9E, 0xF9, 0x00, 0x9E, 0xFE, + 0x00, 0x9F, 0x05, 0x00, 0x9F, 0x0F, 0x00, 0x9F, 0x16, 0x00, 0x9F, 0x3B, + 0x02, 0xA6, 0x00 +}; + +const decomp_index_table_t gl_uninorm_decomp_index_table = +{ + { + 0, 32, 64, 96, 128, -1, 160, 192, + 224, 256, 288, 320, 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, 384, 416, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 448, 480, + -1, -1, -1, -1, 512, 544, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 576, 608, -1, -1, + -1, -1, -1, 640, 672, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 704 + }, + { + -1, -1, -1, -1, -1, 0, 32, 64, + 96, 128, 160, 192, -1, 224, 256, 288, + 320, 352, -1, -1, -1, 384, 416, 448, + -1, -1, 480, 512, 544, 576, 608, 640, + 672, 704, 736, 768, -1, -1, 800, 832, + -1, -1, -1, -1, 864, -1, -1, -1, + -1, 896, -1, 928, -1, -1, 960, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 992, 1024, -1, -1, -1, 1056, -1, + -1, 1088, 1120, -1, -1, -1, -1, -1, + -1, -1, 1152, -1, 1184, -1, 1216, -1, + -1, -1, 1248, -1, -1, -1, 1280, -1, + -1, -1, 1312, -1, -1, -1, 1344, -1, + -1, 1376, -1, -1, -1, 1408, 1440, -1, + 1472, -1, 1504, 1536, 1568, 1600, -1, -1, + -1, 1632, -1, -1, -1, -1, -1, 1664, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 1696, 1728, 1760, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1792, 1824, 1856, 1888, 1920, -1, -1, + 1952, 1984, 2016, 2048, 2080, 2112, 2144, 2176, + 2208, 2240, 2272, 2304, 2336, 2368, 2400, 2432, + 2464, 2496, 2528, 2560, 2592, 2624, -1, -1, + 2656, 2688, 2720, 2752, 2784, 2816, 2848, -1, + 2880, 2912, 2944, 2976, 3008, 3040, -1, 3072, + -1, 3104, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 3136, 3168, 3200, 3232, 3264, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 3296, -1, -1, 3328, -1, -1, 3360, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 3392, -1, -1, -1, -1, + -1, -1, -1, 3424, -1, -1, -1, -1, + -1, -1, -1, -1, 3456, -1, -1, 3488, + 3520, 3552, 3584, 3616, 3648, 3680, 3712, -1, + 3744, 3776, 3808, 3840, 3872, 3904, 3936, 3968, + -1, 4000, 4032, 4064, 4096, -1, -1, -1, + 4128, 4160, 4192, 4224, 4256, 4288, 4320, 4352, + 4384, 4416, 4448, 4480, 4512, 4544, 4576, 4608, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 4640, -1, -1, -1, + -1, -1, -1, 4672, -1, -1, -1, 4704, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 4736, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 4768, 4800, 4832, 4864, 4896, 4928, 4960, 4992, + 5024, 5056, 5088, 5120, 5152, 5184, 5216, -1, + 5248, 5280, 5312, 5344, 5376, 5408, 5440, 5472, + 5504, 5536, 5568, 5600, 5632, 5664, 5696, 5728, + 5760, 5792, 5824, 5856, 5888, 5920, 5952, 5984, + 6016, 6048, 6080, 6112, 6144, 6176, 6208, 6240, + 6272, 6304, 6336, 6368, 6400, 6432, 6464, 6496, + -1, -1, -1, -1, 6528, 6560, -1, -1, + -1, 6592, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 6624, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 6656, -1, -1, + -1, -1, -1, -1, -1, 6688, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 6720, 6752, -1, 6784, 6816, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 6848, 6880, 6912, 6944, 6976, 7008, 7040, 7072, + 7104, 7136, 7168, 7200, 7232, 7264, 7296, 7328, + 7360, 7392, 7424, 7456, 7488, 7520, 7552, 7584, + 7616, 7648, 7680, 7712, 7744, 7776, 7808, 7840, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 7872, 7904, 7936, 7968, 8000, 8032, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 8064, 8096, 8128, 8160, 8192, -1, -1, -1, + 8224, 8256, 8288, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 8320, 8352, 8384, 8416, 8448, 8480, 8512, 8544, + 8576, 8608, 8640, 8672, 8704, 8736, 8768, 8800, + 8832, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1 + }, + { + 32768, -1, -1, -1, -1, -1, -1, -1, + 32769, -1, 32771, -1, -1, -1, -1, 32772, + -1, -1, 32774, 32775, 32776, 32778, -1, -1, + 32779, 32781, 32782, -1, 32783, 32786, 32789, -1, + 24, 26, 28, 30, 32, 34, -1, 36, + 38, 40, 42, 44, 46, 48, 50, 52, + -1, 54, 56, 58, 60, 62, 64, -1, + -1, 66, 68, 70, 72, 74, -1, -1, + 76, 78, 80, 82, 84, 86, -1, 88, + 90, 92, 94, 96, 98, 100, 102, 104, + -1, 106, 108, 110, 112, 114, 116, -1, + -1, 118, 120, 122, 124, 126, -1, 128, + 130, 132, 134, 136, 138, 140, 142, 144, + 146, 148, 150, 152, 154, 156, 158, 160, + -1, -1, 162, 164, 166, 168, 170, 172, + 174, 176, 178, 180, 182, 184, 186, 188, + 190, 192, 194, 196, 198, 200, -1, -1, + 202, 204, 206, 208, 210, 212, 214, 216, + 218, -1, 32988, 32990, 224, 226, 228, 230, + -1, 232, 234, 236, 238, 240, 242, 33012, + 33014, -1, -1, 248, 250, 252, 254, 256, + 258, 33028, -1, -1, 262, 264, 266, 268, + 270, 272, -1, -1, 274, 276, 278, 280, + 282, 284, 286, 288, 290, 292, 294, 296, + 298, 300, 302, 304, 306, 308, -1, -1, + 310, 312, 314, 316, 318, 320, 322, 324, + 326, 328, 330, 332, 334, 336, 338, 340, + 342, 344, 346, 348, 350, 352, 354, 33124, + 357, 359, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 361, + 363, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 33133, 33135, 33137, 33139, + 33141, 33143, 33145, 33147, 33149, 383, 385, 387, + 389, 391, 393, 395, 397, 399, 401, 403, + 405, 407, 409, 411, 413, -1, 415, 417, + 419, 421, 423, 425, -1, -1, 427, 429, + 431, 433, 435, 437, 439, 441, 443, 445, + 447, 33217, 33219, 33221, 455, 457, -1, -1, + 459, 461, 463, 465, 467, 469, 471, 473, + 475, 477, 479, 481, 483, 485, 487, 489, + 491, 493, 495, 497, 499, 501, 503, 505, + 507, 509, 511, 513, 515, 517, 519, 521, + 523, 525, 527, 529, -1, -1, 531, 533, + -1, -1, -1, -1, -1, -1, 535, 537, + 539, 541, 543, 545, 547, 549, 551, 553, + 555, 557, 559, 561, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 33331, 33332, 33333, 33334, 33335, 33336, 33337, 33338, + 33339, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 33340, 33342, 33344, 33346, 33348, 33350, -1, -1, + 33352, 33353, 33354, 33355, 33356, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 589, 590, -1, 591, 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, 594, -1, -1, -1, + -1, -1, 33363, -1, -1, -1, 597, -1, + -1, -1, -1, -1, 33366, 600, 602, 604, + 605, 607, 609, -1, 611, -1, 613, 615, + 617, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 619, 621, 623, 625, 627, 629, + 631, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 633, 635, 637, 639, 641, -1, + 33411, 33412, 33413, 646, 648, 33418, 33419, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 33420, 33421, 33422, -1, 33423, 33424, -1, -1, + -1, 33425, -1, -1, -1, -1, -1, -1, + 658, 660, -1, 662, -1, -1, -1, 664, + -1, -1, -1, -1, 666, 668, 670, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 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, 674, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 676, 678, -1, 680, -1, -1, -1, 682, + -1, -1, -1, -1, 684, 686, 688, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 690, 692, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 694, 696, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 698, 700, 702, 704, -1, -1, 706, 708, + -1, -1, 710, 712, 714, 716, 718, 720, + -1, -1, 722, 724, 726, 728, 730, 732, + -1, -1, 734, 736, 738, 740, 742, 744, + 746, 748, 750, 752, 754, 756, -1, -1, + 758, 760, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 33530, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 764, 766, 768, 770, 772, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 33542, 33544, 33546, + 33548, -1, -1, -1, -1, -1, -1, -1, + 782, -1, 784, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 786, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 788, -1, -1, -1, -1, -1, -1, + -1, 790, -1, -1, 792, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 794, 796, 798, 800, 802, 804, 806, 808, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 810, 812, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 814, 816, -1, 818, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 820, -1, -1, 822, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 824, 826, 828, -1, -1, 830, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 832, -1, -1, 834, 836, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 838, 840, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 842, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 844, 846, 848, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 850, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 852, -1, -1, -1, -1, -1, -1, 854, + 856, -1, 858, 860, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 862, 864, 866, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 868, -1, 870, 872, 874, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 33644, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 33646, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 33648, 33650, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 33652, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 885, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 887, -1, -1, + -1, -1, 889, -1, -1, -1, -1, 891, + -1, -1, -1, -1, 893, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 895, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 897, -1, 899, 901, 33671, + 905, 33675, -1, -1, -1, -1, -1, -1, + -1, 909, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 911, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 913, -1, -1, + -1, -1, 915, -1, -1, -1, -1, 917, + -1, -1, -1, -1, 919, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 921, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 923, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 33693, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 926, -1, + 928, -1, 930, -1, 932, -1, 934, -1, + -1, -1, 936, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 938, -1, 940, -1, -1, + 942, 944, -1, 946, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 33716, 33717, 33718, -1, + 33719, 33720, 33721, 33722, 33723, 33724, 33725, 33726, + 33727, 33728, 33729, -1, 33730, 33731, 33732, 33733, + 33734, 33735, 33736, 33737, 33738, 33739, 33740, 33741, + 33742, 33743, 33744, 33745, 33746, 33747, -1, 33748, + 33749, 33750, 33751, 33752, 33753, 33754, 33755, 33756, + 33757, 33758, 33759, 33760, 33761, 33762, 33763, 33764, + 33765, 33766, 33767, 33768, 33769, 33770, 33771, 33772, + 33773, 33774, 33775, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 33776, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 33777, 33778, 33779, 33780, 33781, + 33782, 33783, 33784, 33785, 33786, 33787, 33788, 33789, + 33790, 33791, 33792, 33793, 33794, 33795, 33796, 33797, + 33798, 33799, 33800, 33801, 33802, 33803, 33804, 33805, + 33806, 33807, 33808, 33809, 33810, 33811, 33812, 33813, + 1046, 1048, 1050, 1052, 1054, 1056, 1058, 1060, + 1062, 1064, 1066, 1068, 1070, 1072, 1074, 1076, + 1078, 1080, 1082, 1084, 1086, 1088, 1090, 1092, + 1094, 1096, 1098, 1100, 1102, 1104, 1106, 1108, + 1110, 1112, 1114, 1116, 1118, 1120, 1122, 1124, + 1126, 1128, 1130, 1132, 1134, 1136, 1138, 1140, + 1142, 1144, 1146, 1148, 1150, 1152, 1154, 1156, + 1158, 1160, 1162, 1164, 1166, 1168, 1170, 1172, + 1174, 1176, 1178, 1180, 1182, 1184, 1186, 1188, + 1190, 1192, 1194, 1196, 1198, 1200, 1202, 1204, + 1206, 1208, 1210, 1212, 1214, 1216, 1218, 1220, + 1222, 1224, 1226, 1228, 1230, 1232, 1234, 1236, + 1238, 1240, 1242, 1244, 1246, 1248, 1250, 1252, + 1254, 1256, 1258, 1260, 1262, 1264, 1266, 1268, + 1270, 1272, 1274, 1276, 1278, 1280, 1282, 1284, + 1286, 1288, 1290, 1292, 1294, 1296, 1298, 1300, + 1302, 1304, 1306, 1308, 1310, 1312, 1314, 1316, + 1318, 1320, 1322, 1324, 1326, 1328, 1330, 1332, + 1334, 1336, 1338, 1340, 1342, 1344, 1346, 1348, + 1350, 1352, 34122, 1356, -1, -1, -1, -1, + 1358, 1360, 1362, 1364, 1366, 1368, 1370, 1372, + 1374, 1376, 1378, 1380, 1382, 1384, 1386, 1388, + 1390, 1392, 1394, 1396, 1398, 1400, 1402, 1404, + 1406, 1408, 1410, 1412, 1414, 1416, 1418, 1420, + 1422, 1424, 1426, 1428, 1430, 1432, 1434, 1436, + 1438, 1440, 1442, 1444, 1446, 1448, 1450, 1452, + 1454, 1456, 1458, 1460, 1462, 1464, 1466, 1468, + 1470, 1472, 1474, 1476, 1478, 1480, 1482, 1484, + 1486, 1488, 1490, 1492, 1494, 1496, 1498, 1500, + 1502, 1504, 1506, 1508, 1510, 1512, 1514, 1516, + 1518, 1520, 1522, 1524, 1526, 1528, 1530, 1532, + 1534, 1536, -1, -1, -1, -1, -1, -1, + 1538, 1540, 1542, 1544, 1546, 1548, 1550, 1552, + 1554, 1556, 1558, 1560, 1562, 1564, 1566, 1568, + 1570, 1572, 1574, 1576, 1578, 1580, -1, -1, + 1582, 1584, 1586, 1588, 1590, 1592, -1, -1, + 1594, 1596, 1598, 1600, 1602, 1604, 1606, 1608, + 1610, 1612, 1614, 1616, 1618, 1620, 1622, 1624, + 1626, 1628, 1630, 1632, 1634, 1636, 1638, 1640, + 1642, 1644, 1646, 1648, 1650, 1652, 1654, 1656, + 1658, 1660, 1662, 1664, 1666, 1668, -1, -1, + 1670, 1672, 1674, 1676, 1678, 1680, -1, -1, + 1682, 1684, 1686, 1688, 1690, 1692, 1694, 1696, + -1, 1698, -1, 1700, -1, 1702, -1, 1704, + 1706, 1708, 1710, 1712, 1714, 1716, 1718, 1720, + 1722, 1724, 1726, 1728, 1730, 1732, 1734, 1736, + 1738, 1740, 1741, 1743, 1744, 1746, 1747, 1749, + 1750, 1752, 1753, 1755, 1756, 1758, -1, -1, + 1759, 1761, 1763, 1765, 1767, 1769, 1771, 1773, + 1775, 1777, 1779, 1781, 1783, 1785, 1787, 1789, + 1791, 1793, 1795, 1797, 1799, 1801, 1803, 1805, + 1807, 1809, 1811, 1813, 1815, 1817, 1819, 1821, + 1823, 1825, 1827, 1829, 1831, 1833, 1835, 1837, + 1839, 1841, 1843, 1845, 1847, 1849, 1851, 1853, + 1855, 1857, 1859, 1861, 1863, -1, 1865, 1867, + 1869, 1871, 1873, 1875, 1876, 34646, 1880, 34649, + 34651, 1885, 1887, 1889, 1891, -1, 1893, 1895, + 1897, 1899, 1900, 1902, 1903, 1905, 1907, 1909, + 1911, 1913, 1915, 1917, -1, -1, 1918, 1920, + 1922, 1924, 1926, 1928, -1, 1929, 1931, 1933, + 1935, 1937, 1939, 1941, 1942, 1944, 1946, 1948, + 1950, 1952, 1954, 1956, 1957, 1959, 1961, 1962, + -1, -1, 1963, 1965, 1967, -1, 1969, 1971, + 1973, 1975, 1976, 1978, 1979, 1981, 34750, -1, + 1984, 1985, 34754, 34755, 34756, 34757, 34758, 34759, + 34760, 34761, 34762, -1, -1, -1, -1, -1, + -1, 34763, -1, -1, -1, -1, -1, 34764, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 34766, 34767, 34769, -1, + -1, -1, -1, -1, -1, -1, -1, 34772, + -1, -1, -1, 34773, 34775, -1, 34778, 34780, + -1, -1, -1, -1, 34783, -1, 34785, -1, + -1, -1, -1, -1, -1, -1, -1, 34787, + 34789, 34791, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 34793, + -1, -1, -1, -1, -1, -1, -1, 34797, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 34798, 34799, -1, -1, 34800, 34801, 34802, 34803, + 34804, 34805, 34806, 34807, 34808, 34809, 34810, 34811, + 34812, 34813, 34814, 34815, 34816, 34817, 34818, 34819, + 34820, 34821, 34822, 34823, 34824, 34825, 34826, -1, + 34827, 34828, 34829, 34830, 34831, 34832, 34833, 34834, + 34835, 34836, 34837, 34838, 34839, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 34840, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 34842, 34845, 34848, 34849, -1, 34851, 34854, 34857, + -1, 34858, 34860, 34861, 34862, 34863, 34864, 34865, + 34866, 34867, 34868, 34869, -1, 34870, 34871, -1, + -1, 34873, 34874, 34875, 34876, 34877, -1, -1, + 34878, 34880, 34883, -1, 34885, -1, 2118, -1, + 34887, -1, 2120, 2121, 34890, 34891, -1, 34892, + 34893, 34894, -1, 34895, 34896, 34897, 34898, 34899, + 34900, 34901, -1, 34902, 34905, 34906, 34907, 34908, + 34909, -1, -1, -1, -1, 34910, 34911, 34912, + 34913, 34914, -1, -1, -1, -1, -1, -1, + 34915, 34918, 34921, 34925, 34928, 34931, 34934, 34937, + 34940, 34943, 34946, 34949, 34952, 34955, 34958, 34961, + 34963, 34964, 34966, 34969, 34971, 34972, 34974, 34977, + 34981, 34983, 34984, 34986, 34989, 34990, 34991, 34992, + 34993, 34994, 34996, 34999, 35001, 35002, 35004, 35007, + 35011, 35013, 35014, 35016, 35019, 35020, 35021, 35022, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 35023, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 2258, 2260, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 2262, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 2264, 2266, 2268, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2270, -1, -1, -1, + -1, 2272, -1, -1, 2274, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2276, -1, 2278, -1, + -1, -1, -1, -1, 35048, 35050, -1, 35053, + 35055, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 2290, -1, -1, 2292, -1, -1, 2294, + -1, 2296, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 2298, -1, 2300, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 2302, 2304, 2306, + 2308, 2310, -1, -1, 2312, 2314, -1, -1, + 2316, 2318, -1, -1, -1, -1, -1, -1, + 2320, 2322, -1, -1, 2324, 2326, -1, -1, + 2328, 2330, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2332, 2334, 2336, 2338, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 2340, 2342, 2344, 2346, -1, -1, -1, -1, + -1, -1, 2348, 2350, 2352, 2354, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 2356, 2357, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 35126, 35127, 35128, 35129, 35130, 35131, 35132, 35133, + 35134, 35135, 35137, 35139, 35141, 35143, 35145, 35147, + 35149, 35151, 35153, 35155, 35157, 35160, 35163, 35166, + 35169, 35172, 35175, 35178, 35181, 35184, 35188, 35192, + 35196, 35200, 35204, 35208, 35212, 35216, 35220, 35224, + 35228, 35230, 35232, 35234, 35236, 35238, 35240, 35242, + 35244, 35246, 35249, 35252, 35255, 35258, 35261, 35264, + 35267, 35270, 35273, 35276, 35279, 35282, 35285, 35288, + 35291, 35294, 35297, 35300, 35303, 35306, 35309, 35312, + 35315, 35318, 35321, 35324, 35327, 35330, 35333, 35336, + 35339, 35342, 35345, 35348, 35351, 35354, 35357, 35358, + 35359, 35360, 35361, 35362, 35363, 35364, 35365, 35366, + 35367, 35368, 35369, 35370, 35371, 35372, 35373, 35374, + 35375, 35376, 35377, 35378, 35379, 35380, 35381, 35382, + 35383, 35384, 35385, 35386, 35387, 35388, 35389, 35390, + 35391, 35392, 35393, 35394, 35395, 35396, 35397, 35398, + 35399, 35400, 35401, 35402, 35403, 35404, 35405, 35406, + 35407, 35408, 35409, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 35410, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 35414, 35417, 35419, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2654, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 35424, 35425, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 35426, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 35427, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 35428, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 35429, 35430, 35431, 35432, 35433, 35434, 35435, 35436, + 35437, 35438, 35439, 35440, 35441, 35442, 35443, 35444, + 35445, 35446, 35447, 35448, 35449, 35450, 35451, 35452, + 35453, 35454, 35455, 35456, 35457, 35458, 35459, 35460, + 35461, 35462, 35463, 35464, 35465, 35466, 35467, 35468, + 35469, 35470, 35471, 35472, 35473, 35474, 35475, 35476, + 35477, 35478, 35479, 35480, 35481, 35482, 35483, 35484, + 35485, 35486, 35487, 35488, 35489, 35490, 35491, 35492, + 35493, 35494, 35495, 35496, 35497, 35498, 35499, 35500, + 35501, 35502, 35503, 35504, 35505, 35506, 35507, 35508, + 35509, 35510, 35511, 35512, 35513, 35514, 35515, 35516, + 35517, 35518, 35519, 35520, 35521, 35522, 35523, 35524, + 35525, 35526, 35527, 35528, 35529, 35530, 35531, 35532, + 35533, 35534, 35535, 35536, 35537, 35538, 35539, 35540, + 35541, 35542, 35543, 35544, 35545, 35546, 35547, 35548, + 35549, 35550, 35551, 35552, 35553, 35554, 35555, 35556, + 35557, 35558, 35559, 35560, 35561, 35562, 35563, 35564, + 35565, 35566, 35567, 35568, 35569, 35570, 35571, 35572, + 35573, 35574, 35575, 35576, 35577, 35578, 35579, 35580, + 35581, 35582, 35583, 35584, 35585, 35586, 35587, 35588, + 35589, 35590, 35591, 35592, 35593, 35594, 35595, 35596, + 35597, 35598, 35599, 35600, 35601, 35602, 35603, 35604, + 35605, 35606, 35607, 35608, 35609, 35610, 35611, 35612, + 35613, 35614, 35615, 35616, 35617, 35618, 35619, 35620, + 35621, 35622, 35623, 35624, 35625, 35626, 35627, 35628, + 35629, 35630, 35631, 35632, 35633, 35634, 35635, 35636, + 35637, 35638, 35639, 35640, 35641, 35642, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 35643, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 35644, -1, + 35645, 35646, 35647, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2880, -1, 2882, -1, + 2884, -1, 2886, -1, 2888, -1, 2890, -1, + 2892, -1, 2894, -1, 2896, -1, 2898, -1, + 2900, -1, 2902, -1, -1, 2904, -1, 2906, + -1, 2908, -1, -1, -1, -1, -1, -1, + 2910, 2912, -1, 2914, 2916, -1, 2918, 2920, + -1, 2922, 2924, -1, 2926, 2928, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2930, -1, -1, -1, + -1, -1, -1, 35700, 35702, -1, 2936, 35706, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2940, -1, 2942, -1, + 2944, -1, 2946, -1, 2948, -1, 2950, -1, + 2952, -1, 2954, -1, 2956, -1, 2958, -1, + 2960, -1, 2962, -1, -1, 2964, -1, 2966, + -1, 2968, -1, -1, -1, -1, -1, -1, + 2970, 2972, -1, 2974, 2976, -1, 2978, 2980, + -1, 2982, 2984, -1, 2986, 2988, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2990, -1, -1, 2992, + 2994, 2996, 2998, -1, -1, -1, 3000, 35770, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 35772, 35773, 35774, 35775, 35776, 35777, 35778, + 35779, 35780, 35781, 35782, 35783, 35784, 35785, 35786, + 35787, 35788, 35789, 35790, 35791, 35792, 35793, 35794, + 35795, 35796, 35797, 35798, 35799, 35800, 35801, 35802, + 35803, 35804, 35805, 35806, 35807, 35808, 35809, 35810, + 35811, 35812, 35813, 35814, 35815, 35816, 35817, 35818, + 35819, 35820, 35821, 35822, 35823, 35824, 35825, 35826, + 35827, 35828, 35829, 35830, 35831, 35832, 35833, 35834, + 35835, 35836, 35837, 35838, 35839, 35840, 35841, 35842, + 35843, 35844, 35845, 35846, 35847, 35848, 35849, 35850, + 35851, 35852, 35853, 35854, 35855, 35856, 35857, 35858, + 35859, 35860, 35861, 35862, 35863, 35864, 35865, -1, + -1, -1, 35866, 35867, 35868, 35869, 35870, 35871, + 35872, 35873, 35874, 35875, 35876, 35877, 35878, 35879, + 35880, 35883, 35886, 35889, 35892, 35895, 35898, 35901, + 35904, 35907, 35910, 35913, 35916, 35919, 35922, 35926, + 35930, 35934, 35938, 35942, 35946, 35950, 35954, 35958, + 35962, 35966, 35970, 35974, 35978, 35982, 35989, -1, + 35995, 35998, 36001, 36004, 36007, 36010, 36013, 36016, + 36019, 36022, 36025, 36028, 36031, 36034, 36037, 36040, + 36043, 36046, 36049, 36052, 36055, 36058, 36061, 36064, + 36067, 36070, 36073, 36076, 36079, 36082, 36085, 36088, + 36091, 36094, 36097, 36100, 36103, 36104, 36105, 36106, + -1, -1, -1, -1, -1, -1, -1, -1, + 36107, 36110, 36112, 36114, 36116, 36118, 36120, 36122, + 36124, 36126, 36128, 36130, 36132, 36134, 36136, 36138, + 36140, 36141, 36142, 36143, 36144, 36145, 36146, 36147, + 36148, 36149, 36150, 36151, 36152, 36153, 36154, 36156, + 36158, 36160, 36162, 36164, 36166, 36168, 36170, 36172, + 36174, 36176, 36178, 36180, 36182, 36187, 36191, -1, + 36193, 36194, 36195, 36196, 36197, 36198, 36199, 36200, + 36201, 36202, 36203, 36204, 36205, 36206, 36207, 36208, + 36209, 36210, 36211, 36212, 36213, 36214, 36215, 36216, + 36217, 36218, 36219, 36220, 36221, 36222, 36223, 36224, + 36225, 36226, 36227, 36228, 36229, 36230, 36231, 36232, + 36233, 36234, 36235, 36236, 36237, 36238, 36239, 36240, + 36241, 36242, 36244, 36246, 36248, 36250, 36252, 36254, + 36256, 36258, 36260, 36262, 36264, 36266, 36268, 36270, + 36272, 36274, 36276, 36278, 36280, 36282, 36284, 36286, + 36288, 36290, 36293, 36296, 36299, 36301, 36304, 36306, + 36309, 36310, 36311, 36312, 36313, 36314, 36315, 36316, + 36317, 36318, 36319, 36320, 36321, 36322, 36323, 36324, + 36325, 36326, 36327, 36328, 36329, 36330, 36331, 36332, + 36333, 36334, 36335, 36336, 36337, 36338, 36339, 36340, + 36341, 36342, 36343, 36344, 36345, 36346, 36347, 36348, + 36349, 36350, 36351, 36352, 36353, 36354, 36355, -1, + 36356, 36360, 36364, 36368, 36371, 36375, 36378, 36381, + 36386, 36390, 36393, 36396, 36399, 36403, 36407, 36410, + 36413, 36415, 36418, 36422, 36426, 36428, 36433, 36439, + 36444, 36447, 36452, 36457, 36461, 36464, 36467, 36470, + 36474, 36479, 36483, 36486, 36489, 36492, 36494, 36496, + 36498, 36500, 36503, 36506, 36511, 36514, 36518, 36523, + 36526, 36528, 36530, 36535, 36539, 36544, 36547, 36552, + 36554, 36557, 36560, 36563, 36566, 36569, 36573, 36576, + 36578, 36581, 36584, 36587, 36591, 36594, 36597, 36600, + 36605, 36609, 36611, 36616, 36618, 36622, 36626, 36629, + 36632, 36635, 36639, 36641, 36644, 36648, 36650, 36655, + 36658, 36660, 36662, 36664, 36666, 36668, 36670, 36672, + 36674, 36676, 36678, 36681, 36684, 36687, 36690, 36693, + 36696, 36699, 36702, 36705, 36708, 36711, 36714, 36717, + 36720, 36723, 36726, 36728, 36730, 36733, 36735, 36737, + 36739, 36742, 36745, 36747, 36749, 36751, 36753, 36755, + 36759, 36761, 36763, 36765, 36767, 36769, 36771, 36773, + 36775, 36778, 36782, 36784, 36786, 36788, 36790, 36792, + 36794, 36796, 36799, 36802, 36805, 36808, 36810, 36812, + 36814, 36816, 36818, 36820, 36822, 36824, 36826, 36828, + 36831, 36834, 36836, 36839, 36842, 36845, 36847, 36850, + 36853, 36857, 36859, 36862, 36865, 36868, 36871, 36876, + 36882, 36884, 36886, 36888, 36890, 36892, 36894, 36896, + 36898, 36900, 36902, 36904, 36906, 36908, 36910, 36912, + 36914, 36916, 36918, 36922, 36924, 36926, 36928, 36932, + 36935, 36937, 36939, 36941, 36943, 36945, 36947, 36949, + 36951, 36953, 36955, 36958, 36960, 36962, 36965, 36968, + 36970, 36974, 36977, 36979, 36981, 36983, 36985, 36988, + 36991, 36993, 36995, 36997, 36999, 37001, 37003, 37005, + 37007, 37009, 37012, 37015, 37018, 37021, 37024, 37027, + 37030, 37033, 37036, 37039, 37042, 37045, 37048, 37051, + 37054, 37057, 37060, 37063, 37066, 37069, 37072, 37075, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 37078, 37079, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 37080, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 37081, 37082, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 37083, 37084, 37085, 37086, + 4319, 4320, 4321, 4322, 4323, 4324, 4325, 4326, + 4327, 4328, 4329, 4330, 4331, 4332, 4333, 4334, + 4335, 4336, 4337, 4338, 4339, 4340, 4341, 4342, + 4343, 4344, 4345, 4346, 4347, 4348, 4349, 4350, + 4351, 4352, 4353, 4354, 4355, 4356, 4357, 4358, + 4359, 4360, 4361, 4362, 4363, 4364, 4365, 4366, + 4367, 4368, 4369, 4370, 4371, 4372, 4373, 4374, + 4375, 4376, 4377, 4378, 4379, 4380, 4381, 4382, + 4383, 4384, 4385, 4386, 4387, 4388, 4389, 4390, + 4391, 4392, 4393, 4394, 4395, 4396, 4397, 4398, + 4399, 4400, 4401, 4402, 4403, 4404, 4405, 4406, + 4407, 4408, 4409, 4410, 4411, 4412, 4413, 4414, + 4415, 4416, 4417, 4418, 4419, 4420, 4421, 4422, + 4423, 4424, 4425, 4426, 4427, 4428, 4429, 4430, + 4431, 4432, 4433, 4434, 4435, 4436, 4437, 4438, + 4439, 4440, 4441, 4442, 4443, 4444, 4445, 4446, + 4447, 4448, 4449, 4450, 4451, 4452, 4453, 4454, + 4455, 4456, 4457, 4458, 4459, 4460, 4461, 4462, + 4463, 4464, 4465, 4466, 4467, 4468, 4469, 4470, + 4471, 4472, 4473, 4474, 4475, 4476, 4477, 4478, + 4479, 4480, 4481, 4482, 4483, 4484, 4485, 4486, + 4487, 4488, 4489, 4490, 4491, 4492, 4493, 4494, + 4495, 4496, 4497, 4498, 4499, 4500, 4501, 4502, + 4503, 4504, 4505, 4506, 4507, 4508, 4509, 4510, + 4511, 4512, 4513, 4514, 4515, 4516, 4517, 4518, + 4519, 4520, 4521, 4522, 4523, 4524, 4525, 4526, + 4527, 4528, 4529, 4530, 4531, 4532, 4533, 4534, + 4535, 4536, 4537, 4538, 4539, 4540, 4541, 4542, + 4543, 4544, 4545, 4546, 4547, 4548, 4549, 4550, + 4551, 4552, 4553, 4554, 4555, 4556, 4557, 4558, + 4559, 4560, 4561, 4562, 4563, 4564, 4565, 4566, + 4567, 4568, 4569, 4570, 4571, 4572, 4573, 4574, + 4575, 4576, 4577, 4578, 4579, 4580, 4581, 4582, + 4583, 4584, 4585, 4586, 4587, 4588, -1, -1, + 4589, -1, 4590, -1, -1, 4591, 4592, 4593, + 4594, 4595, 4596, 4597, 4598, 4599, 4600, -1, + 4601, -1, 4602, -1, -1, 4603, 4604, -1, + -1, -1, 4605, 4606, 4607, 4608, 4609, 4610, + 4611, 4612, 4613, 4614, 4615, 4616, 4617, 4618, + 4619, 4620, 4621, 4622, 4623, 4624, 4625, 4626, + 4627, 4628, 4629, 4630, 4631, 4632, 4633, 4634, + 4635, 4636, 4637, 4638, 4639, 4640, 4641, 4642, + 4643, 4644, 4645, 4646, 4647, 4648, 4649, 4650, + 4651, 4652, 4653, 4654, 4655, 4656, 4657, 4658, + 4659, 4660, 4661, 4662, 4663, 4664, 4665, 4666, + 4667, 4668, 4669, 4670, 4671, 4672, -1, -1, + 4673, 4674, 4675, 4676, 4677, 4678, 4679, 4680, + 4681, 4682, 4683, 4684, 4685, 4686, 4687, 4688, + 4689, 4690, 4691, 4692, 4693, 4694, 4695, 4696, + 4697, 4698, 4699, 4700, 4701, 4702, 4703, 4704, + 4705, 4706, 4707, 4708, 4709, 4710, 4711, 4712, + 4713, 4714, 4715, 4716, 4717, 4718, 4719, 4720, + 4721, 4722, 4723, 4724, 4725, 4726, 4727, 4728, + 4729, 4730, 4731, 4732, 4733, 4734, 4735, 4736, + 4737, 4738, 4739, 4740, 4741, 4742, 4743, 4744, + 4745, 4746, 4747, 4748, 4749, 4750, 4751, 4752, + 4753, 4754, 4755, 4756, 4757, 4758, 4759, 4760, + 4761, 4762, 4763, 4764, 4765, 4766, 4767, 4768, + 4769, 4770, 4771, 4772, 4773, 4774, 4775, 4776, + 4777, 4778, -1, -1, -1, -1, -1, -1, + 37547, 37549, 37551, 37553, 37556, 37559, 37561, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 37563, 37565, 37567, 37569, 37571, + -1, -1, -1, -1, -1, 4805, -1, 4807, + 37577, 37578, 37579, 37580, 37581, 37582, 37583, 37584, + 37585, 37586, 4819, 4821, 4823, 4825, 4827, 4829, + 4831, 4833, 4835, 4837, 4839, 4841, 4843, -1, + 4845, 4847, 4849, 4851, 4853, -1, 4855, -1, + 4857, 4859, -1, 4861, 4863, -1, 4865, 4867, + 4869, 4871, 4873, 4875, 4877, 4879, 4881, 37651, + 37653, 37654, 37655, 37656, 37657, 37658, 37659, 37660, + 37661, 37662, 37663, 37664, 37665, 37666, 37667, 37668, + 37669, 37670, 37671, 37672, 37673, 37674, 37675, 37676, + 37677, 37678, 37679, 37680, 37681, 37682, 37683, 37684, + 37685, 37686, 37687, 37688, 37689, 37690, 37691, 37692, + 37693, 37694, 37695, 37696, 37697, 37698, 37699, 37700, + 37701, 37702, 37703, 37704, 37705, 37706, 37707, 37708, + 37709, 37710, 37711, 37712, 37713, 37714, 37715, 37716, + 37717, 37718, 37719, 37720, 37721, 37722, 37723, 37724, + 37725, 37726, 37727, 37728, 37729, 37730, 37731, 37732, + 37733, 37734, 37735, 37736, 37737, 37738, 37739, 37740, + 37741, 37742, 37743, 37744, 37745, 37746, 37747, 37748, + 37749, 37750, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 37751, 37752, 37753, 37754, 37755, + 37756, 37757, 37758, 37759, 37760, 37761, 37762, 37763, + 37764, 37765, 37766, 37767, 37768, 37769, 37770, 37771, + 37772, 37773, 37774, 37776, 37778, 37780, 37782, 37784, + 37786, 37788, 37790, 37792, 37794, 37796, 37798, 37800, + 37802, 37804, 37806, 37808, 37810, 37811, 37812, 37813, + 37814, 37816, 37818, 37820, 37822, 37824, 37826, 37828, + 37830, 37832, 37834, 37836, 37838, 37840, 37842, 37844, + 37846, 37848, 37850, 37852, 37854, 37856, 37858, 37860, + 37862, 37864, 37866, 37868, 37870, 37872, 37874, 37876, + 37878, 37880, 37882, 37884, 37886, 37888, 37890, 37892, + 37894, 37896, 37898, 37900, 37902, 37904, 37906, 37908, + 37910, 37912, 37914, 37916, 37918, 37920, 37922, 37924, + 37926, 37928, 37930, 37932, 37934, 37936, 37938, 37940, + 37942, 37944, 37946, 37948, 37950, 37952, 37954, 37956, + 37958, 37960, 37962, 37964, 37966, 37968, 37970, 37972, + 37974, 37976, 37978, 37980, 37982, 37984, 37986, 37988, + 37990, 37992, 37994, 37996, 37998, 38000, 38002, 38005, + 38008, 38011, 38014, 38017, 38020, 38022, 38024, 38026, + 38028, 38030, 38032, 38034, 38036, 38038, 38040, 38042, + 38044, 38046, 38048, 38050, 38052, 38054, 38056, 38058, + 38060, 38062, 38064, 38066, 38068, 38070, 38072, 38074, + 38076, 38078, 38080, 38082, 38084, 38086, 38088, 38090, + 38092, 38094, 38096, 38098, 38100, 38102, 38104, 38106, + 38108, 38110, 38112, 38114, 38116, 38118, 38120, 38122, + 38124, 38126, 38128, 38130, 38132, 38134, 38136, 38138, + 38140, 38142, 38144, 38146, 38148, 38150, 38152, 38154, + 38156, 38158, 38160, 38162, 38164, 38166, 38168, 38170, + 38172, 38174, 38176, 38178, 38180, 38182, 38184, 38186, + 38188, 38190, 38192, 38194, 38196, 38198, 38200, 38202, + 38204, 38206, 38208, 38210, 38212, 38214, 38216, 38218, + 38220, 38222, 38224, 38226, 38228, 38230, 38232, 38234, + 38236, 38238, 38240, 38242, 38244, 38246, 38248, 38250, + 38252, 38254, 38256, 38258, 38260, 38262, 38264, 38266, + 38268, 38270, 38272, 38274, 38276, 38278, 38280, 38282, + 38284, 38286, 38288, 38290, 38292, 38294, 38296, 38298, + 38300, 38302, 38304, 38307, 38310, 38313, 38315, 38317, + 38319, 38321, 38323, 38325, 38327, 38329, 38331, 38333, + 38335, 38337, 38339, 38341, 38343, 38345, 38347, 38349, + 38351, 38353, 38355, 38357, 38359, 38361, 38363, 38365, + 38367, 38369, 38371, 38373, 38375, 38377, 38379, 38381, + 38383, 38385, 38387, 38389, 38391, 38393, 38395, 38397, + 38399, 38401, 38403, 38405, 38407, 38409, 38411, 38413, + 38415, 38417, 38419, 38421, 38423, 38425, 38427, 38429, + 38431, 38433, 38435, 38437, 38439, 38441, 38443, 38445, + 38447, 38449, 38451, 38453, 38455, 38457, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 38459, 38462, 38465, 38468, 38471, 38474, 38477, 38480, + 38483, 38486, 38489, 38492, 38495, 38498, 38501, 38504, + 38507, 38510, 38513, 38516, 38519, 38522, 38525, 38528, + 38531, 38534, 38537, 38540, 38543, 38546, 38549, 38552, + 38555, 38558, 38561, 38564, 38567, 38570, 38573, 38576, + 38579, 38582, 38585, 38588, 38591, 38594, 38597, 38600, + 38603, 38606, 38609, 38612, 38615, 38618, 38621, 38624, + 38627, 38630, 38633, 38636, 38639, 38642, 38645, 38648, + -1, -1, 38651, 38654, 38657, 38660, 38663, 38666, + 38669, 38672, 38675, 38678, 38681, 38684, 38687, 38690, + 38693, 38696, 38699, 38702, 38705, 38708, 38711, 38714, + 38717, 38720, 38723, 38726, 38729, 38732, 38735, 38738, + 38741, 38744, 38747, 38750, 38753, 38756, 38759, 38762, + 38765, 38768, 38771, 38774, 38777, 38780, 38783, 38786, + 38789, 38792, 38795, 38798, 38801, 38804, 38807, 38810, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 38813, 38816, 38819, 38823, 38827, 38831, 38835, 38839, + 38843, 38847, 38850, 38868, 38876, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 38880, 38881, 38882, 38883, 38884, 38885, 38886, 38887, + 38888, 38889, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 38890, 38891, 38892, 38893, 38894, 38895, 38896, 38897, + 38898, 38899, 38900, 38901, 38902, 38903, 38904, 38905, + 38906, 38907, 38908, 38909, 38910, -1, -1, 38911, + 38912, 38913, 38914, 38915, 38916, 38917, 38918, 38919, + 38920, 38921, 38922, -1, 38923, 38924, 38925, 38926, + 38927, 38928, 38929, 38930, 38931, 38932, 38933, 38934, + 38935, 38936, 38937, 38938, 38939, 38940, 38941, -1, + 38942, 38943, 38944, 38945, -1, -1, -1, -1, + 38946, 38948, 38950, -1, 38952, -1, 38954, 38956, + 38958, 38960, 38962, 38964, 38966, 38968, 38970, 38972, + 38974, 38975, 38976, 38977, 38978, 38979, 38980, 38981, + 38982, 38983, 38984, 38985, 38986, 38987, 38988, 38989, + 38990, 38991, 38992, 38993, 38994, 38995, 38996, 38997, + 38998, 38999, 39000, 39001, 39002, 39003, 39004, 39005, + 39006, 39007, 39008, 39009, 39010, 39011, 39012, 39013, + 39014, 39015, 39016, 39017, 39018, 39019, 39020, 39021, + 39022, 39023, 39024, 39025, 39026, 39027, 39028, 39029, + 39030, 39031, 39032, 39033, 39034, 39035, 39036, 39037, + 39038, 39039, 39040, 39041, 39042, 39043, 39044, 39045, + 39046, 39047, 39048, 39049, 39050, 39051, 39052, 39053, + 39054, 39055, 39056, 39057, 39058, 39059, 39060, 39061, + 39062, 39063, 39064, 39065, 39066, 39067, 39068, 39069, + 39070, 39071, 39072, 39073, 39074, 39075, 39076, 39077, + 39078, 39079, 39080, 39081, 39082, 39083, 39084, 39085, + 39086, 39087, 39088, 39089, 39090, 39091, 39093, 39095, + 39097, 39099, 39101, 39103, 39105, -1, -1, -1, + -1, 39107, 39108, 39109, 39110, 39111, 39112, 39113, + 39114, 39115, 39116, 39117, 39118, 39119, 39120, 39121, + 39122, 39123, 39124, 39125, 39126, 39127, 39128, 39129, + 39130, 39131, 39132, 39133, 39134, 39135, 39136, 39137, + 39138, 39139, 39140, 39141, 39142, 39143, 39144, 39145, + 39146, 39147, 39148, 39149, 39150, 39151, 39152, 39153, + 39154, 39155, 39156, 39157, 39158, 39159, 39160, 39161, + 39162, 39163, 39164, 39165, 39166, 39167, 39168, 39169, + 39170, 39171, 39172, 39173, 39174, 39175, 39176, 39177, + 39178, 39179, 39180, 39181, 39182, 39183, 39184, 39185, + 39186, 39187, 39188, 39189, 39190, 39191, 39192, 39193, + 39194, 39195, 39196, 39197, 39198, 39199, 39200, 39201, + 39202, 39203, 39204, 39205, 39206, 39207, 39208, 39209, + 39210, 39211, 39212, 39213, 39214, 39215, 39216, 39217, + 39218, 39219, 39220, 39221, 39222, 39223, 39224, 39225, + 39226, 39227, 39228, 39229, 39230, 39231, 39232, 39233, + 39234, 39235, 39236, 39237, 39238, 39239, 39240, 39241, + 39242, 39243, 39244, 39245, 39246, 39247, 39248, 39249, + 39250, 39251, 39252, 39253, 39254, 39255, 39256, 39257, + 39258, 39259, 39260, 39261, 39262, 39263, 39264, 39265, + 39266, 39267, 39268, 39269, 39270, 39271, 39272, 39273, + 39274, 39275, 39276, 39277, 39278, 39279, 39280, 39281, + 39282, 39283, 39284, 39285, 39286, 39287, 39288, 39289, + 39290, 39291, 39292, 39293, 39294, 39295, 39296, -1, + -1, -1, 39297, 39298, 39299, 39300, 39301, 39302, + -1, -1, 39303, 39304, 39305, 39306, 39307, 39308, + -1, -1, 39309, 39310, 39311, 39312, 39313, 39314, + -1, -1, 39315, 39316, 39317, -1, -1, -1, + 39318, 39319, 39320, 39321, 39322, 39323, 39324, -1, + 39325, 39326, 39327, 39328, 39329, 39330, 39331, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 6564, -1, 6566, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 6568, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 6570, 6572, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 6574, 6576, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 6578, 6580, -1, 6582, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 6584, 6586, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 6588, 6590, + 6592, 6594, 6596, 6598, 6600, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 6602, 6604, 6606, 6608, 6610, + 6612, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 39382, 39383, 39384, 39385, 39386, 39387, 39388, 39389, + 39390, 39391, 39392, 39393, 39394, 39395, 39396, 39397, + 39398, 39399, 39400, 39401, 39402, 39403, 39404, 39405, + 39406, 39407, 39408, 39409, 39410, 39411, 39412, 39413, + 39414, 39415, 39416, 39417, 39418, 39419, 39420, 39421, + 39422, 39423, 39424, 39425, 39426, 39427, 39428, 39429, + 39430, 39431, 39432, 39433, 39434, 39435, 39436, 39437, + 39438, 39439, 39440, 39441, 39442, 39443, 39444, 39445, + 39446, 39447, 39448, 39449, 39450, 39451, 39452, 39453, + 39454, 39455, 39456, 39457, 39458, 39459, 39460, 39461, + 39462, 39463, 39464, 39465, 39466, -1, 39467, 39468, + 39469, 39470, 39471, 39472, 39473, 39474, 39475, 39476, + 39477, 39478, 39479, 39480, 39481, 39482, 39483, 39484, + 39485, 39486, 39487, 39488, 39489, 39490, 39491, 39492, + 39493, 39494, 39495, 39496, 39497, 39498, 39499, 39500, + 39501, 39502, 39503, 39504, 39505, 39506, 39507, 39508, + 39509, 39510, 39511, 39512, 39513, 39514, 39515, 39516, + 39517, 39518, 39519, 39520, 39521, 39522, 39523, 39524, + 39525, 39526, 39527, 39528, 39529, 39530, 39531, 39532, + 39533, 39534, 39535, 39536, 39537, -1, 39538, 39539, + -1, -1, 39540, -1, -1, 39541, 39542, -1, + -1, 39543, 39544, 39545, 39546, -1, 39547, 39548, + 39549, 39550, 39551, 39552, 39553, 39554, 39555, 39556, + 39557, 39558, -1, 39559, -1, 39560, 39561, 39562, + 39563, 39564, 39565, 39566, -1, 39567, 39568, 39569, + 39570, 39571, 39572, 39573, 39574, 39575, 39576, 39577, + 39578, 39579, 39580, 39581, 39582, 39583, 39584, 39585, + 39586, 39587, 39588, 39589, 39590, 39591, 39592, 39593, + 39594, 39595, 39596, 39597, 39598, 39599, 39600, 39601, + 39602, 39603, 39604, 39605, 39606, 39607, 39608, 39609, + 39610, 39611, 39612, 39613, 39614, 39615, 39616, 39617, + 39618, 39619, 39620, 39621, 39622, 39623, 39624, 39625, + 39626, 39627, 39628, 39629, 39630, 39631, -1, 39632, + 39633, 39634, 39635, -1, -1, 39636, 39637, 39638, + 39639, 39640, 39641, 39642, 39643, -1, 39644, 39645, + 39646, 39647, 39648, 39649, 39650, -1, 39651, 39652, + 39653, 39654, 39655, 39656, 39657, 39658, 39659, 39660, + 39661, 39662, 39663, 39664, 39665, 39666, 39667, 39668, + 39669, 39670, 39671, 39672, 39673, 39674, 39675, 39676, + 39677, 39678, -1, 39679, 39680, 39681, 39682, -1, + 39683, 39684, 39685, 39686, 39687, -1, 39688, -1, + -1, -1, 39689, 39690, 39691, 39692, 39693, 39694, + 39695, -1, 39696, 39697, 39698, 39699, 39700, 39701, + 39702, 39703, 39704, 39705, 39706, 39707, 39708, 39709, + 39710, 39711, 39712, 39713, 39714, 39715, 39716, 39717, + 39718, 39719, 39720, 39721, 39722, 39723, 39724, 39725, + 39726, 39727, 39728, 39729, 39730, 39731, 39732, 39733, + 39734, 39735, 39736, 39737, 39738, 39739, 39740, 39741, + 39742, 39743, 39744, 39745, 39746, 39747, 39748, 39749, + 39750, 39751, 39752, 39753, 39754, 39755, 39756, 39757, + 39758, 39759, 39760, 39761, 39762, 39763, 39764, 39765, + 39766, 39767, 39768, 39769, 39770, 39771, 39772, 39773, + 39774, 39775, 39776, 39777, 39778, 39779, 39780, 39781, + 39782, 39783, 39784, 39785, 39786, 39787, 39788, 39789, + 39790, 39791, 39792, 39793, 39794, 39795, 39796, 39797, + 39798, 39799, 39800, 39801, 39802, 39803, 39804, 39805, + 39806, 39807, 39808, 39809, 39810, 39811, 39812, 39813, + 39814, 39815, 39816, 39817, 39818, 39819, 39820, 39821, + 39822, 39823, 39824, 39825, 39826, 39827, 39828, 39829, + 39830, 39831, 39832, 39833, 39834, 39835, 39836, 39837, + 39838, 39839, 39840, 39841, 39842, 39843, 39844, 39845, + 39846, 39847, 39848, 39849, 39850, 39851, 39852, 39853, + 39854, 39855, 39856, 39857, 39858, 39859, 39860, 39861, + 39862, 39863, 39864, 39865, 39866, 39867, 39868, 39869, + 39870, 39871, 39872, 39873, 39874, 39875, 39876, 39877, + 39878, 39879, 39880, 39881, 39882, 39883, 39884, 39885, + 39886, 39887, 39888, 39889, 39890, 39891, 39892, 39893, + 39894, 39895, 39896, 39897, 39898, 39899, 39900, 39901, + 39902, 39903, 39904, 39905, 39906, 39907, 39908, 39909, + 39910, 39911, 39912, 39913, 39914, 39915, 39916, 39917, + 39918, 39919, 39920, 39921, 39922, 39923, 39924, 39925, + 39926, 39927, 39928, 39929, 39930, 39931, 39932, 39933, + 39934, 39935, 39936, 39937, 39938, 39939, 39940, 39941, + 39942, 39943, 39944, 39945, 39946, 39947, 39948, 39949, + 39950, 39951, 39952, 39953, 39954, 39955, 39956, 39957, + 39958, 39959, 39960, 39961, 39962, 39963, 39964, 39965, + 39966, 39967, 39968, 39969, 39970, 39971, 39972, 39973, + 39974, 39975, 39976, 39977, 39978, 39979, 39980, 39981, + 39982, 39983, 39984, 39985, 39986, 39987, 39988, 39989, + 39990, 39991, 39992, 39993, 39994, 39995, 39996, 39997, + 39998, 39999, 40000, 40001, 40002, 40003, 40004, 40005, + 40006, 40007, 40008, 40009, 40010, 40011, 40012, 40013, + 40014, 40015, 40016, 40017, 40018, 40019, 40020, 40021, + 40022, 40023, 40024, 40025, 40026, 40027, 40028, 40029, + 40030, 40031, 40032, 40033, 40034, 40035, -1, -1, + 40036, 40037, 40038, 40039, 40040, 40041, 40042, 40043, + 40044, 40045, 40046, 40047, 40048, 40049, 40050, 40051, + 40052, 40053, 40054, 40055, 40056, 40057, 40058, 40059, + 40060, 40061, 40062, 40063, 40064, 40065, 40066, 40067, + 40068, 40069, 40070, 40071, 40072, 40073, 40074, 40075, + 40076, 40077, 40078, 40079, 40080, 40081, 40082, 40083, + 40084, 40085, 40086, 40087, 40088, 40089, 40090, 40091, + 40092, 40093, 40094, 40095, 40096, 40097, 40098, 40099, + 40100, 40101, 40102, 40103, 40104, 40105, 40106, 40107, + 40108, 40109, 40110, 40111, 40112, 40113, 40114, 40115, + 40116, 40117, 40118, 40119, 40120, 40121, 40122, 40123, + 40124, 40125, 40126, 40127, 40128, 40129, 40130, 40131, + 40132, 40133, 40134, 40135, 40136, 40137, 40138, 40139, + 40140, 40141, 40142, 40143, 40144, 40145, 40146, 40147, + 40148, 40149, 40150, 40151, 40152, 40153, 40154, 40155, + 40156, 40157, 40158, 40159, 40160, 40161, 40162, 40163, + 40164, 40165, 40166, 40167, 40168, 40169, 40170, 40171, + 40172, 40173, 40174, 40175, 40176, 40177, 40178, 40179, + 40180, 40181, 40182, 40183, 40184, 40185, 40186, 40187, + 40188, 40189, 40190, 40191, 40192, 40193, 40194, 40195, + 40196, 40197, 40198, 40199, 40200, 40201, 40202, 40203, + 40204, 40205, 40206, 40207, 40208, 40209, 40210, 40211, + 40212, 40213, 40214, 40215, 40216, 40217, 40218, 40219, + 40220, 40221, 40222, 40223, 40224, 40225, 40226, 40227, + 40228, 40229, 40230, 40231, 40232, 40233, 40234, 40235, + 40236, 40237, 40238, 40239, 40240, 40241, 40242, 40243, + 40244, 40245, 40246, 40247, 40248, 40249, 40250, 40251, + 40252, 40253, 40254, 40255, 40256, 40257, 40258, 40259, + 40260, 40261, 40262, 40263, 40264, 40265, 40266, 40267, + 40268, 40269, 40270, 40271, 40272, 40273, 40274, 40275, + 40276, 40277, 40278, 40279, 40280, 40281, 40282, 40283, + 40284, 40285, 40286, 40287, 40288, 40289, 40290, 40291, + 40292, 40293, 40294, 40295, 40296, 40297, 40298, 40299, + 40300, 40301, 40302, 40303, 40304, 40305, 40306, 40307, + 40308, 40309, 40310, 40311, 40312, 40313, 40314, 40315, + 40316, 40317, 40318, 40319, 40320, 40321, 40322, 40323, + 40324, 40325, 40326, 40327, -1, -1, 40328, 40329, + 40330, 40331, 40332, 40333, 40334, 40335, 40336, 40337, + 40338, 40339, 40340, 40341, 40342, 40343, 40344, 40345, + 40346, 40347, 40348, 40349, 40350, 40351, 40352, 40353, + 40354, 40355, 40356, 40357, 40358, 40359, 40360, 40361, + 40362, 40363, 40364, 40365, 40366, 40367, 40368, 40369, + 40370, 40371, 40372, 40373, 40374, 40375, 40376, 40377, + 40378, 40379, 40380, 40381, -1, 40382, 40383, 40384, + 40385, 40386, 40387, 40388, 40389, 40390, 40391, 40392, + 40393, 40394, 40395, 40396, 40397, 40398, 40399, 40400, + 40401, 40402, 40403, 40404, 40405, 40406, 40407, 40408, + -1, 40409, 40410, -1, 40411, -1, -1, 40412, + -1, 40413, 40414, 40415, 40416, 40417, 40418, 40419, + 40420, 40421, 40422, -1, 40423, 40424, 40425, 40426, + -1, 40427, -1, 40428, -1, -1, -1, -1, + -1, -1, 40429, -1, -1, -1, -1, 40430, + -1, 40431, -1, 40432, -1, 40433, 40434, 40435, + -1, 40436, 40437, -1, 40438, -1, -1, 40439, + -1, 40440, -1, 40441, -1, 40442, -1, 40443, + -1, 40444, 40445, -1, 40446, -1, -1, 40447, + 40448, 40449, 40450, -1, 40451, 40452, 40453, 40454, + 40455, 40456, 40457, -1, 40458, 40459, 40460, 40461, + -1, 40462, 40463, 40464, 40465, -1, 40466, -1, + 40467, 40468, 40469, 40470, 40471, 40472, 40473, 40474, + 40475, 40476, -1, 40477, 40478, 40479, 40480, 40481, + 40482, 40483, 40484, 40485, 40486, 40487, 40488, 40489, + 40490, 40491, 40492, 40493, -1, -1, -1, -1, + -1, 40494, 40495, 40496, -1, 40497, 40498, 40499, + 40500, 40501, -1, 40502, 40503, 40504, 40505, 40506, + 40507, 40508, 40509, 40510, 40511, 40512, 40513, 40514, + 40515, 40516, 40517, 40518, -1, -1, -1, -1, + 40519, 40521, 40523, 40525, 40527, 40529, 40531, 40533, + 40535, 40537, 40539, -1, -1, -1, -1, -1, + 40541, 40544, 40547, 40550, 40553, 40556, 40559, 40562, + 40565, 40568, 40571, 40574, 40577, 40580, 40583, 40586, + 40589, 40592, 40595, 40598, 40601, 40604, 40607, 40610, + 40613, 40616, 40619, 40622, 40623, 40624, 40626, -1, + 40628, 40629, 40630, 40631, 40632, 40633, 40634, 40635, + 40636, 40637, 40638, 40639, 40640, 40641, 40642, 40643, + 40644, 40645, 40646, 40647, 40648, 40649, 40650, 40651, + 40652, 40653, 40654, 40656, 40658, 40660, 40662, 40665, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 40667, 40669, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 40671, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 40673, 40675, 40677, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 40678, 40679, 40680, 40681, 40682, 40683, 40684, 40685, + 40686, 40687, 40688, 40689, 40690, 40691, 40692, 40693, + 40694, 40695, 40696, 40697, 40698, 40699, 40700, 40701, + 40702, 40703, 40704, 40705, 40706, 40707, 40708, 40709, + 40710, 40711, 40712, 40713, 40714, 40715, 40716, 40717, + 40718, 40719, 40720, 40721, -1, -1, -1, -1, + 40722, 40725, 40728, 40731, 40734, 40737, 40740, 40743, + 40746, -1, -1, -1, -1, -1, -1, -1, + 40749, 40750, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 7983, 7984, 7985, 7986, 7987, 7988, 7989, 7990, + 7991, 7992, 7993, 7994, 7995, 7996, 7997, 7998, + 7999, 8000, 8001, 8002, 8003, 8004, 8005, 8006, + 8007, 8008, 8009, 8010, 8011, 8012, 8013, 8014, + 8015, 8016, 8017, 8018, 8019, 8020, 8021, 8022, + 8023, 8024, 8025, 8026, 8027, 8028, 8029, 8030, + 8031, 8032, 8033, 8034, 8035, 8036, 8037, 8038, + 8039, 8040, 8041, 8042, 8043, 8044, 8045, 8046, + 8047, 8048, 8049, 8050, 8051, 8052, 8053, 8054, + 8055, 8056, 8057, 8058, 8059, 8060, 8061, 8062, + 8063, 8064, 8065, 8066, 8067, 8068, 8069, 8070, + 8071, 8072, 8073, 8074, 8075, 8076, 8077, 8078, + 8079, 8080, 8081, 8082, 8083, 8084, 8085, 8086, + 8087, 8088, 8089, 8090, 8091, 8092, 8093, 8094, + 8095, 8096, 8097, 8098, 8099, 8100, 8101, 8102, + 8103, 8104, 8105, 8106, 8107, 8108, 8109, 8110, + 8111, 8112, 8113, 8114, 8115, 8116, 8117, 8118, + 8119, 8120, 8121, 8122, 8123, 8124, 8125, 8126, + 8127, 8128, 8129, 8130, 8131, 8132, 8133, 8134, + 8135, 8136, 8137, 8138, 8139, 8140, 8141, 8142, + 8143, 8144, 8145, 8146, 8147, 8148, 8149, 8150, + 8151, 8152, 8153, 8154, 8155, 8156, 8157, 8158, + 8159, 8160, 8161, 8162, 8163, 8164, 8165, 8166, + 8167, 8168, 8169, 8170, 8171, 8172, 8173, 8174, + 8175, 8176, 8177, 8178, 8179, 8180, 8181, 8182, + 8183, 8184, 8185, 8186, 8187, 8188, 8189, 8190, + 8191, 8192, 8193, 8194, 8195, 8196, 8197, 8198, + 8199, 8200, 8201, 8202, 8203, 8204, 8205, 8206, + 8207, 8208, 8209, 8210, 8211, 8212, 8213, 8214, + 8215, 8216, 8217, 8218, 8219, 8220, 8221, 8222, + 8223, 8224, 8225, 8226, 8227, 8228, 8229, 8230, + 8231, 8232, 8233, 8234, 8235, 8236, 8237, 8238, + 8239, 8240, 8241, 8242, 8243, 8244, 8245, 8246, + 8247, 8248, 8249, 8250, 8251, 8252, 8253, 8254, + 8255, 8256, 8257, 8258, 8259, 8260, 8261, 8262, + 8263, 8264, 8265, 8266, 8267, 8268, 8269, 8270, + 8271, 8272, 8273, 8274, 8275, 8276, 8277, 8278, + 8279, 8280, 8281, 8282, 8283, 8284, 8285, 8286, + 8287, 8288, 8289, 8290, 8291, 8292, 8293, 8294, + 8295, 8296, 8297, 8298, 8299, 8300, 8301, 8302, + 8303, 8304, 8305, 8306, 8307, 8308, 8309, 8310, + 8311, 8312, 8313, 8314, 8315, 8316, 8317, 8318, + 8319, 8320, 8321, 8322, 8323, 8324, 8325, 8326, + 8327, 8328, 8329, 8330, 8331, 8332, 8333, 8334, + 8335, 8336, 8337, 8338, 8339, 8340, 8341, 8342, + 8343, 8344, 8345, 8346, 8347, 8348, 8349, 8350, + 8351, 8352, 8353, 8354, 8355, 8356, 8357, 8358, + 8359, 8360, 8361, 8362, 8363, 8364, 8365, 8366, + 8367, 8368, 8369, 8370, 8371, 8372, 8373, 8374, + 8375, 8376, 8377, 8378, 8379, 8380, 8381, 8382, + 8383, 8384, 8385, 8386, 8387, 8388, 8389, 8390, + 8391, 8392, 8393, 8394, 8395, 8396, 8397, 8398, + 8399, 8400, 8401, 8402, 8403, 8404, 8405, 8406, + 8407, 8408, 8409, 8410, 8411, 8412, 8413, 8414, + 8415, 8416, 8417, 8418, 8419, 8420, 8421, 8422, + 8423, 8424, 8425, 8426, 8427, 8428, 8429, 8430, + 8431, 8432, 8433, 8434, 8435, 8436, 8437, 8438, + 8439, 8440, 8441, 8442, 8443, 8444, 8445, 8446, + 8447, 8448, 8449, 8450, 8451, 8452, 8453, 8454, + 8455, 8456, 8457, 8458, 8459, 8460, 8461, 8462, + 8463, 8464, 8465, 8466, 8467, 8468, 8469, 8470, + 8471, 8472, 8473, 8474, 8475, 8476, 8477, 8478, + 8479, 8480, 8481, 8482, 8483, 8484, 8485, 8486, + 8487, 8488, 8489, 8490, 8491, 8492, 8493, 8494, + 8495, 8496, 8497, 8498, 8499, 8500, 8501, 8502, + 8503, 8504, 8505, 8506, 8507, 8508, 8509, 8510, + 8511, 8512, 8513, 8514, 8515, 8516, 8517, 8518, + 8519, 8520, 8521, 8522, 8523, 8524, -1, -1 + } +}; diff --git a/lib/unistring/uninorm/decomposition.c b/lib/unistring/uninorm/decomposition.c new file mode 100644 index 0000000..7feb81f --- /dev/null +++ b/lib/unistring/uninorm/decomposition.c @@ -0,0 +1,111 @@ +/* Decomposition of Unicode characters. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "uninorm.h" + +#include "uninorm/decomposition-table.h" + +int +uc_decomposition (ucs4_t uc, int *decomp_tag, ucs4_t *decomposition) +{ + if (uc >= 0xAC00 && uc < 0xD7A4) + { + /* Hangul syllable. See Unicode standard, chapter 3, section + "Hangul Syllable Decomposition", See also the clarification at + <https://www.unicode.org/versions/Unicode5.1.0/>, section + "Clarification of Hangul Jamo Handling". */ + unsigned int t; + + uc -= 0xAC00; + t = uc % 28; + + *decomp_tag = UC_DECOMP_CANONICAL; + if (t == 0) + { + unsigned int v, l; + + uc = uc / 28; + v = uc % 21; + l = uc / 21; + + decomposition[0] = 0x1100 + l; + decomposition[1] = 0x1161 + v; + return 2; + } + else + { +#if 1 /* Return the pairwise decomposition, not the full decomposition. */ + decomposition[0] = 0xAC00 + uc - t; /* = 0xAC00 + (l * 21 + v) * 28; */ + decomposition[1] = 0x11A7 + t; + return 2; +#else + unsigned int v, l; + + uc = uc / 28; + v = uc % 21; + l = uc / 21; + + decomposition[0] = 0x1100 + l; + decomposition[1] = 0x1161 + v; + decomposition[2] = 0x11A7 + t; + return 3; +#endif + } + } + else if (uc < 0x110000) + { + unsigned short entry = decomp_index (uc); + if (entry != (unsigned short)(-1)) + { + const unsigned char *p; + unsigned int element; + unsigned int length; + + p = &gl_uninorm_decomp_chars_table[3 * (entry & 0x7FFF)]; + element = (p[0] << 16) | (p[1] << 8) | p[2]; + /* The first element has 5 bits for the decomposition type. */ + *decomp_tag = (element >> 18) & 0x1f; + length = 1; + for (;;) + { + /* Every element has an 18 bits wide Unicode code point. */ + *decomposition = element & 0x3ffff; + /* Bit 23 tells whether there are more elements, */ + if ((element & (1 << 23)) == 0) + break; + p += 3; + element = (p[0] << 16) | (p[1] << 8) | p[2]; + decomposition++; + length++; + } + return length; + } + } + return -1; +} diff --git a/lib/unistring/uninorm/nfc.c b/lib/unistring/uninorm/nfc.c new file mode 100644 index 0000000..49bc75e --- /dev/null +++ b/lib/unistring/uninorm/nfc.c @@ -0,0 +1,40 @@ +/* Unicode Normalization Form C. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "uninorm.h" + +#include "normalize-internal.h" + +const struct unicode_normalization_form uninorm_nfc = + { + NF_IS_COMPOSING, + uc_canonical_decomposition, + uc_composition, + &uninorm_nfd + }; diff --git a/lib/unistring/uninorm/nfd.c b/lib/unistring/uninorm/nfd.c new file mode 100644 index 0000000..93160fd --- /dev/null +++ b/lib/unistring/uninorm/nfd.c @@ -0,0 +1,40 @@ +/* Unicode Normalization Form D. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "uninorm.h" + +#include "normalize-internal.h" + +const struct unicode_normalization_form uninorm_nfd = + { + 0, + uc_canonical_decomposition, + NULL, + &uninorm_nfd + }; diff --git a/lib/unistring/uninorm/nfkc.c b/lib/unistring/uninorm/nfkc.c new file mode 100644 index 0000000..4633652 --- /dev/null +++ b/lib/unistring/uninorm/nfkc.c @@ -0,0 +1,41 @@ +/* Unicode Normalization Form KC. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "uninorm.h" + +#include "normalize-internal.h" +#include "uninorm/decompose-internal.h" + +const struct unicode_normalization_form uninorm_nfkc = + { + NF_IS_COMPAT_DECOMPOSING | NF_IS_COMPOSING, + uc_compat_decomposition, + uc_composition, + &uninorm_nfkd + }; diff --git a/lib/unistring/uninorm/nfkd.c b/lib/unistring/uninorm/nfkd.c new file mode 100644 index 0000000..d47d87b --- /dev/null +++ b/lib/unistring/uninorm/nfkd.c @@ -0,0 +1,41 @@ +/* Unicode Normalization Form KD. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "uninorm.h" + +#include "normalize-internal.h" +#include "uninorm/decompose-internal.h" + +const struct unicode_normalization_form uninorm_nfkd = + { + NF_IS_COMPAT_DECOMPOSING, + uc_compat_decomposition, + NULL, + &uninorm_nfkd + }; diff --git a/lib/unistring/uninorm/normalize-internal.h b/lib/unistring/uninorm/normalize-internal.h new file mode 100644 index 0000000..7d78153 --- /dev/null +++ b/lib/unistring/uninorm/normalize-internal.h @@ -0,0 +1,44 @@ +/* Normalization of Unicode strings. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include "unitypes.h" + +/* Complete definition of normalization form descriptor. */ +struct unicode_normalization_form +{ + /* Bit mask containing meta-information. + This must be the first field. */ + unsigned int description; + #define NF_IS_COMPAT_DECOMPOSING (1 << 0) + #define NF_IS_COMPOSING (1 << 1) + /* Function that decomposes a Unicode character. */ + int (*decomposer) (ucs4_t uc, ucs4_t *decomposition); + /* Function that combines two Unicode characters, a starter and another + character. */ + ucs4_t (*composer) (ucs4_t uc1, ucs4_t uc2); + /* Decomposing variant. */ + const struct unicode_normalization_form *decomposing_variant; +}; diff --git a/lib/unistring/uninorm/u-normalize-internal.h b/lib/unistring/uninorm/u-normalize-internal.h new file mode 100644 index 0000000..c78083c --- /dev/null +++ b/lib/unistring/uninorm/u-normalize-internal.h @@ -0,0 +1,389 @@ +/* Decomposition and composition of Unicode strings. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +UNIT * +FUNC (uninorm_t nf, const UNIT *s, size_t n, + UNIT *resultbuf, size_t *lengthp) +{ + int (*decomposer) (ucs4_t uc, ucs4_t *decomposition) = nf->decomposer; + ucs4_t (*composer) (ucs4_t uc1, ucs4_t uc2) = nf->composer; + + /* The result being accumulated. */ + UNIT *result; + size_t length; + size_t allocated; + /* The buffer for sorting. */ + #define SORTBUF_PREALLOCATED 64 + struct ucs4_with_ccc sortbuf_preallocated[2 * SORTBUF_PREALLOCATED]; + struct ucs4_with_ccc *sortbuf; /* array of size 2 * sortbuf_allocated */ + size_t sortbuf_allocated; + size_t sortbuf_count; + + /* Initialize the accumulator. */ + if (resultbuf == NULL) + { + result = NULL; + allocated = 0; + } + else + { + result = resultbuf; + allocated = *lengthp; + } + length = 0; + + /* Initialize the buffer for sorting. */ + sortbuf = sortbuf_preallocated; + sortbuf_allocated = SORTBUF_PREALLOCATED; + sortbuf_count = 0; + + { + const UNIT *s_end = s + n; + + for (;;) + { + int count; + ucs4_t decomposed[UC_DECOMPOSITION_MAX_LENGTH]; + int decomposed_count; + int i; + + if (s < s_end) + { + /* Fetch the next character. */ + count = U_MBTOUC_UNSAFE (&decomposed[0], s, s_end - s); + decomposed_count = 1; + + /* Decompose it, recursively. + It would be possible to precompute the recursive decomposition + and store it in a table. But this would significantly increase + the size of the decomposition tables, because for example for + U+1FC1 the recursive canonical decomposition and the recursive + compatibility decomposition are different. */ + { + int curr; + + for (curr = 0; curr < decomposed_count; ) + { + /* Invariant: decomposed[0..curr-1] is fully decomposed, i.e. + all elements are atomic. */ + ucs4_t curr_decomposed[UC_DECOMPOSITION_MAX_LENGTH]; + int curr_decomposed_count; + + curr_decomposed_count = decomposer (decomposed[curr], curr_decomposed); + if (curr_decomposed_count >= 0) + { + /* Move curr_decomposed[0..curr_decomposed_count-1] over + decomposed[curr], making room. It's not worth using + memcpy() here, since the counts are so small. */ + int shift = curr_decomposed_count - 1; + + if (shift < 0) + abort (); + if (shift > 0) + { + int j; + + decomposed_count += shift; + if (decomposed_count > UC_DECOMPOSITION_MAX_LENGTH) + abort (); + for (j = decomposed_count - 1 - shift; j > curr; j--) + decomposed[j + shift] = decomposed[j]; + } + for (; shift >= 0; shift--) + decomposed[curr + shift] = curr_decomposed[shift]; + } + else + { + /* decomposed[curr] is atomic. */ + curr++; + } + } + } + } + else + { + count = 0; + decomposed_count = 0; + } + + i = 0; + for (;;) + { + ucs4_t uc; + int ccc; + + if (s < s_end) + { + /* Fetch the next character from the decomposition. */ + if (i == decomposed_count) + break; + uc = decomposed[i]; + ccc = uc_combining_class (uc); + } + else + { + /* End of string reached. */ + uc = 0; + ccc = 0; + } + + if (ccc == 0) + { + size_t j; + + /* Apply the canonical ordering algorithm to the accumulated + sequence of characters. */ + if (sortbuf_count > 1) + gl_uninorm_decompose_merge_sort_inplace (sortbuf, sortbuf_count, + sortbuf + sortbuf_count); + + if (composer != NULL) + { + /* Attempt to combine decomposed characters, as specified + in the Unicode Standard Annex #15 "Unicode Normalization + Forms". We need to check + 1. whether the first accumulated character is a + "starter" (i.e. has ccc = 0). This is usually the + case. But when the string starts with a + non-starter, the sortbuf also starts with a + non-starter. Btw, this check could also be + omitted, because the composition table has only + entries (code1, code2) for which code1 is a + starter; if the first accumulated character is not + a starter, no lookup will succeed. + 2. If the sortbuf has more than one character, check + for each of these characters that are not "blocked" + from the starter (i.e. have a ccc that is higher + than the ccc of the previous character) whether it + can be combined with the first character. + 3. If only one character is left in sortbuf, check + whether it can be combined with the next character + (also a starter). */ + if (sortbuf_count > 0 && sortbuf[0].ccc == 0) + { + for (j = 1; j < sortbuf_count; ) + { + if (sortbuf[j].ccc > sortbuf[j - 1].ccc) + { + ucs4_t combined = + composer (sortbuf[0].code, sortbuf[j].code); + if (combined) + { + size_t k; + + sortbuf[0].code = combined; + /* sortbuf[0].ccc = 0, still valid. */ + for (k = j + 1; k < sortbuf_count; k++) + sortbuf[k - 1] = sortbuf[k]; + sortbuf_count--; + continue; + } + } + j++; + } + if (s < s_end && sortbuf_count == 1) + { + ucs4_t combined = + composer (sortbuf[0].code, uc); + if (combined) + { + uc = combined; + ccc = 0; + /* uc could be further combined with subsequent + characters. So don't put it into sortbuf[0] in + this round, only in the next round. */ + sortbuf_count = 0; + } + } + } + } + + for (j = 0; j < sortbuf_count; j++) + { + ucs4_t muc = sortbuf[j].code; + + /* Append muc to the result accumulator. */ + if (length < allocated) + { + int ret = + U_UCTOMB (result + length, muc, allocated - length); + if (ret == -1) + { + errno = EINVAL; + goto fail; + } + if (ret >= 0) + { + length += ret; + goto done_appending; + } + } + { + size_t old_allocated = allocated; + size_t new_allocated = 2 * old_allocated; + if (new_allocated < 64) + new_allocated = 64; + if (new_allocated < old_allocated) /* integer overflow? */ + abort (); + { + UNIT *larger_result; + if (result == NULL) + { + larger_result = + (UNIT *) malloc (new_allocated * sizeof (UNIT)); + if (larger_result == NULL) + { + errno = ENOMEM; + goto fail; + } + } + else if (result == resultbuf) + { + larger_result = + (UNIT *) malloc (new_allocated * sizeof (UNIT)); + if (larger_result == NULL) + { + errno = ENOMEM; + goto fail; + } + U_CPY (larger_result, resultbuf, length); + } + else + { + larger_result = + (UNIT *) realloc (result, new_allocated * sizeof (UNIT)); + if (larger_result == NULL) + { + errno = ENOMEM; + goto fail; + } + } + result = larger_result; + allocated = new_allocated; + { + int ret = + U_UCTOMB (result + length, muc, allocated - length); + if (ret == -1) + { + errno = EINVAL; + goto fail; + } + if (ret < 0) + abort (); + length += ret; + goto done_appending; + } + } + } + done_appending: ; + } + + /* sortbuf is now empty. */ + sortbuf_count = 0; + } + + if (!(s < s_end)) + /* End of string reached. */ + break; + + /* Append (uc, ccc) to sortbuf. */ + if (sortbuf_count == sortbuf_allocated) + { + struct ucs4_with_ccc *new_sortbuf; + + sortbuf_allocated = 2 * sortbuf_allocated; + if (sortbuf_allocated < sortbuf_count) /* integer overflow? */ + abort (); + new_sortbuf = + (struct ucs4_with_ccc *) malloc (2 * sortbuf_allocated * sizeof (struct ucs4_with_ccc)); + if (new_sortbuf == NULL) + { + errno = ENOMEM; + goto fail; + } + memcpy (new_sortbuf, sortbuf, + sortbuf_count * sizeof (struct ucs4_with_ccc)); + if (sortbuf != sortbuf_preallocated) + free (sortbuf); + sortbuf = new_sortbuf; + } + sortbuf[sortbuf_count].code = uc; + sortbuf[sortbuf_count].ccc = ccc; + sortbuf_count++; + + i++; + } + + if (!(s < s_end)) + /* End of string reached. */ + break; + + s += count; + } + } + + if (length == 0) + { + if (result == NULL) + { + /* Return a non-NULL value. NULL means error. */ + result = (UNIT *) malloc (1); + if (result == NULL) + { + errno = ENOMEM; + goto fail; + } + } + } + else if (result != resultbuf && length < allocated) + { + /* Shrink the allocated memory if possible. */ + UNIT *memory; + + memory = (UNIT *) realloc (result, length * sizeof (UNIT)); + if (memory != NULL) + result = memory; + } + + if (sortbuf_count > 0) + abort (); + if (sortbuf != sortbuf_preallocated) + free (sortbuf); + + *lengthp = length; + return result; + + fail: + { + int saved_errno = errno; + if (sortbuf != sortbuf_preallocated) + free (sortbuf); + if (result != resultbuf) + free (result); + errno = saved_errno; + } + return NULL; +} diff --git a/lib/unistring/uninorm/u16-normalize.c b/lib/unistring/uninorm/u16-normalize.c new file mode 100644 index 0000000..00cfdc8 --- /dev/null +++ b/lib/unistring/uninorm/u16-normalize.c @@ -0,0 +1,47 @@ +/* Normalization of UTF-16 strings. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "uninorm.h" + +#include <errno.h> +#include <stddef.h> +#include <stdlib.h> +#include <string.h> + +#include "unistr.h" +#include "unictype.h" +#include "normalize-internal.h" +#include "uninorm/decompose-internal.h" + +#define FUNC u16_normalize +#define UNIT uint16_t +#define U_MBTOUC_UNSAFE u16_mbtouc_unsafe +#define U_UCTOMB u16_uctomb +#define U_CPY u16_cpy +#include "u-normalize-internal.h" diff --git a/lib/unistring/uninorm/u32-normalize.c b/lib/unistring/uninorm/u32-normalize.c new file mode 100644 index 0000000..928f8a7 --- /dev/null +++ b/lib/unistring/uninorm/u32-normalize.c @@ -0,0 +1,47 @@ +/* Normalization of UTF-32 strings. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "uninorm.h" + +#include <errno.h> +#include <stddef.h> +#include <stdlib.h> +#include <string.h> + +#include "unistr.h" +#include "unictype.h" +#include "normalize-internal.h" +#include "uninorm/decompose-internal.h" + +#define FUNC u32_normalize +#define UNIT uint32_t +#define U_MBTOUC_UNSAFE u32_mbtouc_unsafe +#define U_UCTOMB u32_uctomb +#define U_CPY u32_cpy +#include "u-normalize-internal.h" diff --git a/lib/unistring/uninorm/u8-normalize.c b/lib/unistring/uninorm/u8-normalize.c new file mode 100644 index 0000000..d263cc9 --- /dev/null +++ b/lib/unistring/uninorm/u8-normalize.c @@ -0,0 +1,47 @@ +/* Normalization of UTF-8 strings. + Copyright (C) 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2009. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "uninorm.h" + +#include <errno.h> +#include <stddef.h> +#include <stdlib.h> +#include <string.h> + +#include "unistr.h" +#include "unictype.h" +#include "normalize-internal.h" +#include "uninorm/decompose-internal.h" + +#define FUNC u8_normalize +#define UNIT uint8_t +#define U_MBTOUC_UNSAFE u8_mbtouc_unsafe +#define U_UCTOMB u8_uctomb +#define U_CPY u8_cpy +#include "u-normalize-internal.h" diff --git a/lib/unistring/unistr.in.h b/lib/unistring/unistr.in.h new file mode 100644 index 0000000..50b3058 --- /dev/null +++ b/lib/unistring/unistr.in.h @@ -0,0 +1,758 @@ +/* Elementary Unicode string functions. + Copyright (C) 2001-2002, 2005-2021 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#ifndef _UNISTR_H +#define _UNISTR_H + +#include "unitypes.h" + +/* Get common macros for C. */ +#include "unused-parameter.h" + +/* Get bool. */ +#include <stdbool.h> + +/* Get size_t, ptrdiff_t. */ +#include <stddef.h> + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Conventions: + + All functions prefixed with u8_ operate on UTF-8 encoded strings. + Their unit is an uint8_t (1 byte). + + All functions prefixed with u16_ operate on UTF-16 encoded strings. + Their unit is an uint16_t (a 2-byte word). + + All functions prefixed with u32_ operate on UCS-4 encoded strings. + Their unit is an uint32_t (a 4-byte word). + + All argument pairs (s, n) denote a Unicode string s[0..n-1] with exactly + n units. + + All arguments starting with "str" and the arguments of functions starting + with u8_str/u16_str/u32_str denote a NUL terminated string, i.e. a string + which terminates at the first NUL unit. This termination unit is + considered part of the string for all memory allocation purposes, but + is not considered part of the string for all other logical purposes. + + Functions returning a string result take a (resultbuf, lengthp) argument + pair. If resultbuf is not NULL and the result fits into *lengthp units, + it is put in resultbuf, and resultbuf is returned. Otherwise, a freshly + allocated string is returned. In both cases, *lengthp is set to the + length (number of units) of the returned string. In case of error, + NULL is returned and errno is set. */ + + +/* Elementary string checks. */ + +/* Check whether an UTF-8 string is well-formed. + Return NULL if valid, or a pointer to the first invalid unit otherwise. */ +extern const uint8_t * + u8_check (const uint8_t *s, size_t n) + _UC_ATTRIBUTE_PURE; + +/* Check whether an UTF-16 string is well-formed. + Return NULL if valid, or a pointer to the first invalid unit otherwise. */ +extern const uint16_t * + u16_check (const uint16_t *s, size_t n) + _UC_ATTRIBUTE_PURE; + +/* Check whether an UCS-4 string is well-formed. + Return NULL if valid, or a pointer to the first invalid unit otherwise. */ +extern const uint32_t * + u32_check (const uint32_t *s, size_t n) + _UC_ATTRIBUTE_PURE; + + +/* Elementary string conversions. */ + +/* Convert an UTF-8 string to an UTF-16 string. */ +extern uint16_t * + u8_to_u16 (const uint8_t *s, size_t n, uint16_t *resultbuf, + size_t *lengthp); + +/* Convert an UTF-8 string to an UCS-4 string. */ +extern uint32_t * + u8_to_u32 (const uint8_t *s, size_t n, uint32_t *resultbuf, + size_t *lengthp); + +/* Convert an UTF-16 string to an UTF-8 string. */ +extern uint8_t * + u16_to_u8 (const uint16_t *s, size_t n, uint8_t *resultbuf, + size_t *lengthp); + +/* Convert an UTF-16 string to an UCS-4 string. */ +extern uint32_t * + u16_to_u32 (const uint16_t *s, size_t n, uint32_t *resultbuf, + size_t *lengthp); + +/* Convert an UCS-4 string to an UTF-8 string. */ +extern uint8_t * + u32_to_u8 (const uint32_t *s, size_t n, uint8_t *resultbuf, + size_t *lengthp); + +/* Convert an UCS-4 string to an UTF-16 string. */ +extern uint16_t * + u32_to_u16 (const uint32_t *s, size_t n, uint16_t *resultbuf, + size_t *lengthp); + + +/* Elementary string functions. */ + +/* Return the length (number of units) of the first character in S, which is + no longer than N. Return 0 if it is the NUL character. Return -1 upon + failure. */ +/* Similar to mblen(), except that s must not be NULL. */ +extern int + u8_mblen (const uint8_t *s, size_t n) + _UC_ATTRIBUTE_PURE; +extern int + u16_mblen (const uint16_t *s, size_t n) + _UC_ATTRIBUTE_PURE; +extern int + u32_mblen (const uint32_t *s, size_t n) + _UC_ATTRIBUTE_PURE; + +/* Return the length (number of units) of the first character in S, putting + its 'ucs4_t' representation in *PUC. Upon failure, *PUC is set to 0xfffd, + and an appropriate number of units is returned. + The number of available units, N, must be > 0. */ +/* Similar to mbtowc(), except that puc and s must not be NULL, n must be > 0, + and the NUL character is not treated specially. */ +/* The variants with _unsafe suffix are for backward compatibility with + libunistring versions < 0.9.7. */ + +#if GNULIB_UNISTR_U8_MBTOUC_UNSAFE || HAVE_LIBUNISTRING +# if !HAVE_INLINE +extern int + u8_mbtouc_unsafe (ucs4_t *puc, const uint8_t *s, size_t n); +# else +extern int + u8_mbtouc_unsafe_aux (ucs4_t *puc, const uint8_t *s, size_t n); +static inline int +u8_mbtouc_unsafe (ucs4_t *puc, const uint8_t *s, size_t n) +{ + uint8_t c = *s; + + if (c < 0x80) + { + *puc = c; + return 1; + } + else + return u8_mbtouc_unsafe_aux (puc, s, n); +} +# endif +#endif + +#if GNULIB_UNISTR_U16_MBTOUC_UNSAFE || HAVE_LIBUNISTRING +# if !HAVE_INLINE +extern int + u16_mbtouc_unsafe (ucs4_t *puc, const uint16_t *s, size_t n); +# else +extern int + u16_mbtouc_unsafe_aux (ucs4_t *puc, const uint16_t *s, size_t n); +static inline int +u16_mbtouc_unsafe (ucs4_t *puc, const uint16_t *s, size_t n) +{ + uint16_t c = *s; + + if (c < 0xd800 || c >= 0xe000) + { + *puc = c; + return 1; + } + else + return u16_mbtouc_unsafe_aux (puc, s, n); +} +# endif +#endif + +#if GNULIB_UNISTR_U32_MBTOUC_UNSAFE || HAVE_LIBUNISTRING +# if !HAVE_INLINE +extern int + u32_mbtouc_unsafe (ucs4_t *puc, const uint32_t *s, size_t n); +# else +static inline int +u32_mbtouc_unsafe (ucs4_t *puc, + const uint32_t *s, size_t n _GL_UNUSED_PARAMETER) +{ + uint32_t c = *s; + + if (c < 0xd800 || (c >= 0xe000 && c < 0x110000)) + *puc = c; + else + /* invalid multibyte character */ + *puc = 0xfffd; + return 1; +} +# endif +#endif + +#if GNULIB_UNISTR_U8_MBTOUC || HAVE_LIBUNISTRING +# if !HAVE_INLINE +extern int + u8_mbtouc (ucs4_t *puc, const uint8_t *s, size_t n); +# else +extern int + u8_mbtouc_aux (ucs4_t *puc, const uint8_t *s, size_t n); +static inline int +u8_mbtouc (ucs4_t *puc, const uint8_t *s, size_t n) +{ + uint8_t c = *s; + + if (c < 0x80) + { + *puc = c; + return 1; + } + else + return u8_mbtouc_aux (puc, s, n); +} +# endif +#endif + +#if GNULIB_UNISTR_U16_MBTOUC || HAVE_LIBUNISTRING +# if !HAVE_INLINE +extern int + u16_mbtouc (ucs4_t *puc, const uint16_t *s, size_t n); +# else +extern int + u16_mbtouc_aux (ucs4_t *puc, const uint16_t *s, size_t n); +static inline int +u16_mbtouc (ucs4_t *puc, const uint16_t *s, size_t n) +{ + uint16_t c = *s; + + if (c < 0xd800 || c >= 0xe000) + { + *puc = c; + return 1; + } + else + return u16_mbtouc_aux (puc, s, n); +} +# endif +#endif + +#if GNULIB_UNISTR_U32_MBTOUC || HAVE_LIBUNISTRING +# if !HAVE_INLINE +extern int + u32_mbtouc (ucs4_t *puc, const uint32_t *s, size_t n); +# else +static inline int +u32_mbtouc (ucs4_t *puc, const uint32_t *s, size_t n _GL_UNUSED_PARAMETER) +{ + uint32_t c = *s; + + if (c < 0xd800 || (c >= 0xe000 && c < 0x110000)) + *puc = c; + else + /* invalid multibyte character */ + *puc = 0xfffd; + return 1; +} +# endif +#endif + +/* Return the length (number of units) of the first character in S, putting + its 'ucs4_t' representation in *PUC. Upon failure, *PUC is set to 0xfffd, + and -1 is returned for an invalid sequence of units, -2 is returned for an + incomplete sequence of units. + The number of available units, N, must be > 0. */ +/* Similar to u*_mbtouc(), except that the return value gives more details + about the failure, similar to mbrtowc(). */ + +#if GNULIB_UNISTR_U8_MBTOUCR || HAVE_LIBUNISTRING +extern int + u8_mbtoucr (ucs4_t *puc, const uint8_t *s, size_t n); +#endif + +#if GNULIB_UNISTR_U16_MBTOUCR || HAVE_LIBUNISTRING +extern int + u16_mbtoucr (ucs4_t *puc, const uint16_t *s, size_t n); +#endif + +#if GNULIB_UNISTR_U32_MBTOUCR || HAVE_LIBUNISTRING +extern int + u32_mbtoucr (ucs4_t *puc, const uint32_t *s, size_t n); +#endif + +/* Put the multibyte character represented by UC in S, returning its + length. Return -1 upon failure, -2 if the number of available units, N, + is too small. The latter case cannot occur if N >= 6/2/1, respectively. */ +/* Similar to wctomb(), except that s must not be NULL, and the argument n + must be specified. */ + +#if GNULIB_UNISTR_U8_UCTOMB || HAVE_LIBUNISTRING +/* Auxiliary function, also used by u8_chr, u8_strchr, u8_strrchr. */ +extern int + u8_uctomb_aux (uint8_t *s, ucs4_t uc, ptrdiff_t n); +# if !HAVE_INLINE +extern int + u8_uctomb (uint8_t *s, ucs4_t uc, ptrdiff_t n); +# else +static inline int +u8_uctomb (uint8_t *s, ucs4_t uc, ptrdiff_t n) +{ + if (uc < 0x80 && n > 0) + { + s[0] = uc; + return 1; + } + else + return u8_uctomb_aux (s, uc, n); +} +# endif +#endif + +#if GNULIB_UNISTR_U16_UCTOMB || HAVE_LIBUNISTRING +/* Auxiliary function, also used by u16_chr, u16_strchr, u16_strrchr. */ +extern int + u16_uctomb_aux (uint16_t *s, ucs4_t uc, ptrdiff_t n); +# if !HAVE_INLINE +extern int + u16_uctomb (uint16_t *s, ucs4_t uc, ptrdiff_t n); +# else +static inline int +u16_uctomb (uint16_t *s, ucs4_t uc, ptrdiff_t n) +{ + if (uc < 0xd800 && n > 0) + { + s[0] = uc; + return 1; + } + else + return u16_uctomb_aux (s, uc, n); +} +# endif +#endif + +#if GNULIB_UNISTR_U32_UCTOMB || HAVE_LIBUNISTRING +# if !HAVE_INLINE +extern int + u32_uctomb (uint32_t *s, ucs4_t uc, ptrdiff_t n); +# else +static inline int +u32_uctomb (uint32_t *s, ucs4_t uc, ptrdiff_t n) +{ + if (uc < 0xd800 || (uc >= 0xe000 && uc < 0x110000)) + { + if (n > 0) + { + *s = uc; + return 1; + } + else + return -2; + } + else + return -1; +} +# endif +#endif + +/* Copy N units from SRC to DEST. */ +/* Similar to memcpy(). */ +extern uint8_t * + u8_cpy (uint8_t *_UC_RESTRICT dest, const uint8_t *src, size_t n); +extern uint16_t * + u16_cpy (uint16_t *_UC_RESTRICT dest, const uint16_t *src, size_t n); +extern uint32_t * + u32_cpy (uint32_t *_UC_RESTRICT dest, const uint32_t *src, size_t n); + +/* Copy N units from SRC to DEST, guaranteeing correct behavior for + overlapping memory areas. */ +/* Similar to memmove(). */ +extern uint8_t * + u8_move (uint8_t *dest, const uint8_t *src, size_t n); +extern uint16_t * + u16_move (uint16_t *dest, const uint16_t *src, size_t n); +extern uint32_t * + u32_move (uint32_t *dest, const uint32_t *src, size_t n); + +/* Set the first N characters of S to UC. UC should be a character that + occupies only 1 unit. */ +/* Similar to memset(). */ +extern uint8_t * + u8_set (uint8_t *s, ucs4_t uc, size_t n); +extern uint16_t * + u16_set (uint16_t *s, ucs4_t uc, size_t n); +extern uint32_t * + u32_set (uint32_t *s, ucs4_t uc, size_t n); + +/* Compare S1 and S2, each of length N. */ +/* Similar to memcmp(). */ +extern int + u8_cmp (const uint8_t *s1, const uint8_t *s2, size_t n) + _UC_ATTRIBUTE_PURE; +extern int + u16_cmp (const uint16_t *s1, const uint16_t *s2, size_t n) + _UC_ATTRIBUTE_PURE; +extern int + u32_cmp (const uint32_t *s1, const uint32_t *s2, size_t n) + _UC_ATTRIBUTE_PURE; + +/* Compare S1 and S2. */ +/* Similar to the gnulib function memcmp2(). */ +extern int + u8_cmp2 (const uint8_t *s1, size_t n1, const uint8_t *s2, size_t n2) + _UC_ATTRIBUTE_PURE; +extern int + u16_cmp2 (const uint16_t *s1, size_t n1, const uint16_t *s2, size_t n2) + _UC_ATTRIBUTE_PURE; +extern int + u32_cmp2 (const uint32_t *s1, size_t n1, const uint32_t *s2, size_t n2) + _UC_ATTRIBUTE_PURE; + +/* Search the string at S for UC. */ +/* Similar to memchr(). */ +extern uint8_t * + u8_chr (const uint8_t *s, size_t n, ucs4_t uc) + _UC_ATTRIBUTE_PURE; +extern uint16_t * + u16_chr (const uint16_t *s, size_t n, ucs4_t uc) + _UC_ATTRIBUTE_PURE; +extern uint32_t * + u32_chr (const uint32_t *s, size_t n, ucs4_t uc) + _UC_ATTRIBUTE_PURE; + +/* Count the number of Unicode characters in the N units from S. */ +/* Similar to mbsnlen(). */ +extern size_t + u8_mbsnlen (const uint8_t *s, size_t n) + _UC_ATTRIBUTE_PURE; +extern size_t + u16_mbsnlen (const uint16_t *s, size_t n) + _UC_ATTRIBUTE_PURE; +extern size_t + u32_mbsnlen (const uint32_t *s, size_t n) + _UC_ATTRIBUTE_PURE; + +/* Elementary string functions with memory allocation. */ + +/* Make a freshly allocated copy of S, of length N. */ +extern uint8_t * + u8_cpy_alloc (const uint8_t *s, size_t n); +extern uint16_t * + u16_cpy_alloc (const uint16_t *s, size_t n); +extern uint32_t * + u32_cpy_alloc (const uint32_t *s, size_t n); + +/* Elementary string functions on NUL terminated strings. */ + +/* Return the length (number of units) of the first character in S. + Return 0 if it is the NUL character. Return -1 upon failure. */ +extern int + u8_strmblen (const uint8_t *s) + _UC_ATTRIBUTE_PURE; +extern int + u16_strmblen (const uint16_t *s) + _UC_ATTRIBUTE_PURE; +extern int + u32_strmblen (const uint32_t *s) + _UC_ATTRIBUTE_PURE; + +/* Return the length (number of units) of the first character in S, putting + its 'ucs4_t' representation in *PUC. Return 0 if it is the NUL + character. Return -1 upon failure. */ +extern int + u8_strmbtouc (ucs4_t *puc, const uint8_t *s); +extern int + u16_strmbtouc (ucs4_t *puc, const uint16_t *s); +extern int + u32_strmbtouc (ucs4_t *puc, const uint32_t *s); + +/* Forward iteration step. Advances the pointer past the next character, + or returns NULL if the end of the string has been reached. Puts the + character's 'ucs4_t' representation in *PUC. */ +extern const uint8_t * + u8_next (ucs4_t *puc, const uint8_t *s); +extern const uint16_t * + u16_next (ucs4_t *puc, const uint16_t *s); +extern const uint32_t * + u32_next (ucs4_t *puc, const uint32_t *s); + +/* Backward iteration step. Advances the pointer to point to the previous + character, or returns NULL if the beginning of the string had been reached. + Puts the character's 'ucs4_t' representation in *PUC. */ +extern const uint8_t * + u8_prev (ucs4_t *puc, const uint8_t *s, const uint8_t *start); +extern const uint16_t * + u16_prev (ucs4_t *puc, const uint16_t *s, const uint16_t *start); +extern const uint32_t * + u32_prev (ucs4_t *puc, const uint32_t *s, const uint32_t *start); + +/* Return the number of units in S. */ +/* Similar to strlen(), wcslen(). */ +extern size_t + u8_strlen (const uint8_t *s) + _UC_ATTRIBUTE_PURE; +extern size_t + u16_strlen (const uint16_t *s) + _UC_ATTRIBUTE_PURE; +extern size_t + u32_strlen (const uint32_t *s) + _UC_ATTRIBUTE_PURE; + +/* Return the number of units in S, but at most MAXLEN. */ +/* Similar to strnlen(), wcsnlen(). */ +extern size_t + u8_strnlen (const uint8_t *s, size_t maxlen) + _UC_ATTRIBUTE_PURE; +extern size_t + u16_strnlen (const uint16_t *s, size_t maxlen) + _UC_ATTRIBUTE_PURE; +extern size_t + u32_strnlen (const uint32_t *s, size_t maxlen) + _UC_ATTRIBUTE_PURE; + +/* Copy SRC to DEST. */ +/* Similar to strcpy(), wcscpy(). */ +extern uint8_t * + u8_strcpy (uint8_t *_UC_RESTRICT dest, const uint8_t *src); +extern uint16_t * + u16_strcpy (uint16_t *_UC_RESTRICT dest, const uint16_t *src); +extern uint32_t * + u32_strcpy (uint32_t *_UC_RESTRICT dest, const uint32_t *src); + +/* Copy SRC to DEST, returning the address of the terminating NUL in DEST. */ +/* Similar to stpcpy(). */ +extern uint8_t * + u8_stpcpy (uint8_t *_UC_RESTRICT dest, const uint8_t *src); +extern uint16_t * + u16_stpcpy (uint16_t *_UC_RESTRICT dest, const uint16_t *src); +extern uint32_t * + u32_stpcpy (uint32_t *_UC_RESTRICT dest, const uint32_t *src); + +/* Copy no more than N units of SRC to DEST. */ +/* Similar to strncpy(), wcsncpy(). */ +extern uint8_t * + u8_strncpy (uint8_t *_UC_RESTRICT dest, const uint8_t *src, size_t n); +extern uint16_t * + u16_strncpy (uint16_t *_UC_RESTRICT dest, const uint16_t *src, size_t n); +extern uint32_t * + u32_strncpy (uint32_t *_UC_RESTRICT dest, const uint32_t *src, size_t n); + +/* Copy no more than N units of SRC to DEST. Return a pointer past the last + non-NUL unit written into DEST. */ +/* Similar to stpncpy(). */ +extern uint8_t * + u8_stpncpy (uint8_t *_UC_RESTRICT dest, const uint8_t *src, size_t n); +extern uint16_t * + u16_stpncpy (uint16_t *_UC_RESTRICT dest, const uint16_t *src, size_t n); +extern uint32_t * + u32_stpncpy (uint32_t *_UC_RESTRICT dest, const uint32_t *src, size_t n); + +/* Append SRC onto DEST. */ +/* Similar to strcat(), wcscat(). */ +extern uint8_t * + u8_strcat (uint8_t *_UC_RESTRICT dest, const uint8_t *src); +extern uint16_t * + u16_strcat (uint16_t *_UC_RESTRICT dest, const uint16_t *src); +extern uint32_t * + u32_strcat (uint32_t *_UC_RESTRICT dest, const uint32_t *src); + +/* Append no more than N units of SRC onto DEST. */ +/* Similar to strncat(), wcsncat(). */ +extern uint8_t * + u8_strncat (uint8_t *_UC_RESTRICT dest, const uint8_t *src, size_t n); +extern uint16_t * + u16_strncat (uint16_t *_UC_RESTRICT dest, const uint16_t *src, size_t n); +extern uint32_t * + u32_strncat (uint32_t *_UC_RESTRICT dest, const uint32_t *src, size_t n); + +/* Compare S1 and S2. */ +/* Similar to strcmp(), wcscmp(). */ +#ifdef __sun +/* Avoid a collision with the u8_strcmp() function in Solaris 11 libc. */ +extern int + u8_strcmp_gnu (const uint8_t *s1, const uint8_t *s2) + _UC_ATTRIBUTE_PURE; +# define u8_strcmp u8_strcmp_gnu +#else +extern int + u8_strcmp (const uint8_t *s1, const uint8_t *s2) + _UC_ATTRIBUTE_PURE; +#endif +extern int + u16_strcmp (const uint16_t *s1, const uint16_t *s2) + _UC_ATTRIBUTE_PURE; +extern int + u32_strcmp (const uint32_t *s1, const uint32_t *s2) + _UC_ATTRIBUTE_PURE; + +/* Compare S1 and S2 using the collation rules of the current locale. + Return -1 if S1 < S2, 0 if S1 = S2, 1 if S1 > S2. + Upon failure, set errno and return any value. */ +/* Similar to strcoll(), wcscoll(). */ +extern int + u8_strcoll (const uint8_t *s1, const uint8_t *s2); +extern int + u16_strcoll (const uint16_t *s1, const uint16_t *s2); +extern int + u32_strcoll (const uint32_t *s1, const uint32_t *s2); + +/* Compare no more than N units of S1 and S2. */ +/* Similar to strncmp(), wcsncmp(). */ +extern int + u8_strncmp (const uint8_t *s1, const uint8_t *s2, size_t n) + _UC_ATTRIBUTE_PURE; +extern int + u16_strncmp (const uint16_t *s1, const uint16_t *s2, size_t n) + _UC_ATTRIBUTE_PURE; +extern int + u32_strncmp (const uint32_t *s1, const uint32_t *s2, size_t n) + _UC_ATTRIBUTE_PURE; + +/* Duplicate S, returning an identical malloc'd string. */ +/* Similar to strdup(), wcsdup(). */ +extern uint8_t * + u8_strdup (const uint8_t *s); +extern uint16_t * + u16_strdup (const uint16_t *s); +extern uint32_t * + u32_strdup (const uint32_t *s); + +/* Find the first occurrence of UC in STR. */ +/* Similar to strchr(), wcschr(). */ +extern uint8_t * + u8_strchr (const uint8_t *str, ucs4_t uc) + _UC_ATTRIBUTE_PURE; +extern uint16_t * + u16_strchr (const uint16_t *str, ucs4_t uc) + _UC_ATTRIBUTE_PURE; +extern uint32_t * + u32_strchr (const uint32_t *str, ucs4_t uc) + _UC_ATTRIBUTE_PURE; + +/* Find the last occurrence of UC in STR. */ +/* Similar to strrchr(), wcsrchr(). */ +extern uint8_t * + u8_strrchr (const uint8_t *str, ucs4_t uc) + _UC_ATTRIBUTE_PURE; +extern uint16_t * + u16_strrchr (const uint16_t *str, ucs4_t uc) + _UC_ATTRIBUTE_PURE; +extern uint32_t * + u32_strrchr (const uint32_t *str, ucs4_t uc) + _UC_ATTRIBUTE_PURE; + +/* Return the length of the initial segment of STR which consists entirely + of Unicode characters not in REJECT. */ +/* Similar to strcspn(), wcscspn(). */ +extern size_t + u8_strcspn (const uint8_t *str, const uint8_t *reject) + _UC_ATTRIBUTE_PURE; +extern size_t + u16_strcspn (const uint16_t *str, const uint16_t *reject) + _UC_ATTRIBUTE_PURE; +extern size_t + u32_strcspn (const uint32_t *str, const uint32_t *reject) + _UC_ATTRIBUTE_PURE; + +/* Return the length of the initial segment of STR which consists entirely + of Unicode characters in ACCEPT. */ +/* Similar to strspn(), wcsspn(). */ +extern size_t + u8_strspn (const uint8_t *str, const uint8_t *accept) + _UC_ATTRIBUTE_PURE; +extern size_t + u16_strspn (const uint16_t *str, const uint16_t *accept) + _UC_ATTRIBUTE_PURE; +extern size_t + u32_strspn (const uint32_t *str, const uint32_t *accept) + _UC_ATTRIBUTE_PURE; + +/* Find the first occurrence in STR of any character in ACCEPT. */ +/* Similar to strpbrk(), wcspbrk(). */ +extern uint8_t * + u8_strpbrk (const uint8_t *str, const uint8_t *accept) + _UC_ATTRIBUTE_PURE; +extern uint16_t * + u16_strpbrk (const uint16_t *str, const uint16_t *accept) + _UC_ATTRIBUTE_PURE; +extern uint32_t * + u32_strpbrk (const uint32_t *str, const uint32_t *accept) + _UC_ATTRIBUTE_PURE; + +/* Find the first occurrence of NEEDLE in HAYSTACK. */ +/* Similar to strstr(), wcsstr(). */ +extern uint8_t * + u8_strstr (const uint8_t *haystack, const uint8_t *needle) + _UC_ATTRIBUTE_PURE; +extern uint16_t * + u16_strstr (const uint16_t *haystack, const uint16_t *needle) + _UC_ATTRIBUTE_PURE; +extern uint32_t * + u32_strstr (const uint32_t *haystack, const uint32_t *needle) + _UC_ATTRIBUTE_PURE; + +/* Test whether STR starts with PREFIX. */ +extern bool + u8_startswith (const uint8_t *str, const uint8_t *prefix) + _UC_ATTRIBUTE_PURE; +extern bool + u16_startswith (const uint16_t *str, const uint16_t *prefix) + _UC_ATTRIBUTE_PURE; +extern bool + u32_startswith (const uint32_t *str, const uint32_t *prefix) + _UC_ATTRIBUTE_PURE; + +/* Test whether STR ends with SUFFIX. */ +extern bool + u8_endswith (const uint8_t *str, const uint8_t *suffix) + _UC_ATTRIBUTE_PURE; +extern bool + u16_endswith (const uint16_t *str, const uint16_t *suffix) + _UC_ATTRIBUTE_PURE; +extern bool + u32_endswith (const uint32_t *str, const uint32_t *suffix) + _UC_ATTRIBUTE_PURE; + +/* Divide STR into tokens separated by characters in DELIM. + This interface is actually more similar to wcstok than to strtok. */ +/* Similar to strtok_r(), wcstok(). */ +extern uint8_t * + u8_strtok (uint8_t *_UC_RESTRICT str, const uint8_t *delim, + uint8_t **ptr); +extern uint16_t * + u16_strtok (uint16_t *_UC_RESTRICT str, const uint16_t *delim, + uint16_t **ptr); +extern uint32_t * + u32_strtok (uint32_t *_UC_RESTRICT str, const uint32_t *delim, + uint32_t **ptr); + + +#ifdef __cplusplus +} +#endif + +#endif /* _UNISTR_H */ diff --git a/lib/unistring/unistr/u-cpy.h b/lib/unistring/unistr/u-cpy.h new file mode 100644 index 0000000..25c2ba5 --- /dev/null +++ b/lib/unistring/unistr/u-cpy.h @@ -0,0 +1,42 @@ +/* Copy piece of UTF-8/UTF-16/UTF-32 string. + Copyright (C) 1999, 2002, 2006, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <string.h> + +UNIT * +FUNC (UNIT *dest, const UNIT *src, size_t n) +{ +#if 0 + UNIT *destptr = dest; + + for (; n > 0; n--) + *destptr++ = *src++; +#else + if (n > 0) + memcpy ((char *) dest, (const char *) src, n * sizeof (UNIT)); +#endif + return dest; +} diff --git a/lib/unistring/unistr/u16-cpy.c b/lib/unistring/unistr/u16-cpy.c new file mode 100644 index 0000000..ba3e44c --- /dev/null +++ b/lib/unistring/unistr/u16-cpy.c @@ -0,0 +1,34 @@ +/* Copy piece of UTF-16 string. + Copyright (C) 1999, 2002, 2006, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +#define FUNC u16_cpy +#define UNIT uint16_t +#include "u-cpy.h" diff --git a/lib/unistring/unistr/u16-mbtouc-unsafe-aux.c b/lib/unistring/unistr/u16-mbtouc-unsafe-aux.c new file mode 100644 index 0000000..3b415a2 --- /dev/null +++ b/lib/unistring/unistr/u16-mbtouc-unsafe-aux.c @@ -0,0 +1,60 @@ +/* Conversion UTF-16 to UCS-4. + Copyright (C) 2001-2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2001. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +#if defined IN_LIBUNISTRING || HAVE_INLINE + +int +u16_mbtouc_unsafe_aux (ucs4_t *puc, const uint16_t *s, size_t n) +{ + uint16_t c = *s; + + if (c < 0xdc00) + { + if (n >= 2) + { + if (s[1] >= 0xdc00 && s[1] < 0xe000) + { + *puc = 0x10000 + ((c - 0xd800) << 10) + (s[1] - 0xdc00); + return 2; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + } + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 1; +} + +#endif diff --git a/lib/unistring/unistr/u16-mbtouc-unsafe.c b/lib/unistring/unistr/u16-mbtouc-unsafe.c new file mode 100644 index 0000000..74d83ab --- /dev/null +++ b/lib/unistring/unistr/u16-mbtouc-unsafe.c @@ -0,0 +1,71 @@ +/* Look at first character in UTF-16 string. + Copyright (C) 1999-2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2001. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +#if defined IN_LIBUNISTRING +/* Tell unistr.h to declare u16_mbtouc_unsafe as 'extern', not + 'static inline'. */ +# include "unistring-notinline.h" +#endif + +/* Specification. */ +#include "unistr.h" + +#if !HAVE_INLINE + +int +u16_mbtouc_unsafe (ucs4_t *puc, const uint16_t *s, size_t n) +{ + uint16_t c = *s; + + if (c < 0xd800 || c >= 0xe000) + { + *puc = c; + return 1; + } + if (c < 0xdc00) + { + if (n >= 2) + { + if (s[1] >= 0xdc00 && s[1] < 0xe000) + { + *puc = 0x10000 + ((c - 0xd800) << 10) + (s[1] - 0xdc00); + return 2; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + } + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 1; +} + +#endif diff --git a/lib/unistring/unistr/u16-mbtoucr.c b/lib/unistring/unistr/u16-mbtoucr.c new file mode 100644 index 0000000..04f96ac --- /dev/null +++ b/lib/unistring/unistr/u16-mbtoucr.c @@ -0,0 +1,63 @@ +/* Look at first character in UTF-16 string, returning an error code. + Copyright (C) 1999-2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2001. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +int +u16_mbtoucr (ucs4_t *puc, const uint16_t *s, size_t n) +{ + uint16_t c = *s; + + if (c < 0xd800 || c >= 0xe000) + { + *puc = c; + return 1; + } + if (c < 0xdc00) + { + if (n >= 2) + { + if (s[1] >= 0xdc00 && s[1] < 0xe000) + { + *puc = 0x10000 + ((c - 0xd800) << 10) + (s[1] - 0xdc00); + return 2; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + return -2; + } + } + /* invalid multibyte character */ + *puc = 0xfffd; + return -1; +} diff --git a/lib/unistring/unistr/u16-to-u8.c b/lib/unistring/unistr/u16-to-u8.c new file mode 100644 index 0000000..e6268f5 --- /dev/null +++ b/lib/unistring/unistr/u16-to-u8.c @@ -0,0 +1,145 @@ +/* Convert UTF-16 string to UTF-8 string. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +#define FUNC u16_to_u8 +#define SRC_UNIT uint16_t +#define DST_UNIT uint8_t + +#include <errno.h> +#include <stdlib.h> +#include <string.h> + +DST_UNIT * +FUNC (const SRC_UNIT *s, size_t n, DST_UNIT *resultbuf, size_t *lengthp) +{ + const SRC_UNIT *s_end = s + n; + /* Output string accumulator. */ + DST_UNIT *result; + size_t allocated; + size_t length; + + if (resultbuf != NULL) + { + result = resultbuf; + allocated = *lengthp; + } + else + { + result = NULL; + allocated = 0; + } + length = 0; + /* Invariants: + result is either == resultbuf or == NULL or malloc-allocated. + If length > 0, then result != NULL. */ + + while (s < s_end) + { + ucs4_t uc; + int count; + + /* Fetch a Unicode character from the input string. */ + count = u16_mbtoucr (&uc, s, s_end - s); + if (count < 0) + { + if (!(result == resultbuf || result == NULL)) + free (result); + errno = EILSEQ; + return NULL; + } + s += count; + + /* Store it in the output string. */ + count = u8_uctomb (result + length, uc, allocated - length); + if (count == -1) + { + if (!(result == resultbuf || result == NULL)) + free (result); + errno = EILSEQ; + return NULL; + } + if (count == -2) + { + DST_UNIT *memory; + + allocated = (allocated > 0 ? 2 * allocated : 12); + if (length + 6 > allocated) + allocated = length + 6; + if (result == resultbuf || result == NULL) + memory = (DST_UNIT *) malloc (allocated * sizeof (DST_UNIT)); + else + memory = + (DST_UNIT *) realloc (result, allocated * sizeof (DST_UNIT)); + + if (memory == NULL) + { + if (!(result == resultbuf || result == NULL)) + free (result); + errno = ENOMEM; + return NULL; + } + if (result == resultbuf && length > 0) + memcpy ((char *) memory, (char *) result, + length * sizeof (DST_UNIT)); + result = memory; + count = u8_uctomb (result + length, uc, allocated - length); + if (count < 0) + abort (); + } + length += count; + } + + if (length == 0) + { + if (result == NULL) + { + /* Return a non-NULL value. NULL means error. */ + result = (DST_UNIT *) malloc (1); + if (result == NULL) + { + errno = ENOMEM; + return NULL; + } + } + } + else if (result != resultbuf && length < allocated) + { + /* Shrink the allocated memory if possible. */ + DST_UNIT *memory; + + memory = (DST_UNIT *) realloc (result, length * sizeof (DST_UNIT)); + if (memory != NULL) + result = memory; + } + + *lengthp = length; + return result; +} diff --git a/lib/unistring/unistr/u16-uctomb-aux.c b/lib/unistring/unistr/u16-uctomb-aux.c new file mode 100644 index 0000000..5294030 --- /dev/null +++ b/lib/unistring/unistr/u16-uctomb-aux.c @@ -0,0 +1,67 @@ +/* Conversion UCS-4 to UTF-16. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +int +u16_uctomb_aux (uint16_t *s, ucs4_t uc, ptrdiff_t n) +{ + if (uc < 0xd800) + { + /* The case n >= 1 is already handled by the caller. */ + } + else if (uc < 0x10000) + { + if (uc >= 0xe000) + { + if (n >= 1) + { + s[0] = uc; + return 1; + } + } + else + return -1; + } + else + { + if (uc < 0x110000) + { + if (n >= 2) + { + s[0] = 0xd800 + ((uc - 0x10000) >> 10); + s[1] = 0xdc00 + ((uc - 0x10000) & 0x3ff); + return 2; + } + } + else + return -1; + } + return -2; +} diff --git a/lib/unistring/unistr/u16-uctomb.c b/lib/unistring/unistr/u16-uctomb.c new file mode 100644 index 0000000..2a009d0 --- /dev/null +++ b/lib/unistring/unistr/u16-uctomb.c @@ -0,0 +1,81 @@ +/* Store a character in UTF-16 string. + Copyright (C) 2002, 2005-2006, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +#if defined IN_LIBUNISTRING +/* Tell unistr.h to declare u16_uctomb as 'extern', not 'static inline'. */ +# include "unistring-notinline.h" +#endif + +/* Specification. */ +#include "unistr.h" + +#if !HAVE_INLINE + +int +u16_uctomb (uint16_t *s, ucs4_t uc, ptrdiff_t n) +{ + if (uc < 0xd800) + { + if (n > 0) + { + s[0] = uc; + return 1; + } + /* else return -2, below. */ + } + else if (uc < 0x10000) + { + if (uc >= 0xe000) + { + if (n >= 1) + { + s[0] = uc; + return 1; + } + } + else + return -1; + } + else + { + if (uc < 0x110000) + { + if (n >= 2) + { + s[0] = 0xd800 + ((uc - 0x10000) >> 10); + s[1] = 0xdc00 + ((uc - 0x10000) & 0x3ff); + return 2; + } + } + else + return -1; + } + return -2; +} + +#endif diff --git a/lib/unistring/unistr/u32-cpy.c b/lib/unistring/unistr/u32-cpy.c new file mode 100644 index 0000000..2ad503c --- /dev/null +++ b/lib/unistring/unistr/u32-cpy.c @@ -0,0 +1,34 @@ +/* Copy piece of UTF-32 string. + Copyright (C) 1999, 2002, 2006, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +#define FUNC u32_cpy +#define UNIT uint32_t +#include "u-cpy.h" diff --git a/lib/unistring/unistr/u32-mbtouc-unsafe.c b/lib/unistring/unistr/u32-mbtouc-unsafe.c new file mode 100644 index 0000000..23d1512 --- /dev/null +++ b/lib/unistring/unistr/u32-mbtouc-unsafe.c @@ -0,0 +1,53 @@ +/* Look at first character in UTF-32 string. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +#if defined IN_LIBUNISTRING +/* Tell unistr.h to declare u32_mbtouc_unsafe as 'extern', not + 'static inline'. */ +# include "unistring-notinline.h" +#endif + +/* Specification. */ +#include "unistr.h" + +#if !HAVE_INLINE + +int +u32_mbtouc_unsafe (ucs4_t *puc, const uint32_t *s, size_t n) +{ + uint32_t c = *s; + + if (c < 0xd800 || (c >= 0xe000 && c < 0x110000)) + *puc = c; + else + /* invalid multibyte character */ + *puc = 0xfffd; + return 1; +} + +#endif diff --git a/lib/unistring/unistr/u32-to-u8.c b/lib/unistring/unistr/u32-to-u8.c new file mode 100644 index 0000000..064edcf --- /dev/null +++ b/lib/unistring/unistr/u32-to-u8.c @@ -0,0 +1,139 @@ +/* Convert UTF-32 string to UTF-8 string. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +#define FUNC u32_to_u8 +#define SRC_UNIT uint32_t +#define DST_UNIT uint8_t + +#include <errno.h> +#include <stdlib.h> +#include <string.h> + +DST_UNIT * +FUNC (const SRC_UNIT *s, size_t n, DST_UNIT *resultbuf, size_t *lengthp) +{ + const SRC_UNIT *s_end = s + n; + /* Output string accumulator. */ + DST_UNIT *result; + size_t allocated; + size_t length; + + if (resultbuf != NULL) + { + result = resultbuf; + allocated = *lengthp; + } + else + { + result = NULL; + allocated = 0; + } + length = 0; + /* Invariants: + result is either == resultbuf or == NULL or malloc-allocated. + If length > 0, then result != NULL. */ + + while (s < s_end) + { + ucs4_t uc; + int count; + + /* Fetch a Unicode character from the input string. */ + uc = *s++; + /* No need to call the safe variant u32_mbtouc, because + u8_uctomb will verify uc anyway. */ + + /* Store it in the output string. */ + count = u8_uctomb (result + length, uc, allocated - length); + if (count == -1) + { + if (!(result == resultbuf || result == NULL)) + free (result); + errno = EILSEQ; + return NULL; + } + if (count == -2) + { + DST_UNIT *memory; + + allocated = (allocated > 0 ? 2 * allocated : 12); + if (length + 6 > allocated) + allocated = length + 6; + if (result == resultbuf || result == NULL) + memory = (DST_UNIT *) malloc (allocated * sizeof (DST_UNIT)); + else + memory = + (DST_UNIT *) realloc (result, allocated * sizeof (DST_UNIT)); + + if (memory == NULL) + { + if (!(result == resultbuf || result == NULL)) + free (result); + errno = ENOMEM; + return NULL; + } + if (result == resultbuf && length > 0) + memcpy ((char *) memory, (char *) result, + length * sizeof (DST_UNIT)); + result = memory; + count = u8_uctomb (result + length, uc, allocated - length); + if (count < 0) + abort (); + } + length += count; + } + + if (length == 0) + { + if (result == NULL) + { + /* Return a non-NULL value. NULL means error. */ + result = (DST_UNIT *) malloc (1); + if (result == NULL) + { + errno = ENOMEM; + return NULL; + } + } + } + else if (result != resultbuf && length < allocated) + { + /* Shrink the allocated memory if possible. */ + DST_UNIT *memory; + + memory = (DST_UNIT *) realloc (result, length * sizeof (DST_UNIT)); + if (memory != NULL) + result = memory; + } + + *lengthp = length; + return result; +} diff --git a/lib/unistring/unistr/u32-uctomb.c b/lib/unistring/unistr/u32-uctomb.c new file mode 100644 index 0000000..2a64a93 --- /dev/null +++ b/lib/unistring/unistr/u32-uctomb.c @@ -0,0 +1,56 @@ +/* Store a character in UTF-32 string. + Copyright (C) 2002, 2005-2006, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +#if defined IN_LIBUNISTRING +/* Tell unistr.h to declare u32_uctomb as 'extern', not 'static inline'. */ +# include "unistring-notinline.h" +#endif + +/* Specification. */ +#include "unistr.h" + +#if !HAVE_INLINE + +int +u32_uctomb (uint32_t *s, ucs4_t uc, ptrdiff_t n) +{ + if (uc < 0xd800 || (uc >= 0xe000 && uc < 0x110000)) + { + if (n > 0) + { + *s = uc; + return 1; + } + else + return -2; + } + else + return -1; +} + +#endif diff --git a/lib/unistring/unistr/u8-check.c b/lib/unistring/unistr/u8-check.c new file mode 100644 index 0000000..c1d69ee --- /dev/null +++ b/lib/unistring/unistr/u8-check.c @@ -0,0 +1,86 @@ +/* Check UTF-8 string. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +const uint8_t * +u8_check (const uint8_t *s, size_t n) +{ + const uint8_t *s_end = s + n; + + while (s < s_end) + { + /* Keep in sync with unistr.h and u8-mbtouc-aux.c. */ + uint8_t c = *s; + + if (c < 0x80) + { + s++; + continue; + } + if (c >= 0xc2) + { + if (c < 0xe0) + { + if (s + 2 <= s_end + && (s[1] ^ 0x80) < 0x40) + { + s += 2; + continue; + } + } + else if (c < 0xf0) + { + if (s + 3 <= s_end + && (s[1] ^ 0x80) < 0x40 && (s[2] ^ 0x80) < 0x40 + && (c >= 0xe1 || s[1] >= 0xa0) + && (c != 0xed || s[1] < 0xa0)) + { + s += 3; + continue; + } + } + else if (c < 0xf8) + { + if (s + 4 <= s_end + && (s[1] ^ 0x80) < 0x40 && (s[2] ^ 0x80) < 0x40 + && (s[3] ^ 0x80) < 0x40 + && (c >= 0xf1 || s[1] >= 0x90) + && (c < 0xf4 || (c == 0xf4 && s[1] < 0x90))) + { + s += 4; + continue; + } + } + } + /* invalid or incomplete multibyte character */ + return s; + } + return NULL; +} diff --git a/lib/unistring/unistr/u8-cpy.c b/lib/unistring/unistr/u8-cpy.c new file mode 100644 index 0000000..ec77c4c --- /dev/null +++ b/lib/unistring/unistr/u8-cpy.c @@ -0,0 +1,34 @@ +/* Copy piece of UTF-8 string. + Copyright (C) 2002, 2006, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +#define FUNC u8_cpy +#define UNIT uint8_t +#include "u-cpy.h" diff --git a/lib/unistring/unistr/u8-mbtouc-unsafe-aux.c b/lib/unistring/unistr/u8-mbtouc-unsafe-aux.c new file mode 100644 index 0000000..b24dfcc --- /dev/null +++ b/lib/unistring/unistr/u8-mbtouc-unsafe-aux.c @@ -0,0 +1,148 @@ +/* Conversion UTF-8 to UCS-4. + Copyright (C) 2001-2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2001. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +#if defined IN_LIBUNISTRING || HAVE_INLINE + +int +u8_mbtouc_unsafe_aux (ucs4_t *puc, const uint8_t *s, size_t n) +{ + uint8_t c = *s; + + if (c >= 0xc2) + { + if (c < 0xe0) + { + if (n >= 2) + { + if ((s[1] ^ 0x80) < 0x40) + { + *puc = ((unsigned int) (c & 0x1f) << 6) + | (unsigned int) (s[1] ^ 0x80); + return 2; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + return 1; + } + } + else if (c < 0xf0) + { + if (n >= 3) + { + if ((s[1] ^ 0x80) < 0x40) + { + if ((s[2] ^ 0x80) < 0x40) + { + if ((c >= 0xe1 || s[1] >= 0xa0) + && (c != 0xed || s[1] < 0xa0)) + { + *puc = ((unsigned int) (c & 0x0f) << 12) + | ((unsigned int) (s[1] ^ 0x80) << 6) + | (unsigned int) (s[2] ^ 0x80); + return 3; + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 3; + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 2; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + if (n == 1 || (s[1] ^ 0x80) >= 0x40) + return 1; + else + return 2; + } + } + else if (c < 0xf8) + { + if (n >= 4) + { + if ((s[1] ^ 0x80) < 0x40) + { + if ((s[2] ^ 0x80) < 0x40) + { + if ((s[3] ^ 0x80) < 0x40) + { + if ((c >= 0xf1 || s[1] >= 0x90) + && (c < 0xf4 || (c == 0xf4 && s[1] < 0x90)) + ) + { + *puc = ((unsigned int) (c & 0x07) << 18) + | ((unsigned int) (s[1] ^ 0x80) << 12) + | ((unsigned int) (s[2] ^ 0x80) << 6) + | (unsigned int) (s[3] ^ 0x80); + return 4; + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 4; + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 3; + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 2; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + if (n == 1 || (s[1] ^ 0x80) >= 0x40) + return 1; + else if (n == 2 || (s[2] ^ 0x80) >= 0x40) + return 2; + else + return 3; + } + } + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 1; +} + +#endif diff --git a/lib/unistring/unistr/u8-mbtouc-unsafe.c b/lib/unistring/unistr/u8-mbtouc-unsafe.c new file mode 100644 index 0000000..b98a0b9 --- /dev/null +++ b/lib/unistring/unistr/u8-mbtouc-unsafe.c @@ -0,0 +1,159 @@ +/* Look at first character in UTF-8 string. + Copyright (C) 1999-2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2001. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +#if defined IN_LIBUNISTRING +/* Tell unistr.h to declare u8_mbtouc_unsafe as 'extern', not + 'static inline'. */ +# include "unistring-notinline.h" +#endif + +/* Specification. */ +#include "unistr.h" + +#if !HAVE_INLINE + +int +u8_mbtouc_unsafe (ucs4_t *puc, const uint8_t *s, size_t n) +{ + uint8_t c = *s; + + if (c < 0x80) + { + *puc = c; + return 1; + } + else if (c >= 0xc2) + { + if (c < 0xe0) + { + if (n >= 2) + { + if ((s[1] ^ 0x80) < 0x40) + { + *puc = ((unsigned int) (c & 0x1f) << 6) + | (unsigned int) (s[1] ^ 0x80); + return 2; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + return 1; + } + } + else if (c < 0xf0) + { + if (n >= 3) + { + if ((s[1] ^ 0x80) < 0x40) + { + if ((s[2] ^ 0x80) < 0x40) + { + if ((c >= 0xe1 || s[1] >= 0xa0) + && (c != 0xed || s[1] < 0xa0)) + { + *puc = ((unsigned int) (c & 0x0f) << 12) + | ((unsigned int) (s[1] ^ 0x80) << 6) + | (unsigned int) (s[2] ^ 0x80); + return 3; + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 3; + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 2; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + if (n == 1 || (s[1] ^ 0x80) >= 0x40) + return 1; + else + return 2; + } + } + else if (c < 0xf8) + { + if (n >= 4) + { + if ((s[1] ^ 0x80) < 0x40) + { + if ((s[2] ^ 0x80) < 0x40) + { + if ((s[3] ^ 0x80) < 0x40) + { + if ((c >= 0xf1 || s[1] >= 0x90) + && (c < 0xf4 || (c == 0xf4 && s[1] < 0x90)) + ) + { + *puc = ((unsigned int) (c & 0x07) << 18) + | ((unsigned int) (s[1] ^ 0x80) << 12) + | ((unsigned int) (s[2] ^ 0x80) << 6) + | (unsigned int) (s[3] ^ 0x80); + return 4; + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 4; + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 3; + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 2; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + if (n == 1 || (s[1] ^ 0x80) >= 0x40) + return 1; + else if (n == 2 || (s[2] ^ 0x80) >= 0x40) + return 2; + else + return 3; + } + } + } + /* invalid multibyte character */ + *puc = 0xfffd; + return 1; +} + +#endif diff --git a/lib/unistring/unistr/u8-mbtoucr.c b/lib/unistring/unistr/u8-mbtoucr.c new file mode 100644 index 0000000..47d63d4 --- /dev/null +++ b/lib/unistring/unistr/u8-mbtoucr.c @@ -0,0 +1,151 @@ +/* Look at first character in UTF-8 string, returning an error code. + Copyright (C) 1999-2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2001. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +int +u8_mbtoucr (ucs4_t *puc, const uint8_t *s, size_t n) +{ + uint8_t c = *s; + + if (c < 0x80) + { + *puc = c; + return 1; + } + else if (c >= 0xc2) + { + if (c < 0xe0) + { + if (n >= 2) + { + if ((s[1] ^ 0x80) < 0x40) + { + *puc = ((unsigned int) (c & 0x1f) << 6) + | (unsigned int) (s[1] ^ 0x80); + return 2; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + return -2; + } + } + else if (c < 0xf0) + { + if (n >= 2) + { + if ((s[1] ^ 0x80) < 0x40 + && (c >= 0xe1 || s[1] >= 0xa0) + && (c != 0xed || s[1] < 0xa0)) + { + if (n >= 3) + { + if ((s[2] ^ 0x80) < 0x40) + { + *puc = ((unsigned int) (c & 0x0f) << 12) + | ((unsigned int) (s[1] ^ 0x80) << 6) + | (unsigned int) (s[2] ^ 0x80); + return 3; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + return -2; + } + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + return -2; + } + } + else if (c < 0xf8) + { + if (n >= 2) + { + if ((s[1] ^ 0x80) < 0x40 + && (c >= 0xf1 || s[1] >= 0x90) + && (c < 0xf4 || (c == 0xf4 && s[1] < 0x90))) + { + if (n >= 3) + { + if ((s[2] ^ 0x80) < 0x40) + { + if (n >= 4) + { + if ((s[3] ^ 0x80) < 0x40) + { + *puc = ((unsigned int) (c & 0x07) << 18) + | ((unsigned int) (s[1] ^ 0x80) << 12) + | ((unsigned int) (s[2] ^ 0x80) << 6) + | (unsigned int) (s[3] ^ 0x80); + return 4; + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + return -2; + } + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + return -2; + } + } + /* invalid multibyte character */ + } + else + { + /* incomplete multibyte character */ + *puc = 0xfffd; + return -2; + } + } + } + /* invalid multibyte character */ + *puc = 0xfffd; + return -1; +} diff --git a/lib/unistring/unistr/u8-to-u16.c b/lib/unistring/unistr/u8-to-u16.c new file mode 100644 index 0000000..ef728ff --- /dev/null +++ b/lib/unistring/unistr/u8-to-u16.c @@ -0,0 +1,145 @@ +/* Convert UTF-8 string to UTF-16 string. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +#define FUNC u8_to_u16 +#define SRC_UNIT uint8_t +#define DST_UNIT uint16_t + +#include <errno.h> +#include <stdlib.h> +#include <string.h> + +DST_UNIT * +FUNC (const SRC_UNIT *s, size_t n, DST_UNIT *resultbuf, size_t *lengthp) +{ + const SRC_UNIT *s_end = s + n; + /* Output string accumulator. */ + DST_UNIT *result; + size_t allocated; + size_t length; + + if (resultbuf != NULL) + { + result = resultbuf; + allocated = *lengthp; + } + else + { + result = NULL; + allocated = 0; + } + length = 0; + /* Invariants: + result is either == resultbuf or == NULL or malloc-allocated. + If length > 0, then result != NULL. */ + + while (s < s_end) + { + ucs4_t uc; + int count; + + /* Fetch a Unicode character from the input string. */ + count = u8_mbtoucr (&uc, s, s_end - s); + if (count < 0) + { + if (!(result == resultbuf || result == NULL)) + free (result); + errno = EILSEQ; + return NULL; + } + s += count; + + /* Store it in the output string. */ + count = u16_uctomb (result + length, uc, allocated - length); + if (count == -1) + { + if (!(result == resultbuf || result == NULL)) + free (result); + errno = EILSEQ; + return NULL; + } + if (count == -2) + { + DST_UNIT *memory; + + allocated = (allocated > 0 ? 2 * allocated : 12); + if (length + 2 > allocated) + allocated = length + 2; + if (result == resultbuf || result == NULL) + memory = (DST_UNIT *) malloc (allocated * sizeof (DST_UNIT)); + else + memory = + (DST_UNIT *) realloc (result, allocated * sizeof (DST_UNIT)); + + if (memory == NULL) + { + if (!(result == resultbuf || result == NULL)) + free (result); + errno = ENOMEM; + return NULL; + } + if (result == resultbuf && length > 0) + memcpy ((char *) memory, (char *) result, + length * sizeof (DST_UNIT)); + result = memory; + count = u16_uctomb (result + length, uc, allocated - length); + if (count < 0) + abort (); + } + length += count; + } + + if (length == 0) + { + if (result == NULL) + { + /* Return a non-NULL value. NULL means error. */ + result = (DST_UNIT *) malloc (1); + if (result == NULL) + { + errno = ENOMEM; + return NULL; + } + } + } + else if (result != resultbuf && length < allocated) + { + /* Shrink the allocated memory if possible. */ + DST_UNIT *memory; + + memory = (DST_UNIT *) realloc (result, length * sizeof (DST_UNIT)); + if (memory != NULL) + result = memory; + } + + *lengthp = length; + return result; +} diff --git a/lib/unistring/unistr/u8-to-u32.c b/lib/unistring/unistr/u8-to-u32.c new file mode 100644 index 0000000..b947c6c --- /dev/null +++ b/lib/unistring/unistr/u8-to-u32.c @@ -0,0 +1,134 @@ +/* Convert UTF-8 string to UTF-32 string. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +#define FUNC u8_to_u32 +#define SRC_UNIT uint8_t +#define DST_UNIT uint32_t + +#include <errno.h> +#include <stdlib.h> +#include <string.h> + +DST_UNIT * +FUNC (const SRC_UNIT *s, size_t n, DST_UNIT *resultbuf, size_t *lengthp) +{ + const SRC_UNIT *s_end = s + n; + /* Output string accumulator. */ + DST_UNIT *result; + size_t allocated; + size_t length; + + if (resultbuf != NULL) + { + result = resultbuf; + allocated = *lengthp; + } + else + { + result = NULL; + allocated = 0; + } + length = 0; + /* Invariants: + result is either == resultbuf or == NULL or malloc-allocated. + If length > 0, then result != NULL. */ + + while (s < s_end) + { + ucs4_t uc; + int count; + + /* Fetch a Unicode character from the input string. */ + count = u8_mbtoucr (&uc, s, s_end - s); + if (count < 0) + { + if (!(result == resultbuf || result == NULL)) + free (result); + errno = EILSEQ; + return NULL; + } + s += count; + + /* Store it in the output string. */ + if (length + 1 > allocated) + { + DST_UNIT *memory; + + allocated = (allocated > 0 ? 2 * allocated : 12); + if (length + 1 > allocated) + allocated = length + 1; + if (result == resultbuf || result == NULL) + memory = (DST_UNIT *) malloc (allocated * sizeof (DST_UNIT)); + else + memory = + (DST_UNIT *) realloc (result, allocated * sizeof (DST_UNIT)); + + if (memory == NULL) + { + if (!(result == resultbuf || result == NULL)) + free (result); + errno = ENOMEM; + return NULL; + } + if (result == resultbuf && length > 0) + memcpy ((char *) memory, (char *) result, + length * sizeof (DST_UNIT)); + result = memory; + } + result[length++] = uc; + } + + if (length == 0) + { + if (result == NULL) + { + /* Return a non-NULL value. NULL means error. */ + result = (DST_UNIT *) malloc (1); + if (result == NULL) + { + errno = ENOMEM; + return NULL; + } + } + } + else if (result != resultbuf && length < allocated) + { + /* Shrink the allocated memory if possible. */ + DST_UNIT *memory; + + memory = (DST_UNIT *) realloc (result, length * sizeof (DST_UNIT)); + if (memory != NULL) + result = memory; + } + + *lengthp = length; + return result; +} diff --git a/lib/unistring/unistr/u8-uctomb-aux.c b/lib/unistring/unistr/u8-uctomb-aux.c new file mode 100644 index 0000000..3e4e29c --- /dev/null +++ b/lib/unistring/unistr/u8-uctomb-aux.c @@ -0,0 +1,69 @@ +/* Conversion UCS-4 to UTF-8. + Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +/* Specification. */ +#include "unistr.h" + +#include "attribute.h" + +int +u8_uctomb_aux (uint8_t *s, ucs4_t uc, ptrdiff_t n) +{ + int count; + + if (uc < 0x80) + /* The case n >= 1 is already handled by the caller. */ + return -2; + else if (uc < 0x800) + count = 2; + else if (uc < 0x10000) + { + if (uc < 0xd800 || uc >= 0xe000) + count = 3; + else + return -1; + } + else if (uc < 0x110000) + count = 4; + else + return -1; + + if (n < count) + return -2; + + switch (count) /* note: code falls through cases! */ + { + case 4: s[3] = 0x80 | (uc & 0x3f); uc = uc >> 6; uc |= 0x10000; + FALLTHROUGH; + case 3: s[2] = 0x80 | (uc & 0x3f); uc = uc >> 6; uc |= 0x800; + FALLTHROUGH; + case 2: s[1] = 0x80 | (uc & 0x3f); uc = uc >> 6; uc |= 0xc0; + /*case 1:*/ s[0] = uc; + } + return count; +} diff --git a/lib/unistring/unistr/u8-uctomb.c b/lib/unistring/unistr/u8-uctomb.c new file mode 100644 index 0000000..55ff3d6 --- /dev/null +++ b/lib/unistring/unistr/u8-uctomb.c @@ -0,0 +1,88 @@ +/* Store a character in UTF-8 string. + Copyright (C) 2002, 2005-2006, 2009-2021 Free Software Foundation, Inc. + Written by Bruno Haible <bruno@clisp.org>, 2002. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#include <config.h> + +#if defined IN_LIBUNISTRING +/* Tell unistr.h to declare u8_uctomb as 'extern', not 'static inline'. */ +# include "unistring-notinline.h" +#endif + +/* Specification. */ +#include "unistr.h" + +#include "attribute.h" + +#if !HAVE_INLINE + +int +u8_uctomb (uint8_t *s, ucs4_t uc, ptrdiff_t n) +{ + if (uc < 0x80) + { + if (n > 0) + { + s[0] = uc; + return 1; + } + /* else return -2, below. */ + } + else + { + int count; + + if (uc < 0x800) + count = 2; + else if (uc < 0x10000) + { + if (uc < 0xd800 || uc >= 0xe000) + count = 3; + else + return -1; + } + else if (uc < 0x110000) + count = 4; + else + return -1; + + if (n >= count) + { + switch (count) /* note: code falls through cases! */ + { + case 4: s[3] = 0x80 | (uc & 0x3f); uc = uc >> 6; uc |= 0x10000; + FALLTHROUGH; + case 3: s[2] = 0x80 | (uc & 0x3f); uc = uc >> 6; uc |= 0x800; + FALLTHROUGH; + case 2: s[1] = 0x80 | (uc & 0x3f); uc = uc >> 6; uc |= 0xc0; + /*case 1:*/ s[0] = uc; + } + return count; + } + } + return -2; +} + +#endif diff --git a/lib/unistring/unitypes.in.h b/lib/unistring/unitypes.in.h new file mode 100644 index 0000000..babb549 --- /dev/null +++ b/lib/unistring/unitypes.in.h @@ -0,0 +1,70 @@ +/* Elementary types and macros for the GNU UniString library. + Copyright (C) 2002, 2005-2006, 2009-2021 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +#ifndef _UNITYPES_H +#define _UNITYPES_H + +/* Get uint8_t, uint16_t, uint32_t. */ +#include <stdint.h> + +/* Type representing a Unicode character. */ +typedef uint32_t ucs4_t; + +/* Attribute of a function whose result depends only on the arguments + (not pointers!) and which has no side effects. */ +#ifndef _UC_ATTRIBUTE_CONST +# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95) || defined __clang__ +# define _UC_ATTRIBUTE_CONST __attribute__ ((__const__)) +# else +# define _UC_ATTRIBUTE_CONST +# endif +#endif + +/* Attribute of a function whose result depends only on the arguments + (possibly pointers) and global memory, and which has no side effects. */ +#ifndef _UC_ATTRIBUTE_PURE +# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) || defined __clang__ +# define _UC_ATTRIBUTE_PURE __attribute__ ((__pure__)) +# else +# define _UC_ATTRIBUTE_PURE +# endif +#endif + +/* Qualifier in a function declaration, that asserts that the caller must + pass a pointer to a different object in the specified pointer argument + than in the other pointer arguments. */ +#ifndef _UC_RESTRICT +# if defined __restrict \ + || 2 < __GNUC__ + (95 <= __GNUC_MINOR__) \ + || __clang_major__ >= 3 +# define _UC_RESTRICT __restrict +# elif 199901L <= __STDC_VERSION__ || defined restrict +# define _UC_RESTRICT restrict +# else +# define _UC_RESTRICT +# endif +#endif + +#endif /* _UNITYPES_H */ diff --git a/lib/unistring/unused-parameter.h b/lib/unistring/unused-parameter.h new file mode 100644 index 0000000..b4891bf --- /dev/null +++ b/lib/unistring/unused-parameter.h @@ -0,0 +1,41 @@ +/* A C macro for declaring that specific function parameters are not used. + Copyright (C) 2008-2021 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or + modify it under the terms of either: + + * 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. + + or + + * the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + or both in parallel, as here. + 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 <https://www.gnu.org/licenses/>. */ + +/* _GL_UNUSED_PARAMETER is a marker that can be appended to function parameter + declarations for parameters that are not used. This helps to reduce + warnings, such as from GCC -Wunused-parameter. The syntax is as follows: + type param _GL_UNUSED_PARAMETER + or more generally + param_decl _GL_UNUSED_PARAMETER + For example: + int param _GL_UNUSED_PARAMETER + int *(*param)(void) _GL_UNUSED_PARAMETER + Other possible, but obscure and discouraged syntaxes: + int _GL_UNUSED_PARAMETER *(*param)(void) + _GL_UNUSED_PARAMETER int *(*param)(void) + */ +#ifndef _GL_UNUSED_PARAMETER +# define _GL_UNUSED_PARAMETER _GL_ATTRIBUTE_MAYBE_UNUSED +#endif |