public inbox for [email protected]help / color / mirror / Atom feed
[PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX 29+ messages / 4 participants [nested] [flat]
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX @ 2021-03-11 15:18 Justin Pryzby <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Justin Pryzby @ 2021-03-11 15:18 UTC (permalink / raw) --- configure | 279 +++++++++++++++++++-------------------------------- configure.ac | 16 ++- 2 files changed, 108 insertions(+), 187 deletions(-) diff --git a/configure b/configure index 87ed16060e..387c553d5a 100755 --- a/configure +++ b/configure @@ -654,8 +654,6 @@ UUID_LIBS LDAP_LIBS_BE LDAP_LIBS_FE with_ssl -LZ4_LIBS -LZ4_CFLAGS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC @@ -701,6 +699,8 @@ with_gnu_ld LD LDFLAGS_SL LDFLAGS_EX +LZ4_LIBS +LZ4_CFLAGS with_lz4 with_zlib with_system_tzdata @@ -895,12 +895,12 @@ ICU_LIBS XML2_CONFIG XML2_CFLAGS XML2_LIBS +LZ4_CFLAGS +LZ4_LIBS LDFLAGS_EX LDFLAGS_SL PERL PYTHON -LZ4_CFLAGS -LZ4_LIBS MSGFMT TCLSH' @@ -1603,12 +1603,12 @@ Some influential environment variables: XML2_CONFIG path to xml2-config utility XML2_CFLAGS C compiler flags for XML2, overriding pkg-config XML2_LIBS linker flags for XML2, overriding pkg-config + LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config + LZ4_LIBS linker flags for LZ4, overriding pkg-config LDFLAGS_EX extra linker flags for linking executables only LDFLAGS_SL extra linker flags for linking shared libraries only PERL Perl program PYTHON Python program - LZ4_CFLAGS C compiler flags for LZ4, overriding pkg-config - LZ4_LIBS linker flags for LZ4, overriding pkg-config MSGFMT msgfmt program for NLS TCLSH Tcl interpreter program (tclsh) @@ -8607,6 +8607,102 @@ fi $as_echo "$with_lz4" >&6; } +if test "$with_lz4" = yes; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 +$as_echo_n "checking for liblz4... " >&6; } + +if test -n "$LZ4_CFLAGS"; then + pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$LZ4_LIBS"; then + pkg_cv_LZ4_LIBS="$LZ4_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 + ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` + else + LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LZ4_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (liblz4) were not met: + +$LZ4_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables LZ4_CFLAGS +and LZ4_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://pkg-config.freedesktop.org/;. +See \`config.log' for more details" "$LINENO" 5; } +else + LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS + LZ4_LIBS=$pkg_cv_LZ4_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -12154,147 +12250,6 @@ fi fi -if test "$with_lz4" = yes; then - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblz4" >&5 -$as_echo_n "checking for liblz4... " >&6; } - -if test -n "$LZ4_CFLAGS"; then - pkg_cv_LZ4_CFLAGS="$LZ4_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_CFLAGS=`$PKG_CONFIG --cflags "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LZ4_LIBS"; then - pkg_cv_LZ4_LIBS="$LZ4_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"liblz4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "liblz4") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LZ4_LIBS=`$PKG_CONFIG --libs "liblz4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LZ4_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "liblz4" 2>&1` - else - LZ4_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "liblz4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LZ4_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (liblz4) were not met: - -$LZ4_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LZ4_CFLAGS -and LZ4_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/;. -See \`config.log' for more details" "$LINENO" 5; } -else - LZ4_CFLAGS=$pkg_cv_LZ4_CFLAGS - LZ4_LIBS=$pkg_cv_LZ4_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress in -llz4" >&5 -$as_echo_n "checking for LZ4_compress in -llz4... " >&6; } -if ${ac_cv_lib_lz4_LZ4_compress+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llz4 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char LZ4_compress (); -int -main () -{ -return LZ4_compress (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lz4_LZ4_compress=yes -else - ac_cv_lib_lz4_LZ4_compress=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lz4_LZ4_compress" >&5 -$as_echo "$ac_cv_lib_lz4_LZ4_compress" >&6; } -if test "x$ac_cv_lib_lz4_LZ4_compress" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZ4 1 -_ACEOF - - LIBS="-llz4 $LIBS" - -else - as_fn_error $? "library 'lz4' is required for LZ4 support" "$LINENO" 5 -fi - -fi - if test "$enable_spinlocks" = yes; then $as_echo "#define HAVE_SPINLOCKS 1" >>confdefs.h @@ -13561,36 +13516,6 @@ Use --without-zlib to disable zlib support." "$LINENO" 5 fi -fi - -if test "$with_lz4" = yes; then - for ac_header in lz4/lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4/lz4.h" "ac_cv_header_lz4_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_LZ4_H 1 -_ACEOF - -else - for ac_header in lz4.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "lz4.h" "ac_cv_header_lz4_h" "$ac_includes_default" -if test "x$ac_cv_header_lz4_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LZ4_H 1 -_ACEOF - -else - as_fn_error $? "lz4.h header file is required for LZ4" "$LINENO" 5 -fi - -done - -fi - -done - fi if test "$with_gssapi" = yes ; then diff --git a/configure.ac b/configure.ac index c8f199dc5e..4cd683afb3 100644 --- a/configure.ac +++ b/configure.ac @@ -995,6 +995,12 @@ PGAC_ARG_BOOL(with, lz4, no, [build with LZ4 support], AC_MSG_RESULT([$with_lz4]) AC_SUBST(with_lz4) +if test "$with_lz4" = yes; then + PKG_CHECK_MODULES(LZ4, liblz4) + LIBS="$LZ4_LIBS $LIBS" + CFLAGS="$LZ4_CFLAGS $CFLAGS" +fi + # # Assignments # @@ -1183,11 +1189,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - PKG_CHECK_MODULES(LZ4, liblz4) - AC_CHECK_LIB(lz4, LZ4_compress, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) -fi - if test "$enable_spinlocks" = yes; then AC_DEFINE(HAVE_SPINLOCKS, 1, [Define to 1 if you have spinlocks.]) else @@ -1421,11 +1422,6 @@ failure. It is possible the compiler isn't looking in the proper directory. Use --without-zlib to disable zlib support.])]) fi -if test "$with_lz4" = yes; then - AC_CHECK_HEADERS(lz4/lz4.h, [], - [AC_CHECK_HEADERS(lz4.h, [], [AC_MSG_ERROR([lz4.h header file is required for LZ4])])]) -fi - if test "$with_gssapi" = yes ; then AC_CHECK_HEADERS(gssapi/gssapi.h, [], [AC_CHECK_HEADERS(gssapi.h, [], [AC_MSG_ERROR([gssapi.h header file is required for GSSAPI])])]) -- 2.17.0 --cvVnyQ+4j833TQvp Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Add-default_toast_compression-GUC.patch" ^ permalink raw reply [nested|flat] 29+ messages in thread
* Unicode update and some tooling improvements @ 2026-02-26 20:36 Peter Eisentraut <[email protected]> 0 siblings, 2 replies; 29+ messages in thread From: Peter Eisentraut @ 2026-02-26 20:36 UTC (permalink / raw) To: pgsql-hackers This is the annual update of the Unicode data. I also worked a bit on the tooling. The update-unicode target under meson did not update the data in contrib/unaccent/, so I added that. I also fixed a Python deprecation warning in the generation script and made some light changes in the surrounding documentation. From 1c5286f900c0411ca648193d831a81d666bb8421 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 10:24:07 +0100 Subject: [PATCH 1/6] Fix Python deprecation warning Starting with Python 3.14, contrib/unaccent/generate_unaccent_rules.py complains DeprecationWarning: codecs.open() is deprecated. Use open() instead. This makes that change. This works for all Python 3.x versions. --- contrib/unaccent/generate_unaccent_rules.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/unaccent/generate_unaccent_rules.py b/contrib/unaccent/generate_unaccent_rules.py index 40822d0c176..827fa6766df 100644 --- a/contrib/unaccent/generate_unaccent_rules.py +++ b/contrib/unaccent/generate_unaccent_rules.py @@ -236,7 +236,7 @@ def main(args): charactersSet = set() # read file UnicodeData.txt - with codecs.open( + with open( args.unicodeDataFilePath, mode='r', encoding='UTF-8', ) as unicodeDataFile: # read everything we need into memory -- 2.53.0 From 0fd752a1729f727537c97f0ea52cd4ec154b1a38 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 11:32:02 +0100 Subject: [PATCH 2/6] doc: Fix capitalization of Unicode --- doc/src/sgml/targets-meson.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/targets-meson.txt b/doc/src/sgml/targets-meson.txt index 90a8d9b3fff..397c103d72c 100644 --- a/doc/src/sgml/targets-meson.txt +++ b/doc/src/sgml/targets-meson.txt @@ -16,7 +16,7 @@ Code Targets: Developer Targets: reformat-dat-files Rewrite catalog data files into standard format expand-dat-files Expand all data files to include defaults - update-unicode Update unicode data to new version + update-unicode Update Unicode data to new version Documentation Targets: html Build documentation in multi-page HTML format -- 2.53.0 From ef15b16dcef7a3868fc37744d201bb233f8271bd Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 11:36:27 +0100 Subject: [PATCH 3/6] Implement unaccent Unicode data update in meson The meson/ninja update-unicode target did not cover the required updates in contrib/unaccent/. This is fixed now. --- contrib/unaccent/meson.build | 40 +++++++++++++++++++++++++++++++++- doc/src/sgml/installation.sgml | 2 +- meson.build | 8 ++++++- src/common/unicode/README | 2 +- src/common/unicode/meson.build | 29 ++++++++++++------------ 5 files changed, 63 insertions(+), 18 deletions(-) diff --git a/contrib/unaccent/meson.build b/contrib/unaccent/meson.build index 7f582fc04a7..36decdcfe1f 100644 --- a/contrib/unaccent/meson.build +++ b/contrib/unaccent/meson.build @@ -28,7 +28,6 @@ install_data( install_dir: dir_data / 'tsearch_data' ) -# XXX: Implement downlo tests += { 'name': 'unaccent', 'sd': meson.current_source_dir(), @@ -39,3 +38,42 @@ tests += { ], }, } + + +# Download CLDR files on demand. + +cldr_baseurl = 'https://raw.githubusercontent.com/unicode-org/cldr/release-@0@/common/transforms/@1@'; + +if not wget.found() or not cp.found() + subdir_done() +endif + +foreach f : ['Latin-ASCII.xml'] + # XXX .replace requires meson 0.58 + url = cldr_baseurl.format(CLDR_VERSION.replace('.', '-'), f) + target = custom_target(f, + output: f, + command: [wget, wget_flags, url], + build_by_default: false, + ) + unicode_data += {f: target} +endforeach + +unaccent_update_unicode_targets = \ + custom_target('unaccent.rules', + input: [unicode_data['UnicodeData.txt'], unicode_data['Latin-ASCII.xml']], + output: ['unaccent.rules'], + command: [python, files('generate_unaccent_rules.py'), '--unicode-data-file', '@INPUT0@', '--latin-ascii-file', '@INPUT1@'], + build_by_default: false, + capture: true, + ) + +update_unicode_unaccent = custom_target('update-unicode', + output: ['dont-exist'], + input: unaccent_update_unicode_targets, + command: [cp, '@INPUT@', '@SOURCE_ROOT@/contrib/unaccent/'], + build_by_default: false, + build_always_stale: true, +) + +update_unicode_targets += update_unicode_unaccent diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index b345a105674..c6f4b93d547 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -65,7 +65,7 @@ <title>Requirements</title> </para> <para> - The minimum required version of <application>Meson</application> is 0.57.2. + The minimum required version of <application>Meson</application> is 0.58. </para> </listitem> diff --git a/meson.build b/meson.build index 5122706477d..f1bc24615a3 100644 --- a/meson.build +++ b/meson.build @@ -15,7 +15,8 @@ project('postgresql', # RHEL 8 has 0.58. < 0.57 would require various additional # backward-compatibility conditionals. # Meson 0.57.0 and 0.57.1 are buggy, therefore >=0.57.2. - meson_version: '>=0.57.2', + # FIXME: update comment + meson_version: '>=0.58', default_options: [ 'warning_level=1', #-Wall equivalent 'b_pch=false', @@ -3180,6 +3181,7 @@ pl_targets = [] contrib_targets = [] testprep_targets = [] nls_targets = [] +update_unicode_targets = [] # Define the tests to distribute them to the correct test styles later @@ -3953,6 +3955,10 @@ alias_target('testprep', testprep_targets) alias_target('world', all_built, docs) alias_target('install-world', install_quiet, installdocs) +if update_unicode_targets.length() > 0 + alias_target('update-unicode', update_unicode_targets) +endif + run_target('help', command: [ perl, '-ne', 'next if /^#/; print', diff --git a/src/common/unicode/README b/src/common/unicode/README index 4974c3c885d..fdb8b66fa58 100644 --- a/src/common/unicode/README +++ b/src/common/unicode/README @@ -10,7 +10,7 @@ Update Unicode Version ---------------------- Edit src/Makefile.global.in and src/common/unicode/meson.build -to update the UNICODE_VERSION. +to update the UNICODE_VERSION and the CLDR_VERSION. Then, generate the new header files with: diff --git a/src/common/unicode/meson.build b/src/common/unicode/meson.build index f650dd95b5c..94d02f0070d 100644 --- a/src/common/unicode/meson.build +++ b/src/common/unicode/meson.build @@ -1,6 +1,7 @@ # Copyright (c) 2022-2026, PostgreSQL Global Development Group UNICODE_VERSION = '16.0.0' +CLDR_VERSION = '47' unicode_data = {} unicode_baseurl = 'https://www.unicode.org/Public/@0@/ucd/@1@'; @@ -22,9 +23,9 @@ foreach f : ['CompositionExclusions.txt', 'CaseFolding.txt', 'DerivedCorePropert endforeach -update_unicode_targets = [] +update_unicode_common_targets = [] -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_case_table.h', input: [unicode_data['CaseFolding.txt'], unicode_data['SpecialCasing.txt'], unicode_data['UnicodeData.txt']], output: ['unicode_case_table.h'], @@ -34,7 +35,7 @@ update_unicode_targets += \ build_by_default: false, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_category_table.h', input: [unicode_data['UnicodeData.txt'], unicode_data['DerivedCoreProperties.txt'], unicode_data['PropList.txt']], output: ['unicode_category_table.h'], @@ -44,7 +45,7 @@ update_unicode_targets += \ build_by_default: false, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_east_asian_fw_table.h', input: [unicode_data['EastAsianWidth.txt']], output: ['unicode_east_asian_fw_table.h'], @@ -53,7 +54,7 @@ update_unicode_targets += \ capture: true, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_nonspacing_table.h', input: [unicode_data['UnicodeData.txt']], output: ['unicode_nonspacing_table.h'], @@ -63,7 +64,7 @@ update_unicode_targets += \ capture: true, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_norm_table.h', input: [unicode_data['UnicodeData.txt'], unicode_data['CompositionExclusions.txt']], output: ['unicode_norm_table.h', 'unicode_norm_hashfunc.h'], @@ -74,7 +75,7 @@ update_unicode_targets += \ build_by_default: false, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_normprops_table.h', input: [unicode_data['DerivedNormalizationProps.txt']], output: ['unicode_normprops_table.h'], @@ -84,7 +85,7 @@ update_unicode_targets += \ capture: true, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_version.h', output: ['unicode_version.h'], command: [ @@ -140,7 +141,7 @@ update_unicode_dep = [] if not meson.is_cross_build() update_unicode_dep += custom_target('case_test.run', output: 'case_test.run', - input: update_unicode_targets, + input: update_unicode_common_targets, command: [case_test, UNICODE_VERSION], build_by_default: false, build_always_stale: true, @@ -150,7 +151,7 @@ endif if not meson.is_cross_build() update_unicode_dep += custom_target('category_test.run', output: 'category_test.run', - input: update_unicode_targets, + input: update_unicode_common_targets, command: [category_test, UNICODE_VERSION], build_by_default: false, build_always_stale: true, @@ -160,7 +161,7 @@ endif if not meson.is_cross_build() update_unicode_dep += custom_target('norm_test.run', output: 'norm_test.run', - input: update_unicode_targets, + input: update_unicode_common_targets, command: [norm_test], build_by_default: false, build_always_stale: true, @@ -170,13 +171,13 @@ endif # Use a custom target, as run targets serialize the output, making this harder # to debug, and don't deal well with targets with multiple outputs. -update_unicode = custom_target('update-unicode', +update_unicode_common = custom_target('update-unicode', depends: update_unicode_dep, output: ['dont-exist'], - input: update_unicode_targets, + input: update_unicode_common_targets, command: [cp, '@INPUT@', '@SOURCE_ROOT@/src/include/common/'], build_by_default: false, build_always_stale: true, ) -alias_target('update-unicode', update_unicode) +update_unicode_targets += update_unicode_common -- 2.53.0 From 20d5a665f72b3ddde8bfdf06b94d218da0dc2d09 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 11:38:16 +0100 Subject: [PATCH 4/6] Update RELEASE_CHANGES The existing instructions did not cover meson. Point to src/common/unicode/README instead, where there is more information. --- src/tools/RELEASE_CHANGES | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/tools/RELEASE_CHANGES b/src/tools/RELEASE_CHANGES index a7c20855d54..f0d005a6141 100644 --- a/src/tools/RELEASE_CHANGES +++ b/src/tools/RELEASE_CHANGES @@ -84,8 +84,7 @@ but there may be reasons to do them at other times as well. * Update config.guess and config.sub (from https://savannah.gnu.org/projects/config) -* Update Unicode data: Edit UNICODE_VERSION and CLDR_VERSION in - src/Makefile.global.in, run make update-unicode, and commit. +* Update Unicode data (see src/common/unicode/README) Starting a New Development Cycle -- 2.53.0 From 868e269b518daf0d3d288e2e379d5fd3ad215f49 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 10:25:48 +0100 Subject: [PATCH 5/6] Update Unicode data to CLDR 48.1 No actual changes result. XXX should change that to CLDR 49 in April --- src/Makefile.global.in | 2 +- src/common/unicode/meson.build | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Makefile.global.in b/src/Makefile.global.in index 947a2d79e29..7d65e428607 100644 --- a/src/Makefile.global.in +++ b/src/Makefile.global.in @@ -379,7 +379,7 @@ DOWNLOAD = wget -O $@ --no-use-server-timestamps UNICODE_VERSION = 16.0.0 # Pick a release from here: <http://cldr.unicode.org/index/downloads; -CLDR_VERSION = 47 +CLDR_VERSION = 48.1 # Tree-wide build support diff --git a/src/common/unicode/meson.build b/src/common/unicode/meson.build index 94d02f0070d..c003fa4219e 100644 --- a/src/common/unicode/meson.build +++ b/src/common/unicode/meson.build @@ -1,7 +1,7 @@ # Copyright (c) 2022-2026, PostgreSQL Global Development Group UNICODE_VERSION = '16.0.0' -CLDR_VERSION = '47' +CLDR_VERSION = '48.1' unicode_data = {} unicode_baseurl = 'https://www.unicode.org/Public/@0@/ucd/@1@'; -- 2.53.0 From dd4b5ced419b319c24fa0928180e54d7317e1690 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 11:38:51 +0100 Subject: [PATCH 6/6] Update Unicode data to Unicode 17.0.0 --- contrib/unaccent/unaccent.rules | 1 + src/Makefile.global.in | 2 +- src/common/unicode/meson.build | 2 +- src/include/common/unicode_case_table.h | 1528 ++++--- src/include/common/unicode_category_table.h | 194 +- .../common/unicode_east_asian_fw_table.h | 21 +- src/include/common/unicode_nonspacing_table.h | 9 +- src/include/common/unicode_norm_hashfunc.h | 4039 +++++++++-------- src/include/common/unicode_norm_table.h | 37 +- src/include/common/unicode_normprops_table.h | 1873 ++++---- src/include/common/unicode_version.h | 2 +- 11 files changed, 4034 insertions(+), 3674 deletions(-) diff --git a/contrib/unaccent/unaccent.rules b/contrib/unaccent/unaccent.rules index 35fd246b71f..271c7cdadd9 100644 --- a/contrib/unaccent/unaccent.rules +++ b/contrib/unaccent/unaccent.rules @@ -1565,6 +1565,7 @@ Ꞩ S ꞩ s Ɦ H + S ꟲ C ꟳ F ꟴ Q diff --git a/src/Makefile.global.in b/src/Makefile.global.in index 7d65e428607..b99116a9ef8 100644 --- a/src/Makefile.global.in +++ b/src/Makefile.global.in @@ -376,7 +376,7 @@ DOWNLOAD = wget -O $@ --no-use-server-timestamps # Pick a release from here: <https://www.unicode.org/Public/;. Note # that the most recent release listed there is often a pre-release; # don't pick that one, except for testing. -UNICODE_VERSION = 16.0.0 +UNICODE_VERSION = 17.0.0 # Pick a release from here: <http://cldr.unicode.org/index/downloads; CLDR_VERSION = 48.1 diff --git a/src/common/unicode/meson.build b/src/common/unicode/meson.build index c003fa4219e..685f5a8b4ff 100644 --- a/src/common/unicode/meson.build +++ b/src/common/unicode/meson.build @@ -1,6 +1,6 @@ # Copyright (c) 2022-2026, PostgreSQL Global Development Group -UNICODE_VERSION = '16.0.0' +UNICODE_VERSION = '17.0.0' CLDR_VERSION = '48.1' unicode_data = {} diff --git a/src/include/common/unicode_case_table.h b/src/include/common/unicode_case_table.h index 130e7f38d25..b2274627c4f 100644 --- a/src/include/common/unicode_case_table.h +++ b/src/include/common/unicode_case_table.h @@ -165,7 +165,7 @@ static const pg_special_case special_case[106] = * The entry case_map_lower[case_index(codepoint)] is the mapping for the * given codepoint. */ -static const char32_t case_map_lower[1704] = +static const char32_t case_map_lower[1732] = { 0x000000, /* reserved */ 0x000000, /* U+000000 */ @@ -1546,7 +1546,10 @@ static const char32_t case_map_lower[1704] = 0x00a7c8, /* U+00a7c7 */ 0x00a7ca, /* U+00a7c9 */ 0x00a7cd, /* U+00a7cc */ + 0x00a7cf, /* U+00a7ce */ 0x00a7d1, /* U+00a7d0 */ + 0x00a7d3, /* U+00a7d2 */ + 0x00a7d5, /* U+00a7d4 */ 0x00a7d7, /* U+00a7d6 */ 0x00a7d9, /* U+00a7d8 */ 0x00a7db, /* U+00a7da */ @@ -1837,6 +1840,31 @@ static const char32_t case_map_lower[1704] = 0x016e7d, /* U+016e5d */ 0x016e7e, /* U+016e5e */ 0x016e7f, /* U+016e5f */ + 0x016ebb, /* U+016ea0 */ + 0x016ebc, /* U+016ea1 */ + 0x016ebd, /* U+016ea2 */ + 0x016ebe, /* U+016ea3 */ + 0x016ebf, /* U+016ea4 */ + 0x016ec0, /* U+016ea5 */ + 0x016ec1, /* U+016ea6 */ + 0x016ec2, /* U+016ea7 */ + 0x016ec3, /* U+016ea8 */ + 0x016ec4, /* U+016ea9 */ + 0x016ec5, /* U+016eaa */ + 0x016ec6, /* U+016eab */ + 0x016ec7, /* U+016eac */ + 0x016ec8, /* U+016ead */ + 0x016ec9, /* U+016eae */ + 0x016eca, /* U+016eaf */ + 0x016ecb, /* U+016eb0 */ + 0x016ecc, /* U+016eb1 */ + 0x016ecd, /* U+016eb2 */ + 0x016ece, /* U+016eb3 */ + 0x016ecf, /* U+016eb4 */ + 0x016ed0, /* U+016eb5 */ + 0x016ed1, /* U+016eb6 */ + 0x016ed2, /* U+016eb7 */ + 0x016ed3, /* U+016eb8 */ 0x01e922, /* U+01e900 */ 0x01e923, /* U+01e901 */ 0x01e924, /* U+01e902 */ @@ -1878,7 +1906,7 @@ static const char32_t case_map_lower[1704] = * The entry case_map_title[case_index(codepoint)] is the mapping for the * given codepoint. */ -static const char32_t case_map_title[1704] = +static const char32_t case_map_title[1732] = { 0x000000, /* reserved */ 0x000000, /* U+000000 */ @@ -3259,7 +3287,10 @@ static const char32_t case_map_title[1704] = 0x00a7c7, /* U+00a7c7 */ 0x00a7c9, /* U+00a7c9 */ 0x00a7cc, /* U+00a7cc */ + 0x00a7ce, /* U+00a7ce */ 0x00a7d0, /* U+00a7d0 */ + 0x00a7d2, /* U+00a7d2 */ + 0x00a7d4, /* U+00a7d4 */ 0x00a7d6, /* U+00a7d6 */ 0x00a7d8, /* U+00a7d8 */ 0x00a7da, /* U+00a7da */ @@ -3550,6 +3581,31 @@ static const char32_t case_map_title[1704] = 0x016e5d, /* U+016e5d */ 0x016e5e, /* U+016e5e */ 0x016e5f, /* U+016e5f */ + 0x016ea0, /* U+016ea0 */ + 0x016ea1, /* U+016ea1 */ + 0x016ea2, /* U+016ea2 */ + 0x016ea3, /* U+016ea3 */ + 0x016ea4, /* U+016ea4 */ + 0x016ea5, /* U+016ea5 */ + 0x016ea6, /* U+016ea6 */ + 0x016ea7, /* U+016ea7 */ + 0x016ea8, /* U+016ea8 */ + 0x016ea9, /* U+016ea9 */ + 0x016eaa, /* U+016eaa */ + 0x016eab, /* U+016eab */ + 0x016eac, /* U+016eac */ + 0x016ead, /* U+016ead */ + 0x016eae, /* U+016eae */ + 0x016eaf, /* U+016eaf */ + 0x016eb0, /* U+016eb0 */ + 0x016eb1, /* U+016eb1 */ + 0x016eb2, /* U+016eb2 */ + 0x016eb3, /* U+016eb3 */ + 0x016eb4, /* U+016eb4 */ + 0x016eb5, /* U+016eb5 */ + 0x016eb6, /* U+016eb6 */ + 0x016eb7, /* U+016eb7 */ + 0x016eb8, /* U+016eb8 */ 0x01e900, /* U+01e900 */ 0x01e901, /* U+01e901 */ 0x01e902, /* U+01e902 */ @@ -3591,7 +3647,7 @@ static const char32_t case_map_title[1704] = * The entry case_map_upper[case_index(codepoint)] is the mapping for the * given codepoint. */ -static const char32_t case_map_upper[1704] = +static const char32_t case_map_upper[1732] = { 0x000000, /* reserved */ 0x000000, /* U+000000 */ @@ -4972,7 +5028,10 @@ static const char32_t case_map_upper[1704] = 0x00a7c7, /* U+00a7c7 */ 0x00a7c9, /* U+00a7c9 */ 0x00a7cc, /* U+00a7cc */ + 0x00a7ce, /* U+00a7ce */ 0x00a7d0, /* U+00a7d0 */ + 0x00a7d2, /* U+00a7d2 */ + 0x00a7d4, /* U+00a7d4 */ 0x00a7d6, /* U+00a7d6 */ 0x00a7d8, /* U+00a7d8 */ 0x00a7da, /* U+00a7da */ @@ -5263,6 +5322,31 @@ static const char32_t case_map_upper[1704] = 0x016e5d, /* U+016e5d */ 0x016e5e, /* U+016e5e */ 0x016e5f, /* U+016e5f */ + 0x016ea0, /* U+016ea0 */ + 0x016ea1, /* U+016ea1 */ + 0x016ea2, /* U+016ea2 */ + 0x016ea3, /* U+016ea3 */ + 0x016ea4, /* U+016ea4 */ + 0x016ea5, /* U+016ea5 */ + 0x016ea6, /* U+016ea6 */ + 0x016ea7, /* U+016ea7 */ + 0x016ea8, /* U+016ea8 */ + 0x016ea9, /* U+016ea9 */ + 0x016eaa, /* U+016eaa */ + 0x016eab, /* U+016eab */ + 0x016eac, /* U+016eac */ + 0x016ead, /* U+016ead */ + 0x016eae, /* U+016eae */ + 0x016eaf, /* U+016eaf */ + 0x016eb0, /* U+016eb0 */ + 0x016eb1, /* U+016eb1 */ + 0x016eb2, /* U+016eb2 */ + 0x016eb3, /* U+016eb3 */ + 0x016eb4, /* U+016eb4 */ + 0x016eb5, /* U+016eb5 */ + 0x016eb6, /* U+016eb6 */ + 0x016eb7, /* U+016eb7 */ + 0x016eb8, /* U+016eb8 */ 0x01e900, /* U+01e900 */ 0x01e901, /* U+01e901 */ 0x01e902, /* U+01e902 */ @@ -5304,7 +5388,7 @@ static const char32_t case_map_upper[1704] = * The entry case_map_fold[case_index(codepoint)] is the mapping for the * given codepoint. */ -static const char32_t case_map_fold[1704] = +static const char32_t case_map_fold[1732] = { 0x000000, /* reserved */ 0x000000, /* U+000000 */ @@ -6685,7 +6769,10 @@ static const char32_t case_map_fold[1704] = 0x00a7c8, /* U+00a7c7 */ 0x00a7ca, /* U+00a7c9 */ 0x00a7cd, /* U+00a7cc */ + 0x00a7cf, /* U+00a7ce */ 0x00a7d1, /* U+00a7d0 */ + 0x00a7d3, /* U+00a7d2 */ + 0x00a7d5, /* U+00a7d4 */ 0x00a7d7, /* U+00a7d6 */ 0x00a7d9, /* U+00a7d8 */ 0x00a7db, /* U+00a7da */ @@ -6976,6 +7063,31 @@ static const char32_t case_map_fold[1704] = 0x016e7d, /* U+016e5d */ 0x016e7e, /* U+016e5e */ 0x016e7f, /* U+016e5f */ + 0x016ebb, /* U+016ea0 */ + 0x016ebc, /* U+016ea1 */ + 0x016ebd, /* U+016ea2 */ + 0x016ebe, /* U+016ea3 */ + 0x016ebf, /* U+016ea4 */ + 0x016ec0, /* U+016ea5 */ + 0x016ec1, /* U+016ea6 */ + 0x016ec2, /* U+016ea7 */ + 0x016ec3, /* U+016ea8 */ + 0x016ec4, /* U+016ea9 */ + 0x016ec5, /* U+016eaa */ + 0x016ec6, /* U+016eab */ + 0x016ec7, /* U+016eac */ + 0x016ec8, /* U+016ead */ + 0x016ec9, /* U+016eae */ + 0x016eca, /* U+016eaf */ + 0x016ecb, /* U+016eb0 */ + 0x016ecc, /* U+016eb1 */ + 0x016ecd, /* U+016eb2 */ + 0x016ece, /* U+016eb3 */ + 0x016ecf, /* U+016eb4 */ + 0x016ed0, /* U+016eb5 */ + 0x016ed1, /* U+016eb6 */ + 0x016ed2, /* U+016eb7 */ + 0x016ed3, /* U+016eb8 */ 0x01e922, /* U+01e900 */ 0x01e923, /* U+01e901 */ 0x01e924, /* U+01e902 */ @@ -7017,7 +7129,7 @@ static const char32_t case_map_fold[1704] = * The entry case_map_special[case_index(codepoint)] is the index in * special_case for that codepoint, or 0 if no special case mapping exists. */ -static const uint8 case_map_special[1704] = +static const uint8 case_map_special[1732] = { 0, /* reserved */ 0, /* U+000000 */ @@ -8398,7 +8510,10 @@ static const uint8 case_map_special[1704] = 0, /* U+00a7c7 */ 0, /* U+00a7c9 */ 0, /* U+00a7cc */ + 0, /* U+00a7ce */ 0, /* U+00a7d0 */ + 0, /* U+00a7d2 */ + 0, /* U+00a7d4 */ 0, /* U+00a7d6 */ 0, /* U+00a7d8 */ 0, /* U+00a7da */ @@ -8689,6 +8804,31 @@ static const uint8 case_map_special[1704] = 0, /* U+016e5d */ 0, /* U+016e5e */ 0, /* U+016e5f */ + 0, /* U+016ea0 */ + 0, /* U+016ea1 */ + 0, /* U+016ea2 */ + 0, /* U+016ea3 */ + 0, /* U+016ea4 */ + 0, /* U+016ea5 */ + 0, /* U+016ea6 */ + 0, /* U+016ea7 */ + 0, /* U+016ea8 */ + 0, /* U+016ea9 */ + 0, /* U+016eaa */ + 0, /* U+016eab */ + 0, /* U+016eac */ + 0, /* U+016ead */ + 0, /* U+016eae */ + 0, /* U+016eaf */ + 0, /* U+016eb0 */ + 0, /* U+016eb1 */ + 0, /* U+016eb2 */ + 0, /* U+016eb3 */ + 0, /* U+016eb4 */ + 0, /* U+016eb5 */ + 0, /* U+016eb6 */ + 0, /* U+016eb7 */ + 0, /* U+016eb8 */ 0, /* U+01e900 */ 0, /* U+01e901 */ 0, /* U+01e902 */ @@ -8731,7 +8871,7 @@ static const uint8 case_map_special[1704] = * of the following arrays: case_map_lower, case_map_title, case_map_upper, * case_map_fold. */ -static const uint16 case_map[4778] = +static const uint16 case_map[4862] = { 1, /* U+000000 */ 2, /* U+000001 */ @@ -12376,20 +12516,20 @@ static const uint16 case_map[4778] = 339, /* U+00A7CB */ 1378, /* U+00A7CC */ 1378, /* U+00A7CD */ - 0, /* U+00A7CE */ - 0, /* U+00A7CF */ - 1379, /* U+00A7D0 */ - 1379, /* U+00A7D1 */ - 0, /* U+00A7D2 */ - 0, /* U+00A7D3 */ - 0, /* U+00A7D4 */ - 0, /* U+00A7D5 */ - 1380, /* U+00A7D6 */ - 1380, /* U+00A7D7 */ - 1381, /* U+00A7D8 */ - 1381, /* U+00A7D9 */ - 1382, /* U+00A7DA */ - 1382, /* U+00A7DB */ + 1379, /* U+00A7CE */ + 1379, /* U+00A7CF */ + 1380, /* U+00A7D0 */ + 1380, /* U+00A7D1 */ + 1381, /* U+00A7D2 */ + 1381, /* U+00A7D3 */ + 1382, /* U+00A7D4 */ + 1382, /* U+00A7D5 */ + 1383, /* U+00A7D6 */ + 1383, /* U+00A7D7 */ + 1384, /* U+00A7D8 */ + 1384, /* U+00A7D9 */ + 1385, /* U+00A7DA */ + 1385, /* U+00A7DB */ 247, /* U+00A7DC */ 0, /* U+00A7DD */ 0, /* U+00A7DE */ @@ -12415,8 +12555,8 @@ static const uint16 case_map[4778] = 0, /* U+00A7F2 */ 0, /* U+00A7F3 */ 0, /* U+00A7F4 */ - 1383, /* U+00A7F5 */ - 1383, /* U+00A7F6 */ + 1386, /* U+00A7F5 */ + 1386, /* U+00A7F6 */ 1367, /* U+00AB53 */ 0, /* U+00AB54 */ 0, /* U+00AB55 */ @@ -12526,13 +12666,13 @@ static const uint16 case_map[4778] = 770, /* U+00ABBD */ 771, /* U+00ABBE */ 772, /* U+00ABBF */ - 1384, /* U+00FB00 */ - 1385, /* U+00FB01 */ - 1386, /* U+00FB02 */ - 1387, /* U+00FB03 */ - 1388, /* U+00FB04 */ - 1389, /* U+00FB05 */ - 1390, /* U+00FB06 */ + 1387, /* U+00FB00 */ + 1388, /* U+00FB01 */ + 1389, /* U+00FB02 */ + 1390, /* U+00FB03 */ + 1391, /* U+00FB04 */ + 1392, /* U+00FB05 */ + 1393, /* U+00FB06 */ 0, /* U+00FB07 */ 0, /* U+00FB08 */ 0, /* U+00FB09 */ @@ -12545,149 +12685,149 @@ static const uint16 case_map[4778] = 0, /* U+00FB10 */ 0, /* U+00FB11 */ 0, /* U+00FB12 */ - 1391, /* U+00FB13 */ - 1392, /* U+00FB14 */ - 1393, /* U+00FB15 */ - 1394, /* U+00FB16 */ - 1395, /* U+00FB17 */ - 1396, /* U+00FF21 */ - 1397, /* U+00FF22 */ - 1398, /* U+00FF23 */ - 1399, /* U+00FF24 */ - 1400, /* U+00FF25 */ - 1401, /* U+00FF26 */ - 1402, /* U+00FF27 */ - 1403, /* U+00FF28 */ - 1404, /* U+00FF29 */ - 1405, /* U+00FF2A */ - 1406, /* U+00FF2B */ - 1407, /* U+00FF2C */ - 1408, /* U+00FF2D */ - 1409, /* U+00FF2E */ - 1410, /* U+00FF2F */ - 1411, /* U+00FF30 */ - 1412, /* U+00FF31 */ - 1413, /* U+00FF32 */ - 1414, /* U+00FF33 */ - 1415, /* U+00FF34 */ - 1416, /* U+00FF35 */ - 1417, /* U+00FF36 */ - 1418, /* U+00FF37 */ - 1419, /* U+00FF38 */ - 1420, /* U+00FF39 */ - 1421, /* U+00FF3A */ + 1394, /* U+00FB13 */ + 1395, /* U+00FB14 */ + 1396, /* U+00FB15 */ + 1397, /* U+00FB16 */ + 1398, /* U+00FB17 */ + 1399, /* U+00FF21 */ + 1400, /* U+00FF22 */ + 1401, /* U+00FF23 */ + 1402, /* U+00FF24 */ + 1403, /* U+00FF25 */ + 1404, /* U+00FF26 */ + 1405, /* U+00FF27 */ + 1406, /* U+00FF28 */ + 1407, /* U+00FF29 */ + 1408, /* U+00FF2A */ + 1409, /* U+00FF2B */ + 1410, /* U+00FF2C */ + 1411, /* U+00FF2D */ + 1412, /* U+00FF2E */ + 1413, /* U+00FF2F */ + 1414, /* U+00FF30 */ + 1415, /* U+00FF31 */ + 1416, /* U+00FF32 */ + 1417, /* U+00FF33 */ + 1418, /* U+00FF34 */ + 1419, /* U+00FF35 */ + 1420, /* U+00FF36 */ + 1421, /* U+00FF37 */ + 1422, /* U+00FF38 */ + 1423, /* U+00FF39 */ + 1424, /* U+00FF3A */ 0, /* U+00FF3B */ 0, /* U+00FF3C */ 0, /* U+00FF3D */ 0, /* U+00FF3E */ 0, /* U+00FF3F */ 0, /* U+00FF40 */ - 1396, /* U+00FF41 */ - 1397, /* U+00FF42 */ - 1398, /* U+00FF43 */ - 1399, /* U+00FF44 */ - 1400, /* U+00FF45 */ - 1401, /* U+00FF46 */ - 1402, /* U+00FF47 */ - 1403, /* U+00FF48 */ - 1404, /* U+00FF49 */ - 1405, /* U+00FF4A */ - 1406, /* U+00FF4B */ - 1407, /* U+00FF4C */ - 1408, /* U+00FF4D */ - 1409, /* U+00FF4E */ - 1410, /* U+00FF4F */ - 1411, /* U+00FF50 */ - 1412, /* U+00FF51 */ - 1413, /* U+00FF52 */ - 1414, /* U+00FF53 */ - 1415, /* U+00FF54 */ - 1416, /* U+00FF55 */ - 1417, /* U+00FF56 */ - 1418, /* U+00FF57 */ - 1419, /* U+00FF58 */ - 1420, /* U+00FF59 */ - 1421, /* U+00FF5A */ - 1422, /* U+010400 */ - 1423, /* U+010401 */ - 1424, /* U+010402 */ - 1425, /* U+010403 */ - 1426, /* U+010404 */ - 1427, /* U+010405 */ - 1428, /* U+010406 */ - 1429, /* U+010407 */ - 1430, /* U+010408 */ - 1431, /* U+010409 */ - 1432, /* U+01040A */ - 1433, /* U+01040B */ - 1434, /* U+01040C */ - 1435, /* U+01040D */ - 1436, /* U+01040E */ - 1437, /* U+01040F */ - 1438, /* U+010410 */ - 1439, /* U+010411 */ - 1440, /* U+010412 */ - 1441, /* U+010413 */ - 1442, /* U+010414 */ - 1443, /* U+010415 */ - 1444, /* U+010416 */ - 1445, /* U+010417 */ - 1446, /* U+010418 */ - 1447, /* U+010419 */ - 1448, /* U+01041A */ - 1449, /* U+01041B */ - 1450, /* U+01041C */ - 1451, /* U+01041D */ - 1452, /* U+01041E */ - 1453, /* U+01041F */ - 1454, /* U+010420 */ - 1455, /* U+010421 */ - 1456, /* U+010422 */ - 1457, /* U+010423 */ - 1458, /* U+010424 */ - 1459, /* U+010425 */ - 1460, /* U+010426 */ - 1461, /* U+010427 */ - 1422, /* U+010428 */ - 1423, /* U+010429 */ - 1424, /* U+01042A */ - 1425, /* U+01042B */ - 1426, /* U+01042C */ - 1427, /* U+01042D */ - 1428, /* U+01042E */ - 1429, /* U+01042F */ - 1430, /* U+010430 */ - 1431, /* U+010431 */ - 1432, /* U+010432 */ - 1433, /* U+010433 */ - 1434, /* U+010434 */ - 1435, /* U+010435 */ - 1436, /* U+010436 */ - 1437, /* U+010437 */ - 1438, /* U+010438 */ - 1439, /* U+010439 */ - 1440, /* U+01043A */ - 1441, /* U+01043B */ - 1442, /* U+01043C */ - 1443, /* U+01043D */ - 1444, /* U+01043E */ - 1445, /* U+01043F */ - 1446, /* U+010440 */ - 1447, /* U+010441 */ - 1448, /* U+010442 */ - 1449, /* U+010443 */ - 1450, /* U+010444 */ - 1451, /* U+010445 */ - 1452, /* U+010446 */ - 1453, /* U+010447 */ - 1454, /* U+010448 */ - 1455, /* U+010449 */ - 1456, /* U+01044A */ - 1457, /* U+01044B */ - 1458, /* U+01044C */ - 1459, /* U+01044D */ - 1460, /* U+01044E */ - 1461, /* U+01044F */ + 1399, /* U+00FF41 */ + 1400, /* U+00FF42 */ + 1401, /* U+00FF43 */ + 1402, /* U+00FF44 */ + 1403, /* U+00FF45 */ + 1404, /* U+00FF46 */ + 1405, /* U+00FF47 */ + 1406, /* U+00FF48 */ + 1407, /* U+00FF49 */ + 1408, /* U+00FF4A */ + 1409, /* U+00FF4B */ + 1410, /* U+00FF4C */ + 1411, /* U+00FF4D */ + 1412, /* U+00FF4E */ + 1413, /* U+00FF4F */ + 1414, /* U+00FF50 */ + 1415, /* U+00FF51 */ + 1416, /* U+00FF52 */ + 1417, /* U+00FF53 */ + 1418, /* U+00FF54 */ + 1419, /* U+00FF55 */ + 1420, /* U+00FF56 */ + 1421, /* U+00FF57 */ + 1422, /* U+00FF58 */ + 1423, /* U+00FF59 */ + 1424, /* U+00FF5A */ + 1425, /* U+010400 */ + 1426, /* U+010401 */ + 1427, /* U+010402 */ + 1428, /* U+010403 */ + 1429, /* U+010404 */ + 1430, /* U+010405 */ + 1431, /* U+010406 */ + 1432, /* U+010407 */ + 1433, /* U+010408 */ + 1434, /* U+010409 */ + 1435, /* U+01040A */ + 1436, /* U+01040B */ + 1437, /* U+01040C */ + 1438, /* U+01040D */ + 1439, /* U+01040E */ + 1440, /* U+01040F */ + 1441, /* U+010410 */ + 1442, /* U+010411 */ + 1443, /* U+010412 */ + 1444, /* U+010413 */ + 1445, /* U+010414 */ + 1446, /* U+010415 */ + 1447, /* U+010416 */ + 1448, /* U+010417 */ + 1449, /* U+010418 */ + 1450, /* U+010419 */ + 1451, /* U+01041A */ + 1452, /* U+01041B */ + 1453, /* U+01041C */ + 1454, /* U+01041D */ + 1455, /* U+01041E */ + 1456, /* U+01041F */ + 1457, /* U+010420 */ + 1458, /* U+010421 */ + 1459, /* U+010422 */ + 1460, /* U+010423 */ + 1461, /* U+010424 */ + 1462, /* U+010425 */ + 1463, /* U+010426 */ + 1464, /* U+010427 */ + 1425, /* U+010428 */ + 1426, /* U+010429 */ + 1427, /* U+01042A */ + 1428, /* U+01042B */ + 1429, /* U+01042C */ + 1430, /* U+01042D */ + 1431, /* U+01042E */ + 1432, /* U+01042F */ + 1433, /* U+010430 */ + 1434, /* U+010431 */ + 1435, /* U+010432 */ + 1436, /* U+010433 */ + 1437, /* U+010434 */ + 1438, /* U+010435 */ + 1439, /* U+010436 */ + 1440, /* U+010437 */ + 1441, /* U+010438 */ + 1442, /* U+010439 */ + 1443, /* U+01043A */ + 1444, /* U+01043B */ + 1445, /* U+01043C */ + 1446, /* U+01043D */ + 1447, /* U+01043E */ + 1448, /* U+01043F */ + 1449, /* U+010440 */ + 1450, /* U+010441 */ + 1451, /* U+010442 */ + 1452, /* U+010443 */ + 1453, /* U+010444 */ + 1454, /* U+010445 */ + 1455, /* U+010446 */ + 1456, /* U+010447 */ + 1457, /* U+010448 */ + 1458, /* U+010449 */ + 1459, /* U+01044A */ + 1460, /* U+01044B */ + 1461, /* U+01044C */ + 1462, /* U+01044D */ + 1463, /* U+01044E */ + 1464, /* U+01044F */ 0, /* U+010450 */ 0, /* U+010451 */ 0, /* U+010452 */ @@ -12784,82 +12924,82 @@ static const uint16 case_map[4778] = 0, /* U+0104AD */ 0, /* U+0104AE */ 0, /* U+0104AF */ - 1462, /* U+0104B0 */ - 1463, /* U+0104B1 */ - 1464, /* U+0104B2 */ - 1465, /* U+0104B3 */ - 1466, /* U+0104B4 */ - 1467, /* U+0104B5 */ - 1468, /* U+0104B6 */ - 1469, /* U+0104B7 */ - 1470, /* U+0104B8 */ - 1471, /* U+0104B9 */ - 1472, /* U+0104BA */ - 1473, /* U+0104BB */ - 1474, /* U+0104BC */ - 1475, /* U+0104BD */ - 1476, /* U+0104BE */ - 1477, /* U+0104BF */ - 1478, /* U+0104C0 */ - 1479, /* U+0104C1 */ - 1480, /* U+0104C2 */ - 1481, /* U+0104C3 */ - 1482, /* U+0104C4 */ - 1483, /* U+0104C5 */ - 1484, /* U+0104C6 */ - 1485, /* U+0104C7 */ - 1486, /* U+0104C8 */ - 1487, /* U+0104C9 */ - 1488, /* U+0104CA */ - 1489, /* U+0104CB */ - 1490, /* U+0104CC */ - 1491, /* U+0104CD */ - 1492, /* U+0104CE */ - 1493, /* U+0104CF */ - 1494, /* U+0104D0 */ - 1495, /* U+0104D1 */ - 1496, /* U+0104D2 */ - 1497, /* U+0104D3 */ + 1465, /* U+0104B0 */ + 1466, /* U+0104B1 */ + 1467, /* U+0104B2 */ + 1468, /* U+0104B3 */ + 1469, /* U+0104B4 */ + 1470, /* U+0104B5 */ + 1471, /* U+0104B6 */ + 1472, /* U+0104B7 */ + 1473, /* U+0104B8 */ + 1474, /* U+0104B9 */ + 1475, /* U+0104BA */ + 1476, /* U+0104BB */ + 1477, /* U+0104BC */ + 1478, /* U+0104BD */ + 1479, /* U+0104BE */ + 1480, /* U+0104BF */ + 1481, /* U+0104C0 */ + 1482, /* U+0104C1 */ + 1483, /* U+0104C2 */ + 1484, /* U+0104C3 */ + 1485, /* U+0104C4 */ + 1486, /* U+0104C5 */ + 1487, /* U+0104C6 */ + 1488, /* U+0104C7 */ + 1489, /* U+0104C8 */ + 1490, /* U+0104C9 */ + 1491, /* U+0104CA */ + 1492, /* U+0104CB */ + 1493, /* U+0104CC */ + 1494, /* U+0104CD */ + 1495, /* U+0104CE */ + 1496, /* U+0104CF */ + 1497, /* U+0104D0 */ + 1498, /* U+0104D1 */ + 1499, /* U+0104D2 */ + 1500, /* U+0104D3 */ 0, /* U+0104D4 */ 0, /* U+0104D5 */ 0, /* U+0104D6 */ 0, /* U+0104D7 */ - 1462, /* U+0104D8 */ - 1463, /* U+0104D9 */ - 1464, /* U+0104DA */ - 1465, /* U+0104DB */ - 1466, /* U+0104DC */ - 1467, /* U+0104DD */ - 1468, /* U+0104DE */ - 1469, /* U+0104DF */ - 1470, /* U+0104E0 */ - 1471, /* U+0104E1 */ - 1472, /* U+0104E2 */ - 1473, /* U+0104E3 */ - 1474, /* U+0104E4 */ - 1475, /* U+0104E5 */ - 1476, /* U+0104E6 */ - 1477, /* U+0104E7 */ - 1478, /* U+0104E8 */ - 1479, /* U+0104E9 */ - 1480, /* U+0104EA */ - 1481, /* U+0104EB */ - 1482, /* U+0104EC */ - 1483, /* U+0104ED */ - 1484, /* U+0104EE */ - 1485, /* U+0104EF */ - 1486, /* U+0104F0 */ - 1487, /* U+0104F1 */ - 1488, /* U+0104F2 */ - 1489, /* U+0104F3 */ - 1490, /* U+0104F4 */ - 1491, /* U+0104F5 */ - 1492, /* U+0104F6 */ - 1493, /* U+0104F7 */ - 1494, /* U+0104F8 */ - 1495, /* U+0104F9 */ - 1496, /* U+0104FA */ - 1497, /* U+0104FB */ + 1465, /* U+0104D8 */ + 1466, /* U+0104D9 */ + 1467, /* U+0104DA */ + 1468, /* U+0104DB */ + 1469, /* U+0104DC */ + 1470, /* U+0104DD */ + 1471, /* U+0104DE */ + 1472, /* U+0104DF */ + 1473, /* U+0104E0 */ + 1474, /* U+0104E1 */ + 1475, /* U+0104E2 */ + 1476, /* U+0104E3 */ + 1477, /* U+0104E4 */ + 1478, /* U+0104E5 */ + 1479, /* U+0104E6 */ + 1480, /* U+0104E7 */ + 1481, /* U+0104E8 */ + 1482, /* U+0104E9 */ + 1483, /* U+0104EA */ + 1484, /* U+0104EB */ + 1485, /* U+0104EC */ + 1486, /* U+0104ED */ + 1487, /* U+0104EE */ + 1488, /* U+0104EF */ + 1489, /* U+0104F0 */ + 1490, /* U+0104F1 */ + 1491, /* U+0104F2 */ + 1492, /* U+0104F3 */ + 1493, /* U+0104F4 */ + 1494, /* U+0104F5 */ + 1495, /* U+0104F6 */ + 1496, /* U+0104F7 */ + 1497, /* U+0104F8 */ + 1498, /* U+0104F9 */ + 1499, /* U+0104FA */ + 1500, /* U+0104FB */ 0, /* U+0104FC */ 0, /* U+0104FD */ 0, /* U+0104FE */ @@ -12976,134 +13116,134 @@ static const uint16 case_map[4778] = 0, /* U+01056D */ 0, /* U+01056E */ 0, /* U+01056F */ - 1498, /* U+010570 */ - 1499, /* U+010571 */ - 1500, /* U+010572 */ - 1501, /* U+010573 */ - 1502, /* U+010574 */ - 1503, /* U+010575 */ - 1504, /* U+010576 */ - 1505, /* U+010577 */ - 1506, /* U+010578 */ - 1507, /* U+010579 */ - 1508, /* U+01057A */ + 1501, /* U+010570 */ + 1502, /* U+010571 */ + 1503, /* U+010572 */ + 1504, /* U+010573 */ + 1505, /* U+010574 */ + 1506, /* U+010575 */ + 1507, /* U+010576 */ + 1508, /* U+010577 */ + 1509, /* U+010578 */ + 1510, /* U+010579 */ + 1511, /* U+01057A */ 0, /* U+01057B */ - 1509, /* U+01057C */ - 1510, /* U+01057D */ - 1511, /* U+01057E */ - 1512, /* U+01057F */ - 1513, /* U+010580 */ - 1514, /* U+010581 */ - 1515, /* U+010582 */ - 1516, /* U+010583 */ - 1517, /* U+010584 */ - 1518, /* U+010585 */ - 1519, /* U+010586 */ - 1520, /* U+010587 */ - 1521, /* U+010588 */ - 1522, /* U+010589 */ - 1523, /* U+01058A */ + 1512, /* U+01057C */ + 1513, /* U+01057D */ + 1514, /* U+01057E */ + 1515, /* U+01057F */ + 1516, /* U+010580 */ + 1517, /* U+010581 */ + 1518, /* U+010582 */ + 1519, /* U+010583 */ + 1520, /* U+010584 */ + 1521, /* U+010585 */ + 1522, /* U+010586 */ + 1523, /* U+010587 */ + 1524, /* U+010588 */ + 1525, /* U+010589 */ + 1526, /* U+01058A */ 0, /* U+01058B */ - 1524, /* U+01058C */ - 1525, /* U+01058D */ - 1526, /* U+01058E */ - 1527, /* U+01058F */ - 1528, /* U+010590 */ - 1529, /* U+010591 */ - 1530, /* U+010592 */ + 1527, /* U+01058C */ + 1528, /* U+01058D */ + 1529, /* U+01058E */ + 1530, /* U+01058F */ + 1531, /* U+010590 */ + 1532, /* U+010591 */ + 1533, /* U+010592 */ 0, /* U+010593 */ - 1531, /* U+010594 */ - 1532, /* U+010595 */ + 1534, /* U+010594 */ + 1535, /* U+010595 */ 0, /* U+010596 */ - 1498, /* U+010597 */ - 1499, /* U+010598 */ - 1500, /* U+010599 */ - 1501, /* U+01059A */ - 1502, /* U+01059B */ - 1503, /* U+01059C */ - 1504, /* U+01059D */ - 1505, /* U+01059E */ - 1506, /* U+01059F */ - 1507, /* U+0105A0 */ - 1508, /* U+0105A1 */ + 1501, /* U+010597 */ + 1502, /* U+010598 */ + 1503, /* U+010599 */ + 1504, /* U+01059A */ + 1505, /* U+01059B */ + 1506, /* U+01059C */ + 1507, /* U+01059D */ + 1508, /* U+01059E */ + 1509, /* U+01059F */ + 1510, /* U+0105A0 */ + 1511, /* U+0105A1 */ 0, /* U+0105A2 */ - 1509, /* U+0105A3 */ - 1510, /* U+0105A4 */ - 1511, /* U+0105A5 */ - 1512, /* U+0105A6 */ - 1513, /* U+0105A7 */ - 1514, /* U+0105A8 */ - 1515, /* U+0105A9 */ - 1516, /* U+0105AA */ - 1517, /* U+0105AB */ - 1518, /* U+0105AC */ - 1519, /* U+0105AD */ - 1520, /* U+0105AE */ - 1521, /* U+0105AF */ - 1522, /* U+0105B0 */ - 1523, /* U+0105B1 */ + 1512, /* U+0105A3 */ + 1513, /* U+0105A4 */ + 1514, /* U+0105A5 */ + 1515, /* U+0105A6 */ + 1516, /* U+0105A7 */ + 1517, /* U+0105A8 */ + 1518, /* U+0105A9 */ + 1519, /* U+0105AA */ + 1520, /* U+0105AB */ + 1521, /* U+0105AC */ + 1522, /* U+0105AD */ + 1523, /* U+0105AE */ + 1524, /* U+0105AF */ + 1525, /* U+0105B0 */ + 1526, /* U+0105B1 */ 0, /* U+0105B2 */ - 1524, /* U+0105B3 */ - 1525, /* U+0105B4 */ - 1526, /* U+0105B5 */ - 1527, /* U+0105B6 */ - 1528, /* U+0105B7 */ - 1529, /* U+0105B8 */ - 1530, /* U+0105B9 */ + 1527, /* U+0105B3 */ + 1528, /* U+0105B4 */ + 1529, /* U+0105B5 */ + 1530, /* U+0105B6 */ + 1531, /* U+0105B7 */ + 1532, /* U+0105B8 */ + 1533, /* U+0105B9 */ 0, /* U+0105BA */ - 1531, /* U+0105BB */ - 1532, /* U+0105BC */ - 1533, /* U+010C80 */ - 1534, /* U+010C81 */ - 1535, /* U+010C82 */ - 1536, /* U+010C83 */ - 1537, /* U+010C84 */ - 1538, /* U+010C85 */ - 1539, /* U+010C86 */ - 1540, /* U+010C87 */ - 1541, /* U+010C88 */ - 1542, /* U+010C89 */ - 1543, /* U+010C8A */ - 1544, /* U+010C8B */ - 1545, /* U+010C8C */ - 1546, /* U+010C8D */ - 1547, /* U+010C8E */ - 1548, /* U+010C8F */ - 1549, /* U+010C90 */ - 1550, /* U+010C91 */ - 1551, /* U+010C92 */ - 1552, /* U+010C93 */ - 1553, /* U+010C94 */ - 1554, /* U+010C95 */ - 1555, /* U+010C96 */ - 1556, /* U+010C97 */ - 1557, /* U+010C98 */ - 1558, /* U+010C99 */ - 1559, /* U+010C9A */ - 1560, /* U+010C9B */ - 1561, /* U+010C9C */ - 1562, /* U+010C9D */ - 1563, /* U+010C9E */ - 1564, /* U+010C9F */ - 1565, /* U+010CA0 */ - 1566, /* U+010CA1 */ - 1567, /* U+010CA2 */ - 1568, /* U+010CA3 */ - 1569, /* U+010CA4 */ - 1570, /* U+010CA5 */ - 1571, /* U+010CA6 */ - 1572, /* U+010CA7 */ - 1573, /* U+010CA8 */ - 1574, /* U+010CA9 */ - 1575, /* U+010CAA */ - 1576, /* U+010CAB */ - 1577, /* U+010CAC */ - 1578, /* U+010CAD */ - 1579, /* U+010CAE */ - 1580, /* U+010CAF */ - 1581, /* U+010CB0 */ - 1582, /* U+010CB1 */ - 1583, /* U+010CB2 */ + 1534, /* U+0105BB */ + 1535, /* U+0105BC */ + 1536, /* U+010C80 */ + 1537, /* U+010C81 */ + 1538, /* U+010C82 */ + 1539, /* U+010C83 */ + 1540, /* U+010C84 */ + 1541, /* U+010C85 */ + 1542, /* U+010C86 */ + 1543, /* U+010C87 */ + 1544, /* U+010C88 */ + 1545, /* U+010C89 */ + 1546, /* U+010C8A */ + 1547, /* U+010C8B */ + 1548, /* U+010C8C */ + 1549, /* U+010C8D */ + 1550, /* U+010C8E */ + 1551, /* U+010C8F */ + 1552, /* U+010C90 */ + 1553, /* U+010C91 */ + 1554, /* U+010C92 */ + 1555, /* U+010C93 */ + 1556, /* U+010C94 */ + 1557, /* U+010C95 */ + 1558, /* U+010C96 */ + 1559, /* U+010C97 */ + 1560, /* U+010C98 */ + 1561, /* U+010C99 */ + 1562, /* U+010C9A */ + 1563, /* U+010C9B */ + 1564, /* U+010C9C */ + 1565, /* U+010C9D */ + 1566, /* U+010C9E */ + 1567, /* U+010C9F */ + 1568, /* U+010CA0 */ + 1569, /* U+010CA1 */ + 1570, /* U+010CA2 */ + 1571, /* U+010CA3 */ + 1572, /* U+010CA4 */ + 1573, /* U+010CA5 */ + 1574, /* U+010CA6 */ + 1575, /* U+010CA7 */ + 1576, /* U+010CA8 */ + 1577, /* U+010CA9 */ + 1578, /* U+010CAA */ + 1579, /* U+010CAB */ + 1580, /* U+010CAC */ + 1581, /* U+010CAD */ + 1582, /* U+010CAE */ + 1583, /* U+010CAF */ + 1584, /* U+010CB0 */ + 1585, /* U+010CB1 */ + 1586, /* U+010CB2 */ 0, /* U+010CB3 */ 0, /* U+010CB4 */ 0, /* U+010CB5 */ @@ -13117,57 +13257,57 @@ static const uint16 case_map[4778] = 0, /* U+010CBD */ 0, /* U+010CBE */ 0, /* U+010CBF */ - 1533, /* U+010CC0 */ - 1534, /* U+010CC1 */ - 1535, /* U+010CC2 */ - 1536, /* U+010CC3 */ - 1537, /* U+010CC4 */ - 1538, /* U+010CC5 */ - 1539, /* U+010CC6 */ - 1540, /* U+010CC7 */ - 1541, /* U+010CC8 */ - 1542, /* U+010CC9 */ - 1543, /* U+010CCA */ - 1544, /* U+010CCB */ - 1545, /* U+010CCC */ - 1546, /* U+010CCD */ - 1547, /* U+010CCE */ - 1548, /* U+010CCF */ - 1549, /* U+010CD0 */ - 1550, /* U+010CD1 */ - 1551, /* U+010CD2 */ - 1552, /* U+010CD3 */ - 1553, /* U+010CD4 */ - 1554, /* U+010CD5 */ - 1555, /* U+010CD6 */ - 1556, /* U+010CD7 */ - 1557, /* U+010CD8 */ - 1558, /* U+010CD9 */ - 1559, /* U+010CDA */ - 1560, /* U+010CDB */ - 1561, /* U+010CDC */ - 1562, /* U+010CDD */ - 1563, /* U+010CDE */ - 1564, /* U+010CDF */ - 1565, /* U+010CE0 */ - 1566, /* U+010CE1 */ - 1567, /* U+010CE2 */ - 1568, /* U+010CE3 */ - 1569, /* U+010CE4 */ - 1570, /* U+010CE5 */ - 1571, /* U+010CE6 */ - 1572, /* U+010CE7 */ - 1573, /* U+010CE8 */ - 1574, /* U+010CE9 */ - 1575, /* U+010CEA */ - 1576, /* U+010CEB */ - 1577, /* U+010CEC */ - 1578, /* U+010CED */ - 1579, /* U+010CEE */ - 1580, /* U+010CEF */ - 1581, /* U+010CF0 */ - 1582, /* U+010CF1 */ - 1583, /* U+010CF2 */ + 1536, /* U+010CC0 */ + 1537, /* U+010CC1 */ + 1538, /* U+010CC2 */ + 1539, /* U+010CC3 */ + 1540, /* U+010CC4 */ + 1541, /* U+010CC5 */ + 1542, /* U+010CC6 */ + 1543, /* U+010CC7 */ + 1544, /* U+010CC8 */ + 1545, /* U+010CC9 */ + 1546, /* U+010CCA */ + 1547, /* U+010CCB */ + 1548, /* U+010CCC */ + 1549, /* U+010CCD */ + 1550, /* U+010CCE */ + 1551, /* U+010CCF */ + 1552, /* U+010CD0 */ + 1553, /* U+010CD1 */ + 1554, /* U+010CD2 */ + 1555, /* U+010CD3 */ + 1556, /* U+010CD4 */ + 1557, /* U+010CD5 */ + 1558, /* U+010CD6 */ + 1559, /* U+010CD7 */ + 1560, /* U+010CD8 */ + 1561, /* U+010CD9 */ + 1562, /* U+010CDA */ + 1563, /* U+010CDB */ + 1564, /* U+010CDC */ + 1565, /* U+010CDD */ + 1566, /* U+010CDE */ + 1567, /* U+010CDF */ + 1568, /* U+010CE0 */ + 1569, /* U+010CE1 */ + 1570, /* U+010CE2 */ + 1571, /* U+010CE3 */ + 1572, /* U+010CE4 */ + 1573, /* U+010CE5 */ + 1574, /* U+010CE6 */ + 1575, /* U+010CE7 */ + 1576, /* U+010CE8 */ + 1577, /* U+010CE9 */ + 1578, /* U+010CEA */ + 1579, /* U+010CEB */ + 1580, /* U+010CEC */ + 1581, /* U+010CED */ + 1582, /* U+010CEE */ + 1583, /* U+010CEF */ + 1584, /* U+010CF0 */ + 1585, /* U+010CF1 */ + 1586, /* U+010CF2 */ 0, /* U+010CF3 */ 0, /* U+010CF4 */ 0, /* U+010CF5 */ @@ -13261,28 +13401,28 @@ static const uint16 case_map[4778] = 0, /* U+010D4D */ 0, /* U+010D4E */ 0, /* U+010D4F */ - 1584, /* U+010D50 */ - 1585, /* U+010D51 */ - 1586, /* U+010D52 */ - 1587, /* U+010D53 */ - 1588, /* U+010D54 */ - 1589, /* U+010D55 */ - 1590, /* U+010D56 */ - 1591, /* U+010D57 */ - 1592, /* U+010D58 */ - 1593, /* U+010D59 */ - 1594, /* U+010D5A */ - 1595, /* U+010D5B */ - 1596, /* U+010D5C */ - 1597, /* U+010D5D */ - 1598, /* U+010D5E */ - 1599, /* U+010D5F */ - 1600, /* U+010D60 */ - 1601, /* U+010D61 */ - 1602, /* U+010D62 */ - 1603, /* U+010D63 */ - 1604, /* U+010D64 */ - 1605, /* U+010D65 */ + 1587, /* U+010D50 */ + 1588, /* U+010D51 */ + 1589, /* U+010D52 */ + 1590, /* U+010D53 */ + 1591, /* U+010D54 */ + 1592, /* U+010D55 */ + 1593, /* U+010D56 */ + 1594, /* U+010D57 */ + 1595, /* U+010D58 */ + 1596, /* U+010D59 */ + 1597, /* U+010D5A */ + 1598, /* U+010D5B */ + 1599, /* U+010D5C */ + 1600, /* U+010D5D */ + 1601, /* U+010D5E */ + 1602, /* U+010D5F */ + 1603, /* U+010D60 */ + 1604, /* U+010D61 */ + 1605, /* U+010D62 */ + 1606, /* U+010D63 */ + 1607, /* U+010D64 */ + 1608, /* U+010D65 */ 0, /* U+010D66 */ 0, /* U+010D67 */ 0, /* U+010D68 */ @@ -13293,224 +13433,308 @@ static const uint16 case_map[4778] = 0, /* U+010D6D */ 0, /* U+010D6E */ 0, /* U+010D6F */ - 1584, /* U+010D70 */ - 1585, /* U+010D71 */ - 1586, /* U+010D72 */ - 1587, /* U+010D73 */ - 1588, /* U+010D74 */ - 1589, /* U+010D75 */ - 1590, /* U+010D76 */ - 1591, /* U+010D77 */ - 1592, /* U+010D78 */ - 1593, /* U+010D79 */ - 1594, /* U+010D7A */ - 1595, /* U+010D7B */ - 1596, /* U+010D7C */ - 1597, /* U+010D7D */ - 1598, /* U+010D7E */ - 1599, /* U+010D7F */ - 1600, /* U+010D80 */ - 1601, /* U+010D81 */ - 1602, /* U+010D82 */ - 1603, /* U+010D83 */ - 1604, /* U+010D84 */ - 1605, /* U+010D85 */ - 1606, /* U+0118A0 */ - 1607, /* U+0118A1 */ - 1608, /* U+0118A2 */ - 1609, /* U+0118A3 */ - 1610, /* U+0118A4 */ - 1611, /* U+0118A5 */ - 1612, /* U+0118A6 */ - 1613, /* U+0118A7 */ - 1614, /* U+0118A8 */ - 1615, /* U+0118A9 */ - 1616, /* U+0118AA */ - 1617, /* U+0118AB */ - 1618, /* U+0118AC */ - 1619, /* U+0118AD */ - 1620, /* U+0118AE */ - 1621, /* U+0118AF */ - 1622, /* U+0118B0 */ - 1623, /* U+0118B1 */ - 1624, /* U+0118B2 */ - 1625, /* U+0118B3 */ - 1626, /* U+0118B4 */ - 1627, /* U+0118B5 */ - 1628, /* U+0118B6 */ - 1629, /* U+0118B7 */ - 1630, /* U+0118B8 */ - 1631, /* U+0118B9 */ - 1632, /* U+0118BA */ - 1633, /* U+0118BB */ - 1634, /* U+0118BC */ - 1635, /* U+0118BD */ - 1636, /* U+0118BE */ - 1637, /* U+0118BF */ - 1606, /* U+0118C0 */ - 1607, /* U+0118C1 */ - 1608, /* U+0118C2 */ - 1609, /* U+0118C3 */ - 1610, /* U+0118C4 */ - 1611, /* U+0118C5 */ - 1612, /* U+0118C6 */ - 1613, /* U+0118C7 */ - 1614, /* U+0118C8 */ - 1615, /* U+0118C9 */ - 1616, /* U+0118CA */ - 1617, /* U+0118CB */ - 1618, /* U+0118CC */ - 1619, /* U+0118CD */ - 1620, /* U+0118CE */ - 1621, /* U+0118CF */ - 1622, /* U+0118D0 */ - 1623, /* U+0118D1 */ - 1624, /* U+0118D2 */ - 1625, /* U+0118D3 */ - 1626, /* U+0118D4 */ - 1627, /* U+0118D5 */ - 1628, /* U+0118D6 */ - 1629, /* U+0118D7 */ - 1630, /* U+0118D8 */ - 1631, /* U+0118D9 */ - 1632, /* U+0118DA */ - 1633, /* U+0118DB */ - 1634, /* U+0118DC */ - 1635, /* U+0118DD */ - 1636, /* U+0118DE */ - 1637, /* U+0118DF */ - 1638, /* U+016E40 */ - 1639, /* U+016E41 */ - 1640, /* U+016E42 */ - 1641, /* U+016E43 */ - 1642, /* U+016E44 */ - 1643, /* U+016E45 */ - 1644, /* U+016E46 */ - 1645, /* U+016E47 */ - 1646, /* U+016E48 */ - 1647, /* U+016E49 */ - 1648, /* U+016E4A */ - 1649, /* U+016E4B */ - 1650, /* U+016E4C */ - 1651, /* U+016E4D */ - 1652, /* U+016E4E */ - 1653, /* U+016E4F */ - 1654, /* U+016E50 */ - 1655, /* U+016E51 */ - 1656, /* U+016E52 */ - 1657, /* U+016E53 */ - 1658, /* U+016E54 */ - 1659, /* U+016E55 */ - 1660, /* U+016E56 */ - 1661, /* U+016E57 */ - 1662, /* U+016E58 */ - 1663, /* U+016E59 */ - 1664, /* U+016E5A */ - 1665, /* U+016E5B */ - 1666, /* U+016E5C */ - 1667, /* U+016E5D */ - 1668, /* U+016E5E */ - 1669, /* U+016E5F */ - 1638, /* U+016E60 */ - 1639, /* U+016E61 */ - 1640, /* U+016E62 */ - 1641, /* U+016E63 */ - 1642, /* U+016E64 */ - 1643, /* U+016E65 */ - 1644, /* U+016E66 */ - 1645, /* U+016E67 */ - 1646, /* U+016E68 */ - 1647, /* U+016E69 */ - 1648, /* U+016E6A */ - 1649, /* U+016E6B */ - 1650, /* U+016E6C */ - 1651, /* U+016E6D */ - 1652, /* U+016E6E */ - 1653, /* U+016E6F */ - 1654, /* U+016E70 */ - 1655, /* U+016E71 */ - 1656, /* U+016E72 */ - 1657, /* U+016E73 */ - 1658, /* U+016E74 */ - 1659, /* U+016E75 */ - 1660, /* U+016E76 */ - 1661, /* U+016E77 */ - 1662, /* U+016E78 */ - 1663, /* U+016E79 */ - 1664, /* U+016E7A */ - 1665, /* U+016E7B */ - 1666, /* U+016E7C */ - 1667, /* U+016E7D */ - 1668, /* U+016E7E */ - 1669, /* U+016E7F */ - 1670, /* U+01E900 */ - 1671, /* U+01E901 */ - 1672, /* U+01E902 */ - 1673, /* U+01E903 */ - 1674, /* U+01E904 */ - 1675, /* U+01E905 */ - 1676, /* U+01E906 */ - 1677, /* U+01E907 */ - 1678, /* U+01E908 */ - 1679, /* U+01E909 */ - 1680, /* U+01E90A */ - 1681, /* U+01E90B */ - 1682, /* U+01E90C */ - 1683, /* U+01E90D */ - 1684, /* U+01E90E */ - 1685, /* U+01E90F */ - 1686, /* U+01E910 */ - 1687, /* U+01E911 */ - 1688, /* U+01E912 */ - 1689, /* U+01E913 */ - 1690, /* U+01E914 */ - 1691, /* U+01E915 */ - 1692, /* U+01E916 */ - 1693, /* U+01E917 */ - 1694, /* U+01E918 */ - 1695, /* U+01E919 */ - 1696, /* U+01E91A */ - 1697, /* U+01E91B */ - 1698, /* U+01E91C */ - 1699, /* U+01E91D */ - 1700, /* U+01E91E */ - 1701, /* U+01E91F */ - 1702, /* U+01E920 */ - 1703, /* U+01E921 */ - 1670, /* U+01E922 */ - 1671, /* U+01E923 */ - 1672, /* U+01E924 */ - 1673, /* U+01E925 */ - 1674, /* U+01E926 */ - 1675, /* U+01E927 */ - 1676, /* U+01E928 */ - 1677, /* U+01E929 */ - 1678, /* U+01E92A */ - 1679, /* U+01E92B */ - 1680, /* U+01E92C */ - 1681, /* U+01E92D */ - 1682, /* U+01E92E */ - 1683, /* U+01E92F */ - 1684, /* U+01E930 */ - 1685, /* U+01E931 */ - 1686, /* U+01E932 */ - 1687, /* U+01E933 */ - 1688, /* U+01E934 */ - 1689, /* U+01E935 */ - 1690, /* U+01E936 */ - 1691, /* U+01E937 */ - 1692, /* U+01E938 */ - 1693, /* U+01E939 */ - 1694, /* U+01E93A */ - 1695, /* U+01E93B */ - 1696, /* U+01E93C */ - 1697, /* U+01E93D */ - 1698, /* U+01E93E */ - 1699, /* U+01E93F */ - 1700, /* U+01E940 */ - 1701, /* U+01E941 */ - 1702, /* U+01E942 */ - 1703, /* U+01E943 */ + 1587, /* U+010D70 */ + 1588, /* U+010D71 */ + 1589, /* U+010D72 */ + 1590, /* U+010D73 */ + 1591, /* U+010D74 */ + 1592, /* U+010D75 */ + 1593, /* U+010D76 */ + 1594, /* U+010D77 */ + 1595, /* U+010D78 */ + 1596, /* U+010D79 */ + 1597, /* U+010D7A */ + 1598, /* U+010D7B */ + 1599, /* U+010D7C */ + 1600, /* U+010D7D */ + 1601, /* U+010D7E */ + 1602, /* U+010D7F */ + 1603, /* U+010D80 */ + 1604, /* U+010D81 */ + 1605, /* U+010D82 */ + 1606, /* U+010D83 */ + 1607, /* U+010D84 */ + 1608, /* U+010D85 */ + 1609, /* U+0118A0 */ + 1610, /* U+0118A1 */ + 1611, /* U+0118A2 */ + 1612, /* U+0118A3 */ + 1613, /* U+0118A4 */ + 1614, /* U+0118A5 */ + 1615, /* U+0118A6 */ + 1616, /* U+0118A7 */ + 1617, /* U+0118A8 */ + 1618, /* U+0118A9 */ + 1619, /* U+0118AA */ + 1620, /* U+0118AB */ + 1621, /* U+0118AC */ + 1622, /* U+0118AD */ + 1623, /* U+0118AE */ + 1624, /* U+0118AF */ + 1625, /* U+0118B0 */ + 1626, /* U+0118B1 */ + 1627, /* U+0118B2 */ + 1628, /* U+0118B3 */ + 1629, /* U+0118B4 */ + 1630, /* U+0118B5 */ + 1631, /* U+0118B6 */ + 1632, /* U+0118B7 */ + 1633, /* U+0118B8 */ + 1634, /* U+0118B9 */ + 1635, /* U+0118BA */ + 1636, /* U+0118BB */ + 1637, /* U+0118BC */ + 1638, /* U+0118BD */ + 1639, /* U+0118BE */ + 1640, /* U+0118BF */ + 1609, /* U+0118C0 */ + 1610, /* U+0118C1 */ + 1611, /* U+0118C2 */ + 1612, /* U+0118C3 */ + 1613, /* U+0118C4 */ + 1614, /* U+0118C5 */ + 1615, /* U+0118C6 */ + 1616, /* U+0118C7 */ + 1617, /* U+0118C8 */ + 1618, /* U+0118C9 */ + 1619, /* U+0118CA */ + 1620, /* U+0118CB */ + 1621, /* U+0118CC */ + 1622, /* U+0118CD */ + 1623, /* U+0118CE */ + 1624, /* U+0118CF */ + 1625, /* U+0118D0 */ + 1626, /* U+0118D1 */ + 1627, /* U+0118D2 */ + 1628, /* U+0118D3 */ + 1629, /* U+0118D4 */ + 1630, /* U+0118D5 */ + 1631, /* U+0118D6 */ + 1632, /* U+0118D7 */ + 1633, /* U+0118D8 */ + 1634, /* U+0118D9 */ + 1635, /* U+0118DA */ + 1636, /* U+0118DB */ + 1637, /* U+0118DC */ + 1638, /* U+0118DD */ + 1639, /* U+0118DE */ + 1640, /* U+0118DF */ + 1641, /* U+016E40 */ + 1642, /* U+016E41 */ + 1643, /* U+016E42 */ + 1644, /* U+016E43 */ + 1645, /* U+016E44 */ + 1646, /* U+016E45 */ + 1647, /* U+016E46 */ + 1648, /* U+016E47 */ + 1649, /* U+016E48 */ + 1650, /* U+016E49 */ + 1651, /* U+016E4A */ + 1652, /* U+016E4B */ + 1653, /* U+016E4C */ + 1654, /* U+016E4D */ + 1655, /* U+016E4E */ + 1656, /* U+016E4F */ + 1657, /* U+016E50 */ + 1658, /* U+016E51 */ + 1659, /* U+016E52 */ + 1660, /* U+016E53 */ + 1661, /* U+016E54 */ + 1662, /* U+016E55 */ + 1663, /* U+016E56 */ + 1664, /* U+016E57 */ + 1665, /* U+016E58 */ + 1666, /* U+016E59 */ + 1667, /* U+016E5A */ + 1668, /* U+016E5B */ + 1669, /* U+016E5C */ + 1670, /* U+016E5D */ + 1671, /* U+016E5E */ + 1672, /* U+016E5F */ + 1641, /* U+016E60 */ + 1642, /* U+016E61 */ + 1643, /* U+016E62 */ + 1644, /* U+016E63 */ + 1645, /* U+016E64 */ + 1646, /* U+016E65 */ + 1647, /* U+016E66 */ + 1648, /* U+016E67 */ + 1649, /* U+016E68 */ + 1650, /* U+016E69 */ + 1651, /* U+016E6A */ + 1652, /* U+016E6B */ + 1653, /* U+016E6C */ + 1654, /* U+016E6D */ + 1655, /* U+016E6E */ + 1656, /* U+016E6F */ + 1657, /* U+016E70 */ + 1658, /* U+016E71 */ + 1659, /* U+016E72 */ + 1660, /* U+016E73 */ + 1661, /* U+016E74 */ + 1662, /* U+016E75 */ + 1663, /* U+016E76 */ + 1664, /* U+016E77 */ + 1665, /* U+016E78 */ + 1666, /* U+016E79 */ + 1667, /* U+016E7A */ + 1668, /* U+016E7B */ + 1669, /* U+016E7C */ + 1670, /* U+016E7D */ + 1671, /* U+016E7E */ + 1672, /* U+016E7F */ + 0, /* U+016E80 */ + 0, /* U+016E81 */ + 0, /* U+016E82 */ + 0, /* U+016E83 */ + 0, /* U+016E84 */ + 0, /* U+016E85 */ + 0, /* U+016E86 */ + 0, /* U+016E87 */ + 0, /* U+016E88 */ + 0, /* U+016E89 */ + 0, /* U+016E8A */ + 0, /* U+016E8B */ + 0, /* U+016E8C */ + 0, /* U+016E8D */ + 0, /* U+016E8E */ + 0, /* U+016E8F */ + 0, /* U+016E90 */ + 0, /* U+016E91 */ + 0, /* U+016E92 */ + 0, /* U+016E93 */ + 0, /* U+016E94 */ + 0, /* U+016E95 */ + 0, /* U+016E96 */ + 0, /* U+016E97 */ + 0, /* U+016E98 */ + 0, /* U+016E99 */ + 0, /* U+016E9A */ + 0, /* U+016E9B */ + 0, /* U+016E9C */ + 0, /* U+016E9D */ + 0, /* U+016E9E */ + 0, /* U+016E9F */ + 1673, /* U+016EA0 */ + 1674, /* U+016EA1 */ + 1675, /* U+016EA2 */ + 1676, /* U+016EA3 */ + 1677, /* U+016EA4 */ + 1678, /* U+016EA5 */ + 1679, /* U+016EA6 */ + 1680, /* U+016EA7 */ + 1681, /* U+016EA8 */ + 1682, /* U+016EA9 */ + 1683, /* U+016EAA */ + 1684, /* U+016EAB */ + 1685, /* U+016EAC */ + 1686, /* U+016EAD */ + 1687, /* U+016EAE */ + 1688, /* U+016EAF */ + 1689, /* U+016EB0 */ + 1690, /* U+016EB1 */ + 1691, /* U+016EB2 */ + 1692, /* U+016EB3 */ + 1693, /* U+016EB4 */ + 1694, /* U+016EB5 */ + 1695, /* U+016EB6 */ + 1696, /* U+016EB7 */ + 1697, /* U+016EB8 */ + 0, /* U+016EB9 */ + 0, /* U+016EBA */ + 1673, /* U+016EBB */ + 1674, /* U+016EBC */ + 1675, /* U+016EBD */ + 1676, /* U+016EBE */ + 1677, /* U+016EBF */ + 1678, /* U+016EC0 */ + 1679, /* U+016EC1 */ + 1680, /* U+016EC2 */ + 1681, /* U+016EC3 */ + 1682, /* U+016EC4 */ + 1683, /* U+016EC5 */ + 1684, /* U+016EC6 */ + 1685, /* U+016EC7 */ + 1686, /* U+016EC8 */ + 1687, /* U+016EC9 */ + 1688, /* U+016ECA */ + 1689, /* U+016ECB */ + 1690, /* U+016ECC */ + 1691, /* U+016ECD */ + 1692, /* U+016ECE */ + 1693, /* U+016ECF */ + 1694, /* U+016ED0 */ + 1695, /* U+016ED1 */ + 1696, /* U+016ED2 */ + 1697, /* U+016ED3 */ + 1698, /* U+01E900 */ + 1699, /* U+01E901 */ + 1700, /* U+01E902 */ + 1701, /* U+01E903 */ + 1702, /* U+01E904 */ + 1703, /* U+01E905 */ + 1704, /* U+01E906 */ + 1705, /* U+01E907 */ + 1706, /* U+01E908 */ + 1707, /* U+01E909 */ + 1708, /* U+01E90A */ + 1709, /* U+01E90B */ + 1710, /* U+01E90C */ + 1711, /* U+01E90D */ + 1712, /* U+01E90E */ + 1713, /* U+01E90F */ + 1714, /* U+01E910 */ + 1715, /* U+01E911 */ + 1716, /* U+01E912 */ + 1717, /* U+01E913 */ + 1718, /* U+01E914 */ + 1719, /* U+01E915 */ + 1720, /* U+01E916 */ + 1721, /* U+01E917 */ + 1722, /* U+01E918 */ + 1723, /* U+01E919 */ + 1724, /* U+01E91A */ + 1725, /* U+01E91B */ + 1726, /* U+01E91C */ + 1727, /* U+01E91D */ + 1728, /* U+01E91E */ + 1729, /* U+01E91F */ + 1730, /* U+01E920 */ + 1731, /* U+01E921 */ + 1698, /* U+01E922 */ + 1699, /* U+01E923 */ + 1700, /* U+01E924 */ + 1701, /* U+01E925 */ + 1702, /* U+01E926 */ + 1703, /* U+01E927 */ + 1704, /* U+01E928 */ + 1705, /* U+01E929 */ + 1706, /* U+01E92A */ + 1707, /* U+01E92B */ + 1708, /* U+01E92C */ + 1709, /* U+01E92D */ + 1710, /* U+01E92E */ + 1711, /* U+01E92F */ + 1712, /* U+01E930 */ + 1713, /* U+01E931 */ + 1714, /* U+01E932 */ + 1715, /* U+01E933 */ + 1716, /* U+01E934 */ + 1717, /* U+01E935 */ + 1718, /* U+01E936 */ + 1719, /* U+01E937 */ + 1720, /* U+01E938 */ + 1721, /* U+01E939 */ + 1722, /* U+01E93A */ + 1723, /* U+01E93B */ + 1724, /* U+01E93C */ + 1725, /* U+01E93D */ + 1726, /* U+01E93E */ + 1727, /* U+01E93F */ + 1728, /* U+01E940 */ + 1729, /* U+01E941 */ + 1730, /* U+01E942 */ + 1731, /* U+01E943 */ }; @@ -13604,7 +13828,7 @@ case_index(char32_t cp) } else if (cp >= 0x118A0) { - if (cp < 0x16E80) + if (cp < 0x16ED4) { if (cp < 0x118E0) { @@ -13619,7 +13843,7 @@ case_index(char32_t cp) { if (cp < 0x1E944) { - return case_map[cp - 0x1E900 + 4710]; + return case_map[cp - 0x1E900 + 4794]; } } } diff --git a/src/include/common/unicode_category_table.h b/src/include/common/unicode_category_table.h index ad61a731720..b45df500d08 100644 --- a/src/include/common/unicode_category_table.h +++ b/src/include/common/unicode_category_table.h @@ -696,7 +696,7 @@ static const pg_unicode_properties unicode_opt_ascii[128] = }; /* table of Unicode codepoint ranges and their categories */ -static const pg_category_range unicode_categories[3368] = +static const pg_category_range unicode_categories[3409] = { {0x000000, 0x00001f, PG_U_CONTROL}, {0x000020, 0x000020, PG_U_SPACE_SEPARATOR}, @@ -1046,8 +1046,8 @@ static const pg_category_range unicode_categories[3368] = {0x00024d, 0x00024d, PG_U_LOWERCASE_LETTER}, {0x00024e, 0x00024e, PG_U_UPPERCASE_LETTER}, {0x00024f, 0x000293, PG_U_LOWERCASE_LETTER}, - {0x000294, 0x000294, PG_U_OTHER_LETTER}, - {0x000295, 0x0002af, PG_U_LOWERCASE_LETTER}, + {0x000294, 0x000295, PG_U_OTHER_LETTER}, + {0x000296, 0x0002af, PG_U_LOWERCASE_LETTER}, {0x0002b0, 0x0002c1, PG_U_MODIFIER_LETTER}, {0x0002c2, 0x0002c5, PG_U_MODIFIER_SYMBOL}, {0x0002c6, 0x0002d1, PG_U_MODIFIER_LETTER}, @@ -1406,7 +1406,7 @@ static const pg_category_range unicode_categories[3368] = {0x000860, 0x00086a, PG_U_OTHER_LETTER}, {0x000870, 0x000887, PG_U_OTHER_LETTER}, {0x000888, 0x000888, PG_U_MODIFIER_SYMBOL}, - {0x000889, 0x00088e, PG_U_OTHER_LETTER}, + {0x000889, 0x00088f, PG_U_OTHER_LETTER}, {0x000890, 0x000891, PG_U_FORMAT}, {0x000897, 0x00089f, PG_U_NONSPACING_MARK}, {0x0008a0, 0x0008c8, PG_U_OTHER_LETTER}, @@ -1574,7 +1574,7 @@ static const pg_category_range unicode_categories[3368] = {0x000c4a, 0x000c4d, PG_U_NONSPACING_MARK}, {0x000c55, 0x000c56, PG_U_NONSPACING_MARK}, {0x000c58, 0x000c5a, PG_U_OTHER_LETTER}, - {0x000c5d, 0x000c5d, PG_U_OTHER_LETTER}, + {0x000c5c, 0x000c5d, PG_U_OTHER_LETTER}, {0x000c60, 0x000c61, PG_U_OTHER_LETTER}, {0x000c62, 0x000c63, PG_U_NONSPACING_MARK}, {0x000c66, 0x000c6f, PG_U_DECIMAL_NUMBER}, @@ -1600,7 +1600,7 @@ static const pg_category_range unicode_categories[3368] = {0x000cca, 0x000ccb, PG_U_SPACING_MARK}, {0x000ccc, 0x000ccd, PG_U_NONSPACING_MARK}, {0x000cd5, 0x000cd6, PG_U_SPACING_MARK}, - {0x000cdd, 0x000cde, PG_U_OTHER_LETTER}, + {0x000cdc, 0x000cde, PG_U_OTHER_LETTER}, {0x000ce0, 0x000ce1, PG_U_OTHER_LETTER}, {0x000ce2, 0x000ce3, PG_U_NONSPACING_MARK}, {0x000ce6, 0x000cef, PG_U_DECIMAL_NUMBER}, @@ -1874,7 +1874,8 @@ static const pg_category_range unicode_categories[3368] = {0x001aa8, 0x001aad, PG_U_OTHER_PUNCTUATION}, {0x001ab0, 0x001abd, PG_U_NONSPACING_MARK}, {0x001abe, 0x001abe, PG_U_ENCLOSING_MARK}, - {0x001abf, 0x001ace, PG_U_NONSPACING_MARK}, + {0x001abf, 0x001add, PG_U_NONSPACING_MARK}, + {0x001ae0, 0x001aeb, PG_U_NONSPACING_MARK}, {0x001b00, 0x001b03, PG_U_NONSPACING_MARK}, {0x001b04, 0x001b04, PG_U_SPACING_MARK}, {0x001b05, 0x001b33, PG_U_OTHER_LETTER}, @@ -2293,7 +2294,7 @@ static const pg_category_range unicode_categories[3368] = {0x00208d, 0x00208d, PG_U_OPEN_PUNCTUATION}, {0x00208e, 0x00208e, PG_U_CLOSE_PUNCTUATION}, {0x002090, 0x00209c, PG_U_MODIFIER_LETTER}, - {0x0020a0, 0x0020c0, PG_U_CURRENCY_SYMBOL}, + {0x0020a0, 0x0020c1, PG_U_CURRENCY_SYMBOL}, {0x0020d0, 0x0020dc, PG_U_NONSPACING_MARK}, {0x0020dd, 0x0020e0, PG_U_ENCLOSING_MARK}, {0x0020e1, 0x0020e1, PG_U_NONSPACING_MARK}, @@ -2464,8 +2465,7 @@ static const pg_category_range unicode_categories[3368] = {0x002b45, 0x002b46, PG_U_OTHER_SYMBOL}, {0x002b47, 0x002b4c, PG_U_MATH_SYMBOL}, {0x002b4d, 0x002b73, PG_U_OTHER_SYMBOL}, - {0x002b76, 0x002b95, PG_U_OTHER_SYMBOL}, - {0x002b97, 0x002bff, PG_U_OTHER_SYMBOL}, + {0x002b76, 0x002bff, PG_U_OTHER_SYMBOL}, {0x002c00, 0x002c2f, PG_U_UPPERCASE_LETTER}, {0x002c30, 0x002c5f, PG_U_LOWERCASE_LETTER}, {0x002c60, 0x002c60, PG_U_UPPERCASE_LETTER}, @@ -2988,9 +2988,13 @@ static const pg_category_range unicode_categories[3368] = {0x00a7ca, 0x00a7ca, PG_U_LOWERCASE_LETTER}, {0x00a7cb, 0x00a7cc, PG_U_UPPERCASE_LETTER}, {0x00a7cd, 0x00a7cd, PG_U_LOWERCASE_LETTER}, + {0x00a7ce, 0x00a7ce, PG_U_UPPERCASE_LETTER}, + {0x00a7cf, 0x00a7cf, PG_U_LOWERCASE_LETTER}, {0x00a7d0, 0x00a7d0, PG_U_UPPERCASE_LETTER}, {0x00a7d1, 0x00a7d1, PG_U_LOWERCASE_LETTER}, + {0x00a7d2, 0x00a7d2, PG_U_UPPERCASE_LETTER}, {0x00a7d3, 0x00a7d3, PG_U_LOWERCASE_LETTER}, + {0x00a7d4, 0x00a7d4, PG_U_UPPERCASE_LETTER}, {0x00a7d5, 0x00a7d5, PG_U_LOWERCASE_LETTER}, {0x00a7d6, 0x00a7d6, PG_U_UPPERCASE_LETTER}, {0x00a7d7, 0x00a7d7, PG_U_LOWERCASE_LETTER}, @@ -2999,7 +3003,7 @@ static const pg_category_range unicode_categories[3368] = {0x00a7da, 0x00a7da, PG_U_UPPERCASE_LETTER}, {0x00a7db, 0x00a7db, PG_U_LOWERCASE_LETTER}, {0x00a7dc, 0x00a7dc, PG_U_UPPERCASE_LETTER}, - {0x00a7f2, 0x00a7f4, PG_U_MODIFIER_LETTER}, + {0x00a7f1, 0x00a7f4, PG_U_MODIFIER_LETTER}, {0x00a7f5, 0x00a7f5, PG_U_UPPERCASE_LETTER}, {0x00a7f6, 0x00a7f6, PG_U_LOWERCASE_LETTER}, {0x00a7f7, 0x00a7f7, PG_U_OTHER_LETTER}, @@ -3150,13 +3154,15 @@ static const pg_category_range unicode_categories[3368] = {0x00fb43, 0x00fb44, PG_U_OTHER_LETTER}, {0x00fb46, 0x00fbb1, PG_U_OTHER_LETTER}, {0x00fbb2, 0x00fbc2, PG_U_MODIFIER_SYMBOL}, + {0x00fbc3, 0x00fbd2, PG_U_OTHER_SYMBOL}, {0x00fbd3, 0x00fd3d, PG_U_OTHER_LETTER}, {0x00fd3e, 0x00fd3e, PG_U_CLOSE_PUNCTUATION}, {0x00fd3f, 0x00fd3f, PG_U_OPEN_PUNCTUATION}, {0x00fd40, 0x00fd4f, PG_U_OTHER_SYMBOL}, {0x00fd50, 0x00fd8f, PG_U_OTHER_LETTER}, + {0x00fd90, 0x00fd91, PG_U_OTHER_SYMBOL}, {0x00fd92, 0x00fdc7, PG_U_OTHER_LETTER}, - {0x00fdcf, 0x00fdcf, PG_U_OTHER_SYMBOL}, + {0x00fdc8, 0x00fdcf, PG_U_OTHER_SYMBOL}, {0x00fdf0, 0x00fdfb, PG_U_OTHER_LETTER}, {0x00fdfc, 0x00fdfc, PG_U_CURRENCY_SYMBOL}, {0x00fdfd, 0x00fdff, PG_U_OTHER_SYMBOL}, @@ -3342,6 +3348,7 @@ static const pg_category_range unicode_categories[3368] = {0x01091f, 0x01091f, PG_U_OTHER_PUNCTUATION}, {0x010920, 0x010939, PG_U_OTHER_LETTER}, {0x01093f, 0x01093f, PG_U_OTHER_PUNCTUATION}, + {0x010940, 0x010959, PG_U_OTHER_LETTER}, {0x010980, 0x0109b7, PG_U_OTHER_LETTER}, {0x0109bc, 0x0109bd, PG_U_OTHER_NUMBER}, {0x0109be, 0x0109bf, PG_U_OTHER_LETTER}, @@ -3401,7 +3408,11 @@ static const pg_category_range unicode_categories[3368] = {0x010ead, 0x010ead, PG_U_DASH_PUNCTUATION}, {0x010eb0, 0x010eb1, PG_U_OTHER_LETTER}, {0x010ec2, 0x010ec4, PG_U_OTHER_LETTER}, - {0x010efc, 0x010eff, PG_U_NONSPACING_MARK}, + {0x010ec5, 0x010ec5, PG_U_MODIFIER_LETTER}, + {0x010ec6, 0x010ec7, PG_U_OTHER_LETTER}, + {0x010ed0, 0x010ed0, PG_U_OTHER_PUNCTUATION}, + {0x010ed1, 0x010ed8, PG_U_OTHER_SYMBOL}, + {0x010efa, 0x010eff, PG_U_NONSPACING_MARK}, {0x010f00, 0x010f1c, PG_U_OTHER_LETTER}, {0x010f1d, 0x010f26, PG_U_OTHER_NUMBER}, {0x010f27, 0x010f27, PG_U_OTHER_LETTER}, @@ -3670,6 +3681,12 @@ static const pg_category_range unicode_categories[3368] = {0x011a9e, 0x011aa2, PG_U_OTHER_PUNCTUATION}, {0x011ab0, 0x011af8, PG_U_OTHER_LETTER}, {0x011b00, 0x011b09, PG_U_OTHER_PUNCTUATION}, + {0x011b60, 0x011b60, PG_U_NONSPACING_MARK}, + {0x011b61, 0x011b61, PG_U_SPACING_MARK}, + {0x011b62, 0x011b64, PG_U_NONSPACING_MARK}, + {0x011b65, 0x011b65, PG_U_SPACING_MARK}, + {0x011b66, 0x011b66, PG_U_NONSPACING_MARK}, + {0x011b67, 0x011b67, PG_U_SPACING_MARK}, {0x011bc0, 0x011be0, PG_U_OTHER_LETTER}, {0x011be1, 0x011be1, PG_U_OTHER_PUNCTUATION}, {0x011bf0, 0x011bf9, PG_U_DECIMAL_NUMBER}, @@ -3714,6 +3731,10 @@ static const pg_category_range unicode_categories[3368] = {0x011d97, 0x011d97, PG_U_NONSPACING_MARK}, {0x011d98, 0x011d98, PG_U_OTHER_LETTER}, {0x011da0, 0x011da9, PG_U_DECIMAL_NUMBER}, + {0x011db0, 0x011dd8, PG_U_OTHER_LETTER}, + {0x011dd9, 0x011dd9, PG_U_MODIFIER_LETTER}, + {0x011dda, 0x011ddb, PG_U_OTHER_LETTER}, + {0x011de0, 0x011de9, PG_U_DECIMAL_NUMBER}, {0x011ee0, 0x011ef2, PG_U_OTHER_LETTER}, {0x011ef3, 0x011ef4, PG_U_NONSPACING_MARK}, {0x011ef5, 0x011ef6, PG_U_SPACING_MARK}, @@ -3785,6 +3806,8 @@ static const pg_category_range unicode_categories[3368] = {0x016e60, 0x016e7f, PG_U_LOWERCASE_LETTER}, {0x016e80, 0x016e96, PG_U_OTHER_NUMBER}, {0x016e97, 0x016e9a, PG_U_OTHER_PUNCTUATION}, + {0x016ea0, 0x016eb8, PG_U_UPPERCASE_LETTER}, + {0x016ebb, 0x016ed3, PG_U_LOWERCASE_LETTER}, {0x016f00, 0x016f4a, PG_U_OTHER_LETTER}, {0x016f4f, 0x016f4f, PG_U_NONSPACING_MARK}, {0x016f50, 0x016f50, PG_U_OTHER_LETTER}, @@ -3796,9 +3819,11 @@ static const pg_category_range unicode_categories[3368] = {0x016fe3, 0x016fe3, PG_U_MODIFIER_LETTER}, {0x016fe4, 0x016fe4, PG_U_NONSPACING_MARK}, {0x016ff0, 0x016ff1, PG_U_SPACING_MARK}, - {0x017000, 0x0187f7, PG_U_OTHER_LETTER}, - {0x018800, 0x018cd5, PG_U_OTHER_LETTER}, - {0x018cff, 0x018d08, PG_U_OTHER_LETTER}, + {0x016ff2, 0x016ff3, PG_U_MODIFIER_LETTER}, + {0x016ff4, 0x016ff6, PG_U_LETTER_NUMBER}, + {0x017000, 0x018cd5, PG_U_OTHER_LETTER}, + {0x018cff, 0x018d1e, PG_U_OTHER_LETTER}, + {0x018d80, 0x018df2, PG_U_OTHER_LETTER}, {0x01aff0, 0x01aff3, PG_U_MODIFIER_LETTER}, {0x01aff5, 0x01affb, PG_U_MODIFIER_LETTER}, {0x01affd, 0x01affe, PG_U_MODIFIER_LETTER}, @@ -3818,7 +3843,11 @@ static const pg_category_range unicode_categories[3368] = {0x01bca0, 0x01bca3, PG_U_FORMAT}, {0x01cc00, 0x01ccef, PG_U_OTHER_SYMBOL}, {0x01ccf0, 0x01ccf9, PG_U_DECIMAL_NUMBER}, + {0x01ccfa, 0x01ccfc, PG_U_OTHER_SYMBOL}, {0x01cd00, 0x01ceb3, PG_U_OTHER_SYMBOL}, + {0x01ceba, 0x01ced0, PG_U_OTHER_SYMBOL}, + {0x01cee0, 0x01ceef, PG_U_OTHER_SYMBOL}, + {0x01cef0, 0x01cef0, PG_U_MATH_SYMBOL}, {0x01cf00, 0x01cf2d, PG_U_NONSPACING_MARK}, {0x01cf30, 0x01cf46, PG_U_NONSPACING_MARK}, {0x01cf50, 0x01cfc3, PG_U_OTHER_SYMBOL}, @@ -3957,6 +3986,17 @@ static const pg_category_range unicode_categories[3368] = {0x01e5f0, 0x01e5f0, PG_U_OTHER_LETTER}, {0x01e5f1, 0x01e5fa, PG_U_DECIMAL_NUMBER}, {0x01e5ff, 0x01e5ff, PG_U_OTHER_PUNCTUATION}, + {0x01e6c0, 0x01e6de, PG_U_OTHER_LETTER}, + {0x01e6e0, 0x01e6e2, PG_U_OTHER_LETTER}, + {0x01e6e3, 0x01e6e3, PG_U_NONSPACING_MARK}, + {0x01e6e4, 0x01e6e5, PG_U_OTHER_LETTER}, + {0x01e6e6, 0x01e6e6, PG_U_NONSPACING_MARK}, + {0x01e6e7, 0x01e6ed, PG_U_OTHER_LETTER}, + {0x01e6ee, 0x01e6ef, PG_U_NONSPACING_MARK}, + {0x01e6f0, 0x01e6f4, PG_U_OTHER_LETTER}, + {0x01e6f5, 0x01e6f5, PG_U_NONSPACING_MARK}, + {0x01e6fe, 0x01e6fe, PG_U_OTHER_LETTER}, + {0x01e6ff, 0x01e6ff, PG_U_MODIFIER_LETTER}, {0x01e7e0, 0x01e7e6, PG_U_OTHER_LETTER}, {0x01e7e8, 0x01e7eb, PG_U_OTHER_LETTER}, {0x01e7ed, 0x01e7ee, PG_U_OTHER_LETTER}, @@ -4027,11 +4067,10 @@ static const pg_category_range unicode_categories[3368] = {0x01f260, 0x01f265, PG_U_OTHER_SYMBOL}, {0x01f300, 0x01f3fa, PG_U_OTHER_SYMBOL}, {0x01f3fb, 0x01f3ff, PG_U_MODIFIER_SYMBOL}, - {0x01f400, 0x01f6d7, PG_U_OTHER_SYMBOL}, + {0x01f400, 0x01f6d8, PG_U_OTHER_SYMBOL}, {0x01f6dc, 0x01f6ec, PG_U_OTHER_SYMBOL}, {0x01f6f0, 0x01f6fc, PG_U_OTHER_SYMBOL}, - {0x01f700, 0x01f776, PG_U_OTHER_SYMBOL}, - {0x01f77b, 0x01f7d9, PG_U_OTHER_SYMBOL}, + {0x01f700, 0x01f7d9, PG_U_OTHER_SYMBOL}, {0x01f7e0, 0x01f7eb, PG_U_OTHER_SYMBOL}, {0x01f7f0, 0x01f7f0, PG_U_OTHER_SYMBOL}, {0x01f800, 0x01f80b, PG_U_OTHER_SYMBOL}, @@ -4041,26 +4080,28 @@ static const pg_category_range unicode_categories[3368] = {0x01f890, 0x01f8ad, PG_U_OTHER_SYMBOL}, {0x01f8b0, 0x01f8bb, PG_U_OTHER_SYMBOL}, {0x01f8c0, 0x01f8c1, PG_U_OTHER_SYMBOL}, - {0x01f900, 0x01fa53, PG_U_OTHER_SYMBOL}, + {0x01f8d0, 0x01f8d8, PG_U_MATH_SYMBOL}, + {0x01f900, 0x01fa57, PG_U_OTHER_SYMBOL}, {0x01fa60, 0x01fa6d, PG_U_OTHER_SYMBOL}, {0x01fa70, 0x01fa7c, PG_U_OTHER_SYMBOL}, - {0x01fa80, 0x01fa89, PG_U_OTHER_SYMBOL}, - {0x01fa8f, 0x01fac6, PG_U_OTHER_SYMBOL}, - {0x01face, 0x01fadc, PG_U_OTHER_SYMBOL}, - {0x01fadf, 0x01fae9, PG_U_OTHER_SYMBOL}, - {0x01faf0, 0x01faf8, PG_U_OTHER_SYMBOL}, + {0x01fa80, 0x01fa8a, PG_U_OTHER_SYMBOL}, + {0x01fa8e, 0x01fac6, PG_U_OTHER_SYMBOL}, + {0x01fac8, 0x01fac8, PG_U_OTHER_SYMBOL}, + {0x01facd, 0x01fadc, PG_U_OTHER_SYMBOL}, + {0x01fadf, 0x01faea, PG_U_OTHER_SYMBOL}, + {0x01faef, 0x01faf8, PG_U_OTHER_SYMBOL}, {0x01fb00, 0x01fb92, PG_U_OTHER_SYMBOL}, {0x01fb94, 0x01fbef, PG_U_OTHER_SYMBOL}, {0x01fbf0, 0x01fbf9, PG_U_DECIMAL_NUMBER}, + {0x01fbfa, 0x01fbfa, PG_U_OTHER_SYMBOL}, {0x020000, 0x02a6df, PG_U_OTHER_LETTER}, - {0x02a700, 0x02b739, PG_U_OTHER_LETTER}, - {0x02b740, 0x02b81d, PG_U_OTHER_LETTER}, - {0x02b820, 0x02cea1, PG_U_OTHER_LETTER}, + {0x02a700, 0x02b81d, PG_U_OTHER_LETTER}, + {0x02b820, 0x02cead, PG_U_OTHER_LETTER}, {0x02ceb0, 0x02ebe0, PG_U_OTHER_LETTER}, {0x02ebf0, 0x02ee5d, PG_U_OTHER_LETTER}, {0x02f800, 0x02fa1d, PG_U_OTHER_LETTER}, {0x030000, 0x03134a, PG_U_OTHER_LETTER}, - {0x031350, 0x0323af, PG_U_OTHER_LETTER}, + {0x031350, 0x033479, PG_U_OTHER_LETTER}, {0x0e0001, 0x0e0001, PG_U_FORMAT}, {0x0e0020, 0x0e007f, PG_U_FORMAT}, {0x0e0100, 0x0e01ef, PG_U_NONSPACING_MARK}, @@ -4069,7 +4110,7 @@ static const pg_category_range unicode_categories[3368] = }; /* table of Unicode codepoint ranges of Alphabetic characters */ -static const pg_unicode_range unicode_alphabetic[1179] = +static const pg_unicode_range unicode_alphabetic[1202] = { {0x000041, 0x00005a}, {0x000061, 0x00007a}, @@ -4083,8 +4124,8 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x0001bc, 0x0001bf}, {0x0001c0, 0x0001c3}, {0x0001c4, 0x000293}, - {0x000294, 0x000294}, - {0x000295, 0x0002af}, + {0x000294, 0x000295}, + {0x000296, 0x0002af}, {0x0002b0, 0x0002c1}, {0x0002c6, 0x0002d1}, {0x0002e0, 0x0002e4}, @@ -4154,7 +4195,7 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x000840, 0x000858}, {0x000860, 0x00086a}, {0x000870, 0x000887}, - {0x000889, 0x00088e}, + {0x000889, 0x00088f}, {0x000897, 0x000897}, {0x0008a0, 0x0008c8}, {0x0008c9, 0x0008c9}, @@ -4287,7 +4328,7 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x000c4a, 0x000c4c}, {0x000c55, 0x000c56}, {0x000c58, 0x000c5a}, - {0x000c5d, 0x000c5d}, + {0x000c5c, 0x000c5d}, {0x000c60, 0x000c61}, {0x000c62, 0x000c63}, {0x000c80, 0x000c80}, @@ -4307,7 +4348,7 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x000cca, 0x000ccb}, {0x000ccc, 0x000ccc}, {0x000cd5, 0x000cd6}, - {0x000cdd, 0x000cde}, + {0x000cdc, 0x000cde}, {0x000ce0, 0x000ce1}, {0x000ce2, 0x000ce3}, {0x000cf1, 0x000cf2}, @@ -4643,11 +4684,8 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x00a788, 0x00a788}, {0x00a78b, 0x00a78e}, {0x00a78f, 0x00a78f}, - {0x00a790, 0x00a7cd}, - {0x00a7d0, 0x00a7d1}, - {0x00a7d3, 0x00a7d3}, - {0x00a7d5, 0x00a7dc}, - {0x00a7f2, 0x00a7f4}, + {0x00a790, 0x00a7dc}, + {0x00a7f1, 0x00a7f4}, {0x00a7f5, 0x00a7f6}, {0x00a7f7, 0x00a7f7}, {0x00a7f8, 0x00a7f9}, @@ -4830,6 +4868,7 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x0108f4, 0x0108f5}, {0x010900, 0x010915}, {0x010920, 0x010939}, + {0x010940, 0x010959}, {0x010980, 0x0109b7}, {0x0109be, 0x0109bf}, {0x010a00, 0x010a00}, @@ -4863,7 +4902,9 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x010eab, 0x010eac}, {0x010eb0, 0x010eb1}, {0x010ec2, 0x010ec4}, - {0x010efc, 0x010efc}, + {0x010ec5, 0x010ec5}, + {0x010ec6, 0x010ec7}, + {0x010efa, 0x010efc}, {0x010f00, 0x010f1c}, {0x010f27, 0x010f27}, {0x010f30, 0x010f45}, @@ -5049,6 +5090,12 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x011a97, 0x011a97}, {0x011a9d, 0x011a9d}, {0x011ab0, 0x011af8}, + {0x011b60, 0x011b60}, + {0x011b61, 0x011b61}, + {0x011b62, 0x011b64}, + {0x011b65, 0x011b65}, + {0x011b66, 0x011b66}, + {0x011b67, 0x011b67}, {0x011bc0, 0x011be0}, {0x011c00, 0x011c08}, {0x011c0a, 0x011c2e}, @@ -5084,6 +5131,9 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x011d95, 0x011d95}, {0x011d96, 0x011d96}, {0x011d98, 0x011d98}, + {0x011db0, 0x011dd8}, + {0x011dd9, 0x011dd9}, + {0x011dda, 0x011ddb}, {0x011ee0, 0x011ef2}, {0x011ef3, 0x011ef4}, {0x011ef5, 0x011ef6}, @@ -5121,6 +5171,8 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x016d43, 0x016d6a}, {0x016d6b, 0x016d6c}, {0x016e40, 0x016e7f}, + {0x016ea0, 0x016eb8}, + {0x016ebb, 0x016ed3}, {0x016f00, 0x016f4a}, {0x016f4f, 0x016f4f}, {0x016f50, 0x016f50}, @@ -5130,9 +5182,11 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x016fe0, 0x016fe1}, {0x016fe3, 0x016fe3}, {0x016ff0, 0x016ff1}, - {0x017000, 0x0187f7}, - {0x018800, 0x018cd5}, - {0x018cff, 0x018d08}, + {0x016ff2, 0x016ff3}, + {0x016ff4, 0x016ff6}, + {0x017000, 0x018cd5}, + {0x018cff, 0x018d1e}, + {0x018d80, 0x018df2}, {0x01aff0, 0x01aff3}, {0x01aff5, 0x01affb}, {0x01affd, 0x01affe}, @@ -5197,6 +5251,17 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x01e4eb, 0x01e4eb}, {0x01e5d0, 0x01e5ed}, {0x01e5f0, 0x01e5f0}, + {0x01e6c0, 0x01e6de}, + {0x01e6e0, 0x01e6e2}, + {0x01e6e3, 0x01e6e3}, + {0x01e6e4, 0x01e6e5}, + {0x01e6e6, 0x01e6e6}, + {0x01e6e7, 0x01e6ed}, + {0x01e6ee, 0x01e6ef}, + {0x01e6f0, 0x01e6f4}, + {0x01e6f5, 0x01e6f5}, + {0x01e6fe, 0x01e6fe}, + {0x01e6ff, 0x01e6ff}, {0x01e7e0, 0x01e7e6}, {0x01e7e8, 0x01e7eb}, {0x01e7ed, 0x01e7ee}, @@ -5242,18 +5307,17 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x01f150, 0x01f169}, {0x01f170, 0x01f189}, {0x020000, 0x02a6df}, - {0x02a700, 0x02b739}, - {0x02b740, 0x02b81d}, - {0x02b820, 0x02cea1}, + {0x02a700, 0x02b81d}, + {0x02b820, 0x02cead}, {0x02ceb0, 0x02ebe0}, {0x02ebf0, 0x02ee5d}, {0x02f800, 0x02fa1d}, {0x030000, 0x03134a}, - {0x031350, 0x0323af}, + {0x031350, 0x033479}, }; /* table of Unicode codepoint ranges of Lowercase characters */ -static const pg_unicode_range unicode_lowercase[690] = +static const pg_unicode_range unicode_lowercase[692] = { {0x000061, 0x00007a}, {0x0000aa, 0x0000aa}, @@ -5402,7 +5466,7 @@ static const pg_unicode_range unicode_lowercase[690] = {0x00024b, 0x00024b}, {0x00024d, 0x00024d}, {0x00024f, 0x000293}, - {0x000295, 0x0002af}, + {0x000296, 0x0002af}, {0x0002b0, 0x0002b8}, {0x0002c0, 0x0002c1}, {0x0002e0, 0x0002e4}, @@ -5880,13 +5944,14 @@ static const pg_unicode_range unicode_lowercase[690] = {0x00a7c8, 0x00a7c8}, {0x00a7ca, 0x00a7ca}, {0x00a7cd, 0x00a7cd}, + {0x00a7cf, 0x00a7cf}, {0x00a7d1, 0x00a7d1}, {0x00a7d3, 0x00a7d3}, {0x00a7d5, 0x00a7d5}, {0x00a7d7, 0x00a7d7}, {0x00a7d9, 0x00a7d9}, {0x00a7db, 0x00a7db}, - {0x00a7f2, 0x00a7f4}, + {0x00a7f1, 0x00a7f4}, {0x00a7f6, 0x00a7f6}, {0x00a7f8, 0x00a7f9}, {0x00a7fa, 0x00a7fa}, @@ -5912,6 +5977,7 @@ static const pg_unicode_range unicode_lowercase[690] = {0x010d70, 0x010d85}, {0x0118c0, 0x0118df}, {0x016e60, 0x016e7f}, + {0x016ebb, 0x016ed3}, {0x01d41a, 0x01d433}, {0x01d44e, 0x01d454}, {0x01d456, 0x01d467}, @@ -5948,7 +6014,7 @@ static const pg_unicode_range unicode_lowercase[690] = }; /* table of Unicode codepoint ranges of Uppercase characters */ -static const pg_unicode_range unicode_uppercase[656] = +static const pg_unicode_range unicode_uppercase[660] = { {0x000041, 0x00005a}, {0x0000c0, 0x0000d6}, @@ -6554,7 +6620,10 @@ static const pg_unicode_range unicode_uppercase[656] = {0x00a7c4, 0x00a7c7}, {0x00a7c9, 0x00a7c9}, {0x00a7cb, 0x00a7cc}, + {0x00a7ce, 0x00a7ce}, {0x00a7d0, 0x00a7d0}, + {0x00a7d2, 0x00a7d2}, + {0x00a7d4, 0x00a7d4}, {0x00a7d6, 0x00a7d6}, {0x00a7d8, 0x00a7d8}, {0x00a7da, 0x00a7da}, @@ -6571,6 +6640,7 @@ static const pg_unicode_range unicode_uppercase[656] = {0x010d50, 0x010d65}, {0x0118a0, 0x0118bf}, {0x016e40, 0x016e5f}, + {0x016ea0, 0x016eb8}, {0x01d400, 0x01d419}, {0x01d434, 0x01d44d}, {0x01d468, 0x01d481}, @@ -6609,7 +6679,7 @@ static const pg_unicode_range unicode_uppercase[656] = }; /* table of Unicode codepoint ranges of Case_Ignorable characters */ -static const pg_unicode_range unicode_case_ignorable[506] = +static const pg_unicode_range unicode_case_ignorable[518] = { {0x000027, 0x000027}, {0x00002e, 0x00002e}, @@ -6807,7 +6877,8 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x001aa7, 0x001aa7}, {0x001ab0, 0x001abd}, {0x001abe, 0x001abe}, - {0x001abf, 0x001ace}, + {0x001abf, 0x001add}, + {0x001ae0, 0x001aeb}, {0x001b00, 0x001b03}, {0x001b34, 0x001b34}, {0x001b36, 0x001b3a}, @@ -6887,7 +6958,7 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x00a770, 0x00a770}, {0x00a788, 0x00a788}, {0x00a789, 0x00a78a}, - {0x00a7f2, 0x00a7f4}, + {0x00a7f1, 0x00a7f4}, {0x00a7f8, 0x00a7f9}, {0x00a802, 0x00a802}, {0x00a806, 0x00a806}, @@ -6963,7 +7034,8 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x010d69, 0x010d6d}, {0x010d6f, 0x010d6f}, {0x010eab, 0x010eac}, - {0x010efc, 0x010eff}, + {0x010ec5, 0x010ec5}, + {0x010efa, 0x010eff}, {0x010f46, 0x010f50}, {0x010f82, 0x010f85}, {0x011001, 0x011001}, @@ -7040,6 +7112,9 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x011a59, 0x011a5b}, {0x011a8a, 0x011a96}, {0x011a98, 0x011a99}, + {0x011b60, 0x011b60}, + {0x011b62, 0x011b64}, + {0x011b66, 0x011b66}, {0x011c30, 0x011c36}, {0x011c38, 0x011c3d}, {0x011c3f, 0x011c3f}, @@ -7055,6 +7130,7 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x011d90, 0x011d91}, {0x011d95, 0x011d95}, {0x011d97, 0x011d97}, + {0x011dd9, 0x011dd9}, {0x011ef3, 0x011ef4}, {0x011f00, 0x011f01}, {0x011f36, 0x011f3a}, @@ -7077,6 +7153,7 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x016fe0, 0x016fe1}, {0x016fe3, 0x016fe3}, {0x016fe4, 0x016fe4}, + {0x016ff2, 0x016ff3}, {0x01aff0, 0x01aff3}, {0x01aff5, 0x01affb}, {0x01affd, 0x01affe}, @@ -7110,6 +7187,11 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x01e4eb, 0x01e4eb}, {0x01e4ec, 0x01e4ef}, {0x01e5ee, 0x01e5ef}, + {0x01e6e3, 0x01e6e3}, + {0x01e6e6, 0x01e6e6}, + {0x01e6ee, 0x01e6ef}, + {0x01e6f5, 0x01e6f5}, + {0x01e6ff, 0x01e6ff}, {0x01e8d0, 0x01e8d6}, {0x01e944, 0x01e94a}, {0x01e94b, 0x01e94b}, diff --git a/src/include/common/unicode_east_asian_fw_table.h b/src/include/common/unicode_east_asian_fw_table.h index db8bd0ad897..48c239f28b1 100644 --- a/src/include/common/unicode_east_asian_fw_table.h +++ b/src/include/common/unicode_east_asian_fw_table.h @@ -61,10 +61,10 @@ static const struct mbinterval east_asian_fw[] = { {0xFF01, 0xFF60}, {0xFFE0, 0xFFE6}, {0x16FE0, 0x16FE4}, - {0x16FF0, 0x16FF1}, - {0x17000, 0x187F7}, - {0x18800, 0x18CD5}, - {0x18CFF, 0x18D08}, + {0x16FF0, 0x16FF6}, + {0x17000, 0x18CD5}, + {0x18CFF, 0x18D1E}, + {0x18D80, 0x18DF2}, {0x1AFF0, 0x1AFF3}, {0x1AFF5, 0x1AFFB}, {0x1AFFD, 0x1AFFE}, @@ -106,7 +106,7 @@ static const struct mbinterval east_asian_fw[] = { {0x1F680, 0x1F6C5}, {0x1F6CC, 0x1F6CC}, {0x1F6D0, 0x1F6D2}, - {0x1F6D5, 0x1F6D7}, + {0x1F6D5, 0x1F6D8}, {0x1F6DC, 0x1F6DF}, {0x1F6EB, 0x1F6EC}, {0x1F6F4, 0x1F6FC}, @@ -116,11 +116,12 @@ static const struct mbinterval east_asian_fw[] = { {0x1F93C, 0x1F945}, {0x1F947, 0x1F9FF}, {0x1FA70, 0x1FA7C}, - {0x1FA80, 0x1FA89}, - {0x1FA8F, 0x1FAC6}, - {0x1FACE, 0x1FADC}, - {0x1FADF, 0x1FAE9}, - {0x1FAF0, 0x1FAF8}, + {0x1FA80, 0x1FA8A}, + {0x1FA8E, 0x1FAC6}, + {0x1FAC8, 0x1FAC8}, + {0x1FACD, 0x1FADC}, + {0x1FADF, 0x1FAEA}, + {0x1FAEF, 0x1FAF8}, {0x20000, 0x2FFFD}, {0x30000, 0x3FFFD}, }; diff --git a/src/include/common/unicode_nonspacing_table.h b/src/include/common/unicode_nonspacing_table.h index d67f5b3f281..dec117c0c25 100644 --- a/src/include/common/unicode_nonspacing_table.h +++ b/src/include/common/unicode_nonspacing_table.h @@ -212,7 +212,7 @@ static const struct mbinterval nonspacing[] = { {0x10D24, 0x10D27}, {0x10D69, 0x10D6D}, {0x10EAB, 0x10EAC}, - {0x10EFC, 0x10EFF}, + {0x10EFA, 0x10EFF}, {0x10F46, 0x10F50}, {0x10F82, 0x10F85}, {0x11001, 0x11001}, @@ -286,6 +286,9 @@ static const struct mbinterval nonspacing[] = { {0x11A59, 0x11A5B}, {0x11A8A, 0x11A96}, {0x11A98, 0x11A99}, + {0x11B60, 0x11B60}, + {0x11B62, 0x11B64}, + {0x11B66, 0x11B66}, {0x11C30, 0x11C3D}, {0x11C3F, 0x11C3F}, {0x11C92, 0x11CA7}, @@ -332,6 +335,10 @@ static const struct mbinterval nonspacing[] = { {0x1E2EC, 0x1E2EF}, {0x1E4EC, 0x1E4EF}, {0x1E5EE, 0x1E5EF}, + {0x1E6E3, 0x1E6E3}, + {0x1E6E6, 0x1E6E6}, + {0x1E6EE, 0x1E6EF}, + {0x1E6F5, 0x1E6F5}, {0x1E8D0, 0x1E8D6}, {0x1E944, 0x1E94A}, {0xE0001, 0xE01EF}, diff --git a/src/include/common/unicode_norm_hashfunc.h b/src/include/common/unicode_norm_hashfunc.h index c3935173fdb..a0b0e99adc0 100644 --- a/src/include/common/unicode_norm_hashfunc.h +++ b/src/include/common/unicode_norm_hashfunc.h @@ -41,344 +41,730 @@ typedef struct static int Decomp_hash_func(const void *key) { - static const int16 h[13687] = { + static const int16 h[13757] = { + 45, 32767, 157, 158, 159, 160, 161, 2883, + 52, 53, 54, 0, 412, -233, -232, -231, + -230, 60, 0, 0, -238, -238, -238, -238, + -238, 240, 241, 242, -342, -342, 822, 822, + 822, 822, 822, 822, 0, 0, 824, 824, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 267, 32767, 32767, 0, + 0, 32767, 0, 0, 32767, 32767, 32767, 4434, + 4435, -300, -300, -300, -300, -300, -300, 278, + 279, 280, 281, 282, 283, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 32767, 32767, 0, - 0, 0, 0, 32767, 0, 0, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 0, 0, 0, 32767, 0, 32767, 0, 32767, - 0, 32767, 0, 32767, 0, 32767, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1443, 1444, 1445, + -340, 1446, -340, 1447, 0, 0, 0, 32767, + 0, 0, 0, 0, 0, 0, 32767, 32767, + 216, 217, 218, 219, 0, -1058, 222, -363, + 0, 0, -259, 227, 228, 2942, 2943, 2944, + 32767, 32767, 232, 233, 234, 235, 236, 237, + -7938, 2075, 2076, 2077, 2078, 2079, 2080, 2081, + -4642, -4642, -4642, 2085, 2086, -4643, -4643, -4643, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -323, -323, + 14, 15, 321, -322, -322, -322, -322, -322, + -322, 22, 23, -322, 0, -321, -321, -321, + 0, 29, 30, -320, -320, -320, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + -112, 325, -112, -112, -112, 0, 0, -111, + -111, -111, -111, -111, -2832, 0, 0, 0, + 0, -357, 289, 289, 289, 289, 0, 0, + 0, 299, 300, 301, 302, 303, 0, -175, + 0, -278, -278, -278, -3885, -3885, -3885, -3885, + -3885, -3885, -3885, -3885, -3885, -3885, -3885, -3885, + -3885, 32767, 0, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, -4544, 99, 100, 101, 102, 0, + 0, 103, 103, 105, 104, 107, 108, 109, + 110, 108, 32767, 112, 109, 109, 109, 109, + 117, 32767, 110, 110, 110, 121, 111, 111, + -212, 125, 429, 430, 431, -212, -212, -212, + 130, -211, -211, 32767, 32767, -213, 109, -212, + -212, -212, 138, 32767, 32767, -212, -212, -212, + 108, 143, 144, 110, 110, 110, 110, 110, + 150, 151, 0, 437, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -2721, 111, + 111, 111, 166, -245, 401, 401, 401, 401, + 112, 173, 174, 413, 414, 415, 416, 417, + -60, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 4492, 449, 0, 32767, 451, 452, 0, 32767, + 32767, 4490, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 0, 0, 0, 0, 0, 32767, + 32767, 181, 182, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + -97, -97, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1243, -1243, -1243, 543, + -1242, 545, -1241, 207, 208, 209, 32767, 210, + 211, 212, 213, 214, 215, 32767, 32767, 0, + 0, 0, 0, 220, 1279, 0, 586, 224, + 225, 485, 0, 0, -2713, -2713, -2713, 32767, + 32767, 0, 0, 0, 0, 0, 0, 8176, + -1836, 0, 0, 0, 0, 585, 586, -577, + -576, -575, -574, -573, -572, 251, 252, -571, + -570, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 0, 32767, 32767, + 268, 269, 32767, 32767, 32767, 7164, -515, -6053, + -4164, -4164, 572, 573, 574, 575, 576, 577, + 0, 0, 0, 0, 0, 0, 0, 578, + 579, 580, 577, 578, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 32767, 32767, 32767, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 32767, 32767, 0, 32767, 32767, 0, 0, 0, - 0, 32767, 32767, 32767, 0, 0, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 32767, 0, 32767, 0, + 0, 32767, -379, -379, 32767, 0, 32767, 32767, + 28, 29, 30, 31, 3174, 33, 34, 5578, + 36, 37, 38, 39, 40, 41, 42, 43, + 1899, 1900, 1901, 47, 48, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 4693, 4694, 4695, 4696, 50, 32767, 32767, + 32767, 32767, 51, 52, 53, 54, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 627, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 262, 262, 608, 287, 609, 610, + 611, 291, 263, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 628, 629, 630, 631, + 632, 633, 634, 635, 636, 637, 638, 639, + 640, 641, 642, 643, 644, 645, 646, 647, + 648, 649, 650, 5, 6, 7, 8, 298, + 32767, 32767, 0, 0, 0, 0, 0, 0, + -239, 0, 32767, 608, 609, 610, 611, 612, + 2970, 614, -1770, -1770, 615, 616, 617, 618, + 619, 620, -1770, -1770, 621, 622, -1770, 623, + 624, 625, 626, 8242, -1770, -1770, -1770, -1770, + -1770, -1770, -1770, 4954, 4955, 4956, -1770, -1770, + 4960, 4961, 4962, 320, 321, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, + 341, 665, 666, 330, 330, 25, 669, 670, + 671, 672, 673, 674, 331, 331, 677, 356, + 678, 679, 680, 360, 332, 332, 683, 684, + 685, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 488, 52, 490, 491, 492, + 381, 382, 32767, 494, 495, 496, 497, 3219, + 388, 389, 390, 391, 749, 104, 105, 106, + 107, 397, 398, 399, 101, 101, 101, 101, + 101, 405, 581, 407, 686, 687, 688, 4296, + 4297, 4298, 4299, 32767, 32767, 32767, 32767, 4300, + 32767, 32767, 32767, 32767, 32767, 416, 32767, 655, + 656, 331, 658, 659, 660, 661, 662, 326, + 326, 326, 326, 326, 326, 4968, 32767, 325, + 32767, 324, 427, 428, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, -3708, 0, 0, 0, 0, 0, + 644, 645, 646, 305, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, -4570, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 0, 32767, 32767, 0, 32767, + 32767, 32767, 32767, 32767, 32767, 436, 0, 438, + 439, 440, 32767, 441, 442, 443, 444, 445, + 446, 3168, 32767, 32767, 32767, 0, -4059, -4059, + -4059, -4059, -4059, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 3570, -4045, 5968, -4044, 0, 450, 0, 0, + 0, 0, 0, 0, -4037, 0, 0, -4035, + 0, 0, 0, 0, 367, 367, 0, 366, + 0, 4702, 4703, 363, 0, 0, 0, 0, + 359, 359, 359, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 351, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 6024, 6025, 6026, 6027, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 674, 32767, 32767, + 32767, 32767, 32767, 32767, 776, 32767, 32767, 0, + 32767, 32767, 32767, 32767, 32767, 0, 0, 32767, + 32767, 32767, 32767, 32767, 463, 464, 32767, 465, + 3185, 3186, 32767, 3187, 3188, -1553, 0, 0, + 712, 67, 68, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 0, 0, 0, 32767, 0, 0, + 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 18, 471, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 472, + 473, 474, 475, 476, 32767, 32767, 32767, 32767, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 4709, 4710, 4711, + 4712, 4713, 4714, 4715, 9329, 4717, 4718, 4719, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 1719, -67, 32767, + 32767, 32767, 32767, 32767, 0, 0, 32767, 32767, + 32767, 32767, 32767, 32767, 479, 480, 481, 482, + 0, 32767, 483, -102, 0, 0, 0, 486, + 487, 3201, 3202, 3203, 3204, 32767, 491, 492, + 493, 494, 495, 496, 0, 0, 497, 498, + 499, 500, -84, -84, 1080, 1080, 1080, 1080, + 1080, 1080, 1080, 1080, 1080, 1080, 32767, 32767, + 32767, 1077, 1077, 1077, 1077, 1077, 1077, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1069, + 1069, 1069, 1069, 1069, 1069, 1069, 1069, 32767, + 32767, 1950, 1067, 1067, 1067, 1067, 1067, 1067, + 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 6028, + 4805, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 1037, 1037, + 1037, 1037, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 798, 32767, 32767, 32767, 1024, + 1024, 1024, 1024, 1024, 1024, 895, 895, 799, + 32767, 32767, 0, 0, 800, 0, 32767, 32767, + 32767, 32767, 32767, 32767, 801, -373, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 1, 32767, 2, 32767, 32767, 32767, 32767, 2792, - 32767, 32767, 4, 5, 6, 7, 32767, 32767, - 8, 9, 10, 32767, 11, 12, 13, 1734, - 14, -822, -822, 17, 18, 3020, 1739, 3021, - 3022, 3023, 1110, 24, 3024, 3025, 27, -3019, - 32767, 29, 30, 3026, 3027, 33, 34, 5016, - 1754, -4252, 36, 37, -4254, -4254, -4254, 32767, - 40, 41, 42, 43, 44, 45, 1912, 46, - 47, 48, 49, 50, 51, 52, 53, 54, - 1770, 55, 606, 57, 58, 59, 60, 1776, - 1777, 61, 62, 63, 64, 65, 32767, 66, - 32767, -1290, 6662, 3534, 3534, 3534, -172, 3322, - -170, -169, -168, -167, 3331, 1788, 0, 1790, - 1791, 1792, 1793, 1794, 1795, 1796, 1797, 1798, - 1799, 3354, 1801, 1802, -964, -964, -964, -964, - 1807, 4976, 4976, 4976, 4976, 4976, 4976, 1814, - 1815, 4974, 2192, 11244, 2194, 11245, 0, 0, - 1605, 11251, 0, 11252, 0, 0, 3571, 3571, - -47, -47, 0, 0, -124, -123, -122, -4877, - -4877, -119, 32767, 32767, -118, 0, -116, -11032, - -114, -113, -112, 32767, 32767, -887, -110, -109, - -885, -107, 5320, 32767, 32767, -105, -882, 5328, - -102, -101, -100, -99, -4221, -4221, -4221, -95, - -94, -93, -92, -4221, -4221, -4221, -4221, 32767, - 32767, -4223, -4223, -4223, -4223, -4223, -4223, -4223, - -4223, -5481, -4223, -4223, -4223, -4223, -4223, -4223, - -4223, -4223, -4223, -4223, -4223, -4223, -4223, -4223, - -5495, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 1839, 1840, 1841, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 4663, 4664, 32767, - 32767, -4255, -4255, 32767, 0, 0, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -4268, -4268, 5881, 5882, 4722, 5884, 5885, 5886, - 5887, 32767, 5888, 5889, 5890, 5891, 5892, 5893, - 5894, 5895, 5896, 5897, 5898, 185, 186, -3976, - -3976, -3976, -3976, 6000, 6001, 6002, 6003, 6004, - 6005, 6006, 198, 5911, -3968, -3968, -826, -3968, - -3968, -3968, -3968, -3968, 208, 209, 32767, -3967, - -3967, -3032, -3967, -3967, -3030, 5922, 5923, -813, - 5925, 5926, 219, 220, 5929, 5930, 5931, 224, - -4290, -4290, -4290, -4290, -4290, -4290, -4290, 5940, - 5941, -4292, -4292, -4292, -4292, -4292, -4292, -4292, - -4292, 5950, 5951, 0, 0, 0, 0, 245, - 0, 0, 0, 0, 0, 0, 0, 253, - 254, 255, 256, -635, 258, 259, 260, 261, - 262, 263, 0, 265, 266, 267, 0, 0, - 268, 269, 32767, 32767, 32767, 32767, 32767, 32767, - 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 5981, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 511, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 6565, 4677, + 4678, -57, -57, -57, -57, -57, -57, 521, + 522, 523, 524, 525, 526, 527, -50, -50, + -50, -46, -46, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 545, + 546, 547, 548, 549, 550, 551, 552, 553, + 554, 555, 556, 32767, 557, 32767, 558, 559, + 32767, 939, 940, -3772, 562, 32767, 32767, -3771, + 4725, 32767, 32767, 32767, 32767, 32767, -3771, -3770, + -5249, -5249, 2900, -5249, -3771, 32767, 2997, -1310, + 32767, 32767, 32767, 2998, 2999, 3000, 3001, 3002, + 3003, 3004, 3005, 3006, 3007, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 4727, 32767, 4728, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 2763, - 975, 32767, 32767, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 4729, 3009, 3010, 3011, 32767, + 32767, 6740, -4, 4734, -4, 6744, -6601, 1079, + 6618, 4730, 4731, -4, -4, -4, -4, -4, + -4, -4, -4, -321, -4, -4, -4, -4, + -4, -4, -4, 0, 0, 0, 0, 0, + 551, 551, 551, 551, 551, 551, 551, 551, + 551, 551, 551, 551, 551, 551, 551, 551, + 551, 551, 551, 5295, 5296, -9309, -1629, 551, + 551, 551, 551, 551, 551, 551, 551, 551, + 551, 551, 551, 551, 551, -2591, 551, 551, + -4992, 551, 551, 551, 551, 551, 551, 551, + 551, -1304, -1304, -1304, 551, 551, 32767, 550, + 550, 550, 550, 550, 550, 550, 550, 550, + 550, 550, 550, 550, 550, 550, 550, 550, + 550, 550, 550, 550, 550, 550, 550, 550, + 550, 550, 550, 550, 550, 550, 550, 550, + 550, 550, 550, 550, 550, 550, 550, 550, + 550, 8699, 550, 6744, 0, 4738, 0, 6748, + -6597, 1083, 6622, 4734, 4735, 0, 0, 0, + 0, 0, 0, 0, 0, -317, 0, 0, + 0, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 5343, 0, 0, 5344, + 0, 0, 0, 0, 0, 0, -40, 0, + -41, 0, 542, 0, 0, 0, 0, 845, + 0, 0, 0, 0, 0, 833, 0, 835, + 836, 846, 0, 0, 0, 0, 0, 0, + 0, -2357, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 289, + 0, 0, 0, 0, 0, 0, 0, 931, + 586, 586, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 4382, 4382, 4382, 0, 7408, - 4383, 4383, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -4027, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -1642, -1641, -1640, -1639, - -1638, 3694, -1636, 3697, 3698, 3699, 0, 0, - -1627, 0, 0, -1622, -1621, 0, 6198, -1616, - -1615, -1614, -1613, 0, -1610, -1609, -1608, 0, - 0, 0, 0, 0, 0, 9558, -10546,0, - 6270, 6271, 6272, 6273, 6274, 6275, -3369, 6277, - 6545, 6279, 9583, 6281, -1402, -1402, 6284, 6285, - 304, 1947, 1947, 1947, 1947, 1947, -3384, 1947, - -3385, -3385, -3385, 315, 316, 1944, 318, 319, - 1942, 1942, 322, -5875, 1940, 1940, 1940, 1940, - 328, 1939, 1939, 1939, 332, 333, 334, 335, - 336, 337, -9220, 10885, 340, -5929, -5929, -5929, - -5929, -5929, -5929, 3716, -5929, -6196, -5929, -9232, - -5929, 1755, 1756, -5929, -5929, 53, -1589, -1588, - -1587, -1586, -1585, 3747, -1583, 3750, 3751, 3752, - 53, 53, -1574, 53, 53, -1569, -1568, 53, - 6251, -1563, -1562, -1561, -1560, 53, -1557, 5101, - -1556, 52, 52, 52, 52, 52, 52, 9610, - -10494,52, 6322, 6323, 6324, 6325, 6326, 6327, - -3317, 6329, 6597, 6331, 9635, 6333, -1350, -1350, - 6336, 6337, 356, 1999, 1999, 1999, 1999, 1999, - 0, 0, -2173, -3888, -3337, -5616, 0, 0, - 432, -2164, 1985, 0, 0, 0, 1980, 0, - 0, 0, 0, -1319, -4683, 1975, 368, 369, - 370, 371, 372, 0, -9185, 0, 374, -5895, - -5895, 0, 0, 0, 0, 864, 437, -16, - -16, 440, 32767, 441, 442, 443, -13, 445, - 446, 447, 32767, 32767, 32767, 32767, 32767, 6042, - 6043, 6044, 6045, 430, 431, 0, 2597, -1551, - 435, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 448, 449, 450, 32767, 451, - 452, 32767, 32767, 32767, 453, 0, 0, 0, - 0, 0, -428, 0, 454, 455, 0, 456, - 0, 0, 0, 457, 0, 0, 0, 0, - 458, 459, 460, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 646, 646, + 646, 646, 646, 646, 646, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 3733, 3734, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 462, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 463, 464, 0, 465, - 0, 0, 0, 466, 0, 0, 0, 0, - 467, 0, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 587, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 5493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 5530, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -4339, -4339, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -7353, -7353, -7353, -5439, - 0, 0, -7353, -4354, 0, 0, 485, 486, - 487, 488, 489, 490, 0, 0, 491, 492, - 493, 494, -2541, -5542, 0, 0, -5544, -5544, - -3630, -2543, -5542, -5542, -2543, 504, -2543, -2543, - -2543, -5538, 0, 0, -2545, -2545, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 326, 0, 0, 0, + 0, 0, 337, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 340, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 337, 338, 0, 0, 0, 0, 0, 0, + 0, 344, 345, 0, 0, 0, 0, 0, + 0, 349, 350, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 3784, 3784, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 3033, 3034, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 6047, 6048, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 4395, 4396, 4397, + 690, 691, 692, 693, 694, 51, 51, 51, + 32767, 32767, 32767, 32767, 32767, 32767, 4748, 4749, + 4750, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 3045, 32767, 32767, + 32767, 4751, 4752, 4753, 4754, 11, 11, 14617, + 32767, 32767, 698, 4758, 4759, 4760, 4761, 4762, + 704, 705, 706, 707, 708, 709, 710, 711, + 712, 713, 714, 715, 716, -2853, 4763, -5249, + 4764, 721, 32767, 722, 723, 724, 725, 726, + 727, 4765, 729, 730, 4766, 732, 733, 734, + 735, 369, 370, 738, 373, 740, -3961, -3961, + 380, 744, 745, 746, 747, 389, 390, 391, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 8673, 32767, 32767, + 5317, 32767, 5318, 5319, 32767, 32767, 32767, 32767, + 32767, 5320, 5321, 5322, 32767, 32767, 32767, 32767, + 32767, 32767, 752, 32767, 32767, 753, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 754, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 4814, 32767, + 32767, 32767, 756, 757, 758, 759, 32767, 32767, + 32767, 760, 761, 762, 763, 764, 765, -2804, + 4812, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, -1299, 32767, + 32767, 32767, 5324, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3448, - 3448, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 5320, 32767, 32767, 768, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2322, 770, 771, 32767, + 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 772, 773, 32767, + 774, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 775, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, -3213, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 2540, 2540, - 2540, 2540, 2540, 0, 4830, 4831, -307, -307, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, -3373, + 4777, 32767, -1417, 8191, 32767, 8547, 11926, 4247, + 32767, 32767, 8550, 8551, 32767, 32767, 32767, 32767, + 32767, 8552, 8553, 32767, 8554, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, + 777, 32767, 32767, 32767, 32767, 32767, 778, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 0, 0, 0, 0, 0, 779, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 780, 781, 782, 32767, 32767, + 783, 8555, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 887, 888, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 2537, 2537, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 889, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 784, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 8556, 8557, 8558, 8559, 32767, 32767, 32767, 785, + 32767, 32767, 32767, 32767, 32767, 8560, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4439, + 4785, 32767, 32767, 32767, 4821, -1372, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 786, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 787, 32767, 32767, 890, 789, + 790, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 891, 32767, 32767, 32767, 32767, 32767, 791, + 792, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 793, + 32767, 32767, 32767, 0, 32767, -3326, 32767, 32767, + 32767, 32767, 32767, 32767, 892, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 893, 894, 895, 0, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 794, 795, -4, + 797, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 0, 0, + 0, 0, 0, 0, 32767, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 32767, + 0, 0, 32767, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1171, 1171, 1171, 0, 0, + 0, 0, 1175, 5650, 5650, 5650, 2043, 2043, + 2043, 2043, 2043, 2043, 2043, 2043, 2043, 2043, + 2043, 2043, 2043, 2043, 2043, 0, 2044, 2044, + 2044, 2044, 2044, 2044, 2044, 2044, 2044, 2044, + 2044, 2044, 2044, 2044, 2044, 2044, 2044, 2044, + 2044, 32767, 2043, 2043, 2043, 2043, 2043, 2043, + 2043, 2043, 2043, 32767, 0, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 5425, 5426, 5427, 4564, + 6340, 5429, 5430, 6343, 6344, 4849, 4567, 5436, + 5437, 4567, 6350, 6351, 4569, 4569, 4569, 6355, + 4570, 6357, 4571, 6359, 5443, 6361, 4573, 4573, + 4573, 4573, 6366, 4574, 4574, 4574, 6370, 4575, + 4575, 4575, 4575, 5448, 4575, 4575, 6378, 4576, + 5450, 4576, 4576, 4576, 4576, 6385, 6056, -2092, + 6388, 4580, 4580, 4580, 4580, 4580, 6394, 6395, + 6396, 6397, 6398, 6399, 4586, 4586, 4586, 4586, + 4586, 4586, 4586, 4586, 4586, 4586, 4586, 4817, + 4586, 4586, 4586, 4586, 4586, 4586, 4586, 4586, + 4586, 4586, 4586, 4586, 10620, 4586, 4586, 10621, + 4586, 4586, 4586, 4586, 4586, 4586, 4586, 10067, + 10068, 4586, 4586, 4586, 4586, 4586, 10069, 4586, + 4586, 4586, 4586, 4586, 6448, 6449, 6450, 6451, + 6452, 6453, 6454, 6455, 6456, 9393, 6458, 6459, + 6460, 6461, 6462, 5983, 6464, 5984, 6466, 5985, + -129, -129, -129, 0, -129, -129, 2253, 4611, + 2255, -129, -129, 2256, 2257, 2258, 2259, 2260, + 2261, -129, -129, 2262, 2263, -129, 2264, 2265, + 2266, 2267, 9883, -129, -129, -129, -129, -129, + -129, -129, 6595, 6596, 6597, -129, -129, 6601, + 6602, 6603, -129, -129, -129, 5679, 6025, 6061, + 6062, -2086, 6064, -129, -129, 1880, 6068, -129, + 13217, 5538, 0, 5539, 0, 138, -129, 139, + 140, 141, -129, 6038, 6081, 5319, 5319, 5319, + 5319, -129, 0, 0, -129, -129, -129, 6048, + 6049, 6050, 6051, -129, -129, -129, -129, -129, + -129, -129, -129, -129, -129, -129, -129, -129, + -129, -129, -129, -129, -129, -129, -129, -129, + -129, -129, -129, -129, -129, -129, -129, -129, + -129, 4712, -129, -129, -129, -129, 4716, -129, + -129, 4718, -1776, -1737, 32767, 6112, 6593, 6113, + 6595, 6114, 0, 0, 0, 129, 0, 0, + 2382, 4740, 2384, 0, 0, 2385, 2386, 2387, + 2388, 2389, 2390, 0, 0, 2391, 2392, 0, + 2393, 2394, 2395, 2396, 10012, 0, 0, 0, + 0, 0, 0, 0, 6724, 6725, 6726, 0, + 0, 6730, 6731, 6732, 0, 0, 0, 5808, + 6154, 6190, 6191, -1957, 6193, 0, 0, 2009, + 6197, 0, 13346, 5667, 129, 5668, 129, 267, + 0, 268, 269, 270, 0, 6167, 6210, 5448, + 5448, 5448, 5448, 0, 129, 129, 0, 0, + 0, 6177, 6178, 6179, 6180, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4841, 0, 0, 0, 0, + 4845, 0, 0, 4847, -1647, -1608, -129, -129, + -129, -129, -1612, -129, -129, -129, -129, -129, + -129, -129, -129, -129, -129, -129, -129, -129, + -129, -129, 257, 257, -129, 4871, -129, 700, + -129, 270, 6749, 6395, 6356, 6752, 10131, 2452, + 273, 6756, 6757, 6758, 6759, 6760, 6761, 6762, + 6763, 6764, 6765, 6766, 6767, 6768, 3416, 275, + 276, 5820, 6773, 6414, 6775, 6776, 6416, 6778, + 6417, 6780, 6781, 6782, 6783, 6784, 6785, 6786, + 6787, 6788, 6789, 6790, 6791, 6792, 6793, 6794, + 6795, 6796, 6797, 6798, 6799, 6800, 6801, 6439, + 6803, 6440, 6805, 6806, 6807, -743, 6809, 6810, + 6811, 6812, 6813, 6814, 11191, 6450, 6450, 6450, + 6450, 6820, 6821, 6452, 6452, 6824, 6825, 6454, + 6454, 6828, 6829, 6830, 6831, 6832, 6833, 11259, + 6460, 6836, 6837, 6462, 6462, 6840, 6841, 4945, + 4945, 6844, 6845, 6846, 6847, 0, -1518, -1479, + 0, 0, 0, 0, -1483, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 386, 386, 0, 5000, + 0, 829, 0, 399, 0, 0, 830, 871, + 832, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 834, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 837, 838, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 7436, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 840, + 1158, 0, 0, 0, 0, 0, 0, 1164, + 1164, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4067, 4067, 4067, 4067, 4067, + 0, 0, 0, 0, 842, 0, 843, 0, + 844, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 847, 0, 0, 0, 0, 848, 0, + 0, 0, 0, 849, 0, 0, 0, 1224, + 1224, 0, 0, 0, 0, 0, 0, 0, + 850, 0, 0, 0, -84, 0, 0, 0, + 851, 852, 853, 854, 855, 856, 857, 858, + 859, 860, 861, 862, 863, 0, 0, 864, + 865, 866, -64, 282, 0, 869, 870, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 871, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 872, 0, 0, 0, + 0, 873, 0, 0, 0, 0, 874, 0, + 0, 0, 0, 875, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 876, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 231, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 6034, 0, 0, 6035, 0, 0, + 0, 0, 0, 0, 0, 5481, 5482, 0, + 0, 0, 0, 0, 5483, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4798, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -2358, 0, 0, 0, + 0, 0, 0, 0, 0, -4613, 0, 0, + 0, 0, 0, 0, 0, 1519, 1480, 1480, + 5254, -2425, 1480, 1480, 1480, 1519, 1519, 1519, + 1519, 1519, 1519, 1519, 1519, 1519, 878, 1519, + 1519, 1519, -4617, 1519, 1519, 1519, 1519, 1519, + 1519, 4024, 1519, 1519, 1519, 1519, 1519, 879, + -4659, 880, 881, 1519, 1519, 1519, 1519, 1519, + 6261, 6262, 1519, 1519, 1519, 1519, 1519, 1519, + 1519, 1519, 1519, 1519, 6259, 1519, 1519, 1519, + 1519, 1519, 1519, 1519, 1519, 1519, 6260, 1519, + 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, + 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, + 1519, 6318, 1519, 1519, 1519, 1519, 1519, 1519, + 1519, 0, 0, 0, 0, 0, 0, 0, + 0, 1440, 1440, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 4774, 0, 0, + 0, 0, 0, 0, 0, 882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 4166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 6042, 6043, 6044, 6045, 6046, 0, 0, 0, + 0, 0, 0, 0, 0, 6035, 6036, 6037, + 6038, 6039, 6040, 6041, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -5, 0, 0, + 0, 0, 0, 0, 0, -1164, -1164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 4185, 4186, 0, 0, + 0, 4737, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 883, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -796, -795, - -794, -793, -792, -791, 1061, 1062, 1063, 1064, - 1065, 0, 0, 0, 0, 0, 0, 0, - -785, -784, -783, -782, -4016, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 4739, 0, 0, 0, 0, 0, 0, + 0, 0, -96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -39, -39, 3735, -3944, -39, -39, -39, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, -1097, -1096, -1095, -5270, -5270, -1094, -1093, - -1092, -2026, -1090, -1089, -2025, -2024, -765, -4241, - -10978,-10978,-5270, -5270, -10978,-10978,0, 0, + -641, 0, 0, 0, -6136, 0, 0, 0, + 0, 0, 0, 2505, 0, 0, 0, 0, + 0, -640, -6178, -639, -638, 0, 0, 0, + 0, 0, 4742, 4743, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 4740, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3849, 0, - 0, 0, 0, 3854, 2311, 523, 2313, 0, + 4741, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4799, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 5994, 4146, 4146, 5997, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3774, -3905, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 32767, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 350, + 350, 0, 32767, 0, 0, 0, 0, 32767, + 32767, 32767, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 4744, 4745, + -9860, -2180, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + -3142, 0, 0, -5543, 0, 0, 0, 0, + 0, 0, 0, 0, -1855, -1855, -1855, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 8149, 0, 6194, -550, + 4188, -550, 6198, -7147, 533, 6072, 4184, 4185, + -550, -550, -550, -550, -550, -550, -550, -550, + -867, -550, -550, -550, -550, -550, -550, -550, + 0, 0, -549, -549, 0, 0, -547, 0, + 0, -545, -545, 0, 0, -543, -543, 4800, + -543, 4801, 4802, -542, -542, -542, -542, -542, + -542, -582, -542, -583, -542, 0, 0, -541, + 0, -540, 305, -540, -540, -540, -540, -540, + 0, -539, 296, 297, 307, -539, -539, -539, + -539, -539, -539, -539, -2896, -539, -539, -539, + -539, -539, -539, -539, -539, -539, -539, -539, + -539, 32767, 32767, 32767, -542, -542, -542, -542, + -542, -542, 32767, 32767, -544, -544, -544, -544, + -544, -544, 32767, 32767, -546, -546, -546, -546, + -546, -546, 6181, 32767, -548, -548, -548, 6185, + 6186, 6187, 380, 35, 0, 0, 8149, 0, + 6194, 6195, 4187, 0, 6198, -7147, 533, 6072, + 534, 6074, 5937, 6205, 5938, 5938, 5938, 32767, + 42, 0, 32767, 763, 32767, 32767, 6212, 32767, + 6084, 6214, 6215, 6216, 40, 40, 40, 40, + 6221, 6222, 32767, 6223, 6224, 6225, 6226, 32767, + 6227, 32767, 6228, 32767, 32767, 32767, 32767, 32767, + 32767, 6229, 32767, 32767, 32767, 32767, 6230, 32767, + 6231, 32767, 6232, 32767, 6233, 6234, 1394, 32767, + 6236, 6237, 32767, 1393, 32767, 32767, 1392, 32767, + 7848, 32767, 0, 32767, 0, 32767, 0, 32767, + 6115, 6116, 32767, 6117, 32767, 32767, 1378, 3735, + 6120, 6121, 32767, 3736, 3736, 3736, 3736, 3736, + 6127, 6128, 32767, 3737, 6130, 3738, 3738, 32767, + 3737, -3878, 6135, 6136, 32767, 6137, 32767, 6138, + 6139, -584, -584, -584, 6143, 6144, -585, -585, + -585, 32767, 6148, 6149, 342, -3, -38, -38, + 8111, -38, 6156, 6157, 4149, -38, 6160, -7185, + 495, 6034, 496, 32767, 32767, 32767, 32767, 32767, + 5895, 6166, 0, 32767, 720, 721, 722, 723, + 6172, 32767, 6044, 6174, 6175, 6176, 0, 0, + 0, 0, 6181, 6182, 6183, 6184, 6185, 6186, + 6187, 6188, 6189, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 2970, 32767, 32767, 32767, 32767, 1264, 1264, 1264, - 2215, 2216, 2217, 2218, 2219, 2220, 2221, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 5792, 32767, - 362, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -3774, 32767, 32767, -3776, -3776, -3776, -3776, - -5034, -3776, -3776, 32767, 32767, -3778, -3778, -3778, - -3778, -3778, -3778, 32767, 32767, -3780, -3780, 32767, - -5053, -3781, -3781, -3781, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, -157, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 627, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 4695, 32767, - 32767, 2985, 2986, 32767, 32767, 32767, 32767, 628, - 629, 630, 631, 632, 633, -5911, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, - 645, 646, 647, 648, 649, 650, 651, 652, - 653, 654, 32767, 32767, 32767, 32767, 32767, 32767, - -2208, 32767, 8339, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 4699, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4700, - 4701, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 2745, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 4786, + 4787, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 5998, 0, 32767, - 32767, 32767, 32767, 0, 0, 32767, 32767, 32767, - 32767, 0, 2987, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -1459, - -1459, -1459, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -1496, -2931, 32767, - 32767, 32767, 655, 656, 657, 658, 659, 660, - 661, 662, 663, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 664, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 4743, 32767, 32767, 32767, -3717, -3716, - 667, -6740, 32767, -3714, 670, 671, 672, 673, - 674, 675, 676, 677, 32767, 678, 679, 680, - 32767, 681, 4709, 683, 684, 685, 2990, 32767, - 32767, 32767, 2991, 2992, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 538, 32767, 32767, 32767, 32767, -1583, 32767, + 32767, 32767, 32767, 32767, 32767, -3270, -3270, -3270, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 4671, 4672, 4673, -68, + -68, 4676, 4677, 4678, 4679, 4680, 4681, 32767, + 71, 6566, 32767, 32767, 4682, 4683, 4684, 4685, + 4686, 4687, 4688, 4689, 4690, -50, 4692, 4693, + 4694, 4695, 4696, 4697, 4698, 4699, 4700, 4701, + 4702, 4703, 4704, 4705, 4706, 4707, 4708, 4709, + -89, 4711, 4712, 32767, 4713, 4714, 4715, 4716, + 6236, 6237, 6238, 6239, 6240, 6241, 6242, 6243, + 4804, 4805, 6246, 6247, 6248, 6249, 6250, 6251, + 6252, 6253, 6254, 6255, 1482, 6257, 6258, 6259, + 6260, 6261, 6262, 6263, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, -3370, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 686, -5583, -5583, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -1622, + 32767, 32767, 32767, 32767, 32767, 32767, 6264, 6265, + 6266, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4710, + 32767, 32767, 32767, 6268, 6269, 6270, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, -2053, 32767, + 32767, 32767, 32767, 6310, 6272, 6273, 6274, 6275, + 6276, 6277, 6278, 6279, 6280, 6922, 6282, 6283, + 6284, 12421, 6286, 6287, 6288, 6289, 6290, 6291, + 3787, 6293, 6294, 6295, 6296, 6297, 6938, 12477, + 6939, 6939, 6302, 6303, 6304, 6305, 6306, 1565, + 1565, 6309, 6310, 6311, 6312, 6313, 6314, 32767, + 32767, 32767, 32767, 1575, 6316, 6317, 6318, 6319, + 6320, 6321, 6322, 6323, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 6324, 6325, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 4679, 4711, 4681, 4682, 4683, 4684, 4685, 4686, - 4687, 4688, 4689, 0, 0, 32767, 0, 32767, - 32767, 32767, 0, 5257, 32767, 32767, 32767, 6885, - 6619, 9923, 6621, -1062, -1062, 6624, 6625, 644, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 1637, 32767, 1637, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 4690, 4691, 4692, 4693, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 4015, -5630, -5897, -5630, -8933, -5630, - 2054, 2055, -5630, -5630, 352, -1290, -1289, -1288, - -1287, -1286, 714, 715, 2889, 4605, 4055, 6335, - 720, 721, 32767, 2886, -1262, 724, 725, 726, - -1253, 728, 729, 730, 731, 2051, 5416, -1241, - 367, 367, 367, 367, 367, 740, 9926, 742, - 369, 6639, 6640, 746, 747, 748, 749, -114, + 32767, 32767, 32767, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 4796, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 3924, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, -8006, -8006, -2024, -3666, -3665, - -3664, -3663, -3662, 1670, -3660, 1673, 1674, 1675, - -2024, -2024, -3651, -2024, -2024, 32767, 32767, 32767, - 32767, 32767, -2866, 32767, 32767, -2865, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -2866, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -2866, 32767, - 32767, 32767, -4485, -4485, 758, 759, 32767, 32767, - 32767, 760, -2863, -2862, -2861, -2860, -2859, -2858, - -2857, 32767, 32767, 32767, 32767, 32767, 32767, 3014, - 3015, 3016, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 4795, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 0, 32767, 32767, 32767, 32767, 3017, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 2180, 2180, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 768, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 769, 770, 771, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 32767, 32767, 32767, 32767, 32767, 772, 773, 32767, - 774, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3018, - 32767, 32767, 0, 32767, 4716, 4717, 32767, 32767, - 32767, 32767, 32767, 32767, 3019, 0, 3919, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 32767, 32767, 3643, - 32767, 32767, 3641, 32767, 32767, 0, 0, -3355, - 0, 0, 0, 0, 1998, 0, 0, 0, - 0, 0, 0, -3366, -3366, -3366, 0, 0, - -3368, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -388,44 +774,76 @@ Decomp_hash_func(const void *key) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3365, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 676, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 677, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 13799, 0, 0, 0, 9279, 2994, 32767, - 8461, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 1755, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 3196, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -4700, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -3816, - 360, 361, 362, -572, 364, 365, -571, -570, - 689, -2787, -9524, -9524, -3816, -3816, -9524, -9524, - -9524, -3816, 699, 700, 701, 702, 703, 704, - 705, 706, 707, 8659, 5531, 5531, 5531, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, - 32767, 32767, 32767, 32767, 32767, 4746, 4747, 32767, - 4748, 32767, 32767, 32767, 4749, -507, -507, -507, - -507, -507, -507, -507, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 0, 32767, 0, 32767, 0, + 32767, 0, 32767, 0, 32767, 0, 32767, 32767, + 0, 32767, 0, 32767, 0, 32767, 32767, 32767, + 32767, 4803, 32767, 0, 0, 32767, 0, 0, + 32767, 0, 0, 32767, 0, 0, 32767, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -872, - 32767, 32767, 3030, 3031, 3032, 3033, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -3585, -3585, -3585, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 32767, 32767, 32767, 32767, 0, 0, 0, 0, + 32767, 0, 0, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 32767, 0, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -2044, -2044, -873, -873, + -873, 0, -2043, -2043, -2043, -868, 3607, 3607, + 3607, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -10784,-5076, -561, - -560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2304, 2304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -434,267 +852,23 @@ Decomp_hash_func(const void *key) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -3368, -3368, - 798, 32767, -372, -372, -372, -372, -372, -372, - 0, 1160, 0, 0, 0, 0, 0, 0, - 1161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5714, 5714, 9877, 9878, 9879, 9880, 0, - 0, -97, -97, -97, -97, -97, 5712, 0, - 0, 9880, 6739, 0, 9882, 9883, 9884, 9885, - 5710, 0, 3820, 679, 0, 0, 9886, 9887, - 8951, 0, 0, 6737, 0, 0, 5708, 5708, - 0, 0, 0, 5708, 10223, 10224, 10225, 10226, - 10227, 10228, 10229, 0, 0, 10234, 10235, 10236, - 10237, 10238, 10239, 10240, 10241, 0, 0, 5952, - 5953, 5954, 5955, 5711, 5957, 5958, 5959, 5960, - 5961, 5962, 5963, 5711, 5711, 5711, 5711, 6603, - 5711, 5711, 5711, 5711, 5711, 5711, 5975, 5711, - 5711, 5711, 5979, 5980, 32767, 32767, 32767, 32767, - 803, 32767, 32767, 32767, 804, 32767, 32767, 32767, - 32767, 32767, 32767, 805, 806, 32767, 807, 808, - 32767, 809, 0, 5999, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1389, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 840, 841, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 842, 32767, 843, 32767, 844, 32767, 32767, 32767, - 32767, 32767, 0, 0, 10606, 0, 845, 5378, - 0, 0, 0, 0, 1113, 1113, 1113, 1113, - 1113, 1113, 1113, 1113, 1113, -6838, -3709, -3708, - -3707, 0, -3493, 0, 0, 0, 0, -3497, - -1953, -164, -1953, -1953, 5407, 5408, -1955, -1955, - -1955, -1955, -1955, -1955, -3509, -1955, -1955, 812, - 813, 814, 815, -1955, -5123, -5122, -5121, -5120, - -5119, -5118, -14675,5430, -5115, -2332, -11383,-2332, - -11382,-136, -135, -1739, -11384,-11651,-11384,-131, - -130, -3700, -3699, -80, 5447, -126, -125, 0, - 0, 0, 4756, 4757, 0, 5456, -1715, 0, - -117, 0, 10917, 0, 0, 0, 5465, 5466, - 776, 0, 0, 777, 0, -5426, 5473, 5474, - 0, 778, -5431, 0, 0, 0, 0, 4123, - 4124, 4125, 0, 0, 0, 0, 4130, 4131, - 4132, 4133, 4134, 4135, 4136, 4137, 4138, 4139, - 4140, 4141, 4142, 4143, 5402, 4145, 4146, 4147, - 4148, 4149, 4150, 4151, 4152, 4153, 4154, 4155, - 4156, 4157, 4158, 5431, 5432, 4161, 4162, 4163, - 4164, 4165, 4166, 4167, 4168, 4169, 4170, 4171, - 4172, 4173, 4174, 4175, 4176, 4177, 4178, 4179, - 32767, 32767, 4180, 4181, 4182, 4183, 4184, 4185, - 4186, 4187, 4188, 4189, 4190, 4191, 4192, 6044, - 6045, 6046, 6047, 6048, 4198, 4199, 4200, 4201, - 4202, 4203, 4204, 4205, 4206, 4207, 4208, 974, - 4210, 11136, 3906, 3907, 3908, 3909, 3910, 3911, - 3912, 3913, 3914, 3915, 3916, 3917, 5988, 5989, - 0, 0, 3919, 3920, 3921, 3922, -6053, -6053, - -6053, -6053, -6053, -6053, -6053, -244, -5956, 3924, - 3925, 784, 3927, 3928, 3929, 3930, 3931, -244, - -244, 3932, 3933, 3934, 3000, 3936, 3937, 3001, - 3002, 4261, 785, -5952, -5952, -244, -244, -5952, - -5952, -5952, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -5739, -408, - -408, -408, 32767, 32767, 32767, 32767, 3724, 823, - 824, 32767, 32767, 32767, 32767, 32767, 32767, -421, - -2028, -2027, -2026, -2025, -2024, 517, -4312, -4312, - 827, 828, 522, 523, 524, 525, 526, 527, - 528, 529, 530, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, -3617, 550, 551, - 552, 553, 554, 555, 556, 32767, 557, 32767, - 558, 559, 32767, 560, 561, 32767, 562, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -1191, -1191, - -1191, -2792, 0, 0, 0, 0, -2791, -2790, - -4408, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -2791, -2790, - -2789, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 837, 838, 0, 0, -3001, 3038, - -3001, -3001, -3001, -1087, 0, -2999, -2999, 0, - 3047, 0, 0, 0, -2995, -2995, 0, 0, - 0, 0, 4287, 0, 0, 4292, 4293, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -550, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3918, 0, 0, 0, 0, 9976, 0, - 0, 0, 0, -6065, -6065, 0, 0, 0, - 0, 3142, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 935, 0, 0, 937, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 9645, 0, -267, 0, -3303, 0, - 7684, 7685, 0, 0, 5982, 4340, 4341, 4342, - 4343, 4344, 9676, 4346, 4347, 9679, 9680, 4350, - 4351, 4352, 4353, 4354, 4355, 4356, 4357, 4358, - 4359, 4360, 4361, 4362, 4363, 4364, 4365, 4366, - 5974, 5974, 5974, 5974, 5974, 5974, 15532, -4572, - 5974, 3192, 12244, 3194, 12245, 12246, 12247, 2603, - 12249, 12517, 12251, 999, 12252, 4569, 4569, 12255, - 12256, 6275, 7918, 7918, 7918, 7918, 7918, 2587, - 7918, 2586, 2586, 2586, 6286, 6287, 7915, 6289, - 6290, 7913, 7913, 6293, 96, 7911, 7911, 7911, - 7911, 6299, 7910, 1253, 7911, 6304, 6305, 6306, - 6307, 6308, 6309, -3248, 16857, 6312, 43, 43, - 43, 43, 43, 43, 9688, 43, -224, 43, - -3260, 43, 7727, 7728, 43, 43, 6025, 1253, - 6234, 1253, 6384, 6385, 10526, -3272, 1253, 6388, - 10531, 1253, 1253, 1253, 1253, 6392, 6393, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 6053, 6054, 6055, - 6056, 6057, 6058, 32767, 6059, 6060, 6061, 6062, - 32767, 6063, 32767, 6064, 32767, 32767, 32767, 4761, - 32767, 32767, 6065, 32767, 4762, 4763, 32767, 9404, - 32767, 6067, 4764, 6068, 32767, 6069, 6070, 6071, - 32767, 6072, 6073, 32767, 6074, 32767, 32767, 6075, - 32767, 6076, 32767, 6077, 32767, 6078, 32767, 6079, - 32767, 4374, 4374, 32767, 4373, 32767, 32767, 5324, - 5325, 5326, 5327, 32767, 6087, 6088, 6089, 6090, - 6091, 3057, 6093, 32767, 6094, 4376, -4013, 4376, - 32767, 4375, 4375, 4375, 4375, 32767, 4374, 32767, - 4373, 6104, 6105, 6106, 6107, 6108, 6109, 6110, - 6111, -3652, 881, -645, -645, -1903, 6116, 6117, - 6118, 4399, 4400, 4401, 6122, 6123, 3567, 3567, - 4406, 6127, 7410, 6129, 32767, 32767, 32767, 32767, - 32767, 7409, 7410, 4412, 32767, 6133, 4414, 4415, - 6136, 6137, 32767, 4420, 9402, 6140, 134, 134, - 13933, 134, 134, 134, 9413, 4429, 6149, 4432, - 6151, 4435, 6153, 6304, 6305, 6306, 6307, 6308, - 6309, 6310, 6311, 6312, 6313, 6314, 1068, 6316, - 5378, 6318, 5379, 6320, 803, 6322, -2232, 6324, - 6325, 6326, 1074, 6328, 6329, 6330, 6331, 6332, - 6333, 6334, 6335, 6336, 6337, 6338, 6339, 6340, - 6341, 6342, 6343, 6344, 6345, 6346, 6347, 6348, - 6349, 6350, 6351, 6352, 6353, 6354, 6355, 6356, - 6357, 6358, 6359, 6360, 5417, 6362, 6363, 6364, - 6365, 6366, 6367, 5423, 6369, 5424, 6371, 6372, - 5426, 5426, 6375, 5427, 5427, 6378, 6379, 6380, - 6381, 6382, 6383, 6384, 6385, 6386, 6387, 6388, - 6389, 6390, 6391, 6392, 6393, 6394, 6395, 6396, - 6397, 6398, 6399, 6400, 6401, 6402, 6403, 6404, - 6405, 6406, 6407, 6408, 6409, 6410, 6411, 6412, - 6413, 6414, 6415, 6416, 6417, 6418, 6419, 6420, - 6421, 6422, 7182, 5465, 6425, 6426, 6427, 6428, - 6429, 6430, 6431, 6432, 6433, 6434, 6435, 6436, - 6437, 6438, 6439, 6440, 6441, 6442, 6443, 6444, - 6445, 6446, 6447, 6448, 6449, 6450, 6451, 6452, - 6453, 6454, 6455, 6456, 6457, 6458, 6459, 6460, - 6461, 6462, 6463, 6464, 6465, 6466, 6467, 6468, - 6469, 6470, 6471, 6472, 6473, 6474, 6475, 6476, - 6477, 6478, 5519, 5519, 6481, 6482, 6483, 6484, - 6485, 6486, 6487, 6488, 6489, 6490, 6491, 6492, - 6493, 6494, 6495, 6496, 6497, 6498, 6499, 6500, - 6501, 6502, 6503, 6504, 6505, 6506, 6507, 6508, - 6509, 6510, 6511, 6512, 6513, 6514, 6515, 6516, - 6517, 6518, 6519, 6520, 6521, 6522, 6523, 6524, - 6525, 6526, 6527, 6528, 6529, 6530, 6531, 6532, - 6533, 1330, 6535, 6536, 6537, 6538, 5577, 6540, - 6541, 6542, 6543, 6544, 6545, 6546, 6547, 6548, - 6549, 6550, 5588, 5588, 6553, 6554, 6555, 6556, - 32767, 6557, 1728, 1728, 6867, 6868, 6562, 6563, - 6564, 6565, 6566, 6567, 6568, 6569, 6570, 6571, - 6572, 6573, 6574, 6575, 6576, 6577, 6578, 6579, - 6580, 6581, 6582, 6583, 6584, 6585, 6586, 6587, - 6588, 2423, 6590, 6591, 6592, 6593, 6594, 6595, - 6596, 6597, 6598, 6599, 6600, 6601, 6602, 6603, - 6604, 6605, 6606, 6607, 6608, 6609, 6610, 6611, - 6612, 6613, 6614, 6615, 6616, 6617, 6618, 6619, - 6620, 6621, 6622, 6623, 6624, 6625, 6626, 6627, - 6628, 6629, 6630, 6631, 6632, 6633, 6634, 6635, - 6636, 6637, 6638, 6639, 6640, 6641, 6642, 6643, - 6644, 6645, 6646, 6647, 6648, 6649, 6650, 6651, - 6652, 6653, 6654, 6655, 6656, 6657, 6658, 6659, - 6660, 6661, 6693, 6663, 6664, 6665, 6666, 6667, - 6668, 6669, 6670, 6671, 6672, 6673, 6674, 6675, - 6676, 6677, 6678, 6679, 7476, 7476, 7476, 7476, - 7476, 7476, 5625, 5625, 5625, 5625, 5625, 6691, - 6692, 6693, 6694, 6695, 6696, 6697, 7483, 7483, - 7483, 7483, 10718, 6703, 6704, 6705, 6706, 6707, - 6708, 6709, 6710, 6711, 6712, 6713, 6714, 6715, - 6716, 6717, 6718, 6719, 6720, 6721, 6722, 6723, - 6724, 6725, 6726, 6727, 6728, 6729, 6730, 6731, - 6732, 6733, 6734, 6735, 6736, 6737, 6738, 7836, - 7836, 7836, 12012, 12013, 7838, 7838, 7838, 8773, - 7838, 7838, 8775, 8775, 7517, 10994, 17732, 17733, - 12026, 12027, 17736, 17737, 6760, 6761, 6762, 6763, - 6764, 6765, 6766, 6767, 6768, 6769, 6770, 6771, - 6772, 6773, 6774, 6775, 2927, 6777, 6778, 6779, - 6780, 2927, 4471, 6260, 4471, 6785, 6786, 6787, - 6788, 6789, 6790, 6791, 6792, 6793, 6794, 6795, - 6796, 6797, 6798, 6799, 6800, 6801, 6802, 6803, - 6804, 6805, 6806, 6807, 6808, 6809, 6810, 6811, - 6812, 32767, 3411, 5540, 5541, 3411, 12221, 3411, - 3411, 3411, 3411, 5548, 5549, 5550, 5551, 5552, - 5553, 5554, 5555, 5556, 5557, 5558, 5559, 5560, - 5561, 5562, 5563, 5564, 5565, 5566, 5567, 5568, - 32767, 32767, 32767, 32767, 32767, 32767, 3915, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 6155, 6156, 6157, 6158, 6159, - 6160, 6161, 6162, 6163, 6164, 6165, 32767, 32767, - 32767, 32767, 32767, 6166, 6167, 6168, 6169, 6170, - 6171, 6172, 6173, 6174, 6175, 6176, 6177, 6178, - 6179, 6180, 4615, 4616, 4617, 4618, 4619, 6186, - 6187, 6188, 6189, 6190, 6191, 6192, 6193, 6194, - 6195, 6196, 32767, 6197, 6198, 6199, 6200, 6201, - 7637, 4495, 4495, 6205, 4052, 4052, 6208, 6209, - 6210, 6211, 6212, 6213, 6214, 6215, 6216, 6217, - 6218, 6219, 6220, 6221, 6222, 6223, 6224, 6225, - 6226, 6227, 6228, 32767, 32767, 0, 0, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 6229, 6230, 6231, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 6232, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 884, 885, 886, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 5994, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 6233, 6234, 6235, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 6236, 6237, 6238, 6239, - 6240, 6241, 6242, 6243, 6244, 6245, 6246, 6247, - 6248, 6249, 6250, 6251, 6252, 6253, 6254, 6255, - 6256, 6257, 6258, 6259, 6260, 6261, 6262, 6263, - 6264, 6265, 6266, 6267, 6268, 6269, 6270, 6271, - 6272, 6273, 6274, 6275, 6276, 6277, 6278, 6279, - 32767, 32767, 32767, 32767, 6280, 6281, 6282, 6283, - 6284, 6285, 6286, 6287, 6288, 4770, 32767, 4771, - 4772, 32767, 32767, 32767, 6289, 6290, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -5160, 2071, - 2071, 2071, 2071, 32767, 2070, 2070, 2070, 2070, - 2070, 2070, 2070, 0, 0, 6236, 6237, 2075, - 2075, 2075, 2075, 12051, 12052, 12053, 12054, 12055, - 12056, 12057, 6249, 11962, 2083, 2083, 5225, 2083, - 2083, 2083, 2083, 2083, 6259, 6260, 2085, 2085, - 2085, 3020, 2085, 2085, 3022, 3022, 32767, 5240, - 11978, 11979, 6272, 6273, 11982, 11983, 11984, 6277, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 4773, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -706,252 +880,666 @@ Decomp_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 896, 897, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 415, + 32767, 32767, 0, 0, 0, 0, 0, 0, + 0, 0, 9932, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -2468, -2468, - -2468, -2468, -2468, -2468, -2468, -2468, -2468, -2468, - -2468, -2468, -2468, -2468, -2468, -2468, -2468, -2468, - 2089, 2090, 2091, -2465, -2465, -2465, -2465, -2465, - -2465, 2098, 2099, -2463, -2463, -2463, -2463, -2463, - -2463, 2106, 2107, -2461, -2461, -2461, -2461, -2461, - -2461, 0, 0, -2459, -2459, -2459, 2119, 2120, - 2121, -2456, 2123, 2124, 2125, 2126, 2127, 2128, - 0, 0, 2131, -6678, 2133, 2134, 2135, 2136, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2158, 2159, 2160, - 2161, 2162, 2163, 2164, 2165, 2166, 2167, 2168, - 2169, 2170, 2171, 2172, 2173, 2174, 2175, 2176, - 2177, 2178, 2179, 2180, 2181, -2412, -2412, -2412, - -2412, -2412, 2187, 2188, 2025, 2190, 2191, 2192, - 2193, 2194, 2195, 2196, 2197, 2198, 2199, 2200, - 2201, 2202, 2203, 2204, 2205, 2206, 2207, 2208, - 2209, 2210, 2211, 2212, 2213, 2214, 2215, 2216, - 2217, 2218, 2219, 2220, 2221, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1566, 1566, - 1566, 1566, 1566, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 32767, 0, - 0, 0, 0, 0, -1435, 1708, 1709, 0, - 2154, 2155, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 898, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, -1145, + -1144, -1143, -1142, -1141, -1140, -1139, -1138, 32767, + 32767, -1137, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, -3659, -5441, -5441, -3658, -3657, -3656, + -5441, -3655, -5441, -3654, -5441, -4524, -5441, -3652, + 32767, -3651, -3650, -5442, -3649, -3648, -3647, -5442, + -3646, -3645, -3644, -3643, -4515, -3641, -3640, -5442, + -3639, -4512, -3637, -3636, -3635, -3634, -5442, -5112, + 3037, -5442, -3633, -3632, -3631, -3630, -3629, -5442, + 32767, 32767, -5444, -5444, -5444, -3630, -3629, -3628, + -3627, -3626, -3625, -3624, -3623, -3622, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, -1079, 32767, -1078, 32767, -1076, 32767, -1075, + 32767, -1074, 32767, 32767, 32767, -1073, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 6326, + 6327, 6328, 6329, 6330, 6331, 6332, 6333, -3598, + 6335, 32767, 32767, 32767, 32767, 32767, -5387, 32767, + -5388, 32767, 32767, -3599, -3598, 32767, -3598, -3597, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 0, 0, 32767, 32767, 4774, 4775, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, -3608, -3607, + -3606, -3605, -3835, -3603, -3602, -3601, -3600, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 1116, 988, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 1118, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 990, 991, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 0, 0, 0, 0, - 0, 0, 0, 0, -2552, 0, 0, 32767, - 0, 32767, 32767, 32767, 1551, 293, 3770, 32767, - 32767, 32767, 32767, 0, 32767, 0, 32767, 32767, + 0, 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 0, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 32767, 0, - 0, 32767, 0, 0, 32767, 32767, 32767, 32767, - 0, 32767, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, -4309, -4309, 0, 32767, - 0, -4310, -4577, -4310, -7613, -4310, 3374, 3375, - -4310, -4310, 1672, -3100, 1881, -3100, 2031, 2032, - 6173, -7625, -3100, 2035, 6178, -3100, -3100, -3100, - -3100, 2039, 2040, 32767, 0, -4353, -4353, 0, - -4352, 0, 0, -4350, 0, -4349, -4349, -4349, - -4349, 32767, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 32767, 0, 0, 32767, 0, 0, - 32767, 0, 0, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, -1267, -1721, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 0, 0, 0, - 0, 951, 952, 953, 954, 955, 956, 957, - 1717, 0, 32767, 32767, 32767, -1317, 32767, 32767, - 32767, 0, -8389, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 887, 888, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 0, 32767, -5009, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3014, + 2461, 2462, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 3021, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 5520, 32767, 32767, 32767, 32767, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 3022, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 993, 994, -5735, 32767, + -5736, 997, 998, 999, -4808, -5153, -5188, -5188, + 2961, -5188, 1006, 1007, -1001, 32767, 1009, -12336, + -4656, 883, -4655, 885, 748, 32767, 32767, 32767, + 32767, 1016, 32767, 32767, 32767, 32767, 32767, 32767, + 1017, 32767, 32767, 32767, 1018, 1019, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 3015, 3016, 3017, 3018, 32767, 32767, 32767, 3019, + 3020, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 5990, 5991, 5992, 5993, 32767, 32767, 32767, + 32767, 1020, 1021, 1022, 32767, 1023, 1024, -1357, + -3714, -1357, 1028, 1029, -1355, -1355, -1355, -1355, + 32767, -1356, 1035, 1036, -1354, -1354, 1039, -1353, + -1353, -1353, -1353, -8968, 1045, 1046, 1047, 1048, + 1049, 1050, 1051, 32767, -5673, -5673, 1054, 1055, + -5674, -5674, -5674, 1059, 1060, 1061, -4746, -5091, + -5126, -5126, 3023, -5126, 1068, 1069, -939, -5126, + 1072, -12273,-4593, 946, -4592, 948, 811, 1079, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 1080, 3024, 3025, + 3026, 3027, 3028, 3029, 3030, 3031, 3032, 0, + 0, 3035, 3036, 3037, 3038, 3039, 3040, 3041, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 1081, 1082, -3758, 1084, 1085, 1086, 1087, -3757, + 1089, 1090, -3756, 2739, 2701, 1223, 1224, 1225, + 1226, 2710, 1228, 1229, 1230, 1231, 1232, 1233, + 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, + 1242, 857, 858, 1245, -3754, 1247, 419, 1249, + 851, -5627, -5272, -5232, -5627, -9005, -1325, 855, + -5627, -5627, -5627, -5627, -5627, -5627, -5627, -5627, + -5627, -5627, -5627, -5627, -5627, -2274, 868, 868, + -4675, -5627, -5267, -5627, -5627, -5266, -5627, -5265, + -5627, -5627, -5627, -5627, -5627, -5627, -5627, -5627, + -5627, -5627, -5627, -5627, -5627, -5627, -5627, -5627, + -5627, -5627, -5627, -5627, -5627, -5627, -5264, -5627, + -5263, -5627, -5627, -5627, 1924, 32767, 1182, 1183, + 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, + 1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, + 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, + 1208, 1209, 1210, 1211, -3629, 1213, 1214, 1215, + 1216, -3628, 1218, 1219, -3627, 2868, 2830, 1352, + 1353, 1354, 1355, 2839, 1357, 1358, 1359, 1360, + 1361, 1362, 1363, 1364, 1365, 1366, 1367, 1368, + 1369, 1370, 1371, 986, 987, 1374, -3625, 1376, + 548, 1378, 980, -5498, -5143, -5103, -5498, -8876, + -1196, 984, -5498, -5498, -5498, -5498, -5498, -5498, + -5498, -5498, -5498, -5498, -5498, -5498, -5498, -2145, + 997, 997, -4546, -5498, -5138, -5498, -5498, -5137, + -5498, -5136, -5498, -5498, -5498, -5498, -5498, -5498, + -5498, -5498, -5498, -5498, -5498, -5498, -5498, -5498, + -5498, -5498, -5498, -5498, -5498, -5498, -5498, -5498, + -5135, -5498, -5134, -5498, -5498, -5498, 2053, -5498, + -5498, -5498, -5498, -5498, -5498, -9874, -5132, -5131, + -5130, -5129, -5498, -5498, -5128, -5127, -5498, -5498, + -5126, -5125, -5498, -5498, -5498, -5498, -5498, -5498, + -9923, -5123, 32767, 32767, 32767, 32767, -5502, -5502, + -3605, -3604, -5502, -5502, -5502, -5502, 1346, 2865, + 2827, 1349, 1350, 1351, 1352, 2836, 1354, 1355, + 1356, 1357, 1358, 1359, 1360, 1361, 1362, 1363, + 1364, 1365, 1366, 1367, 1368, 983, 984, 1371, + -3628, 1373, 545, 1375, 977, 1377, 1378, 549, + 509, 549, 1382, 1383, 1384, 1385, 1386, 1387, + 1388, 1389, 1390, 1391, 1392, 1393, 1394, 1395, + 562, 1397, 1398, 1399, 1400, 1401, 1402, 1403, + 1404, 1405, 1406, 1407, 1408, 1409, 1410, 1411, + 1412, 1413, 1414, 578, 578, 1417, 1418, 1419, + 1420, 1421, 1422, 1423, 1424, 1425, 1426, 1427, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, -5379, + 2172, -5379, -5379, -5379, -5379, -5379, -5379, -9755, + -5013, -5012, -5011, -5010, -5379, -5379, -5009, -5008, + -5379, -5379, -5007, -5006, -5379, 32767, 32767, -5381, + -5381, -5381, -9806, -5006, -5381, 32767, 32767, -5006, + -5383, -5383, -3486, -3485, -5383, -5383, -5383, -5383, + 1465, 2984, 2946, 1468, 1469, 1470, 1471, 2955, + 1473, 1474, 1475, 1476, 1477, 1478, 1479, 1480, + 1481, 1482, 1483, 1484, 1485, 1486, 1487, 1102, + 1103, 1490, -3509, 1492, 664, 32767, 32767, 1494, + 1495, 666, 626, 666, 1499, 32767, 32767, 1500, + 1501, 1502, 1503, 1504, 1505, 1506, 1507, 32767, + 1508, 32767, 675, 32767, 1510, 32767, 1511, 1512, + 1513, 1514, 1515, 1516, 1517, 1518, 1519, 1520, + 1521, 1522, 1523, 1524, 1525, 689, 689, 1528, + 1529, 1530, 1531, 1532, 1533, 1534, 1535, 1536, + 1537, 1538, 1539, 1540, 1541, 32767, 32767, 1542, + 1543, 1544, 1545, 1546, 1547, 1548, 1549, 1550, + 1551, 1552, 1553, 1554, 1555, 1556, 1557, 1558, + 1559, 1560, 1561, 1562, 1563, 1564, 1565, 1566, + 1567, 1568, 1569, 1570, 1571, 1572, -5863, 1574, + 1575, 1576, 1577, 1578, 1579, 1580, 1581, 1582, + 1583, 1584, 745, 428, 1587, 1588, 1589, 1590, + 1591, 1592, 429, 430, 32767, 1595, 1596, 1597, + 1598, 1599, 1600, 1601, 1602, 1603, -2463, -2462, + -2461, -2460, -2459, 1609, 32767, 1610, 1611, 770, + 1613, 771, 1615, 772, 1617, 1618, 1619, 1620, + 1621, 1622, 1623, 32767, 32767, 1624, 1625, 1626, + 1627, 1628, 1629, 32767, 1630, 1631, 1632, 1633, + 1634, 1635, 1636, 1637, 791, 1639, 1640, 1641, + 1642, 795, 1644, 1645, 1646, 1647, 799, 32767, + 32767, 1649, 426, 427, 32767, 1652, 1653, 1654, + 1655, 1656, 1657, 808, 1659, 1660, 32767, 32767, + 1661, 1662, 1663, 1664, 1665, 1666, 1667, 1668, + 1669, 1670, 1671, 32767, 32767, 32767, 32767, 32767, + 32767, 1672, 32767, 32767, 32767, 32767, 32767, 1673, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 1674, 1675, 1676, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1677, + 32767, 32767, 32767, 1678, 515, 32767, 1680, 1681, + 32767, 32767, 32767, 32767, 1682, 32767, 1683, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1684, + 1685, 844, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1687, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1688, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 840, 1690, 32767, 32767, 467, 468, 1693, 1694, + 1695, 1696, 1697, 1698, 1699, 850, 1701, 1702, + 1703, 1788, 1705, 1706, 1707, 857, 857, 857, + 857, 857, 857, 857, 857, 857, 857, 32767, + 856, 856, 1720, 1721, 858, 858, 858, 1789, + 1444, 1727, 859, 859, 1730, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 1731, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 1732, 1733, 1734, 1735, 1736, 1737, 1738, 1739, + 1740, 1741, 1511, 1743, 1744, 32767, 32767, 32767, + 32767, 1745, 32767, 32767, 32767, 1746, 1747, -4286, + 1749, 1750, -4284, 1752, 1753, 1754, 1755, 1756, + 1757, 32767, 32767, 32767, 32767, 4806, 4807, 4808, + 4809, 4810, 4811, 5051, 4813, 32767, 32767, 32767, + 32767, 1758, 1759, 1844, 1761, 32767, 1762, 912, + 912, 32767, 911, 911, 911, 911, 911, 911, + 911, 911, 911, 911, 1775, 0, 912, 912, + 0, 0, 1496, 1779, 911, 911, 1782, 0, + 0, 1783, 1784, 1785, 0, 1786, 0, 1787, + 0, 917, 0, 1789, 1790, 1791, 1792, 0, + 1793, 1794, 1795, 0, 1796, 1797, 1798, 1799, + 927, 1801, 1802, 0, 1803, 930, 1805, 1806, + 1807, 1808, 0, 330, 8479, 0, 1809, 1810, + 1811, 1812, 1813, 0, 0, 0, 0, 0, + 0, 1814, 1815, 1816, 1817, 1818, 1819, 1820, + 1821, 1822, 1823, 1824, 1594, 1826, 1827, 1828, + 1829, 1830, 1831, 1832, 1833, 1834, 1835, 1836, + 1837, -4196, 1839, 1840, -4194, 1842, 1843, 1844, + 1845, 1846, 1847, 1848, -3632, -3632, 1851, 1852, + 1853, 1854, 1855, -3627, 1857, 1858, 1859, 1860, + 1861, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -2936, 0, 0, 0, 0, 0, + 480, 0, 481, 0, 482, 6597, 6598, 6599, + 6471, 6601, 6602, 4221, 1864, 4221, 6606, 6607, + 4223, 4223, 4223, 4223, 4223, 4223, 6614, 6615, + 4225, 4225, 6618, 4226, 4226, 4226, 4226, -3389, + 6624, 6625, 6626, 6627, 6628, 6629, 6630, -93, + -93, -93, 6634, 6635, -94, -94, -94, 6639, + 6640, 6641, 834, 489, 454, 454, 8603, 454, + 6648, 6649, 4641, 454, 6652, -6693, 987, 6526, + 988, 6528, 6391, 6659, 6392, 6392, 6392, 6663, + 497, 455, 1218, 1219, 1220, 1221, 6670, 6542, + 6543, 6673, 6674, 6675, 499, 499, 499, 499, + 6680, 6681, 6682, 6683, 6684, 6685, 6686, 6687, + 6688, 6689, 6690, 6691, 6692, 6693, 6694, 6695, + 6696, 6697, 6698, 6699, 6700, 6701, 6702, 6703, + 6704, 6705, 6706, 6707, 6708, 6709, 1869, 6711, + 6712, 6713, 6714, 1870, 6716, 6717, 1871, 8366, + 8328, 6850, 6851, 6852, 6853, 8337, 6855, 6856, + 6857, 6858, 6859, 6860, 6861, 6862, 6863, 6864, + 6865, 6866, 6867, 6868, 6869, 6484, 6485, 6872, + 1873, 6874, 6046, 6876, 6478, 0, 355, 395, + 0, -3378, 4302, 6482, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3353, 6495, 6495, 952, 0, 360, 0, + 0, 361, 0, 362, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 363, 0, 364, 0, 0, 0, + 7551, 0, 0, 0, 0, 0, 0, -4376, + 366, 367, 368, 369, 0, 0, 370, 371, + 0, 0, 372, 373, 0, 0, 0, 0, + 0, 0, -4425, 375, 0, 0, 376, 377, + 0, 0, 1897, 1898, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 1899, 1900, + 1901, 1902, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 1903, 1904, 1905, 1906, 3065, 3066, + 3067, 3068, 3069, 3070, 1907, 1908, 3073, 3074, + 3075, 3076, 3077, 3078, 3079, 3080, 3081, 3082, + -984, -983, -982, -981, -980, 3088, 3089, 3090, + 3091, 2250, 3093, 2251, 3095, 2252, 3097, 3098, + 3099, 3100, 3101, 3102, 3103, 3104, 3105, 3106, + 3107, 3108, 3109, 3110, 3111, 3112, 3113, 3114, + 3115, 3116, 3117, 3118, 3119, 3120, 2274, 3122, + 3123, 3124, 3125, 2278, 3127, 3128, 3129, 3130, + 2282, 3132, 3133, 3134, 1911, 1912, 3137, 3138, + 3139, 3140, 3141, 3142, 3143, 2294, 3145, 3146, + 3147, 3232, 3149, 3150, 3151, 2301, 2301, 2301, + 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, + 2301, 2301, 3165, 3166, 2303, 2303, 2303, 3234, + 2889, 3172, 2304, 2304, 3175, 3176, 3177, 3178, + 3179, 3180, 3181, 3182, 3183, 3184, 3185, 2315, + 3187, 3188, 3189, 3190, 3191, 3192, 3193, 3194, + 3195, 2324, 3197, 3198, 3199, 3200, 2328, 3202, + 3203, 3204, 3205, 2332, 3207, 3208, 3209, 3210, + 2336, 3212, 3213, 3214, 3215, 3216, 3217, 3218, + 3219, 3220, 3221, 3222, 3223, 2348, 3225, 3226, + 3227, 3228, 3229, 3230, 3231, 3232, 3233, 3234, + 3235, 3236, 3006, 3238, 3239, 3240, 3241, 3242, + 3243, 3244, 3245, 3246, 3247, 3248, 3249, -2784, + 3251, 3252, -2782, 3254, 3255, 3256, 3257, 3258, + 3259, 3260, -2220, -2220, 3263, 3264, 3265, 3266, + 3267, -2215, 3269, 3270, 3271, 3272, 3273, 3274, + 3275, 3276, 3277, 3278, 3279, 3280, 3281, 3282, + -1515, 3284, 3285, 3286, 3287, 3288, 3289, 3290, + 3291, 3292, 3293, 3294, 3295, 3296, 3297, 3298, + 3299, 5658, 3301, 3302, 3303, 3304, 3305, 3306, + 3307, 3308, 7922, 3310, 3311, 3312, 3313, 3314, + 3315, 3316, 1798, 1838, 1839, 32767, 3320, 3321, + 3322, 3323, 3324, 2453, 3326, 3327, 3328, 3329, + 2457, 3331, 3332, 3333, 32767, 32767, 3334, 32767, + 3335, 32767, 32767, 3336, 3337, 3338, 3339, 3340, + 3341, 3342, 3343, 3344, 3345, 32767, 3346, 32767, + 3347, 32767, 32767, 3348, 3349, 32767, 32767, 32767, + 3350, 3351, 3352, 3353, 3123, 3355, 3356, 3357, + 3358, 3359, 3360, 3361, 3362, 3363, 3364, 3365, + 3366, -2667, 3368, 3369, -2665, 3371, 3372, 3373, + 3374, 3375, 3376, 3377, -2103, -2103, 3380, 3381, + 3382, 3383, 3384, -2098, 3386, 3387, 3388, 3389, + 3390, 3391, 3392, 3393, 3394, 3395, 3396, 3397, + 3398, 3399, -1398, 3401, 3402, 3403, 3404, 3405, + 3406, 3407, 3408, 3409, 3410, 3411, 3412, 3413, + 3414, 3415, 3416, 5775, 32767, 32767, 3418, 3419, + 3420, 3421, 3422, 3423, 8037, 3425, 3426, 3427, + 3428, 3429, 3430, 3431, 1913, 1953, 1954, -1819, + 5861, 1957, 1958, 1959, 1921, 1922, 1923, 1924, + 1925, 1926, 1927, 1928, 1929, 2571, 1931, 1932, + 1933, 8070, 1935, 1936, 1937, 1938, 1939, 1940, + -564, 1942, 1943, 1944, 1945, 1946, 2587, 8126, + 2588, 2588, 1951, 1952, 1953, 1954, 1955, -2786, + -2786, 1958, 1959, 1960, 1961, 1962, 1963, 1964, + 1965, 1966, 1967, -2772, 1969, 1970, 1971, 1972, + 1973, 1974, 1975, 1976, 1977, -2763, 1979, 1980, + 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, + 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, + -2802, 1998, 1999, 2000, 2001, 2002, 2003, 2004, + 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, + 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, + 2021, 2022, 2023, 2024, 2025, 2026, 2027, 2028, + 2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, + 2037, 2038, 2039, 2040, 2041, 2042, 2043, 2044, + 2045, -1728, 5952, 2048, 2049, 2050, 2051, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 2012, 8149, 2014, 2015, 2016, 32767, + 32767, 32767, 32767, 32767, 2017, 2018, 2019, 2020, + 2661, 8200, 2662, 2662, 2025, 2026, 2027, 2028, + 2029, -2712, -2712, 2032, 2033, 2034, 2035, 2036, + 2037, 2038, 2039, 2040, 2041, -2698, 32767, 2043, + 2044, 2045, 2046, 2047, 32767, 2048, 32767, -2692, + 2050, 32767, 2051, 2052, 32767, 2053, 2054, 2055, + 2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, + 2064, 2065, -2733, 2067, 2068, 2069, 2070, 2071, + 2072, 2073, 3593, 3594, 3595, 3596, 3597, 3598, + 3599, 3600, 2161, 2162, 3603, 3604, 3605, 3606, + 3607, 3608, 3609, 3610, 3611, 3612, -1161, 3614, + 3615, 3616, 3617, 3618, 3619, 3620, 2739, 3622, + 3623, 3624, 3625, 3626, 3627, 3628, 3629, 3630, + 3631, 3632, 3633, 3634, 3635, 3636, 3637, 3638, + 3639, 3640, 3641, 3642, 3643, 3644, 3645, 3646, + 3647, 3648, 3649, 3650, 3651, 3652, 3653, 3654, + 3655, -2386, -2386, -2386, -2386, -2386, 3661, 3662, + 3663, 3664, 3665, 3666, 3667, 3668, -2366, -2366, + -2366, -2366, -2366, -2366, -2366, 3676, 3677, 3678, + 3679, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 3680, 3681, 3682, -502, -502, 3685, + 3686, 3687, -1049, 3689, 3690, 3691, 3692, 3693, + 3694, 3695, 3696, 3697, 3698, 2816, 3700, 3701, + 3702, 3703, 3704, 3705, 3706, 3707, 3708, 3709, + 3710, 3711, 3712, 3713, 3714, 3715, 3716, 3717, + 3718, 3719, 3720, 3721, 3722, 3723, 3724, 32767, + 3725, 3726, 3727, 3728, 3729, 3730, 3731, 3732, + 3733, 3734, 3735, 3736, 3737, 3738, 3739, 3740, + 3741, 3742, 3743, 3744, 3745, 3746, 3747, 3748, + 3749, 3750, 3751, -2290, -2290, -2290, -2290, -2290, + 3757, 3758, 3759, 3760, 3761, 3762, 3763, 3764, + -2270, -2270, -2270, -2270, -2270, -2270, -2270, 3772, + 3773, 3774, 3775, 3776, 3777, 3778, 3779, 3780, + 3786, 3782, 3783, 3784, 3785, 3786, 3787, 3788, + 4953, 4954, 3791, 3792, 3793, 3794, 3795, 3796, + 3797, 3798, 3799, 3800, 3801, 3802, 3803, 3804, + 3805, 3806, 3807, 3808, 3809, 3810, 3811, -373, + -373, 3814, 3815, 3816, -920, 3818, 3819, 3820, + 3821, 3822, 3823, 3824, 3825, 3826, 3827, 2945, + 3829, 3830, 3831, 3832, 3833, 3834, 3835, 3836, + 3837, 3838, 3839, 3840, 3841, 3842, 3843, 3844, + 3845, 3846, 3847, 3848, 3849, 3850, 3851, 3852, + 3853, 3854, 3855, 3856, 3857, 3858, 3859, 3860, + 3861, 3862, 3863, 3864, 3865, 3866, 3867, 3868, + 3869, 3870, 3871, 3872, 3873, 3874, 3875, 3876, + 3877, 3878, 3879, 3880, -858, 3882, 3883, 3884, + 3885, 3886, 3887, 3888, 3889, 3986, 3891, 3892, + 3893, 3894, 3895, 3896, 3897, 3898, 3899, 3900, + 3901, 3902, 3903, 3943, 3944, 171, 7851, 3947, + 3948, 3949, 3911, 3912, 3913, 3914, 3915, 3916, + 3917, 3918, 3919, 4561, 3921, 3922, 3923, 10060, + 3925, 3926, 3927, 3928, 3929, 3930, 1426, 3932, + 3933, 3934, 3935, 3936, 4577, 10116, 4578, 4578, + 3941, 3942, 3943, 3944, 3945, -796, -796, 3948, + 3949, 3950, 3951, 3952, 3953, 3954, 3955, 3956, + 3957, -782, 3959, 3960, 3961, 3962, 3963, 3964, + 3965, 3966, 3967, -773, 3969, 3970, 3971, 3972, + 3973, 3974, 3975, 3976, 3977, 3978, 3979, 3980, + 32767, 3981, 3982, 3983, 3984, 3985, 3986, 3987, + 3988, 3989, 3990, 3991, 3992, 3993, 3994, 3995, + 3996, 3997, 3998, 3999, 4000, 4001, 4002, 4003, + 4004, 4005, 4006, 4007, 4008, 4009, -729, 4011, + 4012, 4013, 4014, 4015, 4016, 4017, 4018, 4115, + 4020, 4021, 4022, 4023, 4024, 4025, 4026, 4027, + 4028, 4029, 4030, 4031, 4032, 4072, 4073, 300, + 7980, 4076, 4077, 4078, 4040, 4041, 4042, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 4043, 4044, 4045, 4046, 4047, 4688, 10227, + 4689, 4689, 4052, 4053, 4054, 4055, 4056, -685, + -685, 4059, 4060, 4061, 4062, 4063, 4064, 4065, + 4066, 4067, 4068, -671, 4070, 4071, 4072, 4073, + 4074, 4075, 4076, 4077, 4078, -662, 4080, 4081, + 4082, 4083, 4084, 4085, 4086, 4087, 4088, 4089, + 4090, 4091, 4092, 4093, 4094, 4095, 4096, 4097, + -701, 4099, 4100, 4101, 4102, 4103, 4104, 4105, + 4106, 32767, 32767, 4107, 4108, 4109, 4110, 4111, + 4112, 4113, 4114, 4115, 4116, 4117, 4118, 4119, + 4120, 4121, 4122, 4123, 4124, 4125, 4126, 4127, + 4128, 4129, 4130, 4131, 4132, 4133, 4134, 4135, + 4136, 4137, 4138, 4139, 4140, 4141, 4142, 4143, + 4144, 371, 8051, 4147, 4148, 4149, 4150, 4151, + 4152, 4153, 4154, 4155, 4156, 4157, 4158, 4159, + 4160, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 4161, 4162, 4163, 4164, 4165, 4166, 4167, + 4168, 4169, 4170, 4171, 4172, 4173, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 4174, 4175, 4176, 4177, 4178, 4179, + 4180, 4181, 4182, 4183, 32767, 32767, 32767, 32767, + 32767, 32767, 4184, 4185, 4186, 4187, 4188, 4189, + 4190, 4191, 4192, 4193, 4194, 4195, 4196, 4197, + 4198, 4199, 4200, 4201, 4202, 4203, 4204, 4205, + 4206, 4207, 4208, 435, 8115, 4211, 4212, 4213, + 4214, 4215, 4216, 4217, 4218, 4219, 4220, 32767, + 32767, 4221, 4222, 4223, 4224, 4225, 4226, 4227, + 4228, 4229, 4230, 4231, 4232, 32767, 4233, 4234, + 4235, 4236, 4237, 4238, 4239, 4240, 4241, 4242, + 4243, 4244, 4245, 4246, 4247, 4248, 3899, 3900, + 4251, 32767, 4252, 4253, 4254, 4255, 32767, 32767, + 32767, 32767, 4256, 4257, 4258, 32767, 4259, 32767, + 4260, 4261, 4262, 4263, 4264, 4265, 4266, 4267, + 4268, 4269, 4270, 4271, 4272, 4273, 4274, 4275, + 4276, 4277, 4278, 4279, 4280, 4281, 4282, 4283, + 4284, 4285, 4286, 4287, 4288, -455, -455, 14151, + 6472, 4293, 4294, 4295, 4296, 4297, 4298, 4299, + 4300, 4301, 4302, 4303, 4304, 4305, 4306, 7449, + 4308, 4309, 9853, 4311, 4312, 4313, 4314, 4315, + 4316, 4317, 4318, 6174, 6175, 6176, 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, -3782, 4368, -1825, 4920, 183, + 4922, -1825, 11521, 3842, -1696, 193, 193, 4929, + 4930, 4931, 4932, 4933, 4934, 4935, 4936, 5254, + 4938, 4939, 4940, 4941, 4942, 4943, 4944, 4941, + 4942, 4943, 4944, 4945, 4395, 4396, 4397, 4398, + 4399, 4400, 4401, 4402, 4403, 4404, 4405, 4406, + 4407, 4408, 4409, 4410, 4411, 4412, 4413, -330, + -330, 14276, 6597, 4418, 4419, 4420, 4421, 4422, + 4423, 4424, 4425, 4426, 4427, 4428, 4429, 4430, + 4431, 7574, 4433, 4434, 9978, 4436, 4437, 4438, + 4439, 4440, 4441, 4442, 4443, 6299, 6300, 6301, + 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, -3657, 4493, -1700, + 5045, 308, 5047, -1700, 11646, 3967, -1571, 318, + 318, 5054, 5055, 5056, 5057, 5058, 5059, 5060, + 5061, 5379, 5063, 5064, 5065, 5066, 5067, 5068, + 5069, 4520, 4521, 5071, 5072, 4524, 4525, 5073, + 4527, 4528, 5074, 5075, 4531, 4532, 5076, 5077, + -265, 5079, -264, -264, 5081, 5082, 5083, 5084, + 5085, 5086, 5127, 5088, 5130, 5090, 4549, 4550, + 5092, 4552, 5093, 4249, 5095, 5096, 5097, 5098, + 5099, 4560, 5100, 4266, 4266, 4257, 5104, 5105, + 5106, 5107, 5108, 5109, 5110, 7468, 5112, 5113, + 5114, 5115, 5116, 5117, 5118, 5119, 5120, 5121, + 5122, 5123, 5124, 5125, 5126, 5127, 5128, 5129, + 5130, 5131, 5132, 5133, 5134, 5135, 5136, 5137, + 5138, 5139, 5140, 5141, 5142, 5143, 5144, 5145, + 5146, 5147, 5148, 5149, 5150, 5151, 5152, 5153, + 5154, 5155, 5156, 4226, 4572, 4608, 4609, -3539, + 4611, -1582, 5163, 426, 4614, -1583, 11763, 4084, + -1454, 4085, 32767, 5169, 5170, 5171, 5172, 5173, + 5174, 5175, 5176, 32767, 5177, 5178, 5179, 5180, + 5181, 5182, 5183, 32767, 5184, 5185, 5186, 5187, + 5188, 5189, 5190, 5191, 5192, 5193, 5194, 5195, + 5196, 5197, -145, 5199, 5200, -143, 5202, 5203, + 5204, 5205, 5206, 5207, 5248, 5209, 5251, 5211, + 32767, 5212, 5213, 5214, 5215, 32767, 5216, 5217, + 5218, 5219, 5220, 32767, 5221, 32767, 2052, 32767, + 5222, 5223, 5224, 5225, 5226, 5227, 5228, 32767, + 5229, 5230, 5231, 5232, 5233, 5234, 5235, 5236, + 5237, 5238, 5239, 5240, 5241, 5242, 5243, 5244, + 5245, 5246, 5247, 5248, 5249, 5250, 5251, 5252, + 5253, 5254, 5255, 5256, 5257, 5258, 5259, 5260, + 5261, 5262, 5263, 5264, 5265, 5266, 5267, 5268, + 5269, 5270, 5271, 5272, 5273, 4343, 4689, 4690, + 5277, 5278, 5279, 5280, 5281, 5282, 5283, 5284, + 5285, 5286, 5287, 5288, 5289, 5290, 5291, 5292, + 5293, 5294, 5295, 5296, 5297, 5298, 5299, 5300, + 5301, 5302, 5303, 5304, 5305, 5306, 5307, 5308, + 5309, 5310, 5311, 5312, 5313, 5314, 5315, 5316, + 5317, 5318, 5319, 5320, 5321, 5322, 5323, 5324, + 5325, 5326, 5327, 5328, 5329, 5330, 5331, 5332, + 5333, 5334, 5335, 5336, 4691, 4692, 4693, 4694, + 4695, 4696, 4697, 5344, 5345, 5346, 5347, 5348, + 5349, 5350, 5351, 5352, 5353, 5354, 5355, 5356, + 5357, 5358, 5359, 5360, 5361, 5362, 5363, 5364, + 5365, 5366, 5367, 5368, 5369, 5370, 5371, 5372, + 5373, 5374, 5375, 5376, 5377, 5378, 5379, 5380, + 5381, 5382, 5383, 5384, 5385, 5386, 5387, 5388, + 5389, 5390, 5391, 5392, 5393, 5394, 5395, 5396, + 5397, 5398, 5399, 5400, 5401, 4815, 4472, 4472, + 4818, 4819, 5406, 5407, 5408, 5409, 5410, 5411, + 5412, 5413, 5414, 5415, 5416, 5417, 5418, 5419, + 5420, 5421, 5422, 5423, 5424, 5425, 5426, 5427, + 5428, 5429, 5430, 5431, 5432, 5433, 5434, 5435, + 5436, 5437, 5438, 5439, 5440, 5441, 5442, 5443, + 5444, 5445, 5446, 5447, 5448, 5449, 5450, 5451, + 5452, 5453, 5454, 5455, 5456, 5457, 5458, 5459, + 5460, 5461, 5462, 5463, 5464, 5465, 4820, 4821, + 4822, 4823, 4824, 4825, 4826, 5473, 5474, 5475, + 5476, 5477, 5478, 5479, 5480, 5481, 5482, 5483, + 5484, 5485, 5486, 5487, 5488, 5489, 5490, 5491, + 5492, 5493, 5494, 5495, 5496, 5497, 5498, 5499, + 5500, 5501, 5502, 5503, 5504, 5505, 5506, 5507, + 5508, 5509, 5510, 5511, 5512, 5513, 5514, 5515, + 5516, 5517, 5518, 5519, 5520, 5521, 5522, 5523, + 5524, 5525, 5526, 5527, 5528, 5529, 5530, 4944, + 5532, 5533, 5534, 5535, 5536, 5537, 5538, 5539, + 5540, 5541, 5542, 5543, 5544, 5545, 5546, 5547, + 5548, 5549, 5550, 5551, 5552, 5553, 5554, 5555, + 5556, 5557, 5558, 5559, 5560, 5561, 5562, 5563, + 5564, 5565, 5566, 5567, 5568, 32767, 32767, 5569, + 5570, 5571, 5572, 5573, 5574, 5575, 5576, 5577, + 5578, 5579, 5580, 5581, 5582, 5583, 5584, 5585, + 5586, 5587, 5588, 5589, 5590, 5591, 5592, 5593, + 5594, 5595, 5596, 5597, 5598, 5599, 5600, 5601, + 5602, 5603, 5604, 5605, 5606, 5607, 5608, 5609, + 5610, 5611, 5612, 5613, 5614, 5615, 5616, 5617, + 5618, 5619, 5620, 5621, 5622, 5623, 5624, 5625, + 5626, 5627, 5628, 5629, 5304, 5631, 5632, 5633, + 5634, 5635, 5299, 5637, 5638, 5639, 5640, 5641, + 5642, 5643, 5644, 5645, 5306, 5647, 5648, 5649, + 5650, 5651, 5652, 5653, 5654, 5655, 5656, 32767, + 5657, 5071, 5659, 5660, 5661, 5662, 5663, 5664, + 5665, 5666, 5667, 5668, 5669, 5670, 5671, 5672, + 5673, 5674, 5675, 5676, 5677, 5678, 5679, 5680, + 5681, 5682, 5683, 5684, 5685, 5686, 5687, 5688, + 5689, 5690, 5691, 5692, 5693, 5694, 5695, 5696, + 5697, 5698, 5699, 5700, 5701, 5702, 5703, 5704, + 5705, 5706, 5707, 5708, 5709, 5710, 5711, 5712, + 5713, 5714, 5715, 5716, 5717, 5718, 5719, 5720, + 5721, 5722, 5723, 5724, 5725, 5726, 5727, 5728, + 5729, 5730, 5731, 5732, 5733, 5734, 5735, 5736, + 5737, 5738, 5739, 5740, 5741, 5742, 5743, 5744, + 5745, 5746, 5747, 5748, 5749, 5750, 5751, 5752, + 5753, 5754, 5755, 5756, 5757, 5758, 5433, 5760, + 5761, 5762, 5763, 5764, 5428, 5766, 5767, 5768, + 5769, 5770, 5771, 5772, 5773, 5774, 5435, 5776, + 5777, 5778, 5779, 5780, 5781, 5782, 5783, 5784, + 5785, 5786, 5787, 5788, 5789, 5790, 5791, 5792, + 5793, 5794, 5795, 5796, 5797, 5798, 5799, 5800, + 5801, 5802, 5466, 5466, 5805, 5806, 5807, 5808, + 5809, 5810, 5811, 5468, 5468, 5814, 5815, 5816, + 5817, 5818, 5819, 5471, 5471, 5822, 5823, 5824, + 5825, 5826, 5827, 5828, 5829, 5830, 5831, 5832, + 5833, 5834, 5835, 5836, 5837, 5838, 5839, 5840, + 2057, 2058, 5843, 5844, 5845, 5846, 5847, 5848, + 5849, 5850, 5851, 5852, 5853, 5854, 5855, 5856, + 5857, 5858, 5859, 5860, 32767, 32767, 5861, 5862, + 5863, 5864, 5865, 5866, 5867, 5868, 5869, 5870, + 5871, 5872, 5873, 5874, 5875, 5876, 5877, 5878, + 5879, 5880, 5881, 5882, 5883, 5884, 5885, 5886, + 5887, 5888, 5889, 5890, 5891, 5892, 5893, 5894, + 5895, 5896, 5897, 5898, 5899, 5900, 5901, 5902, + 5903, 5904, 5905, 5906, 5907, 5908, 5909, 5910, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 890, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 891, 32767, 32767, 32767, + 32767, 32767, 32767, 4620, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 2059, 2060, 2061, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 799, 32767, 32767, 32767, - 32767, 800, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 801, 802, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, - 0, 0, 0, 0, 6545, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 32767, 0, 0, - 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, - -5711, 241, 242, 243, 244, 0, 246, 247, - 248, 249, 250, 251, 252, 0, 0, 0, - 0, 892, 0, 0, 0, 0, 0, 0, - 264, 0, 0, 0, 32767, 32767, 0, 0, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 32767, 32767, 32767, + 4827, 4828, 4829, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2062, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2063, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 893, -266, 895, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 284, 285, 286, 287, 288, 0, 290, 291, - 292, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 0, 0, 0, - 0, 0, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 293, 294, 295, 296, 297, 298, 32767, 32767, - 299, -4082, -4081, -4080, 303, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 32767, 0, 0, 0, 0, - 0, 32767, 0, 32767, 0, 0, 32767, 0, - 0, 32767, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -4245, -4245, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 32767, 32767, 32767, - 32767, 32767, -689, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4621, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -706, - -706, -706, -706, -706, -706, -706, -706, 32767, - 32767, -7551, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 2064, 2065, 2066, + 2067, 2068, 2069, 2070, 2071, 2072, 2073, 2074, + 2075, 2076, 2077, 2078, 2079, 2080, 2081, 2082, + 2083, 2084, 2085, 2086, 2087, 2088, 2089, 2090, + 2091, 2092, 2093, 2094, 2095, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, -4377, -4377, -8024, -8023, -4377, -4377, - -3916, -4377, -4377, -4377, -4377, -4377, -4377, -4377, - 32767, -4378, -4378, -4378, -4378, -4378, -4378, -4378, - -4378, -4378, -4378, -4378, -4378, -4378, -4378, -4378, - -4378, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 150, 1867, 150, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5247, 0, 939, 0, 940, 0, 5518, - 0, 8555, 0, 0, 0, 5253, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 944, - 0, 0, 0, 0, 0, 0, 945, 0, - 946, 0, 0, 947, 948, 0, 949, 950, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -759, 959, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 960, 961, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 5204, 0, 0, 0, - 0, 962, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 963, 964, 0, - 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 4622, 4623, + 4624, 4625, 4626, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 5186, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 2096, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -961,768 +1549,94 @@ Decomp_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 2097, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 2098, + 2099, 2100, 2101, 2102, 2103, 2104, 2105, 2106, + 2107, 2108, 2109, 2110, 2111, 2112, 2113, 2114, + 2115, 2116, 2117, 2118, 2119, 2120, 2121, 2122, + 2123, 2124, 2125, 2126, 2127, 2128, 2129, 2130, + 2131, 2132, 2133, 2134, 2135, 2136, 2137, 2138, + 2139, 2140, 2141, 2142, 2143, 2144, 2145, 2146, + 2147, 2148, 2149, 2150, 2151, 2152, 2153, 2154, + 2155, 2156, 2157, 2158, 2159, 2160, 2161, 2162, + 2163, 2164, 2165, 2166, 2167, 2168, 2169, 2170, + 2171, 2172, 2173, 2174, 2175, 2176, 2177, 2178, + 2179, 2180, 2181, 2182, 2183, 2184, 2185, 2186, + 2187, 2188, 2189, 2190, 2191, 2192, 2193, 2194, + 2195, 2196, 2197, 2198, 2199, 2200, 2201, 2202, + 2203, 2204, 2205, 2206, 2207, 2208, 2209, 2210, + 2211, 2212, 2213, 2214, 2215, 2216, 2217, 2218, + 2219, 2220, 2221, 2222, 2223, 2224, 2225, 2226, + 2227, 2228, 2229, 2230, 2231, 2232, 2233, 2234, + 2235, 2236, 2237, 2238, 2239, 2240, 2241, 2242, + 2243, 2244, 2245, 2246, 2247, 2248, 2249, 2250, + 2251, 2252, 2253, 2254, 2255, 2256, 2257, 2258, + 2259, 2260, 2261, 2262, 2263, 2264, 2265, 2266, + 2267, 2268, 2269, 2270, 2271, 2272, 2273, 2274, + 2275, 2276, 2277, 2278, 2279, 2280, 2281, 2282, + 2283, 2284, 2285, 2286, 2287, 2288, 2289, 2290, + 2291, 2292, 2293, 2294, 2295, 2296, 2297, 2298, + 2299, 2300, 2301, 2302, 2303, 2304, 2305, 2306, + 2307, 2308, 2309, 2310, 2311, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 5256, -4973, -4973, 32767, - 5261, 5262, 5263, 5264, 5265, 5266, 5267, -4974, - -4974, 978, 979, 980, 981, 32767, 982, 983, - 984, 985, 986, 987, 988, 32767, 32767, 32767, - 32767, 1624, 32767, 32767, 32767, 32767, 32767, 32767, - 990, 32767, 32767, 0, 991, 992, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4759, - 4760, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 2312, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -723, -722, -2974, 32767, 996, -719, -168, - -717, -716, -715, 1002, 1003, 1004, -712, -711, - 32767, -710, 1008, 1009, 1010, 1011, -2060, 5892, - 2764, 2764, 2764, 1017, 1018, 1019, 1020, 1021, - 1022, 2567, 1024, 32767, 1025, 1026, 1027, 1028, - 1029, 1030, 1031, 1032, 1033, 1034, 2589, 1036, - 1037, -1729, -1729, -1729, -1729, 1042, 4211, 4211, - 4211, 4211, 4211, 4211, 1049, 1050, 4209, 1427, - 32767, 32767, 32767, 0, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -825, 32767, 32767, - 32767, 32767, 32767, 4718, 4719, 4720, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 4721, 4722, - 4723, 4724, 4725, 4726, 4727, 6291, 6292, 6293, - 4728, 4729, 4730, 4731, 4732, 6299, 6300, -4992, - 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, - 1078, 1079, 1080, 4733, 1082, 4734, 1084, 1085, - 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, - 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, - 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, - 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, - 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, - 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, - 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, - 1142, 1143, 1144, 1145, 1146, 4737, 1148, 4738, - 4739, 1151, 1152, 1153, 1154, 32767, 4740, 4741, - 4742, 1158, 1159, 1160, 1161, 1162, 1163, 1164, - 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, - 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, - 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1188, - 1189, 1190, 1191, 1192, 1193, 1194, 11979, 6272, - 1758, 1758, 1199, 1200, 1201, 1202, 1203, 1204, - 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, - 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, - 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, - 1229, -1074, -1073, 1232, 1233, 1234, 1235, 1236, - 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244, - 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, - 1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260, - 1261, 1262, 1263, 1264, 1265, 1266, 1267, 1268, - 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1276, - 1277, 1278, 1279, 1280, 1281, 1282, 1283, 1284, - 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292, - 1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300, - 1301, 1302, 1303, 1304, 1305, 1306, 1307, 4676, - 4677, 512, 32767, 32767, 32767, 32767, 1683, 1684, - 1685, 1314, 155, 1316, 1317, 1318, 1319, 1320, - 1321, 161, 1323, 1324, 1325, 1326, 1327, 1328, - 1329, 1330, 1331, 1332, 1333, 1334, 1335, 1336, - 1337, 1338, -4375, -4374, -8536, -8536, -8536, -8536, - 1345, 1346, 1444, 1445, 1446, 1447, 1448, -4360, - 1353, 1354, -8525, -5383, 1357, -8524, -8524, -8524, - -8524, -4348, 1363, -2456, 686, 1366, 1367, -8518, - -8518, -7581, 1371, 1372, -5364, 1374, 1375, -4332, - -4331, 1378, 1379, 1380, -4327, -8841, -8841, -8841, - -8841, -8841, -8841, -8841, 1389, 1390, -8843, -8843, - -8843, -8843, -8843, -8843, -8843, -8843, 1399, 1400, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 5957, - 2655, -5028, -5028, 2658, 2659, -3322, -1679, -1679, - -1679, -1679, -1679, -7010, -1679, -1679, -7010, -7010, - -1679, -1679, -1679, -1679, -1679, 32767, 32767, -1681, - -1681, -1681, -1681, -1681, -1681, 32767, 32767, -1683, - -1683, -3290, -3289, -3288, -3287, -3286, -3285, -12842, - 7263, -3282, -499, -9550, -499, -9549, -9549, -9549, - 96, -9549, -9816, -9549, 1704, -9548, -1864, -1863, - -9548, -9548, -3566, -5208, -5207, -5206, -5205, -5204, - 128, -5202, 131, 132, 133, 32767, 32767, -5195, - -3568, -3568, -5190, -5189, -3568, 32767, 32767, -5185, - -5184, -5183, -3570, -5180, 1478, -5179, -3571, 32767, - -3572, 32767, -3573, 32767, 5984, 32767, -3575, 2695, - 2696, 2697, 2698, 2699, 2700, -6944, 2702, 2970, - 2704, 6008, 2706, -4977, -4977, 2709, 2710, -3271, - 1502, -3478, 1504, -3626, -3626, -7766, 6033, 1509, - -3625, -7767, 1512, 1513, 1514, 32767, 32767, -3625, - -3625, -3625, -3625, -3625, -3625, -3625, 1522, -3624, - 1524, 1525, 1526, 1527, 1528, 1529, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3128, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1581, -673, 0, 784, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3025, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, -6843, - -6843, 0, 0, 0, 1619, 1620, 1621, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -2788, 32767, 32767, - 1634, 1635, 1636, 1637, 1638, 1639, 1640, 1641, - 4194, 1643, 1644, 32767, 32767, 32767, 32767, 32767, - 32767, 1352, 32767, 32767, 32767, 32767, 32767, 1646, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 1647, 1648, 1649, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1650, - 32767, 32767, 32767, 1651, 1652, 32767, 1653, 1654, - 32767, 32767, 32767, 32767, 1655, 32767, 1656, 32767, - 32767, 32767, 32767, 399, 399, 32767, 32767, 1657, - 1658, 1659, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 0, 0, 0, 32767, 32767, 32767, 1660, - 32767, 32767, 32767, 32767, 32767, 6619, 32767, 1661, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 5971, 5972, 5973, 5974, 1664, 5975, 6243, 5977, - 9281, 5979, -1704, -1704, 5982, 5983, 2, 4775, - -205, 4777, -353, -353, -4493, 9306, 4782, -352, - -4494, 4785, 4786, 4787, 4788, -350, -350, 6044, - 1691, 6045, 6046, 1694, 6047, 1696, 1697, 6048, - 1699, 6049, 6050, 6051, 6052, 0, 0, 0, - 0, 0, 0, 32767, 0, 0, 0, 0, - 1704, 0, 32767, 0, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 32767, -3338, -3338, - -3338, 0, 32767, 0, 32767, 0, 0, 0, - 32767, 0, 0, 32767, 0, 32767, 32767, 0, - 0, 0, 0, 0, 32767, 0, 32767, 0, - 1705, 1706, 1707, 1708, 1709, 759, 759, 759, - 759, 759, 759, 759, 0, 0, 0, 0, - 0, 3035, 0, 32767, 0, 1719, 10109, 1721, - 1722, 1723, 1724, 1725, 1726, 1727, 1728, 1729, - 1730, 0, 0, 0, 0, 0, 0, 0, - 0, 9764, 6757, 6758, 6759, 8018, 0, 0, - 0, 1720, 1720, 1720, 0, 0, 2557, 2558, - 1720, 0, -1282, 0, -1281, -1281, -1281, 633, - 1720, -1279, -1279, 1720, 4767, 0, 1720, 1720, - 0, 0, 1718, 1718, -3263, 0, 6007, 6008, - -7790, 6010, 6011, 6012, -3266, 1719, 0, 1718, - 0, 1717, 0, -150, 1717, 1717, 1717, 32767, - 1716, 1716, 1716, 3969, 1715, 0, 1716, 1166, - 1716, 1716, 1716, 0, 0, 0, 1717, 1717, - 1717, 1717, 0, 0, 0, 0, 3072, -4879, - -1750, -1749, -1748, 0, 0, 0, 0, 0, - 0, -1544, 0, 1789, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -1554, 0, - 0, 2767, 2768, 2769, 2770, 0, -3168, -3167, - -3166, -3165, -3164, -3163, 0, 0, -3158, -375, - -9426, -375, -9425, 1821, 1822, 218, -9427, 1825, - -9426, 1827, 1828, -1742, -1741, 1878, 1879, 1833, - 1834, 32767, 32767, 32767, 32767, 2642, -4765, -1739, - -1738, 32767, 1835, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 2718, -3491, 3174, 3174, 3174, - -3669, -3669, -3669, -3669, -3669, -5232, -5232, -5232, - -3666, -3666, -3666, -3666, -3666, -5232, -5232, 6061, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -3652, 0, -3651, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -3590, 0, -3589, - -3589, 0, 0, 0, 0, 32767, 1842, 32767, - 32767, 32767, 32767, 1843, 32767, 32767, 1844, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 1845, 32767, - 1846, 32767, 32767, 32767, 32767, 32767, 1847, 1848, - 0, 1849, 1850, 0, 32767, 32767, 0, 0, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 1851, 32767, 32767, 1852, 32767, - 32767, 1853, 32767, 1854, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, -4903, 32767, -6162, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 137, - 1858, 3141, 1860, 3142, 32767, 32767, 1229, 143, - 32767, 32767, 144, -2902, 0, 0, 32767, 32767, - 32767, 32767, 148, 5130, 0, 0, -4140, 9659, - 32767, 0, -4142, 5137, 5138, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 32767, - 0, 5148, 5149, 5150, 5151, 5152, 5153, 4782, - 3623, 3623, 3623, 3623, 3623, 3623, 3623, 3623, - 3623, 3623, 3623, 3623, 3623, 3623, 6751, 3623, - 3623, 3623, 3623, 3623, 3623, 3623, 3623, 3623, - 3623, 3623, 3623, 3623, 32767, 3622, 3622, 3622, - 3622, 32767, 3621, 3621, 3621, 0, 3622, 32767, - 3621, 32767, 32767, 32767, 3618, 3618, 3618, 3618, - 3618, 3618, 3618, 32767, 2944, 0, 4402, 3618, - 3618, 3618, 3618, 3618, 3618, 3618, 3618, 3618, - 3618, 3618, 3618, 3618, 0, 0, 3620, 3620, - 3620, 3620, 3620, 3620, -762, 6646, 3621, 3621, - 3621, 3621, 3621, 3621, 3621, 3621, 3621, 3621, - -3222, -3222, 3621, 3621, 3621, 5240, 5241, 5242, - 0, 0, 3623, 3623, 3623, 0, 3624, 3624, - 3624, 3624, 3624, 3624, 3624, 3624, 836, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -3647, -3646, 0, 0, - 461, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 468, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 0, 32767, 0, 470, 471, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 472, 473, 474, 475, 476, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 775, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 4803, 4804, 7596, 7596, 7596, - 4808, 4809, 4810, 4811, 4812, 4813, 4814, 4815, - 4816, 4817, 4818, 4819, 4820, 4821, 4822, 4823, - 4824, 3988, 3988, 4827, 4828, 7830, 1792, 7832, - 7833, 7834, 5921, 4835, 7835, 7836, 4838, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3036, 6038, 0, - 6040, 6041, 6042, 4129, 3043, 6043, 6044, 3046, - 0, 3048, 3049, 3050, 6046, 6047, 3053, 3054, - 3055, 3056, -1230, 3058, 3059, -1232, -1232, 3062, - 3063, 3064, 3065, 3066, 3067, 3068, 3069, 3070, - 3071, 3072, 3073, 3074, 3075, 3076, 3077, 3078, - 3079, 3080, 3081, 3632, 3083, 3084, 3085, 3086, - 3087, 3088, 3089, 3090, 3091, 3092, 3093, 3094, - 3095, 3096, 3097, 3098, 3099, 3100, 3101, 3102, - 3103, -814, 3105, 3106, 3107, 3108, -6867, 3110, - 3111, 3112, 3113, 9179, 9180, 3116, 3117, 3118, - 3119, -22, 3121, 3122, 3123, 3124, 3125, 3126, - 3127, 3128, 3129, 3130, 2196, 3132, 3133, 2197, - 3135, 3136, 3137, 3138, 3139, 3140, 3141, 3142, - 3143, 3144, -6500, 3146, 3414, 3148, 6452, 3150, - -4533, -4533, 3153, 3154, -2827, -1184, -1184, -1184, - -1184, -1184, -6515, -1184, -1184, -6515, -6515, -1184, - -1184, -1184, -1184, -1184, -1184, -1184, -1184, -1184, - -1184, -1184, -1184, -1184, -1184, -1184, -1184, -1184, - -2791, -2790, -2789, -2788, -2787, -2786, -12343,7762, - -2783, 0, -9051, 0, -9050, -9050, -9050, 595, - -9050, -9317, -9050, 2203, -9049, -1365, -1364, -9049, - -9049, -3067, -4709, -4708, -4707, -4706, -4705, 627, - -4703, 630, 631, 632, -3067, -3067, -4694, -3067, - -3067, -4689, -4688, -3067, 3131, -4683, -4682, -4681, - -4680, -3067, -4677, 1981, -4676, -3068, -3068, -3068, - -3068, -3068, -3068, 6490, -13614,-3068, 3202, 3203, - 3204, 3205, 3206, 3207, -6437, 3209, 3477, 3211, - 6515, 3213, -4470, -4470, 3216, 3217, -2764, 2009, - -2971, 2011, -3119, -3119, -7259, 6540, 2016, -3118, - -7260, 2019, 2020, 2021, 2022, -3116, -3116, 3278, - 3279, 3280, 3281, 3282, 3283, 3284, 3285, 3286, - 3287, 3288, 3289, 3290, 3291, 32767, 3292, 3293, - -869, -869, -869, -869, 9107, 9108, 9109, 9110, - 9111, 9112, 9113, 3305, 32767, 32767, -863, 32767, - -864, 32767, 32767, -866, -866, 3310, 3311, -864, - -864, -864, 71, -864, -864, 32767, 72, 32767, - 2290, 32767, 32767, 3320, 3321, 32767, 32767, 32767, - 3322, -1192, -1192, -1192, -1192, -1192, -1192, -1192, - -1192, -1192, -1192, -1192, -1192, -1192, -1192, -1192, - -1192, -1192, -1192, -1192, -1192, -1192, -1192, -1192, - -1192, -1192, -1192, -1192, -1192, -1192, -1192, -1192, - -1192, -1192, -1192, -1192, -1192, -1192, -1192, -1192, - -1192, -1192, -1192, 3365, 3366, 3367, -1189, -1189, - -1189, -1189, -1189, -1189, 3374, 3375, -1187, -1187, - -1187, -1187, -1187, -1187, 3382, 3383, -1185, -1185, - -1185, -1185, -1185, -1185, 32767, 32767, -1185, -1185, - -1185, 3393, 3394, 3395, -1182, 3397, 3398, 3399, - 3400, 3401, 3402, 1274, 1274, 3405, -5404, 3407, - 3408, 3409, 3410, 1274, 1274, 1274, 1274, 1274, - 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, - 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, - 3432, 3433, 3434, 3435, 3436, 3437, 3438, 3439, - 3440, 3441, 3442, 3443, 3444, 3445, 3446, 3447, - 3448, 3449, 3450, 3451, 3452, 3453, 3454, 3455, - -1138, -1138, -1138, -1138, -1138, 3461, 3462, 3299, - 3464, 3465, 3466, 3467, 3468, 3469, 3470, 3471, - 3472, 3473, 3474, 3475, 3476, 3477, 3478, 3479, - 3480, 3481, 3482, 3483, 3484, 3485, 3486, 3487, - 3488, 3489, 3490, 3491, 3492, 3493, 3494, 3495, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3496, - 3497, 3498, 3499, 3500, 3501, 3502, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 3503, 3211, 3211, 3211, 3211, 32767, - 32767, 32767, 32767, 32767, 7590, 7590, 7590, 3208, - 3512, 3513, 3514, 3515, 3516, 3517, 3518, 3519, - 3520, 3521, 3522, 3523, 3524, 3525, 3526, 3527, - 3528, 3529, 3530, 3531, 3532, 3533, 32767, 3534, - 3535, 3536, 3537, 3538, 32767, 3539, 32767, 3540, - 3541, 32767, 3542, 3543, 32767, 3544, 3545, 3546, - 3547, 3548, 3549, 3550, 3551, 3552, 3553, 3554, - 3555, 3556, 3557, 3558, 3559, 3560, 3561, 3562, - 3563, 3564, 3565, 3566, 3567, 3568, 3569, 3570, - 3571, 3572, 3573, 3574, 3575, 3576, 3577, 3578, - 3579, 3580, 3581, 3582, 3583, 3584, 3585, 3586, - 3587, 3588, 3589, 3590, 3591, 3592, 3593, 3594, - 3595, 3596, 3597, 3598, 3599, 3600, 3601, 3602, - 3603, 3604, 3605, 3606, 3607, 3608, 3609, 3610, - 3611, 3612, 3613, 3614, 3615, 3616, 3617, 3618, - 3619, 3620, 3621, 3622, 3623, 3624, 3625, 3626, - 3627, 3628, 3629, 3630, 3631, 3632, 3633, 3634, - 3635, 3636, 3637, 3638, 3639, 3640, 3641, 3642, - 3643, 3644, 3645, 3646, 3647, 3648, 3649, 3650, - 3651, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 3652, 3653, 3654, 3655, 3656, 3657, - 3658, 3659, 3660, 3661, 3662, 3663, 3664, 3665, - 3666, 3667, 3668, 3669, 3670, 3671, 3672, 3673, - 3674, 3675, 3676, 3677, 3678, 3679, 3680, 3681, - 3682, 3683, 3684, 3685, 3686, 3687, 3688, 3689, - 3690, 3691, 3692, 3693, 3694, 3695, 3696, 32767, - 3244, 3698, 3699, 3700, 3701, 3702, 4131, 3704, - 3251, 3251, 3707, 3252, 3709, 3710, 3711, 3255, - 3713, 3714, 3715, 3716, 3259, 3259, 3259, 3720, - 3721, 3722, 3723, 3724, 3725, 3726, 3727, 3728, - 3729, 3730, 3731, 3732, 0, 0, 3735, 3736, - 3737, 3738, 3739, 3740, 3741, 3742, 3743, 3744, - 3745, 3746, 3747, 3748, 3749, 3750, 3751, 3752, - 3753, 3754, 3755, 3756, 3757, 3758, 3759, 3760, - 3761, 3300, 3763, 3764, 3765, 3766, 3767, 3768, - 3769, 3770, 3771, 3772, 3773, 3774, 3775, 3776, - 3777, 3778, 3779, 3780, 3781, 3782, 3783, 3784, - 3322, 3322, 3787, 3323, 3789, 3790, 3791, 3326, - 3793, 3794, 3795, 3796, 3330, 3798, 3330, 3800, - 3801, 3802, 3803, 3804, 3805, 3806, 3807, 3808, - 3809, 3810, 3811, 3812, 3813, 3814, 3815, 3816, - 3817, 3818, 3819, 3820, 3821, 3822, 3823, 3824, - 3825, -1667, 3827, 3828, 3829, 3830, 3831, 3832, - 3833, 3834, 3835, 3836, 3837, 3838, 3839, 3840, - 3841, 3842, 3843, 3844, -1685, 3846, 3847, 3848, - 3849, 3850, 3851, 3852, 3853, 3854, 3855, 3856, - 3857, 3858, 3859, 3860, 3861, 3862, 3863, 3864, - 3865, 3866, 3867, 3868, 3869, 3870, 3871, 3872, - 3873, 3874, 3875, 3876, 3877, 3878, 3879, 3880, - 3881, 3882, 3883, 3884, 3885, 3886, 3887, 3888, - 3889, 3890, 3891, 3892, 3893, 3894, 3895, 3896, - 3897, 8237, 8238, 3900, 3901, 3902, 3903, 3904, - 3905, 3906, 3907, 3908, 3909, 3910, 3911, 3912, - 11266, 11267, 11268, 9355, 3917, 3918, 11272, 8274, - 3921, 3922, 3438, 3438, 3438, 3438, 3438, 3438, - 3929, 3930, 3440, 3440, 3440, 3440, 6476, 9478, - 3937, 3938, 9483, 9484, 7571, 6485, 9485, 9486, - 6488, 3442, 6490, 6491, 6492, 9488, 3951, 3952, - 32767, -866, -866, -866, -866, -866, -866, -29, - -28, -866, -866, -3867, 2172, -3867, -3867, -3867, - -1953, -866, -3865, -3865, -866, 3973, 3974, 3975, - 3976, 3977, 3978, 3979, 3980, 3981, 3982, 3983, - 3984, 3985, 3986, 951, -2050, 3989, -2050, -2050, - -2050, -136, 951, -2048, -2048, 951, 3998, 951, - 951, 951, -2044, -2044, 951, 951, 951, 951, - 5238, 951, 951, 5243, 5244, 951, 951, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 383, 933, 933, 933, 933, 933, 933, - 933, 933, 933, 933, 933, 933, 933, 933, - 933, 933, 933, 933, 933, 933, 933, 4851, - 933, 933, 933, 933, 10909, 933, 933, 933, - 933, -5132, -5132, 933, 933, 933, 933, 4075, - 933, 933, 933, 933, 933, 933, 933, 933, - 933, 933, 1868, 933, 933, 1870, 933, 933, - 933, 933, 933, 933, 933, 933, 933, 933, - 10578, 0, 32767, 931, -2372, 931, 8615, 8616, - 931, 931, 6913, 5271, 5272, 5273, 5274, 5275, - 10607, 5277, 5278, 10610, 10611, 5281, 5282, 5283, - 5284, 5285, 5286, 5287, 5288, 5289, 5290, 5291, - 5292, 5293, 5294, 5295, 5296, 5297, 6905, 6905, - 6905, 6905, 6905, 6905, 16463, -3641, 6905, 4123, - 13175, 4125, 13176, 13177, 13178, 3534, 13180, 13448, - 13182, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 0, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -2357, 17748, 7203, 934, 934, 934, 934, - 934, 934, 10579, 934, 667, 934, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 4146, 4147, 4148, 4149, 4150, 4151, - 4152, 4153, 4154, 4155, 32767, 32767, 32767, 32767, - 32767, 32767, 4156, 4157, 4158, 4159, 4160, 4161, - 4162, 4163, 4164, 4165, 4166, 4167, 4168, 4169, - 4170, 4171, 4172, 4173, 4174, 4175, 4176, 4177, - 4178, 4179, 4180, 4181, 4182, 5374, 5375, 5376, - 6978, 4187, 4188, 4189, 4190, 6982, 6982, 32767, - 32767, 4193, 4194, 4195, 4196, 4197, 4198, 4199, - 4200, 4201, 4202, 4203, 4204, 32767, 6995, 6995, - 4207, 4208, 4209, 4210, 4211, 4212, 4213, 4214, - 4215, 4216, 4217, 4218, 4219, 4220, 4221, 4222, - 4223, 32767, 3386, 4225, 4226, 7228, 32767, 32767, - 32767, 32767, 5315, 4229, 7229, 32767, 4231, 32767, - 4232, 4233, 4234, 7230, 7231, 4237, 4238, 4239, - 4240, -46, 4242, 4243, -48, -48, 4246, 4247, - 4248, 4249, 4250, 4251, 4252, 4253, 4254, 4255, - 4256, 4257, 4258, 4259, 4260, 4261, 4262, 4263, - 4264, 4265, 4816, 4267, 4268, 4269, 4270, 4271, - 4272, 4273, 4274, 4275, 4276, 4277, 4278, 4279, - 4280, 4281, 4282, 4283, 4284, 4285, 4286, 4287, - 370, 4289, 4290, 4291, 4292, -5683, 4294, 4295, - 4296, 4297, 10363, 10364, 4300, 4301, 4302, 4303, - 1162, 4305, 4306, 4307, 4308, 4309, 4310, 4311, - 4312, 4313, 4314, 3380, 4316, 4317, 3381, 4319, - 4320, 4321, 4322, 4323, 4324, 4325, 4326, 4327, - 4328, -5316, 4330, 4598, 4332, 7636, 4334, -3349, - -3349, 4337, 4338, -1643, 0, 0, 0, 0, - 0, -5331, 0, 0, -5331, -5331, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 4126, - 4127, 4128, 4129, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, -1258, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - -1272, -1272, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -1851, -1851, -1851, -1851, - -1851, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3235, 0, -6925, 306, - 306, 306, 306, 306, 306, 306, 306, 306, - 306, 306, 306, -1764, -1764, 4472, 4473, 311, - 311, 311, 311, 10287, 10288, 10289, 10290, 10291, - 10292, 10293, 4485, 10198, 319, 319, 3461, 319, - 319, 319, 319, 319, 4495, 4496, 321, 321, - 321, 1256, 321, 321, 1258, 1258, 0, 3477, - 10215, 10216, 4509, 4510, 10219, 10220, 10221, 4514, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 4579, 4580, 4581, 4582, - 4583, 4584, 32767, 2455, 4586, -4223, 4588, 4589, - 4590, 4591, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 4885, 4886, 4887, - 4888, 4889, 4890, 4891, 4892, 4893, 4894, 4895, - 4896, 4897, 4898, 4899, 4900, 4901, 4902, 4903, - 4904, 4616, 4906, 4907, 4908, 4909, 4910, 4911, - 4912, 4913, 4914, 4915, 4916, 4917, 4918, 4919, - 4920, 4921, 4922, 4923, 4924, 4925, 4926, 4927, - 4928, 4929, 4930, 4931, 4932, 4933, 4934, 4935, - 4936, 4937, 4938, 4939, 4940, 4941, 4942, 4943, - 4944, 4945, 4946, 4947, 4948, 567, 568, 569, - 4952, -2455, 571, 572, 4956, 4957, 4958, 4959, - 4960, 4961, 4962, 4963, 4964, 4965, 4966, 4967, - 4968, 4969, 32767, 4970, 4971, 4972, 4973, 4974, - 4975, 4976, 4977, 4978, 4979, 4980, 6623, 6623, - 6623, 6623, 6623, 1292, 6623, 1291, 1291, 1291, - 4991, 4992, 6620, 4994, 4995, 6618, 6618, 4998, - -1199, 6616, 6616, 6616, 6616, 5004, 6615, 6615, - 6615, 5008, 5009, 5010, 5011, 5012, 5013, -4544, - 15561, 5016, -1253, -1253, -1253, -1253, -1253, -1253, - 8392, -1253, -1520, -1253, -4556, -1253, 6431, 6432, - -1253, -1253, 4729, 3087, 3088, 3089, 3090, 3091, - 8423, 3093, 3094, 8426, 8427, 3097, 3098, 3099, - 3100, 3101, 3102, 3103, 3104, 3105, 3106, 3107, - 3108, 3109, 3110, 3111, 3112, 3113, 4721, 4721, - 4721, 4721, 4721, 4721, 14279, -5825, 4721, 1939, - 10991, 1941, 10992, 10993, 10994, 1350, 10996, 11264, - 10998, -254, 10999, 3316, 3316, 11002, 11003, 5022, - 6665, 6665, 6665, 6665, 6665, 1334, 6665, 1333, - 1333, 1333, 5033, 5034, 6662, 5036, 5037, 6660, - 6660, 5040, -1157, 6658, 6658, 6658, 6658, 5046, - 6657, 0, 6658, 5051, 5052, 5053, 5054, 5055, - 5056, -4501, 15604, 5059, -1210, -1210, -1210, -1210, - -1210, -1210, 8435, -1210, -1477, -1210, -4513, -1210, - 6474, 6475, -1210, -1210, 4772, 0, 4981, 0, - 5131, 5132, 9273, -4525, 0, 5135, 9278, 0, - 0, 0, 0, 5139, 5140, 5141, 5142, 5143, - 5144, 5145, 5146, 0, 5147, 0, 0, 0, - 0, 0, 0, 1530, 1531, 1532, 1533, 1534, - 1535, 1536, 1537, 1538, 1539, 1540, 1541, 1542, - 1543, 1544, -1583, 1546, 1547, 1548, 1549, 1550, - 1551, 1552, 1553, 1554, 1555, 1556, 1557, 1558, - 1559, 1560, 1561, 1562, 1563, 1564, 1565, 1566, - 1567, 5189, 1568, 1569, 1570, 1571, 1572, 1573, - 1574, 1575, 1576, 1577, 1578, 1579, 1580, 0, - 2255, 5200, 799, 1584, 1585, 1586, 1587, 1588, - 1589, 1590, 1591, 1592, 1593, 1594, 1595, 1596, - 5215, 5216, 1597, 1598, 1599, 1600, 1601, 1602, - 5985, -1422, 1604, 1605, 1606, 1607, 1608, 1609, - 1610, 1611, 1612, 1613, 8457, 8458, 1616, 1617, - 1618, 0, 0, 0, 5243, 5244, 1622, 1623, - 1624, 5248, 1625, 1626, 1627, 1628, 1629, 1630, - 1631, 1632, 4421, 5258, 5259, 5260, 5261, 5262, - 5263, 5264, 5265, 5266, 5267, 5268, 5269, 5270, - 5271, 5272, 5273, 5274, 5275, 5276, 5277, 5278, - 5279, 5280, 5281, 5282, 5283, 5284, 5285, 5286, - 8934, 8934, 5289, 5290, 4830, 5292, 5293, 5294, - 5295, 5296, 5297, 5298, 5299, 5300, 5301, 5302, - 5303, 5304, 5305, 5306, 5307, 5308, 5309, 5310, - 5311, 5312, 5313, 5314, 5315, 5316, 5317, 5318, - 5319, 5320, 5321, 5322, 5323, 5324, 5325, 5326, - 5327, 5328, 5329, 5330, 5331, 5332, 5333, 5334, - 5335, 5336, 5337, 5338, 5339, 5340, 5341, 5342, - 5343, 5344, 5345, 5346, 5347, 5348, 5349, 5350, - 5351, 5352, 5353, 5354, 5355, 5356, 5357, 5358, - 4891, 5360, 5361, 5362, 5363, 5364, 5365, 5366, - 5367, 5368, 5369, 5370, 5371, 5372, 32767, 5373, - 5374, -5231, 5376, 4532, 0, 5379, 5380, 5381, - 5382, 4270, 4271, 4272, 4273, 4274, 4275, 4276, - 4277, 4278, 12230, 9102, 9102, 9102, 5396, 8890, - 5398, 5399, 5400, 5401, 8899, 7356, 5568, 7358, - 7359, 0, 0, 7364, 7365, 7366, 7367, 7368, - 7369, 8924, 7371, 7372, 4606, 4606, 4606, 4606, - 7377, 10546, 10546, 10546, 10546, 10546, 10546, 20104, - 0, 10546, 7764, 16816, 7766, 16817, 5572, 5572, - 7177, 16823, 17091, 16825, 5573, 5573, 9144, 9144, - 5526, 0, 5574, 5574, 5450, 5451, 5452, 697, - 697, 5455, 0, 7172, 5458, 5576, 5460, -5456, - 5462, 5463, 5464, 0, 0, 4691, 5468, 5469, - 4693, 5471, 10898, 0, 0, 5475, 4698, 10908, - 5478, 5479, 5480, 5481, 1359, 1359, 1359, 5485, - 5486, 5487, 5488, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 101, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 87, 87, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, -492, -492, -492, -492, - -492, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 4594, 1359, -5566, 1665, - 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, - 1665, 1665, 1665, -405, -405, 5585, 5586, 1668, - 1668, 1668, 1668, 11644, 11645, 11646, 11647, 11648, - 11649, 11650, 5842, 11555, 1676, 1676, 4818, 1676, - 1676, 1676, 1676, 1676, 5852, 5853, 1678, 1678, - 1678, 2613, 1678, 1678, 2615, 2615, 1357, 4834, - 11572, 11573, 5866, 5867, 11576, 11577, 11578, 5871, - 1357, 1357, 1357, 1357, 1357, 1357, 1357, 1357, - 1357, -6594, -3465, -3464, -3463, 244, -3249, 244, - 244, 244, 244, -3253, -1709, 80, -1709, -1709, - 5651, 5652, -1711, -1711, -1711, -1711, -1711, -1711, - -3265, -1711, -1711, 1056, 1057, 1058, 1059, -1711, - -4879, -4878, -4877, -4876, -4875, -4874, -14431,5674, - -4871, -2088, -11139,-2088, -11138,108, 109, -1495, - -11140,-11407,-11140,113, 114, -3456, -3455, 164, - 5691, 118, 119, 244, 244, 244, 5000, 5001, - 244, 5700, -1471, 244, 127, 244, 11161, 244, - 244, 244, 5709, 5710, 1020, 244, 244, 1021, - 244, -5182, 5717, 5718, 244, 1022, -5187, 244, - 244, 244, 244, 4367, 4368, 4369, 244, 244, - 244, 244, 4374, 4375, 4376, 4377, 4378, 4379, - 4380, 4381, 4382, 4383, 4384, 4385, 4386, 4387, - 5646, 4389, 4390, 4391, 4392, 4393, 4394, 4395, - 4396, 4397, 4398, 4399, 4400, 4401, 4402, 5675, - 5676, 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, 6290, 6291, 6292, 6293, 6294, - 4444, 4445, 4446, 4447, 4448, 4449, 4450, 4451, - 4452, 4453, 4454, 1220, 4456, 11382, 4152, 4153, - 4154, 4155, 4156, 4157, 4158, 4159, 4160, 4161, - 4162, 4163, 6234, 6235, 0, 0, 4163, 4164, - 4165, 4166, -5809, -5809, -5809, -5809, -5809, -5809, - -5809, 0, -5712, 4168, 4169, 1028, 4171, 4172, - 4173, 4174, 4175, 0, 0, 4176, 4177, 4178, - 3244, 4180, 4181, 3245, 3246, 4505, 1029, -5708, - -5708, 0, 0, -5708, -5708, -5708, 0, 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, 0, 0, 0, 4557, 4558, 4559, 4560, - 4561, 4562, 0, 0, 4563, 4564, 4565, 4566, - 4567, 4568, 0, 0, 4569, 4570, 4571, 4572, - 4573, 4574, 2114, 2115, 4575, 4576, 4577, 0, - 0, 0, 4578, 0, 0, 0, 0, 0, - 0, 2129, 2130, 0, 8810, 0, 0, 0, - 0, 2137, 2138, 2139, 2140, 2141, 2142, 2143, - 2144, 2145, 2146, 2147, 2148, 2149, 2150, 2151, - 2152, 2153, 2154, 2155, 2156, 2157, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 4594, 4595, - 4596, 4597, 4598, 0, 0, 164, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2222, 2223, - 2224, 2225, 2226, 2227, 2228, 2229, 2230, 2231, - 2232, 2233, 2234, 2235, 2236, 2237, 2238, 2239, - 2240, 2241, 2242, 2243, 2244, 2245, 2246, 2247, - 2248, 2249, 2250, 2251, 2252, 2253, 2254, 2255, - 2256, 2257, 2258, 2259, 2260, 2261, 2262, 2263, - 2264, 2265, 2266, 2267, 2268, 2269, 2270, 705, - 706, 707, 708, 709, 2276, 2277, 2278, 2279, - 2280, 2281, 2282, 2283, 2284, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 2285, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 2286, 2287, 2288, 2289, 2290, 2291, - 32767, 32767, 32767, 32767, 32767, 32767, 2292, 32767, - 2293, 2294, 2295, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 2296, 32767, 2297, 32767, - 2298, 32767, 2299, 32767, 2300, 32767, 2301, 32767, - 2302, 32767, 2303, 32767, 2304, 32767, 2305, 32767, - 2306, 32767, 2307, 32767, 32767, 2308, 32767, 2309, - 32767, 2310, 32767, 32767, 32767, 32767, 32767, 32767, - 2311, 2312, 32767, 2313, 2314, 32767, 2315, 2316, - 32767, 2317, 2318, 32767, 2319, 2320, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 2321, 32767, 32767, 32767, - 32767, 2322, 2323, 2324, 2325, 32767, 2326, 2327, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 2328, 32767, 2329, 32767, - 2330, 32767, 2331, 32767, 2332, 32767, 2333, 32767, - 2334, 32767, 2335, 32767, 2336, 32767, 2337, 32767, - 2338, 32767, 2339, 32767, 32767, 2340, 32767, 2341, - 32767, 2342, 32767, 32767, 32767, 32767, 32767, 32767, - 2343, 2344, 32767, 2345, 2346, 32767, 2347, 2348, - 32767, 2349, 2350, 32767, 2351, 2352, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 2353, 32767, 32767, 2354, - 2355, 2356, 2357, 32767, 32767, 32767, 2358, 2359, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 2360, 2361, 2362, 2363, 2364, 2365, - 2366, 2367, 2368, 2369, 2370, 2371, 2372, 2373, - 2374, -753, 2376, 2377, 2378, 2379, 2380, 2381, - 2382, 2383, 2384, 2385, 2386, 2387, 2388, 2389, - 2390, 2391, 2392, 2393, 2394, 2395, 2396, 2397, - 2398, 2399, 2400, 2401, 2402, 2403, 2404, 2405, - 2406, 2407, 2408, 2409, 2410, 2411, 831, 3086, - 2414, 1631, 2416, 2417, 2418, 2419, 2420, 2421, - 2422, 2423, 2424, 2425, 2426, 2427, 2428, 2429, - 2430, 2431, 2432, 2433, 2434, 2435, 2436, 2437, - -587, 2439, 2440, 2441, 2442, 2443, 2444, 2445, - 2446, 2447, 2448, 9292, 9293, 2451, 2452, 2453, - 32767, 32767, 32767, 2454, 2455, 2456, 2457, 2458, - 2459, 2460, 2461, 2462, 2463, 2464, 2465, 2466, - 2467, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 4599, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 4600, 32767, + 32767, 32767, 2313, 2314, 2315, 2316, 2317, 2318, + 32767, 32767, 32767, 32767, 32767, 32767, 2319, 32767, + 2320, 2321, 2322, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2323, 32767, 2324, 32767, + 2325, 32767, 2326, 32767, 2327, 32767, 2328, 32767, + 2329, 32767, 2330, 32767, 2331, 32767, 2332, 32767, + 2333, 32767, 2334, 32767, 32767, 2335, 32767, 2336, + 32767, 2337, 32767, 32767, 32767, 32767, 32767, 32767, + 2338, 2339, 32767, 2340, 2341, 32767, 2342, 2343, + 32767, 2344, 2345, 32767, 2346, 2347, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2348, 32767, 32767, 32767, + 32767, 2349, 2350, 2351, 2352, 32767, 2353, 2354, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 2468, -1450, 2470, 2471, 2472, 2473, - 2474, 2475, 2476, 2477, 2478, 2479, 2480, 2481, - 2482, 2483, 2484, 2485, 2486, 2487, 2488, 2489, - 2490, 2491, 2492, 2493, 2494, 2495, 2496, 2497, - 2498, 32767, 2499, 2500, 2501, 2502, 2503, 2504, - 2505, 2506, 2507, 2508, 2509, 2510, 2511, 2512, - 2513, 2514, 2515, 2516, 2517, 2518, 2519, 2520, - 2521, 2522, 2523, 2524, 2525, 2526, 2527, 2528, - 2529, 2530, 2531, 2532, 2533, 2534, 2535, 2536, - 2537, 2538, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 2539, 2540, 5896, 2542, 2543, 2544, - 2545, 548, 2547, 2548, 2549, 2550, 2551, 2552, - 5919, 5920, 5921, 2556, 2557, 5926, 2559, 2560, - 2561, 2562, 2563, 2564, 2565, 2566, 2567, 2568, - 2569, 2570, 2571, 2572, 2573, 2574, 2575, 2576, - 2577, 2578, 2579, 2580, 2581, 2582, 2583, 2584, - 2585, 32767, 2586, 2587, 2588, 2589, 2590, 2591, - 2592, 2593, 2594, 2595, 2596, 2597, 2598, 2599, - 2600, 2601, 2602, 2603, 2604, 2605, 2606, 2607, - 2608, 2609, 2610, 2611, 2612, 2613, 2614, 2615, - 2616, 2617, 2618, 2619, 2620, 2621, 2622, 2623, - 2624, 2625, 2626, 2627, 2628, 2629, 2630, 2631, - 2632, 2633, 2634, 2635, 2636, 2637, 2638, 2639, - 2640, 2641, 2642, 2643, 2644, 2645, 2646, 2647, - 2648, 2649, 2650, 2651, 2652, 2653, 2654, 2655, - 2656, 2657, 2658, 2659, 2660, 2661, -703, 2663, - 2664, 2665, 2666, 2667, 2668, 2669, 2670, 2671, - 2672, 2673, 2674, 1999, 2676, 2677, 2678, 2679, - 2680, 2681, 2682, 2683, 2684, 2685, 2686, 2687, - 2688, 2689, 2690, 2014, 2692, 2693, 2694, 2695, - 2696, 2697, 2698, 2699, 2700, 2701, 2702, 2703, - 2704, 2705, 2706, 2707, 2708, 2709, -11089,2711, - 2712, 2713, 32767, 2714, 2715, 2716, 2717, 2718, - 8050, 2720, 2721, 8053, 8054, 2724, 2725, 2726, - 2727, 2728, 2729, 2730, 2731, 2732, 2733, 2734, - 2735, 2736, 2737, 2738, 2739, 2740, 2741, 2742, - 2743, 2744, 2745, 2746, 2747, 2748, -1377, -1377, - -1377, -1377, 2753, 2754, 2755, 2756, 2757, 2758, - 2759, 2760, 2761, 2762, 2763, 2764, 2765, 2766, - 4025, 2768, 2769, 2770, 2771, 2772, 2773, 2774, - 2775, 2776, 2777, 2778, 2779, 2780, 2781, 4054, - 4055, 2784, 2785, 2786, 2787, 2788, 2789, 2790, - 2791, 2792, 2793, 2794, 2795, 2796, 2797, 2798, - 2799, 2800, 2801, 2802, 2803, 2804, 2805, 2806, - 2807, 2808, 2809, 2810, 2811, 2812, 2813, 2814, - 2815, 2816, 2817, 4669, 4670, 4671, 4672, 4673, - 2823, 2824, 2825, 2826, 2827, 2828, 2829, 2830, - 2831, 2832, 2833, -401, 2835, 9761, 2531, 2532, - 2533, 2534, 2535, 2536, 2537, 2538, 2539, 2540, - 2541, 2542, 4613, 4614, -1621, -1621, 2542, 2543, - 2544, 2545, -7430, -7430, -7430, -7430, -7430, -7430, - -7430, -1621, -7333, 2547, 2548, -593, 2550, 2551, - 2552, 2553, 2554, -1621, -1621, 2555, 2556, 2557, - 1623, 2559, 2560, 1624, 1625, 2884, -592, -7329, - -7329, -1621, -1621, -7329, -7329, -7329, -1621, 2894, - 2895, 2896, 2897, 2898, 2899, 2900, 2901, 2902, - 2903, 2904, 2905, 2906, 2907, 2908, 2909, 2910, - 2911, 2912, 2913, 2914, 2915, 2916, 2917, 2918, - 2919, 2920, 2921, 2922, 2923, 2924, 2925, 2926, - 2927, 2928, 2929, 2930, 2931, 2932, 2933, 2934, - 2935, 2936, 2937, 2938, 2939, 2940, 2941, 2942, - 2943, 2944, 2945, 2946, 2947, 2948, 2949, 2950, - 2951, 2952, 2953, 2954, 2955, 2956, 2957, 2958, - 2959, 2960, 2961, 2962, 2963, 2964, 2965, 2966, - 2967, 2968, 2969, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 4627, 2355, 32767, 2356, 32767, + 2357, 32767, 2358, 32767, 2359, 32767, 2360, 32767, + 2361, 32767, 2362, 32767, 2363, 32767, 2364, 32767, + 2365, 32767, 2366, 32767, 32767, 2367, 4628, 2368, + 32767, 2369, 32767, 32767, 32767, 32767, 32767, 32767, + 2370, 2371, 32767, 2372, 2373, 32767, 2374, 2375, + 32767, 2376, 2377, 32767, 2378, 2379, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2380, 32767, 32767, 2381, + 2382, 2383, 2384, 32767, 32767, 32767, 2385, 2386, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 0, 0, 0, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 2387, 2388, 2389, 2390, 2391, 2392, + 2393, 2394, 2395, 2396, 2397, 2398, 2399, 2400, + 2401, 2402, 2403, 2404, 2405, 2406, 2407, 2408, + 2409, 2410, 2411, 2412, 2413, 2414, 2415, 2416, + 2417, 2418, 2419, 2420, 2421, 2422, 2423, 2424, + 2425, 2426, 2427, 2428, 2429, 2430, 2431, 2432, + 2433, 2434, 2435, 2436, 2437, 2438, 2439, 2440, + 2441, 2442, 2443, 2444, 2445, 2446, 2447, 2448, + 2449, 2450, 2451, 2452, 2453, 2454, 2455, 2456, + 2457, 2458, 2459, 2460, 2461, 2462, 2463, 2464, + 2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, + 2473, 2474, 2475, 2476, 2477, 2478, 2479, 2480, + 32767, 32767, 32767, 2481, 2482, 2483, 2484, 2485, + 2486, 2487, 2488, 2489, 2490, 2491, 2492, 2493, + 2494, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -1734,25 +1648,120 @@ Decomp_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 2495, 2496, 2497, 2498, 2499, 2500, + 2501, 2502, 2503, 2504, 2505, 2506, 2507, 2508, + 2509, 2510, 2511, 2512, 2513, 2514, 2515, 2516, + 2517, 2518, 2519, 2520, 2521, 2522, 2523, 2524, + 2525, 32767, 2526, 2527, 2528, 2529, 2530, 2531, + 2532, 2533, 2534, 2535, 2536, 2537, 2538, 2539, + 2540, 2541, 2542, 2543, 2544, 2545, 2546, 2547, + 2548, 2549, 2550, 2551, 2552, 2553, 2554, 2555, + 2556, 2557, 2558, 2559, 2560, 2561, 2562, 2563, + 2564, 2565, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 2566, 2567, 2568, 2569, 2570, 2571, + 2572, 2573, 2574, 2575, 2576, 2577, 2578, 2579, + 2580, 2581, 2582, 2583, 2584, 4629, 4630, 3460, + 3461, 3462, 2590, 4634, 4635, 4636, 3462, -1012, + -1011, -1010, 2598, 2599, 2600, 2601, 2602, 2603, + 2604, 2605, 2606, 2607, 2608, 2609, 2610, 2611, + 2612, 4656, 2613, 2614, 2615, 2616, 2617, 2618, + 2619, 2620, 2621, 2622, 2623, 2624, 2625, 2626, + 2627, 2628, 2629, 2630, 2631, 2632, 2633, 2634, + 2635, 2636, 2637, 2638, 2639, 2640, 2641, 2642, + 2643, 2644, 2645, 2646, 2647, 2648, 2649, 2650, + 2651, 2652, 2653, 2654, 2655, 2656, 2657, 2658, + 2659, 2660, 2661, 2662, 2663, 2664, 2665, 2666, + 2667, 2668, 2669, 2670, 2671, 2672, 2673, 2674, + 2675, 2676, 2677, 2678, 2679, 2680, 2681, 2682, + 2683, 2684, 2685, 2686, 2687, 2688, 2689, 2690, + 2691, 2692, 2693, 2694, 2695, 2696, 2697, 2698, + 2699, 2700, 2701, 2702, 2703, 2704, 2705, 2706, + 2707, 2708, 2709, 2710, 2711, 2712, 2713, 2714, + 2715, 2716, 2717, 2718, 2719, 2720, 2721, 2722, + 2723, 2724, 2725, 2726, 2727, 2728, 2729, 2730, + 2731, 2732, 2733, 2734, 2735, 2736, 2737, 2738, + 2739, 2740, 32767, 2741, 2742, 2743, 2744, 2745, + 2746, 2747, 2748, 2749, 2750, 2751, 2752, 2753, + 2754, 2755, 2756, 2757, 2758, 2759, 2760, 2761, + 2762, 2763, 2764, 2765, 2766, 2767, 2768, 2769, + 2770, 2771, 2772, 2773, 2774, 2775, 2776, 2777, + 2778, 2779, 2780, 2781, 2782, 2783, 2784, 2785, + 2786, 2787, 2788, 2789, 2790, 2791, 2792, 2793, + 2794, 2795, 2796, 2797, 2798, 2799, 2800, 2801, + 2802, 2803, 2804, 2805, 2806, 2807, 2808, 2809, + 2810, 2811, 2812, 2813, 2814, 2815, 2816, 2817, + 2818, 2819, 2820, 2821, 2822, 2823, 2824, 2825, + 2826, 2827, 2828, 2829, 2830, 2831, 2832, 2833, + 2834, 2835, 2836, 2837, 2838, 2839, 2840, 2841, + 2842, 2843, 2844, 2845, 2846, 2847, 2848, 2849, + 2850, 2851, 2852, 2853, 2854, 2855, 2856, 2857, + 2858, 2859, 2860, 2861, 2862, 2863, 2864, 2865, + 2866, 2867, 2868, 2869, 2870, 2871, 2872, 2873, + 2874, 2875, 2876, 2877, 2878, 2879, 2880, 2881, + 2882, 2883, 2884, 2885, 2886, 2887, 2888, 2889, + 2890, 2891, 2892, 2893, 2894, 2895, 2896, 2897, + 2898, 2899, 2900, 2901, 2902, 2903, 2904, 2905, + 2906, 2907, 2908, 2909, 2910, 2911, 2912, 2913, + 2914, 2915, 2916, 2917, 2918, 2919, 2920, 2921, + 2922, 2923, 2924, 2925, 2926, 2927, 2928, 2929, + 2930, 2931, 2932, 2933, 2934, 2935, 2936, 2937, + 2938, 2939, 2940, 2941, 2942, 2943, 2944, 2945, + 2946, 2947, 2948, 2949, 2950, 2951, 2952, 2953, + 2954, 2955, 2956, 2957, 2958, 2959, 2960, 2961, + 2962, 2963, 2964, 2965, 2966, 2967, 2968, 2969, + 2970, 2971, 2972, 2973, 2974, 2975, 2976, 2977, + 2978, 2979, 2980, 2981, 2982, 2983, 2984, 2985, + 2986, 2987, 2988, 2989, 2990, 2991, 2992, 2993, + 2994, 2995, 2996, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 0, 0, 0, 0, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 32767, 0, 32767, 0, 32767, 0, - 32767, 0, 32767, 0, 32767, 0, 32767, 0, - 32767, 0, 32767, 0, 32767, 0, 32767, 0, - 32767, 32767, 0, 32767, 0, 32767, 0, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 0, 32767, - 0, 0, 32767, 0, 0, 32767, 0, 0, - 32767, 0, 0, 32767, 32767, 32767, 32767 + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 5911, 5912, 5913, 5914, 5915, 5916, 5917, + 32767, 5918, 5919, 5920, 5921, 5922, 5923, 5924, + 5925, 5926, 5927, 5928, 5929, 5930, 5931, 5932, + 5933, 5934, 32767, 32767, 5935, 5936, 5937, 5938, + 5939, 5940, 5941, 32767, 5942, 5943, 32767, 5944, + 5945, 5946, 5947, 5948, 4685, 32767, 4686, 32767, + 32767, 5949, 5950, 5951, 5952, 5953, 5954, 5955, + 5956, 5957, 5958, 5959, 5960, 5961, 5962, 5963, + 5964, 5965, 5966, 5967, 5968, 5969, 5970, 5971, + 5972, 5973, 5974, 5975, 5976, 5977, 5978, 5979, + 5980, 5981, 5982, 5983, 5984, 5985, 5986, 4816, + 4817, 4818, 5990, 5991, 5992, 5993, 4819, 345, + 346, 347, 3955, 3956, 3957, 3958, 3959, 3960, + 3961, 3962, 3963, 3964, 3965, 3966, 3967, 32767, + 32767, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 4642, 0, 0, 0, 0, 32767, 32767, 0, + 1, 0, 2, 0, 0, 0, 0, 3, + 6011, 0, 4, 5, 6, 7, 0, 32767, + 8, 9, 10, 0, 11, 12, 336, 0, + 0, 0, -305, 339, 340, 341, 0, 342, + 343, 0, 0, 346, 25, 347, 348, 349, + 0, 0, 0, 351, 352, 353, 34, 0, + 0, 35, 36, 37, 38, 39, 0, 0, + 152, -284, 154, 155, 156 }; const unsigned char *k = (const unsigned char *) key; @@ -1765,9 +1774,9 @@ Decomp_hash_func(const void *key) unsigned char c = *k++; a = a * 257 + c; - b = b * 8191 + c; + b = b * 127 + c; } - return h[a % 13687] + h[b % 13687]; + return h[a % 13757] + h[b % 13757]; } /* Hash lookup information for decomposition */ @@ -1775,15 +1784,15 @@ static const pg_unicode_decompinfo UnicodeDecompInfo = { UnicodeDecompMain, Decomp_hash_func, - 6843 + 6878 }; /* Inverse lookup array -- contains indexes into UnicodeDecompMain[] */ static const uint16 RecompInverseLookup[961] = { - /* U+003C+0338 -> U+226E */ 1858, - /* U+003D+0338 -> U+2260 */ 1855, - /* U+003E+0338 -> U+226F */ 1859, + /* U+003C+0338 -> U+226E */ 1885, + /* U+003D+0338 -> U+2260 */ 1882, + /* U+003E+0338 -> U+226F */ 1886, /* U+0041+0300 -> U+00C0 */ 14, /* U+0041+0301 -> U+00C1 */ 15, /* U+0041+0302 -> U+00C2 */ 16, @@ -1792,60 +1801,60 @@ static const uint16 RecompInverseLookup[961] = /* U+0041+0306 -> U+0102 */ 69, /* U+0041+0307 -> U+0226 */ 270, /* U+0041+0308 -> U+00C4 */ 18, - /* U+0041+0309 -> U+1EA2 */ 1313, + /* U+0041+0309 -> U+1EA2 */ 1340, /* U+0041+030A -> U+00C5 */ 19, /* U+0041+030C -> U+01CD */ 194, /* U+0041+030F -> U+0200 */ 240, /* U+0041+0311 -> U+0202 */ 242, - /* U+0041+0323 -> U+1EA0 */ 1311, - /* U+0041+0325 -> U+1E00 */ 1155, + /* U+0041+0323 -> U+1EA0 */ 1338, + /* U+0041+0325 -> U+1E00 */ 1182, /* U+0041+0328 -> U+0104 */ 71, - /* U+0042+0307 -> U+1E02 */ 1157, - /* U+0042+0323 -> U+1E04 */ 1159, - /* U+0042+0331 -> U+1E06 */ 1161, + /* U+0042+0307 -> U+1E02 */ 1184, + /* U+0042+0323 -> U+1E04 */ 1186, + /* U+0042+0331 -> U+1E06 */ 1188, /* U+0043+0301 -> U+0106 */ 73, /* U+0043+0302 -> U+0108 */ 75, /* U+0043+0307 -> U+010A */ 77, /* U+0043+030C -> U+010C */ 79, /* U+0043+0327 -> U+00C7 */ 20, - /* U+0044+0307 -> U+1E0A */ 1165, + /* U+0044+0307 -> U+1E0A */ 1192, /* U+0044+030C -> U+010E */ 81, - /* U+0044+0323 -> U+1E0C */ 1167, - /* U+0044+0327 -> U+1E10 */ 1171, - /* U+0044+032D -> U+1E12 */ 1173, - /* U+0044+0331 -> U+1E0E */ 1169, + /* U+0044+0323 -> U+1E0C */ 1194, + /* U+0044+0327 -> U+1E10 */ 1198, + /* U+0044+032D -> U+1E12 */ 1200, + /* U+0044+0331 -> U+1E0E */ 1196, /* U+0045+0300 -> U+00C8 */ 21, /* U+0045+0301 -> U+00C9 */ 22, /* U+0045+0302 -> U+00CA */ 23, - /* U+0045+0303 -> U+1EBC */ 1339, + /* U+0045+0303 -> U+1EBC */ 1366, /* U+0045+0304 -> U+0112 */ 83, /* U+0045+0306 -> U+0114 */ 85, /* U+0045+0307 -> U+0116 */ 87, /* U+0045+0308 -> U+00CB */ 24, - /* U+0045+0309 -> U+1EBA */ 1337, + /* U+0045+0309 -> U+1EBA */ 1364, /* U+0045+030C -> U+011A */ 91, /* U+0045+030F -> U+0204 */ 244, /* U+0045+0311 -> U+0206 */ 246, - /* U+0045+0323 -> U+1EB8 */ 1335, + /* U+0045+0323 -> U+1EB8 */ 1362, /* U+0045+0327 -> U+0228 */ 272, /* U+0045+0328 -> U+0118 */ 89, - /* U+0045+032D -> U+1E18 */ 1179, - /* U+0045+0330 -> U+1E1A */ 1181, - /* U+0046+0307 -> U+1E1E */ 1185, + /* U+0045+032D -> U+1E18 */ 1206, + /* U+0045+0330 -> U+1E1A */ 1208, + /* U+0046+0307 -> U+1E1E */ 1212, /* U+0047+0301 -> U+01F4 */ 230, /* U+0047+0302 -> U+011C */ 93, - /* U+0047+0304 -> U+1E20 */ 1187, + /* U+0047+0304 -> U+1E20 */ 1214, /* U+0047+0306 -> U+011E */ 95, /* U+0047+0307 -> U+0120 */ 97, /* U+0047+030C -> U+01E6 */ 216, /* U+0047+0327 -> U+0122 */ 99, /* U+0048+0302 -> U+0124 */ 101, - /* U+0048+0307 -> U+1E22 */ 1189, - /* U+0048+0308 -> U+1E26 */ 1193, + /* U+0048+0307 -> U+1E22 */ 1216, + /* U+0048+0308 -> U+1E26 */ 1220, /* U+0048+030C -> U+021E */ 268, - /* U+0048+0323 -> U+1E24 */ 1191, - /* U+0048+0327 -> U+1E28 */ 1195, - /* U+0048+032E -> U+1E2A */ 1197, + /* U+0048+0323 -> U+1E24 */ 1218, + /* U+0048+0327 -> U+1E28 */ 1222, + /* U+0048+032E -> U+1E2A */ 1224, /* U+0049+0300 -> U+00CC */ 25, /* U+0049+0301 -> U+00CD */ 26, /* U+0049+0302 -> U+00CE */ 27, @@ -1854,37 +1863,37 @@ static const uint16 RecompInverseLookup[961] = /* U+0049+0306 -> U+012C */ 107, /* U+0049+0307 -> U+0130 */ 111, /* U+0049+0308 -> U+00CF */ 28, - /* U+0049+0309 -> U+1EC8 */ 1351, + /* U+0049+0309 -> U+1EC8 */ 1378, /* U+0049+030C -> U+01CF */ 196, /* U+0049+030F -> U+0208 */ 248, /* U+0049+0311 -> U+020A */ 250, - /* U+0049+0323 -> U+1ECA */ 1353, + /* U+0049+0323 -> U+1ECA */ 1380, /* U+0049+0328 -> U+012E */ 109, - /* U+0049+0330 -> U+1E2C */ 1199, + /* U+0049+0330 -> U+1E2C */ 1226, /* U+004A+0302 -> U+0134 */ 114, - /* U+004B+0301 -> U+1E30 */ 1203, + /* U+004B+0301 -> U+1E30 */ 1230, /* U+004B+030C -> U+01E8 */ 218, - /* U+004B+0323 -> U+1E32 */ 1205, + /* U+004B+0323 -> U+1E32 */ 1232, /* U+004B+0327 -> U+0136 */ 116, - /* U+004B+0331 -> U+1E34 */ 1207, + /* U+004B+0331 -> U+1E34 */ 1234, /* U+004C+0301 -> U+0139 */ 118, /* U+004C+030C -> U+013D */ 122, - /* U+004C+0323 -> U+1E36 */ 1209, + /* U+004C+0323 -> U+1E36 */ 1236, /* U+004C+0327 -> U+013B */ 120, - /* U+004C+032D -> U+1E3C */ 1215, - /* U+004C+0331 -> U+1E3A */ 1213, - /* U+004D+0301 -> U+1E3E */ 1217, - /* U+004D+0307 -> U+1E40 */ 1219, - /* U+004D+0323 -> U+1E42 */ 1221, + /* U+004C+032D -> U+1E3C */ 1242, + /* U+004C+0331 -> U+1E3A */ 1240, + /* U+004D+0301 -> U+1E3E */ 1244, + /* U+004D+0307 -> U+1E40 */ 1246, + /* U+004D+0323 -> U+1E42 */ 1248, /* U+004E+0300 -> U+01F8 */ 232, /* U+004E+0301 -> U+0143 */ 126, /* U+004E+0303 -> U+00D1 */ 29, - /* U+004E+0307 -> U+1E44 */ 1223, + /* U+004E+0307 -> U+1E44 */ 1250, /* U+004E+030C -> U+0147 */ 130, - /* U+004E+0323 -> U+1E46 */ 1225, + /* U+004E+0323 -> U+1E46 */ 1252, /* U+004E+0327 -> U+0145 */ 128, - /* U+004E+032D -> U+1E4A */ 1229, - /* U+004E+0331 -> U+1E48 */ 1227, + /* U+004E+032D -> U+1E4A */ 1256, + /* U+004E+0331 -> U+1E48 */ 1254, /* U+004F+0300 -> U+00D2 */ 30, /* U+004F+0301 -> U+00D3 */ 31, /* U+004F+0302 -> U+00D4 */ 32, @@ -1893,38 +1902,38 @@ static const uint16 RecompInverseLookup[961] = /* U+004F+0306 -> U+014E */ 135, /* U+004F+0307 -> U+022E */ 278, /* U+004F+0308 -> U+00D6 */ 34, - /* U+004F+0309 -> U+1ECE */ 1357, + /* U+004F+0309 -> U+1ECE */ 1384, /* U+004F+030B -> U+0150 */ 137, /* U+004F+030C -> U+01D1 */ 198, /* U+004F+030F -> U+020C */ 252, /* U+004F+0311 -> U+020E */ 254, /* U+004F+031B -> U+01A0 */ 181, - /* U+004F+0323 -> U+1ECC */ 1355, + /* U+004F+0323 -> U+1ECC */ 1382, /* U+004F+0328 -> U+01EA */ 220, - /* U+0050+0301 -> U+1E54 */ 1239, - /* U+0050+0307 -> U+1E56 */ 1241, + /* U+0050+0301 -> U+1E54 */ 1266, + /* U+0050+0307 -> U+1E56 */ 1268, /* U+0052+0301 -> U+0154 */ 139, - /* U+0052+0307 -> U+1E58 */ 1243, + /* U+0052+0307 -> U+1E58 */ 1270, /* U+0052+030C -> U+0158 */ 143, /* U+0052+030F -> U+0210 */ 256, /* U+0052+0311 -> U+0212 */ 258, - /* U+0052+0323 -> U+1E5A */ 1245, + /* U+0052+0323 -> U+1E5A */ 1272, /* U+0052+0327 -> U+0156 */ 141, - /* U+0052+0331 -> U+1E5E */ 1249, + /* U+0052+0331 -> U+1E5E */ 1276, /* U+0053+0301 -> U+015A */ 145, /* U+0053+0302 -> U+015C */ 147, - /* U+0053+0307 -> U+1E60 */ 1251, + /* U+0053+0307 -> U+1E60 */ 1278, /* U+0053+030C -> U+0160 */ 151, - /* U+0053+0323 -> U+1E62 */ 1253, + /* U+0053+0323 -> U+1E62 */ 1280, /* U+0053+0326 -> U+0218 */ 264, /* U+0053+0327 -> U+015E */ 149, - /* U+0054+0307 -> U+1E6A */ 1261, + /* U+0054+0307 -> U+1E6A */ 1288, /* U+0054+030C -> U+0164 */ 155, - /* U+0054+0323 -> U+1E6C */ 1263, + /* U+0054+0323 -> U+1E6C */ 1290, /* U+0054+0326 -> U+021A */ 266, /* U+0054+0327 -> U+0162 */ 153, - /* U+0054+032D -> U+1E70 */ 1267, - /* U+0054+0331 -> U+1E6E */ 1265, + /* U+0054+032D -> U+1E70 */ 1294, + /* U+0054+0331 -> U+1E6E */ 1292, /* U+0055+0300 -> U+00D9 */ 35, /* U+0055+0301 -> U+00DA */ 36, /* U+0055+0302 -> U+00DB */ 37, @@ -1932,43 +1941,43 @@ static const uint16 RecompInverseLookup[961] = /* U+0055+0304 -> U+016A */ 159, /* U+0055+0306 -> U+016C */ 161, /* U+0055+0308 -> U+00DC */ 38, - /* U+0055+0309 -> U+1EE6 */ 1381, + /* U+0055+0309 -> U+1EE6 */ 1408, /* U+0055+030A -> U+016E */ 163, /* U+0055+030B -> U+0170 */ 165, /* U+0055+030C -> U+01D3 */ 200, /* U+0055+030F -> U+0214 */ 260, /* U+0055+0311 -> U+0216 */ 262, /* U+0055+031B -> U+01AF */ 183, - /* U+0055+0323 -> U+1EE4 */ 1379, - /* U+0055+0324 -> U+1E72 */ 1269, + /* U+0055+0323 -> U+1EE4 */ 1406, + /* U+0055+0324 -> U+1E72 */ 1296, /* U+0055+0328 -> U+0172 */ 167, - /* U+0055+032D -> U+1E76 */ 1273, - /* U+0055+0330 -> U+1E74 */ 1271, - /* U+0056+0303 -> U+1E7C */ 1279, - /* U+0056+0323 -> U+1E7E */ 1281, - /* U+0057+0300 -> U+1E80 */ 1283, - /* U+0057+0301 -> U+1E82 */ 1285, + /* U+0055+032D -> U+1E76 */ 1300, + /* U+0055+0330 -> U+1E74 */ 1298, + /* U+0056+0303 -> U+1E7C */ 1306, + /* U+0056+0323 -> U+1E7E */ 1308, + /* U+0057+0300 -> U+1E80 */ 1310, + /* U+0057+0301 -> U+1E82 */ 1312, /* U+0057+0302 -> U+0174 */ 169, - /* U+0057+0307 -> U+1E86 */ 1289, - /* U+0057+0308 -> U+1E84 */ 1287, - /* U+0057+0323 -> U+1E88 */ 1291, - /* U+0058+0307 -> U+1E8A */ 1293, - /* U+0058+0308 -> U+1E8C */ 1295, - /* U+0059+0300 -> U+1EF2 */ 1393, + /* U+0057+0307 -> U+1E86 */ 1316, + /* U+0057+0308 -> U+1E84 */ 1314, + /* U+0057+0323 -> U+1E88 */ 1318, + /* U+0058+0307 -> U+1E8A */ 1320, + /* U+0058+0308 -> U+1E8C */ 1322, + /* U+0059+0300 -> U+1EF2 */ 1420, /* U+0059+0301 -> U+00DD */ 39, /* U+0059+0302 -> U+0176 */ 171, - /* U+0059+0303 -> U+1EF8 */ 1399, + /* U+0059+0303 -> U+1EF8 */ 1426, /* U+0059+0304 -> U+0232 */ 282, - /* U+0059+0307 -> U+1E8E */ 1297, + /* U+0059+0307 -> U+1E8E */ 1324, /* U+0059+0308 -> U+0178 */ 173, - /* U+0059+0309 -> U+1EF6 */ 1397, - /* U+0059+0323 -> U+1EF4 */ 1395, + /* U+0059+0309 -> U+1EF6 */ 1424, + /* U+0059+0323 -> U+1EF4 */ 1422, /* U+005A+0301 -> U+0179 */ 174, - /* U+005A+0302 -> U+1E90 */ 1299, + /* U+005A+0302 -> U+1E90 */ 1326, /* U+005A+0307 -> U+017B */ 176, /* U+005A+030C -> U+017D */ 178, - /* U+005A+0323 -> U+1E92 */ 1301, - /* U+005A+0331 -> U+1E94 */ 1303, + /* U+005A+0323 -> U+1E92 */ 1328, + /* U+005A+0331 -> U+1E94 */ 1330, /* U+0061+0300 -> U+00E0 */ 40, /* U+0061+0301 -> U+00E1 */ 41, /* U+0061+0302 -> U+00E2 */ 42, @@ -1977,61 +1986,61 @@ static const uint16 RecompInverseLookup[961] = /* U+0061+0306 -> U+0103 */ 70, /* U+0061+0307 -> U+0227 */ 271, /* U+0061+0308 -> U+00E4 */ 44, - /* U+0061+0309 -> U+1EA3 */ 1314, + /* U+0061+0309 -> U+1EA3 */ 1341, /* U+0061+030A -> U+00E5 */ 45, /* U+0061+030C -> U+01CE */ 195, /* U+0061+030F -> U+0201 */ 241, /* U+0061+0311 -> U+0203 */ 243, - /* U+0061+0323 -> U+1EA1 */ 1312, - /* U+0061+0325 -> U+1E01 */ 1156, + /* U+0061+0323 -> U+1EA1 */ 1339, + /* U+0061+0325 -> U+1E01 */ 1183, /* U+0061+0328 -> U+0105 */ 72, - /* U+0062+0307 -> U+1E03 */ 1158, - /* U+0062+0323 -> U+1E05 */ 1160, - /* U+0062+0331 -> U+1E07 */ 1162, + /* U+0062+0307 -> U+1E03 */ 1185, + /* U+0062+0323 -> U+1E05 */ 1187, + /* U+0062+0331 -> U+1E07 */ 1189, /* U+0063+0301 -> U+0107 */ 74, /* U+0063+0302 -> U+0109 */ 76, /* U+0063+0307 -> U+010B */ 78, /* U+0063+030C -> U+010D */ 80, /* U+0063+0327 -> U+00E7 */ 46, - /* U+0064+0307 -> U+1E0B */ 1166, + /* U+0064+0307 -> U+1E0B */ 1193, /* U+0064+030C -> U+010F */ 82, - /* U+0064+0323 -> U+1E0D */ 1168, - /* U+0064+0327 -> U+1E11 */ 1172, - /* U+0064+032D -> U+1E13 */ 1174, - /* U+0064+0331 -> U+1E0F */ 1170, + /* U+0064+0323 -> U+1E0D */ 1195, + /* U+0064+0327 -> U+1E11 */ 1199, + /* U+0064+032D -> U+1E13 */ 1201, + /* U+0064+0331 -> U+1E0F */ 1197, /* U+0065+0300 -> U+00E8 */ 47, /* U+0065+0301 -> U+00E9 */ 48, /* U+0065+0302 -> U+00EA */ 49, - /* U+0065+0303 -> U+1EBD */ 1340, + /* U+0065+0303 -> U+1EBD */ 1367, /* U+0065+0304 -> U+0113 */ 84, /* U+0065+0306 -> U+0115 */ 86, /* U+0065+0307 -> U+0117 */ 88, /* U+0065+0308 -> U+00EB */ 50, - /* U+0065+0309 -> U+1EBB */ 1338, + /* U+0065+0309 -> U+1EBB */ 1365, /* U+0065+030C -> U+011B */ 92, /* U+0065+030F -> U+0205 */ 245, /* U+0065+0311 -> U+0207 */ 247, - /* U+0065+0323 -> U+1EB9 */ 1336, + /* U+0065+0323 -> U+1EB9 */ 1363, /* U+0065+0327 -> U+0229 */ 273, /* U+0065+0328 -> U+0119 */ 90, - /* U+0065+032D -> U+1E19 */ 1180, - /* U+0065+0330 -> U+1E1B */ 1182, - /* U+0066+0307 -> U+1E1F */ 1186, + /* U+0065+032D -> U+1E19 */ 1207, + /* U+0065+0330 -> U+1E1B */ 1209, + /* U+0066+0307 -> U+1E1F */ 1213, /* U+0067+0301 -> U+01F5 */ 231, /* U+0067+0302 -> U+011D */ 94, - /* U+0067+0304 -> U+1E21 */ 1188, + /* U+0067+0304 -> U+1E21 */ 1215, /* U+0067+0306 -> U+011F */ 96, /* U+0067+0307 -> U+0121 */ 98, /* U+0067+030C -> U+01E7 */ 217, /* U+0067+0327 -> U+0123 */ 100, /* U+0068+0302 -> U+0125 */ 102, - /* U+0068+0307 -> U+1E23 */ 1190, - /* U+0068+0308 -> U+1E27 */ 1194, + /* U+0068+0307 -> U+1E23 */ 1217, + /* U+0068+0308 -> U+1E27 */ 1221, /* U+0068+030C -> U+021F */ 269, - /* U+0068+0323 -> U+1E25 */ 1192, - /* U+0068+0327 -> U+1E29 */ 1196, - /* U+0068+032E -> U+1E2B */ 1198, - /* U+0068+0331 -> U+1E96 */ 1305, + /* U+0068+0323 -> U+1E25 */ 1219, + /* U+0068+0327 -> U+1E29 */ 1223, + /* U+0068+032E -> U+1E2B */ 1225, + /* U+0068+0331 -> U+1E96 */ 1332, /* U+0069+0300 -> U+00EC */ 51, /* U+0069+0301 -> U+00ED */ 52, /* U+0069+0302 -> U+00EE */ 53, @@ -2039,38 +2048,38 @@ static const uint16 RecompInverseLookup[961] = /* U+0069+0304 -> U+012B */ 106, /* U+0069+0306 -> U+012D */ 108, /* U+0069+0308 -> U+00EF */ 54, - /* U+0069+0309 -> U+1EC9 */ 1352, + /* U+0069+0309 -> U+1EC9 */ 1379, /* U+0069+030C -> U+01D0 */ 197, /* U+0069+030F -> U+0209 */ 249, /* U+0069+0311 -> U+020B */ 251, - /* U+0069+0323 -> U+1ECB */ 1354, + /* U+0069+0323 -> U+1ECB */ 1381, /* U+0069+0328 -> U+012F */ 110, - /* U+0069+0330 -> U+1E2D */ 1200, + /* U+0069+0330 -> U+1E2D */ 1227, /* U+006A+0302 -> U+0135 */ 115, /* U+006A+030C -> U+01F0 */ 226, - /* U+006B+0301 -> U+1E31 */ 1204, + /* U+006B+0301 -> U+1E31 */ 1231, /* U+006B+030C -> U+01E9 */ 219, - /* U+006B+0323 -> U+1E33 */ 1206, + /* U+006B+0323 -> U+1E33 */ 1233, /* U+006B+0327 -> U+0137 */ 117, - /* U+006B+0331 -> U+1E35 */ 1208, + /* U+006B+0331 -> U+1E35 */ 1235, /* U+006C+0301 -> U+013A */ 119, /* U+006C+030C -> U+013E */ 123, - /* U+006C+0323 -> U+1E37 */ 1210, + /* U+006C+0323 -> U+1E37 */ 1237, /* U+006C+0327 -> U+013C */ 121, - /* U+006C+032D -> U+1E3D */ 1216, - /* U+006C+0331 -> U+1E3B */ 1214, - /* U+006D+0301 -> U+1E3F */ 1218, - /* U+006D+0307 -> U+1E41 */ 1220, - /* U+006D+0323 -> U+1E43 */ 1222, + /* U+006C+032D -> U+1E3D */ 1243, + /* U+006C+0331 -> U+1E3B */ 1241, + /* U+006D+0301 -> U+1E3F */ 1245, + /* U+006D+0307 -> U+1E41 */ 1247, + /* U+006D+0323 -> U+1E43 */ 1249, /* U+006E+0300 -> U+01F9 */ 233, /* U+006E+0301 -> U+0144 */ 127, /* U+006E+0303 -> U+00F1 */ 55, - /* U+006E+0307 -> U+1E45 */ 1224, + /* U+006E+0307 -> U+1E45 */ 1251, /* U+006E+030C -> U+0148 */ 131, - /* U+006E+0323 -> U+1E47 */ 1226, + /* U+006E+0323 -> U+1E47 */ 1253, /* U+006E+0327 -> U+0146 */ 129, - /* U+006E+032D -> U+1E4B */ 1230, - /* U+006E+0331 -> U+1E49 */ 1228, + /* U+006E+032D -> U+1E4B */ 1257, + /* U+006E+0331 -> U+1E49 */ 1255, /* U+006F+0300 -> U+00F2 */ 56, /* U+006F+0301 -> U+00F3 */ 57, /* U+006F+0302 -> U+00F4 */ 58, @@ -2079,39 +2088,39 @@ static const uint16 RecompInverseLookup[961] = /* U+006F+0306 -> U+014F */ 136, /* U+006F+0307 -> U+022F */ 279, /* U+006F+0308 -> U+00F6 */ 60, - /* U+006F+0309 -> U+1ECF */ 1358, + /* U+006F+0309 -> U+1ECF */ 1385, /* U+006F+030B -> U+0151 */ 138, /* U+006F+030C -> U+01D2 */ 199, /* U+006F+030F -> U+020D */ 253, /* U+006F+0311 -> U+020F */ 255, /* U+006F+031B -> U+01A1 */ 182, - /* U+006F+0323 -> U+1ECD */ 1356, + /* U+006F+0323 -> U+1ECD */ 1383, /* U+006F+0328 -> U+01EB */ 221, - /* U+0070+0301 -> U+1E55 */ 1240, - /* U+0070+0307 -> U+1E57 */ 1242, + /* U+0070+0301 -> U+1E55 */ 1267, + /* U+0070+0307 -> U+1E57 */ 1269, /* U+0072+0301 -> U+0155 */ 140, - /* U+0072+0307 -> U+1E59 */ 1244, + /* U+0072+0307 -> U+1E59 */ 1271, /* U+0072+030C -> U+0159 */ 144, /* U+0072+030F -> U+0211 */ 257, /* U+0072+0311 -> U+0213 */ 259, - /* U+0072+0323 -> U+1E5B */ 1246, + /* U+0072+0323 -> U+1E5B */ 1273, /* U+0072+0327 -> U+0157 */ 142, - /* U+0072+0331 -> U+1E5F */ 1250, + /* U+0072+0331 -> U+1E5F */ 1277, /* U+0073+0301 -> U+015B */ 146, /* U+0073+0302 -> U+015D */ 148, - /* U+0073+0307 -> U+1E61 */ 1252, + /* U+0073+0307 -> U+1E61 */ 1279, /* U+0073+030C -> U+0161 */ 152, - /* U+0073+0323 -> U+1E63 */ 1254, + /* U+0073+0323 -> U+1E63 */ 1281, /* U+0073+0326 -> U+0219 */ 265, /* U+0073+0327 -> U+015F */ 150, - /* U+0074+0307 -> U+1E6B */ 1262, - /* U+0074+0308 -> U+1E97 */ 1306, + /* U+0074+0307 -> U+1E6B */ 1289, + /* U+0074+0308 -> U+1E97 */ 1333, /* U+0074+030C -> U+0165 */ 156, - /* U+0074+0323 -> U+1E6D */ 1264, + /* U+0074+0323 -> U+1E6D */ 1291, /* U+0074+0326 -> U+021B */ 267, /* U+0074+0327 -> U+0163 */ 154, - /* U+0074+032D -> U+1E71 */ 1268, - /* U+0074+0331 -> U+1E6F */ 1266, + /* U+0074+032D -> U+1E71 */ 1295, + /* U+0074+0331 -> U+1E6F */ 1293, /* U+0075+0300 -> U+00F9 */ 61, /* U+0075+0301 -> U+00FA */ 62, /* U+0075+0302 -> U+00FB */ 63, @@ -2119,251 +2128,251 @@ static const uint16 RecompInverseLookup[961] = /* U+0075+0304 -> U+016B */ 160, /* U+0075+0306 -> U+016D */ 162, /* U+0075+0308 -> U+00FC */ 64, - /* U+0075+0309 -> U+1EE7 */ 1382, + /* U+0075+0309 -> U+1EE7 */ 1409, /* U+0075+030A -> U+016F */ 164, /* U+0075+030B -> U+0171 */ 166, /* U+0075+030C -> U+01D4 */ 201, /* U+0075+030F -> U+0215 */ 261, /* U+0075+0311 -> U+0217 */ 263, /* U+0075+031B -> U+01B0 */ 184, - /* U+0075+0323 -> U+1EE5 */ 1380, - /* U+0075+0324 -> U+1E73 */ 1270, + /* U+0075+0323 -> U+1EE5 */ 1407, + /* U+0075+0324 -> U+1E73 */ 1297, /* U+0075+0328 -> U+0173 */ 168, - /* U+0075+032D -> U+1E77 */ 1274, - /* U+0075+0330 -> U+1E75 */ 1272, - /* U+0076+0303 -> U+1E7D */ 1280, - /* U+0076+0323 -> U+1E7F */ 1282, - /* U+0077+0300 -> U+1E81 */ 1284, - /* U+0077+0301 -> U+1E83 */ 1286, + /* U+0075+032D -> U+1E77 */ 1301, + /* U+0075+0330 -> U+1E75 */ 1299, + /* U+0076+0303 -> U+1E7D */ 1307, + /* U+0076+0323 -> U+1E7F */ 1309, + /* U+0077+0300 -> U+1E81 */ 1311, + /* U+0077+0301 -> U+1E83 */ 1313, /* U+0077+0302 -> U+0175 */ 170, - /* U+0077+0307 -> U+1E87 */ 1290, - /* U+0077+0308 -> U+1E85 */ 1288, - /* U+0077+030A -> U+1E98 */ 1307, - /* U+0077+0323 -> U+1E89 */ 1292, - /* U+0078+0307 -> U+1E8B */ 1294, - /* U+0078+0308 -> U+1E8D */ 1296, - /* U+0079+0300 -> U+1EF3 */ 1394, + /* U+0077+0307 -> U+1E87 */ 1317, + /* U+0077+0308 -> U+1E85 */ 1315, + /* U+0077+030A -> U+1E98 */ 1334, + /* U+0077+0323 -> U+1E89 */ 1319, + /* U+0078+0307 -> U+1E8B */ 1321, + /* U+0078+0308 -> U+1E8D */ 1323, + /* U+0079+0300 -> U+1EF3 */ 1421, /* U+0079+0301 -> U+00FD */ 65, /* U+0079+0302 -> U+0177 */ 172, - /* U+0079+0303 -> U+1EF9 */ 1400, + /* U+0079+0303 -> U+1EF9 */ 1427, /* U+0079+0304 -> U+0233 */ 283, - /* U+0079+0307 -> U+1E8F */ 1298, + /* U+0079+0307 -> U+1E8F */ 1325, /* U+0079+0308 -> U+00FF */ 66, - /* U+0079+0309 -> U+1EF7 */ 1398, - /* U+0079+030A -> U+1E99 */ 1308, - /* U+0079+0323 -> U+1EF5 */ 1396, + /* U+0079+0309 -> U+1EF7 */ 1425, + /* U+0079+030A -> U+1E99 */ 1335, + /* U+0079+0323 -> U+1EF5 */ 1423, /* U+007A+0301 -> U+017A */ 175, - /* U+007A+0302 -> U+1E91 */ 1300, + /* U+007A+0302 -> U+1E91 */ 1327, /* U+007A+0307 -> U+017C */ 177, /* U+007A+030C -> U+017E */ 179, - /* U+007A+0323 -> U+1E93 */ 1302, - /* U+007A+0331 -> U+1E95 */ 1304, - /* U+00A8+0300 -> U+1FED */ 1619, + /* U+007A+0323 -> U+1E93 */ 1329, + /* U+007A+0331 -> U+1E95 */ 1331, + /* U+00A8+0300 -> U+1FED */ 1646, /* U+00A8+0301 -> U+0385 */ 419, - /* U+00A8+0342 -> U+1FC1 */ 1579, - /* U+00C2+0300 -> U+1EA6 */ 1317, - /* U+00C2+0301 -> U+1EA4 */ 1315, - /* U+00C2+0303 -> U+1EAA */ 1321, - /* U+00C2+0309 -> U+1EA8 */ 1319, + /* U+00A8+0342 -> U+1FC1 */ 1606, + /* U+00C2+0300 -> U+1EA6 */ 1344, + /* U+00C2+0301 -> U+1EA4 */ 1342, + /* U+00C2+0303 -> U+1EAA */ 1348, + /* U+00C2+0309 -> U+1EA8 */ 1346, /* U+00C4+0304 -> U+01DE */ 210, /* U+00C5+0301 -> U+01FA */ 234, /* U+00C6+0301 -> U+01FC */ 236, /* U+00C6+0304 -> U+01E2 */ 214, - /* U+00C7+0301 -> U+1E08 */ 1163, - /* U+00CA+0300 -> U+1EC0 */ 1343, - /* U+00CA+0301 -> U+1EBE */ 1341, - /* U+00CA+0303 -> U+1EC4 */ 1347, - /* U+00CA+0309 -> U+1EC2 */ 1345, - /* U+00CF+0301 -> U+1E2E */ 1201, - /* U+00D4+0300 -> U+1ED2 */ 1361, - /* U+00D4+0301 -> U+1ED0 */ 1359, - /* U+00D4+0303 -> U+1ED6 */ 1365, - /* U+00D4+0309 -> U+1ED4 */ 1363, - /* U+00D5+0301 -> U+1E4C */ 1231, + /* U+00C7+0301 -> U+1E08 */ 1190, + /* U+00CA+0300 -> U+1EC0 */ 1370, + /* U+00CA+0301 -> U+1EBE */ 1368, + /* U+00CA+0303 -> U+1EC4 */ 1374, + /* U+00CA+0309 -> U+1EC2 */ 1372, + /* U+00CF+0301 -> U+1E2E */ 1228, + /* U+00D4+0300 -> U+1ED2 */ 1388, + /* U+00D4+0301 -> U+1ED0 */ 1386, + /* U+00D4+0303 -> U+1ED6 */ 1392, + /* U+00D4+0309 -> U+1ED4 */ 1390, + /* U+00D5+0301 -> U+1E4C */ 1258, /* U+00D5+0304 -> U+022C */ 276, - /* U+00D5+0308 -> U+1E4E */ 1233, + /* U+00D5+0308 -> U+1E4E */ 1260, /* U+00D6+0304 -> U+022A */ 274, /* U+00D8+0301 -> U+01FE */ 238, /* U+00DC+0300 -> U+01DB */ 208, /* U+00DC+0301 -> U+01D7 */ 204, /* U+00DC+0304 -> U+01D5 */ 202, /* U+00DC+030C -> U+01D9 */ 206, - /* U+00E2+0300 -> U+1EA7 */ 1318, - /* U+00E2+0301 -> U+1EA5 */ 1316, - /* U+00E2+0303 -> U+1EAB */ 1322, - /* U+00E2+0309 -> U+1EA9 */ 1320, + /* U+00E2+0300 -> U+1EA7 */ 1345, + /* U+00E2+0301 -> U+1EA5 */ 1343, + /* U+00E2+0303 -> U+1EAB */ 1349, + /* U+00E2+0309 -> U+1EA9 */ 1347, /* U+00E4+0304 -> U+01DF */ 211, /* U+00E5+0301 -> U+01FB */ 235, /* U+00E6+0301 -> U+01FD */ 237, /* U+00E6+0304 -> U+01E3 */ 215, - /* U+00E7+0301 -> U+1E09 */ 1164, - /* U+00EA+0300 -> U+1EC1 */ 1344, - /* U+00EA+0301 -> U+1EBF */ 1342, - /* U+00EA+0303 -> U+1EC5 */ 1348, - /* U+00EA+0309 -> U+1EC3 */ 1346, - /* U+00EF+0301 -> U+1E2F */ 1202, - /* U+00F4+0300 -> U+1ED3 */ 1362, - /* U+00F4+0301 -> U+1ED1 */ 1360, - /* U+00F4+0303 -> U+1ED7 */ 1366, - /* U+00F4+0309 -> U+1ED5 */ 1364, - /* U+00F5+0301 -> U+1E4D */ 1232, + /* U+00E7+0301 -> U+1E09 */ 1191, + /* U+00EA+0300 -> U+1EC1 */ 1371, + /* U+00EA+0301 -> U+1EBF */ 1369, + /* U+00EA+0303 -> U+1EC5 */ 1375, + /* U+00EA+0309 -> U+1EC3 */ 1373, + /* U+00EF+0301 -> U+1E2F */ 1229, + /* U+00F4+0300 -> U+1ED3 */ 1389, + /* U+00F4+0301 -> U+1ED1 */ 1387, + /* U+00F4+0303 -> U+1ED7 */ 1393, + /* U+00F4+0309 -> U+1ED5 */ 1391, + /* U+00F5+0301 -> U+1E4D */ 1259, /* U+00F5+0304 -> U+022D */ 277, - /* U+00F5+0308 -> U+1E4F */ 1234, + /* U+00F5+0308 -> U+1E4F */ 1261, /* U+00F6+0304 -> U+022B */ 275, /* U+00F8+0301 -> U+01FF */ 239, /* U+00FC+0300 -> U+01DC */ 209, /* U+00FC+0301 -> U+01D8 */ 205, /* U+00FC+0304 -> U+01D6 */ 203, /* U+00FC+030C -> U+01DA */ 207, - /* U+0102+0300 -> U+1EB0 */ 1327, - /* U+0102+0301 -> U+1EAE */ 1325, - /* U+0102+0303 -> U+1EB4 */ 1331, - /* U+0102+0309 -> U+1EB2 */ 1329, - /* U+0103+0300 -> U+1EB1 */ 1328, - /* U+0103+0301 -> U+1EAF */ 1326, - /* U+0103+0303 -> U+1EB5 */ 1332, - /* U+0103+0309 -> U+1EB3 */ 1330, - /* U+0112+0300 -> U+1E14 */ 1175, - /* U+0112+0301 -> U+1E16 */ 1177, - /* U+0113+0300 -> U+1E15 */ 1176, - /* U+0113+0301 -> U+1E17 */ 1178, - /* U+014C+0300 -> U+1E50 */ 1235, - /* U+014C+0301 -> U+1E52 */ 1237, - /* U+014D+0300 -> U+1E51 */ 1236, - /* U+014D+0301 -> U+1E53 */ 1238, - /* U+015A+0307 -> U+1E64 */ 1255, - /* U+015B+0307 -> U+1E65 */ 1256, - /* U+0160+0307 -> U+1E66 */ 1257, - /* U+0161+0307 -> U+1E67 */ 1258, - /* U+0168+0301 -> U+1E78 */ 1275, - /* U+0169+0301 -> U+1E79 */ 1276, - /* U+016A+0308 -> U+1E7A */ 1277, - /* U+016B+0308 -> U+1E7B */ 1278, - /* U+017F+0307 -> U+1E9B */ 1310, - /* U+01A0+0300 -> U+1EDC */ 1371, - /* U+01A0+0301 -> U+1EDA */ 1369, - /* U+01A0+0303 -> U+1EE0 */ 1375, - /* U+01A0+0309 -> U+1EDE */ 1373, - /* U+01A0+0323 -> U+1EE2 */ 1377, - /* U+01A1+0300 -> U+1EDD */ 1372, - /* U+01A1+0301 -> U+1EDB */ 1370, - /* U+01A1+0303 -> U+1EE1 */ 1376, - /* U+01A1+0309 -> U+1EDF */ 1374, - /* U+01A1+0323 -> U+1EE3 */ 1378, - /* U+01AF+0300 -> U+1EEA */ 1385, - /* U+01AF+0301 -> U+1EE8 */ 1383, - /* U+01AF+0303 -> U+1EEE */ 1389, - /* U+01AF+0309 -> U+1EEC */ 1387, - /* U+01AF+0323 -> U+1EF0 */ 1391, - /* U+01B0+0300 -> U+1EEB */ 1386, - /* U+01B0+0301 -> U+1EE9 */ 1384, - /* U+01B0+0303 -> U+1EEF */ 1390, - /* U+01B0+0309 -> U+1EED */ 1388, - /* U+01B0+0323 -> U+1EF1 */ 1392, + /* U+0102+0300 -> U+1EB0 */ 1354, + /* U+0102+0301 -> U+1EAE */ 1352, + /* U+0102+0303 -> U+1EB4 */ 1358, + /* U+0102+0309 -> U+1EB2 */ 1356, + /* U+0103+0300 -> U+1EB1 */ 1355, + /* U+0103+0301 -> U+1EAF */ 1353, + /* U+0103+0303 -> U+1EB5 */ 1359, + /* U+0103+0309 -> U+1EB3 */ 1357, + /* U+0112+0300 -> U+1E14 */ 1202, + /* U+0112+0301 -> U+1E16 */ 1204, + /* U+0113+0300 -> U+1E15 */ 1203, + /* U+0113+0301 -> U+1E17 */ 1205, + /* U+014C+0300 -> U+1E50 */ 1262, + /* U+014C+0301 -> U+1E52 */ 1264, + /* U+014D+0300 -> U+1E51 */ 1263, + /* U+014D+0301 -> U+1E53 */ 1265, + /* U+015A+0307 -> U+1E64 */ 1282, + /* U+015B+0307 -> U+1E65 */ 1283, + /* U+0160+0307 -> U+1E66 */ 1284, + /* U+0161+0307 -> U+1E67 */ 1285, + /* U+0168+0301 -> U+1E78 */ 1302, + /* U+0169+0301 -> U+1E79 */ 1303, + /* U+016A+0308 -> U+1E7A */ 1304, + /* U+016B+0308 -> U+1E7B */ 1305, + /* U+017F+0307 -> U+1E9B */ 1337, + /* U+01A0+0300 -> U+1EDC */ 1398, + /* U+01A0+0301 -> U+1EDA */ 1396, + /* U+01A0+0303 -> U+1EE0 */ 1402, + /* U+01A0+0309 -> U+1EDE */ 1400, + /* U+01A0+0323 -> U+1EE2 */ 1404, + /* U+01A1+0300 -> U+1EDD */ 1399, + /* U+01A1+0301 -> U+1EDB */ 1397, + /* U+01A1+0303 -> U+1EE1 */ 1403, + /* U+01A1+0309 -> U+1EDF */ 1401, + /* U+01A1+0323 -> U+1EE3 */ 1405, + /* U+01AF+0300 -> U+1EEA */ 1412, + /* U+01AF+0301 -> U+1EE8 */ 1410, + /* U+01AF+0303 -> U+1EEE */ 1416, + /* U+01AF+0309 -> U+1EEC */ 1414, + /* U+01AF+0323 -> U+1EF0 */ 1418, + /* U+01B0+0300 -> U+1EEB */ 1413, + /* U+01B0+0301 -> U+1EE9 */ 1411, + /* U+01B0+0303 -> U+1EEF */ 1417, + /* U+01B0+0309 -> U+1EED */ 1415, + /* U+01B0+0323 -> U+1EF1 */ 1419, /* U+01B7+030C -> U+01EE */ 224, /* U+01EA+0304 -> U+01EC */ 222, /* U+01EB+0304 -> U+01ED */ 223, /* U+0226+0304 -> U+01E0 */ 212, /* U+0227+0304 -> U+01E1 */ 213, - /* U+0228+0306 -> U+1E1C */ 1183, - /* U+0229+0306 -> U+1E1D */ 1184, + /* U+0228+0306 -> U+1E1C */ 1210, + /* U+0229+0306 -> U+1E1D */ 1211, /* U+022E+0304 -> U+0230 */ 280, /* U+022F+0304 -> U+0231 */ 281, /* U+0292+030C -> U+01EF */ 225, - /* U+0391+0300 -> U+1FBA */ 1572, + /* U+0391+0300 -> U+1FBA */ 1599, /* U+0391+0301 -> U+0386 */ 420, - /* U+0391+0304 -> U+1FB9 */ 1571, - /* U+0391+0306 -> U+1FB8 */ 1570, - /* U+0391+0313 -> U+1F08 */ 1409, - /* U+0391+0314 -> U+1F09 */ 1410, - /* U+0391+0345 -> U+1FBC */ 1574, - /* U+0395+0300 -> U+1FC8 */ 1585, + /* U+0391+0304 -> U+1FB9 */ 1598, + /* U+0391+0306 -> U+1FB8 */ 1597, + /* U+0391+0313 -> U+1F08 */ 1436, + /* U+0391+0314 -> U+1F09 */ 1437, + /* U+0391+0345 -> U+1FBC */ 1601, + /* U+0395+0300 -> U+1FC8 */ 1612, /* U+0395+0301 -> U+0388 */ 422, - /* U+0395+0313 -> U+1F18 */ 1423, - /* U+0395+0314 -> U+1F19 */ 1424, - /* U+0397+0300 -> U+1FCA */ 1587, + /* U+0395+0313 -> U+1F18 */ 1450, + /* U+0395+0314 -> U+1F19 */ 1451, + /* U+0397+0300 -> U+1FCA */ 1614, /* U+0397+0301 -> U+0389 */ 423, - /* U+0397+0313 -> U+1F28 */ 1437, - /* U+0397+0314 -> U+1F29 */ 1438, - /* U+0397+0345 -> U+1FCC */ 1589, - /* U+0399+0300 -> U+1FDA */ 1601, + /* U+0397+0313 -> U+1F28 */ 1464, + /* U+0397+0314 -> U+1F29 */ 1465, + /* U+0397+0345 -> U+1FCC */ 1616, + /* U+0399+0300 -> U+1FDA */ 1628, /* U+0399+0301 -> U+038A */ 424, - /* U+0399+0304 -> U+1FD9 */ 1600, - /* U+0399+0306 -> U+1FD8 */ 1599, + /* U+0399+0304 -> U+1FD9 */ 1627, + /* U+0399+0306 -> U+1FD8 */ 1626, /* U+0399+0308 -> U+03AA */ 429, - /* U+0399+0313 -> U+1F38 */ 1453, - /* U+0399+0314 -> U+1F39 */ 1454, - /* U+039F+0300 -> U+1FF8 */ 1627, + /* U+0399+0313 -> U+1F38 */ 1480, + /* U+0399+0314 -> U+1F39 */ 1481, + /* U+039F+0300 -> U+1FF8 */ 1654, /* U+039F+0301 -> U+038C */ 425, - /* U+039F+0313 -> U+1F48 */ 1467, - /* U+039F+0314 -> U+1F49 */ 1468, - /* U+03A1+0314 -> U+1FEC */ 1618, - /* U+03A5+0300 -> U+1FEA */ 1616, + /* U+039F+0313 -> U+1F48 */ 1494, + /* U+039F+0314 -> U+1F49 */ 1495, + /* U+03A1+0314 -> U+1FEC */ 1645, + /* U+03A5+0300 -> U+1FEA */ 1643, /* U+03A5+0301 -> U+038E */ 426, - /* U+03A5+0304 -> U+1FE9 */ 1615, - /* U+03A5+0306 -> U+1FE8 */ 1614, + /* U+03A5+0304 -> U+1FE9 */ 1642, + /* U+03A5+0306 -> U+1FE8 */ 1641, /* U+03A5+0308 -> U+03AB */ 430, - /* U+03A5+0314 -> U+1F59 */ 1481, - /* U+03A9+0300 -> U+1FFA */ 1629, + /* U+03A5+0314 -> U+1F59 */ 1508, + /* U+03A9+0300 -> U+1FFA */ 1656, /* U+03A9+0301 -> U+038F */ 427, - /* U+03A9+0313 -> U+1F68 */ 1493, - /* U+03A9+0314 -> U+1F69 */ 1494, - /* U+03A9+0345 -> U+1FFC */ 1631, - /* U+03AC+0345 -> U+1FB4 */ 1567, - /* U+03AE+0345 -> U+1FC4 */ 1582, - /* U+03B1+0300 -> U+1F70 */ 1501, + /* U+03A9+0313 -> U+1F68 */ 1520, + /* U+03A9+0314 -> U+1F69 */ 1521, + /* U+03A9+0345 -> U+1FFC */ 1658, + /* U+03AC+0345 -> U+1FB4 */ 1594, + /* U+03AE+0345 -> U+1FC4 */ 1609, + /* U+03B1+0300 -> U+1F70 */ 1528, /* U+03B1+0301 -> U+03AC */ 431, - /* U+03B1+0304 -> U+1FB1 */ 1564, - /* U+03B1+0306 -> U+1FB0 */ 1563, - /* U+03B1+0313 -> U+1F00 */ 1401, - /* U+03B1+0314 -> U+1F01 */ 1402, - /* U+03B1+0342 -> U+1FB6 */ 1568, - /* U+03B1+0345 -> U+1FB3 */ 1566, - /* U+03B5+0300 -> U+1F72 */ 1503, + /* U+03B1+0304 -> U+1FB1 */ 1591, + /* U+03B1+0306 -> U+1FB0 */ 1590, + /* U+03B1+0313 -> U+1F00 */ 1428, + /* U+03B1+0314 -> U+1F01 */ 1429, + /* U+03B1+0342 -> U+1FB6 */ 1595, + /* U+03B1+0345 -> U+1FB3 */ 1593, + /* U+03B5+0300 -> U+1F72 */ 1530, /* U+03B5+0301 -> U+03AD */ 432, - /* U+03B5+0313 -> U+1F10 */ 1417, - /* U+03B5+0314 -> U+1F11 */ 1418, - /* U+03B7+0300 -> U+1F74 */ 1505, + /* U+03B5+0313 -> U+1F10 */ 1444, + /* U+03B5+0314 -> U+1F11 */ 1445, + /* U+03B7+0300 -> U+1F74 */ 1532, /* U+03B7+0301 -> U+03AE */ 433, - /* U+03B7+0313 -> U+1F20 */ 1429, - /* U+03B7+0314 -> U+1F21 */ 1430, - /* U+03B7+0342 -> U+1FC6 */ 1583, - /* U+03B7+0345 -> U+1FC3 */ 1581, - /* U+03B9+0300 -> U+1F76 */ 1507, + /* U+03B7+0313 -> U+1F20 */ 1456, + /* U+03B7+0314 -> U+1F21 */ 1457, + /* U+03B7+0342 -> U+1FC6 */ 1610, + /* U+03B7+0345 -> U+1FC3 */ 1608, + /* U+03B9+0300 -> U+1F76 */ 1534, /* U+03B9+0301 -> U+03AF */ 434, - /* U+03B9+0304 -> U+1FD1 */ 1594, - /* U+03B9+0306 -> U+1FD0 */ 1593, + /* U+03B9+0304 -> U+1FD1 */ 1621, + /* U+03B9+0306 -> U+1FD0 */ 1620, /* U+03B9+0308 -> U+03CA */ 436, - /* U+03B9+0313 -> U+1F30 */ 1445, - /* U+03B9+0314 -> U+1F31 */ 1446, - /* U+03B9+0342 -> U+1FD6 */ 1597, - /* U+03BF+0300 -> U+1F78 */ 1509, + /* U+03B9+0313 -> U+1F30 */ 1472, + /* U+03B9+0314 -> U+1F31 */ 1473, + /* U+03B9+0342 -> U+1FD6 */ 1624, + /* U+03BF+0300 -> U+1F78 */ 1536, /* U+03BF+0301 -> U+03CC */ 438, - /* U+03BF+0313 -> U+1F40 */ 1461, - /* U+03BF+0314 -> U+1F41 */ 1462, - /* U+03C1+0313 -> U+1FE4 */ 1610, - /* U+03C1+0314 -> U+1FE5 */ 1611, - /* U+03C5+0300 -> U+1F7A */ 1511, + /* U+03BF+0313 -> U+1F40 */ 1488, + /* U+03BF+0314 -> U+1F41 */ 1489, + /* U+03C1+0313 -> U+1FE4 */ 1637, + /* U+03C1+0314 -> U+1FE5 */ 1638, + /* U+03C5+0300 -> U+1F7A */ 1538, /* U+03C5+0301 -> U+03CD */ 439, - /* U+03C5+0304 -> U+1FE1 */ 1607, - /* U+03C5+0306 -> U+1FE0 */ 1606, + /* U+03C5+0304 -> U+1FE1 */ 1634, + /* U+03C5+0306 -> U+1FE0 */ 1633, /* U+03C5+0308 -> U+03CB */ 437, - /* U+03C5+0313 -> U+1F50 */ 1473, - /* U+03C5+0314 -> U+1F51 */ 1474, - /* U+03C5+0342 -> U+1FE6 */ 1612, - /* U+03C9+0300 -> U+1F7C */ 1513, + /* U+03C5+0313 -> U+1F50 */ 1500, + /* U+03C5+0314 -> U+1F51 */ 1501, + /* U+03C5+0342 -> U+1FE6 */ 1639, + /* U+03C9+0300 -> U+1F7C */ 1540, /* U+03C9+0301 -> U+03CE */ 440, - /* U+03C9+0313 -> U+1F60 */ 1485, - /* U+03C9+0314 -> U+1F61 */ 1486, - /* U+03C9+0342 -> U+1FF6 */ 1625, - /* U+03C9+0345 -> U+1FF3 */ 1623, - /* U+03CA+0300 -> U+1FD2 */ 1595, + /* U+03C9+0313 -> U+1F60 */ 1512, + /* U+03C9+0314 -> U+1F61 */ 1513, + /* U+03C9+0342 -> U+1FF6 */ 1652, + /* U+03C9+0345 -> U+1FF3 */ 1650, + /* U+03CA+0300 -> U+1FD2 */ 1622, /* U+03CA+0301 -> U+0390 */ 428, - /* U+03CA+0342 -> U+1FD7 */ 1598, - /* U+03CB+0300 -> U+1FE2 */ 1608, + /* U+03CA+0342 -> U+1FD7 */ 1625, + /* U+03CB+0300 -> U+1FE2 */ 1635, /* U+03CB+0301 -> U+03B0 */ 435, - /* U+03CB+0342 -> U+1FE7 */ 1613, - /* U+03CE+0345 -> U+1FF4 */ 1624, + /* U+03CB+0342 -> U+1FE7 */ 1640, + /* U+03CE+0345 -> U+1FF4 */ 1651, /* U+03D2+0301 -> U+03D3 */ 444, /* U+03D2+0308 -> U+03D4 */ 445, /* U+0406+0308 -> U+0407 */ 457, @@ -2452,296 +2461,296 @@ static const uint16 RecompInverseLookup[961] = /* U+0DD9+0DDF -> U+0DDE */ 820, /* U+0DDC+0DCA -> U+0DDD */ 819, /* U+1025+102E -> U+1026 */ 878, - /* U+1B05+1B35 -> U+1B06 */ 938, - /* U+1B07+1B35 -> U+1B08 */ 939, - /* U+1B09+1B35 -> U+1B0A */ 940, - /* U+1B0B+1B35 -> U+1B0C */ 941, - /* U+1B0D+1B35 -> U+1B0E */ 942, - /* U+1B11+1B35 -> U+1B12 */ 943, - /* U+1B3A+1B35 -> U+1B3B */ 945, - /* U+1B3C+1B35 -> U+1B3D */ 946, - /* U+1B3E+1B35 -> U+1B40 */ 947, - /* U+1B3F+1B35 -> U+1B41 */ 948, - /* U+1B42+1B35 -> U+1B43 */ 949, - /* U+1E36+0304 -> U+1E38 */ 1211, - /* U+1E37+0304 -> U+1E39 */ 1212, - /* U+1E5A+0304 -> U+1E5C */ 1247, - /* U+1E5B+0304 -> U+1E5D */ 1248, - /* U+1E62+0307 -> U+1E68 */ 1259, - /* U+1E63+0307 -> U+1E69 */ 1260, - /* U+1EA0+0302 -> U+1EAC */ 1323, - /* U+1EA0+0306 -> U+1EB6 */ 1333, - /* U+1EA1+0302 -> U+1EAD */ 1324, - /* U+1EA1+0306 -> U+1EB7 */ 1334, - /* U+1EB8+0302 -> U+1EC6 */ 1349, - /* U+1EB9+0302 -> U+1EC7 */ 1350, - /* U+1ECC+0302 -> U+1ED8 */ 1367, - /* U+1ECD+0302 -> U+1ED9 */ 1368, - /* U+1F00+0300 -> U+1F02 */ 1403, - /* U+1F00+0301 -> U+1F04 */ 1405, - /* U+1F00+0342 -> U+1F06 */ 1407, - /* U+1F00+0345 -> U+1F80 */ 1515, - /* U+1F01+0300 -> U+1F03 */ 1404, - /* U+1F01+0301 -> U+1F05 */ 1406, - /* U+1F01+0342 -> U+1F07 */ 1408, - /* U+1F01+0345 -> U+1F81 */ 1516, - /* U+1F02+0345 -> U+1F82 */ 1517, - /* U+1F03+0345 -> U+1F83 */ 1518, - /* U+1F04+0345 -> U+1F84 */ 1519, - /* U+1F05+0345 -> U+1F85 */ 1520, - /* U+1F06+0345 -> U+1F86 */ 1521, - /* U+1F07+0345 -> U+1F87 */ 1522, - /* U+1F08+0300 -> U+1F0A */ 1411, - /* U+1F08+0301 -> U+1F0C */ 1413, - /* U+1F08+0342 -> U+1F0E */ 1415, - /* U+1F08+0345 -> U+1F88 */ 1523, - /* U+1F09+0300 -> U+1F0B */ 1412, - /* U+1F09+0301 -> U+1F0D */ 1414, - /* U+1F09+0342 -> U+1F0F */ 1416, - /* U+1F09+0345 -> U+1F89 */ 1524, - /* U+1F0A+0345 -> U+1F8A */ 1525, - /* U+1F0B+0345 -> U+1F8B */ 1526, - /* U+1F0C+0345 -> U+1F8C */ 1527, - /* U+1F0D+0345 -> U+1F8D */ 1528, - /* U+1F0E+0345 -> U+1F8E */ 1529, - /* U+1F0F+0345 -> U+1F8F */ 1530, - /* U+1F10+0300 -> U+1F12 */ 1419, - /* U+1F10+0301 -> U+1F14 */ 1421, - /* U+1F11+0300 -> U+1F13 */ 1420, - /* U+1F11+0301 -> U+1F15 */ 1422, - /* U+1F18+0300 -> U+1F1A */ 1425, - /* U+1F18+0301 -> U+1F1C */ 1427, - /* U+1F19+0300 -> U+1F1B */ 1426, - /* U+1F19+0301 -> U+1F1D */ 1428, - /* U+1F20+0300 -> U+1F22 */ 1431, - /* U+1F20+0301 -> U+1F24 */ 1433, - /* U+1F20+0342 -> U+1F26 */ 1435, - /* U+1F20+0345 -> U+1F90 */ 1531, - /* U+1F21+0300 -> U+1F23 */ 1432, - /* U+1F21+0301 -> U+1F25 */ 1434, - /* U+1F21+0342 -> U+1F27 */ 1436, - /* U+1F21+0345 -> U+1F91 */ 1532, - /* U+1F22+0345 -> U+1F92 */ 1533, - /* U+1F23+0345 -> U+1F93 */ 1534, - /* U+1F24+0345 -> U+1F94 */ 1535, - /* U+1F25+0345 -> U+1F95 */ 1536, - /* U+1F26+0345 -> U+1F96 */ 1537, - /* U+1F27+0345 -> U+1F97 */ 1538, - /* U+1F28+0300 -> U+1F2A */ 1439, - /* U+1F28+0301 -> U+1F2C */ 1441, - /* U+1F28+0342 -> U+1F2E */ 1443, - /* U+1F28+0345 -> U+1F98 */ 1539, - /* U+1F29+0300 -> U+1F2B */ 1440, - /* U+1F29+0301 -> U+1F2D */ 1442, - /* U+1F29+0342 -> U+1F2F */ 1444, - /* U+1F29+0345 -> U+1F99 */ 1540, - /* U+1F2A+0345 -> U+1F9A */ 1541, - /* U+1F2B+0345 -> U+1F9B */ 1542, - /* U+1F2C+0345 -> U+1F9C */ 1543, - /* U+1F2D+0345 -> U+1F9D */ 1544, - /* U+1F2E+0345 -> U+1F9E */ 1545, - /* U+1F2F+0345 -> U+1F9F */ 1546, - /* U+1F30+0300 -> U+1F32 */ 1447, - /* U+1F30+0301 -> U+1F34 */ 1449, - /* U+1F30+0342 -> U+1F36 */ 1451, - /* U+1F31+0300 -> U+1F33 */ 1448, - /* U+1F31+0301 -> U+1F35 */ 1450, - /* U+1F31+0342 -> U+1F37 */ 1452, - /* U+1F38+0300 -> U+1F3A */ 1455, - /* U+1F38+0301 -> U+1F3C */ 1457, - /* U+1F38+0342 -> U+1F3E */ 1459, - /* U+1F39+0300 -> U+1F3B */ 1456, - /* U+1F39+0301 -> U+1F3D */ 1458, - /* U+1F39+0342 -> U+1F3F */ 1460, - /* U+1F40+0300 -> U+1F42 */ 1463, - /* U+1F40+0301 -> U+1F44 */ 1465, - /* U+1F41+0300 -> U+1F43 */ 1464, - /* U+1F41+0301 -> U+1F45 */ 1466, - /* U+1F48+0300 -> U+1F4A */ 1469, - /* U+1F48+0301 -> U+1F4C */ 1471, - /* U+1F49+0300 -> U+1F4B */ 1470, - /* U+1F49+0301 -> U+1F4D */ 1472, - /* U+1F50+0300 -> U+1F52 */ 1475, - /* U+1F50+0301 -> U+1F54 */ 1477, - /* U+1F50+0342 -> U+1F56 */ 1479, - /* U+1F51+0300 -> U+1F53 */ 1476, - /* U+1F51+0301 -> U+1F55 */ 1478, - /* U+1F51+0342 -> U+1F57 */ 1480, - /* U+1F59+0300 -> U+1F5B */ 1482, - /* U+1F59+0301 -> U+1F5D */ 1483, - /* U+1F59+0342 -> U+1F5F */ 1484, - /* U+1F60+0300 -> U+1F62 */ 1487, - /* U+1F60+0301 -> U+1F64 */ 1489, - /* U+1F60+0342 -> U+1F66 */ 1491, - /* U+1F60+0345 -> U+1FA0 */ 1547, - /* U+1F61+0300 -> U+1F63 */ 1488, - /* U+1F61+0301 -> U+1F65 */ 1490, - /* U+1F61+0342 -> U+1F67 */ 1492, - /* U+1F61+0345 -> U+1FA1 */ 1548, - /* U+1F62+0345 -> U+1FA2 */ 1549, - /* U+1F63+0345 -> U+1FA3 */ 1550, - /* U+1F64+0345 -> U+1FA4 */ 1551, - /* U+1F65+0345 -> U+1FA5 */ 1552, - /* U+1F66+0345 -> U+1FA6 */ 1553, - /* U+1F67+0345 -> U+1FA7 */ 1554, - /* U+1F68+0300 -> U+1F6A */ 1495, - /* U+1F68+0301 -> U+1F6C */ 1497, - /* U+1F68+0342 -> U+1F6E */ 1499, - /* U+1F68+0345 -> U+1FA8 */ 1555, - /* U+1F69+0300 -> U+1F6B */ 1496, - /* U+1F69+0301 -> U+1F6D */ 1498, - /* U+1F69+0342 -> U+1F6F */ 1500, - /* U+1F69+0345 -> U+1FA9 */ 1556, - /* U+1F6A+0345 -> U+1FAA */ 1557, - /* U+1F6B+0345 -> U+1FAB */ 1558, - /* U+1F6C+0345 -> U+1FAC */ 1559, - /* U+1F6D+0345 -> U+1FAD */ 1560, - /* U+1F6E+0345 -> U+1FAE */ 1561, - /* U+1F6F+0345 -> U+1FAF */ 1562, - /* U+1F70+0345 -> U+1FB2 */ 1565, - /* U+1F74+0345 -> U+1FC2 */ 1580, - /* U+1F7C+0345 -> U+1FF2 */ 1622, - /* U+1FB6+0345 -> U+1FB7 */ 1569, - /* U+1FBF+0300 -> U+1FCD */ 1590, - /* U+1FBF+0301 -> U+1FCE */ 1591, - /* U+1FBF+0342 -> U+1FCF */ 1592, - /* U+1FC6+0345 -> U+1FC7 */ 1584, - /* U+1FF6+0345 -> U+1FF7 */ 1626, - /* U+1FFE+0300 -> U+1FDD */ 1603, - /* U+1FFE+0301 -> U+1FDE */ 1604, - /* U+1FFE+0342 -> U+1FDF */ 1605, - /* U+2190+0338 -> U+219A */ 1836, - /* U+2192+0338 -> U+219B */ 1837, - /* U+2194+0338 -> U+21AE */ 1838, - /* U+21D0+0338 -> U+21CD */ 1839, - /* U+21D2+0338 -> U+21CF */ 1841, - /* U+21D4+0338 -> U+21CE */ 1840, - /* U+2203+0338 -> U+2204 */ 1842, - /* U+2208+0338 -> U+2209 */ 1843, - /* U+220B+0338 -> U+220C */ 1844, - /* U+2223+0338 -> U+2224 */ 1845, - /* U+2225+0338 -> U+2226 */ 1846, - /* U+223C+0338 -> U+2241 */ 1851, - /* U+2243+0338 -> U+2244 */ 1852, - /* U+2245+0338 -> U+2247 */ 1853, - /* U+2248+0338 -> U+2249 */ 1854, - /* U+224D+0338 -> U+226D */ 1857, - /* U+2261+0338 -> U+2262 */ 1856, - /* U+2264+0338 -> U+2270 */ 1860, - /* U+2265+0338 -> U+2271 */ 1861, - /* U+2272+0338 -> U+2274 */ 1862, - /* U+2273+0338 -> U+2275 */ 1863, - /* U+2276+0338 -> U+2278 */ 1864, - /* U+2277+0338 -> U+2279 */ 1865, - /* U+227A+0338 -> U+2280 */ 1866, - /* U+227B+0338 -> U+2281 */ 1867, - /* U+227C+0338 -> U+22E0 */ 1876, - /* U+227D+0338 -> U+22E1 */ 1877, - /* U+2282+0338 -> U+2284 */ 1868, - /* U+2283+0338 -> U+2285 */ 1869, - /* U+2286+0338 -> U+2288 */ 1870, - /* U+2287+0338 -> U+2289 */ 1871, - /* U+2291+0338 -> U+22E2 */ 1878, - /* U+2292+0338 -> U+22E3 */ 1879, - /* U+22A2+0338 -> U+22AC */ 1872, - /* U+22A8+0338 -> U+22AD */ 1873, - /* U+22A9+0338 -> U+22AE */ 1874, - /* U+22AB+0338 -> U+22AF */ 1875, - /* U+22B2+0338 -> U+22EA */ 1880, - /* U+22B3+0338 -> U+22EB */ 1881, - /* U+22B4+0338 -> U+22EC */ 1882, - /* U+22B5+0338 -> U+22ED */ 1883, - /* U+3046+3099 -> U+3094 */ 2321, - /* U+304B+3099 -> U+304C */ 2296, - /* U+304D+3099 -> U+304E */ 2297, - /* U+304F+3099 -> U+3050 */ 2298, - /* U+3051+3099 -> U+3052 */ 2299, - /* U+3053+3099 -> U+3054 */ 2300, - /* U+3055+3099 -> U+3056 */ 2301, - /* U+3057+3099 -> U+3058 */ 2302, - /* U+3059+3099 -> U+305A */ 2303, - /* U+305B+3099 -> U+305C */ 2304, - /* U+305D+3099 -> U+305E */ 2305, - /* U+305F+3099 -> U+3060 */ 2306, - /* U+3061+3099 -> U+3062 */ 2307, - /* U+3064+3099 -> U+3065 */ 2308, - /* U+3066+3099 -> U+3067 */ 2309, - /* U+3068+3099 -> U+3069 */ 2310, - /* U+306F+3099 -> U+3070 */ 2311, - /* U+306F+309A -> U+3071 */ 2312, - /* U+3072+3099 -> U+3073 */ 2313, - /* U+3072+309A -> U+3074 */ 2314, - /* U+3075+3099 -> U+3076 */ 2315, - /* U+3075+309A -> U+3077 */ 2316, - /* U+3078+3099 -> U+3079 */ 2317, - /* U+3078+309A -> U+307A */ 2318, - /* U+307B+3099 -> U+307C */ 2319, - /* U+307B+309A -> U+307D */ 2320, - /* U+309D+3099 -> U+309E */ 2326, - /* U+30A6+3099 -> U+30F4 */ 2353, - /* U+30AB+3099 -> U+30AC */ 2328, - /* U+30AD+3099 -> U+30AE */ 2329, - /* U+30AF+3099 -> U+30B0 */ 2330, - /* U+30B1+3099 -> U+30B2 */ 2331, - /* U+30B3+3099 -> U+30B4 */ 2332, - /* U+30B5+3099 -> U+30B6 */ 2333, - /* U+30B7+3099 -> U+30B8 */ 2334, - /* U+30B9+3099 -> U+30BA */ 2335, - /* U+30BB+3099 -> U+30BC */ 2336, - /* U+30BD+3099 -> U+30BE */ 2337, - /* U+30BF+3099 -> U+30C0 */ 2338, - /* U+30C1+3099 -> U+30C2 */ 2339, - /* U+30C4+3099 -> U+30C5 */ 2340, - /* U+30C6+3099 -> U+30C7 */ 2341, - /* U+30C8+3099 -> U+30C9 */ 2342, - /* U+30CF+3099 -> U+30D0 */ 2343, - /* U+30CF+309A -> U+30D1 */ 2344, - /* U+30D2+3099 -> U+30D3 */ 2345, - /* U+30D2+309A -> U+30D4 */ 2346, - /* U+30D5+3099 -> U+30D6 */ 2347, - /* U+30D5+309A -> U+30D7 */ 2348, - /* U+30D8+3099 -> U+30D9 */ 2349, - /* U+30D8+309A -> U+30DA */ 2350, - /* U+30DB+3099 -> U+30DC */ 2351, - /* U+30DB+309A -> U+30DD */ 2352, - /* U+30EF+3099 -> U+30F7 */ 2354, - /* U+30F0+3099 -> U+30F8 */ 2355, - /* U+30F1+3099 -> U+30F9 */ 2356, - /* U+30F2+3099 -> U+30FA */ 2357, - /* U+30FD+3099 -> U+30FE */ 2358, - /* U+105D2+0307 -> U+105C9 */ 4599, - /* U+105DA+0307 -> U+105E4 */ 4600, - /* U+11099+110BA -> U+1109A */ 4697, - /* U+1109B+110BA -> U+1109C */ 4698, - /* U+110A5+110BA -> U+110AB */ 4699, - /* U+11131+11127 -> U+1112E */ 4705, - /* U+11132+11127 -> U+1112F */ 4706, - /* U+11347+1133E -> U+1134B */ 4718, - /* U+11347+11357 -> U+1134C */ 4719, - /* U+11382+113C9 -> U+11383 */ 4733, - /* U+11384+113BB -> U+11385 */ 4734, - /* U+1138B+113C2 -> U+1138E */ 4735, - /* U+11390+113C9 -> U+11391 */ 4736, - /* U+113C2+113B8 -> U+113C7 */ 4738, - /* U+113C2+113C2 -> U+113C5 */ 4737, - /* U+113C2+113C9 -> U+113C8 */ 4739, - /* U+114B9+114B0 -> U+114BC */ 4747, - /* U+114B9+114BA -> U+114BB */ 4746, - /* U+114B9+114BD -> U+114BE */ 4748, - /* U+115B8+115AF -> U+115BA */ 4751, - /* U+115B9+115AF -> U+115BB */ 4752, - /* U+11935+11930 -> U+11938 */ 4761, - /* U+1611E+1611E -> U+16121 */ 4776, - /* U+1611E+1611F -> U+16123 */ 4778, - /* U+1611E+16120 -> U+16125 */ 4780, - /* U+1611E+16129 -> U+16122 */ 4777, - /* U+16121+1611F -> U+16126 */ 4781, - /* U+16121+16120 -> U+16128 */ 4783, - /* U+16122+1611F -> U+16127 */ 4782, - /* U+16129+1611F -> U+16124 */ 4779, - /* U+16D63+16D67 -> U+16D69 */ 4798, - /* U+16D67+16D67 -> U+16D68 */ 4797, - /* U+16D69+16D67 -> U+16D6A */ 4799 + /* U+1B05+1B35 -> U+1B06 */ 965, + /* U+1B07+1B35 -> U+1B08 */ 966, + /* U+1B09+1B35 -> U+1B0A */ 967, + /* U+1B0B+1B35 -> U+1B0C */ 968, + /* U+1B0D+1B35 -> U+1B0E */ 969, + /* U+1B11+1B35 -> U+1B12 */ 970, + /* U+1B3A+1B35 -> U+1B3B */ 972, + /* U+1B3C+1B35 -> U+1B3D */ 973, + /* U+1B3E+1B35 -> U+1B40 */ 974, + /* U+1B3F+1B35 -> U+1B41 */ 975, + /* U+1B42+1B35 -> U+1B43 */ 976, + /* U+1E36+0304 -> U+1E38 */ 1238, + /* U+1E37+0304 -> U+1E39 */ 1239, + /* U+1E5A+0304 -> U+1E5C */ 1274, + /* U+1E5B+0304 -> U+1E5D */ 1275, + /* U+1E62+0307 -> U+1E68 */ 1286, + /* U+1E63+0307 -> U+1E69 */ 1287, + /* U+1EA0+0302 -> U+1EAC */ 1350, + /* U+1EA0+0306 -> U+1EB6 */ 1360, + /* U+1EA1+0302 -> U+1EAD */ 1351, + /* U+1EA1+0306 -> U+1EB7 */ 1361, + /* U+1EB8+0302 -> U+1EC6 */ 1376, + /* U+1EB9+0302 -> U+1EC7 */ 1377, + /* U+1ECC+0302 -> U+1ED8 */ 1394, + /* U+1ECD+0302 -> U+1ED9 */ 1395, + /* U+1F00+0300 -> U+1F02 */ 1430, + /* U+1F00+0301 -> U+1F04 */ 1432, + /* U+1F00+0342 -> U+1F06 */ 1434, + /* U+1F00+0345 -> U+1F80 */ 1542, + /* U+1F01+0300 -> U+1F03 */ 1431, + /* U+1F01+0301 -> U+1F05 */ 1433, + /* U+1F01+0342 -> U+1F07 */ 1435, + /* U+1F01+0345 -> U+1F81 */ 1543, + /* U+1F02+0345 -> U+1F82 */ 1544, + /* U+1F03+0345 -> U+1F83 */ 1545, + /* U+1F04+0345 -> U+1F84 */ 1546, + /* U+1F05+0345 -> U+1F85 */ 1547, + /* U+1F06+0345 -> U+1F86 */ 1548, + /* U+1F07+0345 -> U+1F87 */ 1549, + /* U+1F08+0300 -> U+1F0A */ 1438, + /* U+1F08+0301 -> U+1F0C */ 1440, + /* U+1F08+0342 -> U+1F0E */ 1442, + /* U+1F08+0345 -> U+1F88 */ 1550, + /* U+1F09+0300 -> U+1F0B */ 1439, + /* U+1F09+0301 -> U+1F0D */ 1441, + /* U+1F09+0342 -> U+1F0F */ 1443, + /* U+1F09+0345 -> U+1F89 */ 1551, + /* U+1F0A+0345 -> U+1F8A */ 1552, + /* U+1F0B+0345 -> U+1F8B */ 1553, + /* U+1F0C+0345 -> U+1F8C */ 1554, + /* U+1F0D+0345 -> U+1F8D */ 1555, + /* U+1F0E+0345 -> U+1F8E */ 1556, + /* U+1F0F+0345 -> U+1F8F */ 1557, + /* U+1F10+0300 -> U+1F12 */ 1446, + /* U+1F10+0301 -> U+1F14 */ 1448, + /* U+1F11+0300 -> U+1F13 */ 1447, + /* U+1F11+0301 -> U+1F15 */ 1449, + /* U+1F18+0300 -> U+1F1A */ 1452, + /* U+1F18+0301 -> U+1F1C */ 1454, + /* U+1F19+0300 -> U+1F1B */ 1453, + /* U+1F19+0301 -> U+1F1D */ 1455, + /* U+1F20+0300 -> U+1F22 */ 1458, + /* U+1F20+0301 -> U+1F24 */ 1460, + /* U+1F20+0342 -> U+1F26 */ 1462, + /* U+1F20+0345 -> U+1F90 */ 1558, + /* U+1F21+0300 -> U+1F23 */ 1459, + /* U+1F21+0301 -> U+1F25 */ 1461, + /* U+1F21+0342 -> U+1F27 */ 1463, + /* U+1F21+0345 -> U+1F91 */ 1559, + /* U+1F22+0345 -> U+1F92 */ 1560, + /* U+1F23+0345 -> U+1F93 */ 1561, + /* U+1F24+0345 -> U+1F94 */ 1562, + /* U+1F25+0345 -> U+1F95 */ 1563, + /* U+1F26+0345 -> U+1F96 */ 1564, + /* U+1F27+0345 -> U+1F97 */ 1565, + /* U+1F28+0300 -> U+1F2A */ 1466, + /* U+1F28+0301 -> U+1F2C */ 1468, + /* U+1F28+0342 -> U+1F2E */ 1470, + /* U+1F28+0345 -> U+1F98 */ 1566, + /* U+1F29+0300 -> U+1F2B */ 1467, + /* U+1F29+0301 -> U+1F2D */ 1469, + /* U+1F29+0342 -> U+1F2F */ 1471, + /* U+1F29+0345 -> U+1F99 */ 1567, + /* U+1F2A+0345 -> U+1F9A */ 1568, + /* U+1F2B+0345 -> U+1F9B */ 1569, + /* U+1F2C+0345 -> U+1F9C */ 1570, + /* U+1F2D+0345 -> U+1F9D */ 1571, + /* U+1F2E+0345 -> U+1F9E */ 1572, + /* U+1F2F+0345 -> U+1F9F */ 1573, + /* U+1F30+0300 -> U+1F32 */ 1474, + /* U+1F30+0301 -> U+1F34 */ 1476, + /* U+1F30+0342 -> U+1F36 */ 1478, + /* U+1F31+0300 -> U+1F33 */ 1475, + /* U+1F31+0301 -> U+1F35 */ 1477, + /* U+1F31+0342 -> U+1F37 */ 1479, + /* U+1F38+0300 -> U+1F3A */ 1482, + /* U+1F38+0301 -> U+1F3C */ 1484, + /* U+1F38+0342 -> U+1F3E */ 1486, + /* U+1F39+0300 -> U+1F3B */ 1483, + /* U+1F39+0301 -> U+1F3D */ 1485, + /* U+1F39+0342 -> U+1F3F */ 1487, + /* U+1F40+0300 -> U+1F42 */ 1490, + /* U+1F40+0301 -> U+1F44 */ 1492, + /* U+1F41+0300 -> U+1F43 */ 1491, + /* U+1F41+0301 -> U+1F45 */ 1493, + /* U+1F48+0300 -> U+1F4A */ 1496, + /* U+1F48+0301 -> U+1F4C */ 1498, + /* U+1F49+0300 -> U+1F4B */ 1497, + /* U+1F49+0301 -> U+1F4D */ 1499, + /* U+1F50+0300 -> U+1F52 */ 1502, + /* U+1F50+0301 -> U+1F54 */ 1504, + /* U+1F50+0342 -> U+1F56 */ 1506, + /* U+1F51+0300 -> U+1F53 */ 1503, + /* U+1F51+0301 -> U+1F55 */ 1505, + /* U+1F51+0342 -> U+1F57 */ 1507, + /* U+1F59+0300 -> U+1F5B */ 1509, + /* U+1F59+0301 -> U+1F5D */ 1510, + /* U+1F59+0342 -> U+1F5F */ 1511, + /* U+1F60+0300 -> U+1F62 */ 1514, + /* U+1F60+0301 -> U+1F64 */ 1516, + /* U+1F60+0342 -> U+1F66 */ 1518, + /* U+1F60+0345 -> U+1FA0 */ 1574, + /* U+1F61+0300 -> U+1F63 */ 1515, + /* U+1F61+0301 -> U+1F65 */ 1517, + /* U+1F61+0342 -> U+1F67 */ 1519, + /* U+1F61+0345 -> U+1FA1 */ 1575, + /* U+1F62+0345 -> U+1FA2 */ 1576, + /* U+1F63+0345 -> U+1FA3 */ 1577, + /* U+1F64+0345 -> U+1FA4 */ 1578, + /* U+1F65+0345 -> U+1FA5 */ 1579, + /* U+1F66+0345 -> U+1FA6 */ 1580, + /* U+1F67+0345 -> U+1FA7 */ 1581, + /* U+1F68+0300 -> U+1F6A */ 1522, + /* U+1F68+0301 -> U+1F6C */ 1524, + /* U+1F68+0342 -> U+1F6E */ 1526, + /* U+1F68+0345 -> U+1FA8 */ 1582, + /* U+1F69+0300 -> U+1F6B */ 1523, + /* U+1F69+0301 -> U+1F6D */ 1525, + /* U+1F69+0342 -> U+1F6F */ 1527, + /* U+1F69+0345 -> U+1FA9 */ 1583, + /* U+1F6A+0345 -> U+1FAA */ 1584, + /* U+1F6B+0345 -> U+1FAB */ 1585, + /* U+1F6C+0345 -> U+1FAC */ 1586, + /* U+1F6D+0345 -> U+1FAD */ 1587, + /* U+1F6E+0345 -> U+1FAE */ 1588, + /* U+1F6F+0345 -> U+1FAF */ 1589, + /* U+1F70+0345 -> U+1FB2 */ 1592, + /* U+1F74+0345 -> U+1FC2 */ 1607, + /* U+1F7C+0345 -> U+1FF2 */ 1649, + /* U+1FB6+0345 -> U+1FB7 */ 1596, + /* U+1FBF+0300 -> U+1FCD */ 1617, + /* U+1FBF+0301 -> U+1FCE */ 1618, + /* U+1FBF+0342 -> U+1FCF */ 1619, + /* U+1FC6+0345 -> U+1FC7 */ 1611, + /* U+1FF6+0345 -> U+1FF7 */ 1653, + /* U+1FFE+0300 -> U+1FDD */ 1630, + /* U+1FFE+0301 -> U+1FDE */ 1631, + /* U+1FFE+0342 -> U+1FDF */ 1632, + /* U+2190+0338 -> U+219A */ 1863, + /* U+2192+0338 -> U+219B */ 1864, + /* U+2194+0338 -> U+21AE */ 1865, + /* U+21D0+0338 -> U+21CD */ 1866, + /* U+21D2+0338 -> U+21CF */ 1868, + /* U+21D4+0338 -> U+21CE */ 1867, + /* U+2203+0338 -> U+2204 */ 1869, + /* U+2208+0338 -> U+2209 */ 1870, + /* U+220B+0338 -> U+220C */ 1871, + /* U+2223+0338 -> U+2224 */ 1872, + /* U+2225+0338 -> U+2226 */ 1873, + /* U+223C+0338 -> U+2241 */ 1878, + /* U+2243+0338 -> U+2244 */ 1879, + /* U+2245+0338 -> U+2247 */ 1880, + /* U+2248+0338 -> U+2249 */ 1881, + /* U+224D+0338 -> U+226D */ 1884, + /* U+2261+0338 -> U+2262 */ 1883, + /* U+2264+0338 -> U+2270 */ 1887, + /* U+2265+0338 -> U+2271 */ 1888, + /* U+2272+0338 -> U+2274 */ 1889, + /* U+2273+0338 -> U+2275 */ 1890, + /* U+2276+0338 -> U+2278 */ 1891, + /* U+2277+0338 -> U+2279 */ 1892, + /* U+227A+0338 -> U+2280 */ 1893, + /* U+227B+0338 -> U+2281 */ 1894, + /* U+227C+0338 -> U+22E0 */ 1903, + /* U+227D+0338 -> U+22E1 */ 1904, + /* U+2282+0338 -> U+2284 */ 1895, + /* U+2283+0338 -> U+2285 */ 1896, + /* U+2286+0338 -> U+2288 */ 1897, + /* U+2287+0338 -> U+2289 */ 1898, + /* U+2291+0338 -> U+22E2 */ 1905, + /* U+2292+0338 -> U+22E3 */ 1906, + /* U+22A2+0338 -> U+22AC */ 1899, + /* U+22A8+0338 -> U+22AD */ 1900, + /* U+22A9+0338 -> U+22AE */ 1901, + /* U+22AB+0338 -> U+22AF */ 1902, + /* U+22B2+0338 -> U+22EA */ 1907, + /* U+22B3+0338 -> U+22EB */ 1908, + /* U+22B4+0338 -> U+22EC */ 1909, + /* U+22B5+0338 -> U+22ED */ 1910, + /* U+3046+3099 -> U+3094 */ 2348, + /* U+304B+3099 -> U+304C */ 2323, + /* U+304D+3099 -> U+304E */ 2324, + /* U+304F+3099 -> U+3050 */ 2325, + /* U+3051+3099 -> U+3052 */ 2326, + /* U+3053+3099 -> U+3054 */ 2327, + /* U+3055+3099 -> U+3056 */ 2328, + /* U+3057+3099 -> U+3058 */ 2329, + /* U+3059+3099 -> U+305A */ 2330, + /* U+305B+3099 -> U+305C */ 2331, + /* U+305D+3099 -> U+305E */ 2332, + /* U+305F+3099 -> U+3060 */ 2333, + /* U+3061+3099 -> U+3062 */ 2334, + /* U+3064+3099 -> U+3065 */ 2335, + /* U+3066+3099 -> U+3067 */ 2336, + /* U+3068+3099 -> U+3069 */ 2337, + /* U+306F+3099 -> U+3070 */ 2338, + /* U+306F+309A -> U+3071 */ 2339, + /* U+3072+3099 -> U+3073 */ 2340, + /* U+3072+309A -> U+3074 */ 2341, + /* U+3075+3099 -> U+3076 */ 2342, + /* U+3075+309A -> U+3077 */ 2343, + /* U+3078+3099 -> U+3079 */ 2344, + /* U+3078+309A -> U+307A */ 2345, + /* U+307B+3099 -> U+307C */ 2346, + /* U+307B+309A -> U+307D */ 2347, + /* U+309D+3099 -> U+309E */ 2353, + /* U+30A6+3099 -> U+30F4 */ 2380, + /* U+30AB+3099 -> U+30AC */ 2355, + /* U+30AD+3099 -> U+30AE */ 2356, + /* U+30AF+3099 -> U+30B0 */ 2357, + /* U+30B1+3099 -> U+30B2 */ 2358, + /* U+30B3+3099 -> U+30B4 */ 2359, + /* U+30B5+3099 -> U+30B6 */ 2360, + /* U+30B7+3099 -> U+30B8 */ 2361, + /* U+30B9+3099 -> U+30BA */ 2362, + /* U+30BB+3099 -> U+30BC */ 2363, + /* U+30BD+3099 -> U+30BE */ 2364, + /* U+30BF+3099 -> U+30C0 */ 2365, + /* U+30C1+3099 -> U+30C2 */ 2366, + /* U+30C4+3099 -> U+30C5 */ 2367, + /* U+30C6+3099 -> U+30C7 */ 2368, + /* U+30C8+3099 -> U+30C9 */ 2369, + /* U+30CF+3099 -> U+30D0 */ 2370, + /* U+30CF+309A -> U+30D1 */ 2371, + /* U+30D2+3099 -> U+30D3 */ 2372, + /* U+30D2+309A -> U+30D4 */ 2373, + /* U+30D5+3099 -> U+30D6 */ 2374, + /* U+30D5+309A -> U+30D7 */ 2375, + /* U+30D8+3099 -> U+30D9 */ 2376, + /* U+30D8+309A -> U+30DA */ 2377, + /* U+30DB+3099 -> U+30DC */ 2378, + /* U+30DB+309A -> U+30DD */ 2379, + /* U+30EF+3099 -> U+30F7 */ 2381, + /* U+30F0+3099 -> U+30F8 */ 2382, + /* U+30F1+3099 -> U+30F9 */ 2383, + /* U+30F2+3099 -> U+30FA */ 2384, + /* U+30FD+3099 -> U+30FE */ 2385, + /* U+105D2+0307 -> U+105C9 */ 4627, + /* U+105DA+0307 -> U+105E4 */ 4628, + /* U+11099+110BA -> U+1109A */ 4727, + /* U+1109B+110BA -> U+1109C */ 4728, + /* U+110A5+110BA -> U+110AB */ 4729, + /* U+11131+11127 -> U+1112E */ 4735, + /* U+11132+11127 -> U+1112F */ 4736, + /* U+11347+1133E -> U+1134B */ 4748, + /* U+11347+11357 -> U+1134C */ 4749, + /* U+11382+113C9 -> U+11383 */ 4763, + /* U+11384+113BB -> U+11385 */ 4764, + /* U+1138B+113C2 -> U+1138E */ 4765, + /* U+11390+113C9 -> U+11391 */ 4766, + /* U+113C2+113B8 -> U+113C7 */ 4768, + /* U+113C2+113C2 -> U+113C5 */ 4767, + /* U+113C2+113C9 -> U+113C8 */ 4769, + /* U+114B9+114B0 -> U+114BC */ 4777, + /* U+114B9+114BA -> U+114BB */ 4776, + /* U+114B9+114BD -> U+114BE */ 4778, + /* U+115B8+115AF -> U+115BA */ 4781, + /* U+115B9+115AF -> U+115BB */ 4782, + /* U+11935+11930 -> U+11938 */ 4791, + /* U+1611E+1611E -> U+16121 */ 4806, + /* U+1611E+1611F -> U+16123 */ 4808, + /* U+1611E+16120 -> U+16125 */ 4810, + /* U+1611E+16129 -> U+16122 */ 4807, + /* U+16121+1611F -> U+16126 */ 4811, + /* U+16121+16120 -> U+16128 */ 4813, + /* U+16122+1611F -> U+16127 */ 4812, + /* U+16129+1611F -> U+16124 */ 4809, + /* U+16D63+16D67 -> U+16D69 */ 4828, + /* U+16D67+16D67 -> U+16D68 */ 4827, + /* U+16D69+16D67 -> U+16D6A */ 4829 }; /* Perfect hash function for recomposition */ diff --git a/src/include/common/unicode_norm_table.h b/src/include/common/unicode_norm_table.h index 38bd8b93c48..724131046de 100644 --- a/src/include/common/unicode_norm_table.h +++ b/src/include/common/unicode_norm_table.h @@ -36,7 +36,7 @@ typedef struct #define DECOMPOSITION_IS_COMPAT(x) (((x)->dec_size_flags & DECOMP_COMPAT) != 0) /* Table of Unicode codepoints and their decompositions */ -static const pg_unicode_decomposition UnicodeDecompMain[6843] = +static const pg_unicode_decomposition UnicodeDecompMain[6878] = { {0x00A0, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0x0020}, {0x00A8, 0, 2 | DECOMP_COMPAT, 0}, @@ -976,6 +976,33 @@ static const pg_unicode_decomposition UnicodeDecompMain[6843] = {0x1ACC, 230, 0, 0}, {0x1ACD, 230, 0, 0}, {0x1ACE, 230, 0, 0}, + {0x1ACF, 230, 0, 0}, + {0x1AD0, 230, 0, 0}, + {0x1AD1, 230, 0, 0}, + {0x1AD2, 230, 0, 0}, + {0x1AD3, 230, 0, 0}, + {0x1AD4, 230, 0, 0}, + {0x1AD5, 230, 0, 0}, + {0x1AD6, 230, 0, 0}, + {0x1AD7, 230, 0, 0}, + {0x1AD8, 230, 0, 0}, + {0x1AD9, 230, 0, 0}, + {0x1ADA, 230, 0, 0}, + {0x1ADB, 230, 0, 0}, + {0x1ADC, 230, 0, 0}, + {0x1ADD, 220, 0, 0}, + {0x1AE0, 230, 0, 0}, + {0x1AE1, 230, 0, 0}, + {0x1AE2, 230, 0, 0}, + {0x1AE3, 230, 0, 0}, + {0x1AE4, 230, 0, 0}, + {0x1AE5, 230, 0, 0}, + {0x1AE6, 220, 0, 0}, + {0x1AE7, 230, 0, 0}, + {0x1AE8, 230, 0, 0}, + {0x1AE9, 230, 0, 0}, + {0x1AEA, 230, 0, 0}, + {0x1AEB, 234, 0, 0}, {0x1B06, 0, 2, 885}, {0x1B08, 0, 2, 887}, {0x1B0A, 0, 2, 889}, @@ -3026,6 +3053,7 @@ static const pg_unicode_decomposition UnicodeDecompMain[6843] = {0xA6F0, 230, 0, 0}, {0xA6F1, 230, 0, 0}, {0xA770, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0xA76F}, + {0xA7F1, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0x0053}, {0xA7F2, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0x0043}, {0xA7F3, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0x0046}, {0xA7F4, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0x0051}, @@ -4714,6 +4742,8 @@ static const pg_unicode_decomposition UnicodeDecompMain[6843] = {0x10D6D, 230, 0, 0}, {0x10EAB, 230, 0, 0}, {0x10EAC, 230, 0, 0}, + {0x10EFA, 220, 0, 0}, + {0x10EFB, 220, 0, 0}, {0x10EFD, 220, 0, 0}, {0x10EFE, 220, 0, 0}, {0x10EFF, 220, 0, 0}, @@ -6038,6 +6068,11 @@ static const pg_unicode_decomposition UnicodeDecompMain[6843] = {0x1E4EF, 230, 0, 0}, {0x1E5EE, 230, 0, 0}, {0x1E5EF, 220, 0, 0}, + {0x1E6E3, 230, 0, 0}, + {0x1E6E6, 230, 0, 0}, + {0x1E6EE, 230, 0, 0}, + {0x1E6EF, 230, 0, 0}, + {0x1E6F5, 230, 0, 0}, {0x1E8D0, 220, 0, 0}, {0x1E8D1, 220, 0, 0}, {0x1E8D2, 220, 0, 0}, diff --git a/src/include/common/unicode_normprops_table.h b/src/include/common/unicode_normprops_table.h index f1072c9f099..c389aad2907 100644 --- a/src/include/common/unicode_normprops_table.h +++ b/src/include/common/unicode_normprops_table.h @@ -3147,6 +3147,7 @@ static const pg_unicode_normprops UnicodeNormProps_NFKC_QC[] = { {0xA69C, UNICODE_NORM_QC_NO}, {0xA69D, UNICODE_NORM_QC_NO}, {0xA770, UNICODE_NORM_QC_NO}, + {0xA7F1, UNICODE_NORM_QC_NO}, {0xA7F2, UNICODE_NORM_QC_NO}, {0xA7F3, UNICODE_NORM_QC_NO}, {0xA7F4, UNICODE_NORM_QC_NO}, @@ -6724,70 +6725,144 @@ static const pg_unicode_normprops UnicodeNormProps_NFKC_QC[] = { static int NFKC_QC_hash_func(const void *key) { - static const int16 h[10193] = { - 1878, 1879, 1880, 1881, 1882, 1883, 1884, 1885, - 1886, 1887, 1888, 32767, 32767, 1889, 3141, -7211, - 1892, 1893, 1894, 1895, 1896, 1897, 1898, 1899, - -1320, 1901, 1902, -1322, 1904, 1905, 1921, 1921, - 1921, 1909, 1910, 1911, 1924, 1924, 1914, 1915, - 1916, 1917, 1918, 1919, 1920, 1921, 1922, 1923, - 1924, 1925, -1976, 4681, 1323, 1929, 1930, 4682, - 1932, 1933, 1934, 1935, 1936, 1937, 0, 0, + static const int16 h[10195] = { + 3142, -807, -807, -807, -807, -807, -807, 32767, + 3460, 3461, 3143, 3463, 32767, 3144, 1109, 3465, + 3466, 3467, 3468, 3469, -2468, -2468, 32767, -2469, + -2469, -2469, -2469, -347, -2469, -2469, 32767, -2470, + -2470, -2470, 3153, -2470, -2470, -617, -617, -1404, + -1404, -471, -470, -469, -468, -467, -466, -465, + -464, -463, -462, -461, -460, -459, -458, -457, + -456, -455, -454, 358, -453, 463, -451, -450, + 358, -449, -448, -447, -446, 0, 358, -444, + 358, 358, 358, -443, -1622, -2437, -2437, -2437, + -2437, -2437, 358, -2438, -435, -434, -433, -432, + -431, -430, -429, -428, -427, -426, -425, 358, + -2426, -2426, -2426, -2426, -2426, -4539, -3246, -416, + -415, -414, -2421, -4543, -2420, -2420, -2420, -2420, + -2420, -2420, 3555, 3556, 3557, -2423, -2423, -2423, + -2423, -2423, -2423, -2423, -2423, -2423, -2423, -2423, + -2423, -2423, -2423, -5599, 1496, 1496, 976, 977, + -5597, -5597, -5597, -5597, -5597, 2776, 2776, -2886, + -5597, -5597, -5597, -5597, -1411, -1411, -1411, -2466, + -1411, -1411, -1411, 3506, 3507, 3508, 4742, -205, + 0, -205, 3513, -205, -205, -205, 6575, -1411, + 1, -1411, 2, -1411, -1411, -1411, -1411, 3, + -1411, -1411, 4, 5, 6, 7, -484, -1411, + 8, 9, 10, -1411, 11, 12, 13, -1411, + -1411, -1411, -1284, 359, 359, -1283, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 1974, + 359, 359, 359, 359, 359, 2842, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 422, 510, 422, 422, - 0, 0, 0, 0, 0, 0, 0, 1822, - 0, 431, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 14, 15, 0, 0, 0, + 0, 0, 32767, 2707, 0, 0, 0, 32767, + 16, 17, 32767, 2711, 2712, 2713, 32767, 2714, + 32767, 2715, 18, 2717, 2718, 2719, 2720, 2721, + 4741, 2723, 2724, 2725, 2726, 2727, 2728, 2729, + 2730, 2731, 2732, 2733, 2734, 2735, 2736, 2737, + 2738, 2739, 2740, 2741, 2742, 2743, 2744, 2745, + 2746, 2747, 2748, 2749, 2750, 2751, 2752, 2753, + 2754, 2755, 2756, 2757, 2758, 2759, 2760, 2761, + 2762, -2601, 2764, 2765, 2766, 2767, 2768, 2769, + 19, 2771, 2772, 2773, 512, 512, 512, 512, + 512, 2779, 512, 512, 512, 512, 512, 512, + 512, 2787, 2788, 512, 2790, 512, 2792, 512, + 512, 2795, 2796, 2797, 3997, 3997, 3997, 3997, + 3997, 3997, 3997, 3997, 3997, 3997, 3997, 3997, + 3666, 1682, 1683, 1222, 1684, 1685, 1686, 1222, + 1687, 1688, 1689, 1690, 1691, 1692, 1693, 1222, + 1694, 1695, 1696, 1697, 1698, 2831, 1223, 1223, + 2834, 2835, 1703, 2837, 0, 1708, 1709, 22, + 23, 24, 25, 26, 27, 28, 1714, 1715, + 1716, 1717, 1718, 1719, 3954, 1721, 1722, 1723, + 1724, 1725, 0, 4056, 0, 4057, 4057, 4057, + 4057, 4057, 4057, 4057, 0, 4058, 4058, 4058, + 4058, 4058, 4058, 4058, 4058, 1748, 1749, 1750, + 11099, 11100, 11101, 11102, 11103, 1756, 1757, 5022, + 1759, 1760, 1761, 1762, 5023, 6395, 4421, 6052, + 1233, 5143, 1233, 2281, 2282, 2283, 6667, 6668, + 6669, 5024, 6671, 6672, 6673, 6674, 1233, 2909, + 2909, 1233, 1233, 1233, 1233, 4676, 3599, 1233, + 1233, 1233, 1233, 1233, 1233, 4684, 4685, 4686, + 4687, 4688, 4689, 2288, 2289, 2290, 4693, 2291, + 2292, 4696, 4697, 4698, 2293, 4700, 4701, 4702, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1840, 1840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3814, 3814, 4799, 3814, 4724, 4725, 3816, + 2798, 4728, 4729, 4730, 4731, 2794, 4733, 4734, + 4735, 4736, 2790, 4738, 4739, 4740, 4741, 4742, + 4743, 4744, 4745, 4746, 4747, 4748, 4749, 6909, + 4751, 4752, 4753, 677, 4755, 4756, 4757, 4758, + 4759, 4790, 4761, 4791, 4792, 4793, 4794, 4795, + 4767, 4768, 4769, 4770, 4771, 4772, 4773, 7972, + 4775, 4776, 4777, 4778, 4779, 4780, 4781, 4782, + 4783, 4784, 0, 0, 4787, 4788, 4789, 4790, + 4791, 3787, 4793, 4794, 4795, 4796, 4797, 4798, + 5380, 4800, 4801, 2582, 4803, 4804, 4805, 4806, + 2583, 4808, 4809, 4810, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 2010, 2011, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 678, 679, 680, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 41, 42, 43, 44, 45, 46, + 32767, 32767, 47, 48, 49, 50, 51, 4137, + -6157, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 52, 53, 54, 55, 56, + 32767, 57, 58, 59, 60, 61, 62, 63, + 32767, 32767, 64, 32767, 65, 32767, 66, 67, + 32767, 32767, 32767, 32767, 32767, 32767, -3417, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, -3416, -3084, + -1099, -1099, -637, -1098, 32767, 32767, 32767, 32767, + -1101, -1101, 32767, -1102, -1102, 32767, 32767, 32767, + 32767, 32767, 32767, -1107, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 592, -1115, -1115, 573, 573, + 573, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 0, 0, 0, + 32767, 0, 0, 0, 0, 0, 0, 593, + 0, 0, 0, 0, 0, -1259, 0, 0, + 0, -1807, 0, 0, 0, 0, 0, -1806, + -1805, 0, -1804, 0, 32767, 0, 0, 32767, + 0, 32767, 32767, 0, 32767, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 32767, + 0, 0, 0, 0, 32767, 0, 32767, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, + 32767, 32767, 32767, 0, 32767, 0, 32767, 0, + 32767, 0, 0, 0, 32767, 0, 0, 32767, + 0, 32767, 32767, 0, 32767, 0, 32767, 0, + 32767, 0, 32767, 0, 32767, 0, 0, 32767, + 0, 32767, 32767, 0, 0, 0, -4383, -4383, + -4383, -2737, 0, 0, 0, 0, 0, 32767, + 0, 0, 0, 0, 32767, 0, 0, 0, + 0, 32767, 0, 32767, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 0, 0, 0, + 32767, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2762, 2762, 2762, - 2762, 2762, 2762, 2762, 2762, 2762, 2762, 2762, - 2762, 2762, 2762, 2762, 2762, 2762, 2762, 2762, - 2762, 2762, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2812, 2812, 2812, 2812, - 2812, 2812, 2812, 2812, 2812, 2812, 2812, 2812, - 2812, 2812, -1449, 5319, 2812, 2812, 2812, 2812, - 2812, 2812, 2812, 2812, 2812, 2812, -534, 0, - 0, 0, 0, 348, 32767, 349, 0, 0, - 0, 0, 0, 0, 32767, 32767, 0, 0, - 0, -1517, 0, -1517, 32767, -1516, 4370, 4371, - 4372, 4373, 4374, 4375, 4376, 4377, 4378, 4379, - 0, 32767, 32767, -23190,4110, 0, 0, 0, - 0, 0, 0, 32767, 0, 0, 0, 0, - -622, -622, 0, -3928, -1253, -1252, -5473, -3927, - -3927, -3927, -3927, -3927, -3927, -3927, -3927, -3927, - -3927, -3927, -3927, -3927, -3927, -3580, -3580, -3925, - -3580, -3924, -3580, -3580, -3922, -3922, -3922, -3922, - -3922, -3922, -3922, -3922, 0, 0, -3484, -3919, - -3482, -3918, -3480, -3578, -3916, -3916, -3578, -3578, - -3578, -3913, -3913, -3913, -3913, -3913, -3913, -3913, - -3913, -3913, -3913, -3913, -3913, -3913, -3913, -3913, - -3913, -3913, -3913, -3913, -3913, -3913, -3913, -3913, - -3913, -3913, -3913, -3913, -3913, -3913, -3913, -3913, - -3913, -3913, -3913, -3913, -3913, -3578, 625, -5288, - 627, 628, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2496, 2497, 2498, 2499, 2500, - 2501, 2502, 2503, 2504, 2505, 2506, 2507, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, -1769, -1768, -1767, -3528, 32767, 32767, + 0, 0, 0, 0, 4405, 4406, 4407, 2139, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, -4117, -4459, -4459, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -6795,595 +6870,549 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 3146, 32767, 32767, + 32767, 32767, 32767, 3465, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -2719, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, -4059, -4059, -4059, -4059, 895, + 895, 895, -4059, -4059, 897, -4059, -4059, -4059, + -4059, -4059, -4059, -4059, -4059, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 1051, 1052, 1053, 1054, 1055, + 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, + 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, + 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, + 1080, 1081, 1082, 1083, 1084, 1085, 1086, 0, + 0, 0, 0, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 9750, 9751, 0, 1381, 1382, 1383, + 3694, 3694, 3694, -5654, -5654, -5654, -5654, -5654, + 3694, 3694, 430, 3694, 3694, 3694, 3694, 434, + -937, 1038, -592, 4228, 319, 4230, 3183, 3183, + 3183, -1200, -1200, -1200, 446, -1200, -1200, -1200, + -1200, 4242, 2567, 2568, 4245, 4246, 4247, 4248, + 806, 1884, 4251, 4252, 4253, 4254, 4255, 4256, + 806, 806, 806, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -2828, -975, -975, -1762, -1762, + -829, -828, -827, -826, -825, -824, -823, -822, + -821, -820, -819, -818, -817, -816, -815, -814, + -813, -812, 0, -811, 105, -809, -808, 0, + -807, -806, -805, -804, -358, 0, -802, 0, + 0, 0, -801, -1980, -2795, -2795, -2795, -2795, + -2795, 0, -2796, -793, -792, -791, -790, -789, + -788, -787, -786, -785, -784, -783, 0, -2784, + -2784, -2784, -2784, -2784, -4897, -3604, -774, -773, + -772, -2779, -4901, -2778, -2778, -2778, -2778, -2778, + -2778, 3197, 3198, 3199, -2781, -2781, -2781, -2781, + -2781, -2781, -2781, 32767, 32767, 1525, -698, 1527, + 1528, 32767, 32767, 32767, -2757, -2756, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, + 32767, 0, 32767, 32767, 0, 32767, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -6479, -6478, -6477, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 41, 42, 43, 44, 45, 46, - 32767, 32767, 47, 48, 49, 50, 51, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 52, 1131, 8054, 3425, -19247, - 8047, -19248,8049, -19249,8051, -14620,8053, -19240, - 8056, 3330, 8058, 8059, 3430, -19242,3330, 3330, - 3330, 3330, 3330, -11231,8049, 3330, 3330, 3330, - 3330, -3326, 33, -3326, 3330, -3325, -3325, -3325, - 3330, -3326, -3326, 1075, 4681, 4682, 8076, -3327, - 8079, 19509, -7787, 4688, 4689, 1331, 4691, -1964, - 4692, 4693, 4694, 4695, 4696, 4697, 297, -3308, - -3308, -6701, 4703, -6702, -18131,9166, -3308, 4711, - -2199, 4724, 95, -22577,4717, -22578,4719, -22579, - 4721, -17950,4723, -22570,4726, 0, 4728, 4729, - 100, -22572,0, 0, 0, 0, 0, -14561, - 4719, 0, 0, 0, 0, -6656, -3297, -6656, - 0, -6655, -6655, -6655, 0, -6656, -6656, -2255, - 1351, 1352, 4746, -6657, 4749, 16179, -11117,1358, - 1359, -1999, 0, 0, 0, 938, 0, 0, - 0, 0, 0, 0, 1255, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 4081, 4081, 4081, - 4081, 4081, 2312, 2313, 2314, 553, 0, 0, - 0, 0, 0, 0, 0, 0, 3580, 2958, - 2958, 3580, -348, 2327, 2328, -1893, -347, -347, - -347, -347, -347, -347, -347, -347, -347, -347, - -347, -347, -347, -347, 0, 0, -345, 0, - -344, 0, 0, -342, -342, -342, -342, -342, - -342, -342, -342, -342, -342, 94, -341, 96, - -340, 98, 0, -338, -338, 0, 0, 0, - -335, -335, -335, -335, -335, -335, -335, -335, - -335, -335, -335, -335, -335, -335, -335, -335, - -335, -335, -335, -335, -335, -335, -335, -335, - -335, -335, -335, -335, -335, -335, -335, -335, - -335, -335, -335, -335, 0, 4203, -1710, 32767, + 32767, 106, 107, 108, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 109, 110, 111, 112, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 1, 32767, 2, 32767, 32767, 32767, 32767, -2759, - 32767, 32767, -2758, -2757, -2756, -2755, 32767, 32767, - -2754, -2753, -2752, 32767, -2751, -2750, -2749, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, -1362, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, -3508, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 682, - 683, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 2456, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 687, 688, 689, 690, + 691, 692, 693, 694, 695, 696, 697, 698, + 699, 700, 701, 702, 703, 704, 705, 706, + 707, 708, 709, 710, 711, 712, 713, 714, + 715, 716, 717, 718, 719, 720, 721, 722, + 723, 724, -921, 726, 727, 728, 729, 730, + 731, -1051, 733, 734, 735, 736, 737, 738, + 739, 740, 741, 742, 743, 744, 745, 746, + 747, 748, 749, 750, 751, 752, 753, 754, + 755, 756, 757, 758, 759, 760, 761, 762, + 763, 764, 765, 766, 767, 768, 769, 770, + 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 781, 782, 783, 784, 785, 786, + 787, 788, 789, 790, 791, 792, 793, 794, + 795, 796, 797, 798, 799, 800, 801, 802, + 803, 804, 805, 806, 807, 529, 530, -6249, + 1738, 327, 1740, 328, 1742, 1743, 1744, 1745, + 332, 1747, 1748, 334, 334, 334, 334, 826, + 1754, 336, 336, 336, 1758, 337, 337, 337, + 1762, 1763, 1764, 3240, 3241, 3242, -519, -519, + 3245, 3246, 1412, 3248, 3249, 3250, 3251, 3252, + 3253, 3254, 3255, 1134, 3257, 3258, 1135, 3260, + 3261, 3262, -2360, 3264, 3265, 1413, 3267, 3268, + 3269, 868, 869, 870, 871, 872, 873, 874, + 875, 876, 877, 878, 879, 880, 881, 882, + 883, 884, 885, 886, 887, 888, 889, 890, + 891, 892, 893, 894, 895, 896, 897, 898, + 899, 900, 2875, 2875, 2875, 2875, 374, 2876, + 2876, 2876, 374, 2877, 2877, 2877, 2877, 2877, + 2877, 2877, 2877, 2877, 2877, 2877, 374, 2878, + 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 562, 563, 564, + 565, 566, 567, 568, 569, 901, 2886, 2886, + 3348, 2887, 2887, 2887, 3352, 2888, 2888, 2888, + 2888, 2888, 2888, 2888, 3360, 2889, 2889, 2889, + 2889, 2889, 1757, 3366, 3367, 1757, 1757, 2890, + 1757, 4595, 2888, 2888, 4576, 4576, 4576, 4576, + 4576, 4576, 4576, 2891, 2891, 2891, 2891, 2891, + 2891, 657, 2891, 2891, 2891, 2891, 2891, 4617, + 562, 4619, 563, 564, 565, 566, 567, 568, + 569, 4627, 570, 571, 572, 573, 574, 575, + 576, 577, 2888, 2888, 2888, -6460, -6460, -6460, + -6460, -6460, 2888, 2888, -376, 2888, 2888, 2888, + 2888, -372, -1743, 232, -1398, 3422, -487, 3424, + 2377, 2377, 2377, -2006, -2006, -2006, -360, -2006, + -2006, -2006, -2006, 3436, 1761, 1762, 3439, 3440, + 3441, 3442, 0, 1078, 3445, 3446, 3447, 3448, + 3449, 3450, 0, 0, 0, 0, 0, 0, + 2402, 2402, 2402, 0, 2403, 2403, 0, 0, + 0, 2406, 0, 0, 0, 4703, 4704, 4705, + 4706, 4707, 4708, 4709, 4710, 4711, 4712, 4713, + 4714, 4715, 4716, 4717, 4718, 4719, 906, 907, + -77, 909, 0, 0, 910, 1929, 0, 0, + 0, 0, 1938, 0, 0, 0, 0, 1947, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -2159, 0, 0, 0, + 4077, 0, 0, 0, 0, 0, -30, 0, + -29, -29, -29, -29, -29, 0, 0, 0, + 0, 0, 0, 0, -3198, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 4785, + 4786, 0, 0, 0, 0, 0, 1005, 0, + 0, 0, 0, 0, 0, -581, 0, 0, + 2220, 0, 0, 0, 0, 2224, 0, 0, + 0, 0, 1022, 4286, 4286, 4286, 4286, 1026, + -345, 1630, 0, 4820, 911, 4822, 3775, 3775, + 3775, -608, -608, -608, 1038, -608, -608, -608, + -608, 4834, 3159, 3160, 4837, 4838, 4839, 4840, + 1398, 2476, 4843, 4844, 4845, 4846, 4847, 4848, + 1398, 1398, 1398, 592, 592, 592, 592, 592, + 592, 592, 592, 4860, 4861, 4543, 4863, 4864, + 4865, 2511, 4867, 4868, 4869, 4870, 4871, -1066, + -1066, -1066, -1066, -1066, -1066, -1066, 1056, -1066, + -1066, 1058, -1066, -1066, -1066, 4557, -1066, -1066, + 787, 787, 0, 0, 933, 934, 935, 936, + 937, 938, 939, 940, 941, 942, 943, 944, + 945, 946, 947, 948, 949, 950, 4911, 952, + 1868, 954, 955, 4916, 957, 958, 959, 960, + 1406, 4922, 963, 4924, 4925, 4926, 967, -212, + -1027, -1027, -1027, -1027, -1027, -1027, -1027, 976, + 977, 978, 979, 980, 981, 982, 983, 984, + 985, 986, 1769, -1015, -1015, -1015, -1015, -1015, + -3128, -1835, 995, 996, 997, -1010, -3132, -1009, + -1009, -1009, -1009, -1009, -1009, 4966, 4967, 4968, + -1012, -1012, -1012, -1012, -1012, -1012, -1012, -1012, + -1012, -1012, -1012, -1012, -1012, -1012, -4188, 2907, + 2907, 2387, 2388, -4186, -4186, -4186, -4186, -4186, + 4187, 4187, -1475, -4186, -4186, -4186, -4186, 0, + 0, 0, -1055, 0, 0, 0, 4917, 4918, + 4919, 6153, 1206, 1411, 1206, 4924, 1206, 1206, + 1206, 7986, 0, 1412, 0, 1413, 0, 0, + 0, 0, 1414, 0, 0, 1415, 1416, 1417, + 1418, 927, 0, 1419, 1420, 1421, 0, 1422, + 1423, 1424, 0, 0, 0, 127, 1770, 1770, + 128, 1770, 1770, 1770, 1770, 1770, 1770, 1770, + 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, + 1770, 1770, 32767, 5067, 5068, 5069, 5070, 5071, + 5072, 5073, 5074, 0, 5076, 5077, 5078, 5079, + 5080, 5081, 5082, 129, 130, 131, 5086, 5087, + 132, 5089, 5090, 5091, 5092, 5093, 5094, 5095, + 5096, 1038, 1039, 1040, 1041, 1042, 1043, 1044, + 1045, 1046, 1047, 1048, 1049, 1050, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1087, 1088, 1089, 1090, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1091, + 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, + 1100, 1101, 1102, 1103, 1104, 1105, -8644, -8644, + 1108, -272, -272, -272, -2582, -2581, -2580, 6769, + 6770, 6771, 6772, 6773, -2574, -2573, 692, -2571, + -2570, -2569, -2568, 693, 2065, 91, 1722, -3097, + 813, -3097, -2049, -2048, -2047, 2337, 32767, 2338, + 693, 2340, 2341, 2342, 2343, -3098, -1422, -1422, + -3098, -3098, -3098, -3098, 345, -732, -3098, -3098, + -3098, -3098, -3098, -3098, 353, 354, 355, 1162, + 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, + 1171, 1172, 1173, 1174, 1175, 1176, 1177, 4006, + 2154, 2155, 2943, 2944, 2012, 2012, 2012, 2012, + 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, + 2012, 2012, 2012, 2012, 2012, 2012, 1201, 2013, + 1098, 2013, 2013, 1206, 2014, 2014, 2014, 2014, + 1569, 1212, 2015, 1214, 1215, 1216, 2018, 3198, + 4014, 4015, 4016, 4017, 4018, 1224, 4021, 2019, + 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, + 2019, 2019, 1237, 4022, 4023, 4024, 4025, 4026, + 6140, 4848, 2019, 2019, 2019, 4027, 6150, 4028, + 4029, 4030, 4031, 4032, 4033, -1941, -1941, -1941, + 4040, 4041, 4042, 4043, 4044, 4045, 4046, 4047, + 4048, 4049, 4050, 4051, 4052, 4053, 7230, 136, + 137, 658, 658, 7233, 7234, 7235, 7236, 7237, + -1135, -1134, 4529, 7241, 7242, 7243, 7244, 3059, + 3060, 3061, 4117, 3063, 3064, 3065, -1851, -1851, + -1851, -3084, 1864, 1660, 1866, -1851, 1868, 1869, + 1870, -4909, 3078, 1667, 3080, 1668, 3082, 3083, + 3084, 3085, 1672, 3087, 3088, 1674, 1674, 1674, + 1674, 2166, 3094, 1676, 1676, 1676, 3098, 1677, + 1677, 1677, 3102, 3103, 3104, 2978, 1336, 1337, + 2980, 1339, 1340, 1341, 1342, 1343, 1344, 1345, + 1346, 1347, 1348, 1349, 1350, 1351, 1352, 1353, + 1354, 1355, 1356, 1357, 1358, 1359, 1360, 1361, + 1362, 1363, 1364, 1365, 1366, 1367, 1368, 1369, + 1370, 1371, 1372, 1373, 1374, 1375, 1376, 1377, + 1378, 1379, 1380, 1381, 1382, 1383, 1384, 1385, + 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, + 1394, 1395, -219, 1397, 1398, 1399, 1400, 1401, + -1081, 1403, 1404, 1405, 1406, 1407, 1408, 1409, + 1410, 1411, 1412, 1413, 1414, 1415, 1416, 1417, + 1418, 1419, 1420, 1421, 1422, 1423, 1424, 1425, + 1426, 1427, 1428, 1429, 1430, 1431, 1432, 1433, + 1434, 1435, 1436, 1437, 1438, 1439, 1440, 1441, + 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, + 1450, 1451, 1452, 1453, 1454, 1455, 1456, 1457, + 1458, 1459, 1460, 1461, 1462, 1463, 1464, 1465, + 1466, 1467, 1468, 1469, 1470, 1471, 1472, 1473, + 1474, 1475, 1476, 1477, 1478, 1479, 1480, 1481, + 1482, 1483, 1484, 1485, 1486, 1487, 1488, 1489, + 1490, 1491, 1492, 1493, 1494, 1495, 1496, 1497, + 1498, 1499, 1500, 1501, 1502, 1503, 1504, 1505, + 1506, 1507, 1508, 1509, 1510, 1511, 1512, 1513, + 1514, 1515, 1516, 1517, 1518, 1519, 1520, 1521, + -5554, -5554, -5554, -5554, -5554, -5554, -5554, -5554, + -5554, -5554, -5554, -5554, 4741, 4742, -5554, -5554, + -5554, -5554, -5554, -5554, -5554, 4598, 32767, 32767, + -5556, 4602, 4603, 4604, 4605, 4606, 4607, -1955, + -1955, -1955, 1435, 1436, 1437, 1438, 1439, 1440, + 4617, -2477, -2476, 4620, 4621, 4622, 4623, 4624, + 4625, 4626, -3746, -3745, 1918, 4630, 4631, 4632, + 4633, 448, 449, 450, 1506, 452, 453, 454, + -4462, -4462, -4462, -5695, -747, -951, -745, -4462, + -743, -742, -741, -7520, 467, -944, 469, -943, + 471, 472, 473, 474, -939, 476, 477, -937, + -937, -937, -937, -445, 483, -935, -935, -935, + 487, -934, -934, -934, 491, 492, 493, 1969, + 1970, 1971, -1790, -1790, 1974, 1975, 141, 1977, + 1978, 1979, 1980, 1981, 1982, 1983, 1984, -137, + 1986, 1987, -136, 1989, 1990, 1991, -3631, 1993, + 1994, 142, 143, 931, 932, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -3960, + 0, -915, 0, 0, -3960, 0, 0, 0, + 0, -445, -3960, 0, -3960, -3960, -3960, 0, + 1180, 1996, 1997, 1998, 1999, 2000, 2001, 2002, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -782, 2003, 2004, 2005, 2006, + 2007, 4121, 2829, 0, 0, 0, 2008, 4131, + 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, + 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, + 2025, 2026, 2027, 2028, 2029, 2030, 2031, 2032, + 32767, 2033, 2034, 2035, 2036, 2037, 32767, 2038, + 32767, 2039, 2040, 144, 2041, 2042, 32767, 2043, + 2044, 2045, 2046, 2047, 2048, 2049, 2050, 2051, + 2052, 2053, 2054, 2055, 2056, 2057, 2058, 2059, + 2060, 2061, 2062, 2063, 2064, 2065, 1118, 2067, + 2068, 2069, 2070, 2071, 2072, 2073, 2074, 2075, + 2076, 2077, 2078, 2079, 2080, 2081, 2082, 2083, + 2084, 2085, 2086, 2087, 2088, 2089, 2090, 2091, + 2092, 2093, 2094, 2095, 2096, 2097, 2098, 2099, + 2100, 2101, 2102, 2103, 2104, 2105, 2106, 2107, + 2108, 2109, 2110, 2111, 2112, 2113, 2114, 2115, + 2116, 2117, 2118, 2119, 2120, 2121, 2122, 2123, + 2124, 2125, 2126, -4915, -4915, -4915, -4915, -4915, + -4915, -4915, -4915, -4915, -4915, -4915, -4915, -4915, + -4915, -4915, 2142, 2143, -4913, -4913, -4913, -4913, + -4913, -4913, -4913, 1976, 1049, 2468, 2469, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + -435, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 146, + 32767, 32767, 32767, 32767, -8001, -8001, -5292, 2154, + -8003, -8003, -8003, -8003, -8003, -8003, 2161, 2162, + 2163, 2164, 2165, 2166, 2167, 2168, 2169, 2170, + 2171, 2172, 2173, 2174, 2175, 2176, 2177, 2178, + 2179, 2180, 2181, 2182, 2183, 2184, 2185, 2186, + 2187, 2188, 2189, 2190, 2191, 2192, 2193, 2194, + 2195, 32767, 2196, 2197, 2198, 2199, 2200, 2201, + 2202, 2203, -494, 2205, 2206, 2207, 2208, 2209, + 4229, 2211, 2212, 2213, 2214, 2215, 2216, 2217, + 2218, 2219, 2220, 2221, 2222, 2223, 2224, 2225, + 2226, 2227, 2228, 2229, 2230, 2231, 2232, 2233, + 2234, 2235, 2236, 2237, 2238, 2239, 2240, 2241, + 2242, 2243, 2244, 2245, 2246, 2247, 2248, 2249, + 2250, -3113, 2252, 2253, 2254, 2255, 2256, 2257, + -493, 2259, 2260, 2261, 0, 0, 0, 0, + 0, 2267, 0, 0, 0, 0, 0, 0, + 0, 2275, 2276, 0, 2278, 0, 2280, 0, + 0, 2283, 2284, 2285, 3485, 3485, 3485, 3485, + 3485, 3485, 3485, 3485, 3485, 3485, 3485, 3485, + 3154, 1170, 1171, 710, 1172, 1173, 1174, 710, + 1175, 1176, 1177, 1178, 1179, 1180, 1181, 710, + 1182, 1183, 1184, 1185, 1186, 2319, 711, 711, + 2322, 2323, 1191, 2325, -512, 1196, 1197, -490, + -489, -488, -487, -486, -485, -484, 1202, 1203, + 2338, 2339, 2340, 2167, 2342, 2384, 2385, 2386, + 1895, 968, 2387, 2388, 2389, 968, 2390, 2391, + 2392, 968, 968, 968, -507, -507, -507, 3255, + 3256, -507, -507, 1328, -507, -507, -507, -507, + -507, -507, -507, -507, 1615, -507, -507, 1617, + -507, -507, -507, 5116, -507, -507, 1346, -507, + -507, -507, 1895, 1895, 1895, 1895, 1895, 1895, + 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, + 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, + 1895, 1895, 1895, -507, 1894, 1894, 1894, 1894, + 1894, 1894, 1894, -80, -79, -78, -77, 2425, + -76, -75, -74, 2429, -73, -72, -71, -70, + -69, -68, -67, -66, -65, -64, -63, 2441, + -62, 2268, 2268, 2268, 2268, 2268, 2268, 2268, + 2268, 2268, 32767, 8912, 8913, 8914, -433, -432, + 2833, -430, -429, -428, -427, 2834, 4206, 2232, + 3863, -956, 2954, -956, 92, 93, 94, 4478, + 4479, 4480, 2835, 4482, 4483, 4484, 4485, -956, + 720, 720, -956, -956, -956, -956, 2487, 1410, + -956, -956, -956, -956, -956, -956, 2495, 2496, + 2497, 2498, 2499, 2500, 99, 100, 101, 2504, + 102, 103, 2507, 2508, 2509, 104, 2511, 2512, + 2513, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 154, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 1607, 2592, 1607, 2517, 2518, + 1609, 591, 2521, 2522, 2523, 2524, 587, 2526, + 2527, 2528, 2529, 583, 2531, 2532, 2533, 2534, + 2535, 2536, 2537, 2538, 2539, 2540, 2541, 2542, + 4702, 2544, 2545, 2546, -1530, 2548, 2549, 2550, + 2551, 2552, 2583, 2554, 2584, 2585, 2586, 2587, + 2588, 2560, 2561, 2562, 2563, 2564, 2565, 2566, + 5765, 2568, 2569, 2570, 2571, 2572, 2573, 2574, + 2575, 2576, 2577, 32767, 32767, 2578, 2579, 2580, + 2581, 2582, 1578, 2584, 2585, 2586, 2587, 2588, + 2589, 3171, 2591, 2592, 373, 2594, 2595, 2596, + 2597, 374, 2599, 2600, 2601, 2602, 1581, -1682, + -1681, -1680, -1679, 1582, 2954, 980, 2611, -2208, + 1702, -2208, -1160, -1159, -1158, 3226, 3227, 3228, + 1583, 3230, 3231, 3232, 3233, -2208, -532, -532, + -2208, -2208, -2208, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 4205, 4206, 4207, - 4208, 4209, 4210, 4211, 4212, 4213, 4214, 4215, - 4216, -4880, 4218, 5470, -4882, 4221, 4222, 4223, - 4224, 4225, 4226, 4227, 4228, 1009, 4230, 4231, - 1007, 4233, 4234, 4250, 4250, 4250, 4238, 4239, - 4240, 4253, 4253, 4243, 4244, 4245, 4246, 4247, - 4248, 4249, 4250, 4251, 4252, 4253, 4254, 353, - 7010, 3652, 4258, 4259, 7011, 4261, 4262, 4263, - 4264, 4265, 4266, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 105, 32767, 32767, 32767, + 32767, 32767, 32767, 3698, 3699, 1576, 3701, 3702, + 3703, -1919, 3705, 3706, 1854, 1855, 2643, 2644, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2286, 2287, 2288, 2289, + 2290, 2291, 2292, 2293, 2294, 2295, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2296, 2297, -185, 2299, + 2300, 2301, 2302, 2303, 2304, 2305, 2306, 2307, + 2308, 2309, 2310, 2311, 2312, 2313, 2314, 2315, + 2316, 32767, 32767, 2317, 2318, 2319, 2320, 2321, + 2322, 2323, 2324, 2325, 2326, 2686, 2687, 32767, + 2688, 2689, 2690, 2691, 2692, 2693, 2694, 2695, + 2696, 2697, 2698, 2699, 2686, 2686, 2702, 2703, + 2704, 2705, 2706, 32767, 0, 2708, 2709, 2710, + 32767, 8148, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 2698, 0, 0, 0, 0, + 0, -2019, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 5364, 0, 0, 0, 0, 0, + 0, 2751, 0, 0, 0, 2262, 2263, 2264, + 2265, 2266, 0, 2268, 2269, 2270, 2271, 2272, + 2273, 2274, 0, 0, 2277, 0, 2279, 0, + 2281, 2282, 0, 0, 0, -1199, -1198, -1197, + -1196, -1195, -1194, -1193, -1192, -1191, -1190, -1189, + -1188, -856, 1129, 1129, 1591, 1130, 1130, 1130, + 1595, 1131, 1131, 1131, 1131, 1131, 1131, 1131, + 1603, 1132, 1132, 1132, 1132, 1132, 0, 1609, + 1610, 0, 0, 1133, 0, 2838, 1131, 1131, + 2819, 2819, 2819, 2819, 2819, 2819, 2819, 1134, + 1134, 0, 0, 0, 174, 0, -41, -41, + -41, 451, 1379, -39, -39, -39, 1383, -38, + -38, -38, 1387, 1388, 1389, 2865, 2866, 2867, + -894, -894, 2870, 2871, 1037, 2873, 2874, 2875, + 2876, 2877, 2878, 2879, 2880, 759, 2882, 2883, + 760, 2885, 2886, 2887, -2735, 2889, 2890, 1038, + 2892, 2893, 2894, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, + 514, 515, 516, 517, 2920, 520, 521, 522, + 523, 524, 525, 526, 2501, 2501, 2501, 2501, + 0, 2502, 2502, 2502, 0, 2503, 2503, 2503, + 2503, 2503, 2503, 2503, 2503, 2503, 2503, 2503, + 0, 2504, 175, 176, 177, 178, 179, 180, + 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, 191, 192, 193, 194, 195, 527, + 2512, 2512, 2974, 2513, 2513, 2513, 2978, 2514, + 2514, 2514, 2514, 2514, 2514, 2514, 2986, 2515, + 2515, 2515, 2515, 2515, 2515, 2993, 2994, 2995, + 2996, 2519, 2519, 2519, 2519, 2519, 3002, 3003, + 4209, 4209, 4209, 4209, 2525, 2525, 2525, 2525, + 2525, 2525, 2525, 291, 2525, 2525, 2525, 2525, + 2525, 196, 197, 198, 199, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, 214, 215, -6826, -6826, -6826, + -6826, -6826, -6826, -6826, 2522, 32767, 32767, 2520, + 2520, 2520, 2520, -740, -2111, 32767, 32767, 3052, + -857, 3054, 2007, 2007, 2007, 32767, 32767, -2378, + -732, -2378, 32767, 32767, 32767, 3061, 1386, 1387, + 3064, 3065, 3066, 3067, 32767, 702, 3069, 3070, + 3071, 3072, 3073, 3074, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 2834, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -2302, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -2356, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 32767, 32767, 0, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 32767, -4130, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -48, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, + 0, 0, 32767, 0, 0, 0, 32767, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 0, -2329, 32767, 32767, -2328, + -2327, -2326, -2325, -2324, 32767, 32767, -2323, -2322, + -2321, 32767, -2320, 32767, -2319, 32767, -2318, 32767, + -2317, -1985, 0, 0, 32767, 0, 0, 0, + 32767, 0, 0, 0, 0, 0, 0, 0, + 32767, 0, 0, 0, 0, 0, 0, 32767, + 32767, 32767, 32767, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, + 0, 0, 0, 0, 0, -2234, 0, 0, + 0, 0, 0, -2329, -2328, -2327, -2326, -2325, + -2324, -2323, -2322, -2321, -2320, -2319, -2318, -2317, + -2316, -2315, -2314, -2313, -2312, -2311, 0, 0, + 0, -9348, -9348, -9348, -9348, -9348, 0, 0, + -3264, 0, 0, 0, 0, -3260, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, -4903, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 4268, 4269, 4270, 4271, 32767, + 4272, 4273, 4274, 4275, 4276, 4277, 3685, 4279, + 4280, 4281, 4282, 4283, 5543, 4285, 4286, 4287, + 6095, 4289, 4290, 4291, 4292, 4293, 6100, 6100, + 4296, 6101, 4298, 32767, 4299, 4300, 32767, 4301, + 32767, 32767, 4302, 32767, 4303, 4304, 4305, 4306, + 4307, 4308, 4309, 4310, 4311, 4312, 32767, 4313, + 4314, 4315, 4316, 32767, 4317, 32767, 4318, 32767, + 32767, 32767, 32767, 32767, 32767, 4319, 32767, 32767, + 32767, 32767, 4320, 32767, 4321, 32767, 4322, 32767, + 4323, 4324, 4325, 32767, 4326, 4327, 32767, 4328, + 32767, 32767, 4329, 32767, 4330, 32767, 4331, 32767, + 4332, 32767, 4333, 32767, 4334, 4335, 32767, 4336, + 32767, 32767, 4337, 4338, 4339, 8723, 32767, 8724, + 7079, 4343, 4344, 4345, 4346, 4347, 32767, 4348, + 4349, 4350, 4351, 32767, 4352, 4353, 4354, 4355, + 32767, 4356, 32767, 4357, 4358, 4359, 4360, 4361, + 4362, 4363, 4364, 4365, 4366, 32767, 4367, 4368, + 4369, 4370, 4371, 4372, 4373, 4374, 4375, 4376, + 4377, 4378, 4379, 4380, 4381, 4382, 4383, 32767, + 32767, 32767, 32767, 32767, 4384, 4385, 4386, 32767, + 4387, 4388, 4389, 4390, 4391, 32767, 4392, 4393, + 4394, 4395, 4396, 4397, 4398, 4399, 4400, 4401, + 4402, 4403, 4404, 0, 0, 0, 2269, 2269, + 2269, 2269, 2269, 2269, 2269, 2269, 32767, 32767, + 32767, 32767, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 299, 32767, 300, 301, -2381, -2381, -2381, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -2388, 32767, - 32767, -4398, -4398, -4398, 32767, 32767, 32767, 32767, + 32767, 32767, 0, 0, 10120, 0, 0, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 6563, + 6564, 6565, 3176, 3176, 3176, 3176, 3176, 3176, + 0, 7095, 7095, 0, 0, 0, 0, 0, + 0, 0, 32767, 8372, 0, 0, 0, 0, + 0, 4186, 4186, 4186, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -17740,32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 4825, 32767, 32767, 32767, 32767, -4293, - 32767, 32767, 32767, 109, -5804, 111, 112, 32767, - 32767, -4301, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -2438, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 685, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -20069,32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 3994, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -6790, -6790, - 157, -3219, -17570,-1719, -1719, -3027, -3027, -19414, - -3027, -9665, -3028, -3028, -3028, -3028, -3028, 4977, - 577, -3028, -3028, -6421, 4983, -6422, -17851,9446, - -3028, -3028, 331, -3028, 3628, -3027, -3027, -3027, - -3027, -3027, -3027, 1374, 4980, 4981, 8375, -3028, - 8378, 19808, -7488, 4987, -3031, 3880, -3042, 1588, - 24261, -3032, 24264, -3032, 24267, -3032, 19640, -3032, - 24262, -3033, 1694, -3033, -3033, 1597, 24270, 1699, - 1700, 1701, 1702, 1703, 16265, -3014, 1706, 1707, - 1708, 1709, 8366, 5008, 8368, 1713, 8369, 8370, - 8371, 1717, 8374, 8375, 3975, 370, 370, -3023, - 8381, -3024, -14453,12844, 370, 8389, 1479, 8402, - 3773, -18899,8395, -18900,8397, -18901,8399, -14272, - 8401, -18892,8404, 3678, 8406, 8407, 3778, -18894, - 3678, 3678, 3678, 3678, 3678, -10883,8397, 3678, - 3678, 3678, 3678, -2978, 381, -2978, 3678, -2977, - -2977, -2977, 3678, -2978, -2978, 1423, 5029, 5030, - 8424, -2979, 8427, 19857, -7439, 5036, 5037, 1679, - 5039, -1616, 5040, 5041, 5042, 5043, 5044, 5045, - 645, -2960, -2960, -6353, 5051, -6354, -17783,9514, - -2960, 5059, -1851, 5072, 443, -22229,5065, -22230, - 5067, -22231,5069, -17602,5071, -22222,5074, 348, - 5076, 5077, 448, -22224,348, 348, 348, 348, - 348, -14213,5067, 348, 348, 348, 348, -6308, - -2949, -6308, 348, -6307, -6307, -6307, 348, -6308, - -6308, -1907, 1699, 1700, 5094, -6309, 5097, 16527, - -10769,1706, 1707, -1651, 348, 348, 348, 1286, - 348, 348, 348, 348, 348, 348, 1603, 348, - 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 4429, - 4429, 4429, 4429, 4429, 2660, 2661, 2662, 901, - 348, 348, 348, 348, 348, 348, 348, 348, - 3928, 3306, 3306, 3928, 0, 2675, 2676, 2677, - 2678, 0, 2680, 0, 0, 2683, 2684, 2685, - 2686, 4556, 2687, 2688, 2689, 8575, 2691, 2692, - -9266, -9266, -4636, 18037, -9256, 18040, -9256, 18043, - 18044, 13415, -9257, 18037, -9258, 18039, -9259, -9259, - -4629, 18044, 4581, 4582, 4583, -2184, -4527, 10035, - -9244, -2185, -4524, 4590, -4523, 2134, -1224, 2717, - 4595, 2719, 2720, 4598, 6107, 6107, 6107, 2725, - 2726, 2727, 4605, 2729, 2730, 2731, 4609, 2736, - 4611, 4612, 4613, 6118, 6118, 4616, 6119, 2743, - 4619, 4620, 2744, 2745, 6123, 2747, 6124, 4626, - 4627, 4628, 4629, 2753, 4631, 2755, 4633, 8896, - 8897, 8898, 4637, 4638, 4639, 4640, 0, 0, - 0, 0, 0, -1812, 0, 0, 0, 8925, - 0, 0, 1330, -3389, 0, 0, 0, 8940, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 10649, 8068, 0, 0, 16017, 8807, 8808, -1676, - 906, 8811, -7039, -7038, 173, 173, 10658, 8077, - 173, 16024, 16024, 8814, 8815, -1669, 913, 8818, - -7032, -7031, 180, 180, 10665, 8084, 180, 16031, - 16031, 8821, 8822, -1662, 920, 8825, 9014, -7023, - 188, 188, 10673, 8092, 188, 0, 16038, 8828, - 8829, -1655, 927, 8832, 4727, 4728, 4729, 4730, - 4305, 4732, 4733, 4734, 4735, 4736, 4737, 4738, - 4739, 4740, 4741, 4742, 4743, 4744, 4745, 4746, - 4747, 4748, 1540, 1540, 1540, 1540, 1540, 1540, - 1540, 1540, 1540, 1540, 1540, -1893, 1540, 1540, - 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, - 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, - 1540, 1540, 1540, 1540, 1540, 1540, 911, 1540, - 4614, 4615, 4616, 4617, 4618, 1540, 4619, 4620, - 4621, 4622, 4623, 4624, 4625, 4626, 4627, -7592, - 11688, 4630, 4631, 4632, 4633, 4634, 4635, 32767, - 4810, 4811, 4812, 4813, 3850, 3851, 4816, 4817, - 4818, 4819, 4820, 4821, 4822, 4823, 4824, 4825, - 4573, 4573, 4573, 4573, 4830, 4574, 4574, 4574, - 4834, 4575, 4575, 4575, 4575, 4575, 917, 918, - 4575, 4575, 4575, 4575, 923, 4576, 4576, 926, - 927, 928, 7709, 930, 931, 932, 933, 934, - 7717, 936, 7719, 938, 7722, 940, 941, 942, - 943, 944, 945, 946, 7733, 948, 949, 950, - 951, 952, 953, 954, 955, 956, 957, 958, - 959, 960, 961, 962, 963, 964, 965, 4765, - 967, 968, 969, 970, 971, 972, 973, 974, - 975, 976, 977, 978, 4902, 4903, -2043, 1334, - 15686, -164, -163, 1146, 1147, 17535, 1149, 7788, - 1152, 1153, 1154, 1155, 1156, -6848, -2447, 1159, - 1160, 4554, -6849, 4557, 15987, -11309,1166, 7797, - 7798, 7799, -5489, 1167, 1168, 1169, 1170, 1171, - 1172, -3228, -6833, -6833, -10226,1178, -10227,-21656, - 7812, 7813, 7814, 7815, 7816, 4951, 7817, 7818, - 4954, 4955, 4956, 4957, 4958, 4959, 4960, 4961, - 4962, 7837, 4964, 4965, 4966, 4967, 4968, 4969, - 4970, 4971, 4972, 4973, 4974, 4975, 4976, 4977, - 4978, 4979, 4980, 4981, 4982, 4983, 4984, 4985, - 4986, 4987, 4988, 4989, 4990, 4991, 4992, 4993, - 4994, 4995, 4996, 4997, 4998, 4999, 5000, 5001, - 5002, 5003, 5004, 5005, 5006, 5007, 5008, 5009, - 5010, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, -224, -224, -224, -6880, -3521, -6880, -224, - -6879, -6879, -6879, -6879, -6879, -6879, -2478, 1128, - 1129, 4523, -6880, 4526, 15956, -11340,1135, -6883, - 28, -6894, -2264, 20409, -6884, 20412, -6884, 20415, - 20416, 15787, -6885, 20409, -6886, -2159, -6886, -6886, - -2256, 20417, -2154, -2153, -2152, -2151, -2150, 12412, - -6867, -2147, -2146, -2145, -2144, 4513, 1155, 4515, - -2140, 4516, 4517, 4518, -2136, 4521, 4522, 122, - -3483, -3483, -6876, 4528, -6877, -18306,8991, -3483, - -3483, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -3490, 911, 4517, 4518, 7912, -3491, 7915, - 19345, -7951, 4524, -3494, 3417, -3505, 1125, 23798, - -3495, 23801, -3495, 23804, -3495, 19177, -3495, 23799, - -3496, 1231, -3496, -3496, 1134, 23807, 1236, 1237, - 1238, 1239, 1240, 15802, -3477, 1243, 1244, 1245, - 1246, 7903, 4545, 7905, 1250, 7906, 7907, 7908, - 7909, 7910, 7911, 3511, -94, -94, -3487, 7917, - -3488, -14917,12380, -94, 7925, 1015, 7938, 3309, - -19363,7931, -19364,7933, -19365,7935, -14736,7937, - -19356,7940, 3214, 7942, 7943, 3314, -19358,3214, - 3214, 3214, 3214, 3214, -11347,7933, 3214, 3214, - 3214, 3214, -3442, -83, -3442, 3214, -3441, -3441, - -3441, 3214, -3442, -3442, 959, 4565, 4566, 7960, - -3443, 7963, 19393, -7903, 4572, 4573, 1215, 4575, - -2080, 4576, 4577, 4578, 4579, 4580, 4581, 181, - -3424, -3424, -6817, 4587, -6818, -18247,9050, -3424, - 4595, -2315, 4608, -21, -22693,4601, -22694,4603, - -22695,4605, -18066,4607, -22686,4610, -116, 4612, - 4613, -16, -22688,-116, -116, -116, -116, -116, - -14677,4603, -116, -116, -116, -116, -6772, -3413, - -6772, -116, -6771, -6771, -6771, -116, -6772, -6772, - -2371, 1235, 1236, 4630, -6773, 4633, 16063, -11233, - 1242, -6776, 135, -6787, -2157, 20516, -6777, 20519, - -6777, 20522, -6777, 15895, -6777, 20517, -6778, -2051, - -6778, -6778, -2148, 20525, -2046, -2045, -2044, -2043, - -2042, 12520, -6759, -2039, -2038, -2037, -2036, 4621, - 1263, 4623, -2032, 4624, 4625, 4626, -2028, 4629, - 4630, 230, -3375, -3375, -6768, 4636, -6769, -18198, - 9099, -3375, -3375, -16, -3375, 3281, -3374, -3374, - -3374, -3374, -3374, -3374, 1027, 4633, 4634, 8028, - -3375, 8031, 19461, -7835, 4640, -3378, 3533, -3389, - 1241, 23914, -3379, 23917, -3379, 23920, -3379, 19293, - -3379, 23915, -3380, 1347, -3380, -3380, 1250, 23923, - 1352, 1353, 1354, 1355, 1356, 15918, -3361, 1359, - 1360, 1361, 1362, 8019, 4661, 8021, 1366, 8022, - 8023, 8024, 1370, 8027, 8028, 3628, 23, 23, - -3370, 8034, -3371, -14800,12497, 23, 23, 3382, - 1384, 1385, 1386, 449, 1388, 1389, 1390, 1391, - 1392, 1393, 139, 1395, 1396, 1397, 1398, 1399, - 1400, 1401, 1402, 1403, 1404, 1405, 1406, 1407, - 1408, 1409, 1410, 1411, 1412, 1413, 1414, 1415, - 1416, 1417, 1418, -2662, -2661, -2660, -2659, -2658, - -888, -888, -888, 874, 1428, 1429, 1430, 1431, - 1432, 1433, 1434, 1435, -2144, -1521, -1520, -2141, - 1788, -886, -886, 3336, 1791, 1792, 1793, 1794, - 1795, 1796, 1797, 1798, 1799, 1800, 1801, 1802, - 1803, 1804, 1458, 1459, 1805, 1461, 1806, 1463, - 1464, 1807, 1808, 1809, 1810, 1811, 1812, 1813, - 1814, 1815, 1816, 1381, 1817, 1381, 1818, 1381, - 1480, 1819, 1820, 1483, 1484, 1485, 1821, 1822, - 1823, 1824, 1825, 1826, 1827, 1828, 1829, 1830, - 1831, 1832, 1833, 1834, 1835, 1836, 1837, 1838, - 1839, 1840, 1841, 1842, 1843, 1844, 1845, 1846, - 1847, 1848, 1849, 1850, 1851, 1852, 1853, 1854, - 1855, 1856, 1857, 1858, 1859, 1860, 1861, 1862, - 1863, 1864, 1865, 1866, 1867, 1868, 1869, 1870, - 1871, 1872, 1873, 1874, 1875, 1876, 1877, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 9097, 0, -1251, 9102, 0, - 0, 0, 0, 0, 0, 0, 0, 3220, - 0, 0, 3225, 0, 0, -15, -14, -13, - 0, 0, 0, -12, -11, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3902, -2754, 605, 0, 0, -2751, 0, - 0, 0, 0, 0, 0, 1938, 1939, 1940, - 1941, 1942, 1943, 1944, 1945, 1946, 1947, 1948, - 1949, 1950, 1951, 1530, 1443, 1532, 1533, 1956, - 1957, 1958, 1959, 1960, 1961, 1962, 141, 1964, - 1534, 1966, 1967, 1968, 1969, 1970, 1971, 1972, - 1973, 1974, 1975, 1976, 1977, 1978, 1979, 1980, - 1981, 142, 143, 1984, 1985, 1986, 1987, 1988, - 1989, 1990, 1991, 1992, 1993, 1994, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 1665, 1996, 1997, - 1998, 1999, 2000, 2001, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 2002, 2003, 2004, 2005, 2006, 32767, 32767, 32767, - 32767, 32767, 2007, 32767, 2008, 2009, 2010, 2011, - 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, - 2020, 2021, 2022, 2023, 2024, 2025, 2026, 2027, - -4501, -4501, -4501, -4501, -1422, -4500, -4500, -4500, - 2035, 2036, 32767, 1706, 32767, 1706, 1706, 32767, - 1705, 1705, 32767, 2042, 2043, 2044, 2045, 2046, - 2047, 1711, 2049, 1712, 2051, 4525, 4525, 4525, - 2055, 2056, 2057, 4528, 2059, 2060, 2061, 2062, - 2063, 2064, 2065, 7042, 2067, 4536, 4536, 4536, - 2071, 2072, 2073, 4539, 2075, 2076, 2077, 2078, - 2079, 2080, 2081, 2082, 2083, 2084, 1735, 1735, - 2087, 2088, 2089, 2090, 2091, 2092, 2093, 2094, - 226, 227, 2097, 228, 229, 230, 6116, 232, - 233, -11725,-11725,-7095, 15578, -11715,15581, -11715, - 15584, 15585, 10956, -11716,15578, -11717,15580, -11718, - -11718,-7088, 15585, 2122, 2123, 2124, -4643, -6986, - 7576, -11703,-4644, -6983, 2131, -6982, -325, -3683, - 258, 2136, 260, 261, 2139, 3648, 3648, 3648, - 266, 267, 268, 2146, 270, 271, 272, -1029, - 32767, 32767, 32767, 32767, 6972, 2572, 32767, -1034, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -4286, - 32767, 32767, -2089, 32767, 3715, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -2492, -2492, -2492, -2492, -4304, -2492, -2492, -2492, - 6433, -2492, -2492, -1162, -5881, -2492, -2492, -2492, - 6448, -2492, -2492, -2492, -2492, -2492, -2492, -2492, - -2492, -2492, -2492, -2492, -2492, -2492, -2492, -2492, - -2492, 8157, 5576, -2492, -2492, 13525, 6315, 6316, - -4168, -1586, 6319, -9531, -9530, 32767, 2195, 2196, - 2197, 2198, 2199, 2200, 2201, 2202, 2203, 2204, - 2205, 2206, 2207, 2208, 2209, 2210, 2211, 2212, - 2213, 2214, 2215, 2216, 2217, 2218, 2219, 2220, - 2221, 2222, 2223, 2224, 2225, 2226, 2227, 2228, - 2229, 2230, 2231, 2232, 2233, 2234, 2235, 2236, - 2237, 2238, 2239, 2240, 2241, 2242, 2243, 2244, - 2245, 2246, 2247, 2248, 2249, 2250, 2251, 2252, - 2253, 2254, 2255, 2256, 2257, 2258, 2259, 2260, - 2261, 2262, -5075, 2264, 2265, 2266, 2267, 2268, - 2269, 2270, 2271, 2272, 2273, 2274, 2275, 2276, - 2277, 2278, 2279, 2280, 2281, 2282, 2283, 2284, - 2285, 2286, 2287, 2288, 2289, 2290, 2291, 2292, - 2293, 2294, 2295, 2296, 2297, 2298, 2299, 2300, - 2301, 2302, 2303, 1667, 1667, 2306, 2307, 2308, - 2309, 2310, 2311, 2312, 2313, 2314, 2315, 2316, - 2317, 2318, 2319, 2320, 2321, 1358, 1359, 2324, - 2325, 2326, 2327, 2328, 2329, 2330, 2331, 2332, - 2333, 2081, 2081, 2081, 2081, 2338, 2082, 2082, - 2082, 2342, 2083, 2083, 2083, 2083, 2083, -1575, - -1574, 2083, 2083, 2083, 2083, -1569, 2084, 2084, - -1566, -1565, -1564, 5217, -1562, -1561, -1560, -1559, - -1558, 5225, -1556, 5227, -1554, 5230, -1552, -1551, - -1550, -1549, -1548, -1547, -1546, 5241, -1544, -1543, - -1542, -1541, -1540, -1539, -1538, -1537, -1536, -1535, - -1534, -1533, -1532, -1531, -1530, -1529, -1528, -1527, - 2273, -1525, -1524, -1523, -1522, -1521, -1520, -1519, - -1518, -1517, -1516, -1515, -1514, 2410, 2411, -4535, - -1158, 13194, -2656, -2655, -1346, -1345, 15043, -1343, - 5296, -1340, -1339, -1338, -1337, -1336, -9340, -4939, - -1333, -1332, 2062, -9341, 2065, 13495, -13801,-1326, - 5305, 5306, 5307, -7981, -1325, -1324, -1323, -1322, - -1321, -1320, -5720, -9325, -9325, -12718,32767, 2451, - 2452, 2453, 2454, 2455, 2456, 2457, 2458, 2459, - 2460, 2461, 2462, 2463, 2464, 2465, -6169, 4316, - 1735, -6169, 9682, 9682, 2472, 2473, -8011, -5429, - 2476, -13374,-13373,2479, 2480, 2481, 2482, 2483, - 2484, 2485, 2486, 2487, 2488, 2489, 2490, 2491, - 2492, 2493, 2494, 2495, 2496, 2497, 2498, 203, - 1141, 203, 203, 203, 203, 203, 203, 1458, - 203, 2509, 2510, 2511, 2512, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 155, 32767, 32767, 32767, - 32767, 156, 32767, 32767, 32767, 32767, 157, 207, - 4288, 4288, 4288, 4288, 4288, 2519, 2520, 2521, - 760, 207, 207, 207, 207, 207, 207, 207, - 207, 3787, 3165, 3165, 2534, 2535, 2536, 2537, - 2538, 2539, -139, 2541, -139, -139, 2544, 2545, - 2546, 2547, 2548, 2549, 2550, 2551, 8437, 2553, - 2554, -9404, -9404, -4774, 17899, -9394, 17902, -9394, - 17905, 17906, 13277, -9395, 17899, -9396, -4669, -9396, - -9396, -4766, 17907, -4664, -4663, -4662, -4661, 0, - 32767, -9379, -4659, -4658, -4657, -4656, 2001, -1357, - 2584, 4462, 2586, 2587, 4465, 5974, 5974, 5974, - 2592, 2593, 2594, 4472, 2596, 2597, 2598, 4476, - 2603, 4478, 4479, 4480, 5985, 5985, 4483, 5986, - 2610, 4486, 4487, 2611, 2612, 5990, 2614, 5991, - 4493, 4494, 4495, 4496, 2620, 4498, 2622, 4500, - 8763, 8764, 8765, 4504, 4505, 4506, 4507, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 8635, - -1849, 733, 8638, -7212, -7211, 0, 0, 10485, - 7904, 0, 15851, 15851, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 2296, 1359, 2298, 2299, 2300, 2301, 2302, 2303, - 1049, 2305, 0, 0, 0, 0, 0, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 173, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 2306, -1774, -1773, -1772, -1771, -1770, 0, 0, - 0, 1762, 2316, 2317, 2318, 2319, 2320, 2321, - 2322, 2323, -1256, -633, -632, 0, 0, 0, - 0, 0, 0, 2679, 0, 2681, 2682, 0, - 0, 0, 0, 0, 0, 0, 0, -5885, - 0, 0, 11959, 11960, 7331, -15341,11953, -15342, - 11955, -15343,-15343,-10713,11960, -15333,11963, 7237, - 11965, 11966, 7337, -15335,7237, 7237, 7237, 7237, - 7237, -7324, 11956, 7237, 7237, 7237, 7237, 581, - 3940, 0, -1877, 0, 0, -1877, -3385, -3384, - -3383, 0, 0, 0, -1877, 0, 0, 0, - -1877, -3, -1877, -1877, -1877, -3381, -3380, -1877, - -3379, -2, -1877, -1877, 0, 0, -3377, 0, - -3376, -1877, -1877, -1877, -1877, 0, -1877, 0, - -1877, -6139, -6139, -6139, -1877, -1877, -1877, -1877, - 2764, 2765, 2766, 2767, 2768, 4581, 2770, 2771, - 2772, -6152, 2774, 2775, 1446, 6166, 2778, 2779, - 2780, -6159, 2782, 2783, 2784, 2785, 2786, 2787, - 2788, 2789, 2790, 2791, 2792, 2793, 2794, 2795, - 2796, 2797, -7851, -5269, 2800, 2801, -13215,-6004, - -6004, 4481, 1900, -6004, 9847, 9847, 2637, 2638, - -7846, -5264, 2641, -13209,-13208,-5997, -5997, 4488, - 1907, -5997, 9854, 9854, 2644, 2645, -7839, -5257, - 2648, -13202,-13201,-5990, -5990, 4495, 1914, -5990, - -6178, 9860, 2650, 2651, -7833, -5251, 2654, 2843, - -13194,-5983, -5983, 4502, 1921, 32767, 32767, 32767, - 32767, 32767, 2849, 2850, 1029, 2852, 2422, 2854, - 2855, 2856, 2857, 2858, 2859, 2860, 2861, 2862, - 2863, 2864, 2865, 2866, 2867, 2868, 2869, 1030, - 1031, 2872, 2873, 2874, 2875, 2876, 2877, 2878, - 2879, 2880, 2881, 2882, 2883, 2884, 2885, 2886, - 2887, 2888, 2889, 2890, 2891, 2892, 2893, 2894, - 2895, 2896, 2897, 2898, 2899, 2900, 2901, 2902, - 2903, 2904, 2905, 2906, 2907, 2908, 2909, 2910, - 2911, 2912, 2913, 2914, 2915, 2916, 2917, 2918, - 2919, 2920, 2921, 2922, 2923, 2924, 2925, 2926, - 2927, 2928, 2929, 2930, 2931, 2932, 2933, 2934, - 2935, 2936, 175, 176, 177, 178, 179, 180, - 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 2958, - 2959, 2960, 2961, 2962, 2963, 2964, 2965, 2966, - 2967, 2968, 2969, 2970, 2971, 2972, 2973, 2974, - 2975, 2976, 2977, 2978, 2979, 2980, 2981, 2982, - 2983, 2984, 2985, 2986, 2987, 2988, 2989, 2990, - 2991, 2992, 2993, 2994, 2995, 2996, 2997, 2998, - 2999, 3000, 3001, 3002, 3003, 3004, 3005, 3006, - 3007, 196, 197, 198, 199, 200, 201, 202, - 203, 204, 205, 206, 207, 208, 209, 4471, - -2296, 212, 213, 214, 215, 216, 217, 218, - 219, 220, 221, 3568, 3035, 3036, 3037, 3038, - 32767, 32767, 32767, 3039, 3040, 3041, 3042, 3043, - 3044, 32767, 32767, 3045, 3046, 3047, 4565, 3049, - 4567, 32767, 32767, -1319, -1319, -1319, -1319, -1319, - -1319, 32767, 32767, -1321, -1321, 3059, 32767, 32767, - 32767, -1050, 3061, 3062, 3063, 3064, 3065, 3066, - 32767, 3067, 3068, 3069, 3070, 3693, 3694, 3073, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 338, 32767, 337, 337, 337, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 0, 985, 0, + 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 0, 0, - 0, 32767, 0, 0, 0, 0, 32767, 32767, - 0, 0, 0, 0, 0, 0, 0, 0, - 32767, 0, 0, 0, 0, 0, 0, 0, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, -3663, -3662, -3661, -3660, -3659, 0, 0, - -3656, -3655, -3654, -3653, 0, -3652, -3651, 0, - 0, 0, -6780, 0, 0, 0, 0, 0, - -6782, 0, -6782, 0, -6783, 0, 0, 0, - 0, 0, 0, 0, -6786, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, -3799, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -3923, -3923, 3024, -352, - -14703,1148, 1148, -160, -160, -16547,-160, -6798, - -161, -161, -161, -161, -161, 7844, 3444, -161, - -161, -3554, 7850, -3555, -14984,12313, -161, -161, - 3198, -161, 6495, -160, -160, -160, -160, -160, - -160, 4241, 7847, 7848, 11242, -161, 11245, 22675, - -4621, 7854, -164, 6747, -175, 4455, 27128, -165, - 27131, -165, 27134, -165, 22507, -165, 27129, -166, - 4561, -166, -166, 4464, 27137, 4566, 4567, 4568, - 4569, 4570, 19132, -147, 4573, 4574, 4575, 4576, - 11233, 7875, 11235, 4580, 11236, 11237, 11238, 4584, - 11241, 11242, 6842, 3237, 3237, -156, 11248, -157, - -11586,15711, 3237, 11256, 4346, 11269, 6640, -16032, - 11262, -16033,11264, -16034,11266, -11405,11268, -16025, - 11271, 6545, 11273, 11274, 6645, -16027,6545, 6545, - 6545, 6545, 6545, -8016, 11264, 6545, 6545, 6545, - 6545, -111, 3248, -111, 6545, -110, -110, -110, - 6545, -111, -111, 4290, 7896, 7897, 11291, -112, - 11294, 22724, -4572, 4364, 4365, 32767, 4366, 4367, - 4368, 4369, 4370, 4371, 4372, 4373, 4374, 4375, - 4376, 4377, 4378, 4379, 4380, 4381, 4382, 32767, - 32767, 32767, 32767, 32767, 4383, 4384, 4385, 32767, - 4386, 4387, 4388, 4389, 4390, 32767, 4391, 4392, - 4393, 4394, 4395, 4396, 4397, 4398, 4399, 4400, - 4401, 4402, 4403, 4404, 4405, 4406, 4407, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, -1078, -8000, -3370, 19303, - 32767, 19305, -7991, 19308, -7991, 14681, -7991, 19303, - 32767, 32767, -7994, 32767, -3365, 32767, -3264, -3263, - 32767, 32767, 32767, 32767, 32767, 32767, -3262, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 3394, 3395, - -3259, 3398, 3399, -1001, 32767, 32767, 32767, 32767, - -8004, -19433,32767, -4611, -4611, 32767, 32767, 32767, - 32767, 32767, 32767, -4616, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 6782, 18212, -9084, 3391, -4627, - 2284, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -1272, - 32767, 32767, 32767, 32767, 32767, -851, 32767, 32767, - 0, 88, 0, 0, 32767, 32767, 32767, 89, - 90, 32767, 91, 32767, 32767, 0, 32767, 32767, + 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7392,12 +7421,8 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 434, 435, 0, 436, 0, - 437, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 434, 435, 436, 32767, 437, - 438, 32767, 32767, 32767, 439, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7406,24 +7431,51 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 4409, 4410, + 4411, 2143, 2144, 2145, 2146, 2147, 2148, 2149, + 2150, 2151, 2152, 32767, 32767, 32767, 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, 32767, 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, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 4483, 4484, 4485, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, -3886, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4645, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 0, 0, 32767, 32767, + 0, 0, 0, 0, 0, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3078, + 3078, 3078, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3065, + 3065, 3065, 3065, 3065, 3065, 3065, 3065, 3065, + 3065, 3065, 3065, 3065, 3065, 3065, 3065, 3065, + 3065, 3065, 3065, 3065, 3065, 3065, 3065, 3065, + 3065, 3065, 3065, 3065, 3065, 3065, 3065, 3065, + 3065, 3065, 3065, 3065, 3065, 3065, 3065, 3065, + 3065, 3065, 3065, 32767, 32767, 32767, 32767, 3061, + 3061, 3061, 3061, 3061, 3061, 3061, 3061, 3061, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3054, + 3054, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -1906, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7433,60 +7485,27 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 4408, 4409, - 4410, 4411, 4412, 4413, 4414, 4415, 4416, 4417, - 4418, 32767, 32767, 32767, 32767, 32767, 4419, 4420, - 4421, 4422, 4423, 4424, 4425, 4426, 4427, 4428, - 20816, 4430, 4431, 4432, 4433, 4434, 4435, 4436, - -3568, 833, 4439, 4440, 7834, -3569, 7837, 19267, - -8029, 4446, 4447, 1089, 4449, -2206, 4450, 4451, - 4452, 4453, 4454, 4455, 55, -3550, 4458, -6944, - 4460, 4461, -18375,4463, 4464, 4465, 4466, 4477, - -152, -22824,4470, -22825,4472, -22826,4474, -18197, - 4476, 4477, 4478, -248, 4480, 4481, 32767, -22821, - 32767, -250, 32767, 32767, 32767, 32767, 32767, 32767, - -256, 32767, 32767, 32767, 32767, -6916, 32767, -6916, - 32767, -6917, 32767, -6919, -6919, -2518, 32767, 1088, - 4482, 4483, 4484, 32767, 32767, 1091, 32767, -17, - 32767, -2310, 32767, -6931, 32767, -6932, 32767, -6933, - 15739, 32767, 20360, 32767, 32767, -6937, -6937, -2307, - 20366, 32767, -2205, -2204, -2203, -2202, 12360, -6919, - -2199, 32767, -2198, -2197, 4460, 1102, 4485, -2194, - 4462, 4463, 4464, 32767, 4466, 32767, 66, -3539, - -3539, -6932, 4472, -6933, -18362,8935, 0, 0, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 0, - 0, 0, 32767, 0, 0, 0, 0, 0, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 4486, - 4487, 4488, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 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, 32767, 32767, 32767, 32767, 4533, - 4534, 4535, 4536, 4537, 4538, 4539, 4540, 4541, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4542, - 4543, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -1593, 32767, 32767, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 0, 32767, - 0, 0, 0, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 5694, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 839, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -7494,46 +7513,29 @@ NFKC_QC_hash_func(const void *key) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 7338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 948, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 637, - 638, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 964, 964, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 253, 254, 255, - 256, 0, 257, 258, 259, 0, 260, 261, - 262, 263, 264, 3923, 3923, 267, 268, 269, - 270, 3923, 271, 272, 3923, 3923, 3923, -2857, - 3923, 3923, 3923, 3923, 3923, -2859, 3923, -2859, - 3923, -2860, 3923, 3923, 3923, 3923, 3923, 3923, - 3923, -2863, 3923, 3923, 3923, 3923, 3923, 3923, - 3923, 3923, 3923, 3923, 3923, 3923, 3923, 3923, - 3923, 3923, 3923, 3923, 124, 3923, 3923, 3923, - 3923, 3923, 3923, 3923, 3923, 3923, 3923, 3923, - 3923, 0, 0, 6947, 3571, -10780,5071, 5071, - 3763, 3763, -12624,3763, -2875, 3762, 3762, 3762, - 3762, 3762, 11767, 7367, 3762, 3762, 369, 11773, - 368, -11061,16236, 3762, -2868, -2868, -2868, 10421, - 3766, 3766, 3766, 3766, 3766, 3766, 8167, 11773, - 11774, 15168, 3765, 15171, 26601, -2866, -2866, -2866, - -2866, -2866, 0, -2865, -2865, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -2874, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 7042, 7043, 7044, 7045, 7046, 7047, 7048, + 7049, 7050, 7051, 7052, 7053, 7054, 7055, 7056, + 0, 0, 7057, 7058, 7059, 7060, 7061, 7062, + 7063, 7064, 7065, 7066, 7067, 7068, 7069, 7070, + 7071, 7072, 7073, 7074, 7075, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 5011, 5012, - 5013, 5014, 5015, 5016, 5017, 5018, 5019, 5020, - 5021, 5022, 5023, 5024, 5025, 5026, 5027, 5028, - 5029, 5030, 5031, 5032, 5033, 5034, 5035, 5036, - 5037, 5038, 5039, 5040, 5041, 5042, 5267, 5268, - 5269, 11926, 8568, 11928, 5273, 11929, 11930, 11931, - 11932, 11933, 11934, 7534, 3929, 3929, 536, 11940, - 535, -10894,16403, 3929, 11948, 32767, 32767, 32767, + 0, 10295, 10296, 0, 0, 0, 0, 0, + 0, 0, 10152, 10153, 7445, 0, 10158, 10159, + 10160, 10161, 10162, 10163, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7542,15 +7544,20 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 3161, 3162, 3163, 3164, 3165, 3166, + 3167, 3168, 3169, 3170, 3171, 3172, 3173, 3174, + 3175, 3176, 3177, 3178, 3179, 3180, 3181, 3182, + 3183, 3184, 7900, 3186, 6480, 3188, 7906, 3190, + 7909, 3192, 6142, 3194, 7787, 3196, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 0, 0, 0, 0, 0, 0, 0, 5075, + 0, 0, 0, 0, 0, 0, 0, 4954, + 4954, 4954, 0, 0, 4956, 0, 0, 0, + 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 3160, 3161, 3162, 3163, 3164, 3165, 3166, 3167, - 3168, 3169, 3170, 3171, 3172, 3173, 3174, 3175, - 3176, 3177, 3178, 3179, 3180, 3181, 3182, 3183, - 3184, 3185, 3186, 3187, 3188, 3189, 3190, 3191, - 3416, 3417, 3418, 10075, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7558,8 +7565,28 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 356, 357, 358, 1, 2, 3, + 4, 5, 6, 7, 8, 32767, 32767, 32767, + 32767, 32767, 32767, 367, 32767, 32767, 32767, 32767, + 32767, -3034, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 369, 19, + -3042, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 26, 32767, 32767, 32767, 27, 28, 32767, + 29, 30, 32767, 32767, 32767, 32767, 31, 32767, + 32, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 33, 34, 35, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 36, 32767, 32767, 32767, 32767, 32767, 3075, + 3076, -7043, 3078, 3079, 32767, 3080, 3081, 3082, + 3083, 3084, 3085, 3086, 3087, 3088, 3089, 3090, + 3091, 3092, 3093, 3094, 3095, 3096, 3097, 3098, + 3099, 3100, 3101, 3102, -3460, -3460, -3460, -70, + -69, -68, -67, -66, -65, 3112, -3982, -3981, + 3115, 3116, 3117, 3118, 3119, 3120, 3121, -5251, + -5250, 3123, 3124, 3125, 3126, 3127, -1058, -1057, + -1056, 0, -1054, -1053, -1052, -5968, -5968, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, -2461, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7572,40 +7599,8 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - -3433, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, -629, 0, 3074, 3075, 3076, 3077, 3078, - 0, 3079, 3080, 3081, 3082, 3083, 3084, 3085, - 3086, 3087, -9132, 10148, 3090, 3091, 3092, 3093, - 3094, 3095, 3096, 3097, 3098, 3099, 3100, 3101, - 3102, 3103, 3104, 3105, 3106, 3107, 3108, 3109, - 3110, 3111, 3112, 3113, 3114, 3115, 3116, 3117, - 3118, 3119, 3120, 6777, 3121, 3122, 3123, 3124, - 3125, 3126, 3127, 3128, 3129, 6780, 0, 6780, - 6780, 6780, 0, 0, 0, 6782, 0, 0, - 0, 0, 6784, 0, 6785, 0, 6786, 6786, - 0, 6786, 0, 6787, 6787, 6787, 0, 6788, - 6788, 6788, 6788, 6788, 6788, 6788, 0, 6789, - 6789, 6789, 6789, 2990, 6789, 0, 0, 0, - 0, 6793, 6793, 6793, 6793, 6793, 0, 0, - 0, 0, 0, 0, -7904, 7947, 7947, 6639, - 6639, -9748, 32767, 0, 6637, 32767, 32767, 6635, - 32767, 32767, 10238, 6633, 32767, 32767, 14642, 3237, - -8192, 19105, 32767, 0, 0, 0, 13289, 6634, - 6634, 6634, 6634, 6634, 6634, 11035, 14641, 32767, - 18035, 32767, 18037, 29467, 0, 0, 0, 0, - 0, 32767, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 223, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7615,6 +7610,7 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7627,26 +7623,65 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1646, 0, 0, + 0, 0, 0, 0, 1783, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 279, 279, 7059, -927, 485, -927, 486, -927, + -927, -927, -927, 487, -927, -927, 488, 489, + 490, 491, 0, -927, 492, 493, 494, -927, + 495, 496, 497, -927, -927, -927, -2402, -2402, + -2402, 1360, 1361, -2402, -2402, -567, -2402, -2402, + -2402, -2402, -2402, -2402, -2402, -2402, -280, -2402, + -2402, -278, -2402, -2402, -2402, 3221, -2402, -2402, + -549, -2402, -2402, -2402, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 32767, 32767, + 32767, 224, 225, 226, 32767, 227, 228, 229, + -4687, -4687, -4687, -5920, -972, -1176, -970, -4687, + 32767, -968, -967, -7746, 241, -1170, 243, -1169, + 245, 246, 247, 248, -1165, 250, 251, -1163, + -1163, -1163, -1163, 32767, 256, -1162, -1162, -1162, + 260, -1161, -1161, -1161, 264, 265, 266, 140, + -1502, -1501, 142, -1499, -1498, -1497, -1496, -1495, + -1494, -1493, -1492, -1491, -1490, -1489, -1488, -1487, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 284, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 0, 0, - 0, 0, 0, 32767, 32767, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 299, 300, + 301, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7654,331 +7689,308 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3197, + 3198, 3199, 3200, 3201, 3202, 3203, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 2786, 32767, 0, 0, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 6251, 3205, 3206, 3207, + 4441, -506, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 224, 225, 226, 32767, 227, 228, 229, - 230, 231, 232, 233, 234, 235, 236, 237, - 32767, 2087, -494, -8398, 7453, 7453, 243, 244, - -10240,-7658, 247, -15603,-15602,250, 251, 252, - 253, 254, 255, 32767, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, - 268, -2027, -1089, -2027, -2027, -2027, -2027, -2027, - -2027, -772, -2027, 279, 280, 281, 282, 283, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 284, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -1717, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 285, 286, 287, 288, 289, 290, 291, 292, - 6178, 294, 295, -11663,-11663,-7033, 15640, -11653, - 15643, -11653,15646, 15647, 11018, -11654,15640, -11655, - -6928, -11655,-11655,-7025, 15648, -6923, -6922, -6921, - -6920, -6919, 7643, -11636,-6916, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + -1688, -1688, 0, 0, 0, 0, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, -11072,-11072,-11072, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -17220,-12590,10083, - -17210,10086, 5360, 10088, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -4715, 0, -3293, 0, -4717, 0, -4718, 0, + -2949, 0, -4592, 0, -2951, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + -3915, -3915, 32767, 32767, 32767, 32767, 0, 0, + 0, 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, -4703, -4703, -4703, -4703, -4703, -4703, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 0, 0, 0, 0, 0, + 32767, 32767, -3370, 32767, -3371, -3371, -3371, -3371, + -3371, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 337, 32767, 338, 32767, 339, 340, 341, 32767, + 32767, 32767, -3383, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, -3032, 32767, -3033, -3033, -3033, 32767, + 0, 0, -3036, 0, 0, 0, 0, 0, + 0, 0, -3045, 0, -3047, 0, 0, 0, + -1233, 3715, 3511, 3717, 0, 3719, 3720, 3721, + -3058, 0, -3060, 0, -3062, 0, 0, 0, + 0, 0, 0, 358, 358, 358, 358, 358, + 358, 358, 358, 358, 358, 358, 358, 358, + 358, 0, 0, 356, 0, 355, 3402, 3402, + 353, 353, 353, 353, 353, 353, 353, 353, + 353, 353, 0, 352, 0, 351, 3413, 0, + 349, 349, 0, 0, 0, 346, 346, 346, + 346, 346, 346, 346, 346, 346, 346, 346, + 346, 346, 346, 346, 346, 346, 346, 346, + 346, 346, 346, 346, 346, 346, 346, 346, + 346, 346, 346, 346, 346, 346, 346, 346, + 346, 346, 346, 346, 346, 346, 346, 346, + 346, 346, 346, 7422, 7423, 7424, 7425, 7426, + 7427, 7428, 7429, 7430, 7431, 7432, 7433, -2861, + -2861, 7436, 7437, 7438, 7439, 7440, 7441, 7442, + -2709, -2709, 0, 7446, -2711, -2711, -2711, -2711, + -2711, -2711, 3852, 3853, 3854, 465, 465, 465, + 465, 465, 465, -2711, 4384, 4384, -2711, -2711, + -2711, -2711, -2711, -2711, -2711, 5662, 5662, 0, + -2711, -2711, -2711, -2711, 1475, 1475, 1475, 420, + 1475, 1475, 1475, 6392, 6393, 6394, 7628, 2681, + 2886, 2681, 6399, 2681, 2681, 2681, 9461, 1475, + 2887, 1475, 2888, 1475, 1475, 1475, 1475, 2889, + 1475, 1475, 2890, 2891, 2892, 2893, 2402, 1475, + 2894, 2895, 2896, 1475, 2897, 2898, 2899, 1475, + 1475, 1475, 0, 0, 0, 3762, 3763, 0, + 0, 1835, 0, 0, 0, 0, 0, 0, + 0, 0, 2122, 0, 0, 2124, 0, 0, + 0, 5623, 0, 0, 1853, 0, 0, 0, + 2402, 2402, 2402, 2402, 2402, 2402, 2402, 2402, + 2402, 2402, 2402, 2402, 2402, 2402, 2402, 2402, + 2402, 2402, 2402, 2402, 2402, 2402, 2402, 2402, + 2402, 0, 2401, 2401, 2401, 2401, 2401, 2401, + 2401, 427, 428, 429, 430, 2932, 431, 432, + 433, 2936, 434, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 2948, 445, 2775, + 2775, 2775, 2775, 2775, 2775, 2775, 2775, 2775, + 2775, 2775, 2775, 2775, 2775, 2775, 2775, 2775, + 2775, 2775, 2775, 2775, 2444, 460, 461, 0, + 462, 463, 464, 0, 465, 466, 467, 468, + 469, 470, 471, 0, 472, 473, 474, 475, + 476, 477, 0, 0, 0, 0, 478, 479, + 480, 481, 482, 0, 0, -1205, -1204, -1203, + -1202, 483, 484, 485, 486, 487, 488, 489, + 2724, 491, 492, 493, 494, 495, 2825, 2825, + 2825, 2825, 2825, 2825, 2825, 2825, 2825, 2825, + 2825, 2825, 2825, 2825, 2825, 2825, 2825, 2825, + 2825, 515, 516, 517, 9866, 9867, 9868, 9869, + 9870, 523, 524, 3789, 526, 527, 528, 529, + 3790, 5162, 3188, 4819, 0, 3910, 0, 1048, + 1049, 1050, 5434, 5435, 5436, 3791, 5438, 5439, + 5440, 5441, 0, 1676, 1676, 0, 0, 0, + 0, 3443, 2366, 0, 0, 0, 0, 0, + 0, 3451, 3452, 3453, 4260, 4261, 4262, 4263, + 4264, 4265, 4266, 4267, 0, 0, 319, 0, + 0, 0, 2355, 0, 0, 0, 0, 0, + 5938, 5939, 5940, 5941, 5942, 5943, 5944, 3823, + 5946, 5947, 3824, 5949, 5950, 5951, 329, 5953, + 5954, 4102, 4103, 4891, 4892, 3960, 3960, 3960, + 3960, 3960, 3960, 3960, 3960, 3960, 3960, 3960, + 3960, 3960, 3960, 3960, 3960, 3960, 3960, 0, + 3960, 3045, 3960, 3960, 0, 3960, 3960, 3960, + 3960, 3515, 0, 3960, 0, 0, 0, 3960, + 5140, 5956, 5957, 5958, 5959, 5960, 5961, 5962, + 3960, 3960, 3960, 3960, 3960, 3960, 3960, 3960, + 3960, 3960, 3960, 3178, 5963, 5964, 5965, 5966, + 5967, 8081, 6789, 3960, 3960, 3960, 5968, 8091, + 5969, 5970, 5971, 5972, 5973, 5974, 0, 0, + 0, 5981, 5982, 5983, 5984, 5985, 5986, 5987, + 5988, 5989, 5990, 5991, 5992, 5993, 5994, 9171, + 2077, 2078, 2599, 2599, 9174, 9175, 9176, 9177, + 9178, 806, 807, 6470, 9182, 9183, 9184, 9185, + 5000, 5001, 5002, 6058, 5004, 5005, 5006, 90, + 90, 90, -1143, 3805, 3601, 3807, 90, 3809, + 3810, 3811, -2968, 5019, 3608, 5021, 3609, 5023, + 5024, 5025, 5026, 3613, 5028, 5029, 3615, 3615, + 3615, 3615, 4107, 5035, 3617, 3617, 3617, 5039, + 3618, 3618, 3618, 5043, 5044, 5045, 4919, 3277, + 3278, 4921, 3280, 3281, 3282, 3283, 3284, 3285, + 3286, 3287, 3288, 3289, 3290, 3291, 3292, 3293, + 3294, 3295, 3296, 3297, 3298, 3299, 3300, 3301, + 3302, 3303, 3304, 3305, 3306, 3307, 3308, 3309, + 3310, 3311, 3312, 3313, 3314, 3315, 3316, 3317, + 3318, 3319, 3320, 3321, 3322, 3323, 3324, 3325, + 3326, 3327, 3328, 3329, 3330, 3331, 3332, 3333, + 3334, 3335, 3336, 1722, 3338, 32767, 3698, 3699, + 6736, 3701, 3702, 3703, 3704, 3705, 3706, 3707, + 6753, 3709, 6757, 3711, 3712, 3713, 4947, 0, + 205, 0, 3718, 0, 0, 0, 6780, 3723, + 6784, 3725, 6788, 3727, 3728, 3729, 3730, 3731, + 3732, 3375, 3376, 3377, 3378, 3379, 3380, 3381, + 3382, 3383, 3384, 3385, 3386, 3387, 3388, 3747, + 3748, 3393, 3750, 3396, 350, 351, 3401, 3402, + 3403, 3404, 3405, 3406, 3407, 3408, 3409, 3410, + 3764, 3413, 3766, 3416, 355, 3769, 3421, 3422, + 3772, 3773, 3774, 3429, 3430, 3431, 3432, 3433, + 3434, 3435, 3436, 3437, 3438, 3439, 3440, 3441, + 3442, 3443, 3444, 3445, 3446, 3447, 3448, 3449, + 3450, 3451, 3452, 3453, 3454, 3455, 3456, 3457, + 3458, 3459, 3460, 3461, 3462, 3463, 3464, 3465, + 3466, 3467, 3468, 3469, 3470, 3471, 3472, 3473, + 3474, -3601, -3601, -3601, -3601, -3601, -3601, -3601, + -3601, -3601, -3601, -3601, -3601, 6694, 6695, -3601, + -3601, -3601, -3601, -3601, -3601, -3601, 6551, 6552, + 3844, -3601, 6557, 6558, 6559, 6560, 6561, 6562, + 0, 0, 0, 3390, 3391, 3392, 3393, 3394, + 3395, 6572, -522, -521, 0, 0, 6575, 6576, + 6577, 6578, 6579, -1793, -1792, 3871, 6583, 6584, + 6585, 6586, 2401, 2402, 2403, 3459, 2405, 2406, + 2407, -2509, -2509, -2509, -3742, 1206, 1002, 1208, + -2509, 1210, 1211, 1212, -5567, 2420, 1009, 2422, + 1010, 2424, 2425, 2426, 2427, 1014, 2429, 2430, + 1016, 1016, 1016, 1016, 1508, 2436, 1018, 1018, + 1018, 2440, 1019, 1019, 1019, 2444, 2445, 2446, + 3922, 3923, 3924, 163, 163, 3927, 3928, 2094, + 3930, 3931, 3932, 3933, 3934, 3935, 3936, 3937, + 1816, 3939, 3940, 1817, 3942, 3943, 3944, -1678, + 3946, 3947, 2095, 3949, 3950, 3951, 32767, 3952, + 3953, 3954, 3955, 3956, 3957, 3958, 3959, 3960, + 3961, 3962, 3963, 3964, 3965, 3966, 3967, 3968, + 3969, 3131, 3971, 3972, 3973, 3974, 3975, 3976, + 3977, 3978, 3979, 3980, 3981, 3982, 3983, 3984, + 3985, 3986, 3987, 3988, 3989, 3990, 3991, 3992, + 3993, 3994, 3995, 3996, 3997, 3998, 3999, 4000, + 4001, 4002, 4003, 4004, 4005, 4006, 4007, 4008, + 4009, 4010, 4011, 4012, 4013, 4014, 4015, 4016, + 4017, 4018, 4019, 4020, 4021, 4022, 4023, 4024, + 4025, 4026, 4027, 4028, 4029, 4030, 4031, 4032, + 4033, 4034, 4035, 4036, 4037, 4038, 4039, 4040, + 4041, 4042, 4043, 4044, 4045, 4046, 4047, 4048, + 4049, 4050, 4051, 4052, 4053, 4054, 4055, 4056, + 4057, 4058, 4059, 4060, 4061, 4062, 4063, 4064, + 4065, 4066, 4067, 4068, 4069, 4070, 4071, 4072, + 4073, 4074, 4075, 4076, 4077, 4078, 4079, 3132, + 4081, 4082, 4083, 4084, 4085, 4086, 4087, 4088, + 4089, 4090, 4091, 4092, 4093, 4094, 4095, 4096, + 4097, 4098, 4099, 4100, 4101, 4102, 4103, 4104, + 4105, 4106, 4107, 4108, 4109, 4110, 4111, 4112, + 4113, 4114, 4115, 4116, 4117, 4118, 4119, 4120, + 4121, 4122, 4123, 4124, 4125, 4126, 4127, 4128, + 4129, 4130, 4131, 4132, 4133, 4134, 4135, 4136, + 4137, 4138, 4139, 4140, -2901, -2901, -2901, -2901, + -2901, -2901, -2901, -2901, -2901, -2901, -2901, -2901, + -2901, -2901, -2901, -2901, -2901, -2901, -2901, -2901, + -2901, -2901, -2901, -2901, -2901, -2901, -2901, -2901, + -2901, -2901, -2901, -2901, -2901, -2901, -2901, -2901, + 4175, 4176, 4177, 4178, 4179, 4180, 4181, 4182, + 4183, 4184, 4185, 4186, -6108, -6108, 4189, 4190, + 4191, 4192, 4193, 4194, 4195, -5956, -5956, -3247, + 4199, -5958, -5958, -5958, -5958, -5958, -5958, 605, + 606, 607, -2782, -2782, -2782, -2782, -2782, -2782, + -5958, 1137, 1137, 617, 618, -5956, -5956, -5956, + -5956, -5956, 2417, 2417, -3245, -5956, -5956, -5956, + -5956, -1770, -1770, -1770, -2825, -1770, -1770, -1770, + 3147, 3148, 3149, 4383, -564, -359, -564, 3154, + -564, -564, -564, 6216, -1770, -358, -1770, -357, + -1770, -1770, -1770, -1770, -356, -1770, -1770, -355, + -354, -353, -352, -843, -1770, -351, -350, -349, + -1770, -348, -347, -346, -1770, -1770, -1770, -1643, + 0, 0, -1642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -4261, 2507, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -3346, 32767, 32767, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 32767, 32767, 32767, 32767, 0, + 0, 0, 0, 0, 1615, 0, 0, 0, + 0, 0, 2483, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 324, 32767, 325, 32767, 326, 32767, 327, 32767, - 328, 32767, 329, 32767, 330, 0, 0, 0, - 0, 0, 0, 32767, 32767, 223, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 0, 0, 0, 0, 32767, 32767, 32767, 32767, - 32767, 0, 32767, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 6529, - 6530, 6531, 6532, 32767, 6532, 6533, 6534, 0, - 0, 32767, 331, 32767, 332, 333, 334, 335, - 336, 32767, 0, 0, 0, 0, 0, 0, - 337, 0, 338, 0, -2473, -2472, -2471, 0, - 0, 0, -2470, 0, 0, 0, 0, 0, - 0, 0, -4976, 0, -2468, -2467, -2466, 0, - 0, 0, -2465, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 350, 351, 0, - 0, 0, 0, 0, 0, 0, 0, 1869, - 1869, 0, 1870, 1870, 1870, -4015, 1870, 1870, - 13829, 13830, 9201, -13471,13823, -13472,13825, -13473, - -13473,-8843, 13830, -13463,13833, -13463,13836, 13837, - 9208, -13464,0, 0, 0, 6768, 9112, -5449, - 13831, 6773, 9113, 0, 9114, 2458, 5817, 1877, - 0, 1877, 1877, 0, -1508, -1507, -1506, 1877, - 1877, 1877, 0, 1877, 1877, 1877, 0, 1874, - 0, 0, 0, -1504, -1503, 0, -1502, 1875, - 0, 0, 1877, 1877, -1500, 1877, -1499, 0, - 0, 0, 0, 1877, 0, 1877, 0, -4262, - -4262, -4262, 0, 0, 0, 0, 4641, 4642, - 4643, 4644, 4645, 6458, 4647, 4648, 4649, -4275, - 4651, 4652, 3323, 8043, 4655, 4656, 4657, -4282, - 4659, 4660, 4661, 4662, 4663, 4664, 4665, 4666, - 4667, 4668, 4669, 4670, 4671, 4672, 4673, 4674, - -5974, -3392, 4677, 4678, -11338,-4127, -4127, 6358, - 3777, -4127, 11724, 11724, 4514, 4515, -5969, -3387, - 4518, -11332,-11331,-4120, -4120, 6365, 3784, -4120, - 11731, 11731, 4521, 4522, -5962, -3380, 4525, -11325, - -11324,-4113, -4113, 6372, 3791, -4113, -4301, 11737, - 4527, 4528, -5956, -3374, 4531, 4720, -11317,-4106, - -4106, 6379, 3798, -4106, 0, 0, 0, 0, - 426, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3209, 3210, 3211, 3212, 3213, 3214, - 3215, 3216, 3217, 3218, 3219, 6653, 3221, 3222, - 3223, 3224, 3225, 3226, 3227, 3228, 3229, 3230, - 3231, 3232, 3233, 3234, 3235, 3236, 3237, 3238, - 3239, 3240, 3241, 3242, 3243, 3244, 3874, 3246, - 173, 173, 173, 173, 173, 3252, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 12394, - -6885, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, -3484, - -3483, 174, 174, 174, 174, 174, 174, 174, - 174, 174, -3476, 3305, -3474, -3473, -3472, 3309, - 3310, 3311, -3470, 3313, 3314, 3315, 3316, -3467, - 3318, -3466, 3320, -3465, -3464, 3323, -3462, 3325, - -3461, -3460, -3459, 3329, -3458, -3457, -3456, -3455, - -3454, -3453, -3452, 3337, -3451, -3450, -3449, -3448, - 352, -3446, 3344, 3345, 3346, 3347, -3445, -3444, - -3443, -3442, -3441, 3353, 3354, 3355, 3356, 3357, - 3358, 11263, -4587, -4586, -3277, -3276, 13112, -3274, - 3365, -3271, -3270, -3269, -3268, -3267, -11271,-6870, - -3264, -3263, 131, -11272,134, 11564, -15732,-3257, - 3374, 3375, 3376, -9912, -3256, -3255, -3254, -3253, - -3252, -3251, -7651, -11256,-11256,-14649,-3245, -14650, - -26079,3389, 3390, 3391, 3392, 3393, 528, 3394, - 3395, 3396, 3397, 3398, 3399, 3400, 3401, 3402, - 3403, 3404, 3405, 3406, 3407, 3408, 3409, 3410, - 3411, 3412, 3413, 3414, 3415, 3416, 3417, 3418, - 3419, 3420, 3421, 3422, 3423, 3424, 3425, 3426, - 3427, 3428, 3429, 3430, 3431, 3432, 3433, 3434, - 3435, 3436, 3437, 3438, 3439, 3440, 3441, 3442, - 3443, 3444, 3445, 3446, 3447, 3448, 3449, 3450, - 3451, 3452, 32767, 3453, 3454, 3455, 3456, 3457, - 3458, 32767, 3459, 3460, 3461, 3462, 32767, 32767, - 3463, 3464, 3465, 3466, 3467, 3468, 3469, 3470, - 32767, 3471, 3472, 3473, 3474, 3475, 3476, 3477, - 32767, 3478, 3479, 3480, 3481, 3482, 3483, 3484, - 3485, 3486, 3487, 3488, 3489, 3490, 3491, 3492, - 3493, 7157, 7157, 7157, 7157, 7157, 3499, 3500, - 7157, 7157, 7157, 7157, 3505, 32767, 7157, 3507, - 3508, 3509, 32767, 3510, 3511, 3512, 3513, 3514, - 32767, 3515, 32767, 32767, 32767, 3516, 3517, 3518, - 3519, 3520, 3521, 3522, 32767, 3523, 3524, 3525, - 3526, 3527, 3528, 3529, 3530, 3531, 3532, 3533, - 3534, 3535, 3536, 3537, 3538, 3539, 3540, 7340, - 3542, 3543, 3544, 3545, 3546, 3547, 3548, 3549, - 3550, 3551, 3552, 3553, 7477, 7478, 532, 3909, - 18261, 2411, 2412, 3721, 3722, 20110, 3724, 10363, - 3727, 3728, 3729, 3730, 3731, -4273, 128, 3734, - 3735, 7129, -4274, 7132, 18562, -8734, 3741, 3742, - 384, 3744, -2911, 3745, 3746, 3747, 3748, 3749, - 3750, -650, -4255, -4255, -7648, 3756, -7649, -19078, - 8219, -4255, 3764, -3146, 3777, -852, -23524,3770, - -23525,3772, -23526,3774, -18897,3776, -23517,3779, - -947, 3781, 3782, -847, -23519,-947, -947, -947, - -947, -947, -15508,3772, -947, -947, -947, -947, - -7603, -4244, -7603, -947, -7602, -7602, -7602, -947, - -7603, -7603, -3202, 404, 405, 3799, -7604, 3802, - 15232, -12064,411, -7607, -696, -7618, -2988, 19685, - -7608, 19688, -7608, 19691, -7608, 15064, -7608, 19686, - -7609, -2882, -7609, -7609, -2979, 19694, -2877, -2876, - -2875, -2874, -2873, 11689, -7590, -2870, -2869, -2868, - -2867, 3790, 432, 3792, -2863, 3793, 3794, 3795, - -2859, 3798, 3799, -601, -4206, -4206, -7599, 3805, - -7600, -19029,8268, -4206, -4206, -847, -4206, 2450, - -4205, -4205, -4205, -4205, -4205, -4205, 196, 3802, - 3803, 7197, -4206, 7200, 18630, -8666, 3809, -4209, - 2702, -4220, 410, 23083, -4210, 23086, -4210, 23089, - -4210, 18462, -4210, 23084, -4211, 516, -4211, -4211, - 419, 23092, 521, 522, 523, 524, 525, 15087, - -4192, 528, 529, 530, 531, 7188, 3830, 7190, - 535, 7191, 7192, 7193, 539, 7196, 7197, 2797, - -808, -808, -4201, 7203, -4202, -15631,11666, -808, - -808, 2551, -808, 5848, -807, -807, -807, -807, - -807, -807, 3594, 7200, 7201, 10595, -808, 10598, - 22028, -5268, 7207, -811, 6100, -822, 3808, 26481, - -812, 26484, -812, 26487, -812, 21860, -812, 26482, - -813, 3914, -813, -813, 3817, 26490, 3919, 3920, - 3921, 3922, 3923, 18485, -794, 3926, 3927, 3928, - 3929, 10586, 7228, 10588, 3933, 10589, 10590, 10591, - 3937, 10594, 10595, 6195, 2590, 2590, -803, 10601, - -804, -12233,15064, 2590, 10609, 3699, 10622, 5993, - -16679,10615, -16680,10617, -16681,10619, -12052,10621, - -16672,10624, 5898, 10626, 10627, 5998, -16674,5898, - 5898, 5898, 5898, 5898, -8663, 10617, 5898, 5898, - 5898, 5898, 32767, 32767, -760, 5896, -759, -759, - -759, 5896, -760, -760, 3641, 7247, 7248, 10642, - -761, 10645, 22075, -5221, 7254, 7255, 3897, 7257, - 602, 7258, 7259, 7260, 7261, 7262, 7263, 2863, - -742, -742, -4135, 7269, -4136, -15565,11732, -742, - 7277, 367, 7290, 2661, -20011,7283, -20012,7285, - -20013,7287, -15384,7289, -20004,7292, 2566, 7294, - 7295, 2666, -20006,2566, 2566, 2566, 2566, 2566, - -11995,7285, 2566, 2566, 2566, 2566, -4090, -731, - -4090, 2566, -4089, -4089, -4089, 2566, -4090, -4090, - 311, 3917, 3918, 7312, -4091, 7315, 18745, -8551, - 3924, 3925, 567, 2566, 32767, 23198, -4095, 23201, - -4095, 23204, -4095, 18577, -4095, 23199, -4096, 631, - -4096, -4096, 534, 23207, 636, 637, 638, 639, - 640, 15202, -4077, 643, 644, 645, 646, 7303, - 3945, 7305, 650, 7306, 7307, 7308, 654, 7311, - 7312, 2912, -693, -693, -4086, 7318, -4087, -15516, - 11781, -693, -693, 2666, -693, 5963, -692, -692, - -692, -692, -692, -692, 3709, 7315, 7316, 10710, - -693, 10713, 22143, -5153, 7322, -696, 6215, -707, - 3923, 26596, -697, 26599, -697, 26602, -697, 21975, - -697, 26597, -698, 4029, -698, -698, 3932, 26605, - 4034, 4035, 4036, 4037, 4038, 18600, -679, 4041, - 4042, 4043, 4044, 10701, 7343, 10703, 4048, 10704, - 10705, 10706, 4052, 10709, 10710, 6310, 2705, 2705, - -688, 10716, -689, -12118,15179, 2705, 2705, 6064, - 4066, 4067, 4068, 3131, 4070, 4071, 4072, 4073, - 4074, 4075, 2821, 4077, 4078, 4079, 4080, 4081, - 4082, 4083, 4084, 4085, 4086, 4087, 4088, 4089, - 4090, 4091, 4092, 4093, 4094, 4095, 4096, 4097, - 4098, 4099, 4100, 20, 21, 22, 23, 24, - 1794, 1794, 1794, 3556, 4110, 4111, 4112, 4113, - 4114, 4115, 4116, 4117, 538, 1161, 1162, 541, - 4470, 1796, 1796, 6018, 4473, 4474, 4475, 4476, - 4477, 4478, 4479, 4480, 4481, 4482, 4483, 4484, - 4485, 4486, 4140, 4141, 4487, 4143, 4488, 4145, - 4146, 4489, 4490, 4491, 4492, 4493, 4494, 4495, - 4496, 575, 576, 4061, 4497, 4061, 4498, 4061, - 4160, 4499, 4500, 4163, 4164, 4165, 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, 4202, 0, 5914, 0, 0, 629, - 630, 631, 632, 633, 634, 635, 636, 637, - 638, 639, 640, 641, 642, 643, 644, 645, - 646, 647, 648, 649, 650, 651, 652, 653, - -1842, -1842, -1842, -1842, -1842, -1842, -1842, -1842, - -1842, -1842, -1842, -1842, 666, 667, 668, 669, - 670, 671, 672, 673, 674, 675, 676, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, -4470, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 6910, 0, 32767, 32767, 32767, - 32767, -20383,6914, 32767, 32767, 32767, 32767, 32767, - 0, 0, 0, 0, 0, 32767, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 12220, - -7059, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 3133, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 32767, 0, 32767, 32767, 32767, 32767, 0, + 32767, 3134, 0, 0, 0, 0, 32767, 32767, + 0, 0, 0, 32767, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, -7886, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 3135, 32767, 32767, 3136, 32767, 32767, + 32767, 32767, 32767, 32767, 3137, 32767, 32767, 3138, + 32767, 3139, 3140, 3141, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 3132, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 3133, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 32767, 32767, 32767, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -16387,0, 0, 0, 0, - 0, 0, 0, 8005, 3605, 0, 0, -3393, - 8011, -3394, -14823,12474, 0, 0, 3359, 0, - 32767, 0, 0, 0, 0, 0, 0, 4401, - 8007, 0, 11403, 0, 0, 22837, 0, 0, - 0, 0, -10, 4620, 27293, 0, 27296, 0, - 27299, 0, 22672, 0, 0, 0, 4727, 0, - 0, 3135, 32767, 32767, 32767, 32767, 32767, 32767, - 3136, 32767, 32767, 3137, 32767, 3138, 3139, 3140, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 0, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 0, 0, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7986,26 +7998,15 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 32767, 0, 32767, - 0, 32767, 32767, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 32767, 0, 32767, - 0, 32767, 32767, 0, 0, 32767, 32767, 32767, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0 + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767 }; const unsigned char *k = (const unsigned char *) key; size_t keylen = 4; uint32 a = 0; - uint32 b = 3; + uint32 b = 1; while (keylen--) { @@ -8014,12 +8015,12 @@ NFKC_QC_hash_func(const void *key) a = a * 257 + c; b = b * 8191 + c; } - return h[a % 10193] + h[b % 10193]; + return h[a % 10195] + h[b % 10195]; } /* Hash lookup information for NFKC_QC */ static const pg_unicode_norminfo UnicodeNormInfo_NFKC_QC = { UnicodeNormProps_NFKC_QC, NFKC_QC_hash_func, - 5096 + 5097 }; diff --git a/src/include/common/unicode_version.h b/src/include/common/unicode_version.h index 98823db12bd..ffcaff64cb1 100644 --- a/src/include/common/unicode_version.h +++ b/src/include/common/unicode_version.h @@ -11,4 +11,4 @@ *------------------------------------------------------------------------- */ -#define PG_UNICODE_VERSION "16.0" +#define PG_UNICODE_VERSION "17.0" -- 2.53.0 Attachments: [text/plain] 0001-Fix-Python-deprecation-warning.patch (1.0K, ../../[email protected]/2-0001-Fix-Python-deprecation-warning.patch) download | inline diff: From 1c5286f900c0411ca648193d831a81d666bb8421 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 10:24:07 +0100 Subject: [PATCH 1/6] Fix Python deprecation warning Starting with Python 3.14, contrib/unaccent/generate_unaccent_rules.py complains DeprecationWarning: codecs.open() is deprecated. Use open() instead. This makes that change. This works for all Python 3.x versions. --- contrib/unaccent/generate_unaccent_rules.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/unaccent/generate_unaccent_rules.py b/contrib/unaccent/generate_unaccent_rules.py index 40822d0c176..827fa6766df 100644 --- a/contrib/unaccent/generate_unaccent_rules.py +++ b/contrib/unaccent/generate_unaccent_rules.py @@ -236,7 +236,7 @@ def main(args): charactersSet = set() # read file UnicodeData.txt - with codecs.open( + with open( args.unicodeDataFilePath, mode='r', encoding='UTF-8', ) as unicodeDataFile: # read everything we need into memory -- 2.53.0 [text/plain] 0002-doc-Fix-capitalization-of-Unicode.patch (953B, ../../[email protected]/3-0002-doc-Fix-capitalization-of-Unicode.patch) download | inline diff: From 0fd752a1729f727537c97f0ea52cd4ec154b1a38 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 11:32:02 +0100 Subject: [PATCH 2/6] doc: Fix capitalization of Unicode --- doc/src/sgml/targets-meson.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/targets-meson.txt b/doc/src/sgml/targets-meson.txt index 90a8d9b3fff..397c103d72c 100644 --- a/doc/src/sgml/targets-meson.txt +++ b/doc/src/sgml/targets-meson.txt @@ -16,7 +16,7 @@ Code Targets: Developer Targets: reformat-dat-files Rewrite catalog data files into standard format expand-dat-files Expand all data files to include defaults - update-unicode Update unicode data to new version + update-unicode Update Unicode data to new version Documentation Targets: html Build documentation in multi-page HTML format -- 2.53.0 [text/plain] 0003-Implement-unaccent-Unicode-data-update-in-meson.patch (8.3K, ../../[email protected]/4-0003-Implement-unaccent-Unicode-data-update-in-meson.patch) download | inline diff: From ef15b16dcef7a3868fc37744d201bb233f8271bd Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 11:36:27 +0100 Subject: [PATCH 3/6] Implement unaccent Unicode data update in meson The meson/ninja update-unicode target did not cover the required updates in contrib/unaccent/. This is fixed now. --- contrib/unaccent/meson.build | 40 +++++++++++++++++++++++++++++++++- doc/src/sgml/installation.sgml | 2 +- meson.build | 8 ++++++- src/common/unicode/README | 2 +- src/common/unicode/meson.build | 29 ++++++++++++------------ 5 files changed, 63 insertions(+), 18 deletions(-) diff --git a/contrib/unaccent/meson.build b/contrib/unaccent/meson.build index 7f582fc04a7..36decdcfe1f 100644 --- a/contrib/unaccent/meson.build +++ b/contrib/unaccent/meson.build @@ -28,7 +28,6 @@ install_data( install_dir: dir_data / 'tsearch_data' ) -# XXX: Implement downlo tests += { 'name': 'unaccent', 'sd': meson.current_source_dir(), @@ -39,3 +38,42 @@ tests += { ], }, } + + +# Download CLDR files on demand. + +cldr_baseurl = 'https://raw.githubusercontent.com/unicode-org/cldr/release-@0@/common/transforms/@1@' + +if not wget.found() or not cp.found() + subdir_done() +endif + +foreach f : ['Latin-ASCII.xml'] + # XXX .replace requires meson 0.58 + url = cldr_baseurl.format(CLDR_VERSION.replace('.', '-'), f) + target = custom_target(f, + output: f, + command: [wget, wget_flags, url], + build_by_default: false, + ) + unicode_data += {f: target} +endforeach + +unaccent_update_unicode_targets = \ + custom_target('unaccent.rules', + input: [unicode_data['UnicodeData.txt'], unicode_data['Latin-ASCII.xml']], + output: ['unaccent.rules'], + command: [python, files('generate_unaccent_rules.py'), '--unicode-data-file', '@INPUT0@', '--latin-ascii-file', '@INPUT1@'], + build_by_default: false, + capture: true, + ) + +update_unicode_unaccent = custom_target('update-unicode', + output: ['dont-exist'], + input: unaccent_update_unicode_targets, + command: [cp, '@INPUT@', '@SOURCE_ROOT@/contrib/unaccent/'], + build_by_default: false, + build_always_stale: true, +) + +update_unicode_targets += update_unicode_unaccent diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index b345a105674..c6f4b93d547 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -65,7 +65,7 @@ <title>Requirements</title> </para> <para> - The minimum required version of <application>Meson</application> is 0.57.2. + The minimum required version of <application>Meson</application> is 0.58. </para> </listitem> diff --git a/meson.build b/meson.build index 5122706477d..f1bc24615a3 100644 --- a/meson.build +++ b/meson.build @@ -15,7 +15,8 @@ project('postgresql', # RHEL 8 has 0.58. < 0.57 would require various additional # backward-compatibility conditionals. # Meson 0.57.0 and 0.57.1 are buggy, therefore >=0.57.2. - meson_version: '>=0.57.2', + # FIXME: update comment + meson_version: '>=0.58', default_options: [ 'warning_level=1', #-Wall equivalent 'b_pch=false', @@ -3180,6 +3181,7 @@ pl_targets = [] contrib_targets = [] testprep_targets = [] nls_targets = [] +update_unicode_targets = [] # Define the tests to distribute them to the correct test styles later @@ -3953,6 +3955,10 @@ alias_target('testprep', testprep_targets) alias_target('world', all_built, docs) alias_target('install-world', install_quiet, installdocs) +if update_unicode_targets.length() > 0 + alias_target('update-unicode', update_unicode_targets) +endif + run_target('help', command: [ perl, '-ne', 'next if /^#/; print', diff --git a/src/common/unicode/README b/src/common/unicode/README index 4974c3c885d..fdb8b66fa58 100644 --- a/src/common/unicode/README +++ b/src/common/unicode/README @@ -10,7 +10,7 @@ Update Unicode Version ---------------------- Edit src/Makefile.global.in and src/common/unicode/meson.build -to update the UNICODE_VERSION. +to update the UNICODE_VERSION and the CLDR_VERSION. Then, generate the new header files with: diff --git a/src/common/unicode/meson.build b/src/common/unicode/meson.build index f650dd95b5c..94d02f0070d 100644 --- a/src/common/unicode/meson.build +++ b/src/common/unicode/meson.build @@ -1,6 +1,7 @@ # Copyright (c) 2022-2026, PostgreSQL Global Development Group UNICODE_VERSION = '16.0.0' +CLDR_VERSION = '47' unicode_data = {} unicode_baseurl = 'https://www.unicode.org/Public/@0@/ucd/@1@' @@ -22,9 +23,9 @@ foreach f : ['CompositionExclusions.txt', 'CaseFolding.txt', 'DerivedCorePropert endforeach -update_unicode_targets = [] +update_unicode_common_targets = [] -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_case_table.h', input: [unicode_data['CaseFolding.txt'], unicode_data['SpecialCasing.txt'], unicode_data['UnicodeData.txt']], output: ['unicode_case_table.h'], @@ -34,7 +35,7 @@ update_unicode_targets += \ build_by_default: false, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_category_table.h', input: [unicode_data['UnicodeData.txt'], unicode_data['DerivedCoreProperties.txt'], unicode_data['PropList.txt']], output: ['unicode_category_table.h'], @@ -44,7 +45,7 @@ update_unicode_targets += \ build_by_default: false, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_east_asian_fw_table.h', input: [unicode_data['EastAsianWidth.txt']], output: ['unicode_east_asian_fw_table.h'], @@ -53,7 +54,7 @@ update_unicode_targets += \ capture: true, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_nonspacing_table.h', input: [unicode_data['UnicodeData.txt']], output: ['unicode_nonspacing_table.h'], @@ -63,7 +64,7 @@ update_unicode_targets += \ capture: true, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_norm_table.h', input: [unicode_data['UnicodeData.txt'], unicode_data['CompositionExclusions.txt']], output: ['unicode_norm_table.h', 'unicode_norm_hashfunc.h'], @@ -74,7 +75,7 @@ update_unicode_targets += \ build_by_default: false, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_normprops_table.h', input: [unicode_data['DerivedNormalizationProps.txt']], output: ['unicode_normprops_table.h'], @@ -84,7 +85,7 @@ update_unicode_targets += \ capture: true, ) -update_unicode_targets += \ +update_unicode_common_targets += \ custom_target('unicode_version.h', output: ['unicode_version.h'], command: [ @@ -140,7 +141,7 @@ update_unicode_dep = [] if not meson.is_cross_build() update_unicode_dep += custom_target('case_test.run', output: 'case_test.run', - input: update_unicode_targets, + input: update_unicode_common_targets, command: [case_test, UNICODE_VERSION], build_by_default: false, build_always_stale: true, @@ -150,7 +151,7 @@ endif if not meson.is_cross_build() update_unicode_dep += custom_target('category_test.run', output: 'category_test.run', - input: update_unicode_targets, + input: update_unicode_common_targets, command: [category_test, UNICODE_VERSION], build_by_default: false, build_always_stale: true, @@ -160,7 +161,7 @@ endif if not meson.is_cross_build() update_unicode_dep += custom_target('norm_test.run', output: 'norm_test.run', - input: update_unicode_targets, + input: update_unicode_common_targets, command: [norm_test], build_by_default: false, build_always_stale: true, @@ -170,13 +171,13 @@ endif # Use a custom target, as run targets serialize the output, making this harder # to debug, and don't deal well with targets with multiple outputs. -update_unicode = custom_target('update-unicode', +update_unicode_common = custom_target('update-unicode', depends: update_unicode_dep, output: ['dont-exist'], - input: update_unicode_targets, + input: update_unicode_common_targets, command: [cp, '@INPUT@', '@SOURCE_ROOT@/src/include/common/'], build_by_default: false, build_always_stale: true, ) -alias_target('update-unicode', update_unicode) +update_unicode_targets += update_unicode_common -- 2.53.0 [text/plain] 0004-Update-RELEASE_CHANGES.patch (985B, ../../[email protected]/5-0004-Update-RELEASE_CHANGES.patch) download | inline diff: From 20d5a665f72b3ddde8bfdf06b94d218da0dc2d09 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 11:38:16 +0100 Subject: [PATCH 4/6] Update RELEASE_CHANGES The existing instructions did not cover meson. Point to src/common/unicode/README instead, where there is more information. --- src/tools/RELEASE_CHANGES | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/tools/RELEASE_CHANGES b/src/tools/RELEASE_CHANGES index a7c20855d54..f0d005a6141 100644 --- a/src/tools/RELEASE_CHANGES +++ b/src/tools/RELEASE_CHANGES @@ -84,8 +84,7 @@ but there may be reasons to do them at other times as well. * Update config.guess and config.sub (from https://savannah.gnu.org/projects/config) -* Update Unicode data: Edit UNICODE_VERSION and CLDR_VERSION in - src/Makefile.global.in, run make update-unicode, and commit. +* Update Unicode data (see src/common/unicode/README) Starting a New Development Cycle -- 2.53.0 [text/plain] 0005-Update-Unicode-data-to-CLDR-48.1.patch (1.2K, ../../[email protected]/6-0005-Update-Unicode-data-to-CLDR-48.1.patch) download | inline diff: From 868e269b518daf0d3d288e2e379d5fd3ad215f49 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 10:25:48 +0100 Subject: [PATCH 5/6] Update Unicode data to CLDR 48.1 No actual changes result. XXX should change that to CLDR 49 in April --- src/Makefile.global.in | 2 +- src/common/unicode/meson.build | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Makefile.global.in b/src/Makefile.global.in index 947a2d79e29..7d65e428607 100644 --- a/src/Makefile.global.in +++ b/src/Makefile.global.in @@ -379,7 +379,7 @@ DOWNLOAD = wget -O $@ --no-use-server-timestamps UNICODE_VERSION = 16.0.0 # Pick a release from here: <http://cldr.unicode.org/index/downloads> -CLDR_VERSION = 47 +CLDR_VERSION = 48.1 # Tree-wide build support diff --git a/src/common/unicode/meson.build b/src/common/unicode/meson.build index 94d02f0070d..c003fa4219e 100644 --- a/src/common/unicode/meson.build +++ b/src/common/unicode/meson.build @@ -1,7 +1,7 @@ # Copyright (c) 2022-2026, PostgreSQL Global Development Group UNICODE_VERSION = '16.0.0' -CLDR_VERSION = '47' +CLDR_VERSION = '48.1' unicode_data = {} unicode_baseurl = 'https://www.unicode.org/Public/@0@/ucd/@1@' -- 2.53.0 [text/plain] 0006-Update-Unicode-data-to-Unicode-17.0.0.patch (431.1K, ../../[email protected]/7-0006-Update-Unicode-data-to-Unicode-17.0.0.patch) download | inline diff: From dd4b5ced419b319c24fa0928180e54d7317e1690 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <[email protected]> Date: Thu, 26 Feb 2026 11:38:51 +0100 Subject: [PATCH 6/6] Update Unicode data to Unicode 17.0.0 --- contrib/unaccent/unaccent.rules | 1 + src/Makefile.global.in | 2 +- src/common/unicode/meson.build | 2 +- src/include/common/unicode_case_table.h | 1528 ++++--- src/include/common/unicode_category_table.h | 194 +- .../common/unicode_east_asian_fw_table.h | 21 +- src/include/common/unicode_nonspacing_table.h | 9 +- src/include/common/unicode_norm_hashfunc.h | 4039 +++++++++-------- src/include/common/unicode_norm_table.h | 37 +- src/include/common/unicode_normprops_table.h | 1873 ++++---- src/include/common/unicode_version.h | 2 +- 11 files changed, 4034 insertions(+), 3674 deletions(-) diff --git a/contrib/unaccent/unaccent.rules b/contrib/unaccent/unaccent.rules index 35fd246b71f..271c7cdadd9 100644 --- a/contrib/unaccent/unaccent.rules +++ b/contrib/unaccent/unaccent.rules @@ -1565,6 +1565,7 @@ Ꞩ S ꞩ s Ɦ H + S ꟲ C ꟳ F ꟴ Q diff --git a/src/Makefile.global.in b/src/Makefile.global.in index 7d65e428607..b99116a9ef8 100644 --- a/src/Makefile.global.in +++ b/src/Makefile.global.in @@ -376,7 +376,7 @@ DOWNLOAD = wget -O $@ --no-use-server-timestamps # Pick a release from here: <https://www.unicode.org/Public/>. Note # that the most recent release listed there is often a pre-release; # don't pick that one, except for testing. -UNICODE_VERSION = 16.0.0 +UNICODE_VERSION = 17.0.0 # Pick a release from here: <http://cldr.unicode.org/index/downloads> CLDR_VERSION = 48.1 diff --git a/src/common/unicode/meson.build b/src/common/unicode/meson.build index c003fa4219e..685f5a8b4ff 100644 --- a/src/common/unicode/meson.build +++ b/src/common/unicode/meson.build @@ -1,6 +1,6 @@ # Copyright (c) 2022-2026, PostgreSQL Global Development Group -UNICODE_VERSION = '16.0.0' +UNICODE_VERSION = '17.0.0' CLDR_VERSION = '48.1' unicode_data = {} diff --git a/src/include/common/unicode_case_table.h b/src/include/common/unicode_case_table.h index 130e7f38d25..b2274627c4f 100644 --- a/src/include/common/unicode_case_table.h +++ b/src/include/common/unicode_case_table.h @@ -165,7 +165,7 @@ static const pg_special_case special_case[106] = * The entry case_map_lower[case_index(codepoint)] is the mapping for the * given codepoint. */ -static const char32_t case_map_lower[1704] = +static const char32_t case_map_lower[1732] = { 0x000000, /* reserved */ 0x000000, /* U+000000 */ @@ -1546,7 +1546,10 @@ static const char32_t case_map_lower[1704] = 0x00a7c8, /* U+00a7c7 */ 0x00a7ca, /* U+00a7c9 */ 0x00a7cd, /* U+00a7cc */ + 0x00a7cf, /* U+00a7ce */ 0x00a7d1, /* U+00a7d0 */ + 0x00a7d3, /* U+00a7d2 */ + 0x00a7d5, /* U+00a7d4 */ 0x00a7d7, /* U+00a7d6 */ 0x00a7d9, /* U+00a7d8 */ 0x00a7db, /* U+00a7da */ @@ -1837,6 +1840,31 @@ static const char32_t case_map_lower[1704] = 0x016e7d, /* U+016e5d */ 0x016e7e, /* U+016e5e */ 0x016e7f, /* U+016e5f */ + 0x016ebb, /* U+016ea0 */ + 0x016ebc, /* U+016ea1 */ + 0x016ebd, /* U+016ea2 */ + 0x016ebe, /* U+016ea3 */ + 0x016ebf, /* U+016ea4 */ + 0x016ec0, /* U+016ea5 */ + 0x016ec1, /* U+016ea6 */ + 0x016ec2, /* U+016ea7 */ + 0x016ec3, /* U+016ea8 */ + 0x016ec4, /* U+016ea9 */ + 0x016ec5, /* U+016eaa */ + 0x016ec6, /* U+016eab */ + 0x016ec7, /* U+016eac */ + 0x016ec8, /* U+016ead */ + 0x016ec9, /* U+016eae */ + 0x016eca, /* U+016eaf */ + 0x016ecb, /* U+016eb0 */ + 0x016ecc, /* U+016eb1 */ + 0x016ecd, /* U+016eb2 */ + 0x016ece, /* U+016eb3 */ + 0x016ecf, /* U+016eb4 */ + 0x016ed0, /* U+016eb5 */ + 0x016ed1, /* U+016eb6 */ + 0x016ed2, /* U+016eb7 */ + 0x016ed3, /* U+016eb8 */ 0x01e922, /* U+01e900 */ 0x01e923, /* U+01e901 */ 0x01e924, /* U+01e902 */ @@ -1878,7 +1906,7 @@ static const char32_t case_map_lower[1704] = * The entry case_map_title[case_index(codepoint)] is the mapping for the * given codepoint. */ -static const char32_t case_map_title[1704] = +static const char32_t case_map_title[1732] = { 0x000000, /* reserved */ 0x000000, /* U+000000 */ @@ -3259,7 +3287,10 @@ static const char32_t case_map_title[1704] = 0x00a7c7, /* U+00a7c7 */ 0x00a7c9, /* U+00a7c9 */ 0x00a7cc, /* U+00a7cc */ + 0x00a7ce, /* U+00a7ce */ 0x00a7d0, /* U+00a7d0 */ + 0x00a7d2, /* U+00a7d2 */ + 0x00a7d4, /* U+00a7d4 */ 0x00a7d6, /* U+00a7d6 */ 0x00a7d8, /* U+00a7d8 */ 0x00a7da, /* U+00a7da */ @@ -3550,6 +3581,31 @@ static const char32_t case_map_title[1704] = 0x016e5d, /* U+016e5d */ 0x016e5e, /* U+016e5e */ 0x016e5f, /* U+016e5f */ + 0x016ea0, /* U+016ea0 */ + 0x016ea1, /* U+016ea1 */ + 0x016ea2, /* U+016ea2 */ + 0x016ea3, /* U+016ea3 */ + 0x016ea4, /* U+016ea4 */ + 0x016ea5, /* U+016ea5 */ + 0x016ea6, /* U+016ea6 */ + 0x016ea7, /* U+016ea7 */ + 0x016ea8, /* U+016ea8 */ + 0x016ea9, /* U+016ea9 */ + 0x016eaa, /* U+016eaa */ + 0x016eab, /* U+016eab */ + 0x016eac, /* U+016eac */ + 0x016ead, /* U+016ead */ + 0x016eae, /* U+016eae */ + 0x016eaf, /* U+016eaf */ + 0x016eb0, /* U+016eb0 */ + 0x016eb1, /* U+016eb1 */ + 0x016eb2, /* U+016eb2 */ + 0x016eb3, /* U+016eb3 */ + 0x016eb4, /* U+016eb4 */ + 0x016eb5, /* U+016eb5 */ + 0x016eb6, /* U+016eb6 */ + 0x016eb7, /* U+016eb7 */ + 0x016eb8, /* U+016eb8 */ 0x01e900, /* U+01e900 */ 0x01e901, /* U+01e901 */ 0x01e902, /* U+01e902 */ @@ -3591,7 +3647,7 @@ static const char32_t case_map_title[1704] = * The entry case_map_upper[case_index(codepoint)] is the mapping for the * given codepoint. */ -static const char32_t case_map_upper[1704] = +static const char32_t case_map_upper[1732] = { 0x000000, /* reserved */ 0x000000, /* U+000000 */ @@ -4972,7 +5028,10 @@ static const char32_t case_map_upper[1704] = 0x00a7c7, /* U+00a7c7 */ 0x00a7c9, /* U+00a7c9 */ 0x00a7cc, /* U+00a7cc */ + 0x00a7ce, /* U+00a7ce */ 0x00a7d0, /* U+00a7d0 */ + 0x00a7d2, /* U+00a7d2 */ + 0x00a7d4, /* U+00a7d4 */ 0x00a7d6, /* U+00a7d6 */ 0x00a7d8, /* U+00a7d8 */ 0x00a7da, /* U+00a7da */ @@ -5263,6 +5322,31 @@ static const char32_t case_map_upper[1704] = 0x016e5d, /* U+016e5d */ 0x016e5e, /* U+016e5e */ 0x016e5f, /* U+016e5f */ + 0x016ea0, /* U+016ea0 */ + 0x016ea1, /* U+016ea1 */ + 0x016ea2, /* U+016ea2 */ + 0x016ea3, /* U+016ea3 */ + 0x016ea4, /* U+016ea4 */ + 0x016ea5, /* U+016ea5 */ + 0x016ea6, /* U+016ea6 */ + 0x016ea7, /* U+016ea7 */ + 0x016ea8, /* U+016ea8 */ + 0x016ea9, /* U+016ea9 */ + 0x016eaa, /* U+016eaa */ + 0x016eab, /* U+016eab */ + 0x016eac, /* U+016eac */ + 0x016ead, /* U+016ead */ + 0x016eae, /* U+016eae */ + 0x016eaf, /* U+016eaf */ + 0x016eb0, /* U+016eb0 */ + 0x016eb1, /* U+016eb1 */ + 0x016eb2, /* U+016eb2 */ + 0x016eb3, /* U+016eb3 */ + 0x016eb4, /* U+016eb4 */ + 0x016eb5, /* U+016eb5 */ + 0x016eb6, /* U+016eb6 */ + 0x016eb7, /* U+016eb7 */ + 0x016eb8, /* U+016eb8 */ 0x01e900, /* U+01e900 */ 0x01e901, /* U+01e901 */ 0x01e902, /* U+01e902 */ @@ -5304,7 +5388,7 @@ static const char32_t case_map_upper[1704] = * The entry case_map_fold[case_index(codepoint)] is the mapping for the * given codepoint. */ -static const char32_t case_map_fold[1704] = +static const char32_t case_map_fold[1732] = { 0x000000, /* reserved */ 0x000000, /* U+000000 */ @@ -6685,7 +6769,10 @@ static const char32_t case_map_fold[1704] = 0x00a7c8, /* U+00a7c7 */ 0x00a7ca, /* U+00a7c9 */ 0x00a7cd, /* U+00a7cc */ + 0x00a7cf, /* U+00a7ce */ 0x00a7d1, /* U+00a7d0 */ + 0x00a7d3, /* U+00a7d2 */ + 0x00a7d5, /* U+00a7d4 */ 0x00a7d7, /* U+00a7d6 */ 0x00a7d9, /* U+00a7d8 */ 0x00a7db, /* U+00a7da */ @@ -6976,6 +7063,31 @@ static const char32_t case_map_fold[1704] = 0x016e7d, /* U+016e5d */ 0x016e7e, /* U+016e5e */ 0x016e7f, /* U+016e5f */ + 0x016ebb, /* U+016ea0 */ + 0x016ebc, /* U+016ea1 */ + 0x016ebd, /* U+016ea2 */ + 0x016ebe, /* U+016ea3 */ + 0x016ebf, /* U+016ea4 */ + 0x016ec0, /* U+016ea5 */ + 0x016ec1, /* U+016ea6 */ + 0x016ec2, /* U+016ea7 */ + 0x016ec3, /* U+016ea8 */ + 0x016ec4, /* U+016ea9 */ + 0x016ec5, /* U+016eaa */ + 0x016ec6, /* U+016eab */ + 0x016ec7, /* U+016eac */ + 0x016ec8, /* U+016ead */ + 0x016ec9, /* U+016eae */ + 0x016eca, /* U+016eaf */ + 0x016ecb, /* U+016eb0 */ + 0x016ecc, /* U+016eb1 */ + 0x016ecd, /* U+016eb2 */ + 0x016ece, /* U+016eb3 */ + 0x016ecf, /* U+016eb4 */ + 0x016ed0, /* U+016eb5 */ + 0x016ed1, /* U+016eb6 */ + 0x016ed2, /* U+016eb7 */ + 0x016ed3, /* U+016eb8 */ 0x01e922, /* U+01e900 */ 0x01e923, /* U+01e901 */ 0x01e924, /* U+01e902 */ @@ -7017,7 +7129,7 @@ static const char32_t case_map_fold[1704] = * The entry case_map_special[case_index(codepoint)] is the index in * special_case for that codepoint, or 0 if no special case mapping exists. */ -static const uint8 case_map_special[1704] = +static const uint8 case_map_special[1732] = { 0, /* reserved */ 0, /* U+000000 */ @@ -8398,7 +8510,10 @@ static const uint8 case_map_special[1704] = 0, /* U+00a7c7 */ 0, /* U+00a7c9 */ 0, /* U+00a7cc */ + 0, /* U+00a7ce */ 0, /* U+00a7d0 */ + 0, /* U+00a7d2 */ + 0, /* U+00a7d4 */ 0, /* U+00a7d6 */ 0, /* U+00a7d8 */ 0, /* U+00a7da */ @@ -8689,6 +8804,31 @@ static const uint8 case_map_special[1704] = 0, /* U+016e5d */ 0, /* U+016e5e */ 0, /* U+016e5f */ + 0, /* U+016ea0 */ + 0, /* U+016ea1 */ + 0, /* U+016ea2 */ + 0, /* U+016ea3 */ + 0, /* U+016ea4 */ + 0, /* U+016ea5 */ + 0, /* U+016ea6 */ + 0, /* U+016ea7 */ + 0, /* U+016ea8 */ + 0, /* U+016ea9 */ + 0, /* U+016eaa */ + 0, /* U+016eab */ + 0, /* U+016eac */ + 0, /* U+016ead */ + 0, /* U+016eae */ + 0, /* U+016eaf */ + 0, /* U+016eb0 */ + 0, /* U+016eb1 */ + 0, /* U+016eb2 */ + 0, /* U+016eb3 */ + 0, /* U+016eb4 */ + 0, /* U+016eb5 */ + 0, /* U+016eb6 */ + 0, /* U+016eb7 */ + 0, /* U+016eb8 */ 0, /* U+01e900 */ 0, /* U+01e901 */ 0, /* U+01e902 */ @@ -8731,7 +8871,7 @@ static const uint8 case_map_special[1704] = * of the following arrays: case_map_lower, case_map_title, case_map_upper, * case_map_fold. */ -static const uint16 case_map[4778] = +static const uint16 case_map[4862] = { 1, /* U+000000 */ 2, /* U+000001 */ @@ -12376,20 +12516,20 @@ static const uint16 case_map[4778] = 339, /* U+00A7CB */ 1378, /* U+00A7CC */ 1378, /* U+00A7CD */ - 0, /* U+00A7CE */ - 0, /* U+00A7CF */ - 1379, /* U+00A7D0 */ - 1379, /* U+00A7D1 */ - 0, /* U+00A7D2 */ - 0, /* U+00A7D3 */ - 0, /* U+00A7D4 */ - 0, /* U+00A7D5 */ - 1380, /* U+00A7D6 */ - 1380, /* U+00A7D7 */ - 1381, /* U+00A7D8 */ - 1381, /* U+00A7D9 */ - 1382, /* U+00A7DA */ - 1382, /* U+00A7DB */ + 1379, /* U+00A7CE */ + 1379, /* U+00A7CF */ + 1380, /* U+00A7D0 */ + 1380, /* U+00A7D1 */ + 1381, /* U+00A7D2 */ + 1381, /* U+00A7D3 */ + 1382, /* U+00A7D4 */ + 1382, /* U+00A7D5 */ + 1383, /* U+00A7D6 */ + 1383, /* U+00A7D7 */ + 1384, /* U+00A7D8 */ + 1384, /* U+00A7D9 */ + 1385, /* U+00A7DA */ + 1385, /* U+00A7DB */ 247, /* U+00A7DC */ 0, /* U+00A7DD */ 0, /* U+00A7DE */ @@ -12415,8 +12555,8 @@ static const uint16 case_map[4778] = 0, /* U+00A7F2 */ 0, /* U+00A7F3 */ 0, /* U+00A7F4 */ - 1383, /* U+00A7F5 */ - 1383, /* U+00A7F6 */ + 1386, /* U+00A7F5 */ + 1386, /* U+00A7F6 */ 1367, /* U+00AB53 */ 0, /* U+00AB54 */ 0, /* U+00AB55 */ @@ -12526,13 +12666,13 @@ static const uint16 case_map[4778] = 770, /* U+00ABBD */ 771, /* U+00ABBE */ 772, /* U+00ABBF */ - 1384, /* U+00FB00 */ - 1385, /* U+00FB01 */ - 1386, /* U+00FB02 */ - 1387, /* U+00FB03 */ - 1388, /* U+00FB04 */ - 1389, /* U+00FB05 */ - 1390, /* U+00FB06 */ + 1387, /* U+00FB00 */ + 1388, /* U+00FB01 */ + 1389, /* U+00FB02 */ + 1390, /* U+00FB03 */ + 1391, /* U+00FB04 */ + 1392, /* U+00FB05 */ + 1393, /* U+00FB06 */ 0, /* U+00FB07 */ 0, /* U+00FB08 */ 0, /* U+00FB09 */ @@ -12545,149 +12685,149 @@ static const uint16 case_map[4778] = 0, /* U+00FB10 */ 0, /* U+00FB11 */ 0, /* U+00FB12 */ - 1391, /* U+00FB13 */ - 1392, /* U+00FB14 */ - 1393, /* U+00FB15 */ - 1394, /* U+00FB16 */ - 1395, /* U+00FB17 */ - 1396, /* U+00FF21 */ - 1397, /* U+00FF22 */ - 1398, /* U+00FF23 */ - 1399, /* U+00FF24 */ - 1400, /* U+00FF25 */ - 1401, /* U+00FF26 */ - 1402, /* U+00FF27 */ - 1403, /* U+00FF28 */ - 1404, /* U+00FF29 */ - 1405, /* U+00FF2A */ - 1406, /* U+00FF2B */ - 1407, /* U+00FF2C */ - 1408, /* U+00FF2D */ - 1409, /* U+00FF2E */ - 1410, /* U+00FF2F */ - 1411, /* U+00FF30 */ - 1412, /* U+00FF31 */ - 1413, /* U+00FF32 */ - 1414, /* U+00FF33 */ - 1415, /* U+00FF34 */ - 1416, /* U+00FF35 */ - 1417, /* U+00FF36 */ - 1418, /* U+00FF37 */ - 1419, /* U+00FF38 */ - 1420, /* U+00FF39 */ - 1421, /* U+00FF3A */ + 1394, /* U+00FB13 */ + 1395, /* U+00FB14 */ + 1396, /* U+00FB15 */ + 1397, /* U+00FB16 */ + 1398, /* U+00FB17 */ + 1399, /* U+00FF21 */ + 1400, /* U+00FF22 */ + 1401, /* U+00FF23 */ + 1402, /* U+00FF24 */ + 1403, /* U+00FF25 */ + 1404, /* U+00FF26 */ + 1405, /* U+00FF27 */ + 1406, /* U+00FF28 */ + 1407, /* U+00FF29 */ + 1408, /* U+00FF2A */ + 1409, /* U+00FF2B */ + 1410, /* U+00FF2C */ + 1411, /* U+00FF2D */ + 1412, /* U+00FF2E */ + 1413, /* U+00FF2F */ + 1414, /* U+00FF30 */ + 1415, /* U+00FF31 */ + 1416, /* U+00FF32 */ + 1417, /* U+00FF33 */ + 1418, /* U+00FF34 */ + 1419, /* U+00FF35 */ + 1420, /* U+00FF36 */ + 1421, /* U+00FF37 */ + 1422, /* U+00FF38 */ + 1423, /* U+00FF39 */ + 1424, /* U+00FF3A */ 0, /* U+00FF3B */ 0, /* U+00FF3C */ 0, /* U+00FF3D */ 0, /* U+00FF3E */ 0, /* U+00FF3F */ 0, /* U+00FF40 */ - 1396, /* U+00FF41 */ - 1397, /* U+00FF42 */ - 1398, /* U+00FF43 */ - 1399, /* U+00FF44 */ - 1400, /* U+00FF45 */ - 1401, /* U+00FF46 */ - 1402, /* U+00FF47 */ - 1403, /* U+00FF48 */ - 1404, /* U+00FF49 */ - 1405, /* U+00FF4A */ - 1406, /* U+00FF4B */ - 1407, /* U+00FF4C */ - 1408, /* U+00FF4D */ - 1409, /* U+00FF4E */ - 1410, /* U+00FF4F */ - 1411, /* U+00FF50 */ - 1412, /* U+00FF51 */ - 1413, /* U+00FF52 */ - 1414, /* U+00FF53 */ - 1415, /* U+00FF54 */ - 1416, /* U+00FF55 */ - 1417, /* U+00FF56 */ - 1418, /* U+00FF57 */ - 1419, /* U+00FF58 */ - 1420, /* U+00FF59 */ - 1421, /* U+00FF5A */ - 1422, /* U+010400 */ - 1423, /* U+010401 */ - 1424, /* U+010402 */ - 1425, /* U+010403 */ - 1426, /* U+010404 */ - 1427, /* U+010405 */ - 1428, /* U+010406 */ - 1429, /* U+010407 */ - 1430, /* U+010408 */ - 1431, /* U+010409 */ - 1432, /* U+01040A */ - 1433, /* U+01040B */ - 1434, /* U+01040C */ - 1435, /* U+01040D */ - 1436, /* U+01040E */ - 1437, /* U+01040F */ - 1438, /* U+010410 */ - 1439, /* U+010411 */ - 1440, /* U+010412 */ - 1441, /* U+010413 */ - 1442, /* U+010414 */ - 1443, /* U+010415 */ - 1444, /* U+010416 */ - 1445, /* U+010417 */ - 1446, /* U+010418 */ - 1447, /* U+010419 */ - 1448, /* U+01041A */ - 1449, /* U+01041B */ - 1450, /* U+01041C */ - 1451, /* U+01041D */ - 1452, /* U+01041E */ - 1453, /* U+01041F */ - 1454, /* U+010420 */ - 1455, /* U+010421 */ - 1456, /* U+010422 */ - 1457, /* U+010423 */ - 1458, /* U+010424 */ - 1459, /* U+010425 */ - 1460, /* U+010426 */ - 1461, /* U+010427 */ - 1422, /* U+010428 */ - 1423, /* U+010429 */ - 1424, /* U+01042A */ - 1425, /* U+01042B */ - 1426, /* U+01042C */ - 1427, /* U+01042D */ - 1428, /* U+01042E */ - 1429, /* U+01042F */ - 1430, /* U+010430 */ - 1431, /* U+010431 */ - 1432, /* U+010432 */ - 1433, /* U+010433 */ - 1434, /* U+010434 */ - 1435, /* U+010435 */ - 1436, /* U+010436 */ - 1437, /* U+010437 */ - 1438, /* U+010438 */ - 1439, /* U+010439 */ - 1440, /* U+01043A */ - 1441, /* U+01043B */ - 1442, /* U+01043C */ - 1443, /* U+01043D */ - 1444, /* U+01043E */ - 1445, /* U+01043F */ - 1446, /* U+010440 */ - 1447, /* U+010441 */ - 1448, /* U+010442 */ - 1449, /* U+010443 */ - 1450, /* U+010444 */ - 1451, /* U+010445 */ - 1452, /* U+010446 */ - 1453, /* U+010447 */ - 1454, /* U+010448 */ - 1455, /* U+010449 */ - 1456, /* U+01044A */ - 1457, /* U+01044B */ - 1458, /* U+01044C */ - 1459, /* U+01044D */ - 1460, /* U+01044E */ - 1461, /* U+01044F */ + 1399, /* U+00FF41 */ + 1400, /* U+00FF42 */ + 1401, /* U+00FF43 */ + 1402, /* U+00FF44 */ + 1403, /* U+00FF45 */ + 1404, /* U+00FF46 */ + 1405, /* U+00FF47 */ + 1406, /* U+00FF48 */ + 1407, /* U+00FF49 */ + 1408, /* U+00FF4A */ + 1409, /* U+00FF4B */ + 1410, /* U+00FF4C */ + 1411, /* U+00FF4D */ + 1412, /* U+00FF4E */ + 1413, /* U+00FF4F */ + 1414, /* U+00FF50 */ + 1415, /* U+00FF51 */ + 1416, /* U+00FF52 */ + 1417, /* U+00FF53 */ + 1418, /* U+00FF54 */ + 1419, /* U+00FF55 */ + 1420, /* U+00FF56 */ + 1421, /* U+00FF57 */ + 1422, /* U+00FF58 */ + 1423, /* U+00FF59 */ + 1424, /* U+00FF5A */ + 1425, /* U+010400 */ + 1426, /* U+010401 */ + 1427, /* U+010402 */ + 1428, /* U+010403 */ + 1429, /* U+010404 */ + 1430, /* U+010405 */ + 1431, /* U+010406 */ + 1432, /* U+010407 */ + 1433, /* U+010408 */ + 1434, /* U+010409 */ + 1435, /* U+01040A */ + 1436, /* U+01040B */ + 1437, /* U+01040C */ + 1438, /* U+01040D */ + 1439, /* U+01040E */ + 1440, /* U+01040F */ + 1441, /* U+010410 */ + 1442, /* U+010411 */ + 1443, /* U+010412 */ + 1444, /* U+010413 */ + 1445, /* U+010414 */ + 1446, /* U+010415 */ + 1447, /* U+010416 */ + 1448, /* U+010417 */ + 1449, /* U+010418 */ + 1450, /* U+010419 */ + 1451, /* U+01041A */ + 1452, /* U+01041B */ + 1453, /* U+01041C */ + 1454, /* U+01041D */ + 1455, /* U+01041E */ + 1456, /* U+01041F */ + 1457, /* U+010420 */ + 1458, /* U+010421 */ + 1459, /* U+010422 */ + 1460, /* U+010423 */ + 1461, /* U+010424 */ + 1462, /* U+010425 */ + 1463, /* U+010426 */ + 1464, /* U+010427 */ + 1425, /* U+010428 */ + 1426, /* U+010429 */ + 1427, /* U+01042A */ + 1428, /* U+01042B */ + 1429, /* U+01042C */ + 1430, /* U+01042D */ + 1431, /* U+01042E */ + 1432, /* U+01042F */ + 1433, /* U+010430 */ + 1434, /* U+010431 */ + 1435, /* U+010432 */ + 1436, /* U+010433 */ + 1437, /* U+010434 */ + 1438, /* U+010435 */ + 1439, /* U+010436 */ + 1440, /* U+010437 */ + 1441, /* U+010438 */ + 1442, /* U+010439 */ + 1443, /* U+01043A */ + 1444, /* U+01043B */ + 1445, /* U+01043C */ + 1446, /* U+01043D */ + 1447, /* U+01043E */ + 1448, /* U+01043F */ + 1449, /* U+010440 */ + 1450, /* U+010441 */ + 1451, /* U+010442 */ + 1452, /* U+010443 */ + 1453, /* U+010444 */ + 1454, /* U+010445 */ + 1455, /* U+010446 */ + 1456, /* U+010447 */ + 1457, /* U+010448 */ + 1458, /* U+010449 */ + 1459, /* U+01044A */ + 1460, /* U+01044B */ + 1461, /* U+01044C */ + 1462, /* U+01044D */ + 1463, /* U+01044E */ + 1464, /* U+01044F */ 0, /* U+010450 */ 0, /* U+010451 */ 0, /* U+010452 */ @@ -12784,82 +12924,82 @@ static const uint16 case_map[4778] = 0, /* U+0104AD */ 0, /* U+0104AE */ 0, /* U+0104AF */ - 1462, /* U+0104B0 */ - 1463, /* U+0104B1 */ - 1464, /* U+0104B2 */ - 1465, /* U+0104B3 */ - 1466, /* U+0104B4 */ - 1467, /* U+0104B5 */ - 1468, /* U+0104B6 */ - 1469, /* U+0104B7 */ - 1470, /* U+0104B8 */ - 1471, /* U+0104B9 */ - 1472, /* U+0104BA */ - 1473, /* U+0104BB */ - 1474, /* U+0104BC */ - 1475, /* U+0104BD */ - 1476, /* U+0104BE */ - 1477, /* U+0104BF */ - 1478, /* U+0104C0 */ - 1479, /* U+0104C1 */ - 1480, /* U+0104C2 */ - 1481, /* U+0104C3 */ - 1482, /* U+0104C4 */ - 1483, /* U+0104C5 */ - 1484, /* U+0104C6 */ - 1485, /* U+0104C7 */ - 1486, /* U+0104C8 */ - 1487, /* U+0104C9 */ - 1488, /* U+0104CA */ - 1489, /* U+0104CB */ - 1490, /* U+0104CC */ - 1491, /* U+0104CD */ - 1492, /* U+0104CE */ - 1493, /* U+0104CF */ - 1494, /* U+0104D0 */ - 1495, /* U+0104D1 */ - 1496, /* U+0104D2 */ - 1497, /* U+0104D3 */ + 1465, /* U+0104B0 */ + 1466, /* U+0104B1 */ + 1467, /* U+0104B2 */ + 1468, /* U+0104B3 */ + 1469, /* U+0104B4 */ + 1470, /* U+0104B5 */ + 1471, /* U+0104B6 */ + 1472, /* U+0104B7 */ + 1473, /* U+0104B8 */ + 1474, /* U+0104B9 */ + 1475, /* U+0104BA */ + 1476, /* U+0104BB */ + 1477, /* U+0104BC */ + 1478, /* U+0104BD */ + 1479, /* U+0104BE */ + 1480, /* U+0104BF */ + 1481, /* U+0104C0 */ + 1482, /* U+0104C1 */ + 1483, /* U+0104C2 */ + 1484, /* U+0104C3 */ + 1485, /* U+0104C4 */ + 1486, /* U+0104C5 */ + 1487, /* U+0104C6 */ + 1488, /* U+0104C7 */ + 1489, /* U+0104C8 */ + 1490, /* U+0104C9 */ + 1491, /* U+0104CA */ + 1492, /* U+0104CB */ + 1493, /* U+0104CC */ + 1494, /* U+0104CD */ + 1495, /* U+0104CE */ + 1496, /* U+0104CF */ + 1497, /* U+0104D0 */ + 1498, /* U+0104D1 */ + 1499, /* U+0104D2 */ + 1500, /* U+0104D3 */ 0, /* U+0104D4 */ 0, /* U+0104D5 */ 0, /* U+0104D6 */ 0, /* U+0104D7 */ - 1462, /* U+0104D8 */ - 1463, /* U+0104D9 */ - 1464, /* U+0104DA */ - 1465, /* U+0104DB */ - 1466, /* U+0104DC */ - 1467, /* U+0104DD */ - 1468, /* U+0104DE */ - 1469, /* U+0104DF */ - 1470, /* U+0104E0 */ - 1471, /* U+0104E1 */ - 1472, /* U+0104E2 */ - 1473, /* U+0104E3 */ - 1474, /* U+0104E4 */ - 1475, /* U+0104E5 */ - 1476, /* U+0104E6 */ - 1477, /* U+0104E7 */ - 1478, /* U+0104E8 */ - 1479, /* U+0104E9 */ - 1480, /* U+0104EA */ - 1481, /* U+0104EB */ - 1482, /* U+0104EC */ - 1483, /* U+0104ED */ - 1484, /* U+0104EE */ - 1485, /* U+0104EF */ - 1486, /* U+0104F0 */ - 1487, /* U+0104F1 */ - 1488, /* U+0104F2 */ - 1489, /* U+0104F3 */ - 1490, /* U+0104F4 */ - 1491, /* U+0104F5 */ - 1492, /* U+0104F6 */ - 1493, /* U+0104F7 */ - 1494, /* U+0104F8 */ - 1495, /* U+0104F9 */ - 1496, /* U+0104FA */ - 1497, /* U+0104FB */ + 1465, /* U+0104D8 */ + 1466, /* U+0104D9 */ + 1467, /* U+0104DA */ + 1468, /* U+0104DB */ + 1469, /* U+0104DC */ + 1470, /* U+0104DD */ + 1471, /* U+0104DE */ + 1472, /* U+0104DF */ + 1473, /* U+0104E0 */ + 1474, /* U+0104E1 */ + 1475, /* U+0104E2 */ + 1476, /* U+0104E3 */ + 1477, /* U+0104E4 */ + 1478, /* U+0104E5 */ + 1479, /* U+0104E6 */ + 1480, /* U+0104E7 */ + 1481, /* U+0104E8 */ + 1482, /* U+0104E9 */ + 1483, /* U+0104EA */ + 1484, /* U+0104EB */ + 1485, /* U+0104EC */ + 1486, /* U+0104ED */ + 1487, /* U+0104EE */ + 1488, /* U+0104EF */ + 1489, /* U+0104F0 */ + 1490, /* U+0104F1 */ + 1491, /* U+0104F2 */ + 1492, /* U+0104F3 */ + 1493, /* U+0104F4 */ + 1494, /* U+0104F5 */ + 1495, /* U+0104F6 */ + 1496, /* U+0104F7 */ + 1497, /* U+0104F8 */ + 1498, /* U+0104F9 */ + 1499, /* U+0104FA */ + 1500, /* U+0104FB */ 0, /* U+0104FC */ 0, /* U+0104FD */ 0, /* U+0104FE */ @@ -12976,134 +13116,134 @@ static const uint16 case_map[4778] = 0, /* U+01056D */ 0, /* U+01056E */ 0, /* U+01056F */ - 1498, /* U+010570 */ - 1499, /* U+010571 */ - 1500, /* U+010572 */ - 1501, /* U+010573 */ - 1502, /* U+010574 */ - 1503, /* U+010575 */ - 1504, /* U+010576 */ - 1505, /* U+010577 */ - 1506, /* U+010578 */ - 1507, /* U+010579 */ - 1508, /* U+01057A */ + 1501, /* U+010570 */ + 1502, /* U+010571 */ + 1503, /* U+010572 */ + 1504, /* U+010573 */ + 1505, /* U+010574 */ + 1506, /* U+010575 */ + 1507, /* U+010576 */ + 1508, /* U+010577 */ + 1509, /* U+010578 */ + 1510, /* U+010579 */ + 1511, /* U+01057A */ 0, /* U+01057B */ - 1509, /* U+01057C */ - 1510, /* U+01057D */ - 1511, /* U+01057E */ - 1512, /* U+01057F */ - 1513, /* U+010580 */ - 1514, /* U+010581 */ - 1515, /* U+010582 */ - 1516, /* U+010583 */ - 1517, /* U+010584 */ - 1518, /* U+010585 */ - 1519, /* U+010586 */ - 1520, /* U+010587 */ - 1521, /* U+010588 */ - 1522, /* U+010589 */ - 1523, /* U+01058A */ + 1512, /* U+01057C */ + 1513, /* U+01057D */ + 1514, /* U+01057E */ + 1515, /* U+01057F */ + 1516, /* U+010580 */ + 1517, /* U+010581 */ + 1518, /* U+010582 */ + 1519, /* U+010583 */ + 1520, /* U+010584 */ + 1521, /* U+010585 */ + 1522, /* U+010586 */ + 1523, /* U+010587 */ + 1524, /* U+010588 */ + 1525, /* U+010589 */ + 1526, /* U+01058A */ 0, /* U+01058B */ - 1524, /* U+01058C */ - 1525, /* U+01058D */ - 1526, /* U+01058E */ - 1527, /* U+01058F */ - 1528, /* U+010590 */ - 1529, /* U+010591 */ - 1530, /* U+010592 */ + 1527, /* U+01058C */ + 1528, /* U+01058D */ + 1529, /* U+01058E */ + 1530, /* U+01058F */ + 1531, /* U+010590 */ + 1532, /* U+010591 */ + 1533, /* U+010592 */ 0, /* U+010593 */ - 1531, /* U+010594 */ - 1532, /* U+010595 */ + 1534, /* U+010594 */ + 1535, /* U+010595 */ 0, /* U+010596 */ - 1498, /* U+010597 */ - 1499, /* U+010598 */ - 1500, /* U+010599 */ - 1501, /* U+01059A */ - 1502, /* U+01059B */ - 1503, /* U+01059C */ - 1504, /* U+01059D */ - 1505, /* U+01059E */ - 1506, /* U+01059F */ - 1507, /* U+0105A0 */ - 1508, /* U+0105A1 */ + 1501, /* U+010597 */ + 1502, /* U+010598 */ + 1503, /* U+010599 */ + 1504, /* U+01059A */ + 1505, /* U+01059B */ + 1506, /* U+01059C */ + 1507, /* U+01059D */ + 1508, /* U+01059E */ + 1509, /* U+01059F */ + 1510, /* U+0105A0 */ + 1511, /* U+0105A1 */ 0, /* U+0105A2 */ - 1509, /* U+0105A3 */ - 1510, /* U+0105A4 */ - 1511, /* U+0105A5 */ - 1512, /* U+0105A6 */ - 1513, /* U+0105A7 */ - 1514, /* U+0105A8 */ - 1515, /* U+0105A9 */ - 1516, /* U+0105AA */ - 1517, /* U+0105AB */ - 1518, /* U+0105AC */ - 1519, /* U+0105AD */ - 1520, /* U+0105AE */ - 1521, /* U+0105AF */ - 1522, /* U+0105B0 */ - 1523, /* U+0105B1 */ + 1512, /* U+0105A3 */ + 1513, /* U+0105A4 */ + 1514, /* U+0105A5 */ + 1515, /* U+0105A6 */ + 1516, /* U+0105A7 */ + 1517, /* U+0105A8 */ + 1518, /* U+0105A9 */ + 1519, /* U+0105AA */ + 1520, /* U+0105AB */ + 1521, /* U+0105AC */ + 1522, /* U+0105AD */ + 1523, /* U+0105AE */ + 1524, /* U+0105AF */ + 1525, /* U+0105B0 */ + 1526, /* U+0105B1 */ 0, /* U+0105B2 */ - 1524, /* U+0105B3 */ - 1525, /* U+0105B4 */ - 1526, /* U+0105B5 */ - 1527, /* U+0105B6 */ - 1528, /* U+0105B7 */ - 1529, /* U+0105B8 */ - 1530, /* U+0105B9 */ + 1527, /* U+0105B3 */ + 1528, /* U+0105B4 */ + 1529, /* U+0105B5 */ + 1530, /* U+0105B6 */ + 1531, /* U+0105B7 */ + 1532, /* U+0105B8 */ + 1533, /* U+0105B9 */ 0, /* U+0105BA */ - 1531, /* U+0105BB */ - 1532, /* U+0105BC */ - 1533, /* U+010C80 */ - 1534, /* U+010C81 */ - 1535, /* U+010C82 */ - 1536, /* U+010C83 */ - 1537, /* U+010C84 */ - 1538, /* U+010C85 */ - 1539, /* U+010C86 */ - 1540, /* U+010C87 */ - 1541, /* U+010C88 */ - 1542, /* U+010C89 */ - 1543, /* U+010C8A */ - 1544, /* U+010C8B */ - 1545, /* U+010C8C */ - 1546, /* U+010C8D */ - 1547, /* U+010C8E */ - 1548, /* U+010C8F */ - 1549, /* U+010C90 */ - 1550, /* U+010C91 */ - 1551, /* U+010C92 */ - 1552, /* U+010C93 */ - 1553, /* U+010C94 */ - 1554, /* U+010C95 */ - 1555, /* U+010C96 */ - 1556, /* U+010C97 */ - 1557, /* U+010C98 */ - 1558, /* U+010C99 */ - 1559, /* U+010C9A */ - 1560, /* U+010C9B */ - 1561, /* U+010C9C */ - 1562, /* U+010C9D */ - 1563, /* U+010C9E */ - 1564, /* U+010C9F */ - 1565, /* U+010CA0 */ - 1566, /* U+010CA1 */ - 1567, /* U+010CA2 */ - 1568, /* U+010CA3 */ - 1569, /* U+010CA4 */ - 1570, /* U+010CA5 */ - 1571, /* U+010CA6 */ - 1572, /* U+010CA7 */ - 1573, /* U+010CA8 */ - 1574, /* U+010CA9 */ - 1575, /* U+010CAA */ - 1576, /* U+010CAB */ - 1577, /* U+010CAC */ - 1578, /* U+010CAD */ - 1579, /* U+010CAE */ - 1580, /* U+010CAF */ - 1581, /* U+010CB0 */ - 1582, /* U+010CB1 */ - 1583, /* U+010CB2 */ + 1534, /* U+0105BB */ + 1535, /* U+0105BC */ + 1536, /* U+010C80 */ + 1537, /* U+010C81 */ + 1538, /* U+010C82 */ + 1539, /* U+010C83 */ + 1540, /* U+010C84 */ + 1541, /* U+010C85 */ + 1542, /* U+010C86 */ + 1543, /* U+010C87 */ + 1544, /* U+010C88 */ + 1545, /* U+010C89 */ + 1546, /* U+010C8A */ + 1547, /* U+010C8B */ + 1548, /* U+010C8C */ + 1549, /* U+010C8D */ + 1550, /* U+010C8E */ + 1551, /* U+010C8F */ + 1552, /* U+010C90 */ + 1553, /* U+010C91 */ + 1554, /* U+010C92 */ + 1555, /* U+010C93 */ + 1556, /* U+010C94 */ + 1557, /* U+010C95 */ + 1558, /* U+010C96 */ + 1559, /* U+010C97 */ + 1560, /* U+010C98 */ + 1561, /* U+010C99 */ + 1562, /* U+010C9A */ + 1563, /* U+010C9B */ + 1564, /* U+010C9C */ + 1565, /* U+010C9D */ + 1566, /* U+010C9E */ + 1567, /* U+010C9F */ + 1568, /* U+010CA0 */ + 1569, /* U+010CA1 */ + 1570, /* U+010CA2 */ + 1571, /* U+010CA3 */ + 1572, /* U+010CA4 */ + 1573, /* U+010CA5 */ + 1574, /* U+010CA6 */ + 1575, /* U+010CA7 */ + 1576, /* U+010CA8 */ + 1577, /* U+010CA9 */ + 1578, /* U+010CAA */ + 1579, /* U+010CAB */ + 1580, /* U+010CAC */ + 1581, /* U+010CAD */ + 1582, /* U+010CAE */ + 1583, /* U+010CAF */ + 1584, /* U+010CB0 */ + 1585, /* U+010CB1 */ + 1586, /* U+010CB2 */ 0, /* U+010CB3 */ 0, /* U+010CB4 */ 0, /* U+010CB5 */ @@ -13117,57 +13257,57 @@ static const uint16 case_map[4778] = 0, /* U+010CBD */ 0, /* U+010CBE */ 0, /* U+010CBF */ - 1533, /* U+010CC0 */ - 1534, /* U+010CC1 */ - 1535, /* U+010CC2 */ - 1536, /* U+010CC3 */ - 1537, /* U+010CC4 */ - 1538, /* U+010CC5 */ - 1539, /* U+010CC6 */ - 1540, /* U+010CC7 */ - 1541, /* U+010CC8 */ - 1542, /* U+010CC9 */ - 1543, /* U+010CCA */ - 1544, /* U+010CCB */ - 1545, /* U+010CCC */ - 1546, /* U+010CCD */ - 1547, /* U+010CCE */ - 1548, /* U+010CCF */ - 1549, /* U+010CD0 */ - 1550, /* U+010CD1 */ - 1551, /* U+010CD2 */ - 1552, /* U+010CD3 */ - 1553, /* U+010CD4 */ - 1554, /* U+010CD5 */ - 1555, /* U+010CD6 */ - 1556, /* U+010CD7 */ - 1557, /* U+010CD8 */ - 1558, /* U+010CD9 */ - 1559, /* U+010CDA */ - 1560, /* U+010CDB */ - 1561, /* U+010CDC */ - 1562, /* U+010CDD */ - 1563, /* U+010CDE */ - 1564, /* U+010CDF */ - 1565, /* U+010CE0 */ - 1566, /* U+010CE1 */ - 1567, /* U+010CE2 */ - 1568, /* U+010CE3 */ - 1569, /* U+010CE4 */ - 1570, /* U+010CE5 */ - 1571, /* U+010CE6 */ - 1572, /* U+010CE7 */ - 1573, /* U+010CE8 */ - 1574, /* U+010CE9 */ - 1575, /* U+010CEA */ - 1576, /* U+010CEB */ - 1577, /* U+010CEC */ - 1578, /* U+010CED */ - 1579, /* U+010CEE */ - 1580, /* U+010CEF */ - 1581, /* U+010CF0 */ - 1582, /* U+010CF1 */ - 1583, /* U+010CF2 */ + 1536, /* U+010CC0 */ + 1537, /* U+010CC1 */ + 1538, /* U+010CC2 */ + 1539, /* U+010CC3 */ + 1540, /* U+010CC4 */ + 1541, /* U+010CC5 */ + 1542, /* U+010CC6 */ + 1543, /* U+010CC7 */ + 1544, /* U+010CC8 */ + 1545, /* U+010CC9 */ + 1546, /* U+010CCA */ + 1547, /* U+010CCB */ + 1548, /* U+010CCC */ + 1549, /* U+010CCD */ + 1550, /* U+010CCE */ + 1551, /* U+010CCF */ + 1552, /* U+010CD0 */ + 1553, /* U+010CD1 */ + 1554, /* U+010CD2 */ + 1555, /* U+010CD3 */ + 1556, /* U+010CD4 */ + 1557, /* U+010CD5 */ + 1558, /* U+010CD6 */ + 1559, /* U+010CD7 */ + 1560, /* U+010CD8 */ + 1561, /* U+010CD9 */ + 1562, /* U+010CDA */ + 1563, /* U+010CDB */ + 1564, /* U+010CDC */ + 1565, /* U+010CDD */ + 1566, /* U+010CDE */ + 1567, /* U+010CDF */ + 1568, /* U+010CE0 */ + 1569, /* U+010CE1 */ + 1570, /* U+010CE2 */ + 1571, /* U+010CE3 */ + 1572, /* U+010CE4 */ + 1573, /* U+010CE5 */ + 1574, /* U+010CE6 */ + 1575, /* U+010CE7 */ + 1576, /* U+010CE8 */ + 1577, /* U+010CE9 */ + 1578, /* U+010CEA */ + 1579, /* U+010CEB */ + 1580, /* U+010CEC */ + 1581, /* U+010CED */ + 1582, /* U+010CEE */ + 1583, /* U+010CEF */ + 1584, /* U+010CF0 */ + 1585, /* U+010CF1 */ + 1586, /* U+010CF2 */ 0, /* U+010CF3 */ 0, /* U+010CF4 */ 0, /* U+010CF5 */ @@ -13261,28 +13401,28 @@ static const uint16 case_map[4778] = 0, /* U+010D4D */ 0, /* U+010D4E */ 0, /* U+010D4F */ - 1584, /* U+010D50 */ - 1585, /* U+010D51 */ - 1586, /* U+010D52 */ - 1587, /* U+010D53 */ - 1588, /* U+010D54 */ - 1589, /* U+010D55 */ - 1590, /* U+010D56 */ - 1591, /* U+010D57 */ - 1592, /* U+010D58 */ - 1593, /* U+010D59 */ - 1594, /* U+010D5A */ - 1595, /* U+010D5B */ - 1596, /* U+010D5C */ - 1597, /* U+010D5D */ - 1598, /* U+010D5E */ - 1599, /* U+010D5F */ - 1600, /* U+010D60 */ - 1601, /* U+010D61 */ - 1602, /* U+010D62 */ - 1603, /* U+010D63 */ - 1604, /* U+010D64 */ - 1605, /* U+010D65 */ + 1587, /* U+010D50 */ + 1588, /* U+010D51 */ + 1589, /* U+010D52 */ + 1590, /* U+010D53 */ + 1591, /* U+010D54 */ + 1592, /* U+010D55 */ + 1593, /* U+010D56 */ + 1594, /* U+010D57 */ + 1595, /* U+010D58 */ + 1596, /* U+010D59 */ + 1597, /* U+010D5A */ + 1598, /* U+010D5B */ + 1599, /* U+010D5C */ + 1600, /* U+010D5D */ + 1601, /* U+010D5E */ + 1602, /* U+010D5F */ + 1603, /* U+010D60 */ + 1604, /* U+010D61 */ + 1605, /* U+010D62 */ + 1606, /* U+010D63 */ + 1607, /* U+010D64 */ + 1608, /* U+010D65 */ 0, /* U+010D66 */ 0, /* U+010D67 */ 0, /* U+010D68 */ @@ -13293,224 +13433,308 @@ static const uint16 case_map[4778] = 0, /* U+010D6D */ 0, /* U+010D6E */ 0, /* U+010D6F */ - 1584, /* U+010D70 */ - 1585, /* U+010D71 */ - 1586, /* U+010D72 */ - 1587, /* U+010D73 */ - 1588, /* U+010D74 */ - 1589, /* U+010D75 */ - 1590, /* U+010D76 */ - 1591, /* U+010D77 */ - 1592, /* U+010D78 */ - 1593, /* U+010D79 */ - 1594, /* U+010D7A */ - 1595, /* U+010D7B */ - 1596, /* U+010D7C */ - 1597, /* U+010D7D */ - 1598, /* U+010D7E */ - 1599, /* U+010D7F */ - 1600, /* U+010D80 */ - 1601, /* U+010D81 */ - 1602, /* U+010D82 */ - 1603, /* U+010D83 */ - 1604, /* U+010D84 */ - 1605, /* U+010D85 */ - 1606, /* U+0118A0 */ - 1607, /* U+0118A1 */ - 1608, /* U+0118A2 */ - 1609, /* U+0118A3 */ - 1610, /* U+0118A4 */ - 1611, /* U+0118A5 */ - 1612, /* U+0118A6 */ - 1613, /* U+0118A7 */ - 1614, /* U+0118A8 */ - 1615, /* U+0118A9 */ - 1616, /* U+0118AA */ - 1617, /* U+0118AB */ - 1618, /* U+0118AC */ - 1619, /* U+0118AD */ - 1620, /* U+0118AE */ - 1621, /* U+0118AF */ - 1622, /* U+0118B0 */ - 1623, /* U+0118B1 */ - 1624, /* U+0118B2 */ - 1625, /* U+0118B3 */ - 1626, /* U+0118B4 */ - 1627, /* U+0118B5 */ - 1628, /* U+0118B6 */ - 1629, /* U+0118B7 */ - 1630, /* U+0118B8 */ - 1631, /* U+0118B9 */ - 1632, /* U+0118BA */ - 1633, /* U+0118BB */ - 1634, /* U+0118BC */ - 1635, /* U+0118BD */ - 1636, /* U+0118BE */ - 1637, /* U+0118BF */ - 1606, /* U+0118C0 */ - 1607, /* U+0118C1 */ - 1608, /* U+0118C2 */ - 1609, /* U+0118C3 */ - 1610, /* U+0118C4 */ - 1611, /* U+0118C5 */ - 1612, /* U+0118C6 */ - 1613, /* U+0118C7 */ - 1614, /* U+0118C8 */ - 1615, /* U+0118C9 */ - 1616, /* U+0118CA */ - 1617, /* U+0118CB */ - 1618, /* U+0118CC */ - 1619, /* U+0118CD */ - 1620, /* U+0118CE */ - 1621, /* U+0118CF */ - 1622, /* U+0118D0 */ - 1623, /* U+0118D1 */ - 1624, /* U+0118D2 */ - 1625, /* U+0118D3 */ - 1626, /* U+0118D4 */ - 1627, /* U+0118D5 */ - 1628, /* U+0118D6 */ - 1629, /* U+0118D7 */ - 1630, /* U+0118D8 */ - 1631, /* U+0118D9 */ - 1632, /* U+0118DA */ - 1633, /* U+0118DB */ - 1634, /* U+0118DC */ - 1635, /* U+0118DD */ - 1636, /* U+0118DE */ - 1637, /* U+0118DF */ - 1638, /* U+016E40 */ - 1639, /* U+016E41 */ - 1640, /* U+016E42 */ - 1641, /* U+016E43 */ - 1642, /* U+016E44 */ - 1643, /* U+016E45 */ - 1644, /* U+016E46 */ - 1645, /* U+016E47 */ - 1646, /* U+016E48 */ - 1647, /* U+016E49 */ - 1648, /* U+016E4A */ - 1649, /* U+016E4B */ - 1650, /* U+016E4C */ - 1651, /* U+016E4D */ - 1652, /* U+016E4E */ - 1653, /* U+016E4F */ - 1654, /* U+016E50 */ - 1655, /* U+016E51 */ - 1656, /* U+016E52 */ - 1657, /* U+016E53 */ - 1658, /* U+016E54 */ - 1659, /* U+016E55 */ - 1660, /* U+016E56 */ - 1661, /* U+016E57 */ - 1662, /* U+016E58 */ - 1663, /* U+016E59 */ - 1664, /* U+016E5A */ - 1665, /* U+016E5B */ - 1666, /* U+016E5C */ - 1667, /* U+016E5D */ - 1668, /* U+016E5E */ - 1669, /* U+016E5F */ - 1638, /* U+016E60 */ - 1639, /* U+016E61 */ - 1640, /* U+016E62 */ - 1641, /* U+016E63 */ - 1642, /* U+016E64 */ - 1643, /* U+016E65 */ - 1644, /* U+016E66 */ - 1645, /* U+016E67 */ - 1646, /* U+016E68 */ - 1647, /* U+016E69 */ - 1648, /* U+016E6A */ - 1649, /* U+016E6B */ - 1650, /* U+016E6C */ - 1651, /* U+016E6D */ - 1652, /* U+016E6E */ - 1653, /* U+016E6F */ - 1654, /* U+016E70 */ - 1655, /* U+016E71 */ - 1656, /* U+016E72 */ - 1657, /* U+016E73 */ - 1658, /* U+016E74 */ - 1659, /* U+016E75 */ - 1660, /* U+016E76 */ - 1661, /* U+016E77 */ - 1662, /* U+016E78 */ - 1663, /* U+016E79 */ - 1664, /* U+016E7A */ - 1665, /* U+016E7B */ - 1666, /* U+016E7C */ - 1667, /* U+016E7D */ - 1668, /* U+016E7E */ - 1669, /* U+016E7F */ - 1670, /* U+01E900 */ - 1671, /* U+01E901 */ - 1672, /* U+01E902 */ - 1673, /* U+01E903 */ - 1674, /* U+01E904 */ - 1675, /* U+01E905 */ - 1676, /* U+01E906 */ - 1677, /* U+01E907 */ - 1678, /* U+01E908 */ - 1679, /* U+01E909 */ - 1680, /* U+01E90A */ - 1681, /* U+01E90B */ - 1682, /* U+01E90C */ - 1683, /* U+01E90D */ - 1684, /* U+01E90E */ - 1685, /* U+01E90F */ - 1686, /* U+01E910 */ - 1687, /* U+01E911 */ - 1688, /* U+01E912 */ - 1689, /* U+01E913 */ - 1690, /* U+01E914 */ - 1691, /* U+01E915 */ - 1692, /* U+01E916 */ - 1693, /* U+01E917 */ - 1694, /* U+01E918 */ - 1695, /* U+01E919 */ - 1696, /* U+01E91A */ - 1697, /* U+01E91B */ - 1698, /* U+01E91C */ - 1699, /* U+01E91D */ - 1700, /* U+01E91E */ - 1701, /* U+01E91F */ - 1702, /* U+01E920 */ - 1703, /* U+01E921 */ - 1670, /* U+01E922 */ - 1671, /* U+01E923 */ - 1672, /* U+01E924 */ - 1673, /* U+01E925 */ - 1674, /* U+01E926 */ - 1675, /* U+01E927 */ - 1676, /* U+01E928 */ - 1677, /* U+01E929 */ - 1678, /* U+01E92A */ - 1679, /* U+01E92B */ - 1680, /* U+01E92C */ - 1681, /* U+01E92D */ - 1682, /* U+01E92E */ - 1683, /* U+01E92F */ - 1684, /* U+01E930 */ - 1685, /* U+01E931 */ - 1686, /* U+01E932 */ - 1687, /* U+01E933 */ - 1688, /* U+01E934 */ - 1689, /* U+01E935 */ - 1690, /* U+01E936 */ - 1691, /* U+01E937 */ - 1692, /* U+01E938 */ - 1693, /* U+01E939 */ - 1694, /* U+01E93A */ - 1695, /* U+01E93B */ - 1696, /* U+01E93C */ - 1697, /* U+01E93D */ - 1698, /* U+01E93E */ - 1699, /* U+01E93F */ - 1700, /* U+01E940 */ - 1701, /* U+01E941 */ - 1702, /* U+01E942 */ - 1703, /* U+01E943 */ + 1587, /* U+010D70 */ + 1588, /* U+010D71 */ + 1589, /* U+010D72 */ + 1590, /* U+010D73 */ + 1591, /* U+010D74 */ + 1592, /* U+010D75 */ + 1593, /* U+010D76 */ + 1594, /* U+010D77 */ + 1595, /* U+010D78 */ + 1596, /* U+010D79 */ + 1597, /* U+010D7A */ + 1598, /* U+010D7B */ + 1599, /* U+010D7C */ + 1600, /* U+010D7D */ + 1601, /* U+010D7E */ + 1602, /* U+010D7F */ + 1603, /* U+010D80 */ + 1604, /* U+010D81 */ + 1605, /* U+010D82 */ + 1606, /* U+010D83 */ + 1607, /* U+010D84 */ + 1608, /* U+010D85 */ + 1609, /* U+0118A0 */ + 1610, /* U+0118A1 */ + 1611, /* U+0118A2 */ + 1612, /* U+0118A3 */ + 1613, /* U+0118A4 */ + 1614, /* U+0118A5 */ + 1615, /* U+0118A6 */ + 1616, /* U+0118A7 */ + 1617, /* U+0118A8 */ + 1618, /* U+0118A9 */ + 1619, /* U+0118AA */ + 1620, /* U+0118AB */ + 1621, /* U+0118AC */ + 1622, /* U+0118AD */ + 1623, /* U+0118AE */ + 1624, /* U+0118AF */ + 1625, /* U+0118B0 */ + 1626, /* U+0118B1 */ + 1627, /* U+0118B2 */ + 1628, /* U+0118B3 */ + 1629, /* U+0118B4 */ + 1630, /* U+0118B5 */ + 1631, /* U+0118B6 */ + 1632, /* U+0118B7 */ + 1633, /* U+0118B8 */ + 1634, /* U+0118B9 */ + 1635, /* U+0118BA */ + 1636, /* U+0118BB */ + 1637, /* U+0118BC */ + 1638, /* U+0118BD */ + 1639, /* U+0118BE */ + 1640, /* U+0118BF */ + 1609, /* U+0118C0 */ + 1610, /* U+0118C1 */ + 1611, /* U+0118C2 */ + 1612, /* U+0118C3 */ + 1613, /* U+0118C4 */ + 1614, /* U+0118C5 */ + 1615, /* U+0118C6 */ + 1616, /* U+0118C7 */ + 1617, /* U+0118C8 */ + 1618, /* U+0118C9 */ + 1619, /* U+0118CA */ + 1620, /* U+0118CB */ + 1621, /* U+0118CC */ + 1622, /* U+0118CD */ + 1623, /* U+0118CE */ + 1624, /* U+0118CF */ + 1625, /* U+0118D0 */ + 1626, /* U+0118D1 */ + 1627, /* U+0118D2 */ + 1628, /* U+0118D3 */ + 1629, /* U+0118D4 */ + 1630, /* U+0118D5 */ + 1631, /* U+0118D6 */ + 1632, /* U+0118D7 */ + 1633, /* U+0118D8 */ + 1634, /* U+0118D9 */ + 1635, /* U+0118DA */ + 1636, /* U+0118DB */ + 1637, /* U+0118DC */ + 1638, /* U+0118DD */ + 1639, /* U+0118DE */ + 1640, /* U+0118DF */ + 1641, /* U+016E40 */ + 1642, /* U+016E41 */ + 1643, /* U+016E42 */ + 1644, /* U+016E43 */ + 1645, /* U+016E44 */ + 1646, /* U+016E45 */ + 1647, /* U+016E46 */ + 1648, /* U+016E47 */ + 1649, /* U+016E48 */ + 1650, /* U+016E49 */ + 1651, /* U+016E4A */ + 1652, /* U+016E4B */ + 1653, /* U+016E4C */ + 1654, /* U+016E4D */ + 1655, /* U+016E4E */ + 1656, /* U+016E4F */ + 1657, /* U+016E50 */ + 1658, /* U+016E51 */ + 1659, /* U+016E52 */ + 1660, /* U+016E53 */ + 1661, /* U+016E54 */ + 1662, /* U+016E55 */ + 1663, /* U+016E56 */ + 1664, /* U+016E57 */ + 1665, /* U+016E58 */ + 1666, /* U+016E59 */ + 1667, /* U+016E5A */ + 1668, /* U+016E5B */ + 1669, /* U+016E5C */ + 1670, /* U+016E5D */ + 1671, /* U+016E5E */ + 1672, /* U+016E5F */ + 1641, /* U+016E60 */ + 1642, /* U+016E61 */ + 1643, /* U+016E62 */ + 1644, /* U+016E63 */ + 1645, /* U+016E64 */ + 1646, /* U+016E65 */ + 1647, /* U+016E66 */ + 1648, /* U+016E67 */ + 1649, /* U+016E68 */ + 1650, /* U+016E69 */ + 1651, /* U+016E6A */ + 1652, /* U+016E6B */ + 1653, /* U+016E6C */ + 1654, /* U+016E6D */ + 1655, /* U+016E6E */ + 1656, /* U+016E6F */ + 1657, /* U+016E70 */ + 1658, /* U+016E71 */ + 1659, /* U+016E72 */ + 1660, /* U+016E73 */ + 1661, /* U+016E74 */ + 1662, /* U+016E75 */ + 1663, /* U+016E76 */ + 1664, /* U+016E77 */ + 1665, /* U+016E78 */ + 1666, /* U+016E79 */ + 1667, /* U+016E7A */ + 1668, /* U+016E7B */ + 1669, /* U+016E7C */ + 1670, /* U+016E7D */ + 1671, /* U+016E7E */ + 1672, /* U+016E7F */ + 0, /* U+016E80 */ + 0, /* U+016E81 */ + 0, /* U+016E82 */ + 0, /* U+016E83 */ + 0, /* U+016E84 */ + 0, /* U+016E85 */ + 0, /* U+016E86 */ + 0, /* U+016E87 */ + 0, /* U+016E88 */ + 0, /* U+016E89 */ + 0, /* U+016E8A */ + 0, /* U+016E8B */ + 0, /* U+016E8C */ + 0, /* U+016E8D */ + 0, /* U+016E8E */ + 0, /* U+016E8F */ + 0, /* U+016E90 */ + 0, /* U+016E91 */ + 0, /* U+016E92 */ + 0, /* U+016E93 */ + 0, /* U+016E94 */ + 0, /* U+016E95 */ + 0, /* U+016E96 */ + 0, /* U+016E97 */ + 0, /* U+016E98 */ + 0, /* U+016E99 */ + 0, /* U+016E9A */ + 0, /* U+016E9B */ + 0, /* U+016E9C */ + 0, /* U+016E9D */ + 0, /* U+016E9E */ + 0, /* U+016E9F */ + 1673, /* U+016EA0 */ + 1674, /* U+016EA1 */ + 1675, /* U+016EA2 */ + 1676, /* U+016EA3 */ + 1677, /* U+016EA4 */ + 1678, /* U+016EA5 */ + 1679, /* U+016EA6 */ + 1680, /* U+016EA7 */ + 1681, /* U+016EA8 */ + 1682, /* U+016EA9 */ + 1683, /* U+016EAA */ + 1684, /* U+016EAB */ + 1685, /* U+016EAC */ + 1686, /* U+016EAD */ + 1687, /* U+016EAE */ + 1688, /* U+016EAF */ + 1689, /* U+016EB0 */ + 1690, /* U+016EB1 */ + 1691, /* U+016EB2 */ + 1692, /* U+016EB3 */ + 1693, /* U+016EB4 */ + 1694, /* U+016EB5 */ + 1695, /* U+016EB6 */ + 1696, /* U+016EB7 */ + 1697, /* U+016EB8 */ + 0, /* U+016EB9 */ + 0, /* U+016EBA */ + 1673, /* U+016EBB */ + 1674, /* U+016EBC */ + 1675, /* U+016EBD */ + 1676, /* U+016EBE */ + 1677, /* U+016EBF */ + 1678, /* U+016EC0 */ + 1679, /* U+016EC1 */ + 1680, /* U+016EC2 */ + 1681, /* U+016EC3 */ + 1682, /* U+016EC4 */ + 1683, /* U+016EC5 */ + 1684, /* U+016EC6 */ + 1685, /* U+016EC7 */ + 1686, /* U+016EC8 */ + 1687, /* U+016EC9 */ + 1688, /* U+016ECA */ + 1689, /* U+016ECB */ + 1690, /* U+016ECC */ + 1691, /* U+016ECD */ + 1692, /* U+016ECE */ + 1693, /* U+016ECF */ + 1694, /* U+016ED0 */ + 1695, /* U+016ED1 */ + 1696, /* U+016ED2 */ + 1697, /* U+016ED3 */ + 1698, /* U+01E900 */ + 1699, /* U+01E901 */ + 1700, /* U+01E902 */ + 1701, /* U+01E903 */ + 1702, /* U+01E904 */ + 1703, /* U+01E905 */ + 1704, /* U+01E906 */ + 1705, /* U+01E907 */ + 1706, /* U+01E908 */ + 1707, /* U+01E909 */ + 1708, /* U+01E90A */ + 1709, /* U+01E90B */ + 1710, /* U+01E90C */ + 1711, /* U+01E90D */ + 1712, /* U+01E90E */ + 1713, /* U+01E90F */ + 1714, /* U+01E910 */ + 1715, /* U+01E911 */ + 1716, /* U+01E912 */ + 1717, /* U+01E913 */ + 1718, /* U+01E914 */ + 1719, /* U+01E915 */ + 1720, /* U+01E916 */ + 1721, /* U+01E917 */ + 1722, /* U+01E918 */ + 1723, /* U+01E919 */ + 1724, /* U+01E91A */ + 1725, /* U+01E91B */ + 1726, /* U+01E91C */ + 1727, /* U+01E91D */ + 1728, /* U+01E91E */ + 1729, /* U+01E91F */ + 1730, /* U+01E920 */ + 1731, /* U+01E921 */ + 1698, /* U+01E922 */ + 1699, /* U+01E923 */ + 1700, /* U+01E924 */ + 1701, /* U+01E925 */ + 1702, /* U+01E926 */ + 1703, /* U+01E927 */ + 1704, /* U+01E928 */ + 1705, /* U+01E929 */ + 1706, /* U+01E92A */ + 1707, /* U+01E92B */ + 1708, /* U+01E92C */ + 1709, /* U+01E92D */ + 1710, /* U+01E92E */ + 1711, /* U+01E92F */ + 1712, /* U+01E930 */ + 1713, /* U+01E931 */ + 1714, /* U+01E932 */ + 1715, /* U+01E933 */ + 1716, /* U+01E934 */ + 1717, /* U+01E935 */ + 1718, /* U+01E936 */ + 1719, /* U+01E937 */ + 1720, /* U+01E938 */ + 1721, /* U+01E939 */ + 1722, /* U+01E93A */ + 1723, /* U+01E93B */ + 1724, /* U+01E93C */ + 1725, /* U+01E93D */ + 1726, /* U+01E93E */ + 1727, /* U+01E93F */ + 1728, /* U+01E940 */ + 1729, /* U+01E941 */ + 1730, /* U+01E942 */ + 1731, /* U+01E943 */ }; @@ -13604,7 +13828,7 @@ case_index(char32_t cp) } else if (cp >= 0x118A0) { - if (cp < 0x16E80) + if (cp < 0x16ED4) { if (cp < 0x118E0) { @@ -13619,7 +13843,7 @@ case_index(char32_t cp) { if (cp < 0x1E944) { - return case_map[cp - 0x1E900 + 4710]; + return case_map[cp - 0x1E900 + 4794]; } } } diff --git a/src/include/common/unicode_category_table.h b/src/include/common/unicode_category_table.h index ad61a731720..b45df500d08 100644 --- a/src/include/common/unicode_category_table.h +++ b/src/include/common/unicode_category_table.h @@ -696,7 +696,7 @@ static const pg_unicode_properties unicode_opt_ascii[128] = }; /* table of Unicode codepoint ranges and their categories */ -static const pg_category_range unicode_categories[3368] = +static const pg_category_range unicode_categories[3409] = { {0x000000, 0x00001f, PG_U_CONTROL}, {0x000020, 0x000020, PG_U_SPACE_SEPARATOR}, @@ -1046,8 +1046,8 @@ static const pg_category_range unicode_categories[3368] = {0x00024d, 0x00024d, PG_U_LOWERCASE_LETTER}, {0x00024e, 0x00024e, PG_U_UPPERCASE_LETTER}, {0x00024f, 0x000293, PG_U_LOWERCASE_LETTER}, - {0x000294, 0x000294, PG_U_OTHER_LETTER}, - {0x000295, 0x0002af, PG_U_LOWERCASE_LETTER}, + {0x000294, 0x000295, PG_U_OTHER_LETTER}, + {0x000296, 0x0002af, PG_U_LOWERCASE_LETTER}, {0x0002b0, 0x0002c1, PG_U_MODIFIER_LETTER}, {0x0002c2, 0x0002c5, PG_U_MODIFIER_SYMBOL}, {0x0002c6, 0x0002d1, PG_U_MODIFIER_LETTER}, @@ -1406,7 +1406,7 @@ static const pg_category_range unicode_categories[3368] = {0x000860, 0x00086a, PG_U_OTHER_LETTER}, {0x000870, 0x000887, PG_U_OTHER_LETTER}, {0x000888, 0x000888, PG_U_MODIFIER_SYMBOL}, - {0x000889, 0x00088e, PG_U_OTHER_LETTER}, + {0x000889, 0x00088f, PG_U_OTHER_LETTER}, {0x000890, 0x000891, PG_U_FORMAT}, {0x000897, 0x00089f, PG_U_NONSPACING_MARK}, {0x0008a0, 0x0008c8, PG_U_OTHER_LETTER}, @@ -1574,7 +1574,7 @@ static const pg_category_range unicode_categories[3368] = {0x000c4a, 0x000c4d, PG_U_NONSPACING_MARK}, {0x000c55, 0x000c56, PG_U_NONSPACING_MARK}, {0x000c58, 0x000c5a, PG_U_OTHER_LETTER}, - {0x000c5d, 0x000c5d, PG_U_OTHER_LETTER}, + {0x000c5c, 0x000c5d, PG_U_OTHER_LETTER}, {0x000c60, 0x000c61, PG_U_OTHER_LETTER}, {0x000c62, 0x000c63, PG_U_NONSPACING_MARK}, {0x000c66, 0x000c6f, PG_U_DECIMAL_NUMBER}, @@ -1600,7 +1600,7 @@ static const pg_category_range unicode_categories[3368] = {0x000cca, 0x000ccb, PG_U_SPACING_MARK}, {0x000ccc, 0x000ccd, PG_U_NONSPACING_MARK}, {0x000cd5, 0x000cd6, PG_U_SPACING_MARK}, - {0x000cdd, 0x000cde, PG_U_OTHER_LETTER}, + {0x000cdc, 0x000cde, PG_U_OTHER_LETTER}, {0x000ce0, 0x000ce1, PG_U_OTHER_LETTER}, {0x000ce2, 0x000ce3, PG_U_NONSPACING_MARK}, {0x000ce6, 0x000cef, PG_U_DECIMAL_NUMBER}, @@ -1874,7 +1874,8 @@ static const pg_category_range unicode_categories[3368] = {0x001aa8, 0x001aad, PG_U_OTHER_PUNCTUATION}, {0x001ab0, 0x001abd, PG_U_NONSPACING_MARK}, {0x001abe, 0x001abe, PG_U_ENCLOSING_MARK}, - {0x001abf, 0x001ace, PG_U_NONSPACING_MARK}, + {0x001abf, 0x001add, PG_U_NONSPACING_MARK}, + {0x001ae0, 0x001aeb, PG_U_NONSPACING_MARK}, {0x001b00, 0x001b03, PG_U_NONSPACING_MARK}, {0x001b04, 0x001b04, PG_U_SPACING_MARK}, {0x001b05, 0x001b33, PG_U_OTHER_LETTER}, @@ -2293,7 +2294,7 @@ static const pg_category_range unicode_categories[3368] = {0x00208d, 0x00208d, PG_U_OPEN_PUNCTUATION}, {0x00208e, 0x00208e, PG_U_CLOSE_PUNCTUATION}, {0x002090, 0x00209c, PG_U_MODIFIER_LETTER}, - {0x0020a0, 0x0020c0, PG_U_CURRENCY_SYMBOL}, + {0x0020a0, 0x0020c1, PG_U_CURRENCY_SYMBOL}, {0x0020d0, 0x0020dc, PG_U_NONSPACING_MARK}, {0x0020dd, 0x0020e0, PG_U_ENCLOSING_MARK}, {0x0020e1, 0x0020e1, PG_U_NONSPACING_MARK}, @@ -2464,8 +2465,7 @@ static const pg_category_range unicode_categories[3368] = {0x002b45, 0x002b46, PG_U_OTHER_SYMBOL}, {0x002b47, 0x002b4c, PG_U_MATH_SYMBOL}, {0x002b4d, 0x002b73, PG_U_OTHER_SYMBOL}, - {0x002b76, 0x002b95, PG_U_OTHER_SYMBOL}, - {0x002b97, 0x002bff, PG_U_OTHER_SYMBOL}, + {0x002b76, 0x002bff, PG_U_OTHER_SYMBOL}, {0x002c00, 0x002c2f, PG_U_UPPERCASE_LETTER}, {0x002c30, 0x002c5f, PG_U_LOWERCASE_LETTER}, {0x002c60, 0x002c60, PG_U_UPPERCASE_LETTER}, @@ -2988,9 +2988,13 @@ static const pg_category_range unicode_categories[3368] = {0x00a7ca, 0x00a7ca, PG_U_LOWERCASE_LETTER}, {0x00a7cb, 0x00a7cc, PG_U_UPPERCASE_LETTER}, {0x00a7cd, 0x00a7cd, PG_U_LOWERCASE_LETTER}, + {0x00a7ce, 0x00a7ce, PG_U_UPPERCASE_LETTER}, + {0x00a7cf, 0x00a7cf, PG_U_LOWERCASE_LETTER}, {0x00a7d0, 0x00a7d0, PG_U_UPPERCASE_LETTER}, {0x00a7d1, 0x00a7d1, PG_U_LOWERCASE_LETTER}, + {0x00a7d2, 0x00a7d2, PG_U_UPPERCASE_LETTER}, {0x00a7d3, 0x00a7d3, PG_U_LOWERCASE_LETTER}, + {0x00a7d4, 0x00a7d4, PG_U_UPPERCASE_LETTER}, {0x00a7d5, 0x00a7d5, PG_U_LOWERCASE_LETTER}, {0x00a7d6, 0x00a7d6, PG_U_UPPERCASE_LETTER}, {0x00a7d7, 0x00a7d7, PG_U_LOWERCASE_LETTER}, @@ -2999,7 +3003,7 @@ static const pg_category_range unicode_categories[3368] = {0x00a7da, 0x00a7da, PG_U_UPPERCASE_LETTER}, {0x00a7db, 0x00a7db, PG_U_LOWERCASE_LETTER}, {0x00a7dc, 0x00a7dc, PG_U_UPPERCASE_LETTER}, - {0x00a7f2, 0x00a7f4, PG_U_MODIFIER_LETTER}, + {0x00a7f1, 0x00a7f4, PG_U_MODIFIER_LETTER}, {0x00a7f5, 0x00a7f5, PG_U_UPPERCASE_LETTER}, {0x00a7f6, 0x00a7f6, PG_U_LOWERCASE_LETTER}, {0x00a7f7, 0x00a7f7, PG_U_OTHER_LETTER}, @@ -3150,13 +3154,15 @@ static const pg_category_range unicode_categories[3368] = {0x00fb43, 0x00fb44, PG_U_OTHER_LETTER}, {0x00fb46, 0x00fbb1, PG_U_OTHER_LETTER}, {0x00fbb2, 0x00fbc2, PG_U_MODIFIER_SYMBOL}, + {0x00fbc3, 0x00fbd2, PG_U_OTHER_SYMBOL}, {0x00fbd3, 0x00fd3d, PG_U_OTHER_LETTER}, {0x00fd3e, 0x00fd3e, PG_U_CLOSE_PUNCTUATION}, {0x00fd3f, 0x00fd3f, PG_U_OPEN_PUNCTUATION}, {0x00fd40, 0x00fd4f, PG_U_OTHER_SYMBOL}, {0x00fd50, 0x00fd8f, PG_U_OTHER_LETTER}, + {0x00fd90, 0x00fd91, PG_U_OTHER_SYMBOL}, {0x00fd92, 0x00fdc7, PG_U_OTHER_LETTER}, - {0x00fdcf, 0x00fdcf, PG_U_OTHER_SYMBOL}, + {0x00fdc8, 0x00fdcf, PG_U_OTHER_SYMBOL}, {0x00fdf0, 0x00fdfb, PG_U_OTHER_LETTER}, {0x00fdfc, 0x00fdfc, PG_U_CURRENCY_SYMBOL}, {0x00fdfd, 0x00fdff, PG_U_OTHER_SYMBOL}, @@ -3342,6 +3348,7 @@ static const pg_category_range unicode_categories[3368] = {0x01091f, 0x01091f, PG_U_OTHER_PUNCTUATION}, {0x010920, 0x010939, PG_U_OTHER_LETTER}, {0x01093f, 0x01093f, PG_U_OTHER_PUNCTUATION}, + {0x010940, 0x010959, PG_U_OTHER_LETTER}, {0x010980, 0x0109b7, PG_U_OTHER_LETTER}, {0x0109bc, 0x0109bd, PG_U_OTHER_NUMBER}, {0x0109be, 0x0109bf, PG_U_OTHER_LETTER}, @@ -3401,7 +3408,11 @@ static const pg_category_range unicode_categories[3368] = {0x010ead, 0x010ead, PG_U_DASH_PUNCTUATION}, {0x010eb0, 0x010eb1, PG_U_OTHER_LETTER}, {0x010ec2, 0x010ec4, PG_U_OTHER_LETTER}, - {0x010efc, 0x010eff, PG_U_NONSPACING_MARK}, + {0x010ec5, 0x010ec5, PG_U_MODIFIER_LETTER}, + {0x010ec6, 0x010ec7, PG_U_OTHER_LETTER}, + {0x010ed0, 0x010ed0, PG_U_OTHER_PUNCTUATION}, + {0x010ed1, 0x010ed8, PG_U_OTHER_SYMBOL}, + {0x010efa, 0x010eff, PG_U_NONSPACING_MARK}, {0x010f00, 0x010f1c, PG_U_OTHER_LETTER}, {0x010f1d, 0x010f26, PG_U_OTHER_NUMBER}, {0x010f27, 0x010f27, PG_U_OTHER_LETTER}, @@ -3670,6 +3681,12 @@ static const pg_category_range unicode_categories[3368] = {0x011a9e, 0x011aa2, PG_U_OTHER_PUNCTUATION}, {0x011ab0, 0x011af8, PG_U_OTHER_LETTER}, {0x011b00, 0x011b09, PG_U_OTHER_PUNCTUATION}, + {0x011b60, 0x011b60, PG_U_NONSPACING_MARK}, + {0x011b61, 0x011b61, PG_U_SPACING_MARK}, + {0x011b62, 0x011b64, PG_U_NONSPACING_MARK}, + {0x011b65, 0x011b65, PG_U_SPACING_MARK}, + {0x011b66, 0x011b66, PG_U_NONSPACING_MARK}, + {0x011b67, 0x011b67, PG_U_SPACING_MARK}, {0x011bc0, 0x011be0, PG_U_OTHER_LETTER}, {0x011be1, 0x011be1, PG_U_OTHER_PUNCTUATION}, {0x011bf0, 0x011bf9, PG_U_DECIMAL_NUMBER}, @@ -3714,6 +3731,10 @@ static const pg_category_range unicode_categories[3368] = {0x011d97, 0x011d97, PG_U_NONSPACING_MARK}, {0x011d98, 0x011d98, PG_U_OTHER_LETTER}, {0x011da0, 0x011da9, PG_U_DECIMAL_NUMBER}, + {0x011db0, 0x011dd8, PG_U_OTHER_LETTER}, + {0x011dd9, 0x011dd9, PG_U_MODIFIER_LETTER}, + {0x011dda, 0x011ddb, PG_U_OTHER_LETTER}, + {0x011de0, 0x011de9, PG_U_DECIMAL_NUMBER}, {0x011ee0, 0x011ef2, PG_U_OTHER_LETTER}, {0x011ef3, 0x011ef4, PG_U_NONSPACING_MARK}, {0x011ef5, 0x011ef6, PG_U_SPACING_MARK}, @@ -3785,6 +3806,8 @@ static const pg_category_range unicode_categories[3368] = {0x016e60, 0x016e7f, PG_U_LOWERCASE_LETTER}, {0x016e80, 0x016e96, PG_U_OTHER_NUMBER}, {0x016e97, 0x016e9a, PG_U_OTHER_PUNCTUATION}, + {0x016ea0, 0x016eb8, PG_U_UPPERCASE_LETTER}, + {0x016ebb, 0x016ed3, PG_U_LOWERCASE_LETTER}, {0x016f00, 0x016f4a, PG_U_OTHER_LETTER}, {0x016f4f, 0x016f4f, PG_U_NONSPACING_MARK}, {0x016f50, 0x016f50, PG_U_OTHER_LETTER}, @@ -3796,9 +3819,11 @@ static const pg_category_range unicode_categories[3368] = {0x016fe3, 0x016fe3, PG_U_MODIFIER_LETTER}, {0x016fe4, 0x016fe4, PG_U_NONSPACING_MARK}, {0x016ff0, 0x016ff1, PG_U_SPACING_MARK}, - {0x017000, 0x0187f7, PG_U_OTHER_LETTER}, - {0x018800, 0x018cd5, PG_U_OTHER_LETTER}, - {0x018cff, 0x018d08, PG_U_OTHER_LETTER}, + {0x016ff2, 0x016ff3, PG_U_MODIFIER_LETTER}, + {0x016ff4, 0x016ff6, PG_U_LETTER_NUMBER}, + {0x017000, 0x018cd5, PG_U_OTHER_LETTER}, + {0x018cff, 0x018d1e, PG_U_OTHER_LETTER}, + {0x018d80, 0x018df2, PG_U_OTHER_LETTER}, {0x01aff0, 0x01aff3, PG_U_MODIFIER_LETTER}, {0x01aff5, 0x01affb, PG_U_MODIFIER_LETTER}, {0x01affd, 0x01affe, PG_U_MODIFIER_LETTER}, @@ -3818,7 +3843,11 @@ static const pg_category_range unicode_categories[3368] = {0x01bca0, 0x01bca3, PG_U_FORMAT}, {0x01cc00, 0x01ccef, PG_U_OTHER_SYMBOL}, {0x01ccf0, 0x01ccf9, PG_U_DECIMAL_NUMBER}, + {0x01ccfa, 0x01ccfc, PG_U_OTHER_SYMBOL}, {0x01cd00, 0x01ceb3, PG_U_OTHER_SYMBOL}, + {0x01ceba, 0x01ced0, PG_U_OTHER_SYMBOL}, + {0x01cee0, 0x01ceef, PG_U_OTHER_SYMBOL}, + {0x01cef0, 0x01cef0, PG_U_MATH_SYMBOL}, {0x01cf00, 0x01cf2d, PG_U_NONSPACING_MARK}, {0x01cf30, 0x01cf46, PG_U_NONSPACING_MARK}, {0x01cf50, 0x01cfc3, PG_U_OTHER_SYMBOL}, @@ -3957,6 +3986,17 @@ static const pg_category_range unicode_categories[3368] = {0x01e5f0, 0x01e5f0, PG_U_OTHER_LETTER}, {0x01e5f1, 0x01e5fa, PG_U_DECIMAL_NUMBER}, {0x01e5ff, 0x01e5ff, PG_U_OTHER_PUNCTUATION}, + {0x01e6c0, 0x01e6de, PG_U_OTHER_LETTER}, + {0x01e6e0, 0x01e6e2, PG_U_OTHER_LETTER}, + {0x01e6e3, 0x01e6e3, PG_U_NONSPACING_MARK}, + {0x01e6e4, 0x01e6e5, PG_U_OTHER_LETTER}, + {0x01e6e6, 0x01e6e6, PG_U_NONSPACING_MARK}, + {0x01e6e7, 0x01e6ed, PG_U_OTHER_LETTER}, + {0x01e6ee, 0x01e6ef, PG_U_NONSPACING_MARK}, + {0x01e6f0, 0x01e6f4, PG_U_OTHER_LETTER}, + {0x01e6f5, 0x01e6f5, PG_U_NONSPACING_MARK}, + {0x01e6fe, 0x01e6fe, PG_U_OTHER_LETTER}, + {0x01e6ff, 0x01e6ff, PG_U_MODIFIER_LETTER}, {0x01e7e0, 0x01e7e6, PG_U_OTHER_LETTER}, {0x01e7e8, 0x01e7eb, PG_U_OTHER_LETTER}, {0x01e7ed, 0x01e7ee, PG_U_OTHER_LETTER}, @@ -4027,11 +4067,10 @@ static const pg_category_range unicode_categories[3368] = {0x01f260, 0x01f265, PG_U_OTHER_SYMBOL}, {0x01f300, 0x01f3fa, PG_U_OTHER_SYMBOL}, {0x01f3fb, 0x01f3ff, PG_U_MODIFIER_SYMBOL}, - {0x01f400, 0x01f6d7, PG_U_OTHER_SYMBOL}, + {0x01f400, 0x01f6d8, PG_U_OTHER_SYMBOL}, {0x01f6dc, 0x01f6ec, PG_U_OTHER_SYMBOL}, {0x01f6f0, 0x01f6fc, PG_U_OTHER_SYMBOL}, - {0x01f700, 0x01f776, PG_U_OTHER_SYMBOL}, - {0x01f77b, 0x01f7d9, PG_U_OTHER_SYMBOL}, + {0x01f700, 0x01f7d9, PG_U_OTHER_SYMBOL}, {0x01f7e0, 0x01f7eb, PG_U_OTHER_SYMBOL}, {0x01f7f0, 0x01f7f0, PG_U_OTHER_SYMBOL}, {0x01f800, 0x01f80b, PG_U_OTHER_SYMBOL}, @@ -4041,26 +4080,28 @@ static const pg_category_range unicode_categories[3368] = {0x01f890, 0x01f8ad, PG_U_OTHER_SYMBOL}, {0x01f8b0, 0x01f8bb, PG_U_OTHER_SYMBOL}, {0x01f8c0, 0x01f8c1, PG_U_OTHER_SYMBOL}, - {0x01f900, 0x01fa53, PG_U_OTHER_SYMBOL}, + {0x01f8d0, 0x01f8d8, PG_U_MATH_SYMBOL}, + {0x01f900, 0x01fa57, PG_U_OTHER_SYMBOL}, {0x01fa60, 0x01fa6d, PG_U_OTHER_SYMBOL}, {0x01fa70, 0x01fa7c, PG_U_OTHER_SYMBOL}, - {0x01fa80, 0x01fa89, PG_U_OTHER_SYMBOL}, - {0x01fa8f, 0x01fac6, PG_U_OTHER_SYMBOL}, - {0x01face, 0x01fadc, PG_U_OTHER_SYMBOL}, - {0x01fadf, 0x01fae9, PG_U_OTHER_SYMBOL}, - {0x01faf0, 0x01faf8, PG_U_OTHER_SYMBOL}, + {0x01fa80, 0x01fa8a, PG_U_OTHER_SYMBOL}, + {0x01fa8e, 0x01fac6, PG_U_OTHER_SYMBOL}, + {0x01fac8, 0x01fac8, PG_U_OTHER_SYMBOL}, + {0x01facd, 0x01fadc, PG_U_OTHER_SYMBOL}, + {0x01fadf, 0x01faea, PG_U_OTHER_SYMBOL}, + {0x01faef, 0x01faf8, PG_U_OTHER_SYMBOL}, {0x01fb00, 0x01fb92, PG_U_OTHER_SYMBOL}, {0x01fb94, 0x01fbef, PG_U_OTHER_SYMBOL}, {0x01fbf0, 0x01fbf9, PG_U_DECIMAL_NUMBER}, + {0x01fbfa, 0x01fbfa, PG_U_OTHER_SYMBOL}, {0x020000, 0x02a6df, PG_U_OTHER_LETTER}, - {0x02a700, 0x02b739, PG_U_OTHER_LETTER}, - {0x02b740, 0x02b81d, PG_U_OTHER_LETTER}, - {0x02b820, 0x02cea1, PG_U_OTHER_LETTER}, + {0x02a700, 0x02b81d, PG_U_OTHER_LETTER}, + {0x02b820, 0x02cead, PG_U_OTHER_LETTER}, {0x02ceb0, 0x02ebe0, PG_U_OTHER_LETTER}, {0x02ebf0, 0x02ee5d, PG_U_OTHER_LETTER}, {0x02f800, 0x02fa1d, PG_U_OTHER_LETTER}, {0x030000, 0x03134a, PG_U_OTHER_LETTER}, - {0x031350, 0x0323af, PG_U_OTHER_LETTER}, + {0x031350, 0x033479, PG_U_OTHER_LETTER}, {0x0e0001, 0x0e0001, PG_U_FORMAT}, {0x0e0020, 0x0e007f, PG_U_FORMAT}, {0x0e0100, 0x0e01ef, PG_U_NONSPACING_MARK}, @@ -4069,7 +4110,7 @@ static const pg_category_range unicode_categories[3368] = }; /* table of Unicode codepoint ranges of Alphabetic characters */ -static const pg_unicode_range unicode_alphabetic[1179] = +static const pg_unicode_range unicode_alphabetic[1202] = { {0x000041, 0x00005a}, {0x000061, 0x00007a}, @@ -4083,8 +4124,8 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x0001bc, 0x0001bf}, {0x0001c0, 0x0001c3}, {0x0001c4, 0x000293}, - {0x000294, 0x000294}, - {0x000295, 0x0002af}, + {0x000294, 0x000295}, + {0x000296, 0x0002af}, {0x0002b0, 0x0002c1}, {0x0002c6, 0x0002d1}, {0x0002e0, 0x0002e4}, @@ -4154,7 +4195,7 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x000840, 0x000858}, {0x000860, 0x00086a}, {0x000870, 0x000887}, - {0x000889, 0x00088e}, + {0x000889, 0x00088f}, {0x000897, 0x000897}, {0x0008a0, 0x0008c8}, {0x0008c9, 0x0008c9}, @@ -4287,7 +4328,7 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x000c4a, 0x000c4c}, {0x000c55, 0x000c56}, {0x000c58, 0x000c5a}, - {0x000c5d, 0x000c5d}, + {0x000c5c, 0x000c5d}, {0x000c60, 0x000c61}, {0x000c62, 0x000c63}, {0x000c80, 0x000c80}, @@ -4307,7 +4348,7 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x000cca, 0x000ccb}, {0x000ccc, 0x000ccc}, {0x000cd5, 0x000cd6}, - {0x000cdd, 0x000cde}, + {0x000cdc, 0x000cde}, {0x000ce0, 0x000ce1}, {0x000ce2, 0x000ce3}, {0x000cf1, 0x000cf2}, @@ -4643,11 +4684,8 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x00a788, 0x00a788}, {0x00a78b, 0x00a78e}, {0x00a78f, 0x00a78f}, - {0x00a790, 0x00a7cd}, - {0x00a7d0, 0x00a7d1}, - {0x00a7d3, 0x00a7d3}, - {0x00a7d5, 0x00a7dc}, - {0x00a7f2, 0x00a7f4}, + {0x00a790, 0x00a7dc}, + {0x00a7f1, 0x00a7f4}, {0x00a7f5, 0x00a7f6}, {0x00a7f7, 0x00a7f7}, {0x00a7f8, 0x00a7f9}, @@ -4830,6 +4868,7 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x0108f4, 0x0108f5}, {0x010900, 0x010915}, {0x010920, 0x010939}, + {0x010940, 0x010959}, {0x010980, 0x0109b7}, {0x0109be, 0x0109bf}, {0x010a00, 0x010a00}, @@ -4863,7 +4902,9 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x010eab, 0x010eac}, {0x010eb0, 0x010eb1}, {0x010ec2, 0x010ec4}, - {0x010efc, 0x010efc}, + {0x010ec5, 0x010ec5}, + {0x010ec6, 0x010ec7}, + {0x010efa, 0x010efc}, {0x010f00, 0x010f1c}, {0x010f27, 0x010f27}, {0x010f30, 0x010f45}, @@ -5049,6 +5090,12 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x011a97, 0x011a97}, {0x011a9d, 0x011a9d}, {0x011ab0, 0x011af8}, + {0x011b60, 0x011b60}, + {0x011b61, 0x011b61}, + {0x011b62, 0x011b64}, + {0x011b65, 0x011b65}, + {0x011b66, 0x011b66}, + {0x011b67, 0x011b67}, {0x011bc0, 0x011be0}, {0x011c00, 0x011c08}, {0x011c0a, 0x011c2e}, @@ -5084,6 +5131,9 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x011d95, 0x011d95}, {0x011d96, 0x011d96}, {0x011d98, 0x011d98}, + {0x011db0, 0x011dd8}, + {0x011dd9, 0x011dd9}, + {0x011dda, 0x011ddb}, {0x011ee0, 0x011ef2}, {0x011ef3, 0x011ef4}, {0x011ef5, 0x011ef6}, @@ -5121,6 +5171,8 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x016d43, 0x016d6a}, {0x016d6b, 0x016d6c}, {0x016e40, 0x016e7f}, + {0x016ea0, 0x016eb8}, + {0x016ebb, 0x016ed3}, {0x016f00, 0x016f4a}, {0x016f4f, 0x016f4f}, {0x016f50, 0x016f50}, @@ -5130,9 +5182,11 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x016fe0, 0x016fe1}, {0x016fe3, 0x016fe3}, {0x016ff0, 0x016ff1}, - {0x017000, 0x0187f7}, - {0x018800, 0x018cd5}, - {0x018cff, 0x018d08}, + {0x016ff2, 0x016ff3}, + {0x016ff4, 0x016ff6}, + {0x017000, 0x018cd5}, + {0x018cff, 0x018d1e}, + {0x018d80, 0x018df2}, {0x01aff0, 0x01aff3}, {0x01aff5, 0x01affb}, {0x01affd, 0x01affe}, @@ -5197,6 +5251,17 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x01e4eb, 0x01e4eb}, {0x01e5d0, 0x01e5ed}, {0x01e5f0, 0x01e5f0}, + {0x01e6c0, 0x01e6de}, + {0x01e6e0, 0x01e6e2}, + {0x01e6e3, 0x01e6e3}, + {0x01e6e4, 0x01e6e5}, + {0x01e6e6, 0x01e6e6}, + {0x01e6e7, 0x01e6ed}, + {0x01e6ee, 0x01e6ef}, + {0x01e6f0, 0x01e6f4}, + {0x01e6f5, 0x01e6f5}, + {0x01e6fe, 0x01e6fe}, + {0x01e6ff, 0x01e6ff}, {0x01e7e0, 0x01e7e6}, {0x01e7e8, 0x01e7eb}, {0x01e7ed, 0x01e7ee}, @@ -5242,18 +5307,17 @@ static const pg_unicode_range unicode_alphabetic[1179] = {0x01f150, 0x01f169}, {0x01f170, 0x01f189}, {0x020000, 0x02a6df}, - {0x02a700, 0x02b739}, - {0x02b740, 0x02b81d}, - {0x02b820, 0x02cea1}, + {0x02a700, 0x02b81d}, + {0x02b820, 0x02cead}, {0x02ceb0, 0x02ebe0}, {0x02ebf0, 0x02ee5d}, {0x02f800, 0x02fa1d}, {0x030000, 0x03134a}, - {0x031350, 0x0323af}, + {0x031350, 0x033479}, }; /* table of Unicode codepoint ranges of Lowercase characters */ -static const pg_unicode_range unicode_lowercase[690] = +static const pg_unicode_range unicode_lowercase[692] = { {0x000061, 0x00007a}, {0x0000aa, 0x0000aa}, @@ -5402,7 +5466,7 @@ static const pg_unicode_range unicode_lowercase[690] = {0x00024b, 0x00024b}, {0x00024d, 0x00024d}, {0x00024f, 0x000293}, - {0x000295, 0x0002af}, + {0x000296, 0x0002af}, {0x0002b0, 0x0002b8}, {0x0002c0, 0x0002c1}, {0x0002e0, 0x0002e4}, @@ -5880,13 +5944,14 @@ static const pg_unicode_range unicode_lowercase[690] = {0x00a7c8, 0x00a7c8}, {0x00a7ca, 0x00a7ca}, {0x00a7cd, 0x00a7cd}, + {0x00a7cf, 0x00a7cf}, {0x00a7d1, 0x00a7d1}, {0x00a7d3, 0x00a7d3}, {0x00a7d5, 0x00a7d5}, {0x00a7d7, 0x00a7d7}, {0x00a7d9, 0x00a7d9}, {0x00a7db, 0x00a7db}, - {0x00a7f2, 0x00a7f4}, + {0x00a7f1, 0x00a7f4}, {0x00a7f6, 0x00a7f6}, {0x00a7f8, 0x00a7f9}, {0x00a7fa, 0x00a7fa}, @@ -5912,6 +5977,7 @@ static const pg_unicode_range unicode_lowercase[690] = {0x010d70, 0x010d85}, {0x0118c0, 0x0118df}, {0x016e60, 0x016e7f}, + {0x016ebb, 0x016ed3}, {0x01d41a, 0x01d433}, {0x01d44e, 0x01d454}, {0x01d456, 0x01d467}, @@ -5948,7 +6014,7 @@ static const pg_unicode_range unicode_lowercase[690] = }; /* table of Unicode codepoint ranges of Uppercase characters */ -static const pg_unicode_range unicode_uppercase[656] = +static const pg_unicode_range unicode_uppercase[660] = { {0x000041, 0x00005a}, {0x0000c0, 0x0000d6}, @@ -6554,7 +6620,10 @@ static const pg_unicode_range unicode_uppercase[656] = {0x00a7c4, 0x00a7c7}, {0x00a7c9, 0x00a7c9}, {0x00a7cb, 0x00a7cc}, + {0x00a7ce, 0x00a7ce}, {0x00a7d0, 0x00a7d0}, + {0x00a7d2, 0x00a7d2}, + {0x00a7d4, 0x00a7d4}, {0x00a7d6, 0x00a7d6}, {0x00a7d8, 0x00a7d8}, {0x00a7da, 0x00a7da}, @@ -6571,6 +6640,7 @@ static const pg_unicode_range unicode_uppercase[656] = {0x010d50, 0x010d65}, {0x0118a0, 0x0118bf}, {0x016e40, 0x016e5f}, + {0x016ea0, 0x016eb8}, {0x01d400, 0x01d419}, {0x01d434, 0x01d44d}, {0x01d468, 0x01d481}, @@ -6609,7 +6679,7 @@ static const pg_unicode_range unicode_uppercase[656] = }; /* table of Unicode codepoint ranges of Case_Ignorable characters */ -static const pg_unicode_range unicode_case_ignorable[506] = +static const pg_unicode_range unicode_case_ignorable[518] = { {0x000027, 0x000027}, {0x00002e, 0x00002e}, @@ -6807,7 +6877,8 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x001aa7, 0x001aa7}, {0x001ab0, 0x001abd}, {0x001abe, 0x001abe}, - {0x001abf, 0x001ace}, + {0x001abf, 0x001add}, + {0x001ae0, 0x001aeb}, {0x001b00, 0x001b03}, {0x001b34, 0x001b34}, {0x001b36, 0x001b3a}, @@ -6887,7 +6958,7 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x00a770, 0x00a770}, {0x00a788, 0x00a788}, {0x00a789, 0x00a78a}, - {0x00a7f2, 0x00a7f4}, + {0x00a7f1, 0x00a7f4}, {0x00a7f8, 0x00a7f9}, {0x00a802, 0x00a802}, {0x00a806, 0x00a806}, @@ -6963,7 +7034,8 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x010d69, 0x010d6d}, {0x010d6f, 0x010d6f}, {0x010eab, 0x010eac}, - {0x010efc, 0x010eff}, + {0x010ec5, 0x010ec5}, + {0x010efa, 0x010eff}, {0x010f46, 0x010f50}, {0x010f82, 0x010f85}, {0x011001, 0x011001}, @@ -7040,6 +7112,9 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x011a59, 0x011a5b}, {0x011a8a, 0x011a96}, {0x011a98, 0x011a99}, + {0x011b60, 0x011b60}, + {0x011b62, 0x011b64}, + {0x011b66, 0x011b66}, {0x011c30, 0x011c36}, {0x011c38, 0x011c3d}, {0x011c3f, 0x011c3f}, @@ -7055,6 +7130,7 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x011d90, 0x011d91}, {0x011d95, 0x011d95}, {0x011d97, 0x011d97}, + {0x011dd9, 0x011dd9}, {0x011ef3, 0x011ef4}, {0x011f00, 0x011f01}, {0x011f36, 0x011f3a}, @@ -7077,6 +7153,7 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x016fe0, 0x016fe1}, {0x016fe3, 0x016fe3}, {0x016fe4, 0x016fe4}, + {0x016ff2, 0x016ff3}, {0x01aff0, 0x01aff3}, {0x01aff5, 0x01affb}, {0x01affd, 0x01affe}, @@ -7110,6 +7187,11 @@ static const pg_unicode_range unicode_case_ignorable[506] = {0x01e4eb, 0x01e4eb}, {0x01e4ec, 0x01e4ef}, {0x01e5ee, 0x01e5ef}, + {0x01e6e3, 0x01e6e3}, + {0x01e6e6, 0x01e6e6}, + {0x01e6ee, 0x01e6ef}, + {0x01e6f5, 0x01e6f5}, + {0x01e6ff, 0x01e6ff}, {0x01e8d0, 0x01e8d6}, {0x01e944, 0x01e94a}, {0x01e94b, 0x01e94b}, diff --git a/src/include/common/unicode_east_asian_fw_table.h b/src/include/common/unicode_east_asian_fw_table.h index db8bd0ad897..48c239f28b1 100644 --- a/src/include/common/unicode_east_asian_fw_table.h +++ b/src/include/common/unicode_east_asian_fw_table.h @@ -61,10 +61,10 @@ static const struct mbinterval east_asian_fw[] = { {0xFF01, 0xFF60}, {0xFFE0, 0xFFE6}, {0x16FE0, 0x16FE4}, - {0x16FF0, 0x16FF1}, - {0x17000, 0x187F7}, - {0x18800, 0x18CD5}, - {0x18CFF, 0x18D08}, + {0x16FF0, 0x16FF6}, + {0x17000, 0x18CD5}, + {0x18CFF, 0x18D1E}, + {0x18D80, 0x18DF2}, {0x1AFF0, 0x1AFF3}, {0x1AFF5, 0x1AFFB}, {0x1AFFD, 0x1AFFE}, @@ -106,7 +106,7 @@ static const struct mbinterval east_asian_fw[] = { {0x1F680, 0x1F6C5}, {0x1F6CC, 0x1F6CC}, {0x1F6D0, 0x1F6D2}, - {0x1F6D5, 0x1F6D7}, + {0x1F6D5, 0x1F6D8}, {0x1F6DC, 0x1F6DF}, {0x1F6EB, 0x1F6EC}, {0x1F6F4, 0x1F6FC}, @@ -116,11 +116,12 @@ static const struct mbinterval east_asian_fw[] = { {0x1F93C, 0x1F945}, {0x1F947, 0x1F9FF}, {0x1FA70, 0x1FA7C}, - {0x1FA80, 0x1FA89}, - {0x1FA8F, 0x1FAC6}, - {0x1FACE, 0x1FADC}, - {0x1FADF, 0x1FAE9}, - {0x1FAF0, 0x1FAF8}, + {0x1FA80, 0x1FA8A}, + {0x1FA8E, 0x1FAC6}, + {0x1FAC8, 0x1FAC8}, + {0x1FACD, 0x1FADC}, + {0x1FADF, 0x1FAEA}, + {0x1FAEF, 0x1FAF8}, {0x20000, 0x2FFFD}, {0x30000, 0x3FFFD}, }; diff --git a/src/include/common/unicode_nonspacing_table.h b/src/include/common/unicode_nonspacing_table.h index d67f5b3f281..dec117c0c25 100644 --- a/src/include/common/unicode_nonspacing_table.h +++ b/src/include/common/unicode_nonspacing_table.h @@ -212,7 +212,7 @@ static const struct mbinterval nonspacing[] = { {0x10D24, 0x10D27}, {0x10D69, 0x10D6D}, {0x10EAB, 0x10EAC}, - {0x10EFC, 0x10EFF}, + {0x10EFA, 0x10EFF}, {0x10F46, 0x10F50}, {0x10F82, 0x10F85}, {0x11001, 0x11001}, @@ -286,6 +286,9 @@ static const struct mbinterval nonspacing[] = { {0x11A59, 0x11A5B}, {0x11A8A, 0x11A96}, {0x11A98, 0x11A99}, + {0x11B60, 0x11B60}, + {0x11B62, 0x11B64}, + {0x11B66, 0x11B66}, {0x11C30, 0x11C3D}, {0x11C3F, 0x11C3F}, {0x11C92, 0x11CA7}, @@ -332,6 +335,10 @@ static const struct mbinterval nonspacing[] = { {0x1E2EC, 0x1E2EF}, {0x1E4EC, 0x1E4EF}, {0x1E5EE, 0x1E5EF}, + {0x1E6E3, 0x1E6E3}, + {0x1E6E6, 0x1E6E6}, + {0x1E6EE, 0x1E6EF}, + {0x1E6F5, 0x1E6F5}, {0x1E8D0, 0x1E8D6}, {0x1E944, 0x1E94A}, {0xE0001, 0xE01EF}, diff --git a/src/include/common/unicode_norm_hashfunc.h b/src/include/common/unicode_norm_hashfunc.h index c3935173fdb..a0b0e99adc0 100644 --- a/src/include/common/unicode_norm_hashfunc.h +++ b/src/include/common/unicode_norm_hashfunc.h @@ -41,344 +41,730 @@ typedef struct static int Decomp_hash_func(const void *key) { - static const int16 h[13687] = { + static const int16 h[13757] = { + 45, 32767, 157, 158, 159, 160, 161, 2883, + 52, 53, 54, 0, 412, -233, -232, -231, + -230, 60, 0, 0, -238, -238, -238, -238, + -238, 240, 241, 242, -342, -342, 822, 822, + 822, 822, 822, 822, 0, 0, 824, 824, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 267, 32767, 32767, 0, + 0, 32767, 0, 0, 32767, 32767, 32767, 4434, + 4435, -300, -300, -300, -300, -300, -300, 278, + 279, 280, 281, 282, 283, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 32767, 32767, 0, - 0, 0, 0, 32767, 0, 0, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 0, 0, 0, 32767, 0, 32767, 0, 32767, - 0, 32767, 0, 32767, 0, 32767, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1443, 1444, 1445, + -340, 1446, -340, 1447, 0, 0, 0, 32767, + 0, 0, 0, 0, 0, 0, 32767, 32767, + 216, 217, 218, 219, 0, -1058, 222, -363, + 0, 0, -259, 227, 228, 2942, 2943, 2944, + 32767, 32767, 232, 233, 234, 235, 236, 237, + -7938, 2075, 2076, 2077, 2078, 2079, 2080, 2081, + -4642, -4642, -4642, 2085, 2086, -4643, -4643, -4643, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -323, -323, + 14, 15, 321, -322, -322, -322, -322, -322, + -322, 22, 23, -322, 0, -321, -321, -321, + 0, 29, 30, -320, -320, -320, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + -112, 325, -112, -112, -112, 0, 0, -111, + -111, -111, -111, -111, -2832, 0, 0, 0, + 0, -357, 289, 289, 289, 289, 0, 0, + 0, 299, 300, 301, 302, 303, 0, -175, + 0, -278, -278, -278, -3885, -3885, -3885, -3885, + -3885, -3885, -3885, -3885, -3885, -3885, -3885, -3885, + -3885, 32767, 0, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, -4544, 99, 100, 101, 102, 0, + 0, 103, 103, 105, 104, 107, 108, 109, + 110, 108, 32767, 112, 109, 109, 109, 109, + 117, 32767, 110, 110, 110, 121, 111, 111, + -212, 125, 429, 430, 431, -212, -212, -212, + 130, -211, -211, 32767, 32767, -213, 109, -212, + -212, -212, 138, 32767, 32767, -212, -212, -212, + 108, 143, 144, 110, 110, 110, 110, 110, + 150, 151, 0, 437, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -2721, 111, + 111, 111, 166, -245, 401, 401, 401, 401, + 112, 173, 174, 413, 414, 415, 416, 417, + -60, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 4492, 449, 0, 32767, 451, 452, 0, 32767, + 32767, 4490, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 0, 0, 0, 0, 0, 32767, + 32767, 181, 182, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + -97, -97, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1243, -1243, -1243, 543, + -1242, 545, -1241, 207, 208, 209, 32767, 210, + 211, 212, 213, 214, 215, 32767, 32767, 0, + 0, 0, 0, 220, 1279, 0, 586, 224, + 225, 485, 0, 0, -2713, -2713, -2713, 32767, + 32767, 0, 0, 0, 0, 0, 0, 8176, + -1836, 0, 0, 0, 0, 585, 586, -577, + -576, -575, -574, -573, -572, 251, 252, -571, + -570, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 0, 32767, 32767, + 268, 269, 32767, 32767, 32767, 7164, -515, -6053, + -4164, -4164, 572, 573, 574, 575, 576, 577, + 0, 0, 0, 0, 0, 0, 0, 578, + 579, 580, 577, 578, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 32767, 32767, 32767, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 32767, 32767, 0, 32767, 32767, 0, 0, 0, - 0, 32767, 32767, 32767, 0, 0, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 32767, 0, 32767, 0, + 0, 32767, -379, -379, 32767, 0, 32767, 32767, + 28, 29, 30, 31, 3174, 33, 34, 5578, + 36, 37, 38, 39, 40, 41, 42, 43, + 1899, 1900, 1901, 47, 48, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 4693, 4694, 4695, 4696, 50, 32767, 32767, + 32767, 32767, 51, 52, 53, 54, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 627, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 262, 262, 608, 287, 609, 610, + 611, 291, 263, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 628, 629, 630, 631, + 632, 633, 634, 635, 636, 637, 638, 639, + 640, 641, 642, 643, 644, 645, 646, 647, + 648, 649, 650, 5, 6, 7, 8, 298, + 32767, 32767, 0, 0, 0, 0, 0, 0, + -239, 0, 32767, 608, 609, 610, 611, 612, + 2970, 614, -1770, -1770, 615, 616, 617, 618, + 619, 620, -1770, -1770, 621, 622, -1770, 623, + 624, 625, 626, 8242, -1770, -1770, -1770, -1770, + -1770, -1770, -1770, 4954, 4955, 4956, -1770, -1770, + 4960, 4961, 4962, 320, 321, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, + 341, 665, 666, 330, 330, 25, 669, 670, + 671, 672, 673, 674, 331, 331, 677, 356, + 678, 679, 680, 360, 332, 332, 683, 684, + 685, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 488, 52, 490, 491, 492, + 381, 382, 32767, 494, 495, 496, 497, 3219, + 388, 389, 390, 391, 749, 104, 105, 106, + 107, 397, 398, 399, 101, 101, 101, 101, + 101, 405, 581, 407, 686, 687, 688, 4296, + 4297, 4298, 4299, 32767, 32767, 32767, 32767, 4300, + 32767, 32767, 32767, 32767, 32767, 416, 32767, 655, + 656, 331, 658, 659, 660, 661, 662, 326, + 326, 326, 326, 326, 326, 4968, 32767, 325, + 32767, 324, 427, 428, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, -3708, 0, 0, 0, 0, 0, + 644, 645, 646, 305, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, -4570, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 0, 32767, 32767, 0, 32767, + 32767, 32767, 32767, 32767, 32767, 436, 0, 438, + 439, 440, 32767, 441, 442, 443, 444, 445, + 446, 3168, 32767, 32767, 32767, 0, -4059, -4059, + -4059, -4059, -4059, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 3570, -4045, 5968, -4044, 0, 450, 0, 0, + 0, 0, 0, 0, -4037, 0, 0, -4035, + 0, 0, 0, 0, 367, 367, 0, 366, + 0, 4702, 4703, 363, 0, 0, 0, 0, + 359, 359, 359, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 351, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 6024, 6025, 6026, 6027, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 674, 32767, 32767, + 32767, 32767, 32767, 32767, 776, 32767, 32767, 0, + 32767, 32767, 32767, 32767, 32767, 0, 0, 32767, + 32767, 32767, 32767, 32767, 463, 464, 32767, 465, + 3185, 3186, 32767, 3187, 3188, -1553, 0, 0, + 712, 67, 68, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 0, 0, 0, 32767, 0, 0, + 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 18, 471, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 472, + 473, 474, 475, 476, 32767, 32767, 32767, 32767, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 4709, 4710, 4711, + 4712, 4713, 4714, 4715, 9329, 4717, 4718, 4719, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 1719, -67, 32767, + 32767, 32767, 32767, 32767, 0, 0, 32767, 32767, + 32767, 32767, 32767, 32767, 479, 480, 481, 482, + 0, 32767, 483, -102, 0, 0, 0, 486, + 487, 3201, 3202, 3203, 3204, 32767, 491, 492, + 493, 494, 495, 496, 0, 0, 497, 498, + 499, 500, -84, -84, 1080, 1080, 1080, 1080, + 1080, 1080, 1080, 1080, 1080, 1080, 32767, 32767, + 32767, 1077, 1077, 1077, 1077, 1077, 1077, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1069, + 1069, 1069, 1069, 1069, 1069, 1069, 1069, 32767, + 32767, 1950, 1067, 1067, 1067, 1067, 1067, 1067, + 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 6028, + 4805, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 1037, 1037, + 1037, 1037, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 798, 32767, 32767, 32767, 1024, + 1024, 1024, 1024, 1024, 1024, 895, 895, 799, + 32767, 32767, 0, 0, 800, 0, 32767, 32767, + 32767, 32767, 32767, 32767, 801, -373, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 1, 32767, 2, 32767, 32767, 32767, 32767, 2792, - 32767, 32767, 4, 5, 6, 7, 32767, 32767, - 8, 9, 10, 32767, 11, 12, 13, 1734, - 14, -822, -822, 17, 18, 3020, 1739, 3021, - 3022, 3023, 1110, 24, 3024, 3025, 27, -3019, - 32767, 29, 30, 3026, 3027, 33, 34, 5016, - 1754, -4252, 36, 37, -4254, -4254, -4254, 32767, - 40, 41, 42, 43, 44, 45, 1912, 46, - 47, 48, 49, 50, 51, 52, 53, 54, - 1770, 55, 606, 57, 58, 59, 60, 1776, - 1777, 61, 62, 63, 64, 65, 32767, 66, - 32767, -1290, 6662, 3534, 3534, 3534, -172, 3322, - -170, -169, -168, -167, 3331, 1788, 0, 1790, - 1791, 1792, 1793, 1794, 1795, 1796, 1797, 1798, - 1799, 3354, 1801, 1802, -964, -964, -964, -964, - 1807, 4976, 4976, 4976, 4976, 4976, 4976, 1814, - 1815, 4974, 2192, 11244, 2194, 11245, 0, 0, - 1605, 11251, 0, 11252, 0, 0, 3571, 3571, - -47, -47, 0, 0, -124, -123, -122, -4877, - -4877, -119, 32767, 32767, -118, 0, -116, -11032, - -114, -113, -112, 32767, 32767, -887, -110, -109, - -885, -107, 5320, 32767, 32767, -105, -882, 5328, - -102, -101, -100, -99, -4221, -4221, -4221, -95, - -94, -93, -92, -4221, -4221, -4221, -4221, 32767, - 32767, -4223, -4223, -4223, -4223, -4223, -4223, -4223, - -4223, -5481, -4223, -4223, -4223, -4223, -4223, -4223, - -4223, -4223, -4223, -4223, -4223, -4223, -4223, -4223, - -5495, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 1839, 1840, 1841, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 4663, 4664, 32767, - 32767, -4255, -4255, 32767, 0, 0, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -4268, -4268, 5881, 5882, 4722, 5884, 5885, 5886, - 5887, 32767, 5888, 5889, 5890, 5891, 5892, 5893, - 5894, 5895, 5896, 5897, 5898, 185, 186, -3976, - -3976, -3976, -3976, 6000, 6001, 6002, 6003, 6004, - 6005, 6006, 198, 5911, -3968, -3968, -826, -3968, - -3968, -3968, -3968, -3968, 208, 209, 32767, -3967, - -3967, -3032, -3967, -3967, -3030, 5922, 5923, -813, - 5925, 5926, 219, 220, 5929, 5930, 5931, 224, - -4290, -4290, -4290, -4290, -4290, -4290, -4290, 5940, - 5941, -4292, -4292, -4292, -4292, -4292, -4292, -4292, - -4292, 5950, 5951, 0, 0, 0, 0, 245, - 0, 0, 0, 0, 0, 0, 0, 253, - 254, 255, 256, -635, 258, 259, 260, 261, - 262, 263, 0, 265, 266, 267, 0, 0, - 268, 269, 32767, 32767, 32767, 32767, 32767, 32767, - 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 5981, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 511, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 6565, 4677, + 4678, -57, -57, -57, -57, -57, -57, 521, + 522, 523, 524, 525, 526, 527, -50, -50, + -50, -46, -46, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 545, + 546, 547, 548, 549, 550, 551, 552, 553, + 554, 555, 556, 32767, 557, 32767, 558, 559, + 32767, 939, 940, -3772, 562, 32767, 32767, -3771, + 4725, 32767, 32767, 32767, 32767, 32767, -3771, -3770, + -5249, -5249, 2900, -5249, -3771, 32767, 2997, -1310, + 32767, 32767, 32767, 2998, 2999, 3000, 3001, 3002, + 3003, 3004, 3005, 3006, 3007, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 4727, 32767, 4728, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 2763, - 975, 32767, 32767, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 4729, 3009, 3010, 3011, 32767, + 32767, 6740, -4, 4734, -4, 6744, -6601, 1079, + 6618, 4730, 4731, -4, -4, -4, -4, -4, + -4, -4, -4, -321, -4, -4, -4, -4, + -4, -4, -4, 0, 0, 0, 0, 0, + 551, 551, 551, 551, 551, 551, 551, 551, + 551, 551, 551, 551, 551, 551, 551, 551, + 551, 551, 551, 5295, 5296, -9309, -1629, 551, + 551, 551, 551, 551, 551, 551, 551, 551, + 551, 551, 551, 551, 551, -2591, 551, 551, + -4992, 551, 551, 551, 551, 551, 551, 551, + 551, -1304, -1304, -1304, 551, 551, 32767, 550, + 550, 550, 550, 550, 550, 550, 550, 550, + 550, 550, 550, 550, 550, 550, 550, 550, + 550, 550, 550, 550, 550, 550, 550, 550, + 550, 550, 550, 550, 550, 550, 550, 550, + 550, 550, 550, 550, 550, 550, 550, 550, + 550, 8699, 550, 6744, 0, 4738, 0, 6748, + -6597, 1083, 6622, 4734, 4735, 0, 0, 0, + 0, 0, 0, 0, 0, -317, 0, 0, + 0, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 5343, 0, 0, 5344, + 0, 0, 0, 0, 0, 0, -40, 0, + -41, 0, 542, 0, 0, 0, 0, 845, + 0, 0, 0, 0, 0, 833, 0, 835, + 836, 846, 0, 0, 0, 0, 0, 0, + 0, -2357, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 289, + 0, 0, 0, 0, 0, 0, 0, 931, + 586, 586, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 4382, 4382, 4382, 0, 7408, - 4383, 4383, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -4027, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -1642, -1641, -1640, -1639, - -1638, 3694, -1636, 3697, 3698, 3699, 0, 0, - -1627, 0, 0, -1622, -1621, 0, 6198, -1616, - -1615, -1614, -1613, 0, -1610, -1609, -1608, 0, - 0, 0, 0, 0, 0, 9558, -10546,0, - 6270, 6271, 6272, 6273, 6274, 6275, -3369, 6277, - 6545, 6279, 9583, 6281, -1402, -1402, 6284, 6285, - 304, 1947, 1947, 1947, 1947, 1947, -3384, 1947, - -3385, -3385, -3385, 315, 316, 1944, 318, 319, - 1942, 1942, 322, -5875, 1940, 1940, 1940, 1940, - 328, 1939, 1939, 1939, 332, 333, 334, 335, - 336, 337, -9220, 10885, 340, -5929, -5929, -5929, - -5929, -5929, -5929, 3716, -5929, -6196, -5929, -9232, - -5929, 1755, 1756, -5929, -5929, 53, -1589, -1588, - -1587, -1586, -1585, 3747, -1583, 3750, 3751, 3752, - 53, 53, -1574, 53, 53, -1569, -1568, 53, - 6251, -1563, -1562, -1561, -1560, 53, -1557, 5101, - -1556, 52, 52, 52, 52, 52, 52, 9610, - -10494,52, 6322, 6323, 6324, 6325, 6326, 6327, - -3317, 6329, 6597, 6331, 9635, 6333, -1350, -1350, - 6336, 6337, 356, 1999, 1999, 1999, 1999, 1999, - 0, 0, -2173, -3888, -3337, -5616, 0, 0, - 432, -2164, 1985, 0, 0, 0, 1980, 0, - 0, 0, 0, -1319, -4683, 1975, 368, 369, - 370, 371, 372, 0, -9185, 0, 374, -5895, - -5895, 0, 0, 0, 0, 864, 437, -16, - -16, 440, 32767, 441, 442, 443, -13, 445, - 446, 447, 32767, 32767, 32767, 32767, 32767, 6042, - 6043, 6044, 6045, 430, 431, 0, 2597, -1551, - 435, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 448, 449, 450, 32767, 451, - 452, 32767, 32767, 32767, 453, 0, 0, 0, - 0, 0, -428, 0, 454, 455, 0, 456, - 0, 0, 0, 457, 0, 0, 0, 0, - 458, 459, 460, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 646, 646, + 646, 646, 646, 646, 646, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 3733, 3734, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 462, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 463, 464, 0, 465, - 0, 0, 0, 466, 0, 0, 0, 0, - 467, 0, 469, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 587, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 5493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 5530, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -4339, -4339, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -7353, -7353, -7353, -5439, - 0, 0, -7353, -4354, 0, 0, 485, 486, - 487, 488, 489, 490, 0, 0, 491, 492, - 493, 494, -2541, -5542, 0, 0, -5544, -5544, - -3630, -2543, -5542, -5542, -2543, 504, -2543, -2543, - -2543, -5538, 0, 0, -2545, -2545, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 326, 0, 0, 0, + 0, 0, 337, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 340, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 337, 338, 0, 0, 0, 0, 0, 0, + 0, 344, 345, 0, 0, 0, 0, 0, + 0, 349, 350, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 3784, 3784, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 3033, 3034, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 6047, 6048, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 4395, 4396, 4397, + 690, 691, 692, 693, 694, 51, 51, 51, + 32767, 32767, 32767, 32767, 32767, 32767, 4748, 4749, + 4750, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 3045, 32767, 32767, + 32767, 4751, 4752, 4753, 4754, 11, 11, 14617, + 32767, 32767, 698, 4758, 4759, 4760, 4761, 4762, + 704, 705, 706, 707, 708, 709, 710, 711, + 712, 713, 714, 715, 716, -2853, 4763, -5249, + 4764, 721, 32767, 722, 723, 724, 725, 726, + 727, 4765, 729, 730, 4766, 732, 733, 734, + 735, 369, 370, 738, 373, 740, -3961, -3961, + 380, 744, 745, 746, 747, 389, 390, 391, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 8673, 32767, 32767, + 5317, 32767, 5318, 5319, 32767, 32767, 32767, 32767, + 32767, 5320, 5321, 5322, 32767, 32767, 32767, 32767, + 32767, 32767, 752, 32767, 32767, 753, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 754, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 4814, 32767, + 32767, 32767, 756, 757, 758, 759, 32767, 32767, + 32767, 760, 761, 762, 763, 764, 765, -2804, + 4812, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, -1299, 32767, + 32767, 32767, 5324, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3448, - 3448, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 5320, 32767, 32767, 768, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2322, 770, 771, 32767, + 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 772, 773, 32767, + 774, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 775, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, -3213, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 2540, 2540, - 2540, 2540, 2540, 0, 4830, 4831, -307, -307, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, -3373, + 4777, 32767, -1417, 8191, 32767, 8547, 11926, 4247, + 32767, 32767, 8550, 8551, 32767, 32767, 32767, 32767, + 32767, 8552, 8553, 32767, 8554, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, + 777, 32767, 32767, 32767, 32767, 32767, 778, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 0, 0, 0, 0, 0, 779, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 780, 781, 782, 32767, 32767, + 783, 8555, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 887, 888, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 2537, 2537, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 889, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 784, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 8556, 8557, 8558, 8559, 32767, 32767, 32767, 785, + 32767, 32767, 32767, 32767, 32767, 8560, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4439, + 4785, 32767, 32767, 32767, 4821, -1372, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 786, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 787, 32767, 32767, 890, 789, + 790, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 891, 32767, 32767, 32767, 32767, 32767, 791, + 792, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 793, + 32767, 32767, 32767, 0, 32767, -3326, 32767, 32767, + 32767, 32767, 32767, 32767, 892, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 893, 894, 895, 0, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 794, 795, -4, + 797, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 0, 0, + 0, 0, 0, 0, 32767, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 32767, + 0, 0, 32767, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1171, 1171, 1171, 0, 0, + 0, 0, 1175, 5650, 5650, 5650, 2043, 2043, + 2043, 2043, 2043, 2043, 2043, 2043, 2043, 2043, + 2043, 2043, 2043, 2043, 2043, 0, 2044, 2044, + 2044, 2044, 2044, 2044, 2044, 2044, 2044, 2044, + 2044, 2044, 2044, 2044, 2044, 2044, 2044, 2044, + 2044, 32767, 2043, 2043, 2043, 2043, 2043, 2043, + 2043, 2043, 2043, 32767, 0, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 5425, 5426, 5427, 4564, + 6340, 5429, 5430, 6343, 6344, 4849, 4567, 5436, + 5437, 4567, 6350, 6351, 4569, 4569, 4569, 6355, + 4570, 6357, 4571, 6359, 5443, 6361, 4573, 4573, + 4573, 4573, 6366, 4574, 4574, 4574, 6370, 4575, + 4575, 4575, 4575, 5448, 4575, 4575, 6378, 4576, + 5450, 4576, 4576, 4576, 4576, 6385, 6056, -2092, + 6388, 4580, 4580, 4580, 4580, 4580, 6394, 6395, + 6396, 6397, 6398, 6399, 4586, 4586, 4586, 4586, + 4586, 4586, 4586, 4586, 4586, 4586, 4586, 4817, + 4586, 4586, 4586, 4586, 4586, 4586, 4586, 4586, + 4586, 4586, 4586, 4586, 10620, 4586, 4586, 10621, + 4586, 4586, 4586, 4586, 4586, 4586, 4586, 10067, + 10068, 4586, 4586, 4586, 4586, 4586, 10069, 4586, + 4586, 4586, 4586, 4586, 6448, 6449, 6450, 6451, + 6452, 6453, 6454, 6455, 6456, 9393, 6458, 6459, + 6460, 6461, 6462, 5983, 6464, 5984, 6466, 5985, + -129, -129, -129, 0, -129, -129, 2253, 4611, + 2255, -129, -129, 2256, 2257, 2258, 2259, 2260, + 2261, -129, -129, 2262, 2263, -129, 2264, 2265, + 2266, 2267, 9883, -129, -129, -129, -129, -129, + -129, -129, 6595, 6596, 6597, -129, -129, 6601, + 6602, 6603, -129, -129, -129, 5679, 6025, 6061, + 6062, -2086, 6064, -129, -129, 1880, 6068, -129, + 13217, 5538, 0, 5539, 0, 138, -129, 139, + 140, 141, -129, 6038, 6081, 5319, 5319, 5319, + 5319, -129, 0, 0, -129, -129, -129, 6048, + 6049, 6050, 6051, -129, -129, -129, -129, -129, + -129, -129, -129, -129, -129, -129, -129, -129, + -129, -129, -129, -129, -129, -129, -129, -129, + -129, -129, -129, -129, -129, -129, -129, -129, + -129, 4712, -129, -129, -129, -129, 4716, -129, + -129, 4718, -1776, -1737, 32767, 6112, 6593, 6113, + 6595, 6114, 0, 0, 0, 129, 0, 0, + 2382, 4740, 2384, 0, 0, 2385, 2386, 2387, + 2388, 2389, 2390, 0, 0, 2391, 2392, 0, + 2393, 2394, 2395, 2396, 10012, 0, 0, 0, + 0, 0, 0, 0, 6724, 6725, 6726, 0, + 0, 6730, 6731, 6732, 0, 0, 0, 5808, + 6154, 6190, 6191, -1957, 6193, 0, 0, 2009, + 6197, 0, 13346, 5667, 129, 5668, 129, 267, + 0, 268, 269, 270, 0, 6167, 6210, 5448, + 5448, 5448, 5448, 0, 129, 129, 0, 0, + 0, 6177, 6178, 6179, 6180, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4841, 0, 0, 0, 0, + 4845, 0, 0, 4847, -1647, -1608, -129, -129, + -129, -129, -1612, -129, -129, -129, -129, -129, + -129, -129, -129, -129, -129, -129, -129, -129, + -129, -129, 257, 257, -129, 4871, -129, 700, + -129, 270, 6749, 6395, 6356, 6752, 10131, 2452, + 273, 6756, 6757, 6758, 6759, 6760, 6761, 6762, + 6763, 6764, 6765, 6766, 6767, 6768, 3416, 275, + 276, 5820, 6773, 6414, 6775, 6776, 6416, 6778, + 6417, 6780, 6781, 6782, 6783, 6784, 6785, 6786, + 6787, 6788, 6789, 6790, 6791, 6792, 6793, 6794, + 6795, 6796, 6797, 6798, 6799, 6800, 6801, 6439, + 6803, 6440, 6805, 6806, 6807, -743, 6809, 6810, + 6811, 6812, 6813, 6814, 11191, 6450, 6450, 6450, + 6450, 6820, 6821, 6452, 6452, 6824, 6825, 6454, + 6454, 6828, 6829, 6830, 6831, 6832, 6833, 11259, + 6460, 6836, 6837, 6462, 6462, 6840, 6841, 4945, + 4945, 6844, 6845, 6846, 6847, 0, -1518, -1479, + 0, 0, 0, 0, -1483, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 386, 386, 0, 5000, + 0, 829, 0, 399, 0, 0, 830, 871, + 832, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 834, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 837, 838, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 7436, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 840, + 1158, 0, 0, 0, 0, 0, 0, 1164, + 1164, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4067, 4067, 4067, 4067, 4067, + 0, 0, 0, 0, 842, 0, 843, 0, + 844, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 847, 0, 0, 0, 0, 848, 0, + 0, 0, 0, 849, 0, 0, 0, 1224, + 1224, 0, 0, 0, 0, 0, 0, 0, + 850, 0, 0, 0, -84, 0, 0, 0, + 851, 852, 853, 854, 855, 856, 857, 858, + 859, 860, 861, 862, 863, 0, 0, 864, + 865, 866, -64, 282, 0, 869, 870, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 871, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 872, 0, 0, 0, + 0, 873, 0, 0, 0, 0, 874, 0, + 0, 0, 0, 875, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 876, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 231, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 6034, 0, 0, 6035, 0, 0, + 0, 0, 0, 0, 0, 5481, 5482, 0, + 0, 0, 0, 0, 5483, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4798, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -2358, 0, 0, 0, + 0, 0, 0, 0, 0, -4613, 0, 0, + 0, 0, 0, 0, 0, 1519, 1480, 1480, + 5254, -2425, 1480, 1480, 1480, 1519, 1519, 1519, + 1519, 1519, 1519, 1519, 1519, 1519, 878, 1519, + 1519, 1519, -4617, 1519, 1519, 1519, 1519, 1519, + 1519, 4024, 1519, 1519, 1519, 1519, 1519, 879, + -4659, 880, 881, 1519, 1519, 1519, 1519, 1519, + 6261, 6262, 1519, 1519, 1519, 1519, 1519, 1519, + 1519, 1519, 1519, 1519, 6259, 1519, 1519, 1519, + 1519, 1519, 1519, 1519, 1519, 1519, 6260, 1519, + 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, + 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, + 1519, 6318, 1519, 1519, 1519, 1519, 1519, 1519, + 1519, 0, 0, 0, 0, 0, 0, 0, + 0, 1440, 1440, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 4774, 0, 0, + 0, 0, 0, 0, 0, 882, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 4166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 6042, 6043, 6044, 6045, 6046, 0, 0, 0, + 0, 0, 0, 0, 0, 6035, 6036, 6037, + 6038, 6039, 6040, 6041, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -5, 0, 0, + 0, 0, 0, 0, 0, -1164, -1164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 4185, 4186, 0, 0, + 0, 4737, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 883, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -796, -795, - -794, -793, -792, -791, 1061, 1062, 1063, 1064, - 1065, 0, 0, 0, 0, 0, 0, 0, - -785, -784, -783, -782, -4016, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 4739, 0, 0, 0, 0, 0, 0, + 0, 0, -96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -39, -39, 3735, -3944, -39, -39, -39, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, -1097, -1096, -1095, -5270, -5270, -1094, -1093, - -1092, -2026, -1090, -1089, -2025, -2024, -765, -4241, - -10978,-10978,-5270, -5270, -10978,-10978,0, 0, + -641, 0, 0, 0, -6136, 0, 0, 0, + 0, 0, 0, 2505, 0, 0, 0, 0, + 0, -640, -6178, -639, -638, 0, 0, 0, + 0, 0, 4742, 4743, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 4740, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3849, 0, - 0, 0, 0, 3854, 2311, 523, 2313, 0, + 4741, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4799, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 5994, 4146, 4146, 5997, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3774, -3905, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 32767, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 350, + 350, 0, 32767, 0, 0, 0, 0, 32767, + 32767, 32767, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 4744, 4745, + -9860, -2180, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + -3142, 0, 0, -5543, 0, 0, 0, 0, + 0, 0, 0, 0, -1855, -1855, -1855, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 8149, 0, 6194, -550, + 4188, -550, 6198, -7147, 533, 6072, 4184, 4185, + -550, -550, -550, -550, -550, -550, -550, -550, + -867, -550, -550, -550, -550, -550, -550, -550, + 0, 0, -549, -549, 0, 0, -547, 0, + 0, -545, -545, 0, 0, -543, -543, 4800, + -543, 4801, 4802, -542, -542, -542, -542, -542, + -542, -582, -542, -583, -542, 0, 0, -541, + 0, -540, 305, -540, -540, -540, -540, -540, + 0, -539, 296, 297, 307, -539, -539, -539, + -539, -539, -539, -539, -2896, -539, -539, -539, + -539, -539, -539, -539, -539, -539, -539, -539, + -539, 32767, 32767, 32767, -542, -542, -542, -542, + -542, -542, 32767, 32767, -544, -544, -544, -544, + -544, -544, 32767, 32767, -546, -546, -546, -546, + -546, -546, 6181, 32767, -548, -548, -548, 6185, + 6186, 6187, 380, 35, 0, 0, 8149, 0, + 6194, 6195, 4187, 0, 6198, -7147, 533, 6072, + 534, 6074, 5937, 6205, 5938, 5938, 5938, 32767, + 42, 0, 32767, 763, 32767, 32767, 6212, 32767, + 6084, 6214, 6215, 6216, 40, 40, 40, 40, + 6221, 6222, 32767, 6223, 6224, 6225, 6226, 32767, + 6227, 32767, 6228, 32767, 32767, 32767, 32767, 32767, + 32767, 6229, 32767, 32767, 32767, 32767, 6230, 32767, + 6231, 32767, 6232, 32767, 6233, 6234, 1394, 32767, + 6236, 6237, 32767, 1393, 32767, 32767, 1392, 32767, + 7848, 32767, 0, 32767, 0, 32767, 0, 32767, + 6115, 6116, 32767, 6117, 32767, 32767, 1378, 3735, + 6120, 6121, 32767, 3736, 3736, 3736, 3736, 3736, + 6127, 6128, 32767, 3737, 6130, 3738, 3738, 32767, + 3737, -3878, 6135, 6136, 32767, 6137, 32767, 6138, + 6139, -584, -584, -584, 6143, 6144, -585, -585, + -585, 32767, 6148, 6149, 342, -3, -38, -38, + 8111, -38, 6156, 6157, 4149, -38, 6160, -7185, + 495, 6034, 496, 32767, 32767, 32767, 32767, 32767, + 5895, 6166, 0, 32767, 720, 721, 722, 723, + 6172, 32767, 6044, 6174, 6175, 6176, 0, 0, + 0, 0, 6181, 6182, 6183, 6184, 6185, 6186, + 6187, 6188, 6189, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 2970, 32767, 32767, 32767, 32767, 1264, 1264, 1264, - 2215, 2216, 2217, 2218, 2219, 2220, 2221, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 5792, 32767, - 362, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -3774, 32767, 32767, -3776, -3776, -3776, -3776, - -5034, -3776, -3776, 32767, 32767, -3778, -3778, -3778, - -3778, -3778, -3778, 32767, 32767, -3780, -3780, 32767, - -5053, -3781, -3781, -3781, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, -157, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 627, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 4695, 32767, - 32767, 2985, 2986, 32767, 32767, 32767, 32767, 628, - 629, 630, 631, 632, 633, -5911, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, - 645, 646, 647, 648, 649, 650, 651, 652, - 653, 654, 32767, 32767, 32767, 32767, 32767, 32767, - -2208, 32767, 8339, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 4699, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4700, - 4701, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 2745, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 4786, + 4787, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 5998, 0, 32767, - 32767, 32767, 32767, 0, 0, 32767, 32767, 32767, - 32767, 0, 2987, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -1459, - -1459, -1459, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -1496, -2931, 32767, - 32767, 32767, 655, 656, 657, 658, 659, 660, - 661, 662, 663, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 664, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 4743, 32767, 32767, 32767, -3717, -3716, - 667, -6740, 32767, -3714, 670, 671, 672, 673, - 674, 675, 676, 677, 32767, 678, 679, 680, - 32767, 681, 4709, 683, 684, 685, 2990, 32767, - 32767, 32767, 2991, 2992, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 538, 32767, 32767, 32767, 32767, -1583, 32767, + 32767, 32767, 32767, 32767, 32767, -3270, -3270, -3270, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 4671, 4672, 4673, -68, + -68, 4676, 4677, 4678, 4679, 4680, 4681, 32767, + 71, 6566, 32767, 32767, 4682, 4683, 4684, 4685, + 4686, 4687, 4688, 4689, 4690, -50, 4692, 4693, + 4694, 4695, 4696, 4697, 4698, 4699, 4700, 4701, + 4702, 4703, 4704, 4705, 4706, 4707, 4708, 4709, + -89, 4711, 4712, 32767, 4713, 4714, 4715, 4716, + 6236, 6237, 6238, 6239, 6240, 6241, 6242, 6243, + 4804, 4805, 6246, 6247, 6248, 6249, 6250, 6251, + 6252, 6253, 6254, 6255, 1482, 6257, 6258, 6259, + 6260, 6261, 6262, 6263, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, -3370, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 686, -5583, -5583, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -1622, + 32767, 32767, 32767, 32767, 32767, 32767, 6264, 6265, + 6266, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4710, + 32767, 32767, 32767, 6268, 6269, 6270, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, -2053, 32767, + 32767, 32767, 32767, 6310, 6272, 6273, 6274, 6275, + 6276, 6277, 6278, 6279, 6280, 6922, 6282, 6283, + 6284, 12421, 6286, 6287, 6288, 6289, 6290, 6291, + 3787, 6293, 6294, 6295, 6296, 6297, 6938, 12477, + 6939, 6939, 6302, 6303, 6304, 6305, 6306, 1565, + 1565, 6309, 6310, 6311, 6312, 6313, 6314, 32767, + 32767, 32767, 32767, 1575, 6316, 6317, 6318, 6319, + 6320, 6321, 6322, 6323, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 6324, 6325, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 4679, 4711, 4681, 4682, 4683, 4684, 4685, 4686, - 4687, 4688, 4689, 0, 0, 32767, 0, 32767, - 32767, 32767, 0, 5257, 32767, 32767, 32767, 6885, - 6619, 9923, 6621, -1062, -1062, 6624, 6625, 644, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 1637, 32767, 1637, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 4690, 4691, 4692, 4693, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 4015, -5630, -5897, -5630, -8933, -5630, - 2054, 2055, -5630, -5630, 352, -1290, -1289, -1288, - -1287, -1286, 714, 715, 2889, 4605, 4055, 6335, - 720, 721, 32767, 2886, -1262, 724, 725, 726, - -1253, 728, 729, 730, 731, 2051, 5416, -1241, - 367, 367, 367, 367, 367, 740, 9926, 742, - 369, 6639, 6640, 746, 747, 748, 749, -114, + 32767, 32767, 32767, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 4796, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 3924, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, -8006, -8006, -2024, -3666, -3665, - -3664, -3663, -3662, 1670, -3660, 1673, 1674, 1675, - -2024, -2024, -3651, -2024, -2024, 32767, 32767, 32767, - 32767, 32767, -2866, 32767, 32767, -2865, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -2866, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -2866, 32767, - 32767, 32767, -4485, -4485, 758, 759, 32767, 32767, - 32767, 760, -2863, -2862, -2861, -2860, -2859, -2858, - -2857, 32767, 32767, 32767, 32767, 32767, 32767, 3014, - 3015, 3016, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 4795, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 0, 32767, 32767, 32767, 32767, 3017, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 2180, 2180, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 768, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 769, 770, 771, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 32767, 32767, 32767, 32767, 32767, 772, 773, 32767, - 774, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3018, - 32767, 32767, 0, 32767, 4716, 4717, 32767, 32767, - 32767, 32767, 32767, 32767, 3019, 0, 3919, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 32767, 32767, 3643, - 32767, 32767, 3641, 32767, 32767, 0, 0, -3355, - 0, 0, 0, 0, 1998, 0, 0, 0, - 0, 0, 0, -3366, -3366, -3366, 0, 0, - -3368, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -388,44 +774,76 @@ Decomp_hash_func(const void *key) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3365, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 676, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 677, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 13799, 0, 0, 0, 9279, 2994, 32767, - 8461, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 1755, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 3196, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -4700, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -3816, - 360, 361, 362, -572, 364, 365, -571, -570, - 689, -2787, -9524, -9524, -3816, -3816, -9524, -9524, - -9524, -3816, 699, 700, 701, 702, 703, 704, - 705, 706, 707, 8659, 5531, 5531, 5531, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, - 32767, 32767, 32767, 32767, 32767, 4746, 4747, 32767, - 4748, 32767, 32767, 32767, 4749, -507, -507, -507, - -507, -507, -507, -507, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 0, 32767, 0, 32767, 0, + 32767, 0, 32767, 0, 32767, 0, 32767, 32767, + 0, 32767, 0, 32767, 0, 32767, 32767, 32767, + 32767, 4803, 32767, 0, 0, 32767, 0, 0, + 32767, 0, 0, 32767, 0, 0, 32767, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -872, - 32767, 32767, 3030, 3031, 3032, 3033, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -3585, -3585, -3585, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 32767, 32767, 32767, 32767, 0, 0, 0, 0, + 32767, 0, 0, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 32767, 0, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -2044, -2044, -873, -873, + -873, 0, -2043, -2043, -2043, -868, 3607, 3607, + 3607, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -10784,-5076, -561, - -560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2304, 2304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -434,267 +852,23 @@ Decomp_hash_func(const void *key) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -3368, -3368, - 798, 32767, -372, -372, -372, -372, -372, -372, - 0, 1160, 0, 0, 0, 0, 0, 0, - 1161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5714, 5714, 9877, 9878, 9879, 9880, 0, - 0, -97, -97, -97, -97, -97, 5712, 0, - 0, 9880, 6739, 0, 9882, 9883, 9884, 9885, - 5710, 0, 3820, 679, 0, 0, 9886, 9887, - 8951, 0, 0, 6737, 0, 0, 5708, 5708, - 0, 0, 0, 5708, 10223, 10224, 10225, 10226, - 10227, 10228, 10229, 0, 0, 10234, 10235, 10236, - 10237, 10238, 10239, 10240, 10241, 0, 0, 5952, - 5953, 5954, 5955, 5711, 5957, 5958, 5959, 5960, - 5961, 5962, 5963, 5711, 5711, 5711, 5711, 6603, - 5711, 5711, 5711, 5711, 5711, 5711, 5975, 5711, - 5711, 5711, 5979, 5980, 32767, 32767, 32767, 32767, - 803, 32767, 32767, 32767, 804, 32767, 32767, 32767, - 32767, 32767, 32767, 805, 806, 32767, 807, 808, - 32767, 809, 0, 5999, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1389, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 840, 841, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 842, 32767, 843, 32767, 844, 32767, 32767, 32767, - 32767, 32767, 0, 0, 10606, 0, 845, 5378, - 0, 0, 0, 0, 1113, 1113, 1113, 1113, - 1113, 1113, 1113, 1113, 1113, -6838, -3709, -3708, - -3707, 0, -3493, 0, 0, 0, 0, -3497, - -1953, -164, -1953, -1953, 5407, 5408, -1955, -1955, - -1955, -1955, -1955, -1955, -3509, -1955, -1955, 812, - 813, 814, 815, -1955, -5123, -5122, -5121, -5120, - -5119, -5118, -14675,5430, -5115, -2332, -11383,-2332, - -11382,-136, -135, -1739, -11384,-11651,-11384,-131, - -130, -3700, -3699, -80, 5447, -126, -125, 0, - 0, 0, 4756, 4757, 0, 5456, -1715, 0, - -117, 0, 10917, 0, 0, 0, 5465, 5466, - 776, 0, 0, 777, 0, -5426, 5473, 5474, - 0, 778, -5431, 0, 0, 0, 0, 4123, - 4124, 4125, 0, 0, 0, 0, 4130, 4131, - 4132, 4133, 4134, 4135, 4136, 4137, 4138, 4139, - 4140, 4141, 4142, 4143, 5402, 4145, 4146, 4147, - 4148, 4149, 4150, 4151, 4152, 4153, 4154, 4155, - 4156, 4157, 4158, 5431, 5432, 4161, 4162, 4163, - 4164, 4165, 4166, 4167, 4168, 4169, 4170, 4171, - 4172, 4173, 4174, 4175, 4176, 4177, 4178, 4179, - 32767, 32767, 4180, 4181, 4182, 4183, 4184, 4185, - 4186, 4187, 4188, 4189, 4190, 4191, 4192, 6044, - 6045, 6046, 6047, 6048, 4198, 4199, 4200, 4201, - 4202, 4203, 4204, 4205, 4206, 4207, 4208, 974, - 4210, 11136, 3906, 3907, 3908, 3909, 3910, 3911, - 3912, 3913, 3914, 3915, 3916, 3917, 5988, 5989, - 0, 0, 3919, 3920, 3921, 3922, -6053, -6053, - -6053, -6053, -6053, -6053, -6053, -244, -5956, 3924, - 3925, 784, 3927, 3928, 3929, 3930, 3931, -244, - -244, 3932, 3933, 3934, 3000, 3936, 3937, 3001, - 3002, 4261, 785, -5952, -5952, -244, -244, -5952, - -5952, -5952, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -5739, -408, - -408, -408, 32767, 32767, 32767, 32767, 3724, 823, - 824, 32767, 32767, 32767, 32767, 32767, 32767, -421, - -2028, -2027, -2026, -2025, -2024, 517, -4312, -4312, - 827, 828, 522, 523, 524, 525, 526, 527, - 528, 529, 530, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, -3617, 550, 551, - 552, 553, 554, 555, 556, 32767, 557, 32767, - 558, 559, 32767, 560, 561, 32767, 562, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -1191, -1191, - -1191, -2792, 0, 0, 0, 0, -2791, -2790, - -4408, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -2791, -2790, - -2789, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 837, 838, 0, 0, -3001, 3038, - -3001, -3001, -3001, -1087, 0, -2999, -2999, 0, - 3047, 0, 0, 0, -2995, -2995, 0, 0, - 0, 0, 4287, 0, 0, 4292, 4293, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -550, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3918, 0, 0, 0, 0, 9976, 0, - 0, 0, 0, -6065, -6065, 0, 0, 0, - 0, 3142, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 935, 0, 0, 937, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 9645, 0, -267, 0, -3303, 0, - 7684, 7685, 0, 0, 5982, 4340, 4341, 4342, - 4343, 4344, 9676, 4346, 4347, 9679, 9680, 4350, - 4351, 4352, 4353, 4354, 4355, 4356, 4357, 4358, - 4359, 4360, 4361, 4362, 4363, 4364, 4365, 4366, - 5974, 5974, 5974, 5974, 5974, 5974, 15532, -4572, - 5974, 3192, 12244, 3194, 12245, 12246, 12247, 2603, - 12249, 12517, 12251, 999, 12252, 4569, 4569, 12255, - 12256, 6275, 7918, 7918, 7918, 7918, 7918, 2587, - 7918, 2586, 2586, 2586, 6286, 6287, 7915, 6289, - 6290, 7913, 7913, 6293, 96, 7911, 7911, 7911, - 7911, 6299, 7910, 1253, 7911, 6304, 6305, 6306, - 6307, 6308, 6309, -3248, 16857, 6312, 43, 43, - 43, 43, 43, 43, 9688, 43, -224, 43, - -3260, 43, 7727, 7728, 43, 43, 6025, 1253, - 6234, 1253, 6384, 6385, 10526, -3272, 1253, 6388, - 10531, 1253, 1253, 1253, 1253, 6392, 6393, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 6053, 6054, 6055, - 6056, 6057, 6058, 32767, 6059, 6060, 6061, 6062, - 32767, 6063, 32767, 6064, 32767, 32767, 32767, 4761, - 32767, 32767, 6065, 32767, 4762, 4763, 32767, 9404, - 32767, 6067, 4764, 6068, 32767, 6069, 6070, 6071, - 32767, 6072, 6073, 32767, 6074, 32767, 32767, 6075, - 32767, 6076, 32767, 6077, 32767, 6078, 32767, 6079, - 32767, 4374, 4374, 32767, 4373, 32767, 32767, 5324, - 5325, 5326, 5327, 32767, 6087, 6088, 6089, 6090, - 6091, 3057, 6093, 32767, 6094, 4376, -4013, 4376, - 32767, 4375, 4375, 4375, 4375, 32767, 4374, 32767, - 4373, 6104, 6105, 6106, 6107, 6108, 6109, 6110, - 6111, -3652, 881, -645, -645, -1903, 6116, 6117, - 6118, 4399, 4400, 4401, 6122, 6123, 3567, 3567, - 4406, 6127, 7410, 6129, 32767, 32767, 32767, 32767, - 32767, 7409, 7410, 4412, 32767, 6133, 4414, 4415, - 6136, 6137, 32767, 4420, 9402, 6140, 134, 134, - 13933, 134, 134, 134, 9413, 4429, 6149, 4432, - 6151, 4435, 6153, 6304, 6305, 6306, 6307, 6308, - 6309, 6310, 6311, 6312, 6313, 6314, 1068, 6316, - 5378, 6318, 5379, 6320, 803, 6322, -2232, 6324, - 6325, 6326, 1074, 6328, 6329, 6330, 6331, 6332, - 6333, 6334, 6335, 6336, 6337, 6338, 6339, 6340, - 6341, 6342, 6343, 6344, 6345, 6346, 6347, 6348, - 6349, 6350, 6351, 6352, 6353, 6354, 6355, 6356, - 6357, 6358, 6359, 6360, 5417, 6362, 6363, 6364, - 6365, 6366, 6367, 5423, 6369, 5424, 6371, 6372, - 5426, 5426, 6375, 5427, 5427, 6378, 6379, 6380, - 6381, 6382, 6383, 6384, 6385, 6386, 6387, 6388, - 6389, 6390, 6391, 6392, 6393, 6394, 6395, 6396, - 6397, 6398, 6399, 6400, 6401, 6402, 6403, 6404, - 6405, 6406, 6407, 6408, 6409, 6410, 6411, 6412, - 6413, 6414, 6415, 6416, 6417, 6418, 6419, 6420, - 6421, 6422, 7182, 5465, 6425, 6426, 6427, 6428, - 6429, 6430, 6431, 6432, 6433, 6434, 6435, 6436, - 6437, 6438, 6439, 6440, 6441, 6442, 6443, 6444, - 6445, 6446, 6447, 6448, 6449, 6450, 6451, 6452, - 6453, 6454, 6455, 6456, 6457, 6458, 6459, 6460, - 6461, 6462, 6463, 6464, 6465, 6466, 6467, 6468, - 6469, 6470, 6471, 6472, 6473, 6474, 6475, 6476, - 6477, 6478, 5519, 5519, 6481, 6482, 6483, 6484, - 6485, 6486, 6487, 6488, 6489, 6490, 6491, 6492, - 6493, 6494, 6495, 6496, 6497, 6498, 6499, 6500, - 6501, 6502, 6503, 6504, 6505, 6506, 6507, 6508, - 6509, 6510, 6511, 6512, 6513, 6514, 6515, 6516, - 6517, 6518, 6519, 6520, 6521, 6522, 6523, 6524, - 6525, 6526, 6527, 6528, 6529, 6530, 6531, 6532, - 6533, 1330, 6535, 6536, 6537, 6538, 5577, 6540, - 6541, 6542, 6543, 6544, 6545, 6546, 6547, 6548, - 6549, 6550, 5588, 5588, 6553, 6554, 6555, 6556, - 32767, 6557, 1728, 1728, 6867, 6868, 6562, 6563, - 6564, 6565, 6566, 6567, 6568, 6569, 6570, 6571, - 6572, 6573, 6574, 6575, 6576, 6577, 6578, 6579, - 6580, 6581, 6582, 6583, 6584, 6585, 6586, 6587, - 6588, 2423, 6590, 6591, 6592, 6593, 6594, 6595, - 6596, 6597, 6598, 6599, 6600, 6601, 6602, 6603, - 6604, 6605, 6606, 6607, 6608, 6609, 6610, 6611, - 6612, 6613, 6614, 6615, 6616, 6617, 6618, 6619, - 6620, 6621, 6622, 6623, 6624, 6625, 6626, 6627, - 6628, 6629, 6630, 6631, 6632, 6633, 6634, 6635, - 6636, 6637, 6638, 6639, 6640, 6641, 6642, 6643, - 6644, 6645, 6646, 6647, 6648, 6649, 6650, 6651, - 6652, 6653, 6654, 6655, 6656, 6657, 6658, 6659, - 6660, 6661, 6693, 6663, 6664, 6665, 6666, 6667, - 6668, 6669, 6670, 6671, 6672, 6673, 6674, 6675, - 6676, 6677, 6678, 6679, 7476, 7476, 7476, 7476, - 7476, 7476, 5625, 5625, 5625, 5625, 5625, 6691, - 6692, 6693, 6694, 6695, 6696, 6697, 7483, 7483, - 7483, 7483, 10718, 6703, 6704, 6705, 6706, 6707, - 6708, 6709, 6710, 6711, 6712, 6713, 6714, 6715, - 6716, 6717, 6718, 6719, 6720, 6721, 6722, 6723, - 6724, 6725, 6726, 6727, 6728, 6729, 6730, 6731, - 6732, 6733, 6734, 6735, 6736, 6737, 6738, 7836, - 7836, 7836, 12012, 12013, 7838, 7838, 7838, 8773, - 7838, 7838, 8775, 8775, 7517, 10994, 17732, 17733, - 12026, 12027, 17736, 17737, 6760, 6761, 6762, 6763, - 6764, 6765, 6766, 6767, 6768, 6769, 6770, 6771, - 6772, 6773, 6774, 6775, 2927, 6777, 6778, 6779, - 6780, 2927, 4471, 6260, 4471, 6785, 6786, 6787, - 6788, 6789, 6790, 6791, 6792, 6793, 6794, 6795, - 6796, 6797, 6798, 6799, 6800, 6801, 6802, 6803, - 6804, 6805, 6806, 6807, 6808, 6809, 6810, 6811, - 6812, 32767, 3411, 5540, 5541, 3411, 12221, 3411, - 3411, 3411, 3411, 5548, 5549, 5550, 5551, 5552, - 5553, 5554, 5555, 5556, 5557, 5558, 5559, 5560, - 5561, 5562, 5563, 5564, 5565, 5566, 5567, 5568, - 32767, 32767, 32767, 32767, 32767, 32767, 3915, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 6155, 6156, 6157, 6158, 6159, - 6160, 6161, 6162, 6163, 6164, 6165, 32767, 32767, - 32767, 32767, 32767, 6166, 6167, 6168, 6169, 6170, - 6171, 6172, 6173, 6174, 6175, 6176, 6177, 6178, - 6179, 6180, 4615, 4616, 4617, 4618, 4619, 6186, - 6187, 6188, 6189, 6190, 6191, 6192, 6193, 6194, - 6195, 6196, 32767, 6197, 6198, 6199, 6200, 6201, - 7637, 4495, 4495, 6205, 4052, 4052, 6208, 6209, - 6210, 6211, 6212, 6213, 6214, 6215, 6216, 6217, - 6218, 6219, 6220, 6221, 6222, 6223, 6224, 6225, - 6226, 6227, 6228, 32767, 32767, 0, 0, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 6229, 6230, 6231, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 6232, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 884, 885, 886, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 5994, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 6233, 6234, 6235, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 6236, 6237, 6238, 6239, - 6240, 6241, 6242, 6243, 6244, 6245, 6246, 6247, - 6248, 6249, 6250, 6251, 6252, 6253, 6254, 6255, - 6256, 6257, 6258, 6259, 6260, 6261, 6262, 6263, - 6264, 6265, 6266, 6267, 6268, 6269, 6270, 6271, - 6272, 6273, 6274, 6275, 6276, 6277, 6278, 6279, - 32767, 32767, 32767, 32767, 6280, 6281, 6282, 6283, - 6284, 6285, 6286, 6287, 6288, 4770, 32767, 4771, - 4772, 32767, 32767, 32767, 6289, 6290, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -5160, 2071, - 2071, 2071, 2071, 32767, 2070, 2070, 2070, 2070, - 2070, 2070, 2070, 0, 0, 6236, 6237, 2075, - 2075, 2075, 2075, 12051, 12052, 12053, 12054, 12055, - 12056, 12057, 6249, 11962, 2083, 2083, 5225, 2083, - 2083, 2083, 2083, 2083, 6259, 6260, 2085, 2085, - 2085, 3020, 2085, 2085, 3022, 3022, 32767, 5240, - 11978, 11979, 6272, 6273, 11982, 11983, 11984, 6277, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 4773, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -706,252 +880,666 @@ Decomp_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 896, 897, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 415, + 32767, 32767, 0, 0, 0, 0, 0, 0, + 0, 0, 9932, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -2468, -2468, - -2468, -2468, -2468, -2468, -2468, -2468, -2468, -2468, - -2468, -2468, -2468, -2468, -2468, -2468, -2468, -2468, - 2089, 2090, 2091, -2465, -2465, -2465, -2465, -2465, - -2465, 2098, 2099, -2463, -2463, -2463, -2463, -2463, - -2463, 2106, 2107, -2461, -2461, -2461, -2461, -2461, - -2461, 0, 0, -2459, -2459, -2459, 2119, 2120, - 2121, -2456, 2123, 2124, 2125, 2126, 2127, 2128, - 0, 0, 2131, -6678, 2133, 2134, 2135, 2136, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2158, 2159, 2160, - 2161, 2162, 2163, 2164, 2165, 2166, 2167, 2168, - 2169, 2170, 2171, 2172, 2173, 2174, 2175, 2176, - 2177, 2178, 2179, 2180, 2181, -2412, -2412, -2412, - -2412, -2412, 2187, 2188, 2025, 2190, 2191, 2192, - 2193, 2194, 2195, 2196, 2197, 2198, 2199, 2200, - 2201, 2202, 2203, 2204, 2205, 2206, 2207, 2208, - 2209, 2210, 2211, 2212, 2213, 2214, 2215, 2216, - 2217, 2218, 2219, 2220, 2221, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1566, 1566, - 1566, 1566, 1566, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 32767, 0, - 0, 0, 0, 0, -1435, 1708, 1709, 0, - 2154, 2155, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 898, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, -1145, + -1144, -1143, -1142, -1141, -1140, -1139, -1138, 32767, + 32767, -1137, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, -3659, -5441, -5441, -3658, -3657, -3656, + -5441, -3655, -5441, -3654, -5441, -4524, -5441, -3652, + 32767, -3651, -3650, -5442, -3649, -3648, -3647, -5442, + -3646, -3645, -3644, -3643, -4515, -3641, -3640, -5442, + -3639, -4512, -3637, -3636, -3635, -3634, -5442, -5112, + 3037, -5442, -3633, -3632, -3631, -3630, -3629, -5442, + 32767, 32767, -5444, -5444, -5444, -3630, -3629, -3628, + -3627, -3626, -3625, -3624, -3623, -3622, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, -1079, 32767, -1078, 32767, -1076, 32767, -1075, + 32767, -1074, 32767, 32767, 32767, -1073, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 6326, + 6327, 6328, 6329, 6330, 6331, 6332, 6333, -3598, + 6335, 32767, 32767, 32767, 32767, 32767, -5387, 32767, + -5388, 32767, 32767, -3599, -3598, 32767, -3598, -3597, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 0, 0, 32767, 32767, 4774, 4775, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, -3608, -3607, + -3606, -3605, -3835, -3603, -3602, -3601, -3600, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 1116, 988, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 1118, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 990, 991, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 0, 0, 0, 0, - 0, 0, 0, 0, -2552, 0, 0, 32767, - 0, 32767, 32767, 32767, 1551, 293, 3770, 32767, - 32767, 32767, 32767, 0, 32767, 0, 32767, 32767, + 0, 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 0, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 32767, 0, - 0, 32767, 0, 0, 32767, 32767, 32767, 32767, - 0, 32767, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, -4309, -4309, 0, 32767, - 0, -4310, -4577, -4310, -7613, -4310, 3374, 3375, - -4310, -4310, 1672, -3100, 1881, -3100, 2031, 2032, - 6173, -7625, -3100, 2035, 6178, -3100, -3100, -3100, - -3100, 2039, 2040, 32767, 0, -4353, -4353, 0, - -4352, 0, 0, -4350, 0, -4349, -4349, -4349, - -4349, 32767, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 32767, 0, 0, 32767, 0, 0, - 32767, 0, 0, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, -1267, -1721, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 0, 0, 0, - 0, 951, 952, 953, 954, 955, 956, 957, - 1717, 0, 32767, 32767, 32767, -1317, 32767, 32767, - 32767, 0, -8389, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 887, 888, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 0, 32767, -5009, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3014, + 2461, 2462, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 3021, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 5520, 32767, 32767, 32767, 32767, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 3022, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 993, 994, -5735, 32767, + -5736, 997, 998, 999, -4808, -5153, -5188, -5188, + 2961, -5188, 1006, 1007, -1001, 32767, 1009, -12336, + -4656, 883, -4655, 885, 748, 32767, 32767, 32767, + 32767, 1016, 32767, 32767, 32767, 32767, 32767, 32767, + 1017, 32767, 32767, 32767, 1018, 1019, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 3015, 3016, 3017, 3018, 32767, 32767, 32767, 3019, + 3020, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 5990, 5991, 5992, 5993, 32767, 32767, 32767, + 32767, 1020, 1021, 1022, 32767, 1023, 1024, -1357, + -3714, -1357, 1028, 1029, -1355, -1355, -1355, -1355, + 32767, -1356, 1035, 1036, -1354, -1354, 1039, -1353, + -1353, -1353, -1353, -8968, 1045, 1046, 1047, 1048, + 1049, 1050, 1051, 32767, -5673, -5673, 1054, 1055, + -5674, -5674, -5674, 1059, 1060, 1061, -4746, -5091, + -5126, -5126, 3023, -5126, 1068, 1069, -939, -5126, + 1072, -12273,-4593, 946, -4592, 948, 811, 1079, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 1080, 3024, 3025, + 3026, 3027, 3028, 3029, 3030, 3031, 3032, 0, + 0, 3035, 3036, 3037, 3038, 3039, 3040, 3041, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 1081, 1082, -3758, 1084, 1085, 1086, 1087, -3757, + 1089, 1090, -3756, 2739, 2701, 1223, 1224, 1225, + 1226, 2710, 1228, 1229, 1230, 1231, 1232, 1233, + 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, + 1242, 857, 858, 1245, -3754, 1247, 419, 1249, + 851, -5627, -5272, -5232, -5627, -9005, -1325, 855, + -5627, -5627, -5627, -5627, -5627, -5627, -5627, -5627, + -5627, -5627, -5627, -5627, -5627, -2274, 868, 868, + -4675, -5627, -5267, -5627, -5627, -5266, -5627, -5265, + -5627, -5627, -5627, -5627, -5627, -5627, -5627, -5627, + -5627, -5627, -5627, -5627, -5627, -5627, -5627, -5627, + -5627, -5627, -5627, -5627, -5627, -5627, -5264, -5627, + -5263, -5627, -5627, -5627, 1924, 32767, 1182, 1183, + 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, + 1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, + 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, + 1208, 1209, 1210, 1211, -3629, 1213, 1214, 1215, + 1216, -3628, 1218, 1219, -3627, 2868, 2830, 1352, + 1353, 1354, 1355, 2839, 1357, 1358, 1359, 1360, + 1361, 1362, 1363, 1364, 1365, 1366, 1367, 1368, + 1369, 1370, 1371, 986, 987, 1374, -3625, 1376, + 548, 1378, 980, -5498, -5143, -5103, -5498, -8876, + -1196, 984, -5498, -5498, -5498, -5498, -5498, -5498, + -5498, -5498, -5498, -5498, -5498, -5498, -5498, -2145, + 997, 997, -4546, -5498, -5138, -5498, -5498, -5137, + -5498, -5136, -5498, -5498, -5498, -5498, -5498, -5498, + -5498, -5498, -5498, -5498, -5498, -5498, -5498, -5498, + -5498, -5498, -5498, -5498, -5498, -5498, -5498, -5498, + -5135, -5498, -5134, -5498, -5498, -5498, 2053, -5498, + -5498, -5498, -5498, -5498, -5498, -9874, -5132, -5131, + -5130, -5129, -5498, -5498, -5128, -5127, -5498, -5498, + -5126, -5125, -5498, -5498, -5498, -5498, -5498, -5498, + -9923, -5123, 32767, 32767, 32767, 32767, -5502, -5502, + -3605, -3604, -5502, -5502, -5502, -5502, 1346, 2865, + 2827, 1349, 1350, 1351, 1352, 2836, 1354, 1355, + 1356, 1357, 1358, 1359, 1360, 1361, 1362, 1363, + 1364, 1365, 1366, 1367, 1368, 983, 984, 1371, + -3628, 1373, 545, 1375, 977, 1377, 1378, 549, + 509, 549, 1382, 1383, 1384, 1385, 1386, 1387, + 1388, 1389, 1390, 1391, 1392, 1393, 1394, 1395, + 562, 1397, 1398, 1399, 1400, 1401, 1402, 1403, + 1404, 1405, 1406, 1407, 1408, 1409, 1410, 1411, + 1412, 1413, 1414, 578, 578, 1417, 1418, 1419, + 1420, 1421, 1422, 1423, 1424, 1425, 1426, 1427, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, -5379, + 2172, -5379, -5379, -5379, -5379, -5379, -5379, -9755, + -5013, -5012, -5011, -5010, -5379, -5379, -5009, -5008, + -5379, -5379, -5007, -5006, -5379, 32767, 32767, -5381, + -5381, -5381, -9806, -5006, -5381, 32767, 32767, -5006, + -5383, -5383, -3486, -3485, -5383, -5383, -5383, -5383, + 1465, 2984, 2946, 1468, 1469, 1470, 1471, 2955, + 1473, 1474, 1475, 1476, 1477, 1478, 1479, 1480, + 1481, 1482, 1483, 1484, 1485, 1486, 1487, 1102, + 1103, 1490, -3509, 1492, 664, 32767, 32767, 1494, + 1495, 666, 626, 666, 1499, 32767, 32767, 1500, + 1501, 1502, 1503, 1504, 1505, 1506, 1507, 32767, + 1508, 32767, 675, 32767, 1510, 32767, 1511, 1512, + 1513, 1514, 1515, 1516, 1517, 1518, 1519, 1520, + 1521, 1522, 1523, 1524, 1525, 689, 689, 1528, + 1529, 1530, 1531, 1532, 1533, 1534, 1535, 1536, + 1537, 1538, 1539, 1540, 1541, 32767, 32767, 1542, + 1543, 1544, 1545, 1546, 1547, 1548, 1549, 1550, + 1551, 1552, 1553, 1554, 1555, 1556, 1557, 1558, + 1559, 1560, 1561, 1562, 1563, 1564, 1565, 1566, + 1567, 1568, 1569, 1570, 1571, 1572, -5863, 1574, + 1575, 1576, 1577, 1578, 1579, 1580, 1581, 1582, + 1583, 1584, 745, 428, 1587, 1588, 1589, 1590, + 1591, 1592, 429, 430, 32767, 1595, 1596, 1597, + 1598, 1599, 1600, 1601, 1602, 1603, -2463, -2462, + -2461, -2460, -2459, 1609, 32767, 1610, 1611, 770, + 1613, 771, 1615, 772, 1617, 1618, 1619, 1620, + 1621, 1622, 1623, 32767, 32767, 1624, 1625, 1626, + 1627, 1628, 1629, 32767, 1630, 1631, 1632, 1633, + 1634, 1635, 1636, 1637, 791, 1639, 1640, 1641, + 1642, 795, 1644, 1645, 1646, 1647, 799, 32767, + 32767, 1649, 426, 427, 32767, 1652, 1653, 1654, + 1655, 1656, 1657, 808, 1659, 1660, 32767, 32767, + 1661, 1662, 1663, 1664, 1665, 1666, 1667, 1668, + 1669, 1670, 1671, 32767, 32767, 32767, 32767, 32767, + 32767, 1672, 32767, 32767, 32767, 32767, 32767, 1673, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 1674, 1675, 1676, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1677, + 32767, 32767, 32767, 1678, 515, 32767, 1680, 1681, + 32767, 32767, 32767, 32767, 1682, 32767, 1683, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1684, + 1685, 844, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1687, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1688, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 840, 1690, 32767, 32767, 467, 468, 1693, 1694, + 1695, 1696, 1697, 1698, 1699, 850, 1701, 1702, + 1703, 1788, 1705, 1706, 1707, 857, 857, 857, + 857, 857, 857, 857, 857, 857, 857, 32767, + 856, 856, 1720, 1721, 858, 858, 858, 1789, + 1444, 1727, 859, 859, 1730, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 1731, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 1732, 1733, 1734, 1735, 1736, 1737, 1738, 1739, + 1740, 1741, 1511, 1743, 1744, 32767, 32767, 32767, + 32767, 1745, 32767, 32767, 32767, 1746, 1747, -4286, + 1749, 1750, -4284, 1752, 1753, 1754, 1755, 1756, + 1757, 32767, 32767, 32767, 32767, 4806, 4807, 4808, + 4809, 4810, 4811, 5051, 4813, 32767, 32767, 32767, + 32767, 1758, 1759, 1844, 1761, 32767, 1762, 912, + 912, 32767, 911, 911, 911, 911, 911, 911, + 911, 911, 911, 911, 1775, 0, 912, 912, + 0, 0, 1496, 1779, 911, 911, 1782, 0, + 0, 1783, 1784, 1785, 0, 1786, 0, 1787, + 0, 917, 0, 1789, 1790, 1791, 1792, 0, + 1793, 1794, 1795, 0, 1796, 1797, 1798, 1799, + 927, 1801, 1802, 0, 1803, 930, 1805, 1806, + 1807, 1808, 0, 330, 8479, 0, 1809, 1810, + 1811, 1812, 1813, 0, 0, 0, 0, 0, + 0, 1814, 1815, 1816, 1817, 1818, 1819, 1820, + 1821, 1822, 1823, 1824, 1594, 1826, 1827, 1828, + 1829, 1830, 1831, 1832, 1833, 1834, 1835, 1836, + 1837, -4196, 1839, 1840, -4194, 1842, 1843, 1844, + 1845, 1846, 1847, 1848, -3632, -3632, 1851, 1852, + 1853, 1854, 1855, -3627, 1857, 1858, 1859, 1860, + 1861, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -2936, 0, 0, 0, 0, 0, + 480, 0, 481, 0, 482, 6597, 6598, 6599, + 6471, 6601, 6602, 4221, 1864, 4221, 6606, 6607, + 4223, 4223, 4223, 4223, 4223, 4223, 6614, 6615, + 4225, 4225, 6618, 4226, 4226, 4226, 4226, -3389, + 6624, 6625, 6626, 6627, 6628, 6629, 6630, -93, + -93, -93, 6634, 6635, -94, -94, -94, 6639, + 6640, 6641, 834, 489, 454, 454, 8603, 454, + 6648, 6649, 4641, 454, 6652, -6693, 987, 6526, + 988, 6528, 6391, 6659, 6392, 6392, 6392, 6663, + 497, 455, 1218, 1219, 1220, 1221, 6670, 6542, + 6543, 6673, 6674, 6675, 499, 499, 499, 499, + 6680, 6681, 6682, 6683, 6684, 6685, 6686, 6687, + 6688, 6689, 6690, 6691, 6692, 6693, 6694, 6695, + 6696, 6697, 6698, 6699, 6700, 6701, 6702, 6703, + 6704, 6705, 6706, 6707, 6708, 6709, 1869, 6711, + 6712, 6713, 6714, 1870, 6716, 6717, 1871, 8366, + 8328, 6850, 6851, 6852, 6853, 8337, 6855, 6856, + 6857, 6858, 6859, 6860, 6861, 6862, 6863, 6864, + 6865, 6866, 6867, 6868, 6869, 6484, 6485, 6872, + 1873, 6874, 6046, 6876, 6478, 0, 355, 395, + 0, -3378, 4302, 6482, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3353, 6495, 6495, 952, 0, 360, 0, + 0, 361, 0, 362, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 363, 0, 364, 0, 0, 0, + 7551, 0, 0, 0, 0, 0, 0, -4376, + 366, 367, 368, 369, 0, 0, 370, 371, + 0, 0, 372, 373, 0, 0, 0, 0, + 0, 0, -4425, 375, 0, 0, 376, 377, + 0, 0, 1897, 1898, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 1899, 1900, + 1901, 1902, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 1903, 1904, 1905, 1906, 3065, 3066, + 3067, 3068, 3069, 3070, 1907, 1908, 3073, 3074, + 3075, 3076, 3077, 3078, 3079, 3080, 3081, 3082, + -984, -983, -982, -981, -980, 3088, 3089, 3090, + 3091, 2250, 3093, 2251, 3095, 2252, 3097, 3098, + 3099, 3100, 3101, 3102, 3103, 3104, 3105, 3106, + 3107, 3108, 3109, 3110, 3111, 3112, 3113, 3114, + 3115, 3116, 3117, 3118, 3119, 3120, 2274, 3122, + 3123, 3124, 3125, 2278, 3127, 3128, 3129, 3130, + 2282, 3132, 3133, 3134, 1911, 1912, 3137, 3138, + 3139, 3140, 3141, 3142, 3143, 2294, 3145, 3146, + 3147, 3232, 3149, 3150, 3151, 2301, 2301, 2301, + 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, + 2301, 2301, 3165, 3166, 2303, 2303, 2303, 3234, + 2889, 3172, 2304, 2304, 3175, 3176, 3177, 3178, + 3179, 3180, 3181, 3182, 3183, 3184, 3185, 2315, + 3187, 3188, 3189, 3190, 3191, 3192, 3193, 3194, + 3195, 2324, 3197, 3198, 3199, 3200, 2328, 3202, + 3203, 3204, 3205, 2332, 3207, 3208, 3209, 3210, + 2336, 3212, 3213, 3214, 3215, 3216, 3217, 3218, + 3219, 3220, 3221, 3222, 3223, 2348, 3225, 3226, + 3227, 3228, 3229, 3230, 3231, 3232, 3233, 3234, + 3235, 3236, 3006, 3238, 3239, 3240, 3241, 3242, + 3243, 3244, 3245, 3246, 3247, 3248, 3249, -2784, + 3251, 3252, -2782, 3254, 3255, 3256, 3257, 3258, + 3259, 3260, -2220, -2220, 3263, 3264, 3265, 3266, + 3267, -2215, 3269, 3270, 3271, 3272, 3273, 3274, + 3275, 3276, 3277, 3278, 3279, 3280, 3281, 3282, + -1515, 3284, 3285, 3286, 3287, 3288, 3289, 3290, + 3291, 3292, 3293, 3294, 3295, 3296, 3297, 3298, + 3299, 5658, 3301, 3302, 3303, 3304, 3305, 3306, + 3307, 3308, 7922, 3310, 3311, 3312, 3313, 3314, + 3315, 3316, 1798, 1838, 1839, 32767, 3320, 3321, + 3322, 3323, 3324, 2453, 3326, 3327, 3328, 3329, + 2457, 3331, 3332, 3333, 32767, 32767, 3334, 32767, + 3335, 32767, 32767, 3336, 3337, 3338, 3339, 3340, + 3341, 3342, 3343, 3344, 3345, 32767, 3346, 32767, + 3347, 32767, 32767, 3348, 3349, 32767, 32767, 32767, + 3350, 3351, 3352, 3353, 3123, 3355, 3356, 3357, + 3358, 3359, 3360, 3361, 3362, 3363, 3364, 3365, + 3366, -2667, 3368, 3369, -2665, 3371, 3372, 3373, + 3374, 3375, 3376, 3377, -2103, -2103, 3380, 3381, + 3382, 3383, 3384, -2098, 3386, 3387, 3388, 3389, + 3390, 3391, 3392, 3393, 3394, 3395, 3396, 3397, + 3398, 3399, -1398, 3401, 3402, 3403, 3404, 3405, + 3406, 3407, 3408, 3409, 3410, 3411, 3412, 3413, + 3414, 3415, 3416, 5775, 32767, 32767, 3418, 3419, + 3420, 3421, 3422, 3423, 8037, 3425, 3426, 3427, + 3428, 3429, 3430, 3431, 1913, 1953, 1954, -1819, + 5861, 1957, 1958, 1959, 1921, 1922, 1923, 1924, + 1925, 1926, 1927, 1928, 1929, 2571, 1931, 1932, + 1933, 8070, 1935, 1936, 1937, 1938, 1939, 1940, + -564, 1942, 1943, 1944, 1945, 1946, 2587, 8126, + 2588, 2588, 1951, 1952, 1953, 1954, 1955, -2786, + -2786, 1958, 1959, 1960, 1961, 1962, 1963, 1964, + 1965, 1966, 1967, -2772, 1969, 1970, 1971, 1972, + 1973, 1974, 1975, 1976, 1977, -2763, 1979, 1980, + 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, + 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, + -2802, 1998, 1999, 2000, 2001, 2002, 2003, 2004, + 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, + 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, + 2021, 2022, 2023, 2024, 2025, 2026, 2027, 2028, + 2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, + 2037, 2038, 2039, 2040, 2041, 2042, 2043, 2044, + 2045, -1728, 5952, 2048, 2049, 2050, 2051, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 2012, 8149, 2014, 2015, 2016, 32767, + 32767, 32767, 32767, 32767, 2017, 2018, 2019, 2020, + 2661, 8200, 2662, 2662, 2025, 2026, 2027, 2028, + 2029, -2712, -2712, 2032, 2033, 2034, 2035, 2036, + 2037, 2038, 2039, 2040, 2041, -2698, 32767, 2043, + 2044, 2045, 2046, 2047, 32767, 2048, 32767, -2692, + 2050, 32767, 2051, 2052, 32767, 2053, 2054, 2055, + 2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, + 2064, 2065, -2733, 2067, 2068, 2069, 2070, 2071, + 2072, 2073, 3593, 3594, 3595, 3596, 3597, 3598, + 3599, 3600, 2161, 2162, 3603, 3604, 3605, 3606, + 3607, 3608, 3609, 3610, 3611, 3612, -1161, 3614, + 3615, 3616, 3617, 3618, 3619, 3620, 2739, 3622, + 3623, 3624, 3625, 3626, 3627, 3628, 3629, 3630, + 3631, 3632, 3633, 3634, 3635, 3636, 3637, 3638, + 3639, 3640, 3641, 3642, 3643, 3644, 3645, 3646, + 3647, 3648, 3649, 3650, 3651, 3652, 3653, 3654, + 3655, -2386, -2386, -2386, -2386, -2386, 3661, 3662, + 3663, 3664, 3665, 3666, 3667, 3668, -2366, -2366, + -2366, -2366, -2366, -2366, -2366, 3676, 3677, 3678, + 3679, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 3680, 3681, 3682, -502, -502, 3685, + 3686, 3687, -1049, 3689, 3690, 3691, 3692, 3693, + 3694, 3695, 3696, 3697, 3698, 2816, 3700, 3701, + 3702, 3703, 3704, 3705, 3706, 3707, 3708, 3709, + 3710, 3711, 3712, 3713, 3714, 3715, 3716, 3717, + 3718, 3719, 3720, 3721, 3722, 3723, 3724, 32767, + 3725, 3726, 3727, 3728, 3729, 3730, 3731, 3732, + 3733, 3734, 3735, 3736, 3737, 3738, 3739, 3740, + 3741, 3742, 3743, 3744, 3745, 3746, 3747, 3748, + 3749, 3750, 3751, -2290, -2290, -2290, -2290, -2290, + 3757, 3758, 3759, 3760, 3761, 3762, 3763, 3764, + -2270, -2270, -2270, -2270, -2270, -2270, -2270, 3772, + 3773, 3774, 3775, 3776, 3777, 3778, 3779, 3780, + 3786, 3782, 3783, 3784, 3785, 3786, 3787, 3788, + 4953, 4954, 3791, 3792, 3793, 3794, 3795, 3796, + 3797, 3798, 3799, 3800, 3801, 3802, 3803, 3804, + 3805, 3806, 3807, 3808, 3809, 3810, 3811, -373, + -373, 3814, 3815, 3816, -920, 3818, 3819, 3820, + 3821, 3822, 3823, 3824, 3825, 3826, 3827, 2945, + 3829, 3830, 3831, 3832, 3833, 3834, 3835, 3836, + 3837, 3838, 3839, 3840, 3841, 3842, 3843, 3844, + 3845, 3846, 3847, 3848, 3849, 3850, 3851, 3852, + 3853, 3854, 3855, 3856, 3857, 3858, 3859, 3860, + 3861, 3862, 3863, 3864, 3865, 3866, 3867, 3868, + 3869, 3870, 3871, 3872, 3873, 3874, 3875, 3876, + 3877, 3878, 3879, 3880, -858, 3882, 3883, 3884, + 3885, 3886, 3887, 3888, 3889, 3986, 3891, 3892, + 3893, 3894, 3895, 3896, 3897, 3898, 3899, 3900, + 3901, 3902, 3903, 3943, 3944, 171, 7851, 3947, + 3948, 3949, 3911, 3912, 3913, 3914, 3915, 3916, + 3917, 3918, 3919, 4561, 3921, 3922, 3923, 10060, + 3925, 3926, 3927, 3928, 3929, 3930, 1426, 3932, + 3933, 3934, 3935, 3936, 4577, 10116, 4578, 4578, + 3941, 3942, 3943, 3944, 3945, -796, -796, 3948, + 3949, 3950, 3951, 3952, 3953, 3954, 3955, 3956, + 3957, -782, 3959, 3960, 3961, 3962, 3963, 3964, + 3965, 3966, 3967, -773, 3969, 3970, 3971, 3972, + 3973, 3974, 3975, 3976, 3977, 3978, 3979, 3980, + 32767, 3981, 3982, 3983, 3984, 3985, 3986, 3987, + 3988, 3989, 3990, 3991, 3992, 3993, 3994, 3995, + 3996, 3997, 3998, 3999, 4000, 4001, 4002, 4003, + 4004, 4005, 4006, 4007, 4008, 4009, -729, 4011, + 4012, 4013, 4014, 4015, 4016, 4017, 4018, 4115, + 4020, 4021, 4022, 4023, 4024, 4025, 4026, 4027, + 4028, 4029, 4030, 4031, 4032, 4072, 4073, 300, + 7980, 4076, 4077, 4078, 4040, 4041, 4042, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 4043, 4044, 4045, 4046, 4047, 4688, 10227, + 4689, 4689, 4052, 4053, 4054, 4055, 4056, -685, + -685, 4059, 4060, 4061, 4062, 4063, 4064, 4065, + 4066, 4067, 4068, -671, 4070, 4071, 4072, 4073, + 4074, 4075, 4076, 4077, 4078, -662, 4080, 4081, + 4082, 4083, 4084, 4085, 4086, 4087, 4088, 4089, + 4090, 4091, 4092, 4093, 4094, 4095, 4096, 4097, + -701, 4099, 4100, 4101, 4102, 4103, 4104, 4105, + 4106, 32767, 32767, 4107, 4108, 4109, 4110, 4111, + 4112, 4113, 4114, 4115, 4116, 4117, 4118, 4119, + 4120, 4121, 4122, 4123, 4124, 4125, 4126, 4127, + 4128, 4129, 4130, 4131, 4132, 4133, 4134, 4135, + 4136, 4137, 4138, 4139, 4140, 4141, 4142, 4143, + 4144, 371, 8051, 4147, 4148, 4149, 4150, 4151, + 4152, 4153, 4154, 4155, 4156, 4157, 4158, 4159, + 4160, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 4161, 4162, 4163, 4164, 4165, 4166, 4167, + 4168, 4169, 4170, 4171, 4172, 4173, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 4174, 4175, 4176, 4177, 4178, 4179, + 4180, 4181, 4182, 4183, 32767, 32767, 32767, 32767, + 32767, 32767, 4184, 4185, 4186, 4187, 4188, 4189, + 4190, 4191, 4192, 4193, 4194, 4195, 4196, 4197, + 4198, 4199, 4200, 4201, 4202, 4203, 4204, 4205, + 4206, 4207, 4208, 435, 8115, 4211, 4212, 4213, + 4214, 4215, 4216, 4217, 4218, 4219, 4220, 32767, + 32767, 4221, 4222, 4223, 4224, 4225, 4226, 4227, + 4228, 4229, 4230, 4231, 4232, 32767, 4233, 4234, + 4235, 4236, 4237, 4238, 4239, 4240, 4241, 4242, + 4243, 4244, 4245, 4246, 4247, 4248, 3899, 3900, + 4251, 32767, 4252, 4253, 4254, 4255, 32767, 32767, + 32767, 32767, 4256, 4257, 4258, 32767, 4259, 32767, + 4260, 4261, 4262, 4263, 4264, 4265, 4266, 4267, + 4268, 4269, 4270, 4271, 4272, 4273, 4274, 4275, + 4276, 4277, 4278, 4279, 4280, 4281, 4282, 4283, + 4284, 4285, 4286, 4287, 4288, -455, -455, 14151, + 6472, 4293, 4294, 4295, 4296, 4297, 4298, 4299, + 4300, 4301, 4302, 4303, 4304, 4305, 4306, 7449, + 4308, 4309, 9853, 4311, 4312, 4313, 4314, 4315, + 4316, 4317, 4318, 6174, 6175, 6176, 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, -3782, 4368, -1825, 4920, 183, + 4922, -1825, 11521, 3842, -1696, 193, 193, 4929, + 4930, 4931, 4932, 4933, 4934, 4935, 4936, 5254, + 4938, 4939, 4940, 4941, 4942, 4943, 4944, 4941, + 4942, 4943, 4944, 4945, 4395, 4396, 4397, 4398, + 4399, 4400, 4401, 4402, 4403, 4404, 4405, 4406, + 4407, 4408, 4409, 4410, 4411, 4412, 4413, -330, + -330, 14276, 6597, 4418, 4419, 4420, 4421, 4422, + 4423, 4424, 4425, 4426, 4427, 4428, 4429, 4430, + 4431, 7574, 4433, 4434, 9978, 4436, 4437, 4438, + 4439, 4440, 4441, 4442, 4443, 6299, 6300, 6301, + 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, -3657, 4493, -1700, + 5045, 308, 5047, -1700, 11646, 3967, -1571, 318, + 318, 5054, 5055, 5056, 5057, 5058, 5059, 5060, + 5061, 5379, 5063, 5064, 5065, 5066, 5067, 5068, + 5069, 4520, 4521, 5071, 5072, 4524, 4525, 5073, + 4527, 4528, 5074, 5075, 4531, 4532, 5076, 5077, + -265, 5079, -264, -264, 5081, 5082, 5083, 5084, + 5085, 5086, 5127, 5088, 5130, 5090, 4549, 4550, + 5092, 4552, 5093, 4249, 5095, 5096, 5097, 5098, + 5099, 4560, 5100, 4266, 4266, 4257, 5104, 5105, + 5106, 5107, 5108, 5109, 5110, 7468, 5112, 5113, + 5114, 5115, 5116, 5117, 5118, 5119, 5120, 5121, + 5122, 5123, 5124, 5125, 5126, 5127, 5128, 5129, + 5130, 5131, 5132, 5133, 5134, 5135, 5136, 5137, + 5138, 5139, 5140, 5141, 5142, 5143, 5144, 5145, + 5146, 5147, 5148, 5149, 5150, 5151, 5152, 5153, + 5154, 5155, 5156, 4226, 4572, 4608, 4609, -3539, + 4611, -1582, 5163, 426, 4614, -1583, 11763, 4084, + -1454, 4085, 32767, 5169, 5170, 5171, 5172, 5173, + 5174, 5175, 5176, 32767, 5177, 5178, 5179, 5180, + 5181, 5182, 5183, 32767, 5184, 5185, 5186, 5187, + 5188, 5189, 5190, 5191, 5192, 5193, 5194, 5195, + 5196, 5197, -145, 5199, 5200, -143, 5202, 5203, + 5204, 5205, 5206, 5207, 5248, 5209, 5251, 5211, + 32767, 5212, 5213, 5214, 5215, 32767, 5216, 5217, + 5218, 5219, 5220, 32767, 5221, 32767, 2052, 32767, + 5222, 5223, 5224, 5225, 5226, 5227, 5228, 32767, + 5229, 5230, 5231, 5232, 5233, 5234, 5235, 5236, + 5237, 5238, 5239, 5240, 5241, 5242, 5243, 5244, + 5245, 5246, 5247, 5248, 5249, 5250, 5251, 5252, + 5253, 5254, 5255, 5256, 5257, 5258, 5259, 5260, + 5261, 5262, 5263, 5264, 5265, 5266, 5267, 5268, + 5269, 5270, 5271, 5272, 5273, 4343, 4689, 4690, + 5277, 5278, 5279, 5280, 5281, 5282, 5283, 5284, + 5285, 5286, 5287, 5288, 5289, 5290, 5291, 5292, + 5293, 5294, 5295, 5296, 5297, 5298, 5299, 5300, + 5301, 5302, 5303, 5304, 5305, 5306, 5307, 5308, + 5309, 5310, 5311, 5312, 5313, 5314, 5315, 5316, + 5317, 5318, 5319, 5320, 5321, 5322, 5323, 5324, + 5325, 5326, 5327, 5328, 5329, 5330, 5331, 5332, + 5333, 5334, 5335, 5336, 4691, 4692, 4693, 4694, + 4695, 4696, 4697, 5344, 5345, 5346, 5347, 5348, + 5349, 5350, 5351, 5352, 5353, 5354, 5355, 5356, + 5357, 5358, 5359, 5360, 5361, 5362, 5363, 5364, + 5365, 5366, 5367, 5368, 5369, 5370, 5371, 5372, + 5373, 5374, 5375, 5376, 5377, 5378, 5379, 5380, + 5381, 5382, 5383, 5384, 5385, 5386, 5387, 5388, + 5389, 5390, 5391, 5392, 5393, 5394, 5395, 5396, + 5397, 5398, 5399, 5400, 5401, 4815, 4472, 4472, + 4818, 4819, 5406, 5407, 5408, 5409, 5410, 5411, + 5412, 5413, 5414, 5415, 5416, 5417, 5418, 5419, + 5420, 5421, 5422, 5423, 5424, 5425, 5426, 5427, + 5428, 5429, 5430, 5431, 5432, 5433, 5434, 5435, + 5436, 5437, 5438, 5439, 5440, 5441, 5442, 5443, + 5444, 5445, 5446, 5447, 5448, 5449, 5450, 5451, + 5452, 5453, 5454, 5455, 5456, 5457, 5458, 5459, + 5460, 5461, 5462, 5463, 5464, 5465, 4820, 4821, + 4822, 4823, 4824, 4825, 4826, 5473, 5474, 5475, + 5476, 5477, 5478, 5479, 5480, 5481, 5482, 5483, + 5484, 5485, 5486, 5487, 5488, 5489, 5490, 5491, + 5492, 5493, 5494, 5495, 5496, 5497, 5498, 5499, + 5500, 5501, 5502, 5503, 5504, 5505, 5506, 5507, + 5508, 5509, 5510, 5511, 5512, 5513, 5514, 5515, + 5516, 5517, 5518, 5519, 5520, 5521, 5522, 5523, + 5524, 5525, 5526, 5527, 5528, 5529, 5530, 4944, + 5532, 5533, 5534, 5535, 5536, 5537, 5538, 5539, + 5540, 5541, 5542, 5543, 5544, 5545, 5546, 5547, + 5548, 5549, 5550, 5551, 5552, 5553, 5554, 5555, + 5556, 5557, 5558, 5559, 5560, 5561, 5562, 5563, + 5564, 5565, 5566, 5567, 5568, 32767, 32767, 5569, + 5570, 5571, 5572, 5573, 5574, 5575, 5576, 5577, + 5578, 5579, 5580, 5581, 5582, 5583, 5584, 5585, + 5586, 5587, 5588, 5589, 5590, 5591, 5592, 5593, + 5594, 5595, 5596, 5597, 5598, 5599, 5600, 5601, + 5602, 5603, 5604, 5605, 5606, 5607, 5608, 5609, + 5610, 5611, 5612, 5613, 5614, 5615, 5616, 5617, + 5618, 5619, 5620, 5621, 5622, 5623, 5624, 5625, + 5626, 5627, 5628, 5629, 5304, 5631, 5632, 5633, + 5634, 5635, 5299, 5637, 5638, 5639, 5640, 5641, + 5642, 5643, 5644, 5645, 5306, 5647, 5648, 5649, + 5650, 5651, 5652, 5653, 5654, 5655, 5656, 32767, + 5657, 5071, 5659, 5660, 5661, 5662, 5663, 5664, + 5665, 5666, 5667, 5668, 5669, 5670, 5671, 5672, + 5673, 5674, 5675, 5676, 5677, 5678, 5679, 5680, + 5681, 5682, 5683, 5684, 5685, 5686, 5687, 5688, + 5689, 5690, 5691, 5692, 5693, 5694, 5695, 5696, + 5697, 5698, 5699, 5700, 5701, 5702, 5703, 5704, + 5705, 5706, 5707, 5708, 5709, 5710, 5711, 5712, + 5713, 5714, 5715, 5716, 5717, 5718, 5719, 5720, + 5721, 5722, 5723, 5724, 5725, 5726, 5727, 5728, + 5729, 5730, 5731, 5732, 5733, 5734, 5735, 5736, + 5737, 5738, 5739, 5740, 5741, 5742, 5743, 5744, + 5745, 5746, 5747, 5748, 5749, 5750, 5751, 5752, + 5753, 5754, 5755, 5756, 5757, 5758, 5433, 5760, + 5761, 5762, 5763, 5764, 5428, 5766, 5767, 5768, + 5769, 5770, 5771, 5772, 5773, 5774, 5435, 5776, + 5777, 5778, 5779, 5780, 5781, 5782, 5783, 5784, + 5785, 5786, 5787, 5788, 5789, 5790, 5791, 5792, + 5793, 5794, 5795, 5796, 5797, 5798, 5799, 5800, + 5801, 5802, 5466, 5466, 5805, 5806, 5807, 5808, + 5809, 5810, 5811, 5468, 5468, 5814, 5815, 5816, + 5817, 5818, 5819, 5471, 5471, 5822, 5823, 5824, + 5825, 5826, 5827, 5828, 5829, 5830, 5831, 5832, + 5833, 5834, 5835, 5836, 5837, 5838, 5839, 5840, + 2057, 2058, 5843, 5844, 5845, 5846, 5847, 5848, + 5849, 5850, 5851, 5852, 5853, 5854, 5855, 5856, + 5857, 5858, 5859, 5860, 32767, 32767, 5861, 5862, + 5863, 5864, 5865, 5866, 5867, 5868, 5869, 5870, + 5871, 5872, 5873, 5874, 5875, 5876, 5877, 5878, + 5879, 5880, 5881, 5882, 5883, 5884, 5885, 5886, + 5887, 5888, 5889, 5890, 5891, 5892, 5893, 5894, + 5895, 5896, 5897, 5898, 5899, 5900, 5901, 5902, + 5903, 5904, 5905, 5906, 5907, 5908, 5909, 5910, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 890, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 891, 32767, 32767, 32767, + 32767, 32767, 32767, 4620, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 2059, 2060, 2061, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 799, 32767, 32767, 32767, - 32767, 800, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 801, 802, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, - 0, 0, 0, 0, 6545, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 32767, 0, 0, - 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, - -5711, 241, 242, 243, 244, 0, 246, 247, - 248, 249, 250, 251, 252, 0, 0, 0, - 0, 892, 0, 0, 0, 0, 0, 0, - 264, 0, 0, 0, 32767, 32767, 0, 0, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 32767, 32767, 32767, + 4827, 4828, 4829, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2062, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2063, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 893, -266, 895, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 284, 285, 286, 287, 288, 0, 290, 291, - 292, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 0, 0, 0, - 0, 0, 0, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 293, 294, 295, 296, 297, 298, 32767, 32767, - 299, -4082, -4081, -4080, 303, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 32767, 0, 0, 0, 0, - 0, 32767, 0, 32767, 0, 0, 32767, 0, - 0, 32767, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -4245, -4245, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 32767, 32767, 32767, - 32767, 32767, -689, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4621, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -706, - -706, -706, -706, -706, -706, -706, -706, 32767, - 32767, -7551, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 2064, 2065, 2066, + 2067, 2068, 2069, 2070, 2071, 2072, 2073, 2074, + 2075, 2076, 2077, 2078, 2079, 2080, 2081, 2082, + 2083, 2084, 2085, 2086, 2087, 2088, 2089, 2090, + 2091, 2092, 2093, 2094, 2095, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, -4377, -4377, -8024, -8023, -4377, -4377, - -3916, -4377, -4377, -4377, -4377, -4377, -4377, -4377, - 32767, -4378, -4378, -4378, -4378, -4378, -4378, -4378, - -4378, -4378, -4378, -4378, -4378, -4378, -4378, -4378, - -4378, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 150, 1867, 150, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5247, 0, 939, 0, 940, 0, 5518, - 0, 8555, 0, 0, 0, 5253, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 944, - 0, 0, 0, 0, 0, 0, 945, 0, - 946, 0, 0, 947, 948, 0, 949, 950, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -759, 959, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 960, 961, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 5204, 0, 0, 0, - 0, 962, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 963, 964, 0, - 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 4622, 4623, + 4624, 4625, 4626, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 5186, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 2096, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -961,768 +1549,94 @@ Decomp_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 2097, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 2098, + 2099, 2100, 2101, 2102, 2103, 2104, 2105, 2106, + 2107, 2108, 2109, 2110, 2111, 2112, 2113, 2114, + 2115, 2116, 2117, 2118, 2119, 2120, 2121, 2122, + 2123, 2124, 2125, 2126, 2127, 2128, 2129, 2130, + 2131, 2132, 2133, 2134, 2135, 2136, 2137, 2138, + 2139, 2140, 2141, 2142, 2143, 2144, 2145, 2146, + 2147, 2148, 2149, 2150, 2151, 2152, 2153, 2154, + 2155, 2156, 2157, 2158, 2159, 2160, 2161, 2162, + 2163, 2164, 2165, 2166, 2167, 2168, 2169, 2170, + 2171, 2172, 2173, 2174, 2175, 2176, 2177, 2178, + 2179, 2180, 2181, 2182, 2183, 2184, 2185, 2186, + 2187, 2188, 2189, 2190, 2191, 2192, 2193, 2194, + 2195, 2196, 2197, 2198, 2199, 2200, 2201, 2202, + 2203, 2204, 2205, 2206, 2207, 2208, 2209, 2210, + 2211, 2212, 2213, 2214, 2215, 2216, 2217, 2218, + 2219, 2220, 2221, 2222, 2223, 2224, 2225, 2226, + 2227, 2228, 2229, 2230, 2231, 2232, 2233, 2234, + 2235, 2236, 2237, 2238, 2239, 2240, 2241, 2242, + 2243, 2244, 2245, 2246, 2247, 2248, 2249, 2250, + 2251, 2252, 2253, 2254, 2255, 2256, 2257, 2258, + 2259, 2260, 2261, 2262, 2263, 2264, 2265, 2266, + 2267, 2268, 2269, 2270, 2271, 2272, 2273, 2274, + 2275, 2276, 2277, 2278, 2279, 2280, 2281, 2282, + 2283, 2284, 2285, 2286, 2287, 2288, 2289, 2290, + 2291, 2292, 2293, 2294, 2295, 2296, 2297, 2298, + 2299, 2300, 2301, 2302, 2303, 2304, 2305, 2306, + 2307, 2308, 2309, 2310, 2311, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 5256, -4973, -4973, 32767, - 5261, 5262, 5263, 5264, 5265, 5266, 5267, -4974, - -4974, 978, 979, 980, 981, 32767, 982, 983, - 984, 985, 986, 987, 988, 32767, 32767, 32767, - 32767, 1624, 32767, 32767, 32767, 32767, 32767, 32767, - 990, 32767, 32767, 0, 991, 992, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4759, - 4760, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 2312, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -723, -722, -2974, 32767, 996, -719, -168, - -717, -716, -715, 1002, 1003, 1004, -712, -711, - 32767, -710, 1008, 1009, 1010, 1011, -2060, 5892, - 2764, 2764, 2764, 1017, 1018, 1019, 1020, 1021, - 1022, 2567, 1024, 32767, 1025, 1026, 1027, 1028, - 1029, 1030, 1031, 1032, 1033, 1034, 2589, 1036, - 1037, -1729, -1729, -1729, -1729, 1042, 4211, 4211, - 4211, 4211, 4211, 4211, 1049, 1050, 4209, 1427, - 32767, 32767, 32767, 0, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -825, 32767, 32767, - 32767, 32767, 32767, 4718, 4719, 4720, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 4721, 4722, - 4723, 4724, 4725, 4726, 4727, 6291, 6292, 6293, - 4728, 4729, 4730, 4731, 4732, 6299, 6300, -4992, - 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, - 1078, 1079, 1080, 4733, 1082, 4734, 1084, 1085, - 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, - 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, - 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, - 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, - 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, - 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, - 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, - 1142, 1143, 1144, 1145, 1146, 4737, 1148, 4738, - 4739, 1151, 1152, 1153, 1154, 32767, 4740, 4741, - 4742, 1158, 1159, 1160, 1161, 1162, 1163, 1164, - 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, - 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, - 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1188, - 1189, 1190, 1191, 1192, 1193, 1194, 11979, 6272, - 1758, 1758, 1199, 1200, 1201, 1202, 1203, 1204, - 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, - 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, - 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, - 1229, -1074, -1073, 1232, 1233, 1234, 1235, 1236, - 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244, - 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, - 1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260, - 1261, 1262, 1263, 1264, 1265, 1266, 1267, 1268, - 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1276, - 1277, 1278, 1279, 1280, 1281, 1282, 1283, 1284, - 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292, - 1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300, - 1301, 1302, 1303, 1304, 1305, 1306, 1307, 4676, - 4677, 512, 32767, 32767, 32767, 32767, 1683, 1684, - 1685, 1314, 155, 1316, 1317, 1318, 1319, 1320, - 1321, 161, 1323, 1324, 1325, 1326, 1327, 1328, - 1329, 1330, 1331, 1332, 1333, 1334, 1335, 1336, - 1337, 1338, -4375, -4374, -8536, -8536, -8536, -8536, - 1345, 1346, 1444, 1445, 1446, 1447, 1448, -4360, - 1353, 1354, -8525, -5383, 1357, -8524, -8524, -8524, - -8524, -4348, 1363, -2456, 686, 1366, 1367, -8518, - -8518, -7581, 1371, 1372, -5364, 1374, 1375, -4332, - -4331, 1378, 1379, 1380, -4327, -8841, -8841, -8841, - -8841, -8841, -8841, -8841, 1389, 1390, -8843, -8843, - -8843, -8843, -8843, -8843, -8843, -8843, 1399, 1400, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 5957, - 2655, -5028, -5028, 2658, 2659, -3322, -1679, -1679, - -1679, -1679, -1679, -7010, -1679, -1679, -7010, -7010, - -1679, -1679, -1679, -1679, -1679, 32767, 32767, -1681, - -1681, -1681, -1681, -1681, -1681, 32767, 32767, -1683, - -1683, -3290, -3289, -3288, -3287, -3286, -3285, -12842, - 7263, -3282, -499, -9550, -499, -9549, -9549, -9549, - 96, -9549, -9816, -9549, 1704, -9548, -1864, -1863, - -9548, -9548, -3566, -5208, -5207, -5206, -5205, -5204, - 128, -5202, 131, 132, 133, 32767, 32767, -5195, - -3568, -3568, -5190, -5189, -3568, 32767, 32767, -5185, - -5184, -5183, -3570, -5180, 1478, -5179, -3571, 32767, - -3572, 32767, -3573, 32767, 5984, 32767, -3575, 2695, - 2696, 2697, 2698, 2699, 2700, -6944, 2702, 2970, - 2704, 6008, 2706, -4977, -4977, 2709, 2710, -3271, - 1502, -3478, 1504, -3626, -3626, -7766, 6033, 1509, - -3625, -7767, 1512, 1513, 1514, 32767, 32767, -3625, - -3625, -3625, -3625, -3625, -3625, -3625, 1522, -3624, - 1524, 1525, 1526, 1527, 1528, 1529, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3128, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1581, -673, 0, 784, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3025, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, -6843, - -6843, 0, 0, 0, 1619, 1620, 1621, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -2788, 32767, 32767, - 1634, 1635, 1636, 1637, 1638, 1639, 1640, 1641, - 4194, 1643, 1644, 32767, 32767, 32767, 32767, 32767, - 32767, 1352, 32767, 32767, 32767, 32767, 32767, 1646, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 1647, 1648, 1649, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1650, - 32767, 32767, 32767, 1651, 1652, 32767, 1653, 1654, - 32767, 32767, 32767, 32767, 1655, 32767, 1656, 32767, - 32767, 32767, 32767, 399, 399, 32767, 32767, 1657, - 1658, 1659, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 0, 0, 0, 32767, 32767, 32767, 1660, - 32767, 32767, 32767, 32767, 32767, 6619, 32767, 1661, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 5971, 5972, 5973, 5974, 1664, 5975, 6243, 5977, - 9281, 5979, -1704, -1704, 5982, 5983, 2, 4775, - -205, 4777, -353, -353, -4493, 9306, 4782, -352, - -4494, 4785, 4786, 4787, 4788, -350, -350, 6044, - 1691, 6045, 6046, 1694, 6047, 1696, 1697, 6048, - 1699, 6049, 6050, 6051, 6052, 0, 0, 0, - 0, 0, 0, 32767, 0, 0, 0, 0, - 1704, 0, 32767, 0, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 32767, -3338, -3338, - -3338, 0, 32767, 0, 32767, 0, 0, 0, - 32767, 0, 0, 32767, 0, 32767, 32767, 0, - 0, 0, 0, 0, 32767, 0, 32767, 0, - 1705, 1706, 1707, 1708, 1709, 759, 759, 759, - 759, 759, 759, 759, 0, 0, 0, 0, - 0, 3035, 0, 32767, 0, 1719, 10109, 1721, - 1722, 1723, 1724, 1725, 1726, 1727, 1728, 1729, - 1730, 0, 0, 0, 0, 0, 0, 0, - 0, 9764, 6757, 6758, 6759, 8018, 0, 0, - 0, 1720, 1720, 1720, 0, 0, 2557, 2558, - 1720, 0, -1282, 0, -1281, -1281, -1281, 633, - 1720, -1279, -1279, 1720, 4767, 0, 1720, 1720, - 0, 0, 1718, 1718, -3263, 0, 6007, 6008, - -7790, 6010, 6011, 6012, -3266, 1719, 0, 1718, - 0, 1717, 0, -150, 1717, 1717, 1717, 32767, - 1716, 1716, 1716, 3969, 1715, 0, 1716, 1166, - 1716, 1716, 1716, 0, 0, 0, 1717, 1717, - 1717, 1717, 0, 0, 0, 0, 3072, -4879, - -1750, -1749, -1748, 0, 0, 0, 0, 0, - 0, -1544, 0, 1789, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -1554, 0, - 0, 2767, 2768, 2769, 2770, 0, -3168, -3167, - -3166, -3165, -3164, -3163, 0, 0, -3158, -375, - -9426, -375, -9425, 1821, 1822, 218, -9427, 1825, - -9426, 1827, 1828, -1742, -1741, 1878, 1879, 1833, - 1834, 32767, 32767, 32767, 32767, 2642, -4765, -1739, - -1738, 32767, 1835, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 2718, -3491, 3174, 3174, 3174, - -3669, -3669, -3669, -3669, -3669, -5232, -5232, -5232, - -3666, -3666, -3666, -3666, -3666, -5232, -5232, 6061, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -3652, 0, -3651, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -3590, 0, -3589, - -3589, 0, 0, 0, 0, 32767, 1842, 32767, - 32767, 32767, 32767, 1843, 32767, 32767, 1844, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 1845, 32767, - 1846, 32767, 32767, 32767, 32767, 32767, 1847, 1848, - 0, 1849, 1850, 0, 32767, 32767, 0, 0, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 1851, 32767, 32767, 1852, 32767, - 32767, 1853, 32767, 1854, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, -4903, 32767, -6162, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 137, - 1858, 3141, 1860, 3142, 32767, 32767, 1229, 143, - 32767, 32767, 144, -2902, 0, 0, 32767, 32767, - 32767, 32767, 148, 5130, 0, 0, -4140, 9659, - 32767, 0, -4142, 5137, 5138, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 32767, - 0, 5148, 5149, 5150, 5151, 5152, 5153, 4782, - 3623, 3623, 3623, 3623, 3623, 3623, 3623, 3623, - 3623, 3623, 3623, 3623, 3623, 3623, 6751, 3623, - 3623, 3623, 3623, 3623, 3623, 3623, 3623, 3623, - 3623, 3623, 3623, 3623, 32767, 3622, 3622, 3622, - 3622, 32767, 3621, 3621, 3621, 0, 3622, 32767, - 3621, 32767, 32767, 32767, 3618, 3618, 3618, 3618, - 3618, 3618, 3618, 32767, 2944, 0, 4402, 3618, - 3618, 3618, 3618, 3618, 3618, 3618, 3618, 3618, - 3618, 3618, 3618, 3618, 0, 0, 3620, 3620, - 3620, 3620, 3620, 3620, -762, 6646, 3621, 3621, - 3621, 3621, 3621, 3621, 3621, 3621, 3621, 3621, - -3222, -3222, 3621, 3621, 3621, 5240, 5241, 5242, - 0, 0, 3623, 3623, 3623, 0, 3624, 3624, - 3624, 3624, 3624, 3624, 3624, 3624, 836, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -3647, -3646, 0, 0, - 461, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 468, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 0, 32767, 0, 470, 471, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 472, 473, 474, 475, 476, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 775, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 4803, 4804, 7596, 7596, 7596, - 4808, 4809, 4810, 4811, 4812, 4813, 4814, 4815, - 4816, 4817, 4818, 4819, 4820, 4821, 4822, 4823, - 4824, 3988, 3988, 4827, 4828, 7830, 1792, 7832, - 7833, 7834, 5921, 4835, 7835, 7836, 4838, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3036, 6038, 0, - 6040, 6041, 6042, 4129, 3043, 6043, 6044, 3046, - 0, 3048, 3049, 3050, 6046, 6047, 3053, 3054, - 3055, 3056, -1230, 3058, 3059, -1232, -1232, 3062, - 3063, 3064, 3065, 3066, 3067, 3068, 3069, 3070, - 3071, 3072, 3073, 3074, 3075, 3076, 3077, 3078, - 3079, 3080, 3081, 3632, 3083, 3084, 3085, 3086, - 3087, 3088, 3089, 3090, 3091, 3092, 3093, 3094, - 3095, 3096, 3097, 3098, 3099, 3100, 3101, 3102, - 3103, -814, 3105, 3106, 3107, 3108, -6867, 3110, - 3111, 3112, 3113, 9179, 9180, 3116, 3117, 3118, - 3119, -22, 3121, 3122, 3123, 3124, 3125, 3126, - 3127, 3128, 3129, 3130, 2196, 3132, 3133, 2197, - 3135, 3136, 3137, 3138, 3139, 3140, 3141, 3142, - 3143, 3144, -6500, 3146, 3414, 3148, 6452, 3150, - -4533, -4533, 3153, 3154, -2827, -1184, -1184, -1184, - -1184, -1184, -6515, -1184, -1184, -6515, -6515, -1184, - -1184, -1184, -1184, -1184, -1184, -1184, -1184, -1184, - -1184, -1184, -1184, -1184, -1184, -1184, -1184, -1184, - -2791, -2790, -2789, -2788, -2787, -2786, -12343,7762, - -2783, 0, -9051, 0, -9050, -9050, -9050, 595, - -9050, -9317, -9050, 2203, -9049, -1365, -1364, -9049, - -9049, -3067, -4709, -4708, -4707, -4706, -4705, 627, - -4703, 630, 631, 632, -3067, -3067, -4694, -3067, - -3067, -4689, -4688, -3067, 3131, -4683, -4682, -4681, - -4680, -3067, -4677, 1981, -4676, -3068, -3068, -3068, - -3068, -3068, -3068, 6490, -13614,-3068, 3202, 3203, - 3204, 3205, 3206, 3207, -6437, 3209, 3477, 3211, - 6515, 3213, -4470, -4470, 3216, 3217, -2764, 2009, - -2971, 2011, -3119, -3119, -7259, 6540, 2016, -3118, - -7260, 2019, 2020, 2021, 2022, -3116, -3116, 3278, - 3279, 3280, 3281, 3282, 3283, 3284, 3285, 3286, - 3287, 3288, 3289, 3290, 3291, 32767, 3292, 3293, - -869, -869, -869, -869, 9107, 9108, 9109, 9110, - 9111, 9112, 9113, 3305, 32767, 32767, -863, 32767, - -864, 32767, 32767, -866, -866, 3310, 3311, -864, - -864, -864, 71, -864, -864, 32767, 72, 32767, - 2290, 32767, 32767, 3320, 3321, 32767, 32767, 32767, - 3322, -1192, -1192, -1192, -1192, -1192, -1192, -1192, - -1192, -1192, -1192, -1192, -1192, -1192, -1192, -1192, - -1192, -1192, -1192, -1192, -1192, -1192, -1192, -1192, - -1192, -1192, -1192, -1192, -1192, -1192, -1192, -1192, - -1192, -1192, -1192, -1192, -1192, -1192, -1192, -1192, - -1192, -1192, -1192, 3365, 3366, 3367, -1189, -1189, - -1189, -1189, -1189, -1189, 3374, 3375, -1187, -1187, - -1187, -1187, -1187, -1187, 3382, 3383, -1185, -1185, - -1185, -1185, -1185, -1185, 32767, 32767, -1185, -1185, - -1185, 3393, 3394, 3395, -1182, 3397, 3398, 3399, - 3400, 3401, 3402, 1274, 1274, 3405, -5404, 3407, - 3408, 3409, 3410, 1274, 1274, 1274, 1274, 1274, - 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, - 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, - 3432, 3433, 3434, 3435, 3436, 3437, 3438, 3439, - 3440, 3441, 3442, 3443, 3444, 3445, 3446, 3447, - 3448, 3449, 3450, 3451, 3452, 3453, 3454, 3455, - -1138, -1138, -1138, -1138, -1138, 3461, 3462, 3299, - 3464, 3465, 3466, 3467, 3468, 3469, 3470, 3471, - 3472, 3473, 3474, 3475, 3476, 3477, 3478, 3479, - 3480, 3481, 3482, 3483, 3484, 3485, 3486, 3487, - 3488, 3489, 3490, 3491, 3492, 3493, 3494, 3495, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3496, - 3497, 3498, 3499, 3500, 3501, 3502, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 3503, 3211, 3211, 3211, 3211, 32767, - 32767, 32767, 32767, 32767, 7590, 7590, 7590, 3208, - 3512, 3513, 3514, 3515, 3516, 3517, 3518, 3519, - 3520, 3521, 3522, 3523, 3524, 3525, 3526, 3527, - 3528, 3529, 3530, 3531, 3532, 3533, 32767, 3534, - 3535, 3536, 3537, 3538, 32767, 3539, 32767, 3540, - 3541, 32767, 3542, 3543, 32767, 3544, 3545, 3546, - 3547, 3548, 3549, 3550, 3551, 3552, 3553, 3554, - 3555, 3556, 3557, 3558, 3559, 3560, 3561, 3562, - 3563, 3564, 3565, 3566, 3567, 3568, 3569, 3570, - 3571, 3572, 3573, 3574, 3575, 3576, 3577, 3578, - 3579, 3580, 3581, 3582, 3583, 3584, 3585, 3586, - 3587, 3588, 3589, 3590, 3591, 3592, 3593, 3594, - 3595, 3596, 3597, 3598, 3599, 3600, 3601, 3602, - 3603, 3604, 3605, 3606, 3607, 3608, 3609, 3610, - 3611, 3612, 3613, 3614, 3615, 3616, 3617, 3618, - 3619, 3620, 3621, 3622, 3623, 3624, 3625, 3626, - 3627, 3628, 3629, 3630, 3631, 3632, 3633, 3634, - 3635, 3636, 3637, 3638, 3639, 3640, 3641, 3642, - 3643, 3644, 3645, 3646, 3647, 3648, 3649, 3650, - 3651, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 3652, 3653, 3654, 3655, 3656, 3657, - 3658, 3659, 3660, 3661, 3662, 3663, 3664, 3665, - 3666, 3667, 3668, 3669, 3670, 3671, 3672, 3673, - 3674, 3675, 3676, 3677, 3678, 3679, 3680, 3681, - 3682, 3683, 3684, 3685, 3686, 3687, 3688, 3689, - 3690, 3691, 3692, 3693, 3694, 3695, 3696, 32767, - 3244, 3698, 3699, 3700, 3701, 3702, 4131, 3704, - 3251, 3251, 3707, 3252, 3709, 3710, 3711, 3255, - 3713, 3714, 3715, 3716, 3259, 3259, 3259, 3720, - 3721, 3722, 3723, 3724, 3725, 3726, 3727, 3728, - 3729, 3730, 3731, 3732, 0, 0, 3735, 3736, - 3737, 3738, 3739, 3740, 3741, 3742, 3743, 3744, - 3745, 3746, 3747, 3748, 3749, 3750, 3751, 3752, - 3753, 3754, 3755, 3756, 3757, 3758, 3759, 3760, - 3761, 3300, 3763, 3764, 3765, 3766, 3767, 3768, - 3769, 3770, 3771, 3772, 3773, 3774, 3775, 3776, - 3777, 3778, 3779, 3780, 3781, 3782, 3783, 3784, - 3322, 3322, 3787, 3323, 3789, 3790, 3791, 3326, - 3793, 3794, 3795, 3796, 3330, 3798, 3330, 3800, - 3801, 3802, 3803, 3804, 3805, 3806, 3807, 3808, - 3809, 3810, 3811, 3812, 3813, 3814, 3815, 3816, - 3817, 3818, 3819, 3820, 3821, 3822, 3823, 3824, - 3825, -1667, 3827, 3828, 3829, 3830, 3831, 3832, - 3833, 3834, 3835, 3836, 3837, 3838, 3839, 3840, - 3841, 3842, 3843, 3844, -1685, 3846, 3847, 3848, - 3849, 3850, 3851, 3852, 3853, 3854, 3855, 3856, - 3857, 3858, 3859, 3860, 3861, 3862, 3863, 3864, - 3865, 3866, 3867, 3868, 3869, 3870, 3871, 3872, - 3873, 3874, 3875, 3876, 3877, 3878, 3879, 3880, - 3881, 3882, 3883, 3884, 3885, 3886, 3887, 3888, - 3889, 3890, 3891, 3892, 3893, 3894, 3895, 3896, - 3897, 8237, 8238, 3900, 3901, 3902, 3903, 3904, - 3905, 3906, 3907, 3908, 3909, 3910, 3911, 3912, - 11266, 11267, 11268, 9355, 3917, 3918, 11272, 8274, - 3921, 3922, 3438, 3438, 3438, 3438, 3438, 3438, - 3929, 3930, 3440, 3440, 3440, 3440, 6476, 9478, - 3937, 3938, 9483, 9484, 7571, 6485, 9485, 9486, - 6488, 3442, 6490, 6491, 6492, 9488, 3951, 3952, - 32767, -866, -866, -866, -866, -866, -866, -29, - -28, -866, -866, -3867, 2172, -3867, -3867, -3867, - -1953, -866, -3865, -3865, -866, 3973, 3974, 3975, - 3976, 3977, 3978, 3979, 3980, 3981, 3982, 3983, - 3984, 3985, 3986, 951, -2050, 3989, -2050, -2050, - -2050, -136, 951, -2048, -2048, 951, 3998, 951, - 951, 951, -2044, -2044, 951, 951, 951, 951, - 5238, 951, 951, 5243, 5244, 951, 951, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 383, 933, 933, 933, 933, 933, 933, - 933, 933, 933, 933, 933, 933, 933, 933, - 933, 933, 933, 933, 933, 933, 933, 4851, - 933, 933, 933, 933, 10909, 933, 933, 933, - 933, -5132, -5132, 933, 933, 933, 933, 4075, - 933, 933, 933, 933, 933, 933, 933, 933, - 933, 933, 1868, 933, 933, 1870, 933, 933, - 933, 933, 933, 933, 933, 933, 933, 933, - 10578, 0, 32767, 931, -2372, 931, 8615, 8616, - 931, 931, 6913, 5271, 5272, 5273, 5274, 5275, - 10607, 5277, 5278, 10610, 10611, 5281, 5282, 5283, - 5284, 5285, 5286, 5287, 5288, 5289, 5290, 5291, - 5292, 5293, 5294, 5295, 5296, 5297, 6905, 6905, - 6905, 6905, 6905, 6905, 16463, -3641, 6905, 4123, - 13175, 4125, 13176, 13177, 13178, 3534, 13180, 13448, - 13182, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 0, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -2357, 17748, 7203, 934, 934, 934, 934, - 934, 934, 10579, 934, 667, 934, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 4146, 4147, 4148, 4149, 4150, 4151, - 4152, 4153, 4154, 4155, 32767, 32767, 32767, 32767, - 32767, 32767, 4156, 4157, 4158, 4159, 4160, 4161, - 4162, 4163, 4164, 4165, 4166, 4167, 4168, 4169, - 4170, 4171, 4172, 4173, 4174, 4175, 4176, 4177, - 4178, 4179, 4180, 4181, 4182, 5374, 5375, 5376, - 6978, 4187, 4188, 4189, 4190, 6982, 6982, 32767, - 32767, 4193, 4194, 4195, 4196, 4197, 4198, 4199, - 4200, 4201, 4202, 4203, 4204, 32767, 6995, 6995, - 4207, 4208, 4209, 4210, 4211, 4212, 4213, 4214, - 4215, 4216, 4217, 4218, 4219, 4220, 4221, 4222, - 4223, 32767, 3386, 4225, 4226, 7228, 32767, 32767, - 32767, 32767, 5315, 4229, 7229, 32767, 4231, 32767, - 4232, 4233, 4234, 7230, 7231, 4237, 4238, 4239, - 4240, -46, 4242, 4243, -48, -48, 4246, 4247, - 4248, 4249, 4250, 4251, 4252, 4253, 4254, 4255, - 4256, 4257, 4258, 4259, 4260, 4261, 4262, 4263, - 4264, 4265, 4816, 4267, 4268, 4269, 4270, 4271, - 4272, 4273, 4274, 4275, 4276, 4277, 4278, 4279, - 4280, 4281, 4282, 4283, 4284, 4285, 4286, 4287, - 370, 4289, 4290, 4291, 4292, -5683, 4294, 4295, - 4296, 4297, 10363, 10364, 4300, 4301, 4302, 4303, - 1162, 4305, 4306, 4307, 4308, 4309, 4310, 4311, - 4312, 4313, 4314, 3380, 4316, 4317, 3381, 4319, - 4320, 4321, 4322, 4323, 4324, 4325, 4326, 4327, - 4328, -5316, 4330, 4598, 4332, 7636, 4334, -3349, - -3349, 4337, 4338, -1643, 0, 0, 0, 0, - 0, -5331, 0, 0, -5331, -5331, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 4126, - 4127, 4128, 4129, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, -1258, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - -1272, -1272, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -1851, -1851, -1851, -1851, - -1851, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3235, 0, -6925, 306, - 306, 306, 306, 306, 306, 306, 306, 306, - 306, 306, 306, -1764, -1764, 4472, 4473, 311, - 311, 311, 311, 10287, 10288, 10289, 10290, 10291, - 10292, 10293, 4485, 10198, 319, 319, 3461, 319, - 319, 319, 319, 319, 4495, 4496, 321, 321, - 321, 1256, 321, 321, 1258, 1258, 0, 3477, - 10215, 10216, 4509, 4510, 10219, 10220, 10221, 4514, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 4579, 4580, 4581, 4582, - 4583, 4584, 32767, 2455, 4586, -4223, 4588, 4589, - 4590, 4591, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 4885, 4886, 4887, - 4888, 4889, 4890, 4891, 4892, 4893, 4894, 4895, - 4896, 4897, 4898, 4899, 4900, 4901, 4902, 4903, - 4904, 4616, 4906, 4907, 4908, 4909, 4910, 4911, - 4912, 4913, 4914, 4915, 4916, 4917, 4918, 4919, - 4920, 4921, 4922, 4923, 4924, 4925, 4926, 4927, - 4928, 4929, 4930, 4931, 4932, 4933, 4934, 4935, - 4936, 4937, 4938, 4939, 4940, 4941, 4942, 4943, - 4944, 4945, 4946, 4947, 4948, 567, 568, 569, - 4952, -2455, 571, 572, 4956, 4957, 4958, 4959, - 4960, 4961, 4962, 4963, 4964, 4965, 4966, 4967, - 4968, 4969, 32767, 4970, 4971, 4972, 4973, 4974, - 4975, 4976, 4977, 4978, 4979, 4980, 6623, 6623, - 6623, 6623, 6623, 1292, 6623, 1291, 1291, 1291, - 4991, 4992, 6620, 4994, 4995, 6618, 6618, 4998, - -1199, 6616, 6616, 6616, 6616, 5004, 6615, 6615, - 6615, 5008, 5009, 5010, 5011, 5012, 5013, -4544, - 15561, 5016, -1253, -1253, -1253, -1253, -1253, -1253, - 8392, -1253, -1520, -1253, -4556, -1253, 6431, 6432, - -1253, -1253, 4729, 3087, 3088, 3089, 3090, 3091, - 8423, 3093, 3094, 8426, 8427, 3097, 3098, 3099, - 3100, 3101, 3102, 3103, 3104, 3105, 3106, 3107, - 3108, 3109, 3110, 3111, 3112, 3113, 4721, 4721, - 4721, 4721, 4721, 4721, 14279, -5825, 4721, 1939, - 10991, 1941, 10992, 10993, 10994, 1350, 10996, 11264, - 10998, -254, 10999, 3316, 3316, 11002, 11003, 5022, - 6665, 6665, 6665, 6665, 6665, 1334, 6665, 1333, - 1333, 1333, 5033, 5034, 6662, 5036, 5037, 6660, - 6660, 5040, -1157, 6658, 6658, 6658, 6658, 5046, - 6657, 0, 6658, 5051, 5052, 5053, 5054, 5055, - 5056, -4501, 15604, 5059, -1210, -1210, -1210, -1210, - -1210, -1210, 8435, -1210, -1477, -1210, -4513, -1210, - 6474, 6475, -1210, -1210, 4772, 0, 4981, 0, - 5131, 5132, 9273, -4525, 0, 5135, 9278, 0, - 0, 0, 0, 5139, 5140, 5141, 5142, 5143, - 5144, 5145, 5146, 0, 5147, 0, 0, 0, - 0, 0, 0, 1530, 1531, 1532, 1533, 1534, - 1535, 1536, 1537, 1538, 1539, 1540, 1541, 1542, - 1543, 1544, -1583, 1546, 1547, 1548, 1549, 1550, - 1551, 1552, 1553, 1554, 1555, 1556, 1557, 1558, - 1559, 1560, 1561, 1562, 1563, 1564, 1565, 1566, - 1567, 5189, 1568, 1569, 1570, 1571, 1572, 1573, - 1574, 1575, 1576, 1577, 1578, 1579, 1580, 0, - 2255, 5200, 799, 1584, 1585, 1586, 1587, 1588, - 1589, 1590, 1591, 1592, 1593, 1594, 1595, 1596, - 5215, 5216, 1597, 1598, 1599, 1600, 1601, 1602, - 5985, -1422, 1604, 1605, 1606, 1607, 1608, 1609, - 1610, 1611, 1612, 1613, 8457, 8458, 1616, 1617, - 1618, 0, 0, 0, 5243, 5244, 1622, 1623, - 1624, 5248, 1625, 1626, 1627, 1628, 1629, 1630, - 1631, 1632, 4421, 5258, 5259, 5260, 5261, 5262, - 5263, 5264, 5265, 5266, 5267, 5268, 5269, 5270, - 5271, 5272, 5273, 5274, 5275, 5276, 5277, 5278, - 5279, 5280, 5281, 5282, 5283, 5284, 5285, 5286, - 8934, 8934, 5289, 5290, 4830, 5292, 5293, 5294, - 5295, 5296, 5297, 5298, 5299, 5300, 5301, 5302, - 5303, 5304, 5305, 5306, 5307, 5308, 5309, 5310, - 5311, 5312, 5313, 5314, 5315, 5316, 5317, 5318, - 5319, 5320, 5321, 5322, 5323, 5324, 5325, 5326, - 5327, 5328, 5329, 5330, 5331, 5332, 5333, 5334, - 5335, 5336, 5337, 5338, 5339, 5340, 5341, 5342, - 5343, 5344, 5345, 5346, 5347, 5348, 5349, 5350, - 5351, 5352, 5353, 5354, 5355, 5356, 5357, 5358, - 4891, 5360, 5361, 5362, 5363, 5364, 5365, 5366, - 5367, 5368, 5369, 5370, 5371, 5372, 32767, 5373, - 5374, -5231, 5376, 4532, 0, 5379, 5380, 5381, - 5382, 4270, 4271, 4272, 4273, 4274, 4275, 4276, - 4277, 4278, 12230, 9102, 9102, 9102, 5396, 8890, - 5398, 5399, 5400, 5401, 8899, 7356, 5568, 7358, - 7359, 0, 0, 7364, 7365, 7366, 7367, 7368, - 7369, 8924, 7371, 7372, 4606, 4606, 4606, 4606, - 7377, 10546, 10546, 10546, 10546, 10546, 10546, 20104, - 0, 10546, 7764, 16816, 7766, 16817, 5572, 5572, - 7177, 16823, 17091, 16825, 5573, 5573, 9144, 9144, - 5526, 0, 5574, 5574, 5450, 5451, 5452, 697, - 697, 5455, 0, 7172, 5458, 5576, 5460, -5456, - 5462, 5463, 5464, 0, 0, 4691, 5468, 5469, - 4693, 5471, 10898, 0, 0, 5475, 4698, 10908, - 5478, 5479, 5480, 5481, 1359, 1359, 1359, 5485, - 5486, 5487, 5488, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 101, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 87, 87, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, -492, -492, -492, -492, - -492, 1359, 1359, 1359, 1359, 1359, 1359, 1359, - 1359, 1359, 1359, 1359, 4594, 1359, -5566, 1665, - 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, - 1665, 1665, 1665, -405, -405, 5585, 5586, 1668, - 1668, 1668, 1668, 11644, 11645, 11646, 11647, 11648, - 11649, 11650, 5842, 11555, 1676, 1676, 4818, 1676, - 1676, 1676, 1676, 1676, 5852, 5853, 1678, 1678, - 1678, 2613, 1678, 1678, 2615, 2615, 1357, 4834, - 11572, 11573, 5866, 5867, 11576, 11577, 11578, 5871, - 1357, 1357, 1357, 1357, 1357, 1357, 1357, 1357, - 1357, -6594, -3465, -3464, -3463, 244, -3249, 244, - 244, 244, 244, -3253, -1709, 80, -1709, -1709, - 5651, 5652, -1711, -1711, -1711, -1711, -1711, -1711, - -3265, -1711, -1711, 1056, 1057, 1058, 1059, -1711, - -4879, -4878, -4877, -4876, -4875, -4874, -14431,5674, - -4871, -2088, -11139,-2088, -11138,108, 109, -1495, - -11140,-11407,-11140,113, 114, -3456, -3455, 164, - 5691, 118, 119, 244, 244, 244, 5000, 5001, - 244, 5700, -1471, 244, 127, 244, 11161, 244, - 244, 244, 5709, 5710, 1020, 244, 244, 1021, - 244, -5182, 5717, 5718, 244, 1022, -5187, 244, - 244, 244, 244, 4367, 4368, 4369, 244, 244, - 244, 244, 4374, 4375, 4376, 4377, 4378, 4379, - 4380, 4381, 4382, 4383, 4384, 4385, 4386, 4387, - 5646, 4389, 4390, 4391, 4392, 4393, 4394, 4395, - 4396, 4397, 4398, 4399, 4400, 4401, 4402, 5675, - 5676, 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, 6290, 6291, 6292, 6293, 6294, - 4444, 4445, 4446, 4447, 4448, 4449, 4450, 4451, - 4452, 4453, 4454, 1220, 4456, 11382, 4152, 4153, - 4154, 4155, 4156, 4157, 4158, 4159, 4160, 4161, - 4162, 4163, 6234, 6235, 0, 0, 4163, 4164, - 4165, 4166, -5809, -5809, -5809, -5809, -5809, -5809, - -5809, 0, -5712, 4168, 4169, 1028, 4171, 4172, - 4173, 4174, 4175, 0, 0, 4176, 4177, 4178, - 3244, 4180, 4181, 3245, 3246, 4505, 1029, -5708, - -5708, 0, 0, -5708, -5708, -5708, 0, 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, 0, 0, 0, 4557, 4558, 4559, 4560, - 4561, 4562, 0, 0, 4563, 4564, 4565, 4566, - 4567, 4568, 0, 0, 4569, 4570, 4571, 4572, - 4573, 4574, 2114, 2115, 4575, 4576, 4577, 0, - 0, 0, 4578, 0, 0, 0, 0, 0, - 0, 2129, 2130, 0, 8810, 0, 0, 0, - 0, 2137, 2138, 2139, 2140, 2141, 2142, 2143, - 2144, 2145, 2146, 2147, 2148, 2149, 2150, 2151, - 2152, 2153, 2154, 2155, 2156, 2157, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 4594, 4595, - 4596, 4597, 4598, 0, 0, 164, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2222, 2223, - 2224, 2225, 2226, 2227, 2228, 2229, 2230, 2231, - 2232, 2233, 2234, 2235, 2236, 2237, 2238, 2239, - 2240, 2241, 2242, 2243, 2244, 2245, 2246, 2247, - 2248, 2249, 2250, 2251, 2252, 2253, 2254, 2255, - 2256, 2257, 2258, 2259, 2260, 2261, 2262, 2263, - 2264, 2265, 2266, 2267, 2268, 2269, 2270, 705, - 706, 707, 708, 709, 2276, 2277, 2278, 2279, - 2280, 2281, 2282, 2283, 2284, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 2285, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 2286, 2287, 2288, 2289, 2290, 2291, - 32767, 32767, 32767, 32767, 32767, 32767, 2292, 32767, - 2293, 2294, 2295, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 2296, 32767, 2297, 32767, - 2298, 32767, 2299, 32767, 2300, 32767, 2301, 32767, - 2302, 32767, 2303, 32767, 2304, 32767, 2305, 32767, - 2306, 32767, 2307, 32767, 32767, 2308, 32767, 2309, - 32767, 2310, 32767, 32767, 32767, 32767, 32767, 32767, - 2311, 2312, 32767, 2313, 2314, 32767, 2315, 2316, - 32767, 2317, 2318, 32767, 2319, 2320, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 2321, 32767, 32767, 32767, - 32767, 2322, 2323, 2324, 2325, 32767, 2326, 2327, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 2328, 32767, 2329, 32767, - 2330, 32767, 2331, 32767, 2332, 32767, 2333, 32767, - 2334, 32767, 2335, 32767, 2336, 32767, 2337, 32767, - 2338, 32767, 2339, 32767, 32767, 2340, 32767, 2341, - 32767, 2342, 32767, 32767, 32767, 32767, 32767, 32767, - 2343, 2344, 32767, 2345, 2346, 32767, 2347, 2348, - 32767, 2349, 2350, 32767, 2351, 2352, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 2353, 32767, 32767, 2354, - 2355, 2356, 2357, 32767, 32767, 32767, 2358, 2359, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 2360, 2361, 2362, 2363, 2364, 2365, - 2366, 2367, 2368, 2369, 2370, 2371, 2372, 2373, - 2374, -753, 2376, 2377, 2378, 2379, 2380, 2381, - 2382, 2383, 2384, 2385, 2386, 2387, 2388, 2389, - 2390, 2391, 2392, 2393, 2394, 2395, 2396, 2397, - 2398, 2399, 2400, 2401, 2402, 2403, 2404, 2405, - 2406, 2407, 2408, 2409, 2410, 2411, 831, 3086, - 2414, 1631, 2416, 2417, 2418, 2419, 2420, 2421, - 2422, 2423, 2424, 2425, 2426, 2427, 2428, 2429, - 2430, 2431, 2432, 2433, 2434, 2435, 2436, 2437, - -587, 2439, 2440, 2441, 2442, 2443, 2444, 2445, - 2446, 2447, 2448, 9292, 9293, 2451, 2452, 2453, - 32767, 32767, 32767, 2454, 2455, 2456, 2457, 2458, - 2459, 2460, 2461, 2462, 2463, 2464, 2465, 2466, - 2467, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 4599, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 4600, 32767, + 32767, 32767, 2313, 2314, 2315, 2316, 2317, 2318, + 32767, 32767, 32767, 32767, 32767, 32767, 2319, 32767, + 2320, 2321, 2322, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2323, 32767, 2324, 32767, + 2325, 32767, 2326, 32767, 2327, 32767, 2328, 32767, + 2329, 32767, 2330, 32767, 2331, 32767, 2332, 32767, + 2333, 32767, 2334, 32767, 32767, 2335, 32767, 2336, + 32767, 2337, 32767, 32767, 32767, 32767, 32767, 32767, + 2338, 2339, 32767, 2340, 2341, 32767, 2342, 2343, + 32767, 2344, 2345, 32767, 2346, 2347, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2348, 32767, 32767, 32767, + 32767, 2349, 2350, 2351, 2352, 32767, 2353, 2354, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 2468, -1450, 2470, 2471, 2472, 2473, - 2474, 2475, 2476, 2477, 2478, 2479, 2480, 2481, - 2482, 2483, 2484, 2485, 2486, 2487, 2488, 2489, - 2490, 2491, 2492, 2493, 2494, 2495, 2496, 2497, - 2498, 32767, 2499, 2500, 2501, 2502, 2503, 2504, - 2505, 2506, 2507, 2508, 2509, 2510, 2511, 2512, - 2513, 2514, 2515, 2516, 2517, 2518, 2519, 2520, - 2521, 2522, 2523, 2524, 2525, 2526, 2527, 2528, - 2529, 2530, 2531, 2532, 2533, 2534, 2535, 2536, - 2537, 2538, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 2539, 2540, 5896, 2542, 2543, 2544, - 2545, 548, 2547, 2548, 2549, 2550, 2551, 2552, - 5919, 5920, 5921, 2556, 2557, 5926, 2559, 2560, - 2561, 2562, 2563, 2564, 2565, 2566, 2567, 2568, - 2569, 2570, 2571, 2572, 2573, 2574, 2575, 2576, - 2577, 2578, 2579, 2580, 2581, 2582, 2583, 2584, - 2585, 32767, 2586, 2587, 2588, 2589, 2590, 2591, - 2592, 2593, 2594, 2595, 2596, 2597, 2598, 2599, - 2600, 2601, 2602, 2603, 2604, 2605, 2606, 2607, - 2608, 2609, 2610, 2611, 2612, 2613, 2614, 2615, - 2616, 2617, 2618, 2619, 2620, 2621, 2622, 2623, - 2624, 2625, 2626, 2627, 2628, 2629, 2630, 2631, - 2632, 2633, 2634, 2635, 2636, 2637, 2638, 2639, - 2640, 2641, 2642, 2643, 2644, 2645, 2646, 2647, - 2648, 2649, 2650, 2651, 2652, 2653, 2654, 2655, - 2656, 2657, 2658, 2659, 2660, 2661, -703, 2663, - 2664, 2665, 2666, 2667, 2668, 2669, 2670, 2671, - 2672, 2673, 2674, 1999, 2676, 2677, 2678, 2679, - 2680, 2681, 2682, 2683, 2684, 2685, 2686, 2687, - 2688, 2689, 2690, 2014, 2692, 2693, 2694, 2695, - 2696, 2697, 2698, 2699, 2700, 2701, 2702, 2703, - 2704, 2705, 2706, 2707, 2708, 2709, -11089,2711, - 2712, 2713, 32767, 2714, 2715, 2716, 2717, 2718, - 8050, 2720, 2721, 8053, 8054, 2724, 2725, 2726, - 2727, 2728, 2729, 2730, 2731, 2732, 2733, 2734, - 2735, 2736, 2737, 2738, 2739, 2740, 2741, 2742, - 2743, 2744, 2745, 2746, 2747, 2748, -1377, -1377, - -1377, -1377, 2753, 2754, 2755, 2756, 2757, 2758, - 2759, 2760, 2761, 2762, 2763, 2764, 2765, 2766, - 4025, 2768, 2769, 2770, 2771, 2772, 2773, 2774, - 2775, 2776, 2777, 2778, 2779, 2780, 2781, 4054, - 4055, 2784, 2785, 2786, 2787, 2788, 2789, 2790, - 2791, 2792, 2793, 2794, 2795, 2796, 2797, 2798, - 2799, 2800, 2801, 2802, 2803, 2804, 2805, 2806, - 2807, 2808, 2809, 2810, 2811, 2812, 2813, 2814, - 2815, 2816, 2817, 4669, 4670, 4671, 4672, 4673, - 2823, 2824, 2825, 2826, 2827, 2828, 2829, 2830, - 2831, 2832, 2833, -401, 2835, 9761, 2531, 2532, - 2533, 2534, 2535, 2536, 2537, 2538, 2539, 2540, - 2541, 2542, 4613, 4614, -1621, -1621, 2542, 2543, - 2544, 2545, -7430, -7430, -7430, -7430, -7430, -7430, - -7430, -1621, -7333, 2547, 2548, -593, 2550, 2551, - 2552, 2553, 2554, -1621, -1621, 2555, 2556, 2557, - 1623, 2559, 2560, 1624, 1625, 2884, -592, -7329, - -7329, -1621, -1621, -7329, -7329, -7329, -1621, 2894, - 2895, 2896, 2897, 2898, 2899, 2900, 2901, 2902, - 2903, 2904, 2905, 2906, 2907, 2908, 2909, 2910, - 2911, 2912, 2913, 2914, 2915, 2916, 2917, 2918, - 2919, 2920, 2921, 2922, 2923, 2924, 2925, 2926, - 2927, 2928, 2929, 2930, 2931, 2932, 2933, 2934, - 2935, 2936, 2937, 2938, 2939, 2940, 2941, 2942, - 2943, 2944, 2945, 2946, 2947, 2948, 2949, 2950, - 2951, 2952, 2953, 2954, 2955, 2956, 2957, 2958, - 2959, 2960, 2961, 2962, 2963, 2964, 2965, 2966, - 2967, 2968, 2969, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 4627, 2355, 32767, 2356, 32767, + 2357, 32767, 2358, 32767, 2359, 32767, 2360, 32767, + 2361, 32767, 2362, 32767, 2363, 32767, 2364, 32767, + 2365, 32767, 2366, 32767, 32767, 2367, 4628, 2368, + 32767, 2369, 32767, 32767, 32767, 32767, 32767, 32767, + 2370, 2371, 32767, 2372, 2373, 32767, 2374, 2375, + 32767, 2376, 2377, 32767, 2378, 2379, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2380, 32767, 32767, 2381, + 2382, 2383, 2384, 32767, 32767, 32767, 2385, 2386, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 0, 0, 0, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 2387, 2388, 2389, 2390, 2391, 2392, + 2393, 2394, 2395, 2396, 2397, 2398, 2399, 2400, + 2401, 2402, 2403, 2404, 2405, 2406, 2407, 2408, + 2409, 2410, 2411, 2412, 2413, 2414, 2415, 2416, + 2417, 2418, 2419, 2420, 2421, 2422, 2423, 2424, + 2425, 2426, 2427, 2428, 2429, 2430, 2431, 2432, + 2433, 2434, 2435, 2436, 2437, 2438, 2439, 2440, + 2441, 2442, 2443, 2444, 2445, 2446, 2447, 2448, + 2449, 2450, 2451, 2452, 2453, 2454, 2455, 2456, + 2457, 2458, 2459, 2460, 2461, 2462, 2463, 2464, + 2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, + 2473, 2474, 2475, 2476, 2477, 2478, 2479, 2480, + 32767, 32767, 32767, 2481, 2482, 2483, 2484, 2485, + 2486, 2487, 2488, 2489, 2490, 2491, 2492, 2493, + 2494, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -1734,25 +1648,120 @@ Decomp_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 2495, 2496, 2497, 2498, 2499, 2500, + 2501, 2502, 2503, 2504, 2505, 2506, 2507, 2508, + 2509, 2510, 2511, 2512, 2513, 2514, 2515, 2516, + 2517, 2518, 2519, 2520, 2521, 2522, 2523, 2524, + 2525, 32767, 2526, 2527, 2528, 2529, 2530, 2531, + 2532, 2533, 2534, 2535, 2536, 2537, 2538, 2539, + 2540, 2541, 2542, 2543, 2544, 2545, 2546, 2547, + 2548, 2549, 2550, 2551, 2552, 2553, 2554, 2555, + 2556, 2557, 2558, 2559, 2560, 2561, 2562, 2563, + 2564, 2565, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 2566, 2567, 2568, 2569, 2570, 2571, + 2572, 2573, 2574, 2575, 2576, 2577, 2578, 2579, + 2580, 2581, 2582, 2583, 2584, 4629, 4630, 3460, + 3461, 3462, 2590, 4634, 4635, 4636, 3462, -1012, + -1011, -1010, 2598, 2599, 2600, 2601, 2602, 2603, + 2604, 2605, 2606, 2607, 2608, 2609, 2610, 2611, + 2612, 4656, 2613, 2614, 2615, 2616, 2617, 2618, + 2619, 2620, 2621, 2622, 2623, 2624, 2625, 2626, + 2627, 2628, 2629, 2630, 2631, 2632, 2633, 2634, + 2635, 2636, 2637, 2638, 2639, 2640, 2641, 2642, + 2643, 2644, 2645, 2646, 2647, 2648, 2649, 2650, + 2651, 2652, 2653, 2654, 2655, 2656, 2657, 2658, + 2659, 2660, 2661, 2662, 2663, 2664, 2665, 2666, + 2667, 2668, 2669, 2670, 2671, 2672, 2673, 2674, + 2675, 2676, 2677, 2678, 2679, 2680, 2681, 2682, + 2683, 2684, 2685, 2686, 2687, 2688, 2689, 2690, + 2691, 2692, 2693, 2694, 2695, 2696, 2697, 2698, + 2699, 2700, 2701, 2702, 2703, 2704, 2705, 2706, + 2707, 2708, 2709, 2710, 2711, 2712, 2713, 2714, + 2715, 2716, 2717, 2718, 2719, 2720, 2721, 2722, + 2723, 2724, 2725, 2726, 2727, 2728, 2729, 2730, + 2731, 2732, 2733, 2734, 2735, 2736, 2737, 2738, + 2739, 2740, 32767, 2741, 2742, 2743, 2744, 2745, + 2746, 2747, 2748, 2749, 2750, 2751, 2752, 2753, + 2754, 2755, 2756, 2757, 2758, 2759, 2760, 2761, + 2762, 2763, 2764, 2765, 2766, 2767, 2768, 2769, + 2770, 2771, 2772, 2773, 2774, 2775, 2776, 2777, + 2778, 2779, 2780, 2781, 2782, 2783, 2784, 2785, + 2786, 2787, 2788, 2789, 2790, 2791, 2792, 2793, + 2794, 2795, 2796, 2797, 2798, 2799, 2800, 2801, + 2802, 2803, 2804, 2805, 2806, 2807, 2808, 2809, + 2810, 2811, 2812, 2813, 2814, 2815, 2816, 2817, + 2818, 2819, 2820, 2821, 2822, 2823, 2824, 2825, + 2826, 2827, 2828, 2829, 2830, 2831, 2832, 2833, + 2834, 2835, 2836, 2837, 2838, 2839, 2840, 2841, + 2842, 2843, 2844, 2845, 2846, 2847, 2848, 2849, + 2850, 2851, 2852, 2853, 2854, 2855, 2856, 2857, + 2858, 2859, 2860, 2861, 2862, 2863, 2864, 2865, + 2866, 2867, 2868, 2869, 2870, 2871, 2872, 2873, + 2874, 2875, 2876, 2877, 2878, 2879, 2880, 2881, + 2882, 2883, 2884, 2885, 2886, 2887, 2888, 2889, + 2890, 2891, 2892, 2893, 2894, 2895, 2896, 2897, + 2898, 2899, 2900, 2901, 2902, 2903, 2904, 2905, + 2906, 2907, 2908, 2909, 2910, 2911, 2912, 2913, + 2914, 2915, 2916, 2917, 2918, 2919, 2920, 2921, + 2922, 2923, 2924, 2925, 2926, 2927, 2928, 2929, + 2930, 2931, 2932, 2933, 2934, 2935, 2936, 2937, + 2938, 2939, 2940, 2941, 2942, 2943, 2944, 2945, + 2946, 2947, 2948, 2949, 2950, 2951, 2952, 2953, + 2954, 2955, 2956, 2957, 2958, 2959, 2960, 2961, + 2962, 2963, 2964, 2965, 2966, 2967, 2968, 2969, + 2970, 2971, 2972, 2973, 2974, 2975, 2976, 2977, + 2978, 2979, 2980, 2981, 2982, 2983, 2984, 2985, + 2986, 2987, 2988, 2989, 2990, 2991, 2992, 2993, + 2994, 2995, 2996, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 0, 0, 0, 0, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 32767, 0, 32767, 0, 32767, 0, - 32767, 0, 32767, 0, 32767, 0, 32767, 0, - 32767, 0, 32767, 0, 32767, 0, 32767, 0, - 32767, 32767, 0, 32767, 0, 32767, 0, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 0, 32767, - 0, 0, 32767, 0, 0, 32767, 0, 0, - 32767, 0, 0, 32767, 32767, 32767, 32767 + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 5911, 5912, 5913, 5914, 5915, 5916, 5917, + 32767, 5918, 5919, 5920, 5921, 5922, 5923, 5924, + 5925, 5926, 5927, 5928, 5929, 5930, 5931, 5932, + 5933, 5934, 32767, 32767, 5935, 5936, 5937, 5938, + 5939, 5940, 5941, 32767, 5942, 5943, 32767, 5944, + 5945, 5946, 5947, 5948, 4685, 32767, 4686, 32767, + 32767, 5949, 5950, 5951, 5952, 5953, 5954, 5955, + 5956, 5957, 5958, 5959, 5960, 5961, 5962, 5963, + 5964, 5965, 5966, 5967, 5968, 5969, 5970, 5971, + 5972, 5973, 5974, 5975, 5976, 5977, 5978, 5979, + 5980, 5981, 5982, 5983, 5984, 5985, 5986, 4816, + 4817, 4818, 5990, 5991, 5992, 5993, 4819, 345, + 346, 347, 3955, 3956, 3957, 3958, 3959, 3960, + 3961, 3962, 3963, 3964, 3965, 3966, 3967, 32767, + 32767, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 4642, 0, 0, 0, 0, 32767, 32767, 0, + 1, 0, 2, 0, 0, 0, 0, 3, + 6011, 0, 4, 5, 6, 7, 0, 32767, + 8, 9, 10, 0, 11, 12, 336, 0, + 0, 0, -305, 339, 340, 341, 0, 342, + 343, 0, 0, 346, 25, 347, 348, 349, + 0, 0, 0, 351, 352, 353, 34, 0, + 0, 35, 36, 37, 38, 39, 0, 0, + 152, -284, 154, 155, 156 }; const unsigned char *k = (const unsigned char *) key; @@ -1765,9 +1774,9 @@ Decomp_hash_func(const void *key) unsigned char c = *k++; a = a * 257 + c; - b = b * 8191 + c; + b = b * 127 + c; } - return h[a % 13687] + h[b % 13687]; + return h[a % 13757] + h[b % 13757]; } /* Hash lookup information for decomposition */ @@ -1775,15 +1784,15 @@ static const pg_unicode_decompinfo UnicodeDecompInfo = { UnicodeDecompMain, Decomp_hash_func, - 6843 + 6878 }; /* Inverse lookup array -- contains indexes into UnicodeDecompMain[] */ static const uint16 RecompInverseLookup[961] = { - /* U+003C+0338 -> U+226E */ 1858, - /* U+003D+0338 -> U+2260 */ 1855, - /* U+003E+0338 -> U+226F */ 1859, + /* U+003C+0338 -> U+226E */ 1885, + /* U+003D+0338 -> U+2260 */ 1882, + /* U+003E+0338 -> U+226F */ 1886, /* U+0041+0300 -> U+00C0 */ 14, /* U+0041+0301 -> U+00C1 */ 15, /* U+0041+0302 -> U+00C2 */ 16, @@ -1792,60 +1801,60 @@ static const uint16 RecompInverseLookup[961] = /* U+0041+0306 -> U+0102 */ 69, /* U+0041+0307 -> U+0226 */ 270, /* U+0041+0308 -> U+00C4 */ 18, - /* U+0041+0309 -> U+1EA2 */ 1313, + /* U+0041+0309 -> U+1EA2 */ 1340, /* U+0041+030A -> U+00C5 */ 19, /* U+0041+030C -> U+01CD */ 194, /* U+0041+030F -> U+0200 */ 240, /* U+0041+0311 -> U+0202 */ 242, - /* U+0041+0323 -> U+1EA0 */ 1311, - /* U+0041+0325 -> U+1E00 */ 1155, + /* U+0041+0323 -> U+1EA0 */ 1338, + /* U+0041+0325 -> U+1E00 */ 1182, /* U+0041+0328 -> U+0104 */ 71, - /* U+0042+0307 -> U+1E02 */ 1157, - /* U+0042+0323 -> U+1E04 */ 1159, - /* U+0042+0331 -> U+1E06 */ 1161, + /* U+0042+0307 -> U+1E02 */ 1184, + /* U+0042+0323 -> U+1E04 */ 1186, + /* U+0042+0331 -> U+1E06 */ 1188, /* U+0043+0301 -> U+0106 */ 73, /* U+0043+0302 -> U+0108 */ 75, /* U+0043+0307 -> U+010A */ 77, /* U+0043+030C -> U+010C */ 79, /* U+0043+0327 -> U+00C7 */ 20, - /* U+0044+0307 -> U+1E0A */ 1165, + /* U+0044+0307 -> U+1E0A */ 1192, /* U+0044+030C -> U+010E */ 81, - /* U+0044+0323 -> U+1E0C */ 1167, - /* U+0044+0327 -> U+1E10 */ 1171, - /* U+0044+032D -> U+1E12 */ 1173, - /* U+0044+0331 -> U+1E0E */ 1169, + /* U+0044+0323 -> U+1E0C */ 1194, + /* U+0044+0327 -> U+1E10 */ 1198, + /* U+0044+032D -> U+1E12 */ 1200, + /* U+0044+0331 -> U+1E0E */ 1196, /* U+0045+0300 -> U+00C8 */ 21, /* U+0045+0301 -> U+00C9 */ 22, /* U+0045+0302 -> U+00CA */ 23, - /* U+0045+0303 -> U+1EBC */ 1339, + /* U+0045+0303 -> U+1EBC */ 1366, /* U+0045+0304 -> U+0112 */ 83, /* U+0045+0306 -> U+0114 */ 85, /* U+0045+0307 -> U+0116 */ 87, /* U+0045+0308 -> U+00CB */ 24, - /* U+0045+0309 -> U+1EBA */ 1337, + /* U+0045+0309 -> U+1EBA */ 1364, /* U+0045+030C -> U+011A */ 91, /* U+0045+030F -> U+0204 */ 244, /* U+0045+0311 -> U+0206 */ 246, - /* U+0045+0323 -> U+1EB8 */ 1335, + /* U+0045+0323 -> U+1EB8 */ 1362, /* U+0045+0327 -> U+0228 */ 272, /* U+0045+0328 -> U+0118 */ 89, - /* U+0045+032D -> U+1E18 */ 1179, - /* U+0045+0330 -> U+1E1A */ 1181, - /* U+0046+0307 -> U+1E1E */ 1185, + /* U+0045+032D -> U+1E18 */ 1206, + /* U+0045+0330 -> U+1E1A */ 1208, + /* U+0046+0307 -> U+1E1E */ 1212, /* U+0047+0301 -> U+01F4 */ 230, /* U+0047+0302 -> U+011C */ 93, - /* U+0047+0304 -> U+1E20 */ 1187, + /* U+0047+0304 -> U+1E20 */ 1214, /* U+0047+0306 -> U+011E */ 95, /* U+0047+0307 -> U+0120 */ 97, /* U+0047+030C -> U+01E6 */ 216, /* U+0047+0327 -> U+0122 */ 99, /* U+0048+0302 -> U+0124 */ 101, - /* U+0048+0307 -> U+1E22 */ 1189, - /* U+0048+0308 -> U+1E26 */ 1193, + /* U+0048+0307 -> U+1E22 */ 1216, + /* U+0048+0308 -> U+1E26 */ 1220, /* U+0048+030C -> U+021E */ 268, - /* U+0048+0323 -> U+1E24 */ 1191, - /* U+0048+0327 -> U+1E28 */ 1195, - /* U+0048+032E -> U+1E2A */ 1197, + /* U+0048+0323 -> U+1E24 */ 1218, + /* U+0048+0327 -> U+1E28 */ 1222, + /* U+0048+032E -> U+1E2A */ 1224, /* U+0049+0300 -> U+00CC */ 25, /* U+0049+0301 -> U+00CD */ 26, /* U+0049+0302 -> U+00CE */ 27, @@ -1854,37 +1863,37 @@ static const uint16 RecompInverseLookup[961] = /* U+0049+0306 -> U+012C */ 107, /* U+0049+0307 -> U+0130 */ 111, /* U+0049+0308 -> U+00CF */ 28, - /* U+0049+0309 -> U+1EC8 */ 1351, + /* U+0049+0309 -> U+1EC8 */ 1378, /* U+0049+030C -> U+01CF */ 196, /* U+0049+030F -> U+0208 */ 248, /* U+0049+0311 -> U+020A */ 250, - /* U+0049+0323 -> U+1ECA */ 1353, + /* U+0049+0323 -> U+1ECA */ 1380, /* U+0049+0328 -> U+012E */ 109, - /* U+0049+0330 -> U+1E2C */ 1199, + /* U+0049+0330 -> U+1E2C */ 1226, /* U+004A+0302 -> U+0134 */ 114, - /* U+004B+0301 -> U+1E30 */ 1203, + /* U+004B+0301 -> U+1E30 */ 1230, /* U+004B+030C -> U+01E8 */ 218, - /* U+004B+0323 -> U+1E32 */ 1205, + /* U+004B+0323 -> U+1E32 */ 1232, /* U+004B+0327 -> U+0136 */ 116, - /* U+004B+0331 -> U+1E34 */ 1207, + /* U+004B+0331 -> U+1E34 */ 1234, /* U+004C+0301 -> U+0139 */ 118, /* U+004C+030C -> U+013D */ 122, - /* U+004C+0323 -> U+1E36 */ 1209, + /* U+004C+0323 -> U+1E36 */ 1236, /* U+004C+0327 -> U+013B */ 120, - /* U+004C+032D -> U+1E3C */ 1215, - /* U+004C+0331 -> U+1E3A */ 1213, - /* U+004D+0301 -> U+1E3E */ 1217, - /* U+004D+0307 -> U+1E40 */ 1219, - /* U+004D+0323 -> U+1E42 */ 1221, + /* U+004C+032D -> U+1E3C */ 1242, + /* U+004C+0331 -> U+1E3A */ 1240, + /* U+004D+0301 -> U+1E3E */ 1244, + /* U+004D+0307 -> U+1E40 */ 1246, + /* U+004D+0323 -> U+1E42 */ 1248, /* U+004E+0300 -> U+01F8 */ 232, /* U+004E+0301 -> U+0143 */ 126, /* U+004E+0303 -> U+00D1 */ 29, - /* U+004E+0307 -> U+1E44 */ 1223, + /* U+004E+0307 -> U+1E44 */ 1250, /* U+004E+030C -> U+0147 */ 130, - /* U+004E+0323 -> U+1E46 */ 1225, + /* U+004E+0323 -> U+1E46 */ 1252, /* U+004E+0327 -> U+0145 */ 128, - /* U+004E+032D -> U+1E4A */ 1229, - /* U+004E+0331 -> U+1E48 */ 1227, + /* U+004E+032D -> U+1E4A */ 1256, + /* U+004E+0331 -> U+1E48 */ 1254, /* U+004F+0300 -> U+00D2 */ 30, /* U+004F+0301 -> U+00D3 */ 31, /* U+004F+0302 -> U+00D4 */ 32, @@ -1893,38 +1902,38 @@ static const uint16 RecompInverseLookup[961] = /* U+004F+0306 -> U+014E */ 135, /* U+004F+0307 -> U+022E */ 278, /* U+004F+0308 -> U+00D6 */ 34, - /* U+004F+0309 -> U+1ECE */ 1357, + /* U+004F+0309 -> U+1ECE */ 1384, /* U+004F+030B -> U+0150 */ 137, /* U+004F+030C -> U+01D1 */ 198, /* U+004F+030F -> U+020C */ 252, /* U+004F+0311 -> U+020E */ 254, /* U+004F+031B -> U+01A0 */ 181, - /* U+004F+0323 -> U+1ECC */ 1355, + /* U+004F+0323 -> U+1ECC */ 1382, /* U+004F+0328 -> U+01EA */ 220, - /* U+0050+0301 -> U+1E54 */ 1239, - /* U+0050+0307 -> U+1E56 */ 1241, + /* U+0050+0301 -> U+1E54 */ 1266, + /* U+0050+0307 -> U+1E56 */ 1268, /* U+0052+0301 -> U+0154 */ 139, - /* U+0052+0307 -> U+1E58 */ 1243, + /* U+0052+0307 -> U+1E58 */ 1270, /* U+0052+030C -> U+0158 */ 143, /* U+0052+030F -> U+0210 */ 256, /* U+0052+0311 -> U+0212 */ 258, - /* U+0052+0323 -> U+1E5A */ 1245, + /* U+0052+0323 -> U+1E5A */ 1272, /* U+0052+0327 -> U+0156 */ 141, - /* U+0052+0331 -> U+1E5E */ 1249, + /* U+0052+0331 -> U+1E5E */ 1276, /* U+0053+0301 -> U+015A */ 145, /* U+0053+0302 -> U+015C */ 147, - /* U+0053+0307 -> U+1E60 */ 1251, + /* U+0053+0307 -> U+1E60 */ 1278, /* U+0053+030C -> U+0160 */ 151, - /* U+0053+0323 -> U+1E62 */ 1253, + /* U+0053+0323 -> U+1E62 */ 1280, /* U+0053+0326 -> U+0218 */ 264, /* U+0053+0327 -> U+015E */ 149, - /* U+0054+0307 -> U+1E6A */ 1261, + /* U+0054+0307 -> U+1E6A */ 1288, /* U+0054+030C -> U+0164 */ 155, - /* U+0054+0323 -> U+1E6C */ 1263, + /* U+0054+0323 -> U+1E6C */ 1290, /* U+0054+0326 -> U+021A */ 266, /* U+0054+0327 -> U+0162 */ 153, - /* U+0054+032D -> U+1E70 */ 1267, - /* U+0054+0331 -> U+1E6E */ 1265, + /* U+0054+032D -> U+1E70 */ 1294, + /* U+0054+0331 -> U+1E6E */ 1292, /* U+0055+0300 -> U+00D9 */ 35, /* U+0055+0301 -> U+00DA */ 36, /* U+0055+0302 -> U+00DB */ 37, @@ -1932,43 +1941,43 @@ static const uint16 RecompInverseLookup[961] = /* U+0055+0304 -> U+016A */ 159, /* U+0055+0306 -> U+016C */ 161, /* U+0055+0308 -> U+00DC */ 38, - /* U+0055+0309 -> U+1EE6 */ 1381, + /* U+0055+0309 -> U+1EE6 */ 1408, /* U+0055+030A -> U+016E */ 163, /* U+0055+030B -> U+0170 */ 165, /* U+0055+030C -> U+01D3 */ 200, /* U+0055+030F -> U+0214 */ 260, /* U+0055+0311 -> U+0216 */ 262, /* U+0055+031B -> U+01AF */ 183, - /* U+0055+0323 -> U+1EE4 */ 1379, - /* U+0055+0324 -> U+1E72 */ 1269, + /* U+0055+0323 -> U+1EE4 */ 1406, + /* U+0055+0324 -> U+1E72 */ 1296, /* U+0055+0328 -> U+0172 */ 167, - /* U+0055+032D -> U+1E76 */ 1273, - /* U+0055+0330 -> U+1E74 */ 1271, - /* U+0056+0303 -> U+1E7C */ 1279, - /* U+0056+0323 -> U+1E7E */ 1281, - /* U+0057+0300 -> U+1E80 */ 1283, - /* U+0057+0301 -> U+1E82 */ 1285, + /* U+0055+032D -> U+1E76 */ 1300, + /* U+0055+0330 -> U+1E74 */ 1298, + /* U+0056+0303 -> U+1E7C */ 1306, + /* U+0056+0323 -> U+1E7E */ 1308, + /* U+0057+0300 -> U+1E80 */ 1310, + /* U+0057+0301 -> U+1E82 */ 1312, /* U+0057+0302 -> U+0174 */ 169, - /* U+0057+0307 -> U+1E86 */ 1289, - /* U+0057+0308 -> U+1E84 */ 1287, - /* U+0057+0323 -> U+1E88 */ 1291, - /* U+0058+0307 -> U+1E8A */ 1293, - /* U+0058+0308 -> U+1E8C */ 1295, - /* U+0059+0300 -> U+1EF2 */ 1393, + /* U+0057+0307 -> U+1E86 */ 1316, + /* U+0057+0308 -> U+1E84 */ 1314, + /* U+0057+0323 -> U+1E88 */ 1318, + /* U+0058+0307 -> U+1E8A */ 1320, + /* U+0058+0308 -> U+1E8C */ 1322, + /* U+0059+0300 -> U+1EF2 */ 1420, /* U+0059+0301 -> U+00DD */ 39, /* U+0059+0302 -> U+0176 */ 171, - /* U+0059+0303 -> U+1EF8 */ 1399, + /* U+0059+0303 -> U+1EF8 */ 1426, /* U+0059+0304 -> U+0232 */ 282, - /* U+0059+0307 -> U+1E8E */ 1297, + /* U+0059+0307 -> U+1E8E */ 1324, /* U+0059+0308 -> U+0178 */ 173, - /* U+0059+0309 -> U+1EF6 */ 1397, - /* U+0059+0323 -> U+1EF4 */ 1395, + /* U+0059+0309 -> U+1EF6 */ 1424, + /* U+0059+0323 -> U+1EF4 */ 1422, /* U+005A+0301 -> U+0179 */ 174, - /* U+005A+0302 -> U+1E90 */ 1299, + /* U+005A+0302 -> U+1E90 */ 1326, /* U+005A+0307 -> U+017B */ 176, /* U+005A+030C -> U+017D */ 178, - /* U+005A+0323 -> U+1E92 */ 1301, - /* U+005A+0331 -> U+1E94 */ 1303, + /* U+005A+0323 -> U+1E92 */ 1328, + /* U+005A+0331 -> U+1E94 */ 1330, /* U+0061+0300 -> U+00E0 */ 40, /* U+0061+0301 -> U+00E1 */ 41, /* U+0061+0302 -> U+00E2 */ 42, @@ -1977,61 +1986,61 @@ static const uint16 RecompInverseLookup[961] = /* U+0061+0306 -> U+0103 */ 70, /* U+0061+0307 -> U+0227 */ 271, /* U+0061+0308 -> U+00E4 */ 44, - /* U+0061+0309 -> U+1EA3 */ 1314, + /* U+0061+0309 -> U+1EA3 */ 1341, /* U+0061+030A -> U+00E5 */ 45, /* U+0061+030C -> U+01CE */ 195, /* U+0061+030F -> U+0201 */ 241, /* U+0061+0311 -> U+0203 */ 243, - /* U+0061+0323 -> U+1EA1 */ 1312, - /* U+0061+0325 -> U+1E01 */ 1156, + /* U+0061+0323 -> U+1EA1 */ 1339, + /* U+0061+0325 -> U+1E01 */ 1183, /* U+0061+0328 -> U+0105 */ 72, - /* U+0062+0307 -> U+1E03 */ 1158, - /* U+0062+0323 -> U+1E05 */ 1160, - /* U+0062+0331 -> U+1E07 */ 1162, + /* U+0062+0307 -> U+1E03 */ 1185, + /* U+0062+0323 -> U+1E05 */ 1187, + /* U+0062+0331 -> U+1E07 */ 1189, /* U+0063+0301 -> U+0107 */ 74, /* U+0063+0302 -> U+0109 */ 76, /* U+0063+0307 -> U+010B */ 78, /* U+0063+030C -> U+010D */ 80, /* U+0063+0327 -> U+00E7 */ 46, - /* U+0064+0307 -> U+1E0B */ 1166, + /* U+0064+0307 -> U+1E0B */ 1193, /* U+0064+030C -> U+010F */ 82, - /* U+0064+0323 -> U+1E0D */ 1168, - /* U+0064+0327 -> U+1E11 */ 1172, - /* U+0064+032D -> U+1E13 */ 1174, - /* U+0064+0331 -> U+1E0F */ 1170, + /* U+0064+0323 -> U+1E0D */ 1195, + /* U+0064+0327 -> U+1E11 */ 1199, + /* U+0064+032D -> U+1E13 */ 1201, + /* U+0064+0331 -> U+1E0F */ 1197, /* U+0065+0300 -> U+00E8 */ 47, /* U+0065+0301 -> U+00E9 */ 48, /* U+0065+0302 -> U+00EA */ 49, - /* U+0065+0303 -> U+1EBD */ 1340, + /* U+0065+0303 -> U+1EBD */ 1367, /* U+0065+0304 -> U+0113 */ 84, /* U+0065+0306 -> U+0115 */ 86, /* U+0065+0307 -> U+0117 */ 88, /* U+0065+0308 -> U+00EB */ 50, - /* U+0065+0309 -> U+1EBB */ 1338, + /* U+0065+0309 -> U+1EBB */ 1365, /* U+0065+030C -> U+011B */ 92, /* U+0065+030F -> U+0205 */ 245, /* U+0065+0311 -> U+0207 */ 247, - /* U+0065+0323 -> U+1EB9 */ 1336, + /* U+0065+0323 -> U+1EB9 */ 1363, /* U+0065+0327 -> U+0229 */ 273, /* U+0065+0328 -> U+0119 */ 90, - /* U+0065+032D -> U+1E19 */ 1180, - /* U+0065+0330 -> U+1E1B */ 1182, - /* U+0066+0307 -> U+1E1F */ 1186, + /* U+0065+032D -> U+1E19 */ 1207, + /* U+0065+0330 -> U+1E1B */ 1209, + /* U+0066+0307 -> U+1E1F */ 1213, /* U+0067+0301 -> U+01F5 */ 231, /* U+0067+0302 -> U+011D */ 94, - /* U+0067+0304 -> U+1E21 */ 1188, + /* U+0067+0304 -> U+1E21 */ 1215, /* U+0067+0306 -> U+011F */ 96, /* U+0067+0307 -> U+0121 */ 98, /* U+0067+030C -> U+01E7 */ 217, /* U+0067+0327 -> U+0123 */ 100, /* U+0068+0302 -> U+0125 */ 102, - /* U+0068+0307 -> U+1E23 */ 1190, - /* U+0068+0308 -> U+1E27 */ 1194, + /* U+0068+0307 -> U+1E23 */ 1217, + /* U+0068+0308 -> U+1E27 */ 1221, /* U+0068+030C -> U+021F */ 269, - /* U+0068+0323 -> U+1E25 */ 1192, - /* U+0068+0327 -> U+1E29 */ 1196, - /* U+0068+032E -> U+1E2B */ 1198, - /* U+0068+0331 -> U+1E96 */ 1305, + /* U+0068+0323 -> U+1E25 */ 1219, + /* U+0068+0327 -> U+1E29 */ 1223, + /* U+0068+032E -> U+1E2B */ 1225, + /* U+0068+0331 -> U+1E96 */ 1332, /* U+0069+0300 -> U+00EC */ 51, /* U+0069+0301 -> U+00ED */ 52, /* U+0069+0302 -> U+00EE */ 53, @@ -2039,38 +2048,38 @@ static const uint16 RecompInverseLookup[961] = /* U+0069+0304 -> U+012B */ 106, /* U+0069+0306 -> U+012D */ 108, /* U+0069+0308 -> U+00EF */ 54, - /* U+0069+0309 -> U+1EC9 */ 1352, + /* U+0069+0309 -> U+1EC9 */ 1379, /* U+0069+030C -> U+01D0 */ 197, /* U+0069+030F -> U+0209 */ 249, /* U+0069+0311 -> U+020B */ 251, - /* U+0069+0323 -> U+1ECB */ 1354, + /* U+0069+0323 -> U+1ECB */ 1381, /* U+0069+0328 -> U+012F */ 110, - /* U+0069+0330 -> U+1E2D */ 1200, + /* U+0069+0330 -> U+1E2D */ 1227, /* U+006A+0302 -> U+0135 */ 115, /* U+006A+030C -> U+01F0 */ 226, - /* U+006B+0301 -> U+1E31 */ 1204, + /* U+006B+0301 -> U+1E31 */ 1231, /* U+006B+030C -> U+01E9 */ 219, - /* U+006B+0323 -> U+1E33 */ 1206, + /* U+006B+0323 -> U+1E33 */ 1233, /* U+006B+0327 -> U+0137 */ 117, - /* U+006B+0331 -> U+1E35 */ 1208, + /* U+006B+0331 -> U+1E35 */ 1235, /* U+006C+0301 -> U+013A */ 119, /* U+006C+030C -> U+013E */ 123, - /* U+006C+0323 -> U+1E37 */ 1210, + /* U+006C+0323 -> U+1E37 */ 1237, /* U+006C+0327 -> U+013C */ 121, - /* U+006C+032D -> U+1E3D */ 1216, - /* U+006C+0331 -> U+1E3B */ 1214, - /* U+006D+0301 -> U+1E3F */ 1218, - /* U+006D+0307 -> U+1E41 */ 1220, - /* U+006D+0323 -> U+1E43 */ 1222, + /* U+006C+032D -> U+1E3D */ 1243, + /* U+006C+0331 -> U+1E3B */ 1241, + /* U+006D+0301 -> U+1E3F */ 1245, + /* U+006D+0307 -> U+1E41 */ 1247, + /* U+006D+0323 -> U+1E43 */ 1249, /* U+006E+0300 -> U+01F9 */ 233, /* U+006E+0301 -> U+0144 */ 127, /* U+006E+0303 -> U+00F1 */ 55, - /* U+006E+0307 -> U+1E45 */ 1224, + /* U+006E+0307 -> U+1E45 */ 1251, /* U+006E+030C -> U+0148 */ 131, - /* U+006E+0323 -> U+1E47 */ 1226, + /* U+006E+0323 -> U+1E47 */ 1253, /* U+006E+0327 -> U+0146 */ 129, - /* U+006E+032D -> U+1E4B */ 1230, - /* U+006E+0331 -> U+1E49 */ 1228, + /* U+006E+032D -> U+1E4B */ 1257, + /* U+006E+0331 -> U+1E49 */ 1255, /* U+006F+0300 -> U+00F2 */ 56, /* U+006F+0301 -> U+00F3 */ 57, /* U+006F+0302 -> U+00F4 */ 58, @@ -2079,39 +2088,39 @@ static const uint16 RecompInverseLookup[961] = /* U+006F+0306 -> U+014F */ 136, /* U+006F+0307 -> U+022F */ 279, /* U+006F+0308 -> U+00F6 */ 60, - /* U+006F+0309 -> U+1ECF */ 1358, + /* U+006F+0309 -> U+1ECF */ 1385, /* U+006F+030B -> U+0151 */ 138, /* U+006F+030C -> U+01D2 */ 199, /* U+006F+030F -> U+020D */ 253, /* U+006F+0311 -> U+020F */ 255, /* U+006F+031B -> U+01A1 */ 182, - /* U+006F+0323 -> U+1ECD */ 1356, + /* U+006F+0323 -> U+1ECD */ 1383, /* U+006F+0328 -> U+01EB */ 221, - /* U+0070+0301 -> U+1E55 */ 1240, - /* U+0070+0307 -> U+1E57 */ 1242, + /* U+0070+0301 -> U+1E55 */ 1267, + /* U+0070+0307 -> U+1E57 */ 1269, /* U+0072+0301 -> U+0155 */ 140, - /* U+0072+0307 -> U+1E59 */ 1244, + /* U+0072+0307 -> U+1E59 */ 1271, /* U+0072+030C -> U+0159 */ 144, /* U+0072+030F -> U+0211 */ 257, /* U+0072+0311 -> U+0213 */ 259, - /* U+0072+0323 -> U+1E5B */ 1246, + /* U+0072+0323 -> U+1E5B */ 1273, /* U+0072+0327 -> U+0157 */ 142, - /* U+0072+0331 -> U+1E5F */ 1250, + /* U+0072+0331 -> U+1E5F */ 1277, /* U+0073+0301 -> U+015B */ 146, /* U+0073+0302 -> U+015D */ 148, - /* U+0073+0307 -> U+1E61 */ 1252, + /* U+0073+0307 -> U+1E61 */ 1279, /* U+0073+030C -> U+0161 */ 152, - /* U+0073+0323 -> U+1E63 */ 1254, + /* U+0073+0323 -> U+1E63 */ 1281, /* U+0073+0326 -> U+0219 */ 265, /* U+0073+0327 -> U+015F */ 150, - /* U+0074+0307 -> U+1E6B */ 1262, - /* U+0074+0308 -> U+1E97 */ 1306, + /* U+0074+0307 -> U+1E6B */ 1289, + /* U+0074+0308 -> U+1E97 */ 1333, /* U+0074+030C -> U+0165 */ 156, - /* U+0074+0323 -> U+1E6D */ 1264, + /* U+0074+0323 -> U+1E6D */ 1291, /* U+0074+0326 -> U+021B */ 267, /* U+0074+0327 -> U+0163 */ 154, - /* U+0074+032D -> U+1E71 */ 1268, - /* U+0074+0331 -> U+1E6F */ 1266, + /* U+0074+032D -> U+1E71 */ 1295, + /* U+0074+0331 -> U+1E6F */ 1293, /* U+0075+0300 -> U+00F9 */ 61, /* U+0075+0301 -> U+00FA */ 62, /* U+0075+0302 -> U+00FB */ 63, @@ -2119,251 +2128,251 @@ static const uint16 RecompInverseLookup[961] = /* U+0075+0304 -> U+016B */ 160, /* U+0075+0306 -> U+016D */ 162, /* U+0075+0308 -> U+00FC */ 64, - /* U+0075+0309 -> U+1EE7 */ 1382, + /* U+0075+0309 -> U+1EE7 */ 1409, /* U+0075+030A -> U+016F */ 164, /* U+0075+030B -> U+0171 */ 166, /* U+0075+030C -> U+01D4 */ 201, /* U+0075+030F -> U+0215 */ 261, /* U+0075+0311 -> U+0217 */ 263, /* U+0075+031B -> U+01B0 */ 184, - /* U+0075+0323 -> U+1EE5 */ 1380, - /* U+0075+0324 -> U+1E73 */ 1270, + /* U+0075+0323 -> U+1EE5 */ 1407, + /* U+0075+0324 -> U+1E73 */ 1297, /* U+0075+0328 -> U+0173 */ 168, - /* U+0075+032D -> U+1E77 */ 1274, - /* U+0075+0330 -> U+1E75 */ 1272, - /* U+0076+0303 -> U+1E7D */ 1280, - /* U+0076+0323 -> U+1E7F */ 1282, - /* U+0077+0300 -> U+1E81 */ 1284, - /* U+0077+0301 -> U+1E83 */ 1286, + /* U+0075+032D -> U+1E77 */ 1301, + /* U+0075+0330 -> U+1E75 */ 1299, + /* U+0076+0303 -> U+1E7D */ 1307, + /* U+0076+0323 -> U+1E7F */ 1309, + /* U+0077+0300 -> U+1E81 */ 1311, + /* U+0077+0301 -> U+1E83 */ 1313, /* U+0077+0302 -> U+0175 */ 170, - /* U+0077+0307 -> U+1E87 */ 1290, - /* U+0077+0308 -> U+1E85 */ 1288, - /* U+0077+030A -> U+1E98 */ 1307, - /* U+0077+0323 -> U+1E89 */ 1292, - /* U+0078+0307 -> U+1E8B */ 1294, - /* U+0078+0308 -> U+1E8D */ 1296, - /* U+0079+0300 -> U+1EF3 */ 1394, + /* U+0077+0307 -> U+1E87 */ 1317, + /* U+0077+0308 -> U+1E85 */ 1315, + /* U+0077+030A -> U+1E98 */ 1334, + /* U+0077+0323 -> U+1E89 */ 1319, + /* U+0078+0307 -> U+1E8B */ 1321, + /* U+0078+0308 -> U+1E8D */ 1323, + /* U+0079+0300 -> U+1EF3 */ 1421, /* U+0079+0301 -> U+00FD */ 65, /* U+0079+0302 -> U+0177 */ 172, - /* U+0079+0303 -> U+1EF9 */ 1400, + /* U+0079+0303 -> U+1EF9 */ 1427, /* U+0079+0304 -> U+0233 */ 283, - /* U+0079+0307 -> U+1E8F */ 1298, + /* U+0079+0307 -> U+1E8F */ 1325, /* U+0079+0308 -> U+00FF */ 66, - /* U+0079+0309 -> U+1EF7 */ 1398, - /* U+0079+030A -> U+1E99 */ 1308, - /* U+0079+0323 -> U+1EF5 */ 1396, + /* U+0079+0309 -> U+1EF7 */ 1425, + /* U+0079+030A -> U+1E99 */ 1335, + /* U+0079+0323 -> U+1EF5 */ 1423, /* U+007A+0301 -> U+017A */ 175, - /* U+007A+0302 -> U+1E91 */ 1300, + /* U+007A+0302 -> U+1E91 */ 1327, /* U+007A+0307 -> U+017C */ 177, /* U+007A+030C -> U+017E */ 179, - /* U+007A+0323 -> U+1E93 */ 1302, - /* U+007A+0331 -> U+1E95 */ 1304, - /* U+00A8+0300 -> U+1FED */ 1619, + /* U+007A+0323 -> U+1E93 */ 1329, + /* U+007A+0331 -> U+1E95 */ 1331, + /* U+00A8+0300 -> U+1FED */ 1646, /* U+00A8+0301 -> U+0385 */ 419, - /* U+00A8+0342 -> U+1FC1 */ 1579, - /* U+00C2+0300 -> U+1EA6 */ 1317, - /* U+00C2+0301 -> U+1EA4 */ 1315, - /* U+00C2+0303 -> U+1EAA */ 1321, - /* U+00C2+0309 -> U+1EA8 */ 1319, + /* U+00A8+0342 -> U+1FC1 */ 1606, + /* U+00C2+0300 -> U+1EA6 */ 1344, + /* U+00C2+0301 -> U+1EA4 */ 1342, + /* U+00C2+0303 -> U+1EAA */ 1348, + /* U+00C2+0309 -> U+1EA8 */ 1346, /* U+00C4+0304 -> U+01DE */ 210, /* U+00C5+0301 -> U+01FA */ 234, /* U+00C6+0301 -> U+01FC */ 236, /* U+00C6+0304 -> U+01E2 */ 214, - /* U+00C7+0301 -> U+1E08 */ 1163, - /* U+00CA+0300 -> U+1EC0 */ 1343, - /* U+00CA+0301 -> U+1EBE */ 1341, - /* U+00CA+0303 -> U+1EC4 */ 1347, - /* U+00CA+0309 -> U+1EC2 */ 1345, - /* U+00CF+0301 -> U+1E2E */ 1201, - /* U+00D4+0300 -> U+1ED2 */ 1361, - /* U+00D4+0301 -> U+1ED0 */ 1359, - /* U+00D4+0303 -> U+1ED6 */ 1365, - /* U+00D4+0309 -> U+1ED4 */ 1363, - /* U+00D5+0301 -> U+1E4C */ 1231, + /* U+00C7+0301 -> U+1E08 */ 1190, + /* U+00CA+0300 -> U+1EC0 */ 1370, + /* U+00CA+0301 -> U+1EBE */ 1368, + /* U+00CA+0303 -> U+1EC4 */ 1374, + /* U+00CA+0309 -> U+1EC2 */ 1372, + /* U+00CF+0301 -> U+1E2E */ 1228, + /* U+00D4+0300 -> U+1ED2 */ 1388, + /* U+00D4+0301 -> U+1ED0 */ 1386, + /* U+00D4+0303 -> U+1ED6 */ 1392, + /* U+00D4+0309 -> U+1ED4 */ 1390, + /* U+00D5+0301 -> U+1E4C */ 1258, /* U+00D5+0304 -> U+022C */ 276, - /* U+00D5+0308 -> U+1E4E */ 1233, + /* U+00D5+0308 -> U+1E4E */ 1260, /* U+00D6+0304 -> U+022A */ 274, /* U+00D8+0301 -> U+01FE */ 238, /* U+00DC+0300 -> U+01DB */ 208, /* U+00DC+0301 -> U+01D7 */ 204, /* U+00DC+0304 -> U+01D5 */ 202, /* U+00DC+030C -> U+01D9 */ 206, - /* U+00E2+0300 -> U+1EA7 */ 1318, - /* U+00E2+0301 -> U+1EA5 */ 1316, - /* U+00E2+0303 -> U+1EAB */ 1322, - /* U+00E2+0309 -> U+1EA9 */ 1320, + /* U+00E2+0300 -> U+1EA7 */ 1345, + /* U+00E2+0301 -> U+1EA5 */ 1343, + /* U+00E2+0303 -> U+1EAB */ 1349, + /* U+00E2+0309 -> U+1EA9 */ 1347, /* U+00E4+0304 -> U+01DF */ 211, /* U+00E5+0301 -> U+01FB */ 235, /* U+00E6+0301 -> U+01FD */ 237, /* U+00E6+0304 -> U+01E3 */ 215, - /* U+00E7+0301 -> U+1E09 */ 1164, - /* U+00EA+0300 -> U+1EC1 */ 1344, - /* U+00EA+0301 -> U+1EBF */ 1342, - /* U+00EA+0303 -> U+1EC5 */ 1348, - /* U+00EA+0309 -> U+1EC3 */ 1346, - /* U+00EF+0301 -> U+1E2F */ 1202, - /* U+00F4+0300 -> U+1ED3 */ 1362, - /* U+00F4+0301 -> U+1ED1 */ 1360, - /* U+00F4+0303 -> U+1ED7 */ 1366, - /* U+00F4+0309 -> U+1ED5 */ 1364, - /* U+00F5+0301 -> U+1E4D */ 1232, + /* U+00E7+0301 -> U+1E09 */ 1191, + /* U+00EA+0300 -> U+1EC1 */ 1371, + /* U+00EA+0301 -> U+1EBF */ 1369, + /* U+00EA+0303 -> U+1EC5 */ 1375, + /* U+00EA+0309 -> U+1EC3 */ 1373, + /* U+00EF+0301 -> U+1E2F */ 1229, + /* U+00F4+0300 -> U+1ED3 */ 1389, + /* U+00F4+0301 -> U+1ED1 */ 1387, + /* U+00F4+0303 -> U+1ED7 */ 1393, + /* U+00F4+0309 -> U+1ED5 */ 1391, + /* U+00F5+0301 -> U+1E4D */ 1259, /* U+00F5+0304 -> U+022D */ 277, - /* U+00F5+0308 -> U+1E4F */ 1234, + /* U+00F5+0308 -> U+1E4F */ 1261, /* U+00F6+0304 -> U+022B */ 275, /* U+00F8+0301 -> U+01FF */ 239, /* U+00FC+0300 -> U+01DC */ 209, /* U+00FC+0301 -> U+01D8 */ 205, /* U+00FC+0304 -> U+01D6 */ 203, /* U+00FC+030C -> U+01DA */ 207, - /* U+0102+0300 -> U+1EB0 */ 1327, - /* U+0102+0301 -> U+1EAE */ 1325, - /* U+0102+0303 -> U+1EB4 */ 1331, - /* U+0102+0309 -> U+1EB2 */ 1329, - /* U+0103+0300 -> U+1EB1 */ 1328, - /* U+0103+0301 -> U+1EAF */ 1326, - /* U+0103+0303 -> U+1EB5 */ 1332, - /* U+0103+0309 -> U+1EB3 */ 1330, - /* U+0112+0300 -> U+1E14 */ 1175, - /* U+0112+0301 -> U+1E16 */ 1177, - /* U+0113+0300 -> U+1E15 */ 1176, - /* U+0113+0301 -> U+1E17 */ 1178, - /* U+014C+0300 -> U+1E50 */ 1235, - /* U+014C+0301 -> U+1E52 */ 1237, - /* U+014D+0300 -> U+1E51 */ 1236, - /* U+014D+0301 -> U+1E53 */ 1238, - /* U+015A+0307 -> U+1E64 */ 1255, - /* U+015B+0307 -> U+1E65 */ 1256, - /* U+0160+0307 -> U+1E66 */ 1257, - /* U+0161+0307 -> U+1E67 */ 1258, - /* U+0168+0301 -> U+1E78 */ 1275, - /* U+0169+0301 -> U+1E79 */ 1276, - /* U+016A+0308 -> U+1E7A */ 1277, - /* U+016B+0308 -> U+1E7B */ 1278, - /* U+017F+0307 -> U+1E9B */ 1310, - /* U+01A0+0300 -> U+1EDC */ 1371, - /* U+01A0+0301 -> U+1EDA */ 1369, - /* U+01A0+0303 -> U+1EE0 */ 1375, - /* U+01A0+0309 -> U+1EDE */ 1373, - /* U+01A0+0323 -> U+1EE2 */ 1377, - /* U+01A1+0300 -> U+1EDD */ 1372, - /* U+01A1+0301 -> U+1EDB */ 1370, - /* U+01A1+0303 -> U+1EE1 */ 1376, - /* U+01A1+0309 -> U+1EDF */ 1374, - /* U+01A1+0323 -> U+1EE3 */ 1378, - /* U+01AF+0300 -> U+1EEA */ 1385, - /* U+01AF+0301 -> U+1EE8 */ 1383, - /* U+01AF+0303 -> U+1EEE */ 1389, - /* U+01AF+0309 -> U+1EEC */ 1387, - /* U+01AF+0323 -> U+1EF0 */ 1391, - /* U+01B0+0300 -> U+1EEB */ 1386, - /* U+01B0+0301 -> U+1EE9 */ 1384, - /* U+01B0+0303 -> U+1EEF */ 1390, - /* U+01B0+0309 -> U+1EED */ 1388, - /* U+01B0+0323 -> U+1EF1 */ 1392, + /* U+0102+0300 -> U+1EB0 */ 1354, + /* U+0102+0301 -> U+1EAE */ 1352, + /* U+0102+0303 -> U+1EB4 */ 1358, + /* U+0102+0309 -> U+1EB2 */ 1356, + /* U+0103+0300 -> U+1EB1 */ 1355, + /* U+0103+0301 -> U+1EAF */ 1353, + /* U+0103+0303 -> U+1EB5 */ 1359, + /* U+0103+0309 -> U+1EB3 */ 1357, + /* U+0112+0300 -> U+1E14 */ 1202, + /* U+0112+0301 -> U+1E16 */ 1204, + /* U+0113+0300 -> U+1E15 */ 1203, + /* U+0113+0301 -> U+1E17 */ 1205, + /* U+014C+0300 -> U+1E50 */ 1262, + /* U+014C+0301 -> U+1E52 */ 1264, + /* U+014D+0300 -> U+1E51 */ 1263, + /* U+014D+0301 -> U+1E53 */ 1265, + /* U+015A+0307 -> U+1E64 */ 1282, + /* U+015B+0307 -> U+1E65 */ 1283, + /* U+0160+0307 -> U+1E66 */ 1284, + /* U+0161+0307 -> U+1E67 */ 1285, + /* U+0168+0301 -> U+1E78 */ 1302, + /* U+0169+0301 -> U+1E79 */ 1303, + /* U+016A+0308 -> U+1E7A */ 1304, + /* U+016B+0308 -> U+1E7B */ 1305, + /* U+017F+0307 -> U+1E9B */ 1337, + /* U+01A0+0300 -> U+1EDC */ 1398, + /* U+01A0+0301 -> U+1EDA */ 1396, + /* U+01A0+0303 -> U+1EE0 */ 1402, + /* U+01A0+0309 -> U+1EDE */ 1400, + /* U+01A0+0323 -> U+1EE2 */ 1404, + /* U+01A1+0300 -> U+1EDD */ 1399, + /* U+01A1+0301 -> U+1EDB */ 1397, + /* U+01A1+0303 -> U+1EE1 */ 1403, + /* U+01A1+0309 -> U+1EDF */ 1401, + /* U+01A1+0323 -> U+1EE3 */ 1405, + /* U+01AF+0300 -> U+1EEA */ 1412, + /* U+01AF+0301 -> U+1EE8 */ 1410, + /* U+01AF+0303 -> U+1EEE */ 1416, + /* U+01AF+0309 -> U+1EEC */ 1414, + /* U+01AF+0323 -> U+1EF0 */ 1418, + /* U+01B0+0300 -> U+1EEB */ 1413, + /* U+01B0+0301 -> U+1EE9 */ 1411, + /* U+01B0+0303 -> U+1EEF */ 1417, + /* U+01B0+0309 -> U+1EED */ 1415, + /* U+01B0+0323 -> U+1EF1 */ 1419, /* U+01B7+030C -> U+01EE */ 224, /* U+01EA+0304 -> U+01EC */ 222, /* U+01EB+0304 -> U+01ED */ 223, /* U+0226+0304 -> U+01E0 */ 212, /* U+0227+0304 -> U+01E1 */ 213, - /* U+0228+0306 -> U+1E1C */ 1183, - /* U+0229+0306 -> U+1E1D */ 1184, + /* U+0228+0306 -> U+1E1C */ 1210, + /* U+0229+0306 -> U+1E1D */ 1211, /* U+022E+0304 -> U+0230 */ 280, /* U+022F+0304 -> U+0231 */ 281, /* U+0292+030C -> U+01EF */ 225, - /* U+0391+0300 -> U+1FBA */ 1572, + /* U+0391+0300 -> U+1FBA */ 1599, /* U+0391+0301 -> U+0386 */ 420, - /* U+0391+0304 -> U+1FB9 */ 1571, - /* U+0391+0306 -> U+1FB8 */ 1570, - /* U+0391+0313 -> U+1F08 */ 1409, - /* U+0391+0314 -> U+1F09 */ 1410, - /* U+0391+0345 -> U+1FBC */ 1574, - /* U+0395+0300 -> U+1FC8 */ 1585, + /* U+0391+0304 -> U+1FB9 */ 1598, + /* U+0391+0306 -> U+1FB8 */ 1597, + /* U+0391+0313 -> U+1F08 */ 1436, + /* U+0391+0314 -> U+1F09 */ 1437, + /* U+0391+0345 -> U+1FBC */ 1601, + /* U+0395+0300 -> U+1FC8 */ 1612, /* U+0395+0301 -> U+0388 */ 422, - /* U+0395+0313 -> U+1F18 */ 1423, - /* U+0395+0314 -> U+1F19 */ 1424, - /* U+0397+0300 -> U+1FCA */ 1587, + /* U+0395+0313 -> U+1F18 */ 1450, + /* U+0395+0314 -> U+1F19 */ 1451, + /* U+0397+0300 -> U+1FCA */ 1614, /* U+0397+0301 -> U+0389 */ 423, - /* U+0397+0313 -> U+1F28 */ 1437, - /* U+0397+0314 -> U+1F29 */ 1438, - /* U+0397+0345 -> U+1FCC */ 1589, - /* U+0399+0300 -> U+1FDA */ 1601, + /* U+0397+0313 -> U+1F28 */ 1464, + /* U+0397+0314 -> U+1F29 */ 1465, + /* U+0397+0345 -> U+1FCC */ 1616, + /* U+0399+0300 -> U+1FDA */ 1628, /* U+0399+0301 -> U+038A */ 424, - /* U+0399+0304 -> U+1FD9 */ 1600, - /* U+0399+0306 -> U+1FD8 */ 1599, + /* U+0399+0304 -> U+1FD9 */ 1627, + /* U+0399+0306 -> U+1FD8 */ 1626, /* U+0399+0308 -> U+03AA */ 429, - /* U+0399+0313 -> U+1F38 */ 1453, - /* U+0399+0314 -> U+1F39 */ 1454, - /* U+039F+0300 -> U+1FF8 */ 1627, + /* U+0399+0313 -> U+1F38 */ 1480, + /* U+0399+0314 -> U+1F39 */ 1481, + /* U+039F+0300 -> U+1FF8 */ 1654, /* U+039F+0301 -> U+038C */ 425, - /* U+039F+0313 -> U+1F48 */ 1467, - /* U+039F+0314 -> U+1F49 */ 1468, - /* U+03A1+0314 -> U+1FEC */ 1618, - /* U+03A5+0300 -> U+1FEA */ 1616, + /* U+039F+0313 -> U+1F48 */ 1494, + /* U+039F+0314 -> U+1F49 */ 1495, + /* U+03A1+0314 -> U+1FEC */ 1645, + /* U+03A5+0300 -> U+1FEA */ 1643, /* U+03A5+0301 -> U+038E */ 426, - /* U+03A5+0304 -> U+1FE9 */ 1615, - /* U+03A5+0306 -> U+1FE8 */ 1614, + /* U+03A5+0304 -> U+1FE9 */ 1642, + /* U+03A5+0306 -> U+1FE8 */ 1641, /* U+03A5+0308 -> U+03AB */ 430, - /* U+03A5+0314 -> U+1F59 */ 1481, - /* U+03A9+0300 -> U+1FFA */ 1629, + /* U+03A5+0314 -> U+1F59 */ 1508, + /* U+03A9+0300 -> U+1FFA */ 1656, /* U+03A9+0301 -> U+038F */ 427, - /* U+03A9+0313 -> U+1F68 */ 1493, - /* U+03A9+0314 -> U+1F69 */ 1494, - /* U+03A9+0345 -> U+1FFC */ 1631, - /* U+03AC+0345 -> U+1FB4 */ 1567, - /* U+03AE+0345 -> U+1FC4 */ 1582, - /* U+03B1+0300 -> U+1F70 */ 1501, + /* U+03A9+0313 -> U+1F68 */ 1520, + /* U+03A9+0314 -> U+1F69 */ 1521, + /* U+03A9+0345 -> U+1FFC */ 1658, + /* U+03AC+0345 -> U+1FB4 */ 1594, + /* U+03AE+0345 -> U+1FC4 */ 1609, + /* U+03B1+0300 -> U+1F70 */ 1528, /* U+03B1+0301 -> U+03AC */ 431, - /* U+03B1+0304 -> U+1FB1 */ 1564, - /* U+03B1+0306 -> U+1FB0 */ 1563, - /* U+03B1+0313 -> U+1F00 */ 1401, - /* U+03B1+0314 -> U+1F01 */ 1402, - /* U+03B1+0342 -> U+1FB6 */ 1568, - /* U+03B1+0345 -> U+1FB3 */ 1566, - /* U+03B5+0300 -> U+1F72 */ 1503, + /* U+03B1+0304 -> U+1FB1 */ 1591, + /* U+03B1+0306 -> U+1FB0 */ 1590, + /* U+03B1+0313 -> U+1F00 */ 1428, + /* U+03B1+0314 -> U+1F01 */ 1429, + /* U+03B1+0342 -> U+1FB6 */ 1595, + /* U+03B1+0345 -> U+1FB3 */ 1593, + /* U+03B5+0300 -> U+1F72 */ 1530, /* U+03B5+0301 -> U+03AD */ 432, - /* U+03B5+0313 -> U+1F10 */ 1417, - /* U+03B5+0314 -> U+1F11 */ 1418, - /* U+03B7+0300 -> U+1F74 */ 1505, + /* U+03B5+0313 -> U+1F10 */ 1444, + /* U+03B5+0314 -> U+1F11 */ 1445, + /* U+03B7+0300 -> U+1F74 */ 1532, /* U+03B7+0301 -> U+03AE */ 433, - /* U+03B7+0313 -> U+1F20 */ 1429, - /* U+03B7+0314 -> U+1F21 */ 1430, - /* U+03B7+0342 -> U+1FC6 */ 1583, - /* U+03B7+0345 -> U+1FC3 */ 1581, - /* U+03B9+0300 -> U+1F76 */ 1507, + /* U+03B7+0313 -> U+1F20 */ 1456, + /* U+03B7+0314 -> U+1F21 */ 1457, + /* U+03B7+0342 -> U+1FC6 */ 1610, + /* U+03B7+0345 -> U+1FC3 */ 1608, + /* U+03B9+0300 -> U+1F76 */ 1534, /* U+03B9+0301 -> U+03AF */ 434, - /* U+03B9+0304 -> U+1FD1 */ 1594, - /* U+03B9+0306 -> U+1FD0 */ 1593, + /* U+03B9+0304 -> U+1FD1 */ 1621, + /* U+03B9+0306 -> U+1FD0 */ 1620, /* U+03B9+0308 -> U+03CA */ 436, - /* U+03B9+0313 -> U+1F30 */ 1445, - /* U+03B9+0314 -> U+1F31 */ 1446, - /* U+03B9+0342 -> U+1FD6 */ 1597, - /* U+03BF+0300 -> U+1F78 */ 1509, + /* U+03B9+0313 -> U+1F30 */ 1472, + /* U+03B9+0314 -> U+1F31 */ 1473, + /* U+03B9+0342 -> U+1FD6 */ 1624, + /* U+03BF+0300 -> U+1F78 */ 1536, /* U+03BF+0301 -> U+03CC */ 438, - /* U+03BF+0313 -> U+1F40 */ 1461, - /* U+03BF+0314 -> U+1F41 */ 1462, - /* U+03C1+0313 -> U+1FE4 */ 1610, - /* U+03C1+0314 -> U+1FE5 */ 1611, - /* U+03C5+0300 -> U+1F7A */ 1511, + /* U+03BF+0313 -> U+1F40 */ 1488, + /* U+03BF+0314 -> U+1F41 */ 1489, + /* U+03C1+0313 -> U+1FE4 */ 1637, + /* U+03C1+0314 -> U+1FE5 */ 1638, + /* U+03C5+0300 -> U+1F7A */ 1538, /* U+03C5+0301 -> U+03CD */ 439, - /* U+03C5+0304 -> U+1FE1 */ 1607, - /* U+03C5+0306 -> U+1FE0 */ 1606, + /* U+03C5+0304 -> U+1FE1 */ 1634, + /* U+03C5+0306 -> U+1FE0 */ 1633, /* U+03C5+0308 -> U+03CB */ 437, - /* U+03C5+0313 -> U+1F50 */ 1473, - /* U+03C5+0314 -> U+1F51 */ 1474, - /* U+03C5+0342 -> U+1FE6 */ 1612, - /* U+03C9+0300 -> U+1F7C */ 1513, + /* U+03C5+0313 -> U+1F50 */ 1500, + /* U+03C5+0314 -> U+1F51 */ 1501, + /* U+03C5+0342 -> U+1FE6 */ 1639, + /* U+03C9+0300 -> U+1F7C */ 1540, /* U+03C9+0301 -> U+03CE */ 440, - /* U+03C9+0313 -> U+1F60 */ 1485, - /* U+03C9+0314 -> U+1F61 */ 1486, - /* U+03C9+0342 -> U+1FF6 */ 1625, - /* U+03C9+0345 -> U+1FF3 */ 1623, - /* U+03CA+0300 -> U+1FD2 */ 1595, + /* U+03C9+0313 -> U+1F60 */ 1512, + /* U+03C9+0314 -> U+1F61 */ 1513, + /* U+03C9+0342 -> U+1FF6 */ 1652, + /* U+03C9+0345 -> U+1FF3 */ 1650, + /* U+03CA+0300 -> U+1FD2 */ 1622, /* U+03CA+0301 -> U+0390 */ 428, - /* U+03CA+0342 -> U+1FD7 */ 1598, - /* U+03CB+0300 -> U+1FE2 */ 1608, + /* U+03CA+0342 -> U+1FD7 */ 1625, + /* U+03CB+0300 -> U+1FE2 */ 1635, /* U+03CB+0301 -> U+03B0 */ 435, - /* U+03CB+0342 -> U+1FE7 */ 1613, - /* U+03CE+0345 -> U+1FF4 */ 1624, + /* U+03CB+0342 -> U+1FE7 */ 1640, + /* U+03CE+0345 -> U+1FF4 */ 1651, /* U+03D2+0301 -> U+03D3 */ 444, /* U+03D2+0308 -> U+03D4 */ 445, /* U+0406+0308 -> U+0407 */ 457, @@ -2452,296 +2461,296 @@ static const uint16 RecompInverseLookup[961] = /* U+0DD9+0DDF -> U+0DDE */ 820, /* U+0DDC+0DCA -> U+0DDD */ 819, /* U+1025+102E -> U+1026 */ 878, - /* U+1B05+1B35 -> U+1B06 */ 938, - /* U+1B07+1B35 -> U+1B08 */ 939, - /* U+1B09+1B35 -> U+1B0A */ 940, - /* U+1B0B+1B35 -> U+1B0C */ 941, - /* U+1B0D+1B35 -> U+1B0E */ 942, - /* U+1B11+1B35 -> U+1B12 */ 943, - /* U+1B3A+1B35 -> U+1B3B */ 945, - /* U+1B3C+1B35 -> U+1B3D */ 946, - /* U+1B3E+1B35 -> U+1B40 */ 947, - /* U+1B3F+1B35 -> U+1B41 */ 948, - /* U+1B42+1B35 -> U+1B43 */ 949, - /* U+1E36+0304 -> U+1E38 */ 1211, - /* U+1E37+0304 -> U+1E39 */ 1212, - /* U+1E5A+0304 -> U+1E5C */ 1247, - /* U+1E5B+0304 -> U+1E5D */ 1248, - /* U+1E62+0307 -> U+1E68 */ 1259, - /* U+1E63+0307 -> U+1E69 */ 1260, - /* U+1EA0+0302 -> U+1EAC */ 1323, - /* U+1EA0+0306 -> U+1EB6 */ 1333, - /* U+1EA1+0302 -> U+1EAD */ 1324, - /* U+1EA1+0306 -> U+1EB7 */ 1334, - /* U+1EB8+0302 -> U+1EC6 */ 1349, - /* U+1EB9+0302 -> U+1EC7 */ 1350, - /* U+1ECC+0302 -> U+1ED8 */ 1367, - /* U+1ECD+0302 -> U+1ED9 */ 1368, - /* U+1F00+0300 -> U+1F02 */ 1403, - /* U+1F00+0301 -> U+1F04 */ 1405, - /* U+1F00+0342 -> U+1F06 */ 1407, - /* U+1F00+0345 -> U+1F80 */ 1515, - /* U+1F01+0300 -> U+1F03 */ 1404, - /* U+1F01+0301 -> U+1F05 */ 1406, - /* U+1F01+0342 -> U+1F07 */ 1408, - /* U+1F01+0345 -> U+1F81 */ 1516, - /* U+1F02+0345 -> U+1F82 */ 1517, - /* U+1F03+0345 -> U+1F83 */ 1518, - /* U+1F04+0345 -> U+1F84 */ 1519, - /* U+1F05+0345 -> U+1F85 */ 1520, - /* U+1F06+0345 -> U+1F86 */ 1521, - /* U+1F07+0345 -> U+1F87 */ 1522, - /* U+1F08+0300 -> U+1F0A */ 1411, - /* U+1F08+0301 -> U+1F0C */ 1413, - /* U+1F08+0342 -> U+1F0E */ 1415, - /* U+1F08+0345 -> U+1F88 */ 1523, - /* U+1F09+0300 -> U+1F0B */ 1412, - /* U+1F09+0301 -> U+1F0D */ 1414, - /* U+1F09+0342 -> U+1F0F */ 1416, - /* U+1F09+0345 -> U+1F89 */ 1524, - /* U+1F0A+0345 -> U+1F8A */ 1525, - /* U+1F0B+0345 -> U+1F8B */ 1526, - /* U+1F0C+0345 -> U+1F8C */ 1527, - /* U+1F0D+0345 -> U+1F8D */ 1528, - /* U+1F0E+0345 -> U+1F8E */ 1529, - /* U+1F0F+0345 -> U+1F8F */ 1530, - /* U+1F10+0300 -> U+1F12 */ 1419, - /* U+1F10+0301 -> U+1F14 */ 1421, - /* U+1F11+0300 -> U+1F13 */ 1420, - /* U+1F11+0301 -> U+1F15 */ 1422, - /* U+1F18+0300 -> U+1F1A */ 1425, - /* U+1F18+0301 -> U+1F1C */ 1427, - /* U+1F19+0300 -> U+1F1B */ 1426, - /* U+1F19+0301 -> U+1F1D */ 1428, - /* U+1F20+0300 -> U+1F22 */ 1431, - /* U+1F20+0301 -> U+1F24 */ 1433, - /* U+1F20+0342 -> U+1F26 */ 1435, - /* U+1F20+0345 -> U+1F90 */ 1531, - /* U+1F21+0300 -> U+1F23 */ 1432, - /* U+1F21+0301 -> U+1F25 */ 1434, - /* U+1F21+0342 -> U+1F27 */ 1436, - /* U+1F21+0345 -> U+1F91 */ 1532, - /* U+1F22+0345 -> U+1F92 */ 1533, - /* U+1F23+0345 -> U+1F93 */ 1534, - /* U+1F24+0345 -> U+1F94 */ 1535, - /* U+1F25+0345 -> U+1F95 */ 1536, - /* U+1F26+0345 -> U+1F96 */ 1537, - /* U+1F27+0345 -> U+1F97 */ 1538, - /* U+1F28+0300 -> U+1F2A */ 1439, - /* U+1F28+0301 -> U+1F2C */ 1441, - /* U+1F28+0342 -> U+1F2E */ 1443, - /* U+1F28+0345 -> U+1F98 */ 1539, - /* U+1F29+0300 -> U+1F2B */ 1440, - /* U+1F29+0301 -> U+1F2D */ 1442, - /* U+1F29+0342 -> U+1F2F */ 1444, - /* U+1F29+0345 -> U+1F99 */ 1540, - /* U+1F2A+0345 -> U+1F9A */ 1541, - /* U+1F2B+0345 -> U+1F9B */ 1542, - /* U+1F2C+0345 -> U+1F9C */ 1543, - /* U+1F2D+0345 -> U+1F9D */ 1544, - /* U+1F2E+0345 -> U+1F9E */ 1545, - /* U+1F2F+0345 -> U+1F9F */ 1546, - /* U+1F30+0300 -> U+1F32 */ 1447, - /* U+1F30+0301 -> U+1F34 */ 1449, - /* U+1F30+0342 -> U+1F36 */ 1451, - /* U+1F31+0300 -> U+1F33 */ 1448, - /* U+1F31+0301 -> U+1F35 */ 1450, - /* U+1F31+0342 -> U+1F37 */ 1452, - /* U+1F38+0300 -> U+1F3A */ 1455, - /* U+1F38+0301 -> U+1F3C */ 1457, - /* U+1F38+0342 -> U+1F3E */ 1459, - /* U+1F39+0300 -> U+1F3B */ 1456, - /* U+1F39+0301 -> U+1F3D */ 1458, - /* U+1F39+0342 -> U+1F3F */ 1460, - /* U+1F40+0300 -> U+1F42 */ 1463, - /* U+1F40+0301 -> U+1F44 */ 1465, - /* U+1F41+0300 -> U+1F43 */ 1464, - /* U+1F41+0301 -> U+1F45 */ 1466, - /* U+1F48+0300 -> U+1F4A */ 1469, - /* U+1F48+0301 -> U+1F4C */ 1471, - /* U+1F49+0300 -> U+1F4B */ 1470, - /* U+1F49+0301 -> U+1F4D */ 1472, - /* U+1F50+0300 -> U+1F52 */ 1475, - /* U+1F50+0301 -> U+1F54 */ 1477, - /* U+1F50+0342 -> U+1F56 */ 1479, - /* U+1F51+0300 -> U+1F53 */ 1476, - /* U+1F51+0301 -> U+1F55 */ 1478, - /* U+1F51+0342 -> U+1F57 */ 1480, - /* U+1F59+0300 -> U+1F5B */ 1482, - /* U+1F59+0301 -> U+1F5D */ 1483, - /* U+1F59+0342 -> U+1F5F */ 1484, - /* U+1F60+0300 -> U+1F62 */ 1487, - /* U+1F60+0301 -> U+1F64 */ 1489, - /* U+1F60+0342 -> U+1F66 */ 1491, - /* U+1F60+0345 -> U+1FA0 */ 1547, - /* U+1F61+0300 -> U+1F63 */ 1488, - /* U+1F61+0301 -> U+1F65 */ 1490, - /* U+1F61+0342 -> U+1F67 */ 1492, - /* U+1F61+0345 -> U+1FA1 */ 1548, - /* U+1F62+0345 -> U+1FA2 */ 1549, - /* U+1F63+0345 -> U+1FA3 */ 1550, - /* U+1F64+0345 -> U+1FA4 */ 1551, - /* U+1F65+0345 -> U+1FA5 */ 1552, - /* U+1F66+0345 -> U+1FA6 */ 1553, - /* U+1F67+0345 -> U+1FA7 */ 1554, - /* U+1F68+0300 -> U+1F6A */ 1495, - /* U+1F68+0301 -> U+1F6C */ 1497, - /* U+1F68+0342 -> U+1F6E */ 1499, - /* U+1F68+0345 -> U+1FA8 */ 1555, - /* U+1F69+0300 -> U+1F6B */ 1496, - /* U+1F69+0301 -> U+1F6D */ 1498, - /* U+1F69+0342 -> U+1F6F */ 1500, - /* U+1F69+0345 -> U+1FA9 */ 1556, - /* U+1F6A+0345 -> U+1FAA */ 1557, - /* U+1F6B+0345 -> U+1FAB */ 1558, - /* U+1F6C+0345 -> U+1FAC */ 1559, - /* U+1F6D+0345 -> U+1FAD */ 1560, - /* U+1F6E+0345 -> U+1FAE */ 1561, - /* U+1F6F+0345 -> U+1FAF */ 1562, - /* U+1F70+0345 -> U+1FB2 */ 1565, - /* U+1F74+0345 -> U+1FC2 */ 1580, - /* U+1F7C+0345 -> U+1FF2 */ 1622, - /* U+1FB6+0345 -> U+1FB7 */ 1569, - /* U+1FBF+0300 -> U+1FCD */ 1590, - /* U+1FBF+0301 -> U+1FCE */ 1591, - /* U+1FBF+0342 -> U+1FCF */ 1592, - /* U+1FC6+0345 -> U+1FC7 */ 1584, - /* U+1FF6+0345 -> U+1FF7 */ 1626, - /* U+1FFE+0300 -> U+1FDD */ 1603, - /* U+1FFE+0301 -> U+1FDE */ 1604, - /* U+1FFE+0342 -> U+1FDF */ 1605, - /* U+2190+0338 -> U+219A */ 1836, - /* U+2192+0338 -> U+219B */ 1837, - /* U+2194+0338 -> U+21AE */ 1838, - /* U+21D0+0338 -> U+21CD */ 1839, - /* U+21D2+0338 -> U+21CF */ 1841, - /* U+21D4+0338 -> U+21CE */ 1840, - /* U+2203+0338 -> U+2204 */ 1842, - /* U+2208+0338 -> U+2209 */ 1843, - /* U+220B+0338 -> U+220C */ 1844, - /* U+2223+0338 -> U+2224 */ 1845, - /* U+2225+0338 -> U+2226 */ 1846, - /* U+223C+0338 -> U+2241 */ 1851, - /* U+2243+0338 -> U+2244 */ 1852, - /* U+2245+0338 -> U+2247 */ 1853, - /* U+2248+0338 -> U+2249 */ 1854, - /* U+224D+0338 -> U+226D */ 1857, - /* U+2261+0338 -> U+2262 */ 1856, - /* U+2264+0338 -> U+2270 */ 1860, - /* U+2265+0338 -> U+2271 */ 1861, - /* U+2272+0338 -> U+2274 */ 1862, - /* U+2273+0338 -> U+2275 */ 1863, - /* U+2276+0338 -> U+2278 */ 1864, - /* U+2277+0338 -> U+2279 */ 1865, - /* U+227A+0338 -> U+2280 */ 1866, - /* U+227B+0338 -> U+2281 */ 1867, - /* U+227C+0338 -> U+22E0 */ 1876, - /* U+227D+0338 -> U+22E1 */ 1877, - /* U+2282+0338 -> U+2284 */ 1868, - /* U+2283+0338 -> U+2285 */ 1869, - /* U+2286+0338 -> U+2288 */ 1870, - /* U+2287+0338 -> U+2289 */ 1871, - /* U+2291+0338 -> U+22E2 */ 1878, - /* U+2292+0338 -> U+22E3 */ 1879, - /* U+22A2+0338 -> U+22AC */ 1872, - /* U+22A8+0338 -> U+22AD */ 1873, - /* U+22A9+0338 -> U+22AE */ 1874, - /* U+22AB+0338 -> U+22AF */ 1875, - /* U+22B2+0338 -> U+22EA */ 1880, - /* U+22B3+0338 -> U+22EB */ 1881, - /* U+22B4+0338 -> U+22EC */ 1882, - /* U+22B5+0338 -> U+22ED */ 1883, - /* U+3046+3099 -> U+3094 */ 2321, - /* U+304B+3099 -> U+304C */ 2296, - /* U+304D+3099 -> U+304E */ 2297, - /* U+304F+3099 -> U+3050 */ 2298, - /* U+3051+3099 -> U+3052 */ 2299, - /* U+3053+3099 -> U+3054 */ 2300, - /* U+3055+3099 -> U+3056 */ 2301, - /* U+3057+3099 -> U+3058 */ 2302, - /* U+3059+3099 -> U+305A */ 2303, - /* U+305B+3099 -> U+305C */ 2304, - /* U+305D+3099 -> U+305E */ 2305, - /* U+305F+3099 -> U+3060 */ 2306, - /* U+3061+3099 -> U+3062 */ 2307, - /* U+3064+3099 -> U+3065 */ 2308, - /* U+3066+3099 -> U+3067 */ 2309, - /* U+3068+3099 -> U+3069 */ 2310, - /* U+306F+3099 -> U+3070 */ 2311, - /* U+306F+309A -> U+3071 */ 2312, - /* U+3072+3099 -> U+3073 */ 2313, - /* U+3072+309A -> U+3074 */ 2314, - /* U+3075+3099 -> U+3076 */ 2315, - /* U+3075+309A -> U+3077 */ 2316, - /* U+3078+3099 -> U+3079 */ 2317, - /* U+3078+309A -> U+307A */ 2318, - /* U+307B+3099 -> U+307C */ 2319, - /* U+307B+309A -> U+307D */ 2320, - /* U+309D+3099 -> U+309E */ 2326, - /* U+30A6+3099 -> U+30F4 */ 2353, - /* U+30AB+3099 -> U+30AC */ 2328, - /* U+30AD+3099 -> U+30AE */ 2329, - /* U+30AF+3099 -> U+30B0 */ 2330, - /* U+30B1+3099 -> U+30B2 */ 2331, - /* U+30B3+3099 -> U+30B4 */ 2332, - /* U+30B5+3099 -> U+30B6 */ 2333, - /* U+30B7+3099 -> U+30B8 */ 2334, - /* U+30B9+3099 -> U+30BA */ 2335, - /* U+30BB+3099 -> U+30BC */ 2336, - /* U+30BD+3099 -> U+30BE */ 2337, - /* U+30BF+3099 -> U+30C0 */ 2338, - /* U+30C1+3099 -> U+30C2 */ 2339, - /* U+30C4+3099 -> U+30C5 */ 2340, - /* U+30C6+3099 -> U+30C7 */ 2341, - /* U+30C8+3099 -> U+30C9 */ 2342, - /* U+30CF+3099 -> U+30D0 */ 2343, - /* U+30CF+309A -> U+30D1 */ 2344, - /* U+30D2+3099 -> U+30D3 */ 2345, - /* U+30D2+309A -> U+30D4 */ 2346, - /* U+30D5+3099 -> U+30D6 */ 2347, - /* U+30D5+309A -> U+30D7 */ 2348, - /* U+30D8+3099 -> U+30D9 */ 2349, - /* U+30D8+309A -> U+30DA */ 2350, - /* U+30DB+3099 -> U+30DC */ 2351, - /* U+30DB+309A -> U+30DD */ 2352, - /* U+30EF+3099 -> U+30F7 */ 2354, - /* U+30F0+3099 -> U+30F8 */ 2355, - /* U+30F1+3099 -> U+30F9 */ 2356, - /* U+30F2+3099 -> U+30FA */ 2357, - /* U+30FD+3099 -> U+30FE */ 2358, - /* U+105D2+0307 -> U+105C9 */ 4599, - /* U+105DA+0307 -> U+105E4 */ 4600, - /* U+11099+110BA -> U+1109A */ 4697, - /* U+1109B+110BA -> U+1109C */ 4698, - /* U+110A5+110BA -> U+110AB */ 4699, - /* U+11131+11127 -> U+1112E */ 4705, - /* U+11132+11127 -> U+1112F */ 4706, - /* U+11347+1133E -> U+1134B */ 4718, - /* U+11347+11357 -> U+1134C */ 4719, - /* U+11382+113C9 -> U+11383 */ 4733, - /* U+11384+113BB -> U+11385 */ 4734, - /* U+1138B+113C2 -> U+1138E */ 4735, - /* U+11390+113C9 -> U+11391 */ 4736, - /* U+113C2+113B8 -> U+113C7 */ 4738, - /* U+113C2+113C2 -> U+113C5 */ 4737, - /* U+113C2+113C9 -> U+113C8 */ 4739, - /* U+114B9+114B0 -> U+114BC */ 4747, - /* U+114B9+114BA -> U+114BB */ 4746, - /* U+114B9+114BD -> U+114BE */ 4748, - /* U+115B8+115AF -> U+115BA */ 4751, - /* U+115B9+115AF -> U+115BB */ 4752, - /* U+11935+11930 -> U+11938 */ 4761, - /* U+1611E+1611E -> U+16121 */ 4776, - /* U+1611E+1611F -> U+16123 */ 4778, - /* U+1611E+16120 -> U+16125 */ 4780, - /* U+1611E+16129 -> U+16122 */ 4777, - /* U+16121+1611F -> U+16126 */ 4781, - /* U+16121+16120 -> U+16128 */ 4783, - /* U+16122+1611F -> U+16127 */ 4782, - /* U+16129+1611F -> U+16124 */ 4779, - /* U+16D63+16D67 -> U+16D69 */ 4798, - /* U+16D67+16D67 -> U+16D68 */ 4797, - /* U+16D69+16D67 -> U+16D6A */ 4799 + /* U+1B05+1B35 -> U+1B06 */ 965, + /* U+1B07+1B35 -> U+1B08 */ 966, + /* U+1B09+1B35 -> U+1B0A */ 967, + /* U+1B0B+1B35 -> U+1B0C */ 968, + /* U+1B0D+1B35 -> U+1B0E */ 969, + /* U+1B11+1B35 -> U+1B12 */ 970, + /* U+1B3A+1B35 -> U+1B3B */ 972, + /* U+1B3C+1B35 -> U+1B3D */ 973, + /* U+1B3E+1B35 -> U+1B40 */ 974, + /* U+1B3F+1B35 -> U+1B41 */ 975, + /* U+1B42+1B35 -> U+1B43 */ 976, + /* U+1E36+0304 -> U+1E38 */ 1238, + /* U+1E37+0304 -> U+1E39 */ 1239, + /* U+1E5A+0304 -> U+1E5C */ 1274, + /* U+1E5B+0304 -> U+1E5D */ 1275, + /* U+1E62+0307 -> U+1E68 */ 1286, + /* U+1E63+0307 -> U+1E69 */ 1287, + /* U+1EA0+0302 -> U+1EAC */ 1350, + /* U+1EA0+0306 -> U+1EB6 */ 1360, + /* U+1EA1+0302 -> U+1EAD */ 1351, + /* U+1EA1+0306 -> U+1EB7 */ 1361, + /* U+1EB8+0302 -> U+1EC6 */ 1376, + /* U+1EB9+0302 -> U+1EC7 */ 1377, + /* U+1ECC+0302 -> U+1ED8 */ 1394, + /* U+1ECD+0302 -> U+1ED9 */ 1395, + /* U+1F00+0300 -> U+1F02 */ 1430, + /* U+1F00+0301 -> U+1F04 */ 1432, + /* U+1F00+0342 -> U+1F06 */ 1434, + /* U+1F00+0345 -> U+1F80 */ 1542, + /* U+1F01+0300 -> U+1F03 */ 1431, + /* U+1F01+0301 -> U+1F05 */ 1433, + /* U+1F01+0342 -> U+1F07 */ 1435, + /* U+1F01+0345 -> U+1F81 */ 1543, + /* U+1F02+0345 -> U+1F82 */ 1544, + /* U+1F03+0345 -> U+1F83 */ 1545, + /* U+1F04+0345 -> U+1F84 */ 1546, + /* U+1F05+0345 -> U+1F85 */ 1547, + /* U+1F06+0345 -> U+1F86 */ 1548, + /* U+1F07+0345 -> U+1F87 */ 1549, + /* U+1F08+0300 -> U+1F0A */ 1438, + /* U+1F08+0301 -> U+1F0C */ 1440, + /* U+1F08+0342 -> U+1F0E */ 1442, + /* U+1F08+0345 -> U+1F88 */ 1550, + /* U+1F09+0300 -> U+1F0B */ 1439, + /* U+1F09+0301 -> U+1F0D */ 1441, + /* U+1F09+0342 -> U+1F0F */ 1443, + /* U+1F09+0345 -> U+1F89 */ 1551, + /* U+1F0A+0345 -> U+1F8A */ 1552, + /* U+1F0B+0345 -> U+1F8B */ 1553, + /* U+1F0C+0345 -> U+1F8C */ 1554, + /* U+1F0D+0345 -> U+1F8D */ 1555, + /* U+1F0E+0345 -> U+1F8E */ 1556, + /* U+1F0F+0345 -> U+1F8F */ 1557, + /* U+1F10+0300 -> U+1F12 */ 1446, + /* U+1F10+0301 -> U+1F14 */ 1448, + /* U+1F11+0300 -> U+1F13 */ 1447, + /* U+1F11+0301 -> U+1F15 */ 1449, + /* U+1F18+0300 -> U+1F1A */ 1452, + /* U+1F18+0301 -> U+1F1C */ 1454, + /* U+1F19+0300 -> U+1F1B */ 1453, + /* U+1F19+0301 -> U+1F1D */ 1455, + /* U+1F20+0300 -> U+1F22 */ 1458, + /* U+1F20+0301 -> U+1F24 */ 1460, + /* U+1F20+0342 -> U+1F26 */ 1462, + /* U+1F20+0345 -> U+1F90 */ 1558, + /* U+1F21+0300 -> U+1F23 */ 1459, + /* U+1F21+0301 -> U+1F25 */ 1461, + /* U+1F21+0342 -> U+1F27 */ 1463, + /* U+1F21+0345 -> U+1F91 */ 1559, + /* U+1F22+0345 -> U+1F92 */ 1560, + /* U+1F23+0345 -> U+1F93 */ 1561, + /* U+1F24+0345 -> U+1F94 */ 1562, + /* U+1F25+0345 -> U+1F95 */ 1563, + /* U+1F26+0345 -> U+1F96 */ 1564, + /* U+1F27+0345 -> U+1F97 */ 1565, + /* U+1F28+0300 -> U+1F2A */ 1466, + /* U+1F28+0301 -> U+1F2C */ 1468, + /* U+1F28+0342 -> U+1F2E */ 1470, + /* U+1F28+0345 -> U+1F98 */ 1566, + /* U+1F29+0300 -> U+1F2B */ 1467, + /* U+1F29+0301 -> U+1F2D */ 1469, + /* U+1F29+0342 -> U+1F2F */ 1471, + /* U+1F29+0345 -> U+1F99 */ 1567, + /* U+1F2A+0345 -> U+1F9A */ 1568, + /* U+1F2B+0345 -> U+1F9B */ 1569, + /* U+1F2C+0345 -> U+1F9C */ 1570, + /* U+1F2D+0345 -> U+1F9D */ 1571, + /* U+1F2E+0345 -> U+1F9E */ 1572, + /* U+1F2F+0345 -> U+1F9F */ 1573, + /* U+1F30+0300 -> U+1F32 */ 1474, + /* U+1F30+0301 -> U+1F34 */ 1476, + /* U+1F30+0342 -> U+1F36 */ 1478, + /* U+1F31+0300 -> U+1F33 */ 1475, + /* U+1F31+0301 -> U+1F35 */ 1477, + /* U+1F31+0342 -> U+1F37 */ 1479, + /* U+1F38+0300 -> U+1F3A */ 1482, + /* U+1F38+0301 -> U+1F3C */ 1484, + /* U+1F38+0342 -> U+1F3E */ 1486, + /* U+1F39+0300 -> U+1F3B */ 1483, + /* U+1F39+0301 -> U+1F3D */ 1485, + /* U+1F39+0342 -> U+1F3F */ 1487, + /* U+1F40+0300 -> U+1F42 */ 1490, + /* U+1F40+0301 -> U+1F44 */ 1492, + /* U+1F41+0300 -> U+1F43 */ 1491, + /* U+1F41+0301 -> U+1F45 */ 1493, + /* U+1F48+0300 -> U+1F4A */ 1496, + /* U+1F48+0301 -> U+1F4C */ 1498, + /* U+1F49+0300 -> U+1F4B */ 1497, + /* U+1F49+0301 -> U+1F4D */ 1499, + /* U+1F50+0300 -> U+1F52 */ 1502, + /* U+1F50+0301 -> U+1F54 */ 1504, + /* U+1F50+0342 -> U+1F56 */ 1506, + /* U+1F51+0300 -> U+1F53 */ 1503, + /* U+1F51+0301 -> U+1F55 */ 1505, + /* U+1F51+0342 -> U+1F57 */ 1507, + /* U+1F59+0300 -> U+1F5B */ 1509, + /* U+1F59+0301 -> U+1F5D */ 1510, + /* U+1F59+0342 -> U+1F5F */ 1511, + /* U+1F60+0300 -> U+1F62 */ 1514, + /* U+1F60+0301 -> U+1F64 */ 1516, + /* U+1F60+0342 -> U+1F66 */ 1518, + /* U+1F60+0345 -> U+1FA0 */ 1574, + /* U+1F61+0300 -> U+1F63 */ 1515, + /* U+1F61+0301 -> U+1F65 */ 1517, + /* U+1F61+0342 -> U+1F67 */ 1519, + /* U+1F61+0345 -> U+1FA1 */ 1575, + /* U+1F62+0345 -> U+1FA2 */ 1576, + /* U+1F63+0345 -> U+1FA3 */ 1577, + /* U+1F64+0345 -> U+1FA4 */ 1578, + /* U+1F65+0345 -> U+1FA5 */ 1579, + /* U+1F66+0345 -> U+1FA6 */ 1580, + /* U+1F67+0345 -> U+1FA7 */ 1581, + /* U+1F68+0300 -> U+1F6A */ 1522, + /* U+1F68+0301 -> U+1F6C */ 1524, + /* U+1F68+0342 -> U+1F6E */ 1526, + /* U+1F68+0345 -> U+1FA8 */ 1582, + /* U+1F69+0300 -> U+1F6B */ 1523, + /* U+1F69+0301 -> U+1F6D */ 1525, + /* U+1F69+0342 -> U+1F6F */ 1527, + /* U+1F69+0345 -> U+1FA9 */ 1583, + /* U+1F6A+0345 -> U+1FAA */ 1584, + /* U+1F6B+0345 -> U+1FAB */ 1585, + /* U+1F6C+0345 -> U+1FAC */ 1586, + /* U+1F6D+0345 -> U+1FAD */ 1587, + /* U+1F6E+0345 -> U+1FAE */ 1588, + /* U+1F6F+0345 -> U+1FAF */ 1589, + /* U+1F70+0345 -> U+1FB2 */ 1592, + /* U+1F74+0345 -> U+1FC2 */ 1607, + /* U+1F7C+0345 -> U+1FF2 */ 1649, + /* U+1FB6+0345 -> U+1FB7 */ 1596, + /* U+1FBF+0300 -> U+1FCD */ 1617, + /* U+1FBF+0301 -> U+1FCE */ 1618, + /* U+1FBF+0342 -> U+1FCF */ 1619, + /* U+1FC6+0345 -> U+1FC7 */ 1611, + /* U+1FF6+0345 -> U+1FF7 */ 1653, + /* U+1FFE+0300 -> U+1FDD */ 1630, + /* U+1FFE+0301 -> U+1FDE */ 1631, + /* U+1FFE+0342 -> U+1FDF */ 1632, + /* U+2190+0338 -> U+219A */ 1863, + /* U+2192+0338 -> U+219B */ 1864, + /* U+2194+0338 -> U+21AE */ 1865, + /* U+21D0+0338 -> U+21CD */ 1866, + /* U+21D2+0338 -> U+21CF */ 1868, + /* U+21D4+0338 -> U+21CE */ 1867, + /* U+2203+0338 -> U+2204 */ 1869, + /* U+2208+0338 -> U+2209 */ 1870, + /* U+220B+0338 -> U+220C */ 1871, + /* U+2223+0338 -> U+2224 */ 1872, + /* U+2225+0338 -> U+2226 */ 1873, + /* U+223C+0338 -> U+2241 */ 1878, + /* U+2243+0338 -> U+2244 */ 1879, + /* U+2245+0338 -> U+2247 */ 1880, + /* U+2248+0338 -> U+2249 */ 1881, + /* U+224D+0338 -> U+226D */ 1884, + /* U+2261+0338 -> U+2262 */ 1883, + /* U+2264+0338 -> U+2270 */ 1887, + /* U+2265+0338 -> U+2271 */ 1888, + /* U+2272+0338 -> U+2274 */ 1889, + /* U+2273+0338 -> U+2275 */ 1890, + /* U+2276+0338 -> U+2278 */ 1891, + /* U+2277+0338 -> U+2279 */ 1892, + /* U+227A+0338 -> U+2280 */ 1893, + /* U+227B+0338 -> U+2281 */ 1894, + /* U+227C+0338 -> U+22E0 */ 1903, + /* U+227D+0338 -> U+22E1 */ 1904, + /* U+2282+0338 -> U+2284 */ 1895, + /* U+2283+0338 -> U+2285 */ 1896, + /* U+2286+0338 -> U+2288 */ 1897, + /* U+2287+0338 -> U+2289 */ 1898, + /* U+2291+0338 -> U+22E2 */ 1905, + /* U+2292+0338 -> U+22E3 */ 1906, + /* U+22A2+0338 -> U+22AC */ 1899, + /* U+22A8+0338 -> U+22AD */ 1900, + /* U+22A9+0338 -> U+22AE */ 1901, + /* U+22AB+0338 -> U+22AF */ 1902, + /* U+22B2+0338 -> U+22EA */ 1907, + /* U+22B3+0338 -> U+22EB */ 1908, + /* U+22B4+0338 -> U+22EC */ 1909, + /* U+22B5+0338 -> U+22ED */ 1910, + /* U+3046+3099 -> U+3094 */ 2348, + /* U+304B+3099 -> U+304C */ 2323, + /* U+304D+3099 -> U+304E */ 2324, + /* U+304F+3099 -> U+3050 */ 2325, + /* U+3051+3099 -> U+3052 */ 2326, + /* U+3053+3099 -> U+3054 */ 2327, + /* U+3055+3099 -> U+3056 */ 2328, + /* U+3057+3099 -> U+3058 */ 2329, + /* U+3059+3099 -> U+305A */ 2330, + /* U+305B+3099 -> U+305C */ 2331, + /* U+305D+3099 -> U+305E */ 2332, + /* U+305F+3099 -> U+3060 */ 2333, + /* U+3061+3099 -> U+3062 */ 2334, + /* U+3064+3099 -> U+3065 */ 2335, + /* U+3066+3099 -> U+3067 */ 2336, + /* U+3068+3099 -> U+3069 */ 2337, + /* U+306F+3099 -> U+3070 */ 2338, + /* U+306F+309A -> U+3071 */ 2339, + /* U+3072+3099 -> U+3073 */ 2340, + /* U+3072+309A -> U+3074 */ 2341, + /* U+3075+3099 -> U+3076 */ 2342, + /* U+3075+309A -> U+3077 */ 2343, + /* U+3078+3099 -> U+3079 */ 2344, + /* U+3078+309A -> U+307A */ 2345, + /* U+307B+3099 -> U+307C */ 2346, + /* U+307B+309A -> U+307D */ 2347, + /* U+309D+3099 -> U+309E */ 2353, + /* U+30A6+3099 -> U+30F4 */ 2380, + /* U+30AB+3099 -> U+30AC */ 2355, + /* U+30AD+3099 -> U+30AE */ 2356, + /* U+30AF+3099 -> U+30B0 */ 2357, + /* U+30B1+3099 -> U+30B2 */ 2358, + /* U+30B3+3099 -> U+30B4 */ 2359, + /* U+30B5+3099 -> U+30B6 */ 2360, + /* U+30B7+3099 -> U+30B8 */ 2361, + /* U+30B9+3099 -> U+30BA */ 2362, + /* U+30BB+3099 -> U+30BC */ 2363, + /* U+30BD+3099 -> U+30BE */ 2364, + /* U+30BF+3099 -> U+30C0 */ 2365, + /* U+30C1+3099 -> U+30C2 */ 2366, + /* U+30C4+3099 -> U+30C5 */ 2367, + /* U+30C6+3099 -> U+30C7 */ 2368, + /* U+30C8+3099 -> U+30C9 */ 2369, + /* U+30CF+3099 -> U+30D0 */ 2370, + /* U+30CF+309A -> U+30D1 */ 2371, + /* U+30D2+3099 -> U+30D3 */ 2372, + /* U+30D2+309A -> U+30D4 */ 2373, + /* U+30D5+3099 -> U+30D6 */ 2374, + /* U+30D5+309A -> U+30D7 */ 2375, + /* U+30D8+3099 -> U+30D9 */ 2376, + /* U+30D8+309A -> U+30DA */ 2377, + /* U+30DB+3099 -> U+30DC */ 2378, + /* U+30DB+309A -> U+30DD */ 2379, + /* U+30EF+3099 -> U+30F7 */ 2381, + /* U+30F0+3099 -> U+30F8 */ 2382, + /* U+30F1+3099 -> U+30F9 */ 2383, + /* U+30F2+3099 -> U+30FA */ 2384, + /* U+30FD+3099 -> U+30FE */ 2385, + /* U+105D2+0307 -> U+105C9 */ 4627, + /* U+105DA+0307 -> U+105E4 */ 4628, + /* U+11099+110BA -> U+1109A */ 4727, + /* U+1109B+110BA -> U+1109C */ 4728, + /* U+110A5+110BA -> U+110AB */ 4729, + /* U+11131+11127 -> U+1112E */ 4735, + /* U+11132+11127 -> U+1112F */ 4736, + /* U+11347+1133E -> U+1134B */ 4748, + /* U+11347+11357 -> U+1134C */ 4749, + /* U+11382+113C9 -> U+11383 */ 4763, + /* U+11384+113BB -> U+11385 */ 4764, + /* U+1138B+113C2 -> U+1138E */ 4765, + /* U+11390+113C9 -> U+11391 */ 4766, + /* U+113C2+113B8 -> U+113C7 */ 4768, + /* U+113C2+113C2 -> U+113C5 */ 4767, + /* U+113C2+113C9 -> U+113C8 */ 4769, + /* U+114B9+114B0 -> U+114BC */ 4777, + /* U+114B9+114BA -> U+114BB */ 4776, + /* U+114B9+114BD -> U+114BE */ 4778, + /* U+115B8+115AF -> U+115BA */ 4781, + /* U+115B9+115AF -> U+115BB */ 4782, + /* U+11935+11930 -> U+11938 */ 4791, + /* U+1611E+1611E -> U+16121 */ 4806, + /* U+1611E+1611F -> U+16123 */ 4808, + /* U+1611E+16120 -> U+16125 */ 4810, + /* U+1611E+16129 -> U+16122 */ 4807, + /* U+16121+1611F -> U+16126 */ 4811, + /* U+16121+16120 -> U+16128 */ 4813, + /* U+16122+1611F -> U+16127 */ 4812, + /* U+16129+1611F -> U+16124 */ 4809, + /* U+16D63+16D67 -> U+16D69 */ 4828, + /* U+16D67+16D67 -> U+16D68 */ 4827, + /* U+16D69+16D67 -> U+16D6A */ 4829 }; /* Perfect hash function for recomposition */ diff --git a/src/include/common/unicode_norm_table.h b/src/include/common/unicode_norm_table.h index 38bd8b93c48..724131046de 100644 --- a/src/include/common/unicode_norm_table.h +++ b/src/include/common/unicode_norm_table.h @@ -36,7 +36,7 @@ typedef struct #define DECOMPOSITION_IS_COMPAT(x) (((x)->dec_size_flags & DECOMP_COMPAT) != 0) /* Table of Unicode codepoints and their decompositions */ -static const pg_unicode_decomposition UnicodeDecompMain[6843] = +static const pg_unicode_decomposition UnicodeDecompMain[6878] = { {0x00A0, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0x0020}, {0x00A8, 0, 2 | DECOMP_COMPAT, 0}, @@ -976,6 +976,33 @@ static const pg_unicode_decomposition UnicodeDecompMain[6843] = {0x1ACC, 230, 0, 0}, {0x1ACD, 230, 0, 0}, {0x1ACE, 230, 0, 0}, + {0x1ACF, 230, 0, 0}, + {0x1AD0, 230, 0, 0}, + {0x1AD1, 230, 0, 0}, + {0x1AD2, 230, 0, 0}, + {0x1AD3, 230, 0, 0}, + {0x1AD4, 230, 0, 0}, + {0x1AD5, 230, 0, 0}, + {0x1AD6, 230, 0, 0}, + {0x1AD7, 230, 0, 0}, + {0x1AD8, 230, 0, 0}, + {0x1AD9, 230, 0, 0}, + {0x1ADA, 230, 0, 0}, + {0x1ADB, 230, 0, 0}, + {0x1ADC, 230, 0, 0}, + {0x1ADD, 220, 0, 0}, + {0x1AE0, 230, 0, 0}, + {0x1AE1, 230, 0, 0}, + {0x1AE2, 230, 0, 0}, + {0x1AE3, 230, 0, 0}, + {0x1AE4, 230, 0, 0}, + {0x1AE5, 230, 0, 0}, + {0x1AE6, 220, 0, 0}, + {0x1AE7, 230, 0, 0}, + {0x1AE8, 230, 0, 0}, + {0x1AE9, 230, 0, 0}, + {0x1AEA, 230, 0, 0}, + {0x1AEB, 234, 0, 0}, {0x1B06, 0, 2, 885}, {0x1B08, 0, 2, 887}, {0x1B0A, 0, 2, 889}, @@ -3026,6 +3053,7 @@ static const pg_unicode_decomposition UnicodeDecompMain[6843] = {0xA6F0, 230, 0, 0}, {0xA6F1, 230, 0, 0}, {0xA770, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0xA76F}, + {0xA7F1, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0x0053}, {0xA7F2, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0x0043}, {0xA7F3, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0x0046}, {0xA7F4, 0, 1 | DECOMP_COMPAT | DECOMP_INLINE, 0x0051}, @@ -4714,6 +4742,8 @@ static const pg_unicode_decomposition UnicodeDecompMain[6843] = {0x10D6D, 230, 0, 0}, {0x10EAB, 230, 0, 0}, {0x10EAC, 230, 0, 0}, + {0x10EFA, 220, 0, 0}, + {0x10EFB, 220, 0, 0}, {0x10EFD, 220, 0, 0}, {0x10EFE, 220, 0, 0}, {0x10EFF, 220, 0, 0}, @@ -6038,6 +6068,11 @@ static const pg_unicode_decomposition UnicodeDecompMain[6843] = {0x1E4EF, 230, 0, 0}, {0x1E5EE, 230, 0, 0}, {0x1E5EF, 220, 0, 0}, + {0x1E6E3, 230, 0, 0}, + {0x1E6E6, 230, 0, 0}, + {0x1E6EE, 230, 0, 0}, + {0x1E6EF, 230, 0, 0}, + {0x1E6F5, 230, 0, 0}, {0x1E8D0, 220, 0, 0}, {0x1E8D1, 220, 0, 0}, {0x1E8D2, 220, 0, 0}, diff --git a/src/include/common/unicode_normprops_table.h b/src/include/common/unicode_normprops_table.h index f1072c9f099..c389aad2907 100644 --- a/src/include/common/unicode_normprops_table.h +++ b/src/include/common/unicode_normprops_table.h @@ -3147,6 +3147,7 @@ static const pg_unicode_normprops UnicodeNormProps_NFKC_QC[] = { {0xA69C, UNICODE_NORM_QC_NO}, {0xA69D, UNICODE_NORM_QC_NO}, {0xA770, UNICODE_NORM_QC_NO}, + {0xA7F1, UNICODE_NORM_QC_NO}, {0xA7F2, UNICODE_NORM_QC_NO}, {0xA7F3, UNICODE_NORM_QC_NO}, {0xA7F4, UNICODE_NORM_QC_NO}, @@ -6724,70 +6725,144 @@ static const pg_unicode_normprops UnicodeNormProps_NFKC_QC[] = { static int NFKC_QC_hash_func(const void *key) { - static const int16 h[10193] = { - 1878, 1879, 1880, 1881, 1882, 1883, 1884, 1885, - 1886, 1887, 1888, 32767, 32767, 1889, 3141, -7211, - 1892, 1893, 1894, 1895, 1896, 1897, 1898, 1899, - -1320, 1901, 1902, -1322, 1904, 1905, 1921, 1921, - 1921, 1909, 1910, 1911, 1924, 1924, 1914, 1915, - 1916, 1917, 1918, 1919, 1920, 1921, 1922, 1923, - 1924, 1925, -1976, 4681, 1323, 1929, 1930, 4682, - 1932, 1933, 1934, 1935, 1936, 1937, 0, 0, + static const int16 h[10195] = { + 3142, -807, -807, -807, -807, -807, -807, 32767, + 3460, 3461, 3143, 3463, 32767, 3144, 1109, 3465, + 3466, 3467, 3468, 3469, -2468, -2468, 32767, -2469, + -2469, -2469, -2469, -347, -2469, -2469, 32767, -2470, + -2470, -2470, 3153, -2470, -2470, -617, -617, -1404, + -1404, -471, -470, -469, -468, -467, -466, -465, + -464, -463, -462, -461, -460, -459, -458, -457, + -456, -455, -454, 358, -453, 463, -451, -450, + 358, -449, -448, -447, -446, 0, 358, -444, + 358, 358, 358, -443, -1622, -2437, -2437, -2437, + -2437, -2437, 358, -2438, -435, -434, -433, -432, + -431, -430, -429, -428, -427, -426, -425, 358, + -2426, -2426, -2426, -2426, -2426, -4539, -3246, -416, + -415, -414, -2421, -4543, -2420, -2420, -2420, -2420, + -2420, -2420, 3555, 3556, 3557, -2423, -2423, -2423, + -2423, -2423, -2423, -2423, -2423, -2423, -2423, -2423, + -2423, -2423, -2423, -5599, 1496, 1496, 976, 977, + -5597, -5597, -5597, -5597, -5597, 2776, 2776, -2886, + -5597, -5597, -5597, -5597, -1411, -1411, -1411, -2466, + -1411, -1411, -1411, 3506, 3507, 3508, 4742, -205, + 0, -205, 3513, -205, -205, -205, 6575, -1411, + 1, -1411, 2, -1411, -1411, -1411, -1411, 3, + -1411, -1411, 4, 5, 6, 7, -484, -1411, + 8, 9, 10, -1411, 11, 12, 13, -1411, + -1411, -1411, -1284, 359, 359, -1283, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 1974, + 359, 359, 359, 359, 359, 2842, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 359, 359, 359, 359, + 359, 359, 359, 359, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 422, 510, 422, 422, - 0, 0, 0, 0, 0, 0, 0, 1822, - 0, 431, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 14, 15, 0, 0, 0, + 0, 0, 32767, 2707, 0, 0, 0, 32767, + 16, 17, 32767, 2711, 2712, 2713, 32767, 2714, + 32767, 2715, 18, 2717, 2718, 2719, 2720, 2721, + 4741, 2723, 2724, 2725, 2726, 2727, 2728, 2729, + 2730, 2731, 2732, 2733, 2734, 2735, 2736, 2737, + 2738, 2739, 2740, 2741, 2742, 2743, 2744, 2745, + 2746, 2747, 2748, 2749, 2750, 2751, 2752, 2753, + 2754, 2755, 2756, 2757, 2758, 2759, 2760, 2761, + 2762, -2601, 2764, 2765, 2766, 2767, 2768, 2769, + 19, 2771, 2772, 2773, 512, 512, 512, 512, + 512, 2779, 512, 512, 512, 512, 512, 512, + 512, 2787, 2788, 512, 2790, 512, 2792, 512, + 512, 2795, 2796, 2797, 3997, 3997, 3997, 3997, + 3997, 3997, 3997, 3997, 3997, 3997, 3997, 3997, + 3666, 1682, 1683, 1222, 1684, 1685, 1686, 1222, + 1687, 1688, 1689, 1690, 1691, 1692, 1693, 1222, + 1694, 1695, 1696, 1697, 1698, 2831, 1223, 1223, + 2834, 2835, 1703, 2837, 0, 1708, 1709, 22, + 23, 24, 25, 26, 27, 28, 1714, 1715, + 1716, 1717, 1718, 1719, 3954, 1721, 1722, 1723, + 1724, 1725, 0, 4056, 0, 4057, 4057, 4057, + 4057, 4057, 4057, 4057, 0, 4058, 4058, 4058, + 4058, 4058, 4058, 4058, 4058, 1748, 1749, 1750, + 11099, 11100, 11101, 11102, 11103, 1756, 1757, 5022, + 1759, 1760, 1761, 1762, 5023, 6395, 4421, 6052, + 1233, 5143, 1233, 2281, 2282, 2283, 6667, 6668, + 6669, 5024, 6671, 6672, 6673, 6674, 1233, 2909, + 2909, 1233, 1233, 1233, 1233, 4676, 3599, 1233, + 1233, 1233, 1233, 1233, 1233, 4684, 4685, 4686, + 4687, 4688, 4689, 2288, 2289, 2290, 4693, 2291, + 2292, 4696, 4697, 4698, 2293, 4700, 4701, 4702, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1840, 1840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3814, 3814, 4799, 3814, 4724, 4725, 3816, + 2798, 4728, 4729, 4730, 4731, 2794, 4733, 4734, + 4735, 4736, 2790, 4738, 4739, 4740, 4741, 4742, + 4743, 4744, 4745, 4746, 4747, 4748, 4749, 6909, + 4751, 4752, 4753, 677, 4755, 4756, 4757, 4758, + 4759, 4790, 4761, 4791, 4792, 4793, 4794, 4795, + 4767, 4768, 4769, 4770, 4771, 4772, 4773, 7972, + 4775, 4776, 4777, 4778, 4779, 4780, 4781, 4782, + 4783, 4784, 0, 0, 4787, 4788, 4789, 4790, + 4791, 3787, 4793, 4794, 4795, 4796, 4797, 4798, + 5380, 4800, 4801, 2582, 4803, 4804, 4805, 4806, + 2583, 4808, 4809, 4810, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 2010, 2011, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 678, 679, 680, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 41, 42, 43, 44, 45, 46, + 32767, 32767, 47, 48, 49, 50, 51, 4137, + -6157, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 52, 53, 54, 55, 56, + 32767, 57, 58, 59, 60, 61, 62, 63, + 32767, 32767, 64, 32767, 65, 32767, 66, 67, + 32767, 32767, 32767, 32767, 32767, 32767, -3417, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, -3416, -3084, + -1099, -1099, -637, -1098, 32767, 32767, 32767, 32767, + -1101, -1101, 32767, -1102, -1102, 32767, 32767, 32767, + 32767, 32767, 32767, -1107, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 592, -1115, -1115, 573, 573, + 573, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 0, 0, 0, + 32767, 0, 0, 0, 0, 0, 0, 593, + 0, 0, 0, 0, 0, -1259, 0, 0, + 0, -1807, 0, 0, 0, 0, 0, -1806, + -1805, 0, -1804, 0, 32767, 0, 0, 32767, + 0, 32767, 32767, 0, 32767, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 32767, + 0, 0, 0, 0, 32767, 0, 32767, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, + 32767, 32767, 32767, 0, 32767, 0, 32767, 0, + 32767, 0, 0, 0, 32767, 0, 0, 32767, + 0, 32767, 32767, 0, 32767, 0, 32767, 0, + 32767, 0, 32767, 0, 32767, 0, 0, 32767, + 0, 32767, 32767, 0, 0, 0, -4383, -4383, + -4383, -2737, 0, 0, 0, 0, 0, 32767, + 0, 0, 0, 0, 32767, 0, 0, 0, + 0, 32767, 0, 32767, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 0, 0, 0, + 32767, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2762, 2762, 2762, - 2762, 2762, 2762, 2762, 2762, 2762, 2762, 2762, - 2762, 2762, 2762, 2762, 2762, 2762, 2762, 2762, - 2762, 2762, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2812, 2812, 2812, 2812, - 2812, 2812, 2812, 2812, 2812, 2812, 2812, 2812, - 2812, 2812, -1449, 5319, 2812, 2812, 2812, 2812, - 2812, 2812, 2812, 2812, 2812, 2812, -534, 0, - 0, 0, 0, 348, 32767, 349, 0, 0, - 0, 0, 0, 0, 32767, 32767, 0, 0, - 0, -1517, 0, -1517, 32767, -1516, 4370, 4371, - 4372, 4373, 4374, 4375, 4376, 4377, 4378, 4379, - 0, 32767, 32767, -23190,4110, 0, 0, 0, - 0, 0, 0, 32767, 0, 0, 0, 0, - -622, -622, 0, -3928, -1253, -1252, -5473, -3927, - -3927, -3927, -3927, -3927, -3927, -3927, -3927, -3927, - -3927, -3927, -3927, -3927, -3927, -3580, -3580, -3925, - -3580, -3924, -3580, -3580, -3922, -3922, -3922, -3922, - -3922, -3922, -3922, -3922, 0, 0, -3484, -3919, - -3482, -3918, -3480, -3578, -3916, -3916, -3578, -3578, - -3578, -3913, -3913, -3913, -3913, -3913, -3913, -3913, - -3913, -3913, -3913, -3913, -3913, -3913, -3913, -3913, - -3913, -3913, -3913, -3913, -3913, -3913, -3913, -3913, - -3913, -3913, -3913, -3913, -3913, -3913, -3913, -3913, - -3913, -3913, -3913, -3913, -3913, -3578, 625, -5288, - 627, 628, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2496, 2497, 2498, 2499, 2500, - 2501, 2502, 2503, 2504, 2505, 2506, 2507, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, -1769, -1768, -1767, -3528, 32767, 32767, + 0, 0, 0, 0, 4405, 4406, 4407, 2139, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, -4117, -4459, -4459, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -6795,595 +6870,549 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 3146, 32767, 32767, + 32767, 32767, 32767, 3465, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -2719, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, -4059, -4059, -4059, -4059, 895, + 895, 895, -4059, -4059, 897, -4059, -4059, -4059, + -4059, -4059, -4059, -4059, -4059, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 1051, 1052, 1053, 1054, 1055, + 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, + 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, + 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, + 1080, 1081, 1082, 1083, 1084, 1085, 1086, 0, + 0, 0, 0, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 9750, 9751, 0, 1381, 1382, 1383, + 3694, 3694, 3694, -5654, -5654, -5654, -5654, -5654, + 3694, 3694, 430, 3694, 3694, 3694, 3694, 434, + -937, 1038, -592, 4228, 319, 4230, 3183, 3183, + 3183, -1200, -1200, -1200, 446, -1200, -1200, -1200, + -1200, 4242, 2567, 2568, 4245, 4246, 4247, 4248, + 806, 1884, 4251, 4252, 4253, 4254, 4255, 4256, + 806, 806, 806, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -2828, -975, -975, -1762, -1762, + -829, -828, -827, -826, -825, -824, -823, -822, + -821, -820, -819, -818, -817, -816, -815, -814, + -813, -812, 0, -811, 105, -809, -808, 0, + -807, -806, -805, -804, -358, 0, -802, 0, + 0, 0, -801, -1980, -2795, -2795, -2795, -2795, + -2795, 0, -2796, -793, -792, -791, -790, -789, + -788, -787, -786, -785, -784, -783, 0, -2784, + -2784, -2784, -2784, -2784, -4897, -3604, -774, -773, + -772, -2779, -4901, -2778, -2778, -2778, -2778, -2778, + -2778, 3197, 3198, 3199, -2781, -2781, -2781, -2781, + -2781, -2781, -2781, 32767, 32767, 1525, -698, 1527, + 1528, 32767, 32767, 32767, -2757, -2756, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, + 32767, 0, 32767, 32767, 0, 32767, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -6479, -6478, -6477, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 41, 42, 43, 44, 45, 46, - 32767, 32767, 47, 48, 49, 50, 51, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 52, 1131, 8054, 3425, -19247, - 8047, -19248,8049, -19249,8051, -14620,8053, -19240, - 8056, 3330, 8058, 8059, 3430, -19242,3330, 3330, - 3330, 3330, 3330, -11231,8049, 3330, 3330, 3330, - 3330, -3326, 33, -3326, 3330, -3325, -3325, -3325, - 3330, -3326, -3326, 1075, 4681, 4682, 8076, -3327, - 8079, 19509, -7787, 4688, 4689, 1331, 4691, -1964, - 4692, 4693, 4694, 4695, 4696, 4697, 297, -3308, - -3308, -6701, 4703, -6702, -18131,9166, -3308, 4711, - -2199, 4724, 95, -22577,4717, -22578,4719, -22579, - 4721, -17950,4723, -22570,4726, 0, 4728, 4729, - 100, -22572,0, 0, 0, 0, 0, -14561, - 4719, 0, 0, 0, 0, -6656, -3297, -6656, - 0, -6655, -6655, -6655, 0, -6656, -6656, -2255, - 1351, 1352, 4746, -6657, 4749, 16179, -11117,1358, - 1359, -1999, 0, 0, 0, 938, 0, 0, - 0, 0, 0, 0, 1255, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 4081, 4081, 4081, - 4081, 4081, 2312, 2313, 2314, 553, 0, 0, - 0, 0, 0, 0, 0, 0, 3580, 2958, - 2958, 3580, -348, 2327, 2328, -1893, -347, -347, - -347, -347, -347, -347, -347, -347, -347, -347, - -347, -347, -347, -347, 0, 0, -345, 0, - -344, 0, 0, -342, -342, -342, -342, -342, - -342, -342, -342, -342, -342, 94, -341, 96, - -340, 98, 0, -338, -338, 0, 0, 0, - -335, -335, -335, -335, -335, -335, -335, -335, - -335, -335, -335, -335, -335, -335, -335, -335, - -335, -335, -335, -335, -335, -335, -335, -335, - -335, -335, -335, -335, -335, -335, -335, -335, - -335, -335, -335, -335, 0, 4203, -1710, 32767, + 32767, 106, 107, 108, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 109, 110, 111, 112, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 1, 32767, 2, 32767, 32767, 32767, 32767, -2759, - 32767, 32767, -2758, -2757, -2756, -2755, 32767, 32767, - -2754, -2753, -2752, 32767, -2751, -2750, -2749, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, -1362, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, -3508, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 682, - 683, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 2456, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 687, 688, 689, 690, + 691, 692, 693, 694, 695, 696, 697, 698, + 699, 700, 701, 702, 703, 704, 705, 706, + 707, 708, 709, 710, 711, 712, 713, 714, + 715, 716, 717, 718, 719, 720, 721, 722, + 723, 724, -921, 726, 727, 728, 729, 730, + 731, -1051, 733, 734, 735, 736, 737, 738, + 739, 740, 741, 742, 743, 744, 745, 746, + 747, 748, 749, 750, 751, 752, 753, 754, + 755, 756, 757, 758, 759, 760, 761, 762, + 763, 764, 765, 766, 767, 768, 769, 770, + 771, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 781, 782, 783, 784, 785, 786, + 787, 788, 789, 790, 791, 792, 793, 794, + 795, 796, 797, 798, 799, 800, 801, 802, + 803, 804, 805, 806, 807, 529, 530, -6249, + 1738, 327, 1740, 328, 1742, 1743, 1744, 1745, + 332, 1747, 1748, 334, 334, 334, 334, 826, + 1754, 336, 336, 336, 1758, 337, 337, 337, + 1762, 1763, 1764, 3240, 3241, 3242, -519, -519, + 3245, 3246, 1412, 3248, 3249, 3250, 3251, 3252, + 3253, 3254, 3255, 1134, 3257, 3258, 1135, 3260, + 3261, 3262, -2360, 3264, 3265, 1413, 3267, 3268, + 3269, 868, 869, 870, 871, 872, 873, 874, + 875, 876, 877, 878, 879, 880, 881, 882, + 883, 884, 885, 886, 887, 888, 889, 890, + 891, 892, 893, 894, 895, 896, 897, 898, + 899, 900, 2875, 2875, 2875, 2875, 374, 2876, + 2876, 2876, 374, 2877, 2877, 2877, 2877, 2877, + 2877, 2877, 2877, 2877, 2877, 2877, 374, 2878, + 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 562, 563, 564, + 565, 566, 567, 568, 569, 901, 2886, 2886, + 3348, 2887, 2887, 2887, 3352, 2888, 2888, 2888, + 2888, 2888, 2888, 2888, 3360, 2889, 2889, 2889, + 2889, 2889, 1757, 3366, 3367, 1757, 1757, 2890, + 1757, 4595, 2888, 2888, 4576, 4576, 4576, 4576, + 4576, 4576, 4576, 2891, 2891, 2891, 2891, 2891, + 2891, 657, 2891, 2891, 2891, 2891, 2891, 4617, + 562, 4619, 563, 564, 565, 566, 567, 568, + 569, 4627, 570, 571, 572, 573, 574, 575, + 576, 577, 2888, 2888, 2888, -6460, -6460, -6460, + -6460, -6460, 2888, 2888, -376, 2888, 2888, 2888, + 2888, -372, -1743, 232, -1398, 3422, -487, 3424, + 2377, 2377, 2377, -2006, -2006, -2006, -360, -2006, + -2006, -2006, -2006, 3436, 1761, 1762, 3439, 3440, + 3441, 3442, 0, 1078, 3445, 3446, 3447, 3448, + 3449, 3450, 0, 0, 0, 0, 0, 0, + 2402, 2402, 2402, 0, 2403, 2403, 0, 0, + 0, 2406, 0, 0, 0, 4703, 4704, 4705, + 4706, 4707, 4708, 4709, 4710, 4711, 4712, 4713, + 4714, 4715, 4716, 4717, 4718, 4719, 906, 907, + -77, 909, 0, 0, 910, 1929, 0, 0, + 0, 0, 1938, 0, 0, 0, 0, 1947, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -2159, 0, 0, 0, + 4077, 0, 0, 0, 0, 0, -30, 0, + -29, -29, -29, -29, -29, 0, 0, 0, + 0, 0, 0, 0, -3198, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 4785, + 4786, 0, 0, 0, 0, 0, 1005, 0, + 0, 0, 0, 0, 0, -581, 0, 0, + 2220, 0, 0, 0, 0, 2224, 0, 0, + 0, 0, 1022, 4286, 4286, 4286, 4286, 1026, + -345, 1630, 0, 4820, 911, 4822, 3775, 3775, + 3775, -608, -608, -608, 1038, -608, -608, -608, + -608, 4834, 3159, 3160, 4837, 4838, 4839, 4840, + 1398, 2476, 4843, 4844, 4845, 4846, 4847, 4848, + 1398, 1398, 1398, 592, 592, 592, 592, 592, + 592, 592, 592, 4860, 4861, 4543, 4863, 4864, + 4865, 2511, 4867, 4868, 4869, 4870, 4871, -1066, + -1066, -1066, -1066, -1066, -1066, -1066, 1056, -1066, + -1066, 1058, -1066, -1066, -1066, 4557, -1066, -1066, + 787, 787, 0, 0, 933, 934, 935, 936, + 937, 938, 939, 940, 941, 942, 943, 944, + 945, 946, 947, 948, 949, 950, 4911, 952, + 1868, 954, 955, 4916, 957, 958, 959, 960, + 1406, 4922, 963, 4924, 4925, 4926, 967, -212, + -1027, -1027, -1027, -1027, -1027, -1027, -1027, 976, + 977, 978, 979, 980, 981, 982, 983, 984, + 985, 986, 1769, -1015, -1015, -1015, -1015, -1015, + -3128, -1835, 995, 996, 997, -1010, -3132, -1009, + -1009, -1009, -1009, -1009, -1009, 4966, 4967, 4968, + -1012, -1012, -1012, -1012, -1012, -1012, -1012, -1012, + -1012, -1012, -1012, -1012, -1012, -1012, -4188, 2907, + 2907, 2387, 2388, -4186, -4186, -4186, -4186, -4186, + 4187, 4187, -1475, -4186, -4186, -4186, -4186, 0, + 0, 0, -1055, 0, 0, 0, 4917, 4918, + 4919, 6153, 1206, 1411, 1206, 4924, 1206, 1206, + 1206, 7986, 0, 1412, 0, 1413, 0, 0, + 0, 0, 1414, 0, 0, 1415, 1416, 1417, + 1418, 927, 0, 1419, 1420, 1421, 0, 1422, + 1423, 1424, 0, 0, 0, 127, 1770, 1770, + 128, 1770, 1770, 1770, 1770, 1770, 1770, 1770, + 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, + 1770, 1770, 32767, 5067, 5068, 5069, 5070, 5071, + 5072, 5073, 5074, 0, 5076, 5077, 5078, 5079, + 5080, 5081, 5082, 129, 130, 131, 5086, 5087, + 132, 5089, 5090, 5091, 5092, 5093, 5094, 5095, + 5096, 1038, 1039, 1040, 1041, 1042, 1043, 1044, + 1045, 1046, 1047, 1048, 1049, 1050, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1087, 1088, 1089, 1090, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 1091, + 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, + 1100, 1101, 1102, 1103, 1104, 1105, -8644, -8644, + 1108, -272, -272, -272, -2582, -2581, -2580, 6769, + 6770, 6771, 6772, 6773, -2574, -2573, 692, -2571, + -2570, -2569, -2568, 693, 2065, 91, 1722, -3097, + 813, -3097, -2049, -2048, -2047, 2337, 32767, 2338, + 693, 2340, 2341, 2342, 2343, -3098, -1422, -1422, + -3098, -3098, -3098, -3098, 345, -732, -3098, -3098, + -3098, -3098, -3098, -3098, 353, 354, 355, 1162, + 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, + 1171, 1172, 1173, 1174, 1175, 1176, 1177, 4006, + 2154, 2155, 2943, 2944, 2012, 2012, 2012, 2012, + 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, + 2012, 2012, 2012, 2012, 2012, 2012, 1201, 2013, + 1098, 2013, 2013, 1206, 2014, 2014, 2014, 2014, + 1569, 1212, 2015, 1214, 1215, 1216, 2018, 3198, + 4014, 4015, 4016, 4017, 4018, 1224, 4021, 2019, + 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, + 2019, 2019, 1237, 4022, 4023, 4024, 4025, 4026, + 6140, 4848, 2019, 2019, 2019, 4027, 6150, 4028, + 4029, 4030, 4031, 4032, 4033, -1941, -1941, -1941, + 4040, 4041, 4042, 4043, 4044, 4045, 4046, 4047, + 4048, 4049, 4050, 4051, 4052, 4053, 7230, 136, + 137, 658, 658, 7233, 7234, 7235, 7236, 7237, + -1135, -1134, 4529, 7241, 7242, 7243, 7244, 3059, + 3060, 3061, 4117, 3063, 3064, 3065, -1851, -1851, + -1851, -3084, 1864, 1660, 1866, -1851, 1868, 1869, + 1870, -4909, 3078, 1667, 3080, 1668, 3082, 3083, + 3084, 3085, 1672, 3087, 3088, 1674, 1674, 1674, + 1674, 2166, 3094, 1676, 1676, 1676, 3098, 1677, + 1677, 1677, 3102, 3103, 3104, 2978, 1336, 1337, + 2980, 1339, 1340, 1341, 1342, 1343, 1344, 1345, + 1346, 1347, 1348, 1349, 1350, 1351, 1352, 1353, + 1354, 1355, 1356, 1357, 1358, 1359, 1360, 1361, + 1362, 1363, 1364, 1365, 1366, 1367, 1368, 1369, + 1370, 1371, 1372, 1373, 1374, 1375, 1376, 1377, + 1378, 1379, 1380, 1381, 1382, 1383, 1384, 1385, + 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, + 1394, 1395, -219, 1397, 1398, 1399, 1400, 1401, + -1081, 1403, 1404, 1405, 1406, 1407, 1408, 1409, + 1410, 1411, 1412, 1413, 1414, 1415, 1416, 1417, + 1418, 1419, 1420, 1421, 1422, 1423, 1424, 1425, + 1426, 1427, 1428, 1429, 1430, 1431, 1432, 1433, + 1434, 1435, 1436, 1437, 1438, 1439, 1440, 1441, + 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, + 1450, 1451, 1452, 1453, 1454, 1455, 1456, 1457, + 1458, 1459, 1460, 1461, 1462, 1463, 1464, 1465, + 1466, 1467, 1468, 1469, 1470, 1471, 1472, 1473, + 1474, 1475, 1476, 1477, 1478, 1479, 1480, 1481, + 1482, 1483, 1484, 1485, 1486, 1487, 1488, 1489, + 1490, 1491, 1492, 1493, 1494, 1495, 1496, 1497, + 1498, 1499, 1500, 1501, 1502, 1503, 1504, 1505, + 1506, 1507, 1508, 1509, 1510, 1511, 1512, 1513, + 1514, 1515, 1516, 1517, 1518, 1519, 1520, 1521, + -5554, -5554, -5554, -5554, -5554, -5554, -5554, -5554, + -5554, -5554, -5554, -5554, 4741, 4742, -5554, -5554, + -5554, -5554, -5554, -5554, -5554, 4598, 32767, 32767, + -5556, 4602, 4603, 4604, 4605, 4606, 4607, -1955, + -1955, -1955, 1435, 1436, 1437, 1438, 1439, 1440, + 4617, -2477, -2476, 4620, 4621, 4622, 4623, 4624, + 4625, 4626, -3746, -3745, 1918, 4630, 4631, 4632, + 4633, 448, 449, 450, 1506, 452, 453, 454, + -4462, -4462, -4462, -5695, -747, -951, -745, -4462, + -743, -742, -741, -7520, 467, -944, 469, -943, + 471, 472, 473, 474, -939, 476, 477, -937, + -937, -937, -937, -445, 483, -935, -935, -935, + 487, -934, -934, -934, 491, 492, 493, 1969, + 1970, 1971, -1790, -1790, 1974, 1975, 141, 1977, + 1978, 1979, 1980, 1981, 1982, 1983, 1984, -137, + 1986, 1987, -136, 1989, 1990, 1991, -3631, 1993, + 1994, 142, 143, 931, 932, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -3960, + 0, -915, 0, 0, -3960, 0, 0, 0, + 0, -445, -3960, 0, -3960, -3960, -3960, 0, + 1180, 1996, 1997, 1998, 1999, 2000, 2001, 2002, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -782, 2003, 2004, 2005, 2006, + 2007, 4121, 2829, 0, 0, 0, 2008, 4131, + 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, + 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, + 2025, 2026, 2027, 2028, 2029, 2030, 2031, 2032, + 32767, 2033, 2034, 2035, 2036, 2037, 32767, 2038, + 32767, 2039, 2040, 144, 2041, 2042, 32767, 2043, + 2044, 2045, 2046, 2047, 2048, 2049, 2050, 2051, + 2052, 2053, 2054, 2055, 2056, 2057, 2058, 2059, + 2060, 2061, 2062, 2063, 2064, 2065, 1118, 2067, + 2068, 2069, 2070, 2071, 2072, 2073, 2074, 2075, + 2076, 2077, 2078, 2079, 2080, 2081, 2082, 2083, + 2084, 2085, 2086, 2087, 2088, 2089, 2090, 2091, + 2092, 2093, 2094, 2095, 2096, 2097, 2098, 2099, + 2100, 2101, 2102, 2103, 2104, 2105, 2106, 2107, + 2108, 2109, 2110, 2111, 2112, 2113, 2114, 2115, + 2116, 2117, 2118, 2119, 2120, 2121, 2122, 2123, + 2124, 2125, 2126, -4915, -4915, -4915, -4915, -4915, + -4915, -4915, -4915, -4915, -4915, -4915, -4915, -4915, + -4915, -4915, 2142, 2143, -4913, -4913, -4913, -4913, + -4913, -4913, -4913, 1976, 1049, 2468, 2469, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + -435, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 146, + 32767, 32767, 32767, 32767, -8001, -8001, -5292, 2154, + -8003, -8003, -8003, -8003, -8003, -8003, 2161, 2162, + 2163, 2164, 2165, 2166, 2167, 2168, 2169, 2170, + 2171, 2172, 2173, 2174, 2175, 2176, 2177, 2178, + 2179, 2180, 2181, 2182, 2183, 2184, 2185, 2186, + 2187, 2188, 2189, 2190, 2191, 2192, 2193, 2194, + 2195, 32767, 2196, 2197, 2198, 2199, 2200, 2201, + 2202, 2203, -494, 2205, 2206, 2207, 2208, 2209, + 4229, 2211, 2212, 2213, 2214, 2215, 2216, 2217, + 2218, 2219, 2220, 2221, 2222, 2223, 2224, 2225, + 2226, 2227, 2228, 2229, 2230, 2231, 2232, 2233, + 2234, 2235, 2236, 2237, 2238, 2239, 2240, 2241, + 2242, 2243, 2244, 2245, 2246, 2247, 2248, 2249, + 2250, -3113, 2252, 2253, 2254, 2255, 2256, 2257, + -493, 2259, 2260, 2261, 0, 0, 0, 0, + 0, 2267, 0, 0, 0, 0, 0, 0, + 0, 2275, 2276, 0, 2278, 0, 2280, 0, + 0, 2283, 2284, 2285, 3485, 3485, 3485, 3485, + 3485, 3485, 3485, 3485, 3485, 3485, 3485, 3485, + 3154, 1170, 1171, 710, 1172, 1173, 1174, 710, + 1175, 1176, 1177, 1178, 1179, 1180, 1181, 710, + 1182, 1183, 1184, 1185, 1186, 2319, 711, 711, + 2322, 2323, 1191, 2325, -512, 1196, 1197, -490, + -489, -488, -487, -486, -485, -484, 1202, 1203, + 2338, 2339, 2340, 2167, 2342, 2384, 2385, 2386, + 1895, 968, 2387, 2388, 2389, 968, 2390, 2391, + 2392, 968, 968, 968, -507, -507, -507, 3255, + 3256, -507, -507, 1328, -507, -507, -507, -507, + -507, -507, -507, -507, 1615, -507, -507, 1617, + -507, -507, -507, 5116, -507, -507, 1346, -507, + -507, -507, 1895, 1895, 1895, 1895, 1895, 1895, + 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, + 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, + 1895, 1895, 1895, -507, 1894, 1894, 1894, 1894, + 1894, 1894, 1894, -80, -79, -78, -77, 2425, + -76, -75, -74, 2429, -73, -72, -71, -70, + -69, -68, -67, -66, -65, -64, -63, 2441, + -62, 2268, 2268, 2268, 2268, 2268, 2268, 2268, + 2268, 2268, 32767, 8912, 8913, 8914, -433, -432, + 2833, -430, -429, -428, -427, 2834, 4206, 2232, + 3863, -956, 2954, -956, 92, 93, 94, 4478, + 4479, 4480, 2835, 4482, 4483, 4484, 4485, -956, + 720, 720, -956, -956, -956, -956, 2487, 1410, + -956, -956, -956, -956, -956, -956, 2495, 2496, + 2497, 2498, 2499, 2500, 99, 100, 101, 2504, + 102, 103, 2507, 2508, 2509, 104, 2511, 2512, + 2513, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 154, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 1607, 2592, 1607, 2517, 2518, + 1609, 591, 2521, 2522, 2523, 2524, 587, 2526, + 2527, 2528, 2529, 583, 2531, 2532, 2533, 2534, + 2535, 2536, 2537, 2538, 2539, 2540, 2541, 2542, + 4702, 2544, 2545, 2546, -1530, 2548, 2549, 2550, + 2551, 2552, 2583, 2554, 2584, 2585, 2586, 2587, + 2588, 2560, 2561, 2562, 2563, 2564, 2565, 2566, + 5765, 2568, 2569, 2570, 2571, 2572, 2573, 2574, + 2575, 2576, 2577, 32767, 32767, 2578, 2579, 2580, + 2581, 2582, 1578, 2584, 2585, 2586, 2587, 2588, + 2589, 3171, 2591, 2592, 373, 2594, 2595, 2596, + 2597, 374, 2599, 2600, 2601, 2602, 1581, -1682, + -1681, -1680, -1679, 1582, 2954, 980, 2611, -2208, + 1702, -2208, -1160, -1159, -1158, 3226, 3227, 3228, + 1583, 3230, 3231, 3232, 3233, -2208, -532, -532, + -2208, -2208, -2208, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 4205, 4206, 4207, - 4208, 4209, 4210, 4211, 4212, 4213, 4214, 4215, - 4216, -4880, 4218, 5470, -4882, 4221, 4222, 4223, - 4224, 4225, 4226, 4227, 4228, 1009, 4230, 4231, - 1007, 4233, 4234, 4250, 4250, 4250, 4238, 4239, - 4240, 4253, 4253, 4243, 4244, 4245, 4246, 4247, - 4248, 4249, 4250, 4251, 4252, 4253, 4254, 353, - 7010, 3652, 4258, 4259, 7011, 4261, 4262, 4263, - 4264, 4265, 4266, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 105, 32767, 32767, 32767, + 32767, 32767, 32767, 3698, 3699, 1576, 3701, 3702, + 3703, -1919, 3705, 3706, 1854, 1855, 2643, 2644, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2286, 2287, 2288, 2289, + 2290, 2291, 2292, 2293, 2294, 2295, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 2296, 2297, -185, 2299, + 2300, 2301, 2302, 2303, 2304, 2305, 2306, 2307, + 2308, 2309, 2310, 2311, 2312, 2313, 2314, 2315, + 2316, 32767, 32767, 2317, 2318, 2319, 2320, 2321, + 2322, 2323, 2324, 2325, 2326, 2686, 2687, 32767, + 2688, 2689, 2690, 2691, 2692, 2693, 2694, 2695, + 2696, 2697, 2698, 2699, 2686, 2686, 2702, 2703, + 2704, 2705, 2706, 32767, 0, 2708, 2709, 2710, + 32767, 8148, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 2698, 0, 0, 0, 0, + 0, -2019, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 5364, 0, 0, 0, 0, 0, + 0, 2751, 0, 0, 0, 2262, 2263, 2264, + 2265, 2266, 0, 2268, 2269, 2270, 2271, 2272, + 2273, 2274, 0, 0, 2277, 0, 2279, 0, + 2281, 2282, 0, 0, 0, -1199, -1198, -1197, + -1196, -1195, -1194, -1193, -1192, -1191, -1190, -1189, + -1188, -856, 1129, 1129, 1591, 1130, 1130, 1130, + 1595, 1131, 1131, 1131, 1131, 1131, 1131, 1131, + 1603, 1132, 1132, 1132, 1132, 1132, 0, 1609, + 1610, 0, 0, 1133, 0, 2838, 1131, 1131, + 2819, 2819, 2819, 2819, 2819, 2819, 2819, 1134, + 1134, 0, 0, 0, 174, 0, -41, -41, + -41, 451, 1379, -39, -39, -39, 1383, -38, + -38, -38, 1387, 1388, 1389, 2865, 2866, 2867, + -894, -894, 2870, 2871, 1037, 2873, 2874, 2875, + 2876, 2877, 2878, 2879, 2880, 759, 2882, 2883, + 760, 2885, 2886, 2887, -2735, 2889, 2890, 1038, + 2892, 2893, 2894, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, + 514, 515, 516, 517, 2920, 520, 521, 522, + 523, 524, 525, 526, 2501, 2501, 2501, 2501, + 0, 2502, 2502, 2502, 0, 2503, 2503, 2503, + 2503, 2503, 2503, 2503, 2503, 2503, 2503, 2503, + 0, 2504, 175, 176, 177, 178, 179, 180, + 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, 191, 192, 193, 194, 195, 527, + 2512, 2512, 2974, 2513, 2513, 2513, 2978, 2514, + 2514, 2514, 2514, 2514, 2514, 2514, 2986, 2515, + 2515, 2515, 2515, 2515, 2515, 2993, 2994, 2995, + 2996, 2519, 2519, 2519, 2519, 2519, 3002, 3003, + 4209, 4209, 4209, 4209, 2525, 2525, 2525, 2525, + 2525, 2525, 2525, 291, 2525, 2525, 2525, 2525, + 2525, 196, 197, 198, 199, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, 214, 215, -6826, -6826, -6826, + -6826, -6826, -6826, -6826, 2522, 32767, 32767, 2520, + 2520, 2520, 2520, -740, -2111, 32767, 32767, 3052, + -857, 3054, 2007, 2007, 2007, 32767, 32767, -2378, + -732, -2378, 32767, 32767, 32767, 3061, 1386, 1387, + 3064, 3065, 3066, 3067, 32767, 702, 3069, 3070, + 3071, 3072, 3073, 3074, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 2834, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -2302, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -2356, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 32767, 32767, 0, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 32767, -4130, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -48, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, + 0, 0, 32767, 0, 0, 0, 32767, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 0, -2329, 32767, 32767, -2328, + -2327, -2326, -2325, -2324, 32767, 32767, -2323, -2322, + -2321, 32767, -2320, 32767, -2319, 32767, -2318, 32767, + -2317, -1985, 0, 0, 32767, 0, 0, 0, + 32767, 0, 0, 0, 0, 0, 0, 0, + 32767, 0, 0, 0, 0, 0, 0, 32767, + 32767, 32767, 32767, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, + 0, 0, 0, 0, 0, -2234, 0, 0, + 0, 0, 0, -2329, -2328, -2327, -2326, -2325, + -2324, -2323, -2322, -2321, -2320, -2319, -2318, -2317, + -2316, -2315, -2314, -2313, -2312, -2311, 0, 0, + 0, -9348, -9348, -9348, -9348, -9348, 0, 0, + -3264, 0, 0, 0, 0, -3260, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, -4903, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 4268, 4269, 4270, 4271, 32767, + 4272, 4273, 4274, 4275, 4276, 4277, 3685, 4279, + 4280, 4281, 4282, 4283, 5543, 4285, 4286, 4287, + 6095, 4289, 4290, 4291, 4292, 4293, 6100, 6100, + 4296, 6101, 4298, 32767, 4299, 4300, 32767, 4301, + 32767, 32767, 4302, 32767, 4303, 4304, 4305, 4306, + 4307, 4308, 4309, 4310, 4311, 4312, 32767, 4313, + 4314, 4315, 4316, 32767, 4317, 32767, 4318, 32767, + 32767, 32767, 32767, 32767, 32767, 4319, 32767, 32767, + 32767, 32767, 4320, 32767, 4321, 32767, 4322, 32767, + 4323, 4324, 4325, 32767, 4326, 4327, 32767, 4328, + 32767, 32767, 4329, 32767, 4330, 32767, 4331, 32767, + 4332, 32767, 4333, 32767, 4334, 4335, 32767, 4336, + 32767, 32767, 4337, 4338, 4339, 8723, 32767, 8724, + 7079, 4343, 4344, 4345, 4346, 4347, 32767, 4348, + 4349, 4350, 4351, 32767, 4352, 4353, 4354, 4355, + 32767, 4356, 32767, 4357, 4358, 4359, 4360, 4361, + 4362, 4363, 4364, 4365, 4366, 32767, 4367, 4368, + 4369, 4370, 4371, 4372, 4373, 4374, 4375, 4376, + 4377, 4378, 4379, 4380, 4381, 4382, 4383, 32767, + 32767, 32767, 32767, 32767, 4384, 4385, 4386, 32767, + 4387, 4388, 4389, 4390, 4391, 32767, 4392, 4393, + 4394, 4395, 4396, 4397, 4398, 4399, 4400, 4401, + 4402, 4403, 4404, 0, 0, 0, 2269, 2269, + 2269, 2269, 2269, 2269, 2269, 2269, 32767, 32767, + 32767, 32767, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 299, 32767, 300, 301, -2381, -2381, -2381, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -2388, 32767, - 32767, -4398, -4398, -4398, 32767, 32767, 32767, 32767, + 32767, 32767, 0, 0, 10120, 0, 0, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 6563, + 6564, 6565, 3176, 3176, 3176, 3176, 3176, 3176, + 0, 7095, 7095, 0, 0, 0, 0, 0, + 0, 0, 32767, 8372, 0, 0, 0, 0, + 0, 4186, 4186, 4186, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -17740,32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 4825, 32767, 32767, 32767, 32767, -4293, - 32767, 32767, 32767, 109, -5804, 111, 112, 32767, - 32767, -4301, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -2438, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 685, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -20069,32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 3994, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, -6790, -6790, - 157, -3219, -17570,-1719, -1719, -3027, -3027, -19414, - -3027, -9665, -3028, -3028, -3028, -3028, -3028, 4977, - 577, -3028, -3028, -6421, 4983, -6422, -17851,9446, - -3028, -3028, 331, -3028, 3628, -3027, -3027, -3027, - -3027, -3027, -3027, 1374, 4980, 4981, 8375, -3028, - 8378, 19808, -7488, 4987, -3031, 3880, -3042, 1588, - 24261, -3032, 24264, -3032, 24267, -3032, 19640, -3032, - 24262, -3033, 1694, -3033, -3033, 1597, 24270, 1699, - 1700, 1701, 1702, 1703, 16265, -3014, 1706, 1707, - 1708, 1709, 8366, 5008, 8368, 1713, 8369, 8370, - 8371, 1717, 8374, 8375, 3975, 370, 370, -3023, - 8381, -3024, -14453,12844, 370, 8389, 1479, 8402, - 3773, -18899,8395, -18900,8397, -18901,8399, -14272, - 8401, -18892,8404, 3678, 8406, 8407, 3778, -18894, - 3678, 3678, 3678, 3678, 3678, -10883,8397, 3678, - 3678, 3678, 3678, -2978, 381, -2978, 3678, -2977, - -2977, -2977, 3678, -2978, -2978, 1423, 5029, 5030, - 8424, -2979, 8427, 19857, -7439, 5036, 5037, 1679, - 5039, -1616, 5040, 5041, 5042, 5043, 5044, 5045, - 645, -2960, -2960, -6353, 5051, -6354, -17783,9514, - -2960, 5059, -1851, 5072, 443, -22229,5065, -22230, - 5067, -22231,5069, -17602,5071, -22222,5074, 348, - 5076, 5077, 448, -22224,348, 348, 348, 348, - 348, -14213,5067, 348, 348, 348, 348, -6308, - -2949, -6308, 348, -6307, -6307, -6307, 348, -6308, - -6308, -1907, 1699, 1700, 5094, -6309, 5097, 16527, - -10769,1706, 1707, -1651, 348, 348, 348, 1286, - 348, 348, 348, 348, 348, 348, 1603, 348, - 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 4429, - 4429, 4429, 4429, 4429, 2660, 2661, 2662, 901, - 348, 348, 348, 348, 348, 348, 348, 348, - 3928, 3306, 3306, 3928, 0, 2675, 2676, 2677, - 2678, 0, 2680, 0, 0, 2683, 2684, 2685, - 2686, 4556, 2687, 2688, 2689, 8575, 2691, 2692, - -9266, -9266, -4636, 18037, -9256, 18040, -9256, 18043, - 18044, 13415, -9257, 18037, -9258, 18039, -9259, -9259, - -4629, 18044, 4581, 4582, 4583, -2184, -4527, 10035, - -9244, -2185, -4524, 4590, -4523, 2134, -1224, 2717, - 4595, 2719, 2720, 4598, 6107, 6107, 6107, 2725, - 2726, 2727, 4605, 2729, 2730, 2731, 4609, 2736, - 4611, 4612, 4613, 6118, 6118, 4616, 6119, 2743, - 4619, 4620, 2744, 2745, 6123, 2747, 6124, 4626, - 4627, 4628, 4629, 2753, 4631, 2755, 4633, 8896, - 8897, 8898, 4637, 4638, 4639, 4640, 0, 0, - 0, 0, 0, -1812, 0, 0, 0, 8925, - 0, 0, 1330, -3389, 0, 0, 0, 8940, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 10649, 8068, 0, 0, 16017, 8807, 8808, -1676, - 906, 8811, -7039, -7038, 173, 173, 10658, 8077, - 173, 16024, 16024, 8814, 8815, -1669, 913, 8818, - -7032, -7031, 180, 180, 10665, 8084, 180, 16031, - 16031, 8821, 8822, -1662, 920, 8825, 9014, -7023, - 188, 188, 10673, 8092, 188, 0, 16038, 8828, - 8829, -1655, 927, 8832, 4727, 4728, 4729, 4730, - 4305, 4732, 4733, 4734, 4735, 4736, 4737, 4738, - 4739, 4740, 4741, 4742, 4743, 4744, 4745, 4746, - 4747, 4748, 1540, 1540, 1540, 1540, 1540, 1540, - 1540, 1540, 1540, 1540, 1540, -1893, 1540, 1540, - 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, - 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, - 1540, 1540, 1540, 1540, 1540, 1540, 911, 1540, - 4614, 4615, 4616, 4617, 4618, 1540, 4619, 4620, - 4621, 4622, 4623, 4624, 4625, 4626, 4627, -7592, - 11688, 4630, 4631, 4632, 4633, 4634, 4635, 32767, - 4810, 4811, 4812, 4813, 3850, 3851, 4816, 4817, - 4818, 4819, 4820, 4821, 4822, 4823, 4824, 4825, - 4573, 4573, 4573, 4573, 4830, 4574, 4574, 4574, - 4834, 4575, 4575, 4575, 4575, 4575, 917, 918, - 4575, 4575, 4575, 4575, 923, 4576, 4576, 926, - 927, 928, 7709, 930, 931, 932, 933, 934, - 7717, 936, 7719, 938, 7722, 940, 941, 942, - 943, 944, 945, 946, 7733, 948, 949, 950, - 951, 952, 953, 954, 955, 956, 957, 958, - 959, 960, 961, 962, 963, 964, 965, 4765, - 967, 968, 969, 970, 971, 972, 973, 974, - 975, 976, 977, 978, 4902, 4903, -2043, 1334, - 15686, -164, -163, 1146, 1147, 17535, 1149, 7788, - 1152, 1153, 1154, 1155, 1156, -6848, -2447, 1159, - 1160, 4554, -6849, 4557, 15987, -11309,1166, 7797, - 7798, 7799, -5489, 1167, 1168, 1169, 1170, 1171, - 1172, -3228, -6833, -6833, -10226,1178, -10227,-21656, - 7812, 7813, 7814, 7815, 7816, 4951, 7817, 7818, - 4954, 4955, 4956, 4957, 4958, 4959, 4960, 4961, - 4962, 7837, 4964, 4965, 4966, 4967, 4968, 4969, - 4970, 4971, 4972, 4973, 4974, 4975, 4976, 4977, - 4978, 4979, 4980, 4981, 4982, 4983, 4984, 4985, - 4986, 4987, 4988, 4989, 4990, 4991, 4992, 4993, - 4994, 4995, 4996, 4997, 4998, 4999, 5000, 5001, - 5002, 5003, 5004, 5005, 5006, 5007, 5008, 5009, - 5010, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, -224, -224, -224, -6880, -3521, -6880, -224, - -6879, -6879, -6879, -6879, -6879, -6879, -2478, 1128, - 1129, 4523, -6880, 4526, 15956, -11340,1135, -6883, - 28, -6894, -2264, 20409, -6884, 20412, -6884, 20415, - 20416, 15787, -6885, 20409, -6886, -2159, -6886, -6886, - -2256, 20417, -2154, -2153, -2152, -2151, -2150, 12412, - -6867, -2147, -2146, -2145, -2144, 4513, 1155, 4515, - -2140, 4516, 4517, 4518, -2136, 4521, 4522, 122, - -3483, -3483, -6876, 4528, -6877, -18306,8991, -3483, - -3483, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -3490, 911, 4517, 4518, 7912, -3491, 7915, - 19345, -7951, 4524, -3494, 3417, -3505, 1125, 23798, - -3495, 23801, -3495, 23804, -3495, 19177, -3495, 23799, - -3496, 1231, -3496, -3496, 1134, 23807, 1236, 1237, - 1238, 1239, 1240, 15802, -3477, 1243, 1244, 1245, - 1246, 7903, 4545, 7905, 1250, 7906, 7907, 7908, - 7909, 7910, 7911, 3511, -94, -94, -3487, 7917, - -3488, -14917,12380, -94, 7925, 1015, 7938, 3309, - -19363,7931, -19364,7933, -19365,7935, -14736,7937, - -19356,7940, 3214, 7942, 7943, 3314, -19358,3214, - 3214, 3214, 3214, 3214, -11347,7933, 3214, 3214, - 3214, 3214, -3442, -83, -3442, 3214, -3441, -3441, - -3441, 3214, -3442, -3442, 959, 4565, 4566, 7960, - -3443, 7963, 19393, -7903, 4572, 4573, 1215, 4575, - -2080, 4576, 4577, 4578, 4579, 4580, 4581, 181, - -3424, -3424, -6817, 4587, -6818, -18247,9050, -3424, - 4595, -2315, 4608, -21, -22693,4601, -22694,4603, - -22695,4605, -18066,4607, -22686,4610, -116, 4612, - 4613, -16, -22688,-116, -116, -116, -116, -116, - -14677,4603, -116, -116, -116, -116, -6772, -3413, - -6772, -116, -6771, -6771, -6771, -116, -6772, -6772, - -2371, 1235, 1236, 4630, -6773, 4633, 16063, -11233, - 1242, -6776, 135, -6787, -2157, 20516, -6777, 20519, - -6777, 20522, -6777, 15895, -6777, 20517, -6778, -2051, - -6778, -6778, -2148, 20525, -2046, -2045, -2044, -2043, - -2042, 12520, -6759, -2039, -2038, -2037, -2036, 4621, - 1263, 4623, -2032, 4624, 4625, 4626, -2028, 4629, - 4630, 230, -3375, -3375, -6768, 4636, -6769, -18198, - 9099, -3375, -3375, -16, -3375, 3281, -3374, -3374, - -3374, -3374, -3374, -3374, 1027, 4633, 4634, 8028, - -3375, 8031, 19461, -7835, 4640, -3378, 3533, -3389, - 1241, 23914, -3379, 23917, -3379, 23920, -3379, 19293, - -3379, 23915, -3380, 1347, -3380, -3380, 1250, 23923, - 1352, 1353, 1354, 1355, 1356, 15918, -3361, 1359, - 1360, 1361, 1362, 8019, 4661, 8021, 1366, 8022, - 8023, 8024, 1370, 8027, 8028, 3628, 23, 23, - -3370, 8034, -3371, -14800,12497, 23, 23, 3382, - 1384, 1385, 1386, 449, 1388, 1389, 1390, 1391, - 1392, 1393, 139, 1395, 1396, 1397, 1398, 1399, - 1400, 1401, 1402, 1403, 1404, 1405, 1406, 1407, - 1408, 1409, 1410, 1411, 1412, 1413, 1414, 1415, - 1416, 1417, 1418, -2662, -2661, -2660, -2659, -2658, - -888, -888, -888, 874, 1428, 1429, 1430, 1431, - 1432, 1433, 1434, 1435, -2144, -1521, -1520, -2141, - 1788, -886, -886, 3336, 1791, 1792, 1793, 1794, - 1795, 1796, 1797, 1798, 1799, 1800, 1801, 1802, - 1803, 1804, 1458, 1459, 1805, 1461, 1806, 1463, - 1464, 1807, 1808, 1809, 1810, 1811, 1812, 1813, - 1814, 1815, 1816, 1381, 1817, 1381, 1818, 1381, - 1480, 1819, 1820, 1483, 1484, 1485, 1821, 1822, - 1823, 1824, 1825, 1826, 1827, 1828, 1829, 1830, - 1831, 1832, 1833, 1834, 1835, 1836, 1837, 1838, - 1839, 1840, 1841, 1842, 1843, 1844, 1845, 1846, - 1847, 1848, 1849, 1850, 1851, 1852, 1853, 1854, - 1855, 1856, 1857, 1858, 1859, 1860, 1861, 1862, - 1863, 1864, 1865, 1866, 1867, 1868, 1869, 1870, - 1871, 1872, 1873, 1874, 1875, 1876, 1877, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 9097, 0, -1251, 9102, 0, - 0, 0, 0, 0, 0, 0, 0, 3220, - 0, 0, 3225, 0, 0, -15, -14, -13, - 0, 0, 0, -12, -11, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3902, -2754, 605, 0, 0, -2751, 0, - 0, 0, 0, 0, 0, 1938, 1939, 1940, - 1941, 1942, 1943, 1944, 1945, 1946, 1947, 1948, - 1949, 1950, 1951, 1530, 1443, 1532, 1533, 1956, - 1957, 1958, 1959, 1960, 1961, 1962, 141, 1964, - 1534, 1966, 1967, 1968, 1969, 1970, 1971, 1972, - 1973, 1974, 1975, 1976, 1977, 1978, 1979, 1980, - 1981, 142, 143, 1984, 1985, 1986, 1987, 1988, - 1989, 1990, 1991, 1992, 1993, 1994, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 1665, 1996, 1997, - 1998, 1999, 2000, 2001, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 2002, 2003, 2004, 2005, 2006, 32767, 32767, 32767, - 32767, 32767, 2007, 32767, 2008, 2009, 2010, 2011, - 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, - 2020, 2021, 2022, 2023, 2024, 2025, 2026, 2027, - -4501, -4501, -4501, -4501, -1422, -4500, -4500, -4500, - 2035, 2036, 32767, 1706, 32767, 1706, 1706, 32767, - 1705, 1705, 32767, 2042, 2043, 2044, 2045, 2046, - 2047, 1711, 2049, 1712, 2051, 4525, 4525, 4525, - 2055, 2056, 2057, 4528, 2059, 2060, 2061, 2062, - 2063, 2064, 2065, 7042, 2067, 4536, 4536, 4536, - 2071, 2072, 2073, 4539, 2075, 2076, 2077, 2078, - 2079, 2080, 2081, 2082, 2083, 2084, 1735, 1735, - 2087, 2088, 2089, 2090, 2091, 2092, 2093, 2094, - 226, 227, 2097, 228, 229, 230, 6116, 232, - 233, -11725,-11725,-7095, 15578, -11715,15581, -11715, - 15584, 15585, 10956, -11716,15578, -11717,15580, -11718, - -11718,-7088, 15585, 2122, 2123, 2124, -4643, -6986, - 7576, -11703,-4644, -6983, 2131, -6982, -325, -3683, - 258, 2136, 260, 261, 2139, 3648, 3648, 3648, - 266, 267, 268, 2146, 270, 271, 272, -1029, - 32767, 32767, 32767, 32767, 6972, 2572, 32767, -1034, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -4286, - 32767, 32767, -2089, 32767, 3715, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -2492, -2492, -2492, -2492, -4304, -2492, -2492, -2492, - 6433, -2492, -2492, -1162, -5881, -2492, -2492, -2492, - 6448, -2492, -2492, -2492, -2492, -2492, -2492, -2492, - -2492, -2492, -2492, -2492, -2492, -2492, -2492, -2492, - -2492, 8157, 5576, -2492, -2492, 13525, 6315, 6316, - -4168, -1586, 6319, -9531, -9530, 32767, 2195, 2196, - 2197, 2198, 2199, 2200, 2201, 2202, 2203, 2204, - 2205, 2206, 2207, 2208, 2209, 2210, 2211, 2212, - 2213, 2214, 2215, 2216, 2217, 2218, 2219, 2220, - 2221, 2222, 2223, 2224, 2225, 2226, 2227, 2228, - 2229, 2230, 2231, 2232, 2233, 2234, 2235, 2236, - 2237, 2238, 2239, 2240, 2241, 2242, 2243, 2244, - 2245, 2246, 2247, 2248, 2249, 2250, 2251, 2252, - 2253, 2254, 2255, 2256, 2257, 2258, 2259, 2260, - 2261, 2262, -5075, 2264, 2265, 2266, 2267, 2268, - 2269, 2270, 2271, 2272, 2273, 2274, 2275, 2276, - 2277, 2278, 2279, 2280, 2281, 2282, 2283, 2284, - 2285, 2286, 2287, 2288, 2289, 2290, 2291, 2292, - 2293, 2294, 2295, 2296, 2297, 2298, 2299, 2300, - 2301, 2302, 2303, 1667, 1667, 2306, 2307, 2308, - 2309, 2310, 2311, 2312, 2313, 2314, 2315, 2316, - 2317, 2318, 2319, 2320, 2321, 1358, 1359, 2324, - 2325, 2326, 2327, 2328, 2329, 2330, 2331, 2332, - 2333, 2081, 2081, 2081, 2081, 2338, 2082, 2082, - 2082, 2342, 2083, 2083, 2083, 2083, 2083, -1575, - -1574, 2083, 2083, 2083, 2083, -1569, 2084, 2084, - -1566, -1565, -1564, 5217, -1562, -1561, -1560, -1559, - -1558, 5225, -1556, 5227, -1554, 5230, -1552, -1551, - -1550, -1549, -1548, -1547, -1546, 5241, -1544, -1543, - -1542, -1541, -1540, -1539, -1538, -1537, -1536, -1535, - -1534, -1533, -1532, -1531, -1530, -1529, -1528, -1527, - 2273, -1525, -1524, -1523, -1522, -1521, -1520, -1519, - -1518, -1517, -1516, -1515, -1514, 2410, 2411, -4535, - -1158, 13194, -2656, -2655, -1346, -1345, 15043, -1343, - 5296, -1340, -1339, -1338, -1337, -1336, -9340, -4939, - -1333, -1332, 2062, -9341, 2065, 13495, -13801,-1326, - 5305, 5306, 5307, -7981, -1325, -1324, -1323, -1322, - -1321, -1320, -5720, -9325, -9325, -12718,32767, 2451, - 2452, 2453, 2454, 2455, 2456, 2457, 2458, 2459, - 2460, 2461, 2462, 2463, 2464, 2465, -6169, 4316, - 1735, -6169, 9682, 9682, 2472, 2473, -8011, -5429, - 2476, -13374,-13373,2479, 2480, 2481, 2482, 2483, - 2484, 2485, 2486, 2487, 2488, 2489, 2490, 2491, - 2492, 2493, 2494, 2495, 2496, 2497, 2498, 203, - 1141, 203, 203, 203, 203, 203, 203, 1458, - 203, 2509, 2510, 2511, 2512, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 155, 32767, 32767, 32767, - 32767, 156, 32767, 32767, 32767, 32767, 157, 207, - 4288, 4288, 4288, 4288, 4288, 2519, 2520, 2521, - 760, 207, 207, 207, 207, 207, 207, 207, - 207, 3787, 3165, 3165, 2534, 2535, 2536, 2537, - 2538, 2539, -139, 2541, -139, -139, 2544, 2545, - 2546, 2547, 2548, 2549, 2550, 2551, 8437, 2553, - 2554, -9404, -9404, -4774, 17899, -9394, 17902, -9394, - 17905, 17906, 13277, -9395, 17899, -9396, -4669, -9396, - -9396, -4766, 17907, -4664, -4663, -4662, -4661, 0, - 32767, -9379, -4659, -4658, -4657, -4656, 2001, -1357, - 2584, 4462, 2586, 2587, 4465, 5974, 5974, 5974, - 2592, 2593, 2594, 4472, 2596, 2597, 2598, 4476, - 2603, 4478, 4479, 4480, 5985, 5985, 4483, 5986, - 2610, 4486, 4487, 2611, 2612, 5990, 2614, 5991, - 4493, 4494, 4495, 4496, 2620, 4498, 2622, 4500, - 8763, 8764, 8765, 4504, 4505, 4506, 4507, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 8635, - -1849, 733, 8638, -7212, -7211, 0, 0, 10485, - 7904, 0, 15851, 15851, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 2296, 1359, 2298, 2299, 2300, 2301, 2302, 2303, - 1049, 2305, 0, 0, 0, 0, 0, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 173, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 2306, -1774, -1773, -1772, -1771, -1770, 0, 0, - 0, 1762, 2316, 2317, 2318, 2319, 2320, 2321, - 2322, 2323, -1256, -633, -632, 0, 0, 0, - 0, 0, 0, 2679, 0, 2681, 2682, 0, - 0, 0, 0, 0, 0, 0, 0, -5885, - 0, 0, 11959, 11960, 7331, -15341,11953, -15342, - 11955, -15343,-15343,-10713,11960, -15333,11963, 7237, - 11965, 11966, 7337, -15335,7237, 7237, 7237, 7237, - 7237, -7324, 11956, 7237, 7237, 7237, 7237, 581, - 3940, 0, -1877, 0, 0, -1877, -3385, -3384, - -3383, 0, 0, 0, -1877, 0, 0, 0, - -1877, -3, -1877, -1877, -1877, -3381, -3380, -1877, - -3379, -2, -1877, -1877, 0, 0, -3377, 0, - -3376, -1877, -1877, -1877, -1877, 0, -1877, 0, - -1877, -6139, -6139, -6139, -1877, -1877, -1877, -1877, - 2764, 2765, 2766, 2767, 2768, 4581, 2770, 2771, - 2772, -6152, 2774, 2775, 1446, 6166, 2778, 2779, - 2780, -6159, 2782, 2783, 2784, 2785, 2786, 2787, - 2788, 2789, 2790, 2791, 2792, 2793, 2794, 2795, - 2796, 2797, -7851, -5269, 2800, 2801, -13215,-6004, - -6004, 4481, 1900, -6004, 9847, 9847, 2637, 2638, - -7846, -5264, 2641, -13209,-13208,-5997, -5997, 4488, - 1907, -5997, 9854, 9854, 2644, 2645, -7839, -5257, - 2648, -13202,-13201,-5990, -5990, 4495, 1914, -5990, - -6178, 9860, 2650, 2651, -7833, -5251, 2654, 2843, - -13194,-5983, -5983, 4502, 1921, 32767, 32767, 32767, - 32767, 32767, 2849, 2850, 1029, 2852, 2422, 2854, - 2855, 2856, 2857, 2858, 2859, 2860, 2861, 2862, - 2863, 2864, 2865, 2866, 2867, 2868, 2869, 1030, - 1031, 2872, 2873, 2874, 2875, 2876, 2877, 2878, - 2879, 2880, 2881, 2882, 2883, 2884, 2885, 2886, - 2887, 2888, 2889, 2890, 2891, 2892, 2893, 2894, - 2895, 2896, 2897, 2898, 2899, 2900, 2901, 2902, - 2903, 2904, 2905, 2906, 2907, 2908, 2909, 2910, - 2911, 2912, 2913, 2914, 2915, 2916, 2917, 2918, - 2919, 2920, 2921, 2922, 2923, 2924, 2925, 2926, - 2927, 2928, 2929, 2930, 2931, 2932, 2933, 2934, - 2935, 2936, 175, 176, 177, 178, 179, 180, - 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 2958, - 2959, 2960, 2961, 2962, 2963, 2964, 2965, 2966, - 2967, 2968, 2969, 2970, 2971, 2972, 2973, 2974, - 2975, 2976, 2977, 2978, 2979, 2980, 2981, 2982, - 2983, 2984, 2985, 2986, 2987, 2988, 2989, 2990, - 2991, 2992, 2993, 2994, 2995, 2996, 2997, 2998, - 2999, 3000, 3001, 3002, 3003, 3004, 3005, 3006, - 3007, 196, 197, 198, 199, 200, 201, 202, - 203, 204, 205, 206, 207, 208, 209, 4471, - -2296, 212, 213, 214, 215, 216, 217, 218, - 219, 220, 221, 3568, 3035, 3036, 3037, 3038, - 32767, 32767, 32767, 3039, 3040, 3041, 3042, 3043, - 3044, 32767, 32767, 3045, 3046, 3047, 4565, 3049, - 4567, 32767, 32767, -1319, -1319, -1319, -1319, -1319, - -1319, 32767, 32767, -1321, -1321, 3059, 32767, 32767, - 32767, -1050, 3061, 3062, 3063, 3064, 3065, 3066, - 32767, 3067, 3068, 3069, 3070, 3693, 3694, 3073, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 338, 32767, 337, 337, 337, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 0, 985, 0, + 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 0, 0, - 0, 32767, 0, 0, 0, 0, 32767, 32767, - 0, 0, 0, 0, 0, 0, 0, 0, - 32767, 0, 0, 0, 0, 0, 0, 0, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, -3663, -3662, -3661, -3660, -3659, 0, 0, - -3656, -3655, -3654, -3653, 0, -3652, -3651, 0, - 0, 0, -6780, 0, 0, 0, 0, 0, - -6782, 0, -6782, 0, -6783, 0, 0, 0, - 0, 0, 0, 0, -6786, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, -3799, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -3923, -3923, 3024, -352, - -14703,1148, 1148, -160, -160, -16547,-160, -6798, - -161, -161, -161, -161, -161, 7844, 3444, -161, - -161, -3554, 7850, -3555, -14984,12313, -161, -161, - 3198, -161, 6495, -160, -160, -160, -160, -160, - -160, 4241, 7847, 7848, 11242, -161, 11245, 22675, - -4621, 7854, -164, 6747, -175, 4455, 27128, -165, - 27131, -165, 27134, -165, 22507, -165, 27129, -166, - 4561, -166, -166, 4464, 27137, 4566, 4567, 4568, - 4569, 4570, 19132, -147, 4573, 4574, 4575, 4576, - 11233, 7875, 11235, 4580, 11236, 11237, 11238, 4584, - 11241, 11242, 6842, 3237, 3237, -156, 11248, -157, - -11586,15711, 3237, 11256, 4346, 11269, 6640, -16032, - 11262, -16033,11264, -16034,11266, -11405,11268, -16025, - 11271, 6545, 11273, 11274, 6645, -16027,6545, 6545, - 6545, 6545, 6545, -8016, 11264, 6545, 6545, 6545, - 6545, -111, 3248, -111, 6545, -110, -110, -110, - 6545, -111, -111, 4290, 7896, 7897, 11291, -112, - 11294, 22724, -4572, 4364, 4365, 32767, 4366, 4367, - 4368, 4369, 4370, 4371, 4372, 4373, 4374, 4375, - 4376, 4377, 4378, 4379, 4380, 4381, 4382, 32767, - 32767, 32767, 32767, 32767, 4383, 4384, 4385, 32767, - 4386, 4387, 4388, 4389, 4390, 32767, 4391, 4392, - 4393, 4394, 4395, 4396, 4397, 4398, 4399, 4400, - 4401, 4402, 4403, 4404, 4405, 4406, 4407, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, -1078, -8000, -3370, 19303, - 32767, 19305, -7991, 19308, -7991, 14681, -7991, 19303, - 32767, 32767, -7994, 32767, -3365, 32767, -3264, -3263, - 32767, 32767, 32767, 32767, 32767, 32767, -3262, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 3394, 3395, - -3259, 3398, 3399, -1001, 32767, 32767, 32767, 32767, - -8004, -19433,32767, -4611, -4611, 32767, 32767, 32767, - 32767, 32767, 32767, -4616, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 6782, 18212, -9084, 3391, -4627, - 2284, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, -1272, - 32767, 32767, 32767, 32767, 32767, -851, 32767, 32767, - 0, 88, 0, 0, 32767, 32767, 32767, 89, - 90, 32767, 91, 32767, 32767, 0, 32767, 32767, + 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7392,12 +7421,8 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 434, 435, 0, 436, 0, - 437, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 434, 435, 436, 32767, 437, - 438, 32767, 32767, 32767, 439, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7406,24 +7431,51 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 4409, 4410, + 4411, 2143, 2144, 2145, 2146, 2147, 2148, 2149, + 2150, 2151, 2152, 32767, 32767, 32767, 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, 32767, 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, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 4483, 4484, 4485, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, -3886, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4645, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 0, 0, 32767, 32767, + 0, 0, 0, 0, 0, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3078, + 3078, 3078, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3065, + 3065, 3065, 3065, 3065, 3065, 3065, 3065, 3065, + 3065, 3065, 3065, 3065, 3065, 3065, 3065, 3065, + 3065, 3065, 3065, 3065, 3065, 3065, 3065, 3065, + 3065, 3065, 3065, 3065, 3065, 3065, 3065, 3065, + 3065, 3065, 3065, 3065, 3065, 3065, 3065, 3065, + 3065, 3065, 3065, 32767, 32767, 32767, 32767, 3061, + 3061, 3061, 3061, 3061, 3061, 3061, 3061, 3061, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3054, + 3054, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - -1906, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7433,60 +7485,27 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 4408, 4409, - 4410, 4411, 4412, 4413, 4414, 4415, 4416, 4417, - 4418, 32767, 32767, 32767, 32767, 32767, 4419, 4420, - 4421, 4422, 4423, 4424, 4425, 4426, 4427, 4428, - 20816, 4430, 4431, 4432, 4433, 4434, 4435, 4436, - -3568, 833, 4439, 4440, 7834, -3569, 7837, 19267, - -8029, 4446, 4447, 1089, 4449, -2206, 4450, 4451, - 4452, 4453, 4454, 4455, 55, -3550, 4458, -6944, - 4460, 4461, -18375,4463, 4464, 4465, 4466, 4477, - -152, -22824,4470, -22825,4472, -22826,4474, -18197, - 4476, 4477, 4478, -248, 4480, 4481, 32767, -22821, - 32767, -250, 32767, 32767, 32767, 32767, 32767, 32767, - -256, 32767, 32767, 32767, 32767, -6916, 32767, -6916, - 32767, -6917, 32767, -6919, -6919, -2518, 32767, 1088, - 4482, 4483, 4484, 32767, 32767, 1091, 32767, -17, - 32767, -2310, 32767, -6931, 32767, -6932, 32767, -6933, - 15739, 32767, 20360, 32767, 32767, -6937, -6937, -2307, - 20366, 32767, -2205, -2204, -2203, -2202, 12360, -6919, - -2199, 32767, -2198, -2197, 4460, 1102, 4485, -2194, - 4462, 4463, 4464, 32767, 4466, 32767, 66, -3539, - -3539, -6932, 4472, -6933, -18362,8935, 0, 0, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 0, - 0, 0, 32767, 0, 0, 0, 0, 0, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 4486, - 4487, 4488, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 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, 32767, 32767, 32767, 32767, 4533, - 4534, 4535, 4536, 4537, 4538, 4539, 4540, 4541, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 4542, - 4543, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -1593, 32767, 32767, 0, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 32767, 32767, 0, 32767, - 0, 0, 0, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 5694, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 839, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -7494,46 +7513,29 @@ NFKC_QC_hash_func(const void *key) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 7338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 948, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 637, - 638, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 964, 964, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 253, 254, 255, - 256, 0, 257, 258, 259, 0, 260, 261, - 262, 263, 264, 3923, 3923, 267, 268, 269, - 270, 3923, 271, 272, 3923, 3923, 3923, -2857, - 3923, 3923, 3923, 3923, 3923, -2859, 3923, -2859, - 3923, -2860, 3923, 3923, 3923, 3923, 3923, 3923, - 3923, -2863, 3923, 3923, 3923, 3923, 3923, 3923, - 3923, 3923, 3923, 3923, 3923, 3923, 3923, 3923, - 3923, 3923, 3923, 3923, 124, 3923, 3923, 3923, - 3923, 3923, 3923, 3923, 3923, 3923, 3923, 3923, - 3923, 0, 0, 6947, 3571, -10780,5071, 5071, - 3763, 3763, -12624,3763, -2875, 3762, 3762, 3762, - 3762, 3762, 11767, 7367, 3762, 3762, 369, 11773, - 368, -11061,16236, 3762, -2868, -2868, -2868, 10421, - 3766, 3766, 3766, 3766, 3766, 3766, 8167, 11773, - 11774, 15168, 3765, 15171, 26601, -2866, -2866, -2866, - -2866, -2866, 0, -2865, -2865, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -2874, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 7042, 7043, 7044, 7045, 7046, 7047, 7048, + 7049, 7050, 7051, 7052, 7053, 7054, 7055, 7056, + 0, 0, 7057, 7058, 7059, 7060, 7061, 7062, + 7063, 7064, 7065, 7066, 7067, 7068, 7069, 7070, + 7071, 7072, 7073, 7074, 7075, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 5011, 5012, - 5013, 5014, 5015, 5016, 5017, 5018, 5019, 5020, - 5021, 5022, 5023, 5024, 5025, 5026, 5027, 5028, - 5029, 5030, 5031, 5032, 5033, 5034, 5035, 5036, - 5037, 5038, 5039, 5040, 5041, 5042, 5267, 5268, - 5269, 11926, 8568, 11928, 5273, 11929, 11930, 11931, - 11932, 11933, 11934, 7534, 3929, 3929, 536, 11940, - 535, -10894,16403, 3929, 11948, 32767, 32767, 32767, + 0, 10295, 10296, 0, 0, 0, 0, 0, + 0, 0, 10152, 10153, 7445, 0, 10158, 10159, + 10160, 10161, 10162, 10163, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7542,15 +7544,20 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 3161, 3162, 3163, 3164, 3165, 3166, + 3167, 3168, 3169, 3170, 3171, 3172, 3173, 3174, + 3175, 3176, 3177, 3178, 3179, 3180, 3181, 3182, + 3183, 3184, 7900, 3186, 6480, 3188, 7906, 3190, + 7909, 3192, 6142, 3194, 7787, 3196, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 0, 0, 0, 0, 0, 0, 0, 5075, + 0, 0, 0, 0, 0, 0, 0, 4954, + 4954, 4954, 0, 0, 4956, 0, 0, 0, + 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 3160, 3161, 3162, 3163, 3164, 3165, 3166, 3167, - 3168, 3169, 3170, 3171, 3172, 3173, 3174, 3175, - 3176, 3177, 3178, 3179, 3180, 3181, 3182, 3183, - 3184, 3185, 3186, 3187, 3188, 3189, 3190, 3191, - 3416, 3417, 3418, 10075, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7558,8 +7565,28 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 356, 357, 358, 1, 2, 3, + 4, 5, 6, 7, 8, 32767, 32767, 32767, + 32767, 32767, 32767, 367, 32767, 32767, 32767, 32767, + 32767, -3034, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 369, 19, + -3042, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 26, 32767, 32767, 32767, 27, 28, 32767, + 29, 30, 32767, 32767, 32767, 32767, 31, 32767, + 32, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 33, 34, 35, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 36, 32767, 32767, 32767, 32767, 32767, 3075, + 3076, -7043, 3078, 3079, 32767, 3080, 3081, 3082, + 3083, 3084, 3085, 3086, 3087, 3088, 3089, 3090, + 3091, 3092, 3093, 3094, 3095, 3096, 3097, 3098, + 3099, 3100, 3101, 3102, -3460, -3460, -3460, -70, + -69, -68, -67, -66, -65, 3112, -3982, -3981, + 3115, 3116, 3117, 3118, 3119, 3120, 3121, -5251, + -5250, 3123, 3124, 3125, 3126, 3127, -1058, -1057, + -1056, 0, -1054, -1053, -1052, -5968, -5968, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, -2461, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7572,40 +7599,8 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - -3433, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, -629, 0, 3074, 3075, 3076, 3077, 3078, - 0, 3079, 3080, 3081, 3082, 3083, 3084, 3085, - 3086, 3087, -9132, 10148, 3090, 3091, 3092, 3093, - 3094, 3095, 3096, 3097, 3098, 3099, 3100, 3101, - 3102, 3103, 3104, 3105, 3106, 3107, 3108, 3109, - 3110, 3111, 3112, 3113, 3114, 3115, 3116, 3117, - 3118, 3119, 3120, 6777, 3121, 3122, 3123, 3124, - 3125, 3126, 3127, 3128, 3129, 6780, 0, 6780, - 6780, 6780, 0, 0, 0, 6782, 0, 0, - 0, 0, 6784, 0, 6785, 0, 6786, 6786, - 0, 6786, 0, 6787, 6787, 6787, 0, 6788, - 6788, 6788, 6788, 6788, 6788, 6788, 0, 6789, - 6789, 6789, 6789, 2990, 6789, 0, 0, 0, - 0, 6793, 6793, 6793, 6793, 6793, 0, 0, - 0, 0, 0, 0, -7904, 7947, 7947, 6639, - 6639, -9748, 32767, 0, 6637, 32767, 32767, 6635, - 32767, 32767, 10238, 6633, 32767, 32767, 14642, 3237, - -8192, 19105, 32767, 0, 0, 0, 13289, 6634, - 6634, 6634, 6634, 6634, 6634, 11035, 14641, 32767, - 18035, 32767, 18037, 29467, 0, 0, 0, 0, - 0, 32767, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 223, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7615,6 +7610,7 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7627,26 +7623,65 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1646, 0, 0, + 0, 0, 0, 0, 1783, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 279, 279, 7059, -927, 485, -927, 486, -927, + -927, -927, -927, 487, -927, -927, 488, 489, + 490, 491, 0, -927, 492, 493, 494, -927, + 495, 496, 497, -927, -927, -927, -2402, -2402, + -2402, 1360, 1361, -2402, -2402, -567, -2402, -2402, + -2402, -2402, -2402, -2402, -2402, -2402, -280, -2402, + -2402, -278, -2402, -2402, -2402, 3221, -2402, -2402, + -549, -2402, -2402, -2402, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 32767, 32767, + 32767, 224, 225, 226, 32767, 227, 228, 229, + -4687, -4687, -4687, -5920, -972, -1176, -970, -4687, + 32767, -968, -967, -7746, 241, -1170, 243, -1169, + 245, 246, 247, 248, -1165, 250, 251, -1163, + -1163, -1163, -1163, 32767, 256, -1162, -1162, -1162, + 260, -1161, -1161, -1161, 264, 265, 266, 140, + -1502, -1501, 142, -1499, -1498, -1497, -1496, -1495, + -1494, -1493, -1492, -1491, -1490, -1489, -1488, -1487, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 284, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 0, 0, - 0, 0, 0, 32767, 32767, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 299, 300, + 301, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7654,331 +7689,308 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 3197, + 3198, 3199, 3200, 3201, 3202, 3203, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 2786, 32767, 0, 0, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 6251, 3205, 3206, 3207, + 4441, -506, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 224, 225, 226, 32767, 227, 228, 229, - 230, 231, 232, 233, 234, 235, 236, 237, - 32767, 2087, -494, -8398, 7453, 7453, 243, 244, - -10240,-7658, 247, -15603,-15602,250, 251, 252, - 253, 254, 255, 32767, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, - 268, -2027, -1089, -2027, -2027, -2027, -2027, -2027, - -2027, -772, -2027, 279, 280, 281, 282, 283, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 284, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, -1717, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 285, 286, 287, 288, 289, 290, 291, 292, - 6178, 294, 295, -11663,-11663,-7033, 15640, -11653, - 15643, -11653,15646, 15647, 11018, -11654,15640, -11655, - -6928, -11655,-11655,-7025, 15648, -6923, -6922, -6921, - -6920, -6919, 7643, -11636,-6916, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + -1688, -1688, 0, 0, 0, 0, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, -11072,-11072,-11072, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, -17220,-12590,10083, - -17210,10086, 5360, 10088, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 0, 0, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -4715, 0, -3293, 0, -4717, 0, -4718, 0, + -2949, 0, -4592, 0, -2951, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + -3915, -3915, 32767, 32767, 32767, 32767, 0, 0, + 0, 0, 0, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, -4703, -4703, -4703, -4703, -4703, -4703, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 0, 0, 0, 0, 0, + 32767, 32767, -3370, 32767, -3371, -3371, -3371, -3371, + -3371, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 337, 32767, 338, 32767, 339, 340, 341, 32767, + 32767, 32767, -3383, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, -3032, 32767, -3033, -3033, -3033, 32767, + 0, 0, -3036, 0, 0, 0, 0, 0, + 0, 0, -3045, 0, -3047, 0, 0, 0, + -1233, 3715, 3511, 3717, 0, 3719, 3720, 3721, + -3058, 0, -3060, 0, -3062, 0, 0, 0, + 0, 0, 0, 358, 358, 358, 358, 358, + 358, 358, 358, 358, 358, 358, 358, 358, + 358, 0, 0, 356, 0, 355, 3402, 3402, + 353, 353, 353, 353, 353, 353, 353, 353, + 353, 353, 0, 352, 0, 351, 3413, 0, + 349, 349, 0, 0, 0, 346, 346, 346, + 346, 346, 346, 346, 346, 346, 346, 346, + 346, 346, 346, 346, 346, 346, 346, 346, + 346, 346, 346, 346, 346, 346, 346, 346, + 346, 346, 346, 346, 346, 346, 346, 346, + 346, 346, 346, 346, 346, 346, 346, 346, + 346, 346, 346, 7422, 7423, 7424, 7425, 7426, + 7427, 7428, 7429, 7430, 7431, 7432, 7433, -2861, + -2861, 7436, 7437, 7438, 7439, 7440, 7441, 7442, + -2709, -2709, 0, 7446, -2711, -2711, -2711, -2711, + -2711, -2711, 3852, 3853, 3854, 465, 465, 465, + 465, 465, 465, -2711, 4384, 4384, -2711, -2711, + -2711, -2711, -2711, -2711, -2711, 5662, 5662, 0, + -2711, -2711, -2711, -2711, 1475, 1475, 1475, 420, + 1475, 1475, 1475, 6392, 6393, 6394, 7628, 2681, + 2886, 2681, 6399, 2681, 2681, 2681, 9461, 1475, + 2887, 1475, 2888, 1475, 1475, 1475, 1475, 2889, + 1475, 1475, 2890, 2891, 2892, 2893, 2402, 1475, + 2894, 2895, 2896, 1475, 2897, 2898, 2899, 1475, + 1475, 1475, 0, 0, 0, 3762, 3763, 0, + 0, 1835, 0, 0, 0, 0, 0, 0, + 0, 0, 2122, 0, 0, 2124, 0, 0, + 0, 5623, 0, 0, 1853, 0, 0, 0, + 2402, 2402, 2402, 2402, 2402, 2402, 2402, 2402, + 2402, 2402, 2402, 2402, 2402, 2402, 2402, 2402, + 2402, 2402, 2402, 2402, 2402, 2402, 2402, 2402, + 2402, 0, 2401, 2401, 2401, 2401, 2401, 2401, + 2401, 427, 428, 429, 430, 2932, 431, 432, + 433, 2936, 434, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 2948, 445, 2775, + 2775, 2775, 2775, 2775, 2775, 2775, 2775, 2775, + 2775, 2775, 2775, 2775, 2775, 2775, 2775, 2775, + 2775, 2775, 2775, 2775, 2444, 460, 461, 0, + 462, 463, 464, 0, 465, 466, 467, 468, + 469, 470, 471, 0, 472, 473, 474, 475, + 476, 477, 0, 0, 0, 0, 478, 479, + 480, 481, 482, 0, 0, -1205, -1204, -1203, + -1202, 483, 484, 485, 486, 487, 488, 489, + 2724, 491, 492, 493, 494, 495, 2825, 2825, + 2825, 2825, 2825, 2825, 2825, 2825, 2825, 2825, + 2825, 2825, 2825, 2825, 2825, 2825, 2825, 2825, + 2825, 515, 516, 517, 9866, 9867, 9868, 9869, + 9870, 523, 524, 3789, 526, 527, 528, 529, + 3790, 5162, 3188, 4819, 0, 3910, 0, 1048, + 1049, 1050, 5434, 5435, 5436, 3791, 5438, 5439, + 5440, 5441, 0, 1676, 1676, 0, 0, 0, + 0, 3443, 2366, 0, 0, 0, 0, 0, + 0, 3451, 3452, 3453, 4260, 4261, 4262, 4263, + 4264, 4265, 4266, 4267, 0, 0, 319, 0, + 0, 0, 2355, 0, 0, 0, 0, 0, + 5938, 5939, 5940, 5941, 5942, 5943, 5944, 3823, + 5946, 5947, 3824, 5949, 5950, 5951, 329, 5953, + 5954, 4102, 4103, 4891, 4892, 3960, 3960, 3960, + 3960, 3960, 3960, 3960, 3960, 3960, 3960, 3960, + 3960, 3960, 3960, 3960, 3960, 3960, 3960, 0, + 3960, 3045, 3960, 3960, 0, 3960, 3960, 3960, + 3960, 3515, 0, 3960, 0, 0, 0, 3960, + 5140, 5956, 5957, 5958, 5959, 5960, 5961, 5962, + 3960, 3960, 3960, 3960, 3960, 3960, 3960, 3960, + 3960, 3960, 3960, 3178, 5963, 5964, 5965, 5966, + 5967, 8081, 6789, 3960, 3960, 3960, 5968, 8091, + 5969, 5970, 5971, 5972, 5973, 5974, 0, 0, + 0, 5981, 5982, 5983, 5984, 5985, 5986, 5987, + 5988, 5989, 5990, 5991, 5992, 5993, 5994, 9171, + 2077, 2078, 2599, 2599, 9174, 9175, 9176, 9177, + 9178, 806, 807, 6470, 9182, 9183, 9184, 9185, + 5000, 5001, 5002, 6058, 5004, 5005, 5006, 90, + 90, 90, -1143, 3805, 3601, 3807, 90, 3809, + 3810, 3811, -2968, 5019, 3608, 5021, 3609, 5023, + 5024, 5025, 5026, 3613, 5028, 5029, 3615, 3615, + 3615, 3615, 4107, 5035, 3617, 3617, 3617, 5039, + 3618, 3618, 3618, 5043, 5044, 5045, 4919, 3277, + 3278, 4921, 3280, 3281, 3282, 3283, 3284, 3285, + 3286, 3287, 3288, 3289, 3290, 3291, 3292, 3293, + 3294, 3295, 3296, 3297, 3298, 3299, 3300, 3301, + 3302, 3303, 3304, 3305, 3306, 3307, 3308, 3309, + 3310, 3311, 3312, 3313, 3314, 3315, 3316, 3317, + 3318, 3319, 3320, 3321, 3322, 3323, 3324, 3325, + 3326, 3327, 3328, 3329, 3330, 3331, 3332, 3333, + 3334, 3335, 3336, 1722, 3338, 32767, 3698, 3699, + 6736, 3701, 3702, 3703, 3704, 3705, 3706, 3707, + 6753, 3709, 6757, 3711, 3712, 3713, 4947, 0, + 205, 0, 3718, 0, 0, 0, 6780, 3723, + 6784, 3725, 6788, 3727, 3728, 3729, 3730, 3731, + 3732, 3375, 3376, 3377, 3378, 3379, 3380, 3381, + 3382, 3383, 3384, 3385, 3386, 3387, 3388, 3747, + 3748, 3393, 3750, 3396, 350, 351, 3401, 3402, + 3403, 3404, 3405, 3406, 3407, 3408, 3409, 3410, + 3764, 3413, 3766, 3416, 355, 3769, 3421, 3422, + 3772, 3773, 3774, 3429, 3430, 3431, 3432, 3433, + 3434, 3435, 3436, 3437, 3438, 3439, 3440, 3441, + 3442, 3443, 3444, 3445, 3446, 3447, 3448, 3449, + 3450, 3451, 3452, 3453, 3454, 3455, 3456, 3457, + 3458, 3459, 3460, 3461, 3462, 3463, 3464, 3465, + 3466, 3467, 3468, 3469, 3470, 3471, 3472, 3473, + 3474, -3601, -3601, -3601, -3601, -3601, -3601, -3601, + -3601, -3601, -3601, -3601, -3601, 6694, 6695, -3601, + -3601, -3601, -3601, -3601, -3601, -3601, 6551, 6552, + 3844, -3601, 6557, 6558, 6559, 6560, 6561, 6562, + 0, 0, 0, 3390, 3391, 3392, 3393, 3394, + 3395, 6572, -522, -521, 0, 0, 6575, 6576, + 6577, 6578, 6579, -1793, -1792, 3871, 6583, 6584, + 6585, 6586, 2401, 2402, 2403, 3459, 2405, 2406, + 2407, -2509, -2509, -2509, -3742, 1206, 1002, 1208, + -2509, 1210, 1211, 1212, -5567, 2420, 1009, 2422, + 1010, 2424, 2425, 2426, 2427, 1014, 2429, 2430, + 1016, 1016, 1016, 1016, 1508, 2436, 1018, 1018, + 1018, 2440, 1019, 1019, 1019, 2444, 2445, 2446, + 3922, 3923, 3924, 163, 163, 3927, 3928, 2094, + 3930, 3931, 3932, 3933, 3934, 3935, 3936, 3937, + 1816, 3939, 3940, 1817, 3942, 3943, 3944, -1678, + 3946, 3947, 2095, 3949, 3950, 3951, 32767, 3952, + 3953, 3954, 3955, 3956, 3957, 3958, 3959, 3960, + 3961, 3962, 3963, 3964, 3965, 3966, 3967, 3968, + 3969, 3131, 3971, 3972, 3973, 3974, 3975, 3976, + 3977, 3978, 3979, 3980, 3981, 3982, 3983, 3984, + 3985, 3986, 3987, 3988, 3989, 3990, 3991, 3992, + 3993, 3994, 3995, 3996, 3997, 3998, 3999, 4000, + 4001, 4002, 4003, 4004, 4005, 4006, 4007, 4008, + 4009, 4010, 4011, 4012, 4013, 4014, 4015, 4016, + 4017, 4018, 4019, 4020, 4021, 4022, 4023, 4024, + 4025, 4026, 4027, 4028, 4029, 4030, 4031, 4032, + 4033, 4034, 4035, 4036, 4037, 4038, 4039, 4040, + 4041, 4042, 4043, 4044, 4045, 4046, 4047, 4048, + 4049, 4050, 4051, 4052, 4053, 4054, 4055, 4056, + 4057, 4058, 4059, 4060, 4061, 4062, 4063, 4064, + 4065, 4066, 4067, 4068, 4069, 4070, 4071, 4072, + 4073, 4074, 4075, 4076, 4077, 4078, 4079, 3132, + 4081, 4082, 4083, 4084, 4085, 4086, 4087, 4088, + 4089, 4090, 4091, 4092, 4093, 4094, 4095, 4096, + 4097, 4098, 4099, 4100, 4101, 4102, 4103, 4104, + 4105, 4106, 4107, 4108, 4109, 4110, 4111, 4112, + 4113, 4114, 4115, 4116, 4117, 4118, 4119, 4120, + 4121, 4122, 4123, 4124, 4125, 4126, 4127, 4128, + 4129, 4130, 4131, 4132, 4133, 4134, 4135, 4136, + 4137, 4138, 4139, 4140, -2901, -2901, -2901, -2901, + -2901, -2901, -2901, -2901, -2901, -2901, -2901, -2901, + -2901, -2901, -2901, -2901, -2901, -2901, -2901, -2901, + -2901, -2901, -2901, -2901, -2901, -2901, -2901, -2901, + -2901, -2901, -2901, -2901, -2901, -2901, -2901, -2901, + 4175, 4176, 4177, 4178, 4179, 4180, 4181, 4182, + 4183, 4184, 4185, 4186, -6108, -6108, 4189, 4190, + 4191, 4192, 4193, 4194, 4195, -5956, -5956, -3247, + 4199, -5958, -5958, -5958, -5958, -5958, -5958, 605, + 606, 607, -2782, -2782, -2782, -2782, -2782, -2782, + -5958, 1137, 1137, 617, 618, -5956, -5956, -5956, + -5956, -5956, 2417, 2417, -3245, -5956, -5956, -5956, + -5956, -1770, -1770, -1770, -2825, -1770, -1770, -1770, + 3147, 3148, 3149, 4383, -564, -359, -564, 3154, + -564, -564, -564, 6216, -1770, -358, -1770, -357, + -1770, -1770, -1770, -1770, -356, -1770, -1770, -355, + -354, -353, -352, -843, -1770, -351, -350, -349, + -1770, -348, -347, -346, -1770, -1770, -1770, -1643, + 0, 0, -1642, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -4261, 2507, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -3346, 32767, 32767, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 32767, 32767, 32767, 32767, 0, + 0, 0, 0, 0, 1615, 0, 0, 0, + 0, 0, 2483, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 324, 32767, 325, 32767, 326, 32767, 327, 32767, - 328, 32767, 329, 32767, 330, 0, 0, 0, - 0, 0, 0, 32767, 32767, 223, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, - 0, 0, 0, 0, 32767, 32767, 32767, 32767, - 32767, 0, 32767, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 6529, - 6530, 6531, 6532, 32767, 6532, 6533, 6534, 0, - 0, 32767, 331, 32767, 332, 333, 334, 335, - 336, 32767, 0, 0, 0, 0, 0, 0, - 337, 0, 338, 0, -2473, -2472, -2471, 0, - 0, 0, -2470, 0, 0, 0, 0, 0, - 0, 0, -4976, 0, -2468, -2467, -2466, 0, - 0, 0, -2465, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 350, 351, 0, - 0, 0, 0, 0, 0, 0, 0, 1869, - 1869, 0, 1870, 1870, 1870, -4015, 1870, 1870, - 13829, 13830, 9201, -13471,13823, -13472,13825, -13473, - -13473,-8843, 13830, -13463,13833, -13463,13836, 13837, - 9208, -13464,0, 0, 0, 6768, 9112, -5449, - 13831, 6773, 9113, 0, 9114, 2458, 5817, 1877, - 0, 1877, 1877, 0, -1508, -1507, -1506, 1877, - 1877, 1877, 0, 1877, 1877, 1877, 0, 1874, - 0, 0, 0, -1504, -1503, 0, -1502, 1875, - 0, 0, 1877, 1877, -1500, 1877, -1499, 0, - 0, 0, 0, 1877, 0, 1877, 0, -4262, - -4262, -4262, 0, 0, 0, 0, 4641, 4642, - 4643, 4644, 4645, 6458, 4647, 4648, 4649, -4275, - 4651, 4652, 3323, 8043, 4655, 4656, 4657, -4282, - 4659, 4660, 4661, 4662, 4663, 4664, 4665, 4666, - 4667, 4668, 4669, 4670, 4671, 4672, 4673, 4674, - -5974, -3392, 4677, 4678, -11338,-4127, -4127, 6358, - 3777, -4127, 11724, 11724, 4514, 4515, -5969, -3387, - 4518, -11332,-11331,-4120, -4120, 6365, 3784, -4120, - 11731, 11731, 4521, 4522, -5962, -3380, 4525, -11325, - -11324,-4113, -4113, 6372, 3791, -4113, -4301, 11737, - 4527, 4528, -5956, -3374, 4531, 4720, -11317,-4106, - -4106, 6379, 3798, -4106, 0, 0, 0, 0, - 426, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3209, 3210, 3211, 3212, 3213, 3214, - 3215, 3216, 3217, 3218, 3219, 6653, 3221, 3222, - 3223, 3224, 3225, 3226, 3227, 3228, 3229, 3230, - 3231, 3232, 3233, 3234, 3235, 3236, 3237, 3238, - 3239, 3240, 3241, 3242, 3243, 3244, 3874, 3246, - 173, 173, 173, 173, 173, 3252, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 12394, - -6885, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, -3484, - -3483, 174, 174, 174, 174, 174, 174, 174, - 174, 174, -3476, 3305, -3474, -3473, -3472, 3309, - 3310, 3311, -3470, 3313, 3314, 3315, 3316, -3467, - 3318, -3466, 3320, -3465, -3464, 3323, -3462, 3325, - -3461, -3460, -3459, 3329, -3458, -3457, -3456, -3455, - -3454, -3453, -3452, 3337, -3451, -3450, -3449, -3448, - 352, -3446, 3344, 3345, 3346, 3347, -3445, -3444, - -3443, -3442, -3441, 3353, 3354, 3355, 3356, 3357, - 3358, 11263, -4587, -4586, -3277, -3276, 13112, -3274, - 3365, -3271, -3270, -3269, -3268, -3267, -11271,-6870, - -3264, -3263, 131, -11272,134, 11564, -15732,-3257, - 3374, 3375, 3376, -9912, -3256, -3255, -3254, -3253, - -3252, -3251, -7651, -11256,-11256,-14649,-3245, -14650, - -26079,3389, 3390, 3391, 3392, 3393, 528, 3394, - 3395, 3396, 3397, 3398, 3399, 3400, 3401, 3402, - 3403, 3404, 3405, 3406, 3407, 3408, 3409, 3410, - 3411, 3412, 3413, 3414, 3415, 3416, 3417, 3418, - 3419, 3420, 3421, 3422, 3423, 3424, 3425, 3426, - 3427, 3428, 3429, 3430, 3431, 3432, 3433, 3434, - 3435, 3436, 3437, 3438, 3439, 3440, 3441, 3442, - 3443, 3444, 3445, 3446, 3447, 3448, 3449, 3450, - 3451, 3452, 32767, 3453, 3454, 3455, 3456, 3457, - 3458, 32767, 3459, 3460, 3461, 3462, 32767, 32767, - 3463, 3464, 3465, 3466, 3467, 3468, 3469, 3470, - 32767, 3471, 3472, 3473, 3474, 3475, 3476, 3477, - 32767, 3478, 3479, 3480, 3481, 3482, 3483, 3484, - 3485, 3486, 3487, 3488, 3489, 3490, 3491, 3492, - 3493, 7157, 7157, 7157, 7157, 7157, 3499, 3500, - 7157, 7157, 7157, 7157, 3505, 32767, 7157, 3507, - 3508, 3509, 32767, 3510, 3511, 3512, 3513, 3514, - 32767, 3515, 32767, 32767, 32767, 3516, 3517, 3518, - 3519, 3520, 3521, 3522, 32767, 3523, 3524, 3525, - 3526, 3527, 3528, 3529, 3530, 3531, 3532, 3533, - 3534, 3535, 3536, 3537, 3538, 3539, 3540, 7340, - 3542, 3543, 3544, 3545, 3546, 3547, 3548, 3549, - 3550, 3551, 3552, 3553, 7477, 7478, 532, 3909, - 18261, 2411, 2412, 3721, 3722, 20110, 3724, 10363, - 3727, 3728, 3729, 3730, 3731, -4273, 128, 3734, - 3735, 7129, -4274, 7132, 18562, -8734, 3741, 3742, - 384, 3744, -2911, 3745, 3746, 3747, 3748, 3749, - 3750, -650, -4255, -4255, -7648, 3756, -7649, -19078, - 8219, -4255, 3764, -3146, 3777, -852, -23524,3770, - -23525,3772, -23526,3774, -18897,3776, -23517,3779, - -947, 3781, 3782, -847, -23519,-947, -947, -947, - -947, -947, -15508,3772, -947, -947, -947, -947, - -7603, -4244, -7603, -947, -7602, -7602, -7602, -947, - -7603, -7603, -3202, 404, 405, 3799, -7604, 3802, - 15232, -12064,411, -7607, -696, -7618, -2988, 19685, - -7608, 19688, -7608, 19691, -7608, 15064, -7608, 19686, - -7609, -2882, -7609, -7609, -2979, 19694, -2877, -2876, - -2875, -2874, -2873, 11689, -7590, -2870, -2869, -2868, - -2867, 3790, 432, 3792, -2863, 3793, 3794, 3795, - -2859, 3798, 3799, -601, -4206, -4206, -7599, 3805, - -7600, -19029,8268, -4206, -4206, -847, -4206, 2450, - -4205, -4205, -4205, -4205, -4205, -4205, 196, 3802, - 3803, 7197, -4206, 7200, 18630, -8666, 3809, -4209, - 2702, -4220, 410, 23083, -4210, 23086, -4210, 23089, - -4210, 18462, -4210, 23084, -4211, 516, -4211, -4211, - 419, 23092, 521, 522, 523, 524, 525, 15087, - -4192, 528, 529, 530, 531, 7188, 3830, 7190, - 535, 7191, 7192, 7193, 539, 7196, 7197, 2797, - -808, -808, -4201, 7203, -4202, -15631,11666, -808, - -808, 2551, -808, 5848, -807, -807, -807, -807, - -807, -807, 3594, 7200, 7201, 10595, -808, 10598, - 22028, -5268, 7207, -811, 6100, -822, 3808, 26481, - -812, 26484, -812, 26487, -812, 21860, -812, 26482, - -813, 3914, -813, -813, 3817, 26490, 3919, 3920, - 3921, 3922, 3923, 18485, -794, 3926, 3927, 3928, - 3929, 10586, 7228, 10588, 3933, 10589, 10590, 10591, - 3937, 10594, 10595, 6195, 2590, 2590, -803, 10601, - -804, -12233,15064, 2590, 10609, 3699, 10622, 5993, - -16679,10615, -16680,10617, -16681,10619, -12052,10621, - -16672,10624, 5898, 10626, 10627, 5998, -16674,5898, - 5898, 5898, 5898, 5898, -8663, 10617, 5898, 5898, - 5898, 5898, 32767, 32767, -760, 5896, -759, -759, - -759, 5896, -760, -760, 3641, 7247, 7248, 10642, - -761, 10645, 22075, -5221, 7254, 7255, 3897, 7257, - 602, 7258, 7259, 7260, 7261, 7262, 7263, 2863, - -742, -742, -4135, 7269, -4136, -15565,11732, -742, - 7277, 367, 7290, 2661, -20011,7283, -20012,7285, - -20013,7287, -15384,7289, -20004,7292, 2566, 7294, - 7295, 2666, -20006,2566, 2566, 2566, 2566, 2566, - -11995,7285, 2566, 2566, 2566, 2566, -4090, -731, - -4090, 2566, -4089, -4089, -4089, 2566, -4090, -4090, - 311, 3917, 3918, 7312, -4091, 7315, 18745, -8551, - 3924, 3925, 567, 2566, 32767, 23198, -4095, 23201, - -4095, 23204, -4095, 18577, -4095, 23199, -4096, 631, - -4096, -4096, 534, 23207, 636, 637, 638, 639, - 640, 15202, -4077, 643, 644, 645, 646, 7303, - 3945, 7305, 650, 7306, 7307, 7308, 654, 7311, - 7312, 2912, -693, -693, -4086, 7318, -4087, -15516, - 11781, -693, -693, 2666, -693, 5963, -692, -692, - -692, -692, -692, -692, 3709, 7315, 7316, 10710, - -693, 10713, 22143, -5153, 7322, -696, 6215, -707, - 3923, 26596, -697, 26599, -697, 26602, -697, 21975, - -697, 26597, -698, 4029, -698, -698, 3932, 26605, - 4034, 4035, 4036, 4037, 4038, 18600, -679, 4041, - 4042, 4043, 4044, 10701, 7343, 10703, 4048, 10704, - 10705, 10706, 4052, 10709, 10710, 6310, 2705, 2705, - -688, 10716, -689, -12118,15179, 2705, 2705, 6064, - 4066, 4067, 4068, 3131, 4070, 4071, 4072, 4073, - 4074, 4075, 2821, 4077, 4078, 4079, 4080, 4081, - 4082, 4083, 4084, 4085, 4086, 4087, 4088, 4089, - 4090, 4091, 4092, 4093, 4094, 4095, 4096, 4097, - 4098, 4099, 4100, 20, 21, 22, 23, 24, - 1794, 1794, 1794, 3556, 4110, 4111, 4112, 4113, - 4114, 4115, 4116, 4117, 538, 1161, 1162, 541, - 4470, 1796, 1796, 6018, 4473, 4474, 4475, 4476, - 4477, 4478, 4479, 4480, 4481, 4482, 4483, 4484, - 4485, 4486, 4140, 4141, 4487, 4143, 4488, 4145, - 4146, 4489, 4490, 4491, 4492, 4493, 4494, 4495, - 4496, 575, 576, 4061, 4497, 4061, 4498, 4061, - 4160, 4499, 4500, 4163, 4164, 4165, 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, 4202, 0, 5914, 0, 0, 629, - 630, 631, 632, 633, 634, 635, 636, 637, - 638, 639, 640, 641, 642, 643, 644, 645, - 646, 647, 648, 649, 650, 651, 652, 653, - -1842, -1842, -1842, -1842, -1842, -1842, -1842, -1842, - -1842, -1842, -1842, -1842, 666, 667, 668, 669, - 670, 671, 672, 673, 674, 675, 676, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, -4470, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 6910, 0, 32767, 32767, 32767, - 32767, -20383,6914, 32767, 32767, 32767, 32767, 32767, - 0, 0, 0, 0, 0, 32767, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 12220, - -7059, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 3133, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 0, 32767, 0, 32767, 32767, 32767, 32767, 0, + 32767, 3134, 0, 0, 0, 0, 32767, 32767, + 0, 0, 0, 32767, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, -7886, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 3135, 32767, 32767, 3136, 32767, 32767, + 32767, 32767, 32767, 32767, 3137, 32767, 32767, 3138, + 32767, 3139, 3140, 3141, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 3132, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 3133, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 0, 32767, 32767, 32767, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 32767, 32767, 32767, - 32767, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -16387,0, 0, 0, 0, - 0, 0, 0, 8005, 3605, 0, 0, -3393, - 8011, -3394, -14823,12474, 0, 0, 3359, 0, - 32767, 0, 0, 0, 0, 0, 0, 4401, - 8007, 0, 11403, 0, 0, 22837, 0, 0, - 0, 0, -10, 4620, 27293, 0, 27296, 0, - 27299, 0, 22672, 0, 0, 0, 4727, 0, - 0, 3135, 32767, 32767, 32767, 32767, 32767, 32767, - 3136, 32767, 32767, 3137, 32767, 3138, 3139, 3140, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 0, 0, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 0, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 0, + 0, 0, 32767, 32767, 0, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, @@ -7986,26 +7998,15 @@ NFKC_QC_hash_func(const void *key) 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 32767, 32767, 32767, 32767, 32767, 32767, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32767, 32767, 0, 32767, - 0, 32767, 32767, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 32767, 0, 32767, - 0, 32767, 32767, 0, 0, 32767, 32767, 32767, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0 + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767, 32767, 32767, 32767, 32767, 32767, + 32767, 32767, 32767 }; const unsigned char *k = (const unsigned char *) key; size_t keylen = 4; uint32 a = 0; - uint32 b = 3; + uint32 b = 1; while (keylen--) { @@ -8014,12 +8015,12 @@ NFKC_QC_hash_func(const void *key) a = a * 257 + c; b = b * 8191 + c; } - return h[a % 10193] + h[b % 10193]; + return h[a % 10195] + h[b % 10195]; } /* Hash lookup information for NFKC_QC */ static const pg_unicode_norminfo UnicodeNormInfo_NFKC_QC = { UnicodeNormProps_NFKC_QC, NFKC_QC_hash_func, - 5096 + 5097 }; diff --git a/src/include/common/unicode_version.h b/src/include/common/unicode_version.h index 98823db12bd..ffcaff64cb1 100644 --- a/src/include/common/unicode_version.h +++ b/src/include/common/unicode_version.h @@ -11,4 +11,4 @@ *------------------------------------------------------------------------- */ -#define PG_UNICODE_VERSION "16.0" +#define PG_UNICODE_VERSION "17.0" -- 2.53.0 ^ permalink raw reply [nested|flat] 29+ messages in thread
* Re: Unicode update and some tooling improvements @ 2026-03-13 10:11 Alexander Borisov <[email protected]> parent: Peter Eisentraut <[email protected]> 1 sibling, 1 reply; 29+ messages in thread From: Alexander Borisov @ 2026-03-13 10:11 UTC (permalink / raw) To: Peter Eisentraut <[email protected]>; pgsql-hackers 26.02.2026 23:36, Peter Eisentraut wrote: > This is the annual update of the Unicode data. I also worked a bit on > the tooling. The update-unicode target under meson did not update the > data in contrib/unaccent/, so I added that. I also fixed a Python > deprecation warning in the generation script and made some light changes > in the surrounding documentation. Installed, tested, checked it out. I hope I'm not late. "[PATCH 3/6] Implement unaccent Unicode data update in meson" The idea of raising the minimum Meson version is good. But it seems like we can do without raising the version. As I understand it, the minimum version is being raised because of .replace(), but it can be successfully replaced here with the following construct: cldr_version_dashed = '-'.join(CLDR_VERSION.split('.')) url = cldr_baseurl.format(cldr_version_dashed, f) I would increase the minimum version of Meson, but I would do it with a separate patch so that the commit log would be "loud": - Increase the minimum version for Meson. This would be useful for users who look at commit logs. Currently, the minimum version for Meson is increased "secretly" inside the patch. Or at least explicitly indicate this in the commit log for this patch. Otherwise, looks good to me. I am in favor of regular Unicode updates. 🙂 -- Best regards, Alexander Borisov ^ permalink raw reply [nested|flat] 29+ messages in thread
* Re: Unicode update and some tooling improvements @ 2026-03-18 14:20 Andres Freund <[email protected]> parent: Peter Eisentraut <[email protected]> 1 sibling, 0 replies; 29+ messages in thread From: Andres Freund @ 2026-03-18 14:20 UTC (permalink / raw) To: Peter Eisentraut <[email protected]>; +Cc: pgsql-hackers Hi, On 2026-02-26 21:36:08 +0100, Peter Eisentraut wrote: > This is the annual update of the Unicode data. I also worked a bit on the > tooling. The update-unicode target under meson did not update the data in > contrib/unaccent/, so I added that. I also fixed a Python deprecation > warning in the generation script and made some light changes in the > surrounding documentation. > From ef15b16dcef7a3868fc37744d201bb233f8271bd Mon Sep 17 00:00:00 2001 > From: Peter Eisentraut <[email protected]> > Date: Thu, 26 Feb 2026 11:36:27 +0100 > Subject: [PATCH 3/6] Implement unaccent Unicode data update in meson > > The meson/ninja update-unicode target did not cover the required > updates in contrib/unaccent/. This is fixed now. Makes sesne. > +# Download CLDR files on demand. > + > +cldr_baseurl = 'https://raw.githubusercontent.com/unicode-org/cldr/release-@0@/common/transforms/@1@'; Hm. I take it the relevant contents aren't available on unicode.org, which we use in src/common/unicode? We reference githubusercontent.com in Makefile too, but somehow that feels a bit weird. > +if not wget.found() or not cp.found() > + subdir_done() > +endif > + > +foreach f : ['Latin-ASCII.xml'] > + # XXX .replace requires meson 0.58 > + url = cldr_baseurl.format(CLDR_VERSION.replace('.', '-'), f) I think this could be replaced with something like CLDR_VERSION.split('.').join('-') for < 0.58 compat. But I'm also ok with going to 0.58. > From 20d5a665f72b3ddde8bfdf06b94d218da0dc2d09 Mon Sep 17 00:00:00 2001 > From: Peter Eisentraut <[email protected]> > Date: Thu, 26 Feb 2026 11:38:16 +0100 > Subject: [PATCH 4/6] Update RELEASE_CHANGES > > The existing instructions did not cover meson. Point to > src/common/unicode/README instead, where there is more information. LGTM. > From 868e269b518daf0d3d288e2e379d5fd3ad215f49 Mon Sep 17 00:00:00 2001 > From: Peter Eisentraut <[email protected]> > Date: Thu, 26 Feb 2026 10:25:48 +0100 > Subject: [PATCH 5/6] Update Unicode data to CLDR 48.1 > > No actual changes result. > > XXX should change that to CLDR 49 in April 48.2 has been released from what I can tell. LGTM otherwise. > From dd4b5ced419b319c24fa0928180e54d7317e1690 Mon Sep 17 00:00:00 2001 > From: Peter Eisentraut <[email protected]> > Date: Thu, 26 Feb 2026 11:38:51 +0100 > Subject: [PATCH 6/6] Update Unicode data to Unicode 17.0.0 Looks like 18 is out, any reason to not go straight to that? > diff --git a/src/Makefile.global.in b/src/Makefile.global.in > index 7d65e428607..b99116a9ef8 100644 > --- a/src/Makefile.global.in > +++ b/src/Makefile.global.in > @@ -376,7 +376,7 @@ DOWNLOAD = wget -O $@ --no-use-server-timestamps > # Pick a release from here: <https://www.unicode.org/Public/;. Note > # that the most recent release listed there is often a pre-release; > # don't pick that one, except for testing. > -UNICODE_VERSION = 16.0.0 > +UNICODE_VERSION = 17.0.0 Wonder if we, in a separate change, should put UNICODE_VERSION and CLDR_VERSION version in dedicated files (probably just named UNICODE_VERSION/CLDR_VERSION) that then could be shared by meson & make. Greetings, Andres Freund ^ permalink raw reply [nested|flat] 29+ messages in thread
* Re: Unicode update and some tooling improvements @ 2026-03-20 07:50 Peter Eisentraut <[email protected]> parent: Alexander Borisov <[email protected]> 0 siblings, 1 reply; 29+ messages in thread From: Peter Eisentraut @ 2026-03-20 07:50 UTC (permalink / raw) To: Alexander Borisov <[email protected]>; pgsql-hackers On 18.03.26 13:47, Peter Eisentraut wrote: > On 13.03.26 11:11, Alexander Borisov wrote: >> 26.02.2026 23:36, Peter Eisentraut wrote: >>> This is the annual update of the Unicode data. I also worked a bit >>> on the tooling. The update-unicode target under meson did not update >>> the data in contrib/unaccent/, so I added that. I also fixed a >>> Python deprecation warning in the generation script and made some >>> light changes in the surrounding documentation. >> >> Installed, tested, checked it out. >> I hope I'm not late. >> >> "[PATCH 3/6] Implement unaccent Unicode data update in meson" >> >> The idea of raising the minimum Meson version is good. >> But it seems like we can do without raising the version. >> As I understand it, the minimum version is being raised because of >> .replace(), but it can be successfully replaced here with the following >> construct: >> cldr_version_dashed = '-'.join(CLDR_VERSION.split('.')) >> url = cldr_baseurl.format(cldr_version_dashed, f) > > Good idea. I committed it that way, without a meson version change for > the moment. I have committed the rest of this patch set, except the CLDR version change, for which I will wait until the next release expected in April, as usual. ^ permalink raw reply [nested|flat] 29+ messages in thread
* Re: Unicode update and some tooling improvements @ 2026-04-13 09:21 Peter Eisentraut <[email protected]> parent: Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 29+ messages in thread From: Peter Eisentraut @ 2026-04-13 09:21 UTC (permalink / raw) To: Alexander Borisov <[email protected]>; pgsql-hackers On 20.03.26 08:50, Peter Eisentraut wrote: > On 18.03.26 13:47, Peter Eisentraut wrote: >> On 13.03.26 11:11, Alexander Borisov wrote: >>> 26.02.2026 23:36, Peter Eisentraut wrote: >>>> This is the annual update of the Unicode data. I also worked a bit >>>> on the tooling. The update-unicode target under meson did not >>>> update the data in contrib/unaccent/, so I added that. I also fixed >>>> a Python deprecation warning in the generation script and made some >>>> light changes in the surrounding documentation. >>> >>> Installed, tested, checked it out. >>> I hope I'm not late. >>> >>> "[PATCH 3/6] Implement unaccent Unicode data update in meson" >>> >>> The idea of raising the minimum Meson version is good. >>> But it seems like we can do without raising the version. >>> As I understand it, the minimum version is being raised because of >>> .replace(), but it can be successfully replaced here with the following >>> construct: >>> cldr_version_dashed = '-'.join(CLDR_VERSION.split('.')) >>> url = cldr_baseurl.format(cldr_version_dashed, f) >> >> Good idea. I committed it that way, without a meson version change >> for the moment. > > I have committed the rest of this patch set, except the CLDR version > change, for which I will wait until the next release expected in April, > as usual. I don't think there is a CLDR 49 release coming soon (as I'm inferring from the cadence of tags in their Git repository), so I have committed the update to 48.2. ^ permalink raw reply [nested|flat] 29+ messages in thread
end of thread, other threads:[~2026-04-13 09:21 UTC | newest] Thread overview: 29+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2021-03-11 15:18 [PATCH 5/8] f!2nd attempt to use pkgconfig to allow compiling on OSX Justin Pryzby <[email protected]> 2026-02-26 20:36 Unicode update and some tooling improvements Peter Eisentraut <[email protected]> 2026-03-13 10:11 ` Re: Unicode update and some tooling improvements Alexander Borisov <[email protected]> 2026-03-20 07:50 ` Re: Unicode update and some tooling improvements Peter Eisentraut <[email protected]> 2026-04-13 09:21 ` Re: Unicode update and some tooling improvements Peter Eisentraut <[email protected]> 2026-03-18 14:20 ` Re: Unicode update and some tooling improvements Andres Freund <[email protected]>
This inbox is served by agora; see mirroring instructions for how to clone and mirror all data and code used for this inbox