From 709c4d66e0b107ca606941b988bad717c0b45d9b Mon Sep 17 00:00:00 2001 From: Denys Dmytriyenko Date: Tue, 17 Mar 2009 14:32:59 -0400 Subject: rename packages/ to recipes/ per earlier agreement See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko Acked-by: Mike Westerhof Acked-by: Philip Balister Acked-by: Khem Raj Acked-by: Marcin Juszkiewicz Acked-by: Koen Kooi Acked-by: Frans Meulenbroeks --- packages/glibc/files/5090_all_stubs-rule-fix.patch | 39 - packages/glibc/files/armv4t-interworking.patch | 47 - packages/glibc/files/fhs-linux-paths.patch | 11 - packages/glibc/files/generate-supported.mk | 11 - .../files/glibc-2.3.5-fix-weak-alias-arm-2.patch | 11 - .../files/glibc-2.3.5-fix-weak-alias-arm.patch | 15 - .../files/glibc-2.5-local-dynamic-resolvconf.patch | 41 - .../glibc-2.5-soft-fp-separate-strong-alias.patch | 205 - .../files/glibc-2.6.1-RTLD_SINGLE_THREAD_P-1.patch | 20 - .../glibc/files/glibc-2.6.1-powerpc-nofpu.patch | 11 - .../files/glibc-2.6.1-use-short-for-fnstsw.patch | 30 - .../glibc/files/glibc-includes-fixed-isystem.patch | 32 - packages/glibc/files/march-i686.patch | 38 - packages/glibc/files/ppc-ld-nofpu-20070104.patch | 190 - .../glibc/files/ppc-ports-ld-nofpu-20070114.patch | 38 - packages/glibc/files/ppc-sfp-machine.patch | 297 - packages/glibc/files/ppc-soft-fp-20070115.patch | 182 - .../glibc/glibc-2.2.5/alpha-build-failure.patch | 30 - packages/glibc/glibc-2.2.5/arm-asm-clobber.patch | 16 - packages/glibc/glibc-2.2.5/arm-ctl_bus_isa.patch | 40 - packages/glibc/glibc-2.2.5/arm-longlong.patch | 59 - packages/glibc/glibc-2.2.5/arm-machine-gmon.patch | 11 - packages/glibc/glibc-2.2.5/arm-memcpy.patch | 761 - packages/glibc/glibc-2.2.5/arm-no-hwcap.patch | 11 - packages/glibc/glibc-2.2.5/cris-libc-symbols.patch | 43 - .../glibc/glibc-2.2.5/cris-stack-direction.patch | 36 - packages/glibc/glibc-2.2.5/dl-machine-alpha.patch | 420 - packages/glibc/glibc-2.2.5/dl-machine-arm.patch | 383 - packages/glibc/glibc-2.2.5/dl-machine-m68k.patch | 171 - packages/glibc/glibc-2.2.5/dl-machine-mips.patch | 16 - packages/glibc/glibc-2.2.5/dl-machine-sh.patch | 30 - packages/glibc/glibc-2.2.5/dl-machine-sparc.patch | 235 - packages/glibc/glibc-2.2.5/errlist-1.9.patch | 25 - packages/glibc/glibc-2.2.5/errlist-arm.patch | 25 - packages/glibc/glibc-2.2.5/etc/ld.so.conf | 2 - packages/glibc/glibc-2.2.5/fhs-linux-paths.patch | 16 - .../glibc-2.2.5-allow-gcc-3.4-fixup.patch | 55 - .../glibc-2.2.5-allow-gcc-3.4-grp.patch | 36 - .../glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-td.patch | 881 - .../glibc-2.2.5-allow-gcc-4.x-configure.patch | 21 - .../glibc-2.2.5/glibc-2.2.5-alpha-pwrite64.patch | 35 - .../glibc-2.2.5-alpha-self-clobber.patch | 25 - .../glibc-2.2.5/glibc-2.2.5-arm-pwrite64.patch | 23 - .../glibc/glibc-2.2.5/glibc-2.2.5-crosstest.patch | 28 - .../glibc/glibc-2.2.5/glibc-2.2.5-crossyes.patch | 16 - .../glibc/glibc-2.2.5/glibc-2.2.5-cygwin.patch | 79 - .../glibc-2.2.5/glibc-2.2.5-hhl-powerpc-fpu.patch | 1108 - .../glibc-2.2.5/glibc-2.2.5-mips-build-gmon.patch | 88 - .../glibc-2.2.5-mips-clone-local-label.patch | 24 - .../glibc-2.2.5/glibc-2.2.5-ppc405erratum77.patch | 65 - .../glibc-2.2.5/glibc-2.3.2-allow-solaris.patch | 41 - .../glibc/glibc-2.2.5/glibc-2.3.2-initfini.patch | 12 - packages/glibc/glibc-2.2.5/glibc-drow-sh.patch | 30 - .../glibc-linuxthreads-2.3.2-initfini.patch | 12 - packages/glibc/glibc-2.2.5/glibc-test-lowram.patch | 19 - packages/glibc/glibc-2.2.5/initfini-alpha.patch | 128 - packages/glibc/glibc-2.2.5/initfini-flags.patch | 16 - packages/glibc/glibc-2.2.5/initfini-sh.patch | 248 - packages/glibc/glibc-2.2.5/ldd.patch | 38 - .../linuxthreads-2.2.5-ppc405erratum77.patch | 34 - packages/glibc/glibc-2.2.5/longjmp-sparc.patch | 16 - packages/glibc/glibc-2.2.5/pt-initfini-alpha.patch | 119 - packages/glibc/glibc-2.2.5/pt-initfini-flags.patch | 16 - packages/glibc/glibc-2.2.5/pt-initfini-sh.patch | 267 - packages/glibc/glibc-2.2.5/sh-setjmp-fix.patch | 17 - packages/glibc/glibc-2.2.5/sprintf-prototype.patch | 18 - packages/glibc/glibc-2.2.5/sscanf.patch | 64 - packages/glibc/glibc-2.2.5/threadparam.patch | 69 - packages/glibc/glibc-2.2.5/unwind-arm.patch | 18 - packages/glibc/glibc-2.3.2/10_cvs.patch | 177118 ------------------ packages/glibc/glibc-2.3.2/11_shlib-lds.patch | 10 - packages/glibc/glibc-2.3.2/30_glibc232-base.patch | 55 - .../glibc/glibc-2.3.2/50_glibc23-hppa-entry.patch | 13 - .../50_glibc232-arm-dwarf2-buildfix.patch | 5 - .../50_glibc232-hppa-full-nptl-2003-10-22.patch | 2665 - .../50_glibc232-m68k-dwarf2-buildfix.patch | 5 - .../glibc-2.3.2/50_glibc232-mips-buildfix.patch | 48 - .../glibc-2.3.2/80_glibc232-futimes-buildfix.patch | 10 - .../glibc-2.3.2/80_glibc232-iconvdata-fix.patch | 76 - .../glibc-2.3.2/80_glibc232-locales-header.patch | 43 - .../80_glibc232-locales-nb_NO-fix.patch | 112 - .../glibc/glibc-2.3.2/80_glibc232-wcsmbs-fix.patch | 86 - .../glibc/glibc-2.3.2/81_glibc232-utimes-fix.patch | 39 - .../glibc/glibc-2.3.2/90_glibc232-statvfs.patch | 32 - .../glibc/glibc-2.3.2/90_glibc232-timezones.patch | 1078 - packages/glibc/glibc-2.3.2/alpha-crti.patch | 10 - packages/glibc/glibc-2.3.2/alpha-pic.patch | 17 - packages/glibc/glibc-2.3.2/alpha-pwrite.patch | 13 - packages/glibc/glibc-2.3.2/arm-ioperm.patch | 13 - packages/glibc/glibc-2.3.2/arm-longlong.patch | 59 - packages/glibc/glibc-2.3.2/arm-machine-gmon.patch | 11 - packages/glibc/glibc-2.3.2/arm-memcpy.patch | 756 - packages/glibc/glibc-2.3.2/arm-no-hwcap.patch | 11 - packages/glibc/glibc-2.3.2/arm-output-format.patch | 11 - packages/glibc/glibc-2.3.2/asm-arm-unistd.h | 494 - packages/glibc/glibc-2.3.2/autoconf.h | 1054 - packages/glibc/glibc-2.3.2/dyn-ldconfig.diff | 62 - packages/glibc/glibc-2.3.2/etc/ld.so.conf | 2 - .../glibc-2.3.2/glibc-2.3.2-200304020432.patch | 136135 -------------- .../glibc-2.3.2/glibc-2.3.2-ldconfig-tls.patch | 19 - packages/glibc/glibc-2.3.2/glibc-i686-timing.patch | 125 - .../glibc/glibc-2.3.2/glibc-make-check-perms.patch | 10 - packages/glibc/glibc-2.3.2/glibc22-eo_EO.patch | 219 - packages/glibc/glibc-2.3.2/glibc22-locales.patch | 99 - .../glibc/glibc-2.3.2/glibc22-m68k-compat.patch | 20 - packages/glibc/glibc-2.3.2/glibc22-m68k-fpic.patch | 10 - .../glibc/glibc-2.3.2/glibc22-nss-upgrade.patch | 26 - .../glibc/glibc-2.3.2/glibc22-ttyname-devfs.patch | 225 - .../glibc-2.3.2/glibc23-01-hppa-dl-machine.patch | 305 - .../glibc-2.3.2/glibc23-07-hppa-atomicity.patch | 58 - .../glibc/glibc-2.3.2/glibc23-asserth-decls.patch | 19 - packages/glibc/glibc-2.3.2/glibc23-cmov.patch | 36 - .../glibc/glibc-2.3.2/glibc23-ctype-compat.patch | 86 - .../glibc/glibc-2.3.2/glibc23-errno-hack.patch | 58 - packages/glibc/glibc-2.3.2/glibc23-errno.patch | 36 - .../glibc-2.3.2/glibc23-function-compat.patch | 32 - .../glibc-2.3.2/glibc23-hppa-Rminkernel.patch | 22 - .../glibc/glibc-2.3.2/glibc23-hppa-compat.patch | 80 - .../glibc/glibc-2.3.2/glibc23-hppa-malloc8.patch | 13 - .../glibc/glibc-2.3.2/glibc23-libio-compat.patch | 144 - packages/glibc/glibc-2.3.2/glibc23-mips-msq.patch | 39 - .../glibc-2.3.2/glibc23-powerpc-sigcontext.patch | 326 - .../glibc/glibc-2.3.2/glibc23-sparc-pread64.patch | 19 - .../glibc/glibc-2.3.2/glibc23-sse-oldkernel.patch | 109 - .../glibc/glibc-2.3.2/glibc23-version-sanity.patch | 11 - .../glibc232-gcc34-i386-fixup-attribute.patch | 53 - .../glibc232-gcc34-no-unit-at-a-time.patch | 112 - packages/glibc/glibc-2.3.2/glibcbug.patch | 22 - packages/glibc/glibc-2.3.2/hppa-syscall.patch | 31 - .../glibc/glibc-2.3.2/hurd-enable-ldconfig.patch | 61 - packages/glibc/glibc-2.3.2/ldconfig.patch | 37 - packages/glibc/glibc-2.3.2/ldd.patch | 38 - .../glibc/glibc-2.3.2/ldso-disable-hwcap.patch | 62 - packages/glibc/glibc-2.3.2/libgcc-compat-all.patch | 435 - .../glibc/glibc-2.3.2/libgcc-compat-other.patch | 883 - packages/glibc/glibc-2.3.2/librt-mips.patch | 12 - .../glibc-2.3.2/lo_LA.UTF-8_not_supported.patch | 10 - packages/glibc/glibc-2.3.2/locale-es_AR.patch | 13 - packages/glibc/glibc-2.3.2/locales-stuff.patch | 44 - packages/glibc/glibc-2.3.2/locales-supported.patch | 159 - packages/glibc/glibc-2.3.2/makeconfig.patch | 15 - packages/glibc/glibc-2.3.2/noinfo.patch | 52 - packages/glibc/glibc-2.3.2/nptl-pthread-once.patch | 10 - packages/glibc/glibc-2.3.2/nss_compat-shadow.patch | 128 - packages/glibc/glibc-2.3.2/powerpc-sysconf.patch | 39 - packages/glibc/glibc-2.3.2/pthread-cleanup.patch | 62 - packages/glibc/glibc-2.3.2/revert-old-libio.patch | 78 - packages/glibc/glibc-2.3.2/s390-tls.patch | 11 - packages/glibc/glibc-2.3.2/sedscript.patch | 10 - packages/glibc/glibc-2.3.2/sparc64-fixups.patch | 29 - packages/glibc/glibc-2.3.2/sparcv8-target.patch | 28 - packages/glibc/glibc-2.3.2/syslog-backrev.patch | 212 - packages/glibc/glibc-2.3.2/version.h | 4 - packages/glibc/glibc-2.3.6/etc/ld.so.conf | 2 - ...-2.3.6-allow-gcc-4.1-powerpc32-initfini.s.patch | 28 - ...ibc-2.3.6-bind-already-defined-on-powerpc.patch | 65 - ...hreads-allow-gcc-4.1-powerpc32-initfini.s.patch | 28 - .../glibc-2.3.6-linuxthreads-pthread-raise.patch | 37 - .../glibc-2.3.6/glibc-arm-socket-weakalias.patch | 45 - .../glibc/glibc-2.3.6/glibc-cross_sunrpc.patch | 79 - packages/glibc/glibc-2.3.6/glibc-memusage.patch | 44 - .../glibc/glibc-2.3.6/glibc-rtld-libcc-eh.patch | 25 - .../glibc-2.3.6/late-install-loop-break.patch | 29 - packages/glibc/glibc-2.4/arm-longlong.patch | 58 - packages/glibc/glibc-2.4/arm-memcpy.patch | 758 - packages/glibc/glibc-2.4/arm_eabi_ipc_fix.patch | 94 - packages/glibc/glibc-2.4/dl-cache-libcmp.patch | 10 - .../glibc/glibc-2.4/dyn-ldconfig-20041128.patch | 22 - packages/glibc/glibc-2.4/dyn-ldconfig.patch | 62 - packages/glibc/glibc-2.4/etc/ld.so.conf | 2 - .../glibc/glibc-2.4/fixup-aeabi-syscalls.patch | 329 - packages/glibc/glibc-2.4/generic-bits_select.h | 35 - packages/glibc/glibc-2.4/generic-bits_time.h | 75 - packages/glibc/glibc-2.4/generic-bits_types.h | 200 - packages/glibc/glibc-2.4/generic-bits_typesizes.h | 66 - packages/glibc/glibc-2.4/glibc-2.4-compile.patch | 29 - packages/glibc/glibc-2.4/glibc-2.4-openat-3.patch | 133 - .../glibc-2.4/glibc-arm-IO-acquire-lock-fix.diff | 13 - .../glibc/glibc-2.4/glibc-arm-no-asm-page.patch | 15 - packages/glibc/glibc-2.4/glibc-check_pf.patch | 343 - .../glibc-use-isystem-include-fixed.patch | 46 - packages/glibc/glibc-2.4/ldd-unbash.patch | 11 - packages/glibc/glibc-2.4/ldsocache-varrun.patch | 18 - packages/glibc/glibc-2.4/no-z-defs.patch | 9 - packages/glibc/glibc-2.4/nptl-crosscompile.patch | 26 - packages/glibc/glibc-2.4/powerpc-sqrt-hack.diff | 25 - packages/glibc/glibc-2.4/zecke-sane-readelf.patch | 243 - packages/glibc/glibc-2.5/glibc-check_pf.patch | 343 - packages/glibc/glibc-2.7/all_glibc-i586-chk.patch | 33 - packages/glibc/glibc-cvs-2.3.5/arm-audit.patch | 58 - packages/glibc/glibc-cvs-2.3.5/arm-audit2.patch | 18 - packages/glibc/glibc-cvs-2.3.5/arm-longlong.patch | 59 - packages/glibc/glibc-cvs-2.3.5/arm-memcpy.patch | 758 - packages/glibc/glibc-cvs-2.3.5/arm-no-hwcap.patch | 11 - .../glibc/glibc-cvs-2.3.5/dl-cache-libcmp.patch | 10 - .../glibc-cvs-2.3.5/dyn-ldconfig-20041128.patch | 22 - .../glibc/glibc-cvs-2.3.5/ldsocache-varrun.patch | 18 - packages/glibc/glibc-cvs-2.3.5/no-z-defs.patch | 9 - packages/glibc/glibc-cvs-2.3.5/raise.patch | 37 - packages/glibc/glibc-cvs-2.3.5/superh-fcntl.patch | 40 - .../glibc/glibc-cvs-2.3.5/zecke-sane-readelf.patch | 154 - packages/glibc/glibc-cvs/arm-ioperm.patch | 13 - packages/glibc/glibc-cvs/arm-longlong.patch | 59 - packages/glibc/glibc-cvs/arm-machine-gmon.patch | 11 - packages/glibc/glibc-cvs/arm-memcpy.patch | 758 - packages/glibc/glibc-cvs/arm-no-hwcap.patch | 11 - packages/glibc/glibc-cvs/dl-cache-libcmp.patch | 10 - .../glibc/glibc-cvs/dyn-ldconfig-20041128.patch | 22 - packages/glibc/glibc-cvs/dyn-ldconfig.patch | 62 - packages/glibc/glibc-cvs/eabi-patch-1 | 88 - packages/glibc/glibc-cvs/eabi-patch-2 | 2446 - packages/glibc/glibc-cvs/eabi-patch-3 | 430 - packages/glibc/glibc-cvs/eabi-patch-4 | 64 - packages/glibc/glibc-cvs/etc/ld.so.conf | 2 - packages/glibc/glibc-cvs/glibc-fp-byteorder.patch | 203 - packages/glibc/glibc-cvs/ldconfig.patch | 37 - packages/glibc/glibc-cvs/ldd.patch | 38 - packages/glibc/glibc-cvs/ldsocache-varrun.patch | 18 - packages/glibc/glibc-cvs/makeconfig.patch | 15 - packages/glibc/glibc-cvs/mips-no-throw.patch | 22 - packages/glibc/glibc-cvs/noinfo.patch | 52 - packages/glibc/glibc-cvs/trampoline.patch | 560 - packages/glibc/glibc-initial.inc | 57 - packages/glibc/glibc-initial_2.2.5.bb | 7 - packages/glibc/glibc-initial_2.3.2+cvs20040726.bb | 5 - packages/glibc/glibc-initial_2.3.2.bb | 5 - packages/glibc/glibc-initial_2.3.6.bb | 4 - packages/glibc/glibc-initial_2.4.bb | 2 - packages/glibc/glibc-initial_2.5.bb | 22 - packages/glibc/glibc-initial_2.6.1.bb | 6 - packages/glibc/glibc-initial_2.7.bb | 6 - packages/glibc/glibc-initial_cvs.bb | 4 - packages/glibc/glibc-package.bbclass | 335 - packages/glibc/glibc-stage.inc | 18 - packages/glibc/glibc.inc | 22 - packages/glibc/glibc_2.2.5.bb | 215 - packages/glibc/glibc_2.3.2+cvs20040726.bb | 75 - packages/glibc/glibc_2.3.2.bb | 161 - packages/glibc/glibc_2.3.3+cvs20041128.bb | 97 - packages/glibc/glibc_2.3.3+cvs20050221.bb | 80 - packages/glibc/glibc_2.3.3+cvs20050420.bb | 81 - packages/glibc/glibc_2.3.3.bb | 106 - packages/glibc/glibc_2.3.5+cvs20050627.bb | 134 - packages/glibc/glibc_2.3.6.bb | 94 - packages/glibc/glibc_2.4.bb | 148 - packages/glibc/glibc_2.5.bb | 154 - packages/glibc/glibc_2.6.1.bb | 156 - packages/glibc/glibc_2.7.bb | 161 - packages/glibc/glibc_cvs.bb | 104 - 249 files changed, 343807 deletions(-) delete mode 100644 packages/glibc/files/5090_all_stubs-rule-fix.patch delete mode 100644 packages/glibc/files/armv4t-interworking.patch delete mode 100644 packages/glibc/files/fhs-linux-paths.patch delete mode 100644 packages/glibc/files/generate-supported.mk delete mode 100644 packages/glibc/files/glibc-2.3.5-fix-weak-alias-arm-2.patch delete mode 100644 packages/glibc/files/glibc-2.3.5-fix-weak-alias-arm.patch delete mode 100644 packages/glibc/files/glibc-2.5-local-dynamic-resolvconf.patch delete mode 100644 packages/glibc/files/glibc-2.5-soft-fp-separate-strong-alias.patch delete mode 100644 packages/glibc/files/glibc-2.6.1-RTLD_SINGLE_THREAD_P-1.patch delete mode 100644 packages/glibc/files/glibc-2.6.1-powerpc-nofpu.patch delete mode 100644 packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch delete mode 100644 packages/glibc/files/glibc-includes-fixed-isystem.patch delete mode 100644 packages/glibc/files/march-i686.patch delete mode 100644 packages/glibc/files/ppc-ld-nofpu-20070104.patch delete mode 100644 packages/glibc/files/ppc-ports-ld-nofpu-20070114.patch delete mode 100644 packages/glibc/files/ppc-sfp-machine.patch delete mode 100644 packages/glibc/files/ppc-soft-fp-20070115.patch delete mode 100644 packages/glibc/glibc-2.2.5/alpha-build-failure.patch delete mode 100644 packages/glibc/glibc-2.2.5/arm-asm-clobber.patch delete mode 100644 packages/glibc/glibc-2.2.5/arm-ctl_bus_isa.patch delete mode 100644 packages/glibc/glibc-2.2.5/arm-longlong.patch delete mode 100644 packages/glibc/glibc-2.2.5/arm-machine-gmon.patch delete mode 100644 packages/glibc/glibc-2.2.5/arm-memcpy.patch delete mode 100644 packages/glibc/glibc-2.2.5/arm-no-hwcap.patch delete mode 100644 packages/glibc/glibc-2.2.5/cris-libc-symbols.patch delete mode 100644 packages/glibc/glibc-2.2.5/cris-stack-direction.patch delete mode 100644 packages/glibc/glibc-2.2.5/dl-machine-alpha.patch delete mode 100644 packages/glibc/glibc-2.2.5/dl-machine-arm.patch delete mode 100644 packages/glibc/glibc-2.2.5/dl-machine-m68k.patch delete mode 100644 packages/glibc/glibc-2.2.5/dl-machine-mips.patch delete mode 100644 packages/glibc/glibc-2.2.5/dl-machine-sh.patch delete mode 100644 packages/glibc/glibc-2.2.5/dl-machine-sparc.patch delete mode 100644 packages/glibc/glibc-2.2.5/errlist-1.9.patch delete mode 100644 packages/glibc/glibc-2.2.5/errlist-arm.patch delete mode 100644 packages/glibc/glibc-2.2.5/etc/ld.so.conf delete mode 100644 packages/glibc/glibc-2.2.5/fhs-linux-paths.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-fixup.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-grp.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-td.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-4.x-configure.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-alpha-pwrite64.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-alpha-self-clobber.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-arm-pwrite64.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-crosstest.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-crossyes.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-cygwin.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-hhl-powerpc-fpu.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-mips-build-gmon.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-mips-clone-local-label.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.2.5-ppc405erratum77.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.3.2-allow-solaris.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-2.3.2-initfini.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-drow-sh.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-linuxthreads-2.3.2-initfini.patch delete mode 100644 packages/glibc/glibc-2.2.5/glibc-test-lowram.patch delete mode 100644 packages/glibc/glibc-2.2.5/initfini-alpha.patch delete mode 100644 packages/glibc/glibc-2.2.5/initfini-flags.patch delete mode 100644 packages/glibc/glibc-2.2.5/initfini-sh.patch delete mode 100644 packages/glibc/glibc-2.2.5/ldd.patch delete mode 100644 packages/glibc/glibc-2.2.5/linuxthreads-2.2.5-ppc405erratum77.patch delete mode 100644 packages/glibc/glibc-2.2.5/longjmp-sparc.patch delete mode 100644 packages/glibc/glibc-2.2.5/pt-initfini-alpha.patch delete mode 100644 packages/glibc/glibc-2.2.5/pt-initfini-flags.patch delete mode 100644 packages/glibc/glibc-2.2.5/pt-initfini-sh.patch delete mode 100644 packages/glibc/glibc-2.2.5/sh-setjmp-fix.patch delete mode 100644 packages/glibc/glibc-2.2.5/sprintf-prototype.patch delete mode 100644 packages/glibc/glibc-2.2.5/sscanf.patch delete mode 100644 packages/glibc/glibc-2.2.5/threadparam.patch delete mode 100644 packages/glibc/glibc-2.2.5/unwind-arm.patch delete mode 100644 packages/glibc/glibc-2.3.2/10_cvs.patch delete mode 100644 packages/glibc/glibc-2.3.2/11_shlib-lds.patch delete mode 100644 packages/glibc/glibc-2.3.2/30_glibc232-base.patch delete mode 100644 packages/glibc/glibc-2.3.2/50_glibc23-hppa-entry.patch delete mode 100644 packages/glibc/glibc-2.3.2/50_glibc232-arm-dwarf2-buildfix.patch delete mode 100644 packages/glibc/glibc-2.3.2/50_glibc232-hppa-full-nptl-2003-10-22.patch delete mode 100644 packages/glibc/glibc-2.3.2/50_glibc232-m68k-dwarf2-buildfix.patch delete mode 100644 packages/glibc/glibc-2.3.2/50_glibc232-mips-buildfix.patch delete mode 100644 packages/glibc/glibc-2.3.2/80_glibc232-futimes-buildfix.patch delete mode 100644 packages/glibc/glibc-2.3.2/80_glibc232-iconvdata-fix.patch delete mode 100644 packages/glibc/glibc-2.3.2/80_glibc232-locales-header.patch delete mode 100644 packages/glibc/glibc-2.3.2/80_glibc232-locales-nb_NO-fix.patch delete mode 100644 packages/glibc/glibc-2.3.2/80_glibc232-wcsmbs-fix.patch delete mode 100644 packages/glibc/glibc-2.3.2/81_glibc232-utimes-fix.patch delete mode 100644 packages/glibc/glibc-2.3.2/90_glibc232-statvfs.patch delete mode 100644 packages/glibc/glibc-2.3.2/90_glibc232-timezones.patch delete mode 100644 packages/glibc/glibc-2.3.2/alpha-crti.patch delete mode 100644 packages/glibc/glibc-2.3.2/alpha-pic.patch delete mode 100644 packages/glibc/glibc-2.3.2/alpha-pwrite.patch delete mode 100644 packages/glibc/glibc-2.3.2/arm-ioperm.patch delete mode 100644 packages/glibc/glibc-2.3.2/arm-longlong.patch delete mode 100644 packages/glibc/glibc-2.3.2/arm-machine-gmon.patch delete mode 100644 packages/glibc/glibc-2.3.2/arm-memcpy.patch delete mode 100644 packages/glibc/glibc-2.3.2/arm-no-hwcap.patch delete mode 100644 packages/glibc/glibc-2.3.2/arm-output-format.patch delete mode 100644 packages/glibc/glibc-2.3.2/asm-arm-unistd.h delete mode 100644 packages/glibc/glibc-2.3.2/autoconf.h delete mode 100644 packages/glibc/glibc-2.3.2/dyn-ldconfig.diff delete mode 100644 packages/glibc/glibc-2.3.2/etc/ld.so.conf delete mode 100644 packages/glibc/glibc-2.3.2/glibc-2.3.2-200304020432.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc-2.3.2-ldconfig-tls.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc-i686-timing.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc-make-check-perms.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc22-eo_EO.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc22-locales.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc22-m68k-compat.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc22-m68k-fpic.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc22-nss-upgrade.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc22-ttyname-devfs.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-01-hppa-dl-machine.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-07-hppa-atomicity.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-asserth-decls.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-cmov.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-ctype-compat.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-errno-hack.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-errno.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-function-compat.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-hppa-Rminkernel.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-hppa-compat.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-hppa-malloc8.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-libio-compat.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-mips-msq.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-powerpc-sigcontext.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-sparc-pread64.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-sse-oldkernel.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc23-version-sanity.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc232-gcc34-i386-fixup-attribute.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibc232-gcc34-no-unit-at-a-time.patch delete mode 100644 packages/glibc/glibc-2.3.2/glibcbug.patch delete mode 100644 packages/glibc/glibc-2.3.2/hppa-syscall.patch delete mode 100644 packages/glibc/glibc-2.3.2/hurd-enable-ldconfig.patch delete mode 100644 packages/glibc/glibc-2.3.2/ldconfig.patch delete mode 100644 packages/glibc/glibc-2.3.2/ldd.patch delete mode 100644 packages/glibc/glibc-2.3.2/ldso-disable-hwcap.patch delete mode 100644 packages/glibc/glibc-2.3.2/libgcc-compat-all.patch delete mode 100644 packages/glibc/glibc-2.3.2/libgcc-compat-other.patch delete mode 100644 packages/glibc/glibc-2.3.2/librt-mips.patch delete mode 100644 packages/glibc/glibc-2.3.2/lo_LA.UTF-8_not_supported.patch delete mode 100644 packages/glibc/glibc-2.3.2/locale-es_AR.patch delete mode 100644 packages/glibc/glibc-2.3.2/locales-stuff.patch delete mode 100644 packages/glibc/glibc-2.3.2/locales-supported.patch delete mode 100644 packages/glibc/glibc-2.3.2/makeconfig.patch delete mode 100644 packages/glibc/glibc-2.3.2/noinfo.patch delete mode 100644 packages/glibc/glibc-2.3.2/nptl-pthread-once.patch delete mode 100644 packages/glibc/glibc-2.3.2/nss_compat-shadow.patch delete mode 100644 packages/glibc/glibc-2.3.2/powerpc-sysconf.patch delete mode 100644 packages/glibc/glibc-2.3.2/pthread-cleanup.patch delete mode 100644 packages/glibc/glibc-2.3.2/revert-old-libio.patch delete mode 100644 packages/glibc/glibc-2.3.2/s390-tls.patch delete mode 100644 packages/glibc/glibc-2.3.2/sedscript.patch delete mode 100644 packages/glibc/glibc-2.3.2/sparc64-fixups.patch delete mode 100644 packages/glibc/glibc-2.3.2/sparcv8-target.patch delete mode 100644 packages/glibc/glibc-2.3.2/syslog-backrev.patch delete mode 100644 packages/glibc/glibc-2.3.2/version.h delete mode 100644 packages/glibc/glibc-2.3.6/etc/ld.so.conf delete mode 100644 packages/glibc/glibc-2.3.6/glibc-2.3.6-allow-gcc-4.1-powerpc32-initfini.s.patch delete mode 100644 packages/glibc/glibc-2.3.6/glibc-2.3.6-bind-already-defined-on-powerpc.patch delete mode 100644 packages/glibc/glibc-2.3.6/glibc-2.3.6-linuxthreads-allow-gcc-4.1-powerpc32-initfini.s.patch delete mode 100644 packages/glibc/glibc-2.3.6/glibc-2.3.6-linuxthreads-pthread-raise.patch delete mode 100644 packages/glibc/glibc-2.3.6/glibc-arm-socket-weakalias.patch delete mode 100644 packages/glibc/glibc-2.3.6/glibc-cross_sunrpc.patch delete mode 100644 packages/glibc/glibc-2.3.6/glibc-memusage.patch delete mode 100644 packages/glibc/glibc-2.3.6/glibc-rtld-libcc-eh.patch delete mode 100644 packages/glibc/glibc-2.3.6/late-install-loop-break.patch delete mode 100644 packages/glibc/glibc-2.4/arm-longlong.patch delete mode 100644 packages/glibc/glibc-2.4/arm-memcpy.patch delete mode 100644 packages/glibc/glibc-2.4/arm_eabi_ipc_fix.patch delete mode 100644 packages/glibc/glibc-2.4/dl-cache-libcmp.patch delete mode 100644 packages/glibc/glibc-2.4/dyn-ldconfig-20041128.patch delete mode 100644 packages/glibc/glibc-2.4/dyn-ldconfig.patch delete mode 100644 packages/glibc/glibc-2.4/etc/ld.so.conf delete mode 100644 packages/glibc/glibc-2.4/fixup-aeabi-syscalls.patch delete mode 100644 packages/glibc/glibc-2.4/generic-bits_select.h delete mode 100644 packages/glibc/glibc-2.4/generic-bits_time.h delete mode 100644 packages/glibc/glibc-2.4/generic-bits_types.h delete mode 100644 packages/glibc/glibc-2.4/generic-bits_typesizes.h delete mode 100644 packages/glibc/glibc-2.4/glibc-2.4-compile.patch delete mode 100644 packages/glibc/glibc-2.4/glibc-2.4-openat-3.patch delete mode 100644 packages/glibc/glibc-2.4/glibc-arm-IO-acquire-lock-fix.diff delete mode 100644 packages/glibc/glibc-2.4/glibc-arm-no-asm-page.patch delete mode 100644 packages/glibc/glibc-2.4/glibc-check_pf.patch delete mode 100644 packages/glibc/glibc-2.4/glibc-use-isystem-include-fixed.patch delete mode 100644 packages/glibc/glibc-2.4/ldd-unbash.patch delete mode 100644 packages/glibc/glibc-2.4/ldsocache-varrun.patch delete mode 100644 packages/glibc/glibc-2.4/no-z-defs.patch delete mode 100644 packages/glibc/glibc-2.4/nptl-crosscompile.patch delete mode 100644 packages/glibc/glibc-2.4/powerpc-sqrt-hack.diff delete mode 100644 packages/glibc/glibc-2.4/zecke-sane-readelf.patch delete mode 100644 packages/glibc/glibc-2.5/glibc-check_pf.patch delete mode 100644 packages/glibc/glibc-2.7/all_glibc-i586-chk.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/arm-audit.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/arm-audit2.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/arm-longlong.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/arm-memcpy.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/arm-no-hwcap.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/dl-cache-libcmp.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/dyn-ldconfig-20041128.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/ldsocache-varrun.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/no-z-defs.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/raise.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/superh-fcntl.patch delete mode 100644 packages/glibc/glibc-cvs-2.3.5/zecke-sane-readelf.patch delete mode 100644 packages/glibc/glibc-cvs/arm-ioperm.patch delete mode 100644 packages/glibc/glibc-cvs/arm-longlong.patch delete mode 100644 packages/glibc/glibc-cvs/arm-machine-gmon.patch delete mode 100644 packages/glibc/glibc-cvs/arm-memcpy.patch delete mode 100644 packages/glibc/glibc-cvs/arm-no-hwcap.patch delete mode 100644 packages/glibc/glibc-cvs/dl-cache-libcmp.patch delete mode 100644 packages/glibc/glibc-cvs/dyn-ldconfig-20041128.patch delete mode 100644 packages/glibc/glibc-cvs/dyn-ldconfig.patch delete mode 100644 packages/glibc/glibc-cvs/eabi-patch-1 delete mode 100644 packages/glibc/glibc-cvs/eabi-patch-2 delete mode 100644 packages/glibc/glibc-cvs/eabi-patch-3 delete mode 100644 packages/glibc/glibc-cvs/eabi-patch-4 delete mode 100644 packages/glibc/glibc-cvs/etc/ld.so.conf delete mode 100644 packages/glibc/glibc-cvs/glibc-fp-byteorder.patch delete mode 100644 packages/glibc/glibc-cvs/ldconfig.patch delete mode 100644 packages/glibc/glibc-cvs/ldd.patch delete mode 100644 packages/glibc/glibc-cvs/ldsocache-varrun.patch delete mode 100644 packages/glibc/glibc-cvs/makeconfig.patch delete mode 100644 packages/glibc/glibc-cvs/mips-no-throw.patch delete mode 100644 packages/glibc/glibc-cvs/noinfo.patch delete mode 100644 packages/glibc/glibc-cvs/trampoline.patch delete mode 100644 packages/glibc/glibc-initial.inc delete mode 100644 packages/glibc/glibc-initial_2.2.5.bb delete mode 100644 packages/glibc/glibc-initial_2.3.2+cvs20040726.bb delete mode 100644 packages/glibc/glibc-initial_2.3.2.bb delete mode 100644 packages/glibc/glibc-initial_2.3.6.bb delete mode 100644 packages/glibc/glibc-initial_2.4.bb delete mode 100644 packages/glibc/glibc-initial_2.5.bb delete mode 100644 packages/glibc/glibc-initial_2.6.1.bb delete mode 100644 packages/glibc/glibc-initial_2.7.bb delete mode 100644 packages/glibc/glibc-initial_cvs.bb delete mode 100644 packages/glibc/glibc-package.bbclass delete mode 100644 packages/glibc/glibc-stage.inc delete mode 100644 packages/glibc/glibc.inc delete mode 100644 packages/glibc/glibc_2.2.5.bb delete mode 100644 packages/glibc/glibc_2.3.2+cvs20040726.bb delete mode 100644 packages/glibc/glibc_2.3.2.bb delete mode 100644 packages/glibc/glibc_2.3.3+cvs20041128.bb delete mode 100644 packages/glibc/glibc_2.3.3+cvs20050221.bb delete mode 100644 packages/glibc/glibc_2.3.3+cvs20050420.bb delete mode 100644 packages/glibc/glibc_2.3.3.bb delete mode 100644 packages/glibc/glibc_2.3.5+cvs20050627.bb delete mode 100644 packages/glibc/glibc_2.3.6.bb delete mode 100644 packages/glibc/glibc_2.4.bb delete mode 100644 packages/glibc/glibc_2.5.bb delete mode 100644 packages/glibc/glibc_2.6.1.bb delete mode 100644 packages/glibc/glibc_2.7.bb delete mode 100644 packages/glibc/glibc_cvs.bb (limited to 'packages/glibc') diff --git a/packages/glibc/files/5090_all_stubs-rule-fix.patch b/packages/glibc/files/5090_all_stubs-rule-fix.patch deleted file mode 100644 index c445a5296e..0000000000 --- a/packages/glibc/files/5090_all_stubs-rule-fix.patch +++ /dev/null @@ -1,39 +0,0 @@ -Index: Makerules -=================================================================== -RCS file: /cvs/glibc/libc/Makerules,v -retrieving revision 1.430 -diff -u -r1.430 Makerules ---- libc/Makerules 5 Mar 2005 19:24:32 -0000 1.430 -+++ libc/Makerules 22 Apr 2005 18:31:27 -0000 -@@ -1390,15 +1390,26 @@ - $(addprefix $(objpfx),$(extra-objs)) - $(objpfx)stubs: $(objs-for-stubs) - ifneq (,$(strip $(objs-for-stubs))) -- $(OBJDUMP) -h $^ | \ -- $(AWK) '/\.gnu\.glibc-stub\./ { \ -- sub(/\.gnu\.glibc-stub\./, "", $$2); \ -- stubs[$$2] = 1; } \ -- END { for (s in stubs) print "#define __stub_" s }' > $@T -+ $(stub-obj-list) -+ cat $@L | xargs \ -+ $(OBJDUMP) -h | \ -+ $(AWK) '/\.gnu\.glibc-stub\./ { \ -+ sub(/\.gnu\.glibc-stub\./, "", $$2); \ -+ stubs[$$2] = 1; } \ -+ END { for (s in stubs) print "#define __stub_" s }' \ -+ > $@T -+ -rm -f $@L - mv -f $@T $@ - else - > $@ - endif -+ -+define stub-obj-list -+-@rm -f $@L -+-@echo "Generating stub obj list..." -+$(foreach file,$^, -+@echo >> $@L '$(file)') -+endef - - # This information is not used for making distributions any more. - # But it's used by MakeTAGS for making TAGS files and the .pot files. diff --git a/packages/glibc/files/armv4t-interworking.patch b/packages/glibc/files/armv4t-interworking.patch deleted file mode 100644 index ce91ad6530..0000000000 --- a/packages/glibc/files/armv4t-interworking.patch +++ /dev/null @@ -1,47 +0,0 @@ ---- libc/ports/sysdeps/arm/memcpy.S~ 2006-10-31 17:07:54.000000000 +0000 -+++ libc/ports/sysdeps/arm/memcpy.S 2008-10-24 11:09:34.000000000 +0100 -@@ -130,7 +130,12 @@ - strcsb r4, [r0], #1 - strcsb ip, [r0] - -+#if defined (__ARM_ARCH_4T__) && defined(__THUMB_INTERWORK__) -+ ldmfd sp!, {r0, r4, lr} -+ bx lr -+#else - ldmfd sp!, {r0, r4, pc} -+#endif - - 9: rsb ip, ip, #4 - cmp ip, #2 ---- libc/ports/sysdeps/arm/memmove.S~ 2006-10-31 17:07:54.000000000 +0000 -+++ libc/ports/sysdeps/arm/memmove.S 2008-10-24 11:09:44.000000000 +0100 -@@ -140,7 +140,12 @@ - strneb r3, [r0, #-1]! - strcsb r4, [r0, #-1]! - strcsb ip, [r0, #-1] -+#if defined (__ARM_ARCH_4T__) && defined (__THUMB_INTERWORK__) -+ ldmfd sp!, {r0, r4, lr} -+ bx lr -+#else - ldmfd sp!, {r0, r4, pc} -+#endif - - 9: cmp ip, #2 - ldrgtb r3, [r1, #-1]! ---- libc/ports/sysdeps/unix/sysv/linux/arm/clone.S~ 2005-11-16 19:03:42.000000000 +0000 -+++ libc/ports/sysdeps/unix/sysv/linux/arm/clone.S 2008-10-24 11:11:05.000000000 +0100 -@@ -96,8 +96,14 @@ - #endif - @ pick the function arg and call address off the stack and execute - ldr r0, [sp, #4] -+#if defined(__ARM_ARCH_V4T__) && defined(__THUMB_INTERWORK__) -+ ldr ip, [sp], #8 -+ mov lr, pc -+ bx ip -+#else - mov lr, pc - ldr pc, [sp], #8 -+#endif - - @ and we are done, passing the return value through r0 - b PLTJMP(_exit) diff --git a/packages/glibc/files/fhs-linux-paths.patch b/packages/glibc/files/fhs-linux-paths.patch deleted file mode 100644 index 1f32f6d7f2..0000000000 --- a/packages/glibc/files/fhs-linux-paths.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- glibc-2.1.1/sysdeps/unix/sysv/linux/paths.h~ Thu May 27 13:16:33 1999 -+++ glibc-2.1.1/sysdeps/unix/sysv/linux/paths.h Thu May 27 13:17:55 1999 -@@ -71,7 +71,7 @@ - /* Provide trailing slash, since mostly used for building pathnames. */ - #define _PATH_DEV "/dev/" - #define _PATH_TMP "/tmp/" --#define _PATH_VARDB "/var/db/" -+#define _PATH_VARDB "/var/lib/misc/" - #define _PATH_VARRUN "/var/run/" - #define _PATH_VARTMP "/var/tmp/" - diff --git a/packages/glibc/files/generate-supported.mk b/packages/glibc/files/generate-supported.mk deleted file mode 100644 index d2a28c2dc6..0000000000 --- a/packages/glibc/files/generate-supported.mk +++ /dev/null @@ -1,11 +0,0 @@ -#!/usr/bin/make - -include $(IN) - -all: - rm -f $(OUT) - touch $(OUT) - for locale in $(SUPPORTED-LOCALES); do \ - [ $$locale = true ] && continue; \ - echo $$locale | sed 's,/, ,' >> $(OUT); \ - done diff --git a/packages/glibc/files/glibc-2.3.5-fix-weak-alias-arm-2.patch b/packages/glibc/files/glibc-2.3.5-fix-weak-alias-arm-2.patch deleted file mode 100644 index bf2f31e479..0000000000 --- a/packages/glibc/files/glibc-2.3.5-fix-weak-alias-arm-2.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- glibc-2.3.3/ports/sysdeps/unix/sysv/linux/arm/socket.S.orig 2006-07-12 14:38:22.208228359 -0700 -+++ glibc-2.3.3/ports/sysdeps/unix/sysv/linux/arm/socket.S 2006-07-12 14:39:56.911675066 -0700 -@@ -123,5 +123,7 @@ - #endif - - PSEUDO_END (__socket) -- -+ -+#ifndef NO_WEAK_ALIAS - weak_alias (__socket, socket) -+#endif diff --git a/packages/glibc/files/glibc-2.3.5-fix-weak-alias-arm.patch b/packages/glibc/files/glibc-2.3.5-fix-weak-alias-arm.patch deleted file mode 100644 index 0097ff94d3..0000000000 --- a/packages/glibc/files/glibc-2.3.5-fix-weak-alias-arm.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- glibc-2.3.3/ports/sysdeps/unix/sysv/linux/arm/socket.S.orig 2006-07-12 13:57:05.990485563 -0700 -+++ glibc-2.3.3/ports/sysdeps/unix/sysv/linux/arm/socket.S 2006-07-12 13:58:41.197865230 -0700 -@@ -32,7 +32,11 @@ - The .S files for the other calls just #define socket and #include this. */ - - #ifndef __socket --#define __socket P(__,socket) -+# ifndef NO_WEAK_ALIAS -+# define __socket P(__,socket) -+# else -+# define __socket socket -+# endif - #endif - - #define PUSHARGS_1 str a1, [sp, $-4]! diff --git a/packages/glibc/files/glibc-2.5-local-dynamic-resolvconf.patch b/packages/glibc/files/glibc-2.5-local-dynamic-resolvconf.patch deleted file mode 100644 index e137287dd1..0000000000 --- a/packages/glibc/files/glibc-2.5-local-dynamic-resolvconf.patch +++ /dev/null @@ -1,41 +0,0 @@ -# All lines beginning with `# DP:' are a description of the patch. -# DP: Description: allow dynamic long-running processes to -# DP: re-read a dynamically updated resolv.conf on the fly -# DP: Dpatch author: Adam Conrad -# DP: Patch author: Thorsten Kukuk -# DP: Upstream status: Ubuntu-Specific -# DP: Date: 2006-01-13 08:14:21 UTC - -Index: resolv/res_libc.c -=================================================================== ---- resolv/res_libc.c.orig -+++ resolv/res_libc.c -@@ -22,7 +22,7 @@ - #include - #include - #include -- -+#include - - /* The following bit is copied from res_data.c (where it is #ifdef'ed - out) since res_init() should go into libc.so but the rest of that -@@ -94,8 +94,17 @@ - int - __res_maybe_init (res_state resp, int preinit) - { -- if (resp->options & RES_INIT) { -- if (__res_initstamp != resp->_u._ext.initstamp) { -+ static time_t last_mtime; -+ struct stat statbuf; -+ int ret; -+ -+ -+ if (resp->options & RES_INIT) { -+ ret = stat (_PATH_RESCONF, &statbuf); -+ if (__res_initstamp != resp->_u._ext.initstamp -+ || (ret == 0) && (last_mtime != statbuf.st_mtime)) -+ { -+ last_mtime = statbuf.st_mtime; - if (resp->nscount > 0) { - __res_iclose (resp, true); - return __res_vinit (resp, 1); diff --git a/packages/glibc/files/glibc-2.5-soft-fp-separate-strong-alias.patch b/packages/glibc/files/glibc-2.5-soft-fp-separate-strong-alias.patch deleted file mode 100644 index e41c1b7d96..0000000000 --- a/packages/glibc/files/glibc-2.5-soft-fp-separate-strong-alias.patch +++ /dev/null @@ -1,205 +0,0 @@ -Index: glibc-2.5-tls-ppc-04/soft-fp/eqdf2.c -=================================================================== ---- glibc-2.5-tls-ppc-04.orig/soft-fp/eqdf2.c -+++ glibc-2.5-tls-ppc-04/soft-fp/eqdf2.c -@@ -48,4 +48,3 @@ int __eqdf2(DFtype a, DFtype b) - return r; - } - --strong_alias(__eqdf2, __nedf2); -Index: glibc-2.5-tls-ppc-04/soft-fp/gedf2.c -=================================================================== ---- glibc-2.5-tls-ppc-04.orig/soft-fp/gedf2.c -+++ glibc-2.5-tls-ppc-04/soft-fp/gedf2.c -@@ -47,5 +47,3 @@ int __gedf2(DFtype a, DFtype b) - - return r; - } -- --strong_alias(__gedf2, __gtdf2); -Index: glibc-2.5-tls-ppc-04/soft-fp/gtdf2.c -=================================================================== ---- /dev/null -+++ glibc-2.5-tls-ppc-04/soft-fp/gtdf2.c -@@ -0,0 +1,49 @@ -+/* Software floating-point emulation. -+ Return 0 iff a == b, 1 iff a > b, -2 iff a ? b, -1 iff a < b -+ Copyright (C) 1997,1999,2006 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Richard Henderson (rth@cygnus.com) and -+ Jakub Jelinek (jj@ultra.linux.cz). -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ In addition to the permissions in the GNU Lesser General Public -+ License, the Free Software Foundation gives you unlimited -+ permission to link the compiled version of this file into -+ combinations with other programs, and to distribute those -+ combinations without any restriction coming from the use of this -+ file. (The Lesser General Public License restrictions do apply in -+ other respects; for example, they cover modification of the file, -+ and distribution when not linked into a combine executable.) -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, -+ MA 02110-1301, USA. */ -+ -+#include "soft-fp.h" -+#include "double.h" -+ -+int __gtdf2(DFtype a, DFtype b) -+{ -+ FP_DECL_EX; -+ FP_DECL_D(A); FP_DECL_D(B); -+ int r; -+ -+ FP_UNPACK_RAW_D(A, a); -+ FP_UNPACK_RAW_D(B, b); -+ FP_CMP_D(r, A, B, -2); -+ if (r == -2 && (FP_ISSIGNAN_D(A) || FP_ISSIGNAN_D(B))) -+ FP_SET_EXCEPTION(FP_EX_INVALID); -+ FP_HANDLE_EXCEPTIONS; -+ -+ return r; -+} -Index: glibc-2.5-tls-ppc-04/soft-fp/ledf2.c -=================================================================== ---- glibc-2.5-tls-ppc-04.orig/soft-fp/ledf2.c -+++ glibc-2.5-tls-ppc-04/soft-fp/ledf2.c -@@ -48,4 +48,3 @@ int __ledf2(DFtype a, DFtype b) - return r; - } - --strong_alias(__ledf2, __ltdf2); -Index: glibc-2.5-tls-ppc-04/soft-fp/ltdf2.c -=================================================================== ---- /dev/null -+++ glibc-2.5-tls-ppc-04/soft-fp/ltdf2.c -@@ -0,0 +1,49 @@ -+/* Software floating-point emulation. -+ Return 0 iff a == b, 1 iff a > b, 2 iff a ? b, -1 iff a < b -+ Copyright (C) 1997,1999,2006 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Richard Henderson (rth@cygnus.com) and -+ Jakub Jelinek (jj@ultra.linux.cz). -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ In addition to the permissions in the GNU Lesser General Public -+ License, the Free Software Foundation gives you unlimited -+ permission to link the compiled version of this file into -+ combinations with other programs, and to distribute those -+ combinations without any restriction coming from the use of this -+ file. (The Lesser General Public License restrictions do apply in -+ other respects; for example, they cover modification of the file, -+ and distribution when not linked into a combine executable.) -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, -+ MA 02110-1301, USA. */ -+ -+#include "soft-fp.h" -+#include "double.h" -+ -+int __ltdf2(DFtype a, DFtype b) -+{ -+ FP_DECL_EX; -+ FP_DECL_D(A); FP_DECL_D(B); -+ int r; -+ -+ FP_UNPACK_RAW_D(A, a); -+ FP_UNPACK_RAW_D(B, b); -+ FP_CMP_D(r, A, B, 2); -+ if (r == 2 && (FP_ISSIGNAN_D(A) || FP_ISSIGNAN_D(B))) -+ FP_SET_EXCEPTION(FP_EX_INVALID); -+ FP_HANDLE_EXCEPTIONS; -+ -+ return r; -+} -Index: glibc-2.5-tls-ppc-04/soft-fp/nedf2.c -=================================================================== ---- /dev/null -+++ glibc-2.5-tls-ppc-04/soft-fp/nedf2.c -@@ -0,0 +1,49 @@ -+/* Software floating-point emulation. -+ Return 0 iff a == b, 1 otherwise -+ Copyright (C) 1997,1999,2006 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Richard Henderson (rth@cygnus.com) and -+ Jakub Jelinek (jj@ultra.linux.cz). -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ In addition to the permissions in the GNU Lesser General Public -+ License, the Free Software Foundation gives you unlimited -+ permission to link the compiled version of this file into -+ combinations with other programs, and to distribute those -+ combinations without any restriction coming from the use of this -+ file. (The Lesser General Public License restrictions do apply in -+ other respects; for example, they cover modification of the file, -+ and distribution when not linked into a combine executable.) -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, -+ MA 02110-1301, USA. */ -+ -+#include "soft-fp.h" -+#include "double.h" -+ -+int __nedf2(DFtype a, DFtype b) -+{ -+ FP_DECL_EX; -+ FP_DECL_D(A); FP_DECL_D(B); -+ int r; -+ -+ FP_UNPACK_RAW_D(A, a); -+ FP_UNPACK_RAW_D(B, b); -+ FP_CMP_EQ_D(r, A, B); -+ if (r && (FP_ISSIGNAN_D(A) || FP_ISSIGNAN_D(B))) -+ FP_SET_EXCEPTION(FP_EX_INVALID); -+ FP_HANDLE_EXCEPTIONS; -+ -+ return r; -+} -Index: glibc-2.5-tls-ppc-04/soft-fp/Makefile -=================================================================== ---- glibc-2.5-tls-ppc-04.orig/soft-fp/Makefile -+++ glibc-2.5-tls-ppc-04/soft-fp/Makefile -@@ -27,8 +27,8 @@ gcc-single-routines := negsf2 addsf3 sub - fixunssfdi floatdisf sqrtsf2 floatunsisf floatundisf \ - fmasf4 - --gcc-double-routines := negdf2 adddf3 subdf3 muldf3 divdf3 eqdf2 \ -- ledf2 gedf2 unorddf2 fixdfsi fixunsdfsi floatsidf fixdfdi \ -+gcc-double-routines := negdf2 adddf3 subdf3 muldf3 divdf3 eqdf2 nedf2 \ -+ ledf2 ltdf2 gedf2 gtdf2 unorddf2 fixdfsi fixunsdfsi floatsidf fixdfdi \ - fixunsdfdi floatdidf extendsfdf2 truncdfsf2 sqrtdf2 floatunsidf \ - floatundidf fmadf4 - diff --git a/packages/glibc/files/glibc-2.6.1-RTLD_SINGLE_THREAD_P-1.patch b/packages/glibc/files/glibc-2.6.1-RTLD_SINGLE_THREAD_P-1.patch deleted file mode 100644 index 33d5282b90..0000000000 --- a/packages/glibc/files/glibc-2.6.1-RTLD_SINGLE_THREAD_P-1.patch +++ /dev/null @@ -1,20 +0,0 @@ -Submitted By: Joe Ciccone -Date: 07-02-2007 -Initial Package Version: 2.6 -Origin: http://sourceware.org/ml/libc-ports/2007-05/msg00051.html -Upstream Status: Unknown -Description: Defines RTLD_SINGLE_THREAD_P for arm. - -diff -Naur glibc-2.6.orig/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h glibc-2.6/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h ---- glibc-2.6.orig/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h 2007-07-02 17:39:22.000000000 -0400 -+++ glibc-2.6/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h 2007-07-02 17:39:36.000000000 -0400 -@@ -126,3 +126,9 @@ - # define NO_CANCELLATION 1 - - #endif -+ -+#ifndef __ASSEMBLER__ -+# define RTLD_SINGLE_THREAD_P \ -+ __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ -+ header.multiple_threads) == 0, 1) -+#endif diff --git a/packages/glibc/files/glibc-2.6.1-powerpc-nofpu.patch b/packages/glibc/files/glibc-2.6.1-powerpc-nofpu.patch deleted file mode 100644 index 893c754628..0000000000 --- a/packages/glibc/files/glibc-2.6.1-powerpc-nofpu.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- dummy-libc/ports/sysdeps/powerpc/nofpu/Makefile 2006-11-22 09:13:11.000000000 -0600 -+++ libc25/ports/sysdeps/powerpc/nofpu/Makefile 2007-06-07 09:53:05.708240976 -0500 -@@ -6,7 +6,7 @@ - endif - - ifeq ($(subdir),math) --libm-support += fenv_const fe_nomask -+libm-support += fenv_const - CPPFLAGS += -I../soft-fp/ - # The follow CFLAGS are a work around for GCC Bugzilla Bug 29253 - # "expand_abs wrong default code for floating point" diff --git a/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch b/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch deleted file mode 100644 index 6979229279..0000000000 --- a/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch +++ /dev/null @@ -1,30 +0,0 @@ -Source: http://sourceware.org/ml/libc-alpha/2008-01/msg00017.html - -I am checking this x86 assembler patch: - -http://sourceware.org/ml/binutils/2008-01/msg00148.html - -to check operand size. fnstsw stores 16bit into %ax. The upper -16bit of %eax is unchanged. The new assembler will disallow -"fnstsw %eax". Here is a patch for glibc. - - -H.J. - ---- - sysdeps/i386/fpu/ftestexcept.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: glibc-2.6.1/sysdeps/i386/fpu/ftestexcept.c -=================================================================== ---- glibc-2.6.1.orig/sysdeps/i386/fpu/ftestexcept.c 2008-07-19 11:00:45.000000000 -0700 -+++ glibc-2.6.1/sysdeps/i386/fpu/ftestexcept.c 2008-07-19 11:01:25.000000000 -0700 -@@ -26,7 +26,7 @@ - int - fetestexcept (int excepts) - { -- int temp; -+ short temp; - int xtemp = 0; - - /* Get current exceptions. */ diff --git a/packages/glibc/files/glibc-includes-fixed-isystem.patch b/packages/glibc/files/glibc-includes-fixed-isystem.patch deleted file mode 100644 index 06668f41ed..0000000000 --- a/packages/glibc/files/glibc-includes-fixed-isystem.patch +++ /dev/null @@ -1,32 +0,0 @@ -http://sourceware.org/ml/libc-alpha/2007-03/msg00017.html: - -GCC trunk now has multiple internal headers directories, one -containing the self-contained GCC-provided headers and one containing -the (not self-contained but including libc's or -a fixed version thereof) and the fixed headers; more such directories -may be added in future. - -When glibc uses -nostdinc, it needs to use -isystem options for all -these internal directories. This patch teaches it about the -include-fixed directory (and is harmless with old GCC versions without -that directory). - -2007-03-18 Joseph Myers - - * configure.in: Also pass -isystem option for GCC's include-fixed - directory. - * configure: Regenerate. - -Index: configure.in -=================================================================== ---- /tmp/configure.in 2008-04-05 19:20:52.176759390 +0200 -+++ glibc-2.6.1/configure.in 2008-04-05 19:21:26.663424600 +0200 -@@ -912,7 +912,7 @@ - # thing on a system that doesn't need fixincludes. (Not presently a problem.) - if test -n "$sysheaders"; then - ccheaders=`$CC -print-file-name=include` -- SYSINCLUDES="-nostdinc -isystem $ccheaders \ -+ SYSINCLUDES="-nostdinc -isystem $ccheaders -isystem $ccheaders-fixed \ - -isystem `echo $sysheaders | sed 's/:/ -isystem /g'`" - if test -n "$CXX"; then - cxxversion=`$CXX -dumpversion 2>&AS_MESSAGE_LOG_FD` && diff --git a/packages/glibc/files/march-i686.patch b/packages/glibc/files/march-i686.patch deleted file mode 100644 index 04616032ad..0000000000 --- a/packages/glibc/files/march-i686.patch +++ /dev/null @@ -1,38 +0,0 @@ -2007-02-15 Khem Raj - - * sysdeps/unix/sysv/linux/i386/sysdep.h: Re-define __i686. - * nptl/sysdeps/pthread/pt-initfini.c: Ditto. - - - -Index: sysdeps/unix/sysv/linux/i386/sysdep.h -=================================================================== ---- sysdeps/unix/sysv/linux/i386/sysdep.h (revision 1469) -+++ sysdeps/unix/sysv/linux/i386/sysdep.h (working copy) -@@ -29,6 +29,10 @@ - #include - #include - -+#if defined __i686 && defined __ASSEMBLER__ -+#undef __i686 -+#define __i686 __i686 -+#endif - - /* For Linux we can use the system call table in the header file - /usr/include/asm/unistd.h -Index: nptl/sysdeps/pthread/pt-initfini.c -=================================================================== ---- nptl/sysdeps/pthread/pt-initfini.c (revision 1469) -+++ nptl/sysdeps/pthread/pt-initfini.c (working copy) -@@ -45,6 +45,11 @@ - /* Embed an #include to pull in the alignment and .end directives. */ - asm ("\n#include \"defs.h\""); - -+asm ("\n#if defined __i686 && defined __ASSEMBLER__"); -+asm ("\n#undef __i686"); -+asm ("\n#define __i686 __i686"); -+asm ("\n#endif"); -+ - /* The initial common code ends here. */ - asm ("\n/*@HEADER_ENDS*/"); - diff --git a/packages/glibc/files/ppc-ld-nofpu-20070104.patch b/packages/glibc/files/ppc-ld-nofpu-20070104.patch deleted file mode 100644 index d5b1d31774..0000000000 --- a/packages/glibc/files/ppc-ld-nofpu-20070104.patch +++ /dev/null @@ -1,190 +0,0 @@ -2007-01-12 Steven Munroe - Joe Kerian - - [BZ #2749] - * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: - Include . - Remove weak_alias. Use long_double_symbol macro. - (__copysignl): Use signbit() for comparison. - * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c: Correct parms for - SET_LDOUBLE_WORDS64. - - [BZ #2423, #2749] - * sysdeps/ieee754/ldbl-128ibm/s_ceill.c: Don't include . - (__ceill): Remove calls to fegetround(), fesetround(). - * sysdeps/ieee754/ldbl-128ibm/s_floorl.c: Likewise. - * sysdeps/ieee754/ldbl-128ibm/s_roundl.c: Likewise. - * sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Likewise. - -diff -urN libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_ceill.c libc24/sysdeps/ieee754/ldbl-128ibm/s_ceill.c ---- libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_ceill.c 2006-03-16 05:46:37.000000000 -0600 -+++ libc24/sysdeps/ieee754/ldbl-128ibm/s_ceill.c 2007-01-11 10:30:12.856890432 -0600 -@@ -19,7 +19,6 @@ - 02111-1307 USA. */ - - #include --#include - #include - #include - #include -@@ -44,11 +43,9 @@ - __builtin_inf ()), 1)) - { - double orig_xh; -- int save_round = fegetround (); - - /* Long double arithmetic, including the canonicalisation below, - only works in round-to-nearest mode. */ -- fesetround (FE_TONEAREST); - - /* Convert the high double to integer. */ - orig_xh = xh; -@@ -81,8 +78,6 @@ - /* Ensure we return -0 rather than +0 when appropriate. */ - if (orig_xh < 0.0) - xh = -__builtin_fabs (xh); -- -- fesetround (save_round); - } - - return ldbl_pack (xh, xl); -diff -urN libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_copysignl.c libc24/sysdeps/ieee754/ldbl-128ibm/s_copysignl.c ---- libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_copysignl.c 2006-01-27 18:07:25.000000000 -0600 -+++ libc24/sysdeps/ieee754/ldbl-128ibm/s_copysignl.c 2007-01-11 10:30:12.857890280 -0600 -@@ -25,6 +25,7 @@ - - #include "math.h" - #include "math_private.h" -+#include - - #ifdef __STDC__ - long double __copysignl(long double x, long double y) -@@ -33,13 +34,13 @@ - long double x,y; - #endif - { -- if (y < 0.0) -- { -- if (x >= 0.0) -- x = -x; -- } -- else if (x < 0.0) -+ if( signbit(x) != signbit(y) ) - x = -x; - return x; - } --weak_alias (__copysignl, copysignl) -+ -+#ifdef IS_IN_libm -+long_double_symbol (libm, __copysignl, copysignl); -+#else -+long_double_symbol (libc, __copysignl, copysignl); -+#endif -diff -urN libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c libc24/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c ---- libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c 2006-01-27 18:07:25.000000000 -0600 -+++ libc24/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c 2007-01-11 10:30:12.857890280 -0600 -@@ -37,7 +37,7 @@ - GET_LDOUBLE_WORDS64(hx,lx,x); - lx = lx ^ ( hx & 0x8000000000000000LL ); - hx = hx & 0x7fffffffffffffffLL; -- SET_LDOUBLE_WORDS64(hx,lx,x); -+ SET_LDOUBLE_WORDS64(x,hx,lx); - return x; - } - long_double_symbol (libm, __fabsl, fabsl); -diff -urN libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_floorl.c libc24/sysdeps/ieee754/ldbl-128ibm/s_floorl.c ---- libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_floorl.c 2006-03-16 05:46:37.000000000 -0600 -+++ libc24/sysdeps/ieee754/ldbl-128ibm/s_floorl.c 2007-01-11 10:30:12.858890128 -0600 -@@ -19,7 +19,6 @@ - 02111-1307 USA. */ - - #include --#include - #include - #include - #include -@@ -43,11 +42,8 @@ - && __builtin_isless (__builtin_fabs (xh), - __builtin_inf ()), 1)) - { -- int save_round = fegetround (); -- - /* Long double arithmetic, including the canonicalisation below, - only works in round-to-nearest mode. */ -- fesetround (FE_TONEAREST); - - /* Convert the high double to integer. */ - hi = ldbl_nearbyint (xh); -@@ -75,8 +71,6 @@ - xh = hi; - xl = lo; - ldbl_canonicalize (&xh, &xl); -- -- fesetround (save_round); - } - - return ldbl_pack (xh, xl); -diff -urN libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_roundl.c libc24/sysdeps/ieee754/ldbl-128ibm/s_roundl.c ---- libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_roundl.c 2006-03-16 05:46:37.000000000 -0600 -+++ libc24/sysdeps/ieee754/ldbl-128ibm/s_roundl.c 2007-01-11 10:30:12.859889976 -0600 -@@ -22,7 +22,6 @@ - when it's coded in C. */ - - #include --#include - #include - #include - #include -@@ -47,11 +46,9 @@ - __builtin_inf ()), 1)) - { - double orig_xh; -- int save_round = fegetround (); - - /* Long double arithmetic, including the canonicalisation below, - only works in round-to-nearest mode. */ -- fesetround (FE_TONEAREST); - - /* Convert the high double to integer. */ - orig_xh = xh; -@@ -88,8 +85,6 @@ - xh = hi; - xl = lo; - ldbl_canonicalize (&xh, &xl); -- -- fesetround (save_round); - } - - return ldbl_pack (xh, xl); -diff -urN libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_truncl.c libc24/sysdeps/ieee754/ldbl-128ibm/s_truncl.c ---- libc25-cvstip-20070104/sysdeps/ieee754/ldbl-128ibm/s_truncl.c 2006-03-16 05:46:37.000000000 -0600 -+++ libc24/sysdeps/ieee754/ldbl-128ibm/s_truncl.c 2007-01-11 10:30:12.860889824 -0600 -@@ -22,7 +22,6 @@ - when it's coded in C. */ - - #include --#include - #include - #include - #include -@@ -47,11 +46,9 @@ - __builtin_inf ()), 1)) - { - double orig_xh; -- int save_round = fegetround (); - - /* Long double arithmetic, including the canonicalisation below, - only works in round-to-nearest mode. */ -- fesetround (FE_TONEAREST); - - /* Convert the high double to integer. */ - orig_xh = xh; -@@ -92,8 +89,6 @@ - /* Ensure we return -0 rather than +0 when appropriate. */ - if (orig_xh < 0.0) - xh = -__builtin_fabs (xh); -- -- fesetround (save_round); - } - - return ldbl_pack (xh, xl); diff --git a/packages/glibc/files/ppc-ports-ld-nofpu-20070114.patch b/packages/glibc/files/ppc-ports-ld-nofpu-20070114.patch deleted file mode 100644 index b4d99592f6..0000000000 --- a/packages/glibc/files/ppc-ports-ld-nofpu-20070114.patch +++ /dev/null @@ -1,38 +0,0 @@ -2007-01-14 Steven Munroe - - [BZ #2749] - * sysdeps/powerpc/nofpu/fenv_libc.h: New file. - -diff -urN dummy-libc/ports-cvstip-20070104/sysdeps/powerpc/nofpu/fenv_libc.h libc25/ports/sysdeps/powerpc/nofpu/fenv_libc.h ---- dummy-libc/ports-cvstip-20070104/sysdeps/powerpc/nofpu/fenv_libc.h Wed Dec 31 18:00:00 1969 -+++ libc25/ports/sysdeps/powerpc/nofpu/fenv_libc.h Thu Jan 11 11:00:53 2007 -@@ -0,0 +1,29 @@ -+/* Internal libc stuff for floating point environment routines. -+ Copyright (C) 2007 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _FENV_LIBC_H -+#define _FENV_LIBC_H 1 -+ -+/* fenv_libc.h is used in libm implementations of ldbl-128ibm. So we -+ need this version in the soft-fp to at minimum include fenv.h to -+ get the fegetround definition. */ -+ -+#include -+ -+#endif /* fenv_libc.h */ diff --git a/packages/glibc/files/ppc-sfp-machine.patch b/packages/glibc/files/ppc-sfp-machine.patch deleted file mode 100644 index 6171a03411..0000000000 --- a/packages/glibc/files/ppc-sfp-machine.patch +++ /dev/null @@ -1,297 +0,0 @@ -This patch combined with the other patches from Bugzilla #2749 allows -powerpc32 to build. The Subdirs pulls in the soft-fp directory from -libc, The Implies pulls in the ports powerpc/soft-fp directory which -includes sfp-machine.h - -The get/set/swapcontext changes overide the common implimentation in -libc to avoid using hardware FP instructions. - - - -2006-06-01 Steven Munroe - - [BZ #2749] - * sysdeps/powerpc/soft-fp/Subdirs: New file. - * sysdeps/powerpc/soft-fp/sfp-machine.h: New file. - * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies: New file. - - * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S: - New file. - * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S: - New file. - * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S: - New file. - -diff -urN dummy-libc/ports-cvstip-20060512/sysdeps/powerpc/soft-fp/Subdirs -libc24/ports/sysdeps/powerpc/soft-fp/Subdirs ---- dummy-libc/ports-cvstip-20060512/sysdeps/powerpc/soft-fp/Subdirs Wed Dec 31 18:00:00 1969 -+++ libc24/ports/sysdeps/powerpc/soft-fp/Subdirs Wed May 31 16:58:44 2006 -@@ -0,0 +1,1 @@ -+soft-fp -diff -urN dummy-libc/ports-cvstip-20060512/sysdeps/powerpc/soft-fp/sfp-machine.h -libc24/ports/sysdeps/powerpc/soft-fp/sfp-machine.h ---- dummy-libc/ports-cvstip-20060512/sysdeps/powerpc/soft-fp/sfp-machine.h Wed Dec 31 18:00:00 1969 -+++ libc24/ports/sysdeps/powerpc/soft-fp/sfp-machine.h Wed May 31 13:57:07 2006 -@@ -0,0 +1,63 @@ -+#define _FP_W_TYPE_SIZE 32 -+#define _FP_W_TYPE unsigned long -+#define _FP_WS_TYPE signed long -+#define _FP_I_TYPE long -+ -+#define _FP_MUL_MEAT_S(R,X,Y) \ -+ _FP_MUL_MEAT_1_wide(_FP_WFRACBITS_S,R,X,Y,umul_ppmm) -+#define _FP_MUL_MEAT_D(R,X,Y) \ -+ _FP_MUL_MEAT_2_wide(_FP_WFRACBITS_D,R,X,Y,umul_ppmm) -+#define _FP_MUL_MEAT_Q(R,X,Y) \ -+ _FP_MUL_MEAT_4_wide(_FP_WFRACBITS_Q,R,X,Y,umul_ppmm) -+ -+#define _FP_DIV_MEAT_S(R,X,Y) _FP_DIV_MEAT_1_loop(S,R,X,Y) -+#define _FP_DIV_MEAT_D(R,X,Y) _FP_DIV_MEAT_2_udiv(D,R,X,Y) -+#define _FP_DIV_MEAT_Q(R,X,Y) _FP_DIV_MEAT_4_udiv(Q,R,X,Y) -+ -+#define _FP_NANFRAC_S ((_FP_QNANBIT_S << 1) - 1) -+#define _FP_NANFRAC_D ((_FP_QNANBIT_D << 1) - 1), -1 -+#define _FP_NANFRAC_Q ((_FP_QNANBIT_Q << 1) - 1), -1, -1, -1 -+#define _FP_NANSIGN_S 0 -+#define _FP_NANSIGN_D 0 -+#define _FP_NANSIGN_Q 0 -+ -+#define _FP_KEEPNANFRACP 1 -+ -+/* Someone please check this. */ -+#define _FP_CHOOSENAN(fs, wc, R, X, Y, OP) \ -+ do { \ -+ if ((_FP_FRAC_HIGH_RAW_##fs(X) & _FP_QNANBIT_##fs) \ -+ && !(_FP_FRAC_HIGH_RAW_##fs(Y) & _FP_QNANBIT_##fs)) \ -+ { \ -+ R##_s = Y##_s; \ -+ _FP_FRAC_COPY_##wc(R,Y); \ -+ } \ -+ else \ -+ { \ -+ R##_s = X##_s; \ -+ _FP_FRAC_COPY_##wc(R,X); \ -+ } \ -+ R##_c = FP_CLS_NAN; \ -+ } while (0) -+ -+/* Exception flags. We use the bit positions of the appropriate bits -+ in the FPSCR, which also correspond to the FE_* bits. This makes -+ everything easier ;-). */ -+#define FP_EX_INVALID (1 << (31 - 2)) -+#define FP_EX_OVERFLOW (1 << (31 - 3)) -+#define FP_EX_UNDERFLOW (1 << (31 - 4)) -+#define FP_EX_DENORM FP_EX_UNDERFLOW -+#define FP_EX_DIVZERO (1 << (31 - 5)) -+#define FP_EX_INEXACT (1 << (31 - 6)) -+ -+#define FP_HANDLE_EXCEPTIONS __simulate_exceptions (_fex) -+#define FP_ROUNDMODE __sim_round_mode -+ -+extern int __sim_exceptions; -+libc_hidden_proto (__sim_exceptions); -+extern int __sim_disabled_exceptions; -+libc_hidden_proto (__sim_disabled_exceptions); -+extern int __sim_round_mode; -+libc_hidden_proto (__sim_round_mode); -+ -+extern void __simulate_exceptions (int x) attribute_hidden; -diff -urN dummy-libc/ports-cvstip-20060512/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies -libc24/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies ---- dummy-libc/ports-cvstip-20060512/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies Wed Dec 31 18:00:00 1969 -+++ libc24/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies Wed May 31 15:46:44 2006 -@@ -0,0 +1,1 @@ -+powerpc/soft-fp -diff -urN dummy-libc/ports-cvstip-20060512/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S -libc24/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S ---- dummy-libc/ports-cvstip-20060512/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S Wed Dec 31 18:00:00 1969 -+++ libc24/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S Thu Jun 01 15:31:03 2006 -@@ -0,0 +1,59 @@ -+/* Save current context. -+ Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+ -+#define __ASSEMBLY__ -+#include -+#include "ucontext_i.h" -+ -+#define __CONTEXT_FUNC_NAME __getcontext -+#undef __CONTEXT_ENABLE_FPRS -+#undef __CONTEXT_ENABLE_VRS -+ -+#include "getcontext-common.S" -+ -+versioned_symbol (libc, __getcontext, getcontext, GLIBC_2_3_4) -+ -+#if SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4) -+ -+/* For the nofpu case the old/new versions are the same function. */ -+strong_alias (__getcontext, __novec_getcontext) -+ -+compat_symbol (libc, __novec_getcontext, getcontext, GLIBC_2_3_3) -+ -+#endif -+ -+#if SHLIB_COMPAT (libc, GLIBC_2_1, GLIBC_2_3_3) -+ -+#define _ERRNO_H 1 -+#include -+ -+ compat_text_section -+ENTRY (__getcontext_stub) -+ li r3,ENOSYS -+ b __syscall_error@local -+END (__getcontext_stub) -+ .previous -+ -+compat_symbol (libc, __getcontext_stub, getcontext, GLIBC_2_1) -+ -+#endif -diff -urN dummy-libc/ports-cvstip-20060512/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S -libc24/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S ---- dummy-libc/ports-cvstip-20060512/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S Wed Dec 31 18:00:00 1969 -+++ libc24/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S Thu Jun 01 15:31:03 2006 -@@ -0,0 +1,59 @@ -+/* Jump to a new context. -+ Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+ -+#define __ASSEMBLY__ -+#include -+#include "ucontext_i.h" -+ -+#define __CONTEXT_FUNC_NAME __setcontext -+#undef __CONTEXT_ENABLE_FPRS -+#undef __CONTEXT_ENABLE_VRS -+ -+#include "setcontext-common.S" -+ -+versioned_symbol (libc, __setcontext, setcontext, GLIBC_2_3_4) -+ -+#if SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4) -+ -+/* For the nofpu case the old/new versions are the same function. */ -+strong_alias (__setcontext, __novec_setcontext) -+ -+compat_symbol (libc, __novec_setcontext, setcontext, GLIBC_2_3_3) -+ -+#endif -+ -+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_3) -+ -+#define _ERRNO_H 1 -+#include -+ -+ compat_text_section -+ENTRY (__setcontext_stub) -+ li r3,ENOSYS -+ b __syscall_error@local -+END (__setcontext_stub) -+ .previous -+ -+compat_symbol (libc, __setcontext_stub, setcontext, GLIBC_2_0) -+ -+#endif -diff -urN dummy-libc/ports-cvstip-20060512/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S -libc24/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S ---- dummy-libc/ports-cvstip-20060512/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S Wed Dec 31 18:00:00 1969 -+++ libc24/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S Thu Jun 01 15:31:03 2006 -@@ -0,0 +1,59 @@ -+/* Save current context and jump to a new context. -+ Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+ -+#define __ASSEMBLY__ -+#include -+#include "ucontext_i.h" -+ -+#define __CONTEXT_FUNC_NAME __swapcontext -+#undef __CONTEXT_ENABLE_FPRS -+#undef __CONTEXT_ENABLE_VRS -+ -+# include "swapcontext-common.S" -+ -+versioned_symbol (libc, __swapcontext, swapcontext, GLIBC_2_3_4) -+ -+#if SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4) -+ -+/* For the nofpu case the old/new versions are the same function. */ -+strong_alias (__swapcontext, __novec_swapcontext) -+ -+compat_symbol (libc, __novec_swapcontext, swapcontext, GLIBC_2_3_3) -+ -+#endif -+ -+#if SHLIB_COMPAT (libc, GLIBC_2_1, GLIBC_2_3_3) -+ -+#define _ERRNO_H 1 -+#include -+ -+ compat_text_section -+ENTRY (__swapcontext_stub) -+ li r3,ENOSYS -+ b __syscall_error@local -+END (__swapcontext_stub) -+ .previous -+ -+compat_symbol (libc, __swapcontext_stub, swapcontext, GLIBC_2_1) -+ -+#endif - diff --git a/packages/glibc/files/ppc-soft-fp-20070115.patch b/packages/glibc/files/ppc-soft-fp-20070115.patch deleted file mode 100644 index a84bc2f7cb..0000000000 --- a/packages/glibc/files/ppc-soft-fp-20070115.patch +++ /dev/null @@ -1,182 +0,0 @@ -2007-01-14 Steven Munroe - Joe Kerian - - [BZ #2749] - * soft-fp/op-4.h (__FP_FRAC_SUB_3, __FP_FRAC_SUB_4): Correct borrow - handling for high words. - * soft-fp/op-common.h (_FP_OVERFLOW_SEMIRAW): Always set inexact - and overflow for infinity. - (_FP_PACK_SEMIRAW): Update comment. Do not round if NaN or Inf. - - * math/basic-test.c (truncdfsf_test): New function. - [!NO_LONG_DOUBLE] (trunctfsf_test): New function. - [!NO_LONG_DOUBLE] (trunctfdf_test): New function. - Change main() to do_test. Define TEST_FUNCTION. Include test-skeleton.c. - (do_test): Run new tests. - -2007-01-15 Jakub Jelinek - - * soft-fp/op-common.h (FP_TRUNC): When truncating a NaN, clear - workbits in semi-raw fraction. - - -diff -urN libc25-cvstip-20070104/math/basic-test.c libc24/math/basic-test.c ---- libc25-cvstip-20070104/math/basic-test.c 2001-07-05 23:55:35.000000000 -0500 -+++ libc24/math/basic-test.c 2007-01-15 11:41:17.260963824 -0600 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1999 Free Software Foundation, Inc. -+/* Copyright (C) 1999, 2007 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Jaeger , 1999. - -@@ -107,17 +107,90 @@ - TEST_FUNC (double_test, double, nan, DBL_EPSILON, HUGE_VAL) - #ifndef NO_LONG_DOUBLE - TEST_FUNC (ldouble_test, long double, nanl, LDBL_EPSILON, HUGE_VALL) -+ -+void -+trunctfsf_test(void) -+{ -+ volatile long double Inf_var, NaN_var, zero_var, one_var; -+ float x1, x2; -+ -+ zero_var = 0.0; -+ one_var = 1.0; -+ NaN_var = zero_var/zero_var; -+ Inf_var = one_var / zero_var; -+ -+ (void) &zero_var; -+ (void) &one_var; -+ (void) &NaN_var; -+ (void) &Inf_var; -+ -+ x1 = (float)NaN_var; -+ check (" float x = (float)((long double)NaN))", isnan (x1) != 0); -+ x2 = (float)Inf_var; -+ check (" float x = (float)((long double)Inf))", isinf (x2) != 0); -+} -+ -+void -+trunctfdf_test(void) -+{ -+ volatile long double Inf_var, NaN_var, zero_var, one_var; -+ double x1, x2; -+ -+ zero_var = 0.0; -+ one_var = 1.0; -+ NaN_var = zero_var/zero_var; -+ Inf_var = one_var / zero_var; -+ -+ (void) &zero_var; -+ (void) &one_var; -+ (void) &NaN_var; -+ (void) &Inf_var; -+ -+ x1 = (double)NaN_var; -+ check (" double x = (double)((long double)NaN))", isnan (x1) != 0); -+ x2 = (double)Inf_var; -+ check (" double x = (double)((long double)Inf))", isinf (x2) != 0); -+} -+ - #endif - -+void -+truncdfsf_test(void) -+{ -+ volatile double Inf_var, NaN_var, zero_var, one_var; -+ float x1, x2; -+ -+ zero_var = 0.0; -+ one_var = 1.0; -+ NaN_var = zero_var/zero_var; -+ Inf_var = one_var / zero_var; -+ -+ (void) &zero_var; -+ (void) &one_var; -+ (void) &NaN_var; -+ (void) &Inf_var; -+ -+ x1 = (float)NaN_var; -+ check (" float x = (float)((double)NaN))", isnan (x1) != 0); -+ x2 = (float)Inf_var; -+ check (" float x = (float)((double)Inf))", isinf (x2) != 0); -+} -+ - int --main (void) -+do_test (void) - { - float_test (); - double_test (); -+ truncdfsf_test(); - - #ifndef NO_LONG_DOUBLE - ldouble_test (); -+ trunctfsf_test(); -+ trunctfdf_test(); - #endif - - return errors != 0; - } -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" -diff -urN libc25-cvstip-20070104/soft-fp/op-4.h libc24/soft-fp/op-4.h ---- libc25-cvstip-20070104/soft-fp/op-4.h 2006-04-04 03:24:47.000000000 -0500 -+++ libc24/soft-fp/op-4.h 2007-01-11 11:00:53.000000000 -0600 -@@ -564,7 +564,7 @@ - r1 = x1 - y1; \ - _c2 = r1 > x1; \ - r1 -= _c1; \ -- _c2 |= r1 > _c1; \ -+ _c2 |= _c1 && (y1 == x1); \ - r2 = x2 - y2 - _c2; \ - } while (0) - #endif -@@ -578,11 +578,11 @@ - r1 = x1 - y1; \ - _c2 = r1 > x1; \ - r1 -= _c1; \ -- _c2 |= r1 > _c1; \ -+ _c2 |= _c1 && (y1 == x1); \ - r2 = x2 - y2; \ - _c3 = r2 > x2; \ - r2 -= _c2; \ -- _c3 |= r2 > _c2; \ -+ _c3 |= _c2 && (y2 == x2); \ - r3 = x3 - y3 - _c3; \ - } while (0) - #endif -diff -urN libc25-cvstip-20070104/soft-fp/op-common.h libc24/soft-fp/op-common.h ---- libc25-cvstip-20070104/soft-fp/op-common.h 2006-04-04 03:24:47.000000000 -0500 -+++ libc24/soft-fp/op-common.h 2007-01-15 11:46:17.290882288 -0600 -@@ -1,5 +1,5 @@ - /* Software floating-point emulation. Common operations. -- Copyright (C) 1997,1998,1999,2006 Free Software Foundation, Inc. -+ Copyright (C) 1997,1998,1999,2006,2007 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com), - Jakub Jelinek (jj@ultra.linux.cz), -@@ -99,10 +99,10 @@ - else \ - { \ - X##_e = _FP_EXPMAX_##fs - 1; \ -- FP_SET_EXCEPTION(FP_EX_OVERFLOW); \ -- FP_SET_EXCEPTION(FP_EX_INEXACT); \ - _FP_FRAC_SET_##wc(X, _FP_MAXFRAC_##wc); \ - } \ -+ FP_SET_EXCEPTION(FP_EX_INEXACT); \ -+ FP_SET_EXCEPTION(FP_EX_OVERFLOW); \ - } while (0) - - /* Check for a semi-raw value being a signaling NaN and raise the -@@ -1252,6 +1252,9 @@ - _FP_FRAC_SRL_##swc(S, (_FP_WFRACBITS_##sfs \ - - _FP_WFRACBITS_##dfs)); \ - _FP_FRAC_COPY_##dwc##_##swc(D, S); \ -+ /* Semi-raw NaN must have all workbits cleared. */ \ -+ _FP_FRAC_LOW_##dwc(D) \ -+ &= ~(_FP_W_TYPE) ((1 << _FP_WORKBITS) - 1); \ - _FP_FRAC_HIGH_##dfs(D) |= _FP_QNANBIT_SH_##dfs; \ - } \ - } \ diff --git a/packages/glibc/glibc-2.2.5/alpha-build-failure.patch b/packages/glibc/glibc-2.2.5/alpha-build-failure.patch deleted file mode 100644 index 280a0a556d..0000000000 --- a/packages/glibc/glibc-2.2.5/alpha-build-failure.patch +++ /dev/null @@ -1,30 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/alpha/divrem.h~alpha-build-failure.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/alpha/divrem.h 2004-09-03 19:00:37.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996, 1997 Free Software Foundation, Inc. -+/* Copyright (C) 1996,97,2002 Free Software Foundation, Inc. - Contributed by David Mosberger (davidm@cs.arizona.edu). - This file is part of the GNU C Library. - -@@ -86,6 +86,7 @@ - - .align 3 - UFUNC_NAME: -+$udiv_entry: - lda sp, -STACK(sp) - .frame sp, STACK, retaddr, 0 - #ifdef PROF -@@ -206,7 +207,7 @@ - cmovge AT, AT, arg2 - - /* Do the unsigned division. */ -- bsr retaddr, UFUNC_NAME -+ bsr retaddr, $udiv_entry - - /* Restore originals and adjust the sign of the result. */ - ldq arg1, 0(sp) diff --git a/packages/glibc/glibc-2.2.5/arm-asm-clobber.patch b/packages/glibc/glibc-2.2.5/arm-asm-clobber.patch deleted file mode 100644 index eff21dc702..0000000000 --- a/packages/glibc/glibc-2.2.5/arm-asm-clobber.patch +++ /dev/null @@ -1,16 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/unix/sysv/linux/arm/sysdep.h~arm-asm-clobber.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/unix/sysv/linux/arm/sysdep.h 2004-09-03 19:01:07.000000000 -0500 -@@ -131,7 +131,7 @@ - asm volatile ("swi %1 @ syscall " #name \ - : "=r" (_a1) \ - : "i" (SYS_ify(name)) ASM_ARGS_##nr \ -- : "a1", "memory"); \ -+ : "memory"); \ - _sys_result = _a1; \ - } \ - if (_sys_result >= (unsigned int) -4095) \ diff --git a/packages/glibc/glibc-2.2.5/arm-ctl_bus_isa.patch b/packages/glibc/glibc-2.2.5/arm-ctl_bus_isa.patch deleted file mode 100644 index b487d69239..0000000000 --- a/packages/glibc/glibc-2.2.5/arm-ctl_bus_isa.patch +++ /dev/null @@ -1,40 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/unix/sysv/linux/arm/ioperm.c~arm-ctl_bus_isa.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/unix/sysv/linux/arm/ioperm.c 2004-09-03 19:00:37.000000000 -0500 -@@ -47,6 +47,12 @@ - #include - #include - -+/* see http://www.ussg.iu.edu/hypermail/linux/kernel/0311.0/0529.html */ -+#include -+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,4,23)) -+#define CTL_BUS_ISA BUS_ISA /* and hope it's not the one from linux/input.h */ -+#endif -+ - #define PATH_ARM_SYSTYPE "/etc/arm_systype" - #define PATH_CPUINFO "/proc/cpuinfo" - -@@ -80,7 +86,7 @@ - * Initialize I/O system. There are several ways to get the information - * we need. Each is tried in turn until one succeeds. - * -- * 1. Sysctl (CTL_BUS, BUS_ISA, ISA_*). This is the preferred method -+ * 1. Sysctl (CTL_BUS, CTL_BUS_ISA, ISA_*). This is the preferred method - * but not all kernels support it. - * - * 2. Read the value (not the contents) of symlink PATH_ARM_SYSTYPE. -@@ -100,8 +106,8 @@ - { - char systype[256]; - int i, n; -- static int iobase_name[] = { CTL_BUS, BUS_ISA, BUS_ISA_PORT_BASE }; -- static int ioshift_name[] = { CTL_BUS, BUS_ISA, BUS_ISA_PORT_SHIFT }; -+ static int iobase_name[] = { CTL_BUS, CTL_BUS_ISA, BUS_ISA_PORT_BASE }; -+ static int ioshift_name[] = { CTL_BUS, CTL_BUS_ISA, BUS_ISA_PORT_SHIFT }; - size_t len = sizeof(io.base); - - if (! sysctl (iobase_name, 3, &io.io_base, &len, NULL, 0) diff --git a/packages/glibc/glibc-2.2.5/arm-longlong.patch b/packages/glibc/glibc-2.2.5/arm-longlong.patch deleted file mode 100644 index dfb9309b7b..0000000000 --- a/packages/glibc/glibc-2.2.5/arm-longlong.patch +++ /dev/null @@ -1,59 +0,0 @@ ---- stdlib/longlong.h~ 2002-09-29 18:45:58.000000000 +0100 -+++ stdlib/longlong.h 2004-03-20 19:16:44.000000000 +0000 -@@ -210,6 +210,14 @@ - "rI" ((USItype) (bh)), \ - "r" ((USItype) (al)), \ - "rI" ((USItype) (bl))) -+/* v3m and all higher arches have long multiply support. */ -+#if !defined(__ARM_ARCH_2__) && !defined(__ARM_ARCH_3__) -+#define umul_ppmm(xh, xl, a, b) \ -+ __asm__ ("umull %0,%1,%2,%3" : "=&r" (xl), "=&r" (xh) : "r" (a), "r" (b)) -+#define UMUL_TIME 5 -+#define smul_ppmm(xh, xl, a, b) \ -+ __asm__ ("smull %0,%1,%2,%3" : "=&r" (xl), "=&r" (xh) : "r" (a), "r" (b)) -+#else - #define umul_ppmm(xh, xl, a, b) \ - {register USItype __t0, __t1, __t2; \ - __asm__ ("%@ Inlined umul_ppmm\n" \ -@@ -231,7 +239,14 @@ - : "r" ((USItype) (a)), \ - "r" ((USItype) (b)));} - #define UMUL_TIME 20 -+#endif - #define UDIV_TIME 100 -+ -+#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) -+#define count_leading_zeros(COUNT,X) ((COUNT) = __builtin_clz (X)) -+#define COUNT_LEADING_ZEROS_0 32 -+#endif -+ - #endif /* __arm__ */ - - #if defined (__hppa) && W_TYPE_SIZE == 32 ---- /dev/null 2004-02-02 20:32:13.000000000 +0000 -+++ sysdeps/arm/mp_clz_tab.c 2004-03-20 19:24:26.000000000 +0000 -@@ -0,0 +1,24 @@ -+/* __clz_tab -- support for longlong.h -+ Copyright (C) 2004 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) -+/* Nothing required. */ -+#else -+#include -+#endif diff --git a/packages/glibc/glibc-2.2.5/arm-machine-gmon.patch b/packages/glibc/glibc-2.2.5/arm-machine-gmon.patch deleted file mode 100644 index 0fa789d86b..0000000000 --- a/packages/glibc/glibc-2.2.5/arm-machine-gmon.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- sysdeps/arm/machine-gmon.h~ 2001-07-06 00:55:48.000000000 -0400 -+++ sysdeps/arm/machine-gmon.h 2004-04-25 03:56:20.000000000 -0400 -@@ -35,7 +35,7 @@ - static void mcount_internal (u_long frompc, u_long selfpc); - - #define _MCOUNT_DECL(frompc, selfpc) \ --static void mcount_internal (u_long frompc, u_long selfpc) -+static __attribute__((used)) void mcount_internal (u_long frompc, u_long selfpc) - - /* This macro/func MUST save r0, r1 because the compiler inserts - blind calls to _mount(), ignoring the fact that _mcount may diff --git a/packages/glibc/glibc-2.2.5/arm-memcpy.patch b/packages/glibc/glibc-2.2.5/arm-memcpy.patch deleted file mode 100644 index 0f7009e549..0000000000 --- a/packages/glibc/glibc-2.2.5/arm-memcpy.patch +++ /dev/null @@ -1,761 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/arm/memcpy.S 2004-09-03 19:00:39.000000000 -0500 -@@ -0,0 +1,241 @@ -+/* -+ * Optimized memcpy implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU Lesser General Public -+ * License as published by the Free Software Foundation; either -+ * version 2.1 of the License, or (at your option) any later version. -+ * -+ * This file is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * Lesser General Public License for more details. -+ */ -+ -+#include -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+ -+/* char * memcpy (char *dst, const char *src) */ -+ -+ENTRY(memcpy) -+ subs r2, r2, #4 -+ stmfd sp!, {r0, r4, lr} -+ blt 7f -+ ands ip, r0, #3 -+ PLD( pld [r1, #0] ) -+ bne 8f -+ ands ip, r1, #3 -+ bne 9f -+ -+1: subs r2, r2, #4 -+ blt 6f -+ subs r2, r2, #8 -+ blt 5f -+ subs r2, r2, #16 -+ blt 4f -+ -+ PLD( subs r2, r2, #65 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 3f ) -+ PLD( pld [r1, #32] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #64] ) -+ PLD( beq 2f ) -+ PLD( rsb ip, ip, #32 ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #96] ) -+ PLD( blt 2f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgeia r1!, {r3 - r6} ) -+ PLD( stmgeia r0!, {r3 - r6} ) -+ PLD( beq 2f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [r1], #4 ) -+ PLD( ldrge r4, [r1], #4 ) -+ PLD( ldrgt r5, [r1], #4 ) -+ PLD( str r3, [r0], #4 ) -+ PLD( strge r4, [r0], #4 ) -+ PLD( strgt r5, [r0], #4 ) -+ -+2: PLD( pld [r1, #96] ) -+3: ldmia r1!, {r3 - r8, ip, lr} -+ subs r2, r2, #32 -+ stmia r0!, {r3 - r8, ip, lr} -+ bge 2b -+ PLD( cmn r2, #65 ) -+ PLD( bge 3b ) -+ PLD( add r2, r2, #65 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ tst r2, #16 -+4: ldmneia r1!, {r3, r4, ip, lr} -+ stmneia r0!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+5: ldmneia r1!, {r3, r4} -+ stmneia r0!, {r3, r4} -+ -+ tst r2, #4 -+6: ldrne r3, [r1], #4 -+ strne r3, [r0], #4 -+ -+7: ands r2, r2, #3 -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [r1], #1 -+ ldrgeb r4, [r1], #1 -+ ldrgtb ip, [r1] -+ strb r3, [r0], #1 -+ strgeb r4, [r0], #1 -+ strgtb ip, [r0] -+ ldmfd sp!, {r0, r4, pc} -+ -+8: rsb ip, ip, #4 -+ cmp ip, #2 -+ ldrb r3, [r1], #1 -+ ldrgeb r4, [r1], #1 -+ ldrgtb lr, [r1], #1 -+ strb r3, [r0], #1 -+ strgeb r4, [r0], #1 -+ strgtb lr, [r0], #1 -+ subs r2, r2, ip -+ blt 7b -+ ands ip, r1, #3 -+ beq 1b -+ -+9: bic r1, r1, #3 -+ cmp ip, #2 -+ ldr lr, [r1], #4 -+ beq 17f -+ bgt 18f -+ -+ -+ .macro forward_copy_shift pull push -+ -+ cmp r2, #12 -+ PLD( pld [r1, #0] ) -+ blt 15f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 13f -+ -+ PLD( subs r2, r2, #97 ) -+ PLD( blt 12f ) -+ PLD( pld [r1, #32] ) -+ -+ PLD( @ cache alignment ) -+ PLD( rsb ip, r1, #36 ) -+ PLD( pld [r1, #64] ) -+ PLD( ands ip, ip, #31 ) -+ PLD( pld [r1, #96] ) -+ PLD( beq 11f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #128] ) -+ PLD( blt 11f ) -+ PLD( sub r2, r2, ip ) -+10: PLD( mov r3, lr, pull #\pull ) -+ PLD( ldr lr, [r1], #4 ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r3, r3, lr, push #\push ) -+ PLD( str r3, [r0], #4 ) -+ PLD( bgt 10b ) -+ -+11: PLD( pld [r1, #128] ) -+12: mov r3, lr, pull #\pull -+ ldmia r1!, {r4 - r9, ip, lr} -+ subs r2, r2, #32 -+ orr r3, r3, r4, push #\push -+ mov r4, r4, pull #\pull -+ orr r4, r4, r5, push #\push -+ mov r5, r5, pull #\pull -+ orr r5, r5, r6, push #\push -+ mov r6, r6, pull #\pull -+ orr r6, r6, r7, push #\push -+ mov r7, r7, pull #\pull -+ orr r7, r7, r8, push #\push -+ mov r8, r8, pull #\pull -+ orr r8, r8, r9, push #\push -+ mov r9, r9, pull #\pull -+ orr r9, r9, ip, push #\push -+ mov ip, ip, pull #\pull -+ orr ip, ip, lr, push #\push -+ stmia r0!, {r3 - r9, ip} -+ bge 11b -+ PLD( cmn r2, #97 ) -+ PLD( bge 12b ) -+ PLD( add r2, r2, #97 ) -+ cmn r2, #16 -+ blt 14f -+13: mov r3, lr, pull #\pull -+ ldmia r1!, {r4 - r6, lr} -+ sub r2, r2, #16 -+ orr r3, r3, r4, push #\push -+ mov r4, r4, pull #\pull -+ orr r4, r4, r5, push #\push -+ mov r5, r5, pull #\pull -+ orr r5, r5, r6, push #\push -+ mov r6, r6, pull #\pull -+ orr r6, r6, lr, push #\push -+ stmia r0!, {r3 - r6} -+14: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 16f -+15: mov r3, lr, pull #\pull -+ ldr lr, [r1], #4 -+ subs r2, r2, #4 -+ orr r3, r3, lr, push #\push -+ str r3, [r0], #4 -+ bge 15b -+16: -+ .endm -+ -+ -+ forward_copy_shift pull=8 push=24 -+ sub r1, r1, #3 -+ b 7b -+ -+17: forward_copy_shift pull=16 push=16 -+ sub r1, r1, #2 -+ b 7b -+ -+18: forward_copy_shift pull=24 push=8 -+ sub r1, r1, #1 -+ b 7b -+ -+ .size memcpy, . - memcpy -+END(memcpy) -+libc_hidden_builtin_def (memcpy) ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/arm/memmove.S 2004-09-03 19:00:39.000000000 -0500 -@@ -0,0 +1,251 @@ -+/* -+ * Optimized memmove implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU Lesser General Public -+ * License as published by the Free Software Foundation; either -+ * version 2.1 of the License, or (at your option) any later version. -+ * -+ * This file is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * Lesser General Public License for more details. -+ */ -+ -+#include -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+ -+/* char * memmove (char *dst, const char *src) */ -+ENTRY(memmove) -+ subs ip, r0, r1 -+ cmphi r2, ip -+ bls memcpy(PLT) -+ -+ stmfd sp!, {r0, r4, lr} -+ add r1, r1, r2 -+ add r0, r0, r2 -+ subs r2, r2, #4 -+ blt 25f -+ ands ip, r0, #3 -+ PLD( pld [r1, #-4] ) -+ bne 26f -+ ands ip, r1, #3 -+ bne 27f -+ -+19: subs r2, r2, #4 -+ blt 24f -+ subs r2, r2, #8 -+ blt 23f -+ subs r2, r2, #16 -+ blt 22f -+ -+ PLD( pld [r1, #-32] ) -+ PLD( subs r2, r2, #96 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 21f ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #-64] ) -+ PLD( beq 20f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #-96] ) -+ PLD( blt 20f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgedb r1!, {r3 - r6} ) -+ PLD( stmgedb r0!, {r3 - r6} ) -+ PLD( beq 20f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [r1, #-4]! ) -+ PLD( ldrge r4, [r1, #-4]! ) -+ PLD( ldrgt r5, [r1, #-4]! ) -+ PLD( str r3, [r0, #-4]! ) -+ PLD( strge r4, [r0, #-4]! ) -+ PLD( strgt r5, [r0, #-4]! ) -+ -+20: PLD( pld [r1, #-96] ) -+ PLD( pld [r1, #-128] ) -+21: ldmdb r1!, {r3, r4, ip, lr} -+ subs r2, r2, #32 -+ stmdb r0!, {r3, r4, ip, lr} -+ ldmdb r1!, {r3, r4, ip, lr} -+ stmgedb r0!, {r3, r4, ip, lr} -+ ldmgedb r1!, {r3, r4, ip, lr} -+ stmgedb r0!, {r3, r4, ip, lr} -+ ldmgedb r1!, {r3, r4, ip, lr} -+ subges r2, r2, #32 -+ stmdb r0!, {r3, r4, ip, lr} -+ bge 20b -+ PLD( cmn r2, #96 ) -+ PLD( bge 21b ) -+ PLD( add r2, r2, #96 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ tst r2, #16 -+22: ldmnedb r1!, {r3, r4, ip, lr} -+ stmnedb r0!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+23: ldmnedb r1!, {r3, r4} -+ stmnedb r0!, {r3, r4} -+ -+ tst r2, #4 -+24: ldrne r3, [r1, #-4]! -+ strne r3, [r0, #-4]! -+ -+25: ands r2, r2, #3 -+ ldmeqfd sp!, {r0, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [r1, #-1] -+ ldrgeb r4, [r1, #-2] -+ ldrgtb ip, [r1, #-3] -+ strb r3, [r0, #-1] -+ strgeb r4, [r0, #-2] -+ strgtb ip, [r0, #-3] -+ ldmfd sp!, {r0, r4, pc} -+ -+26: cmp ip, #2 -+ ldrb r3, [r1, #-1]! -+ ldrgeb r4, [r1, #-1]! -+ ldrgtb lr, [r1, #-1]! -+ strb r3, [r0, #-1]! -+ strgeb r4, [r0, #-1]! -+ strgtb lr, [r0, #-1]! -+ subs r2, r2, ip -+ blt 25b -+ ands ip, r1, #3 -+ beq 19b -+ -+27: bic r1, r1, #3 -+ cmp ip, #2 -+ ldr r3, [r1] -+ beq 35f -+ blt 36f -+ -+ -+ .macro backward_copy_shift push pull -+ -+ cmp r2, #12 -+ PLD( pld [r1, #-4] ) -+ blt 33f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 31f -+ -+ PLD( subs r2, r2, #96 ) -+ PLD( pld [r1, #-32] ) -+ PLD( blt 30f ) -+ PLD( pld [r1, #-64] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, r1, #31 ) -+ PLD( pld [r1, #-96] ) -+ PLD( beq 29f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [r1, #-128] ) -+ PLD( blt 29f ) -+ PLD( sub r2, r2, ip ) -+28: PLD( mov r4, r3, push #\push ) -+ PLD( ldr r3, [r1, #-4]! ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r4, r4, r3, pull #\pull ) -+ PLD( str r4, [r0, #-4]! ) -+ PLD( bgt 28b ) -+ -+29: PLD( pld [r1, #-128] ) -+30: mov lr, r3, push #\push -+ ldmdb r1!, {r3 - r9, ip} -+ subs r2, r2, #32 -+ orr lr, lr, ip, pull #\pull -+ mov ip, ip, push #\push -+ orr ip, ip, r9, pull #\pull -+ mov r9, r9, push #\push -+ orr r9, r9, r8, pull #\pull -+ mov r8, r8, push #\push -+ orr r8, r8, r7, pull #\pull -+ mov r7, r7, push #\push -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb r0!, {r4 - r9, ip, lr} -+ bge 29b -+ PLD( cmn r2, #96 ) -+ PLD( bge 30b ) -+ PLD( add r2, r2, #96 ) -+ cmn r2, #16 -+ blt 32f -+31: mov r7, r3, push #\push -+ ldmdb r1!, {r3 - r6} -+ sub r2, r2, #16 -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb r0!, {r4 - r7} -+32: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 34f -+33: mov r4, r3, push #\push -+ ldr r3, [r1, #-4]! -+ subs r2, r2, #4 -+ orr r4, r4, r3, pull #\pull -+ str r4, [r0, #-4]! -+ bge 33b -+34: -+ .endm -+ -+ -+ backward_copy_shift push=8 pull=24 -+ add r1, r1, #3 -+ b 25b -+ -+35: backward_copy_shift push=16 pull=16 -+ add r1, r1, #2 -+ b 25b -+ -+36: backward_copy_shift push=24 pull=8 -+ add r1, r1, #1 -+ b 25b -+ -+ .size memmove, . - memmove -+END(memmove) -+libc_hidden_builtin_def (memmove) ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/arm/bcopy.S 2004-09-03 19:00:39.000000000 -0500 -@@ -0,0 +1,255 @@ -+/* -+ * Optimized memmove implementation for ARM processors -+ * -+ * Author: Nicolas Pitre -+ * Created: Dec 23, 2003 -+ * Copyright: (C) MontaVista Software, Inc. -+ * -+ * This file is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU Lesser General Public -+ * License as published by the Free Software Foundation; either -+ * version 2.1 of the License, or (at your option) any later version. -+ * -+ * This file is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * Lesser General Public License for more details. -+ */ -+ -+#include -+ -+ -+/* -+ * Endian independent macros for shifting bytes within registers. -+ */ -+#ifndef __ARMEB__ -+#define pull lsr -+#define push lsl -+#else -+#define pull lsl -+#define push lsr -+#endif -+ -+/* -+ * Enable data preload for architectures that support it (ARMv5 and above) -+ */ -+#if defined(__ARM_ARCH_5__) || \ -+ defined(__ARM_ARCH_5T__) || \ -+ defined(__ARM_ARCH_5TE__) -+#define PLD(code...) code -+#else -+#define PLD(code...) -+#endif -+ -+dst .req r1 -+src .req r0 -+ -+/* void *bcopy (const char *src, char *dst, size_t size) */ -+ENTRY(bcopy) -+ subs ip, dst, src -+ cmphi r2, ip -+ movls r3, r0 -+ movls r0, r1 -+ movls r1, r3 -+ bls memcpy(PLT) -+ -+ stmfd sp!, {r4, lr} -+ add src, src, r2 -+ add dst, dst, r2 -+ subs r2, r2, #4 -+ blt 25f -+ ands ip, dst, #3 -+ PLD( pld [src, #-4] ) -+ bne 26f -+ ands ip, src, #3 -+ bne 27f -+ -+19: subs r2, r2, #4 -+ blt 24f -+ subs r2, r2, #8 -+ blt 23f -+ subs r2, r2, #16 -+ blt 22f -+ -+ PLD( pld [src, #-32] ) -+ PLD( subs r2, r2, #96 ) -+ stmfd sp!, {r5 - r8} -+ PLD( blt 21f ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, src, #31 ) -+ PLD( pld [src, #-64] ) -+ PLD( beq 20f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [src, #-96] ) -+ PLD( blt 20f ) -+ PLD( cmp ip, #16 ) -+ PLD( sub r2, r2, ip ) -+ PLD( ldmgedb src!, {r3 - r6} ) -+ PLD( stmgedb dst!, {r3 - r6} ) -+ PLD( beq 20f ) -+ PLD( and ip, ip, #15 ) -+ PLD( cmp ip, #8 ) -+ PLD( ldr r3, [src, #-4]! ) -+ PLD( ldrge r4, [src, #-4]! ) -+ PLD( ldrgt r5, [src, #-4]! ) -+ PLD( str r3, [dst, #-4]! ) -+ PLD( strge r4, [dst, #-4]! ) -+ PLD( strgt r5, [dst, #-4]! ) -+ -+20: PLD( pld [src, #-96] ) -+ PLD( pld [src, #-128] ) -+21: ldmdb src!, {r3, r4, ip, lr} -+ subs r2, r2, #32 -+ stmdb dst!, {r3, r4, ip, lr} -+ ldmdb src!, {r3, r4, ip, lr} -+ stmgedb dst!, {r3, r4, ip, lr} -+ ldmgedb src!, {r3, r4, ip, lr} -+ stmgedb dst!, {r3, r4, ip, lr} -+ ldmgedb src!, {r3, r4, ip, lr} -+ subges r2, r2, #32 -+ stmdb dst!, {r3, r4, ip, lr} -+ bge 20b -+ PLD( cmn r2, #96 ) -+ PLD( bge 21b ) -+ PLD( add r2, r2, #96 ) -+ tst r2, #31 -+ ldmfd sp!, {r5 - r8} -+ ldmeqfd sp!, {r4, pc} -+ -+ tst r2, #16 -+22: ldmnedb src!, {r3, r4, ip, lr} -+ stmnedb dst!, {r3, r4, ip, lr} -+ -+ tst r2, #8 -+23: ldmnedb src!, {r3, r4} -+ stmnedb dst!, {r3, r4} -+ -+ tst r2, #4 -+24: ldrne r3, [src, #-4]! -+ strne r3, [dst, #-4]! -+ -+25: ands r2, r2, #3 -+ ldmeqfd sp!, {dst, r4, pc} -+ -+ cmp r2, #2 -+ ldrb r3, [src, #-1] -+ ldrgeb r4, [src, #-2] -+ ldrgtb ip, [src, #-3] -+ strb r3, [dst, #-1] -+ strgeb r4, [dst, #-2] -+ strgtb ip, [dst, #-3] -+ ldmfd sp!, {dst, r4, pc} -+ -+26: cmp ip, #2 -+ ldrb r3, [src, #-1]! -+ ldrgeb r4, [src, #-1]! -+ ldrgtb lr, [src, #-1]! -+ strb r3, [dst, #-1]! -+ strgeb r4, [dst, #-1]! -+ strgtb lr, [dst, #-1]! -+ subs r2, r2, ip -+ blt 25b -+ ands ip, src, #3 -+ beq 19b -+ -+27: bic src, src, #3 -+ cmp ip, #2 -+ ldr r3, [src] -+ beq 35f -+ blt 36f -+ -+ -+ .macro backward_copy_shift push pull -+ -+ cmp r2, #12 -+ PLD( pld [src, #-4] ) -+ blt 33f -+ subs r2, r2, #28 -+ stmfd sp!, {r5 - r9} -+ blt 31f -+ -+ PLD( subs r2, r2, #96 ) -+ PLD( pld [src, #-32] ) -+ PLD( blt 30f ) -+ PLD( pld [src, #-64] ) -+ -+ PLD( @ cache alignment ) -+ PLD( ands ip, src, #31 ) -+ PLD( pld [src, #-96] ) -+ PLD( beq 29f ) -+ PLD( cmp r2, ip ) -+ PLD( pld [src, #-128] ) -+ PLD( blt 29f ) -+ PLD( sub r2, r2, ip ) -+28: PLD( mov r4, r3, push #\push ) -+ PLD( ldr r3, [src, #-4]! ) -+ PLD( subs ip, ip, #4 ) -+ PLD( orr r4, r4, r3, pull #\pull ) -+ PLD( str r4, [dst, #-4]! ) -+ PLD( bgt 28b ) -+ -+29: PLD( pld [src, #-128] ) -+30: mov lr, r3, push #\push -+ ldmdb src!, {r3 - r9, ip} -+ subs r2, r2, #32 -+ orr lr, lr, ip, pull #\pull -+ mov ip, ip, push #\push -+ orr ip, ip, r9, pull #\pull -+ mov r9, r9, push #\push -+ orr r9, r9, r8, pull #\pull -+ mov r8, r8, push #\push -+ orr r8, r8, r7, pull #\pull -+ mov r7, r7, push #\push -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb dst!, {r4 - r9, ip, lr} -+ bge 29b -+ PLD( cmn r2, #96 ) -+ PLD( bge 30b ) -+ PLD( add r2, r2, #96 ) -+ cmn r2, #16 -+ blt 32f -+31: mov r7, r3, push #\push -+ ldmdb src!, {r3 - r6} -+ sub r2, r2, #16 -+ orr r7, r7, r6, pull #\pull -+ mov r6, r6, push #\push -+ orr r6, r6, r5, pull #\pull -+ mov r5, r5, push #\push -+ orr r5, r5, r4, pull #\pull -+ mov r4, r4, push #\push -+ orr r4, r4, r3, pull #\pull -+ stmdb dst!, {r4 - r7} -+32: adds r2, r2, #28 -+ ldmfd sp!, {r5 - r9} -+ blt 34f -+33: mov r4, r3, push #\push -+ ldr r3, [src, #-4]! -+ subs r2, r2, #4 -+ orr r4, r4, r3, pull #\pull -+ str r4, [dst, #-4]! -+ bge 33b -+34: -+ .endm -+ -+ -+ backward_copy_shift push=8 pull=24 -+ add src, src, #3 -+ b 25b -+ -+35: backward_copy_shift push=16 pull=16 -+ add src, src, #2 -+ b 25b -+ -+36: backward_copy_shift push=24 pull=8 -+ add src, src, #1 -+ b 25b -+ -+ .size bcopy, . - bcopy -+END(bcopy) diff --git a/packages/glibc/glibc-2.2.5/arm-no-hwcap.patch b/packages/glibc/glibc-2.2.5/arm-no-hwcap.patch deleted file mode 100644 index 17bfdcd125..0000000000 --- a/packages/glibc/glibc-2.2.5/arm-no-hwcap.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- sysdeps/unix/sysv/linux/arm/dl-procinfo.h Mon Jul 23 12:57:23 2001 -+++ sysdeps/unix/sysv/linux/arm/dl-procinfo.h Sun Feb 10 06:37:00 2002 -@@ -67,7 +67,7 @@ - HWCAP_ARM_VFP = 1 << 6, - HWCAP_ARM_EDSP = 1 << 7, - -- HWCAP_IMPORTANT = (HWCAP_ARM_HALF | HWCAP_ARM_FAST_MULT) -+ HWCAP_IMPORTANT = HWCAP_ARM_FAST_MULT - }; - - static inline int diff --git a/packages/glibc/glibc-2.2.5/cris-libc-symbols.patch b/packages/glibc/glibc-2.2.5/cris-libc-symbols.patch deleted file mode 100644 index 93fc2c141f..0000000000 --- a/packages/glibc/glibc-2.2.5/cris-libc-symbols.patch +++ /dev/null @@ -1,43 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/include/libc-symbols.h~cris-libc-symbols.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/include/libc-symbols.h 2004-09-03 19:00:37.000000000 -0500 -@@ -207,18 +207,29 @@ - # define __make_section_unallocated(section_string) - # endif - --/* Tacking on "\n\t#" to the section name makes gcc put it's bogus -- section attributes on what looks like a comment to the assembler. */ -+/* Tacking on "\n\t#" to the section name makes gcc put its bogus -+ section attributes on what looks like a comment to the assembler. -+ Furthermore, with gas, we need to add a "#APP" line so the comment -+ is recognized as such. */ -+# ifdef HAVE_GNU_AS -+# define __as_app_line "#APP\n" -+# else -+# define __as_app_line "" -+# endif - # ifdef HAVE_SECTION_QUOTES - # define link_warning(symbol, msg) \ - __make_section_unallocated (".gnu.warning." #symbol) \ -- static const char __evoke_link_warning_##symbol[] \ -- __attribute__ ((section (".gnu.warning." #symbol "\"\n\t#\""))) = msg; -+ static const char __evoke_link_warning_##symbol[] \ -+ __attribute__ \ -+ ((section (".gnu.warning." #symbol "\"\n" __as_app_line "\t#\""))) \ -+ = msg; - # else - # define link_warning(symbol, msg) \ - __make_section_unallocated (".gnu.warning." #symbol) \ -- static const char __evoke_link_warning_##symbol[] \ -- __attribute__ ((section (".gnu.warning." #symbol "\n\t#"))) = msg; -+ static const char __evoke_link_warning_##symbol[] \ -+ __attribute__ \ -+ ((section (".gnu.warning." #symbol "\n" __as_app_line "\t#"))) \ -+ = msg; - # endif - # else /* Not ELF: a.out */ - # ifdef HAVE_XCOFF diff --git a/packages/glibc/glibc-2.2.5/cris-stack-direction.patch b/packages/glibc/glibc-2.2.5/cris-stack-direction.patch deleted file mode 100644 index 785d3a2427..0000000000 --- a/packages/glibc/glibc-2.2.5/cris-stack-direction.patch +++ /dev/null @@ -1,36 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/cris/stackinfo.h 2004-09-03 19:00:37.000000000 -0500 -@@ -0,0 +1,28 @@ -+/* Copyright (C) 2002 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+/* This file contains a bit of information about the stack allocation -+ of the processor. */ -+ -+#ifndef _STACKINFO_H -+#define _STACKINFO_H 1 -+ -+/* On cris the stack grows down. */ -+#define _STACK_GROWS_DOWN 1 -+ -+#endif /* stackinfo.h */ diff --git a/packages/glibc/glibc-2.2.5/dl-machine-alpha.patch b/packages/glibc/glibc-2.2.5/dl-machine-alpha.patch deleted file mode 100644 index 1d34dba706..0000000000 --- a/packages/glibc/glibc-2.2.5/dl-machine-alpha.patch +++ /dev/null @@ -1,420 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/alpha/dl-machine.h~dl-machine-alpha.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/alpha/dl-machine.h 2004-09-03 19:00:37.000000000 -0500 -@@ -134,125 +134,126 @@ - #define TRAMPOLINE_TEMPLATE(tramp_name, fixup_name, IMB) \ - extern void tramp_name (void); \ - asm ( "\ -- .globl " #tramp_name " -- .ent " #tramp_name " --" #tramp_name ": -- lda $sp, -44*8($sp) -- .frame $sp, 44*8, $26 -- /* Preserve all integer registers that C normally doesn't. */ -- stq $26, 0*8($sp) -- stq $0, 1*8($sp) -- stq $1, 2*8($sp) -- stq $2, 3*8($sp) -- stq $3, 4*8($sp) -- stq $4, 5*8($sp) -- stq $5, 6*8($sp) -- stq $6, 7*8($sp) -- stq $7, 8*8($sp) -- stq $8, 9*8($sp) -- stq $16, 10*8($sp) -- stq $17, 11*8($sp) -- stq $18, 12*8($sp) -- stq $19, 13*8($sp) -- stq $20, 14*8($sp) -- stq $21, 15*8($sp) -- stq $22, 16*8($sp) -- stq $23, 17*8($sp) -- stq $24, 18*8($sp) -- stq $25, 19*8($sp) -- stq $29, 20*8($sp) -- stt $f0, 21*8($sp) -- stt $f1, 22*8($sp) -- stt $f10, 23*8($sp) -- stt $f11, 24*8($sp) -- stt $f12, 25*8($sp) -- stt $f13, 26*8($sp) -- stt $f14, 27*8($sp) -- stt $f15, 28*8($sp) -- stt $f16, 29*8($sp) -- stt $f17, 30*8($sp) -- stt $f18, 31*8($sp) -- stt $f19, 32*8($sp) -- stt $f20, 33*8($sp) -- stt $f21, 34*8($sp) -- stt $f22, 35*8($sp) -- stt $f23, 36*8($sp) -- stt $f24, 37*8($sp) -- stt $f25, 38*8($sp) -- stt $f26, 39*8($sp) -- stt $f27, 40*8($sp) -- stt $f28, 41*8($sp) -- stt $f29, 42*8($sp) -- stt $f30, 43*8($sp) -- .mask 0x27ff01ff, -44*8 -- .fmask 0xfffffc03, -(44-21)*8 -- /* Set up our $gp */ -- br $gp, .+4 -- ldgp $gp, 0($gp) -- .prologue 0 -- /* Set up the arguments for fixup: */ -- /* $16 = link_map out of plt0 */ -- /* $17 = offset of reloc entry = ($28 - $27 - 20) /12 * 24 */ -- /* $18 = return address */ -- subq $28, $27, $17 -- ldq $16, 8($27) -- subq $17, 20, $17 -- mov $26, $18 -- addq $17, $17, $17 -- /* Do the fixup */ -- bsr $26, " ASM_ALPHA_NG_SYMBOL_PREFIX #fixup_name "..ng -- /* Move the destination address into position. */ -- mov $0, $27 -- /* Restore program registers. */ -- ldq $26, 0*8($sp) -- ldq $0, 1*8($sp) -- ldq $1, 2*8($sp) -- ldq $2, 3*8($sp) -- ldq $3, 4*8($sp) -- ldq $4, 5*8($sp) -- ldq $5, 6*8($sp) -- ldq $6, 7*8($sp) -- ldq $7, 8*8($sp) -- ldq $8, 9*8($sp) -- ldq $16, 10*8($sp) -- ldq $17, 11*8($sp) -- ldq $18, 12*8($sp) -- ldq $19, 13*8($sp) -- ldq $20, 14*8($sp) -- ldq $21, 15*8($sp) -- ldq $22, 16*8($sp) -- ldq $23, 17*8($sp) -- ldq $24, 18*8($sp) -- ldq $25, 19*8($sp) -- ldq $29, 20*8($sp) -- ldt $f0, 21*8($sp) -- ldt $f1, 22*8($sp) -- ldt $f10, 23*8($sp) -- ldt $f11, 24*8($sp) -- ldt $f12, 25*8($sp) -- ldt $f13, 26*8($sp) -- ldt $f14, 27*8($sp) -- ldt $f15, 28*8($sp) -- ldt $f16, 29*8($sp) -- ldt $f17, 30*8($sp) -- ldt $f18, 31*8($sp) -- ldt $f19, 32*8($sp) -- ldt $f20, 33*8($sp) -- ldt $f21, 34*8($sp) -- ldt $f22, 35*8($sp) -- ldt $f23, 36*8($sp) -- ldt $f24, 37*8($sp) -- ldt $f25, 38*8($sp) -- ldt $f26, 39*8($sp) -- ldt $f27, 40*8($sp) -- ldt $f28, 41*8($sp) -- ldt $f29, 42*8($sp) -- ldt $f30, 43*8($sp) -- /* Flush the Icache after having modified the .plt code. */ -- " #IMB " -- /* Clean up and turn control to the destination */ -- lda $sp, 44*8($sp) -- jmp $31, ($27) -+ .globl " #tramp_name " \n\ -+ .ent " #tramp_name " \n\ -+" #tramp_name ": \n\ -+ lda $sp, -44*8($sp) \n\ -+ .frame $sp, 44*8, $26 \n\ -+ /* Preserve all integer registers that C normally \n\ -+ doesn't. */ \n\ -+ stq $26, 0*8($sp) \n\ -+ stq $0, 1*8($sp) \n\ -+ stq $1, 2*8($sp) \n\ -+ stq $2, 3*8($sp) \n\ -+ stq $3, 4*8($sp) \n\ -+ stq $4, 5*8($sp) \n\ -+ stq $5, 6*8($sp) \n\ -+ stq $6, 7*8($sp) \n\ -+ stq $7, 8*8($sp) \n\ -+ stq $8, 9*8($sp) \n\ -+ stq $16, 10*8($sp) \n\ -+ stq $17, 11*8($sp) \n\ -+ stq $18, 12*8($sp) \n\ -+ stq $19, 13*8($sp) \n\ -+ stq $20, 14*8($sp) \n\ -+ stq $21, 15*8($sp) \n\ -+ stq $22, 16*8($sp) \n\ -+ stq $23, 17*8($sp) \n\ -+ stq $24, 18*8($sp) \n\ -+ stq $25, 19*8($sp) \n\ -+ stq $29, 20*8($sp) \n\ -+ stt $f0, 21*8($sp) \n\ -+ stt $f1, 22*8($sp) \n\ -+ stt $f10, 23*8($sp) \n\ -+ stt $f11, 24*8($sp) \n\ -+ stt $f12, 25*8($sp) \n\ -+ stt $f13, 26*8($sp) \n\ -+ stt $f14, 27*8($sp) \n\ -+ stt $f15, 28*8($sp) \n\ -+ stt $f16, 29*8($sp) \n\ -+ stt $f17, 30*8($sp) \n\ -+ stt $f18, 31*8($sp) \n\ -+ stt $f19, 32*8($sp) \n\ -+ stt $f20, 33*8($sp) \n\ -+ stt $f21, 34*8($sp) \n\ -+ stt $f22, 35*8($sp) \n\ -+ stt $f23, 36*8($sp) \n\ -+ stt $f24, 37*8($sp) \n\ -+ stt $f25, 38*8($sp) \n\ -+ stt $f26, 39*8($sp) \n\ -+ stt $f27, 40*8($sp) \n\ -+ stt $f28, 41*8($sp) \n\ -+ stt $f29, 42*8($sp) \n\ -+ stt $f30, 43*8($sp) \n\ -+ .mask 0x27ff01ff, -44*8 \n\ -+ .fmask 0xfffffc03, -(44-21)*8 \n\ -+ /* Set up our $gp */ \n\ -+ br $gp, .+4 \n\ -+ ldgp $gp, 0($gp) \n\ -+ .prologue 0 \n\ -+ /* Set up the arguments for fixup: */ \n\ -+ /* $16 = link_map out of plt0 */ \n\ -+ /* $17 = offset of reloc entry = ($28 - $27 - 20) /12 * 24 */\n\ -+ /* $18 = return address */ \n\ -+ subq $28, $27, $17 \n\ -+ ldq $16, 8($27) \n\ -+ subq $17, 20, $17 \n\ -+ mov $26, $18 \n\ -+ addq $17, $17, $17 \n\ -+ /* Do the fixup */ \n\ -+ bsr $26, " ASM_ALPHA_NG_SYMBOL_PREFIX #fixup_name "..ng\n\ -+ /* Move the destination address into position. */ \n\ -+ mov $0, $27 \n\ -+ /* Restore program registers. */ \n\ -+ ldq $26, 0*8($sp) \n\ -+ ldq $0, 1*8($sp) \n\ -+ ldq $1, 2*8($sp) \n\ -+ ldq $2, 3*8($sp) \n\ -+ ldq $3, 4*8($sp) \n\ -+ ldq $4, 5*8($sp) \n\ -+ ldq $5, 6*8($sp) \n\ -+ ldq $6, 7*8($sp) \n\ -+ ldq $7, 8*8($sp) \n\ -+ ldq $8, 9*8($sp) \n\ -+ ldq $16, 10*8($sp) \n\ -+ ldq $17, 11*8($sp) \n\ -+ ldq $18, 12*8($sp) \n\ -+ ldq $19, 13*8($sp) \n\ -+ ldq $20, 14*8($sp) \n\ -+ ldq $21, 15*8($sp) \n\ -+ ldq $22, 16*8($sp) \n\ -+ ldq $23, 17*8($sp) \n\ -+ ldq $24, 18*8($sp) \n\ -+ ldq $25, 19*8($sp) \n\ -+ ldq $29, 20*8($sp) \n\ -+ ldt $f0, 21*8($sp) \n\ -+ ldt $f1, 22*8($sp) \n\ -+ ldt $f10, 23*8($sp) \n\ -+ ldt $f11, 24*8($sp) \n\ -+ ldt $f12, 25*8($sp) \n\ -+ ldt $f13, 26*8($sp) \n\ -+ ldt $f14, 27*8($sp) \n\ -+ ldt $f15, 28*8($sp) \n\ -+ ldt $f16, 29*8($sp) \n\ -+ ldt $f17, 30*8($sp) \n\ -+ ldt $f18, 31*8($sp) \n\ -+ ldt $f19, 32*8($sp) \n\ -+ ldt $f20, 33*8($sp) \n\ -+ ldt $f21, 34*8($sp) \n\ -+ ldt $f22, 35*8($sp) \n\ -+ ldt $f23, 36*8($sp) \n\ -+ ldt $f24, 37*8($sp) \n\ -+ ldt $f25, 38*8($sp) \n\ -+ ldt $f26, 39*8($sp) \n\ -+ ldt $f27, 40*8($sp) \n\ -+ ldt $f28, 41*8($sp) \n\ -+ ldt $f29, 42*8($sp) \n\ -+ ldt $f30, 43*8($sp) \n\ -+ /* Flush the Icache after having modified the .plt code. */\n\ -+ " #IMB " \n\ -+ /* Clean up and turn control to the destination */ \n\ -+ lda $sp, 44*8($sp) \n\ -+ jmp $31, ($27) \n\ - .end " #tramp_name) - - #ifndef PROF -@@ -270,85 +271,87 @@ - its return value is the user program's entry point. */ - - #define RTLD_START asm ("\ --.text -- .set at -- .globl _start -- .ent _start --_start: -- br $gp, 0f --0: ldgp $gp, 0($gp) -- .prologue 0 -- /* Pass pointer to argument block to _dl_start. */ -- mov $sp, $16 -- bsr $26, "ASM_ALPHA_NG_SYMBOL_PREFIX"_dl_start..ng -- .end _start -- /* FALLTHRU */ -- .globl _dl_start_user -- .ent _dl_start_user --_dl_start_user: -- .frame $30,0,$31,0 -- .prologue 0 -- /* Save the user entry point address in s0. */ -- mov $0, $9 -- /* Store the highest stack address. */ -- stq $30, __libc_stack_end -- /* See if we were run as a command with the executable file -- name as an extra leading argument. */ -- ldl $1, _dl_skip_args -- bne $1, $fixup_stack --$fixup_stack_ret: -- /* The special initializer gets called with the stack just -- as the application's entry point will see it; it can -- switch stacks if it moves these contents over. */ --" RTLD_START_SPECIAL_INIT " -- /* Call _dl_init(_dl_loaded, argc, argv, envp) to run initializers. */ -- ldq $16, _dl_loaded -- ldq $17, 0($sp) -- lda $18, 8($sp) -- s8addq $17, 8, $19 -- addq $19, $18, $19 -- jsr $26, _dl_init -- /* Pass our finalizer function to the user in $0. */ -- lda $0, _dl_fini -- /* Jump to the user's entry point. */ -- mov $9, $27 -- jmp ($9) --$fixup_stack: -- /* Adjust the stack pointer to skip _dl_skip_args words. This -- involves copying everything down, since the stack pointer must -- always be 16-byte aligned. */ -- ldq $2, 0($sp) -- ldq $5, _dl_argv -- subq $31, $1, $6 -- subq $2, $1, $2 -- s8addq $6, $5, $5 -- mov $sp, $4 -- s8addq $1, $sp, $3 -- stq $2, 0($sp) -- stq $5, _dl_argv -- /* Copy down argv. */ --0: ldq $5, 8($3) -- addq $4, 8, $4 -- addq $3, 8, $3 -- stq $5, 0($4) -- bne $5, 0b -- /* Copy down envp. */ --1: ldq $5, 8($3) -- addq $4, 8, $4 -- addq $3, 8, $3 -- stq $5, 0($4) -- bne $5, 1b -- /* Copy down auxiliary table. */ --2: ldq $5, 8($3) -- ldq $6, 16($3) -- addq $4, 16, $4 -- addq $3, 16, $3 -- stq $5, -8($4) -- stq $6, 0($4) -- bne $5, 2b -- br $fixup_stack_ret -- .end _dl_start_user -- .set noat -+.text \n\ -+ .set at \n\ -+ .globl _start \n\ -+ .ent _start \n\ -+_start: \n\ -+ br $gp, 0f \n\ -+0: ldgp $gp, 0($gp) \n\ -+ .prologue 0 \n\ -+ /* Pass pointer to argument block to _dl_start. */ \n\ -+ mov $sp, $16 \n\ -+ bsr $26, "ASM_ALPHA_NG_SYMBOL_PREFIX"_dl_start..ng \n\ -+ .end _start \n\ -+ /* FALLTHRU */ \n\ -+ .globl _dl_start_user \n\ -+ .ent _dl_start_user \n\ -+_dl_start_user: \n\ -+ .frame $30,0,$31,0 \n\ -+ .prologue 0 \n\ -+ /* Save the user entry point address in s0. */ \n\ -+ mov $0, $9 \n\ -+ /* Store the highest stack address. */ \n\ -+ stq $30, __libc_stack_end \n\ -+ /* See if we were run as a command with the executable \n\ -+ file name as an extra leading argument. */ \n\ -+ ldl $1, _dl_skip_args \n\ -+ bne $1, $fixup_stack \n\ -+$fixup_stack_ret: \n\ -+ /* The special initializer gets called with the stack \n\ -+ just as the application's entry point will see it; \n\ -+ it can switch stacks if it moves these contents \n\ -+ over. */ \n\ -+" RTLD_START_SPECIAL_INIT " \n\ -+ /* Call _dl_init(_dl_loaded, argc, argv, envp) to run \n\ -+ initializers. */ \n\ -+ ldq $16, _dl_loaded \n\ -+ ldq $17, 0($sp) \n\ -+ lda $18, 8($sp) \n\ -+ s8addq $17, 8, $19 \n\ -+ addq $19, $18, $19 \n\ -+ jsr $26, _dl_init \n\ -+ /* Pass our finalizer function to the user in $0. */ \n\ -+ lda $0, _dl_fini \n\ -+ /* Jump to the user's entry point. */ \n\ -+ mov $9, $27 \n\ -+ jmp ($9) \n\ -+$fixup_stack: \n\ -+ /* Adjust the stack pointer to skip _dl_skip_args words.\n\ -+ This involves copying everything down, since the \n\ -+ stack pointer must always be 16-byte aligned. */ \n\ -+ ldq $2, 0($sp) \n\ -+ ldq $5, _dl_argv \n\ -+ subq $31, $1, $6 \n\ -+ subq $2, $1, $2 \n\ -+ s8addq $6, $5, $5 \n\ -+ mov $sp, $4 \n\ -+ s8addq $1, $sp, $3 \n\ -+ stq $2, 0($sp) \n\ -+ stq $5, _dl_argv \n\ -+ /* Copy down argv. */ \n\ -+0: ldq $5, 8($3) \n\ -+ addq $4, 8, $4 \n\ -+ addq $3, 8, $3 \n\ -+ stq $5, 0($4) \n\ -+ bne $5, 0b \n\ -+ /* Copy down envp. */ \n\ -+1: ldq $5, 8($3) \n\ -+ addq $4, 8, $4 \n\ -+ addq $3, 8, $3 \n\ -+ stq $5, 0($4) \n\ -+ bne $5, 1b \n\ -+ /* Copy down auxiliary table. */ \n\ -+2: ldq $5, 8($3) \n\ -+ ldq $6, 16($3) \n\ -+ addq $4, 16, $4 \n\ -+ addq $3, 16, $3 \n\ -+ stq $5, -8($4) \n\ -+ stq $6, 0($4) \n\ -+ bne $5, 2b \n\ -+ br $fixup_stack_ret \n\ -+ .end _dl_start_user \n\ -+ .set noat \n\ - .previous"); - - #ifndef RTLD_START_SPECIAL_INIT diff --git a/packages/glibc/glibc-2.2.5/dl-machine-arm.patch b/packages/glibc/glibc-2.2.5/dl-machine-arm.patch deleted file mode 100644 index 7684b43b39..0000000000 --- a/packages/glibc/glibc-2.2.5/dl-machine-arm.patch +++ /dev/null @@ -1,383 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/arm/dl-machine.h~dl-machine-arm.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/arm/dl-machine.h 2004-09-03 19:00:37.000000000 -0500 -@@ -121,14 +121,15 @@ - and then redirect to the address it returns. */ - // macro for handling PIC situation.... - #ifdef PIC --#define CALL_ROUTINE(x) " ldr sl,0f -- add sl, pc, sl --1: ldr r2, 2f -- mov lr, pc -- add pc, sl, r2 -- b 3f --0: .word _GLOBAL_OFFSET_TABLE_ - 1b - 4 --2: .word " #x "(GOTOFF) -+#define CALL_ROUTINE(x) "\ -+ ldr sl,0f\n\ -+ add sl, pc, sl\n\ -+1: ldr r2, 2f\n\ -+ mov lr, pc\n\ -+ add pc, sl, r2\n\ -+ b 3f\n\ -+0: .word _GLOBAL_OFFSET_TABLE_ - 1b - 4\n\ -+2: .word " #x "(GOTOFF)\n\ - 3: " - #else - #define CALL_ROUTINE(x) " bl " #x -@@ -136,114 +137,114 @@ - - #ifndef PROF - # define ELF_MACHINE_RUNTIME_TRAMPOLINE asm ("\ -- .text -- .globl _dl_runtime_resolve -- .type _dl_runtime_resolve, #function -- .align 2 --_dl_runtime_resolve: -- @ we get called with -- @ stack[0] contains the return address from this call -- @ ip contains &GOT[n+3] (pointer to function) -- @ lr points to &GOT[2] -- -- @ save almost everything; lr is already on the stack -- stmdb sp!,{r0-r3,sl,fp} -- -- @ prepare to call fixup() -- @ change &GOT[n+3] into 8*n NOTE: reloc are 8 bytes each -- sub r1, ip, lr -- sub r1, r1, #4 -- add r1, r1, r1 -- -- @ get pointer to linker struct -- ldr r0, [lr, #-4] -- -- @ call fixup routine -- " CALL_ROUTINE(fixup) " -- -- @ save the return -- mov ip, r0 -- -- @ restore the stack -- ldmia sp!,{r0-r3,sl,fp,lr} -- -- @ jump to the newly found address -- mov pc, ip -- -- .size _dl_runtime_resolve, .-_dl_runtime_resolve -- -- .globl _dl_runtime_profile -- .type _dl_runtime_profile, #function -- .align 2 --_dl_runtime_profile: -- @ save almost everything; lr is already on the stack -- stmdb sp!,{r0-r3,sl,fp} -- -- @ prepare to call fixup() -- @ change &GOT[n+3] into 8*n NOTE: reloc are 8 bytes each -- sub r1, ip, lr -- sub r1, r1, #4 -- add r1, r1, r1 -- -- @ get pointer to linker struct -- ldr r0, [lr, #-4] -- -- @ call profiling fixup routine -- " CALL_ROUTINE(profile_fixup) " -- -- @ save the return -- mov ip, r0 -- -- @ restore the stack -- ldmia sp!,{r0-r3,sl,fp,lr} -- -- @ jump to the newly found address -- mov pc, ip -- -- .size _dl_runtime_resolve, .-_dl_runtime_resolve -- .previous -+ .text\n\ -+ .globl _dl_runtime_resolve\n\ -+ .type _dl_runtime_resolve, #function\n\ -+ .align 2\n\ -+_dl_runtime_resolve:\n\ -+ @ we get called with\n\ -+ @ stack[0] contains the return address from this call\n\ -+ @ ip contains &GOT[n+3] (pointer to function)\n\ -+ @ lr points to &GOT[2]\n\ -+\n\ -+ @ save almost everything; lr is already on the stack\n\ -+ stmdb sp!,{r0-r3,sl,fp}\n\ -+\n\ -+ @ prepare to call fixup()\n\ -+ @ change &GOT[n+3] into 8*n NOTE: reloc are 8 bytes each\n\ -+ sub r1, ip, lr\n\ -+ sub r1, r1, #4\n\ -+ add r1, r1, r1\n\ -+\n\ -+ @ get pointer to linker struct\n\ -+ ldr r0, [lr, #-4]\n\ -+\n\ -+ @ call fixup routine\n\ -+ " CALL_ROUTINE(fixup) "\n\ -+\n\ -+ @ save the return\n\ -+ mov ip, r0\n\ -+\n\ -+ @ restore the stack\n\ -+ ldmia sp!,{r0-r3,sl,fp,lr}\n\ -+\n\ -+ @ jump to the newly found address\n\ -+ mov pc, ip\n\ -+\n\ -+ .size _dl_runtime_resolve, .-_dl_runtime_resolve\n\ -+\n\ -+ .globl _dl_runtime_profile\n\ -+ .type _dl_runtime_profile, #function\n\ -+ .align 2\n\ -+_dl_runtime_profile:\n\ -+ @ save almost everything; lr is already on the stack\n\ -+ stmdb sp!,{r0-r3,sl,fp}\n\ -+\n\ -+ @ prepare to call fixup()\n\ -+ @ change &GOT[n+3] into 8*n NOTE: reloc are 8 bytes each\n\ -+ sub r1, ip, lr\n\ -+ sub r1, r1, #4\n\ -+ add r1, r1, r1\n\ -+\n\ -+ @ get pointer to linker struct\n\ -+ ldr r0, [lr, #-4]\n\ -+\n\ -+ @ call profiling fixup routine\n\ -+ " CALL_ROUTINE(profile_fixup) "\n\ -+\n\ -+ @ save the return\n\ -+ mov ip, r0\n\ -+\n\ -+ @ restore the stack\n\ -+ ldmia sp!,{r0-r3,sl,fp,lr}\n\ -+\n\ -+ @ jump to the newly found address\n\ -+ mov pc, ip\n\ -+\n\ -+ .size _dl_runtime_resolve, .-_dl_runtime_resolve\n\ -+ .previous\n\ - "); - #else // PROF - # define ELF_MACHINE_RUNTIME_TRAMPOLINE asm ("\ -- .text -- .globl _dl_runtime_resolve -- .globl _dl_runtime_profile -- .type _dl_runtime_resolve, #function -- .type _dl_runtime_profile, #function -- .align 2 --_dl_runtime_resolve: --_dl_runtime_profile: -- @ we get called with -- @ stack[0] contains the return address from this call -- @ ip contains &GOT[n+3] (pointer to function) -- @ lr points to &GOT[2] -- -- @ save almost everything; return add is already on the stack -- stmdb sp!,{r0-r3,sl,fp} -- -- @ prepare to call fixup() -- @ change &GOT[n+3] into 8*n NOTE: reloc are 8 bytes each -- sub r1, ip, lr -- sub r1, r1, #4 -- add r1, r1, r1 -- -- @ get pointer to linker struct -- ldr r0, [lr, #-4] -- -- @ call profiling fixup routine -- " CALL_ROUTINE(fixup) " -- -- @ save the return -- mov ip, r0 -- -- @ restore the stack -- ldmia sp!,{r0-r3,sl,fp,lr} -- -- @ jump to the newly found address -- mov pc, ip -- -- .size _dl_runtime_profile, .-_dl_runtime_profile -- .previous -+ .text\n\ -+ .globl _dl_runtime_resolve\n\ -+ .globl _dl_runtime_profile\n\ -+ .type _dl_runtime_resolve, #function\n\ -+ .type _dl_runtime_profile, #function\n\ -+ .align 2\n\ -+_dl_runtime_resolve:\n\ -+_dl_runtime_profile:\n\ -+ @ we get called with\n\ -+ @ stack[0] contains the return address from this call\n\ -+ @ ip contains &GOT[n+3] (pointer to function)\n\ -+ @ lr points to &GOT[2]\n\ -+\n\ -+ @ save almost everything; return add is already on the stack\n\ -+ stmdb sp!,{r0-r3,sl,fp}\n\ -+\n\ -+ @ prepare to call fixup()\n\ -+ @ change &GOT[n+3] into 8*n NOTE: reloc are 8 bytes each\n\ -+ sub r1, ip, lr\n\ -+ sub r1, r1, #4\n\ -+ add r1, r1, r1\n\ -+\n\ -+ @ get pointer to linker struct\n\ -+ ldr r0, [lr, #-4]\n\ -+\n\ -+ @ call profiling fixup routine\n\ -+ " CALL_ROUTINE(fixup) "\n\ -+\n\ -+ @ save the return\n\ -+ mov ip, r0\n\ -+\n\ -+ @ restore the stack\n\ -+ ldmia sp!,{r0-r3,sl,fp,lr}\n\ -+\n\ -+ @ jump to the newly found address\n\ -+ mov pc, ip\n\ -+\n\ -+ .size _dl_runtime_profile, .-_dl_runtime_profile\n\ -+ .previous\n\ - "); - #endif //PROF - -@@ -256,70 +257,70 @@ - its return value is the user program's entry point. */ - - #define RTLD_START asm ("\ --.text --.globl _start --.globl _dl_start_user --_start: -- @ at start time, all the args are on the stack -- mov r0, sp -- bl _dl_start -- @ returns user entry point in r0 --_dl_start_user: -- mov r6, r0 -- @ we are PIC code, so get global offset table -- ldr sl, .L_GET_GOT -- add sl, pc, sl --.L_GOT_GOT: -- @ Store the highest stack address -- ldr r1, .L_STACK_END -- ldr r1, [sl, r1] -- str sp, [r1] -- @ See if we were run as a command with the executable file -- @ name as an extra leading argument. -- ldr r4, .L_SKIP_ARGS -- ldr r4, [sl, r4] -- @ get the original arg count -- ldr r1, [sp] -- @ subtract _dl_skip_args from it -- sub r1, r1, r4 -- @ adjust the stack pointer to skip them -- add sp, sp, r4, lsl #2 -- @ get the argv address -- add r2, sp, #4 -- @ store the new argc in the new stack location -- str r1, [sp] -- @ compute envp -- add r3, r2, r1, lsl #2 -- add r3, r3, #4 -- -- @ now we call _dl_init -- ldr r0, .L_LOADED -- ldr r0, [sl, r0] -- ldr r0, [r0] -- @ call _dl_init -- bl _dl_init(PLT) -- @ clear the startup flag -- ldr r2, .L_STARTUP_FLAG -- ldr r1, [sl, r2] -- mov r0, #0 -- str r0, [r1] -- @ load the finalizer function -- ldr r0, .L_FINI_PROC -- ldr r0, [sl, r0] -- @ jump to the user_s entry point -- mov pc, r6 --.L_GET_GOT: -+.text\n\ -+.globl _start\n\ -+.globl _dl_start_user\n\ -+_start:\n\ -+ @ at start time, all the args are on the stack\n\ -+ mov r0, sp\n\ -+ bl _dl_start\n\ -+ @ returns user entry point in r0\n\ -+_dl_start_user:\n\ -+ mov r6, r0\n\ -+ @ we are PIC code, so get global offset table\n\ -+ ldr sl, .L_GET_GOT\n\ -+ add sl, pc, sl\n\ -+.L_GOT_GOT:\n\ -+ @ Store the highest stack address\n\ -+ ldr r1, .L_STACK_END\n\ -+ ldr r1, [sl, r1]\n\ -+ str sp, [r1]\n\ -+ @ See if we were run as a command with the executable file\n\ -+ @ name as an extra leading argument.\n\ -+ ldr r4, .L_SKIP_ARGS\n\ -+ ldr r4, [sl, r4]\n\ -+ @ get the original arg count\n\ -+ ldr r1, [sp]\n\ -+ @ subtract _dl_skip_args from it\n\ -+ sub r1, r1, r4\n\ -+ @ adjust the stack pointer to skip them\n\ -+ add sp, sp, r4, lsl #2\n\ -+ @ get the argv address\n\ -+ add r2, sp, #4\n\ -+ @ store the new argc in the new stack location\n\ -+ str r1, [sp]\n\ -+ @ compute envp\n\ -+ add r3, r2, r1, lsl #2\n\ -+ add r3, r3, #4\n\ -+\n\ -+ @ now we call _dl_init\n\ -+ ldr r0, .L_LOADED\n\ -+ ldr r0, [sl, r0]\n\ -+ ldr r0, [r0]\n\ -+ @ call _dl_init\n\ -+ bl _dl_init(PLT)\n\ -+ @ clear the startup flag\n\ -+ ldr r2, .L_STARTUP_FLAG\n\ -+ ldr r1, [sl, r2]\n\ -+ mov r0, #0\n\ -+ str r0, [r1]\n\ -+ @ load the finalizer function\n\ -+ ldr r0, .L_FINI_PROC\n\ -+ ldr r0, [sl, r0]\n\ -+ @ jump to the user_s entry point\n\ -+ mov pc, r6\n\ -+.L_GET_GOT:\n\ - .word _GLOBAL_OFFSET_TABLE_ - .L_GOT_GOT - 4 \n\ - .L_SKIP_ARGS: \n\ - .word _dl_skip_args(GOTOFF) \n\ --.L_STARTUP_FLAG: -- .word _dl_starting_up(GOT) --.L_FINI_PROC: -- .word _dl_fini(GOT) --.L_STACK_END: -- .word __libc_stack_end(GOT) --.L_LOADED: -- .word _dl_loaded(GOT) -+.L_STARTUP_FLAG:\n\ -+ .word _dl_starting_up(GOT)\n\ -+.L_FINI_PROC:\n\ -+ .word _dl_fini(GOT)\n\ -+.L_STACK_END:\n\ -+ .word __libc_stack_end(GOT)\n\ -+.L_LOADED:\n\ -+ .word _dl_loaded(GOT)\n\ - .previous\n\ - "); - diff --git a/packages/glibc/glibc-2.2.5/dl-machine-m68k.patch b/packages/glibc/glibc-2.2.5/dl-machine-m68k.patch deleted file mode 100644 index 41a6f3a573..0000000000 --- a/packages/glibc/glibc-2.2.5/dl-machine-m68k.patch +++ /dev/null @@ -1,171 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/m68k/dl-machine.h~dl-machine-m68k.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/m68k/dl-machine.h 2004-09-03 19:00:37.000000000 -0500 -@@ -1,5 +1,5 @@ - /* Machine-dependent ELF dynamic relocation inline functions. m68k version. -- Copyright (C) 1996,1997,1998,1999,2000,2001 Free Software Foundation, Inc. -+ Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -85,11 +85,11 @@ - { - got[2] = (Elf32_Addr) &_dl_runtime_profile; - -- if (_dl_name_match_p (_dl_profile, l)) -+ if (_dl_name_match_p (GL(dl_profile), l)) - { - /* This is the object we are looking for. Say that we really - want profiling and the timers are started. */ -- _dl_profile_map = l; -+ GL(dl_profile_map) = l; - } - } - else -@@ -104,22 +104,22 @@ - /* This code is used in dl-runtime.c to call the `fixup' function - and then redirect to the address it returns. */ - #define TRAMPOLINE_TEMPLATE(tramp_name, fixup_name) \ --"| Trampoline for " #fixup_name " -- .globl " #tramp_name " -- .type " #tramp_name ", @function --" #tramp_name ": -- | Save %a0 (struct return address) and %a1. -- move.l %a0, -(%sp) -- move.l %a1, -(%sp) -- | Call the real address resolver. -- jbsr " #fixup_name " -- | Restore register %a0 and %a1. -- move.l (%sp)+, %a1 -- move.l (%sp)+, %a0 -- | Pop parameters -- addq.l #8, %sp -- | Call real function. -- jmp (%d0) -+"| Trampoline for " #fixup_name "\n\ -+ .globl " #tramp_name "\n\ -+ .type " #tramp_name ", @function\n\ -+" #tramp_name ":\n\ -+ | Save %a0 (struct return address) and %a1.\n\ -+ move.l %a0, -(%sp)\n\ -+ move.l %a1, -(%sp)\n\ -+ | Call the real address resolver.\n\ -+ jbsr " #fixup_name "\n\ -+ | Restore register %a0 and %a1.\n\ -+ move.l (%sp)+, %a1\n\ -+ move.l (%sp)+, %a0\n\ -+ | Pop parameters\n\ -+ addq.l #8, %sp\n\ -+ | Call real function.\n\ -+ jmp (%d0)\n\ - .size " #tramp_name ", . - " #tramp_name "\n" - #ifndef PROF - #define ELF_MACHINE_RUNTIME_TRAMPOLINE \ -@@ -143,50 +143,50 @@ - its return value is the user program's entry point. */ - - #define RTLD_START asm ("\ -- .text -- .globl _start -- .type _start,@function --_start: -- move.l %sp, -(%sp) -- jbsr _dl_start -- addq.l #4, %sp -- /* FALLTHRU */ -- -- .globl _dl_start_user -- .type _dl_start_user,@function --_dl_start_user: -- | Save the user entry point address in %a4. -- move.l %d0, %a4 -- | Point %a5 at the GOT. -- lea _GLOBAL_OFFSET_TABLE_@GOTPC(%pc), %a5 -- | Remember the highest stack address. -- move.l %sp, ([__libc_stack_end@GOT.w, %a5]) -- | See if we were run as a command with the executable file -- | name as an extra leading argument. -- move.l ([_dl_skip_args@GOT.w, %a5]), %d0 -- | Pop the original argument count -- move.l (%sp)+, %d1 -- | Subtract _dl_skip_args from it. -- sub.l %d0, %d1 -- | Adjust the stack pointer to skip _dl_skip_args words. -- lea (%sp, %d0*4), %sp -- | Push back the modified argument count. -- move.l %d1, -(%sp) -- # Call _dl_init (struct link_map *main_map, int argc, char **argv, char **env) -- pea 8(%sp, %d1*4) -- pea 8(%sp) -- move.l %d1, -(%sp) -- move.l ([_dl_loaded@GOT.w, %a5]), -(%sp) -- jbsr _dl_init@PLTPC -- addq.l #8, %sp -- addq.l #8, %sp -- | Pass our finalizer function to the user in %a1. -- move.l _dl_fini@GOT.w(%a5), %a1 -- | Initialize %fp with the stack pointer. -- move.l %sp, %fp -- | Jump to the user's entry point. -- jmp (%a4) -- .size _dl_start_user, . - _dl_start_user -+ .text\n\ -+ .globl _start\n\ -+ .type _start,@function\n\ -+_start:\n\ -+ move.l %sp, -(%sp)\n\ -+ jbsr _dl_start\n\ -+ addq.l #4, %sp\n\ -+ /* FALLTHRU */\n\ -+\n\ -+ .globl _dl_start_user\n\ -+ .type _dl_start_user,@function\n\ -+_dl_start_user:\n\ -+ | Save the user entry point address in %a4.\n\ -+ move.l %d0, %a4\n\ -+ | Point %a5 at the GOT.\n\ -+ lea _GLOBAL_OFFSET_TABLE_@GOTPC(%pc), %a5\n\ -+ | Remember the highest stack address.\n\ -+ move.l %sp, ([__libc_stack_end@GOT.w, %a5])\n\ -+ | See if we were run as a command with the executable file\n\ -+ | name as an extra leading argument.\n\ -+ move.l ([_dl_skip_args@GOT.w, %a5]), %d0\n\ -+ | Pop the original argument count\n\ -+ move.l (%sp)+, %d1\n\ -+ | Subtract _dl_skip_args from it.\n\ -+ sub.l %d0, %d1\n\ -+ | Adjust the stack pointer to skip _dl_skip_args words.\n\ -+ lea (%sp, %d0*4), %sp\n\ -+ | Push back the modified argument count.\n\ -+ move.l %d1, -(%sp)\n\ -+ # Call _dl_init (struct link_map *main_map, int argc, char **argv, char **env)\n\ -+ pea 8(%sp, %d1*4)\n\ -+ pea 8(%sp)\n\ -+ move.l %d1, -(%sp)\n\ -+ move.l ([_rtld_global@GOT.w, %a5]), -(%sp)\n\ -+ jbsr _dl_init@PLTPC\n\ -+ addq.l #8, %sp\n\ -+ addq.l #8, %sp\n\ -+ | Pass our finalizer function to the user in %a1.\n\ -+ move.l _dl_fini@GOT.w(%a5), %a1\n\ -+ | Initialize %fp with the stack pointer.\n\ -+ move.l %sp, %fp\n\ -+ | Jump to the user's entry point.\n\ -+ jmp (%a4)\n\ -+ .size _dl_start_user, . - _dl_start_user\n\ - .previous"); - - /* ELF_RTYPE_CLASS_PLT iff TYPE describes relocation of a PLT entry, so -@@ -251,7 +251,7 @@ - found. */ - break; - if (sym->st_size > refsym->st_size -- || (sym->st_size < refsym->st_size && _dl_verbose)) -+ || (sym->st_size < refsym->st_size && GL(dl_verbose))) - { - extern char **_dl_argv; - const char *strtab; diff --git a/packages/glibc/glibc-2.2.5/dl-machine-mips.patch b/packages/glibc/glibc-2.2.5/dl-machine-mips.patch deleted file mode 100644 index b9c7ad8f1e..0000000000 --- a/packages/glibc/glibc-2.2.5/dl-machine-mips.patch +++ /dev/null @@ -1,16 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/mips/dl-machine.h~dl-machine-mips.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/mips/dl-machine.h 2004-09-03 19:00:37.000000000 -0500 -@@ -450,7 +450,7 @@ - addu $7, $7, 4\n\ - subu $29, 16\n\ - # Call the function to run the initializers.\n\ -- jal _dl_init -+ jal _dl_init_internal\n\ - addiu $29, 16\n\ - # Pass our finalizer function to the user in $2 as per ELF ABI.\n\ - la $2, _dl_fini\n\ diff --git a/packages/glibc/glibc-2.2.5/dl-machine-sh.patch b/packages/glibc/glibc-2.2.5/dl-machine-sh.patch deleted file mode 100644 index c5f84b42a4..0000000000 --- a/packages/glibc/glibc-2.2.5/dl-machine-sh.patch +++ /dev/null @@ -1,30 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/sh/dl-machine.h~dl-machine-sh.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/sh/dl-machine.h 2004-09-03 19:00:37.000000000 -0500 -@@ -53,16 +53,16 @@ - elf_machine_load_address (void) - { - Elf32_Addr addr; -- asm ("mov.l .L1,r0\n\ -- mov.l .L3,r2\n\ -+ asm ("mov.l 1f,r0\n\ -+ mov.l 3f,r2\n\ - add r12,r2\n\ - mov.l @(r0,r12),r0\n\ -- bra .L2\n\ -+ bra 2f\n\ - sub r0,r2\n\ - .align 2\n\ -- .L1: .long _dl_start@GOT\n\ -- .L3: .long _dl_start@GOTOFF\n\ -- .L2: mov r2,%0" -+ 1: .long _dl_start@GOT\n\ -+ 3: .long _dl_start@GOTOFF\n\ -+ 2: mov r2,%0" - : "=r" (addr) : : "r0", "r1", "r2"); - return addr; - } diff --git a/packages/glibc/glibc-2.2.5/dl-machine-sparc.patch b/packages/glibc/glibc-2.2.5/dl-machine-sparc.patch deleted file mode 100644 index 910e18035d..0000000000 --- a/packages/glibc/glibc-2.2.5/dl-machine-sparc.patch +++ /dev/null @@ -1,235 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/sparc/sparc32/dl-machine.h~dl-machine-sparc.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/sparc/sparc32/dl-machine.h 2004-09-03 19:00:37.000000000 -0500 -@@ -148,23 +148,23 @@ - and then redirect to the address it returns. */ - #define TRAMPOLINE_TEMPLATE(tramp_name, fixup_name) \ - asm ( "\ -- .text -- .globl " #tramp_name " -- .type " #tramp_name ", @function -- .align 32 --" #tramp_name ": -- /* Set up the arguments to fixup -- -- %o0 = link_map out of plt0 -- %o1 = offset of reloc entry -- %o2 = return address */ -- ld [%o7 + 8], %o0 -- srl %g1, 10, %o1 -- mov %i7, %o2 -- call " #fixup_name " -- sub %o1, 4*12, %o1 -- jmp %o0 -- restore -- .size " #tramp_name ", . - " #tramp_name " -+ .text\n\ -+ .globl " #tramp_name "\n\ -+ .type " #tramp_name ", @function\n\ -+ .align 32\n\ -+" #tramp_name ":\n\ -+ /* Set up the arguments to fixup --\n\ -+ %o0 = link_map out of plt0\n\ -+ %o1 = offset of reloc entry\n\ -+ %o2 = return address */\n\ -+ ld [%o7 + 8], %o0\n\ -+ srl %g1, 10, %o1\n\ -+ mov %i7, %o2\n\ -+ call " #fixup_name "\n\ -+ sub %o1, 4*12, %o1\n\ -+ jmp %o0\n\ -+ restore\n\ -+ .size " #tramp_name ", . - " #tramp_name "\n\ - .previous") - - #ifndef PROF -@@ -199,96 +199,96 @@ - its return value is the user program's entry point. */ - - #define RTLD_START __asm__ ("\ -- .text -- .globl _start -- .type _start, @function -- .align 32 --_start: -- /* Allocate space for functions to drop their arguments. */ -- sub %sp, 6*4, %sp -- /* Pass pointer to argument block to _dl_start. */ -- call _dl_start -- add %sp, 22*4, %o0 -- /* FALTHRU */ -- .globl _dl_start_user -- .type _dl_start_user, @function --_dl_start_user: -- /* Load the PIC register. */ --1: call 2f -- sethi %hi(_GLOBAL_OFFSET_TABLE_-(1b-.)), %l7 --2: or %l7, %lo(_GLOBAL_OFFSET_TABLE_-(1b-.)), %l7 -- add %l7, %o7, %l7 -- /* Save the user entry point address in %l0 */ -- mov %o0, %l0 -- /* Store the highest stack address. */ -- sethi %hi(__libc_stack_end), %g2 -- or %g2, %lo(__libc_stack_end), %g2 -- ld [%l7 + %g2], %l1 -- sethi %hi(_dl_skip_args), %g2 -- add %sp, 6*4, %l2 -- or %g2, %lo(_dl_skip_args), %g2 -- st %l2, [%l1] -- /* See if we were run as a command with the executable file name as an -- extra leading argument. If so, adjust the contents of the stack. */ -- ld [%l7+%g2], %i0 -- ld [%i0], %i0 -- tst %i0 -- beq 3f -- ld [%sp+22*4], %i5 /* load argc */ -- /* Find out how far to shift. */ -- sethi %hi(_dl_argv), %l3 -- or %l3, %lo(_dl_argv), %l3 -- ld [%l7+%l3], %l3 -- sub %i5, %i0, %i5 -- ld [%l3], %l4 -- sll %i0, 2, %i2 -- st %i5, [%sp+22*4] -- sub %l4, %i2, %l4 -- add %sp, 23*4, %i1 -- add %i1, %i2, %i2 -- st %l4, [%l3] -- /* Copy down argv */ --21: ld [%i2], %i3 -- add %i2, 4, %i2 -- tst %i3 -- st %i3, [%i1] -- bne 21b -- add %i1, 4, %i1 -- /* Copy down env */ --22: ld [%i2], %i3 -- add %i2, 4, %i2 -- tst %i3 -- st %i3, [%i1] -- bne 22b -- add %i1, 4, %i1 -- /* Copy down auxiliary table. */ --23: ld [%i2], %i3 -- ld [%i2+4], %i4 -- add %i2, 8, %i2 -- tst %i3 -- st %i3, [%i1] -- st %i4, [%i1+4] -- bne 23b -- add %i1, 8, %i1 -- /* %o0 = _dl_loaded, %o1 = argc, %o2 = argv, %o3 = envp. */ --3: sethi %hi(_dl_loaded), %o0 -- add %sp, 23*4, %o2 -- orcc %o0, %lo(_dl_loaded), %o0 -- sll %i5, 2, %o3 -- ld [%l7+%o0], %o0 -- add %o3, 4, %o3 -- mov %i5, %o1 -- add %o2, %o3, %o3 -- call _dl_init -- ld [%o0], %o0 -- /* Pass our finalizer function to the user in %g1. */ -- sethi %hi(_dl_fini), %g1 -- or %g1, %lo(_dl_fini), %g1 -- ld [%l7+%g1], %g1 -- /* Jump to the user's entry point and deallocate the extra stack we got. */ -- jmp %l0 -- add %sp, 6*4, %sp -- .size _dl_start_user, . - _dl_start_user -+ .text\n\ -+ .globl _start\n\ -+ .type _start, @function\n\ -+ .align 32\n\ -+_start:\n\ -+ /* Allocate space for functions to drop their arguments. */\n\ -+ sub %sp, 6*4, %sp\n\ -+ /* Pass pointer to argument block to _dl_start. */\n\ -+ call _dl_start\n\ -+ add %sp, 22*4, %o0\n\ -+ /* FALTHRU */\n\ -+ .globl _dl_start_user\n\ -+ .type _dl_start_user, @function\n\ -+_dl_start_user:\n\ -+ /* Load the PIC register. */\n\ -+1: call 2f\n\ -+ sethi %hi(_GLOBAL_OFFSET_TABLE_-(1b-.)), %l7\n\ -+2: or %l7, %lo(_GLOBAL_OFFSET_TABLE_-(1b-.)), %l7\n\ -+ add %l7, %o7, %l7\n\ -+ /* Save the user entry point address in %l0 */\n\ -+ mov %o0, %l0\n\ -+ /* Store the highest stack address. */\n\ -+ sethi %hi(__libc_stack_end), %g2\n\ -+ or %g2, %lo(__libc_stack_end), %g2\n\ -+ ld [%l7 + %g2], %l1\n\ -+ sethi %hi(_dl_skip_args), %g2\n\ -+ add %sp, 6*4, %l2\n\ -+ or %g2, %lo(_dl_skip_args), %g2\n\ -+ st %l2, [%l1]\n\ -+ /* See if we were run as a command with the executable file name as an\n\ -+ extra leading argument. If so, adjust the contents of the stack. */\n\ -+ ld [%l7+%g2], %i0\n\ -+ ld [%i0], %i0\n\ -+ tst %i0\n\ -+ beq 3f\n\ -+ ld [%sp+22*4], %i5 /* load argc */\n\ -+ /* Find out how far to shift. */\n\ -+ sethi %hi(_dl_argv), %l3\n\ -+ or %l3, %lo(_dl_argv), %l3\n\ -+ ld [%l7+%l3], %l3\n\ -+ sub %i5, %i0, %i5\n\ -+ ld [%l3], %l4\n\ -+ sll %i0, 2, %i2\n\ -+ st %i5, [%sp+22*4]\n\ -+ sub %l4, %i2, %l4\n\ -+ add %sp, 23*4, %i1\n\ -+ add %i1, %i2, %i2\n\ -+ st %l4, [%l3]\n\ -+ /* Copy down argv */\n\ -+21: ld [%i2], %i3\n\ -+ add %i2, 4, %i2\n\ -+ tst %i3\n\ -+ st %i3, [%i1]\n\ -+ bne 21b\n\ -+ add %i1, 4, %i1\n\ -+ /* Copy down env */\n\ -+22: ld [%i2], %i3\n\ -+ add %i2, 4, %i2\n\ -+ tst %i3\n\ -+ st %i3, [%i1]\n\ -+ bne 22b\n\ -+ add %i1, 4, %i1\n\ -+ /* Copy down auxiliary table. */\n\ -+23: ld [%i2], %i3\n\ -+ ld [%i2+4], %i4\n\ -+ add %i2, 8, %i2\n\ -+ tst %i3\n\ -+ st %i3, [%i1]\n\ -+ st %i4, [%i1+4]\n\ -+ bne 23b\n\ -+ add %i1, 8, %i1\n\ -+ /* %o0 = _dl_loaded, %o1 = argc, %o2 = argv, %o3 = envp. */\n\ -+3: sethi %hi(_dl_loaded), %o0\n\ -+ add %sp, 23*4, %o2\n\ -+ orcc %o0, %lo(_dl_loaded), %o0\n\ -+ sll %i5, 2, %o3\n\ -+ ld [%l7+%o0], %o0\n\ -+ add %o3, 4, %o3\n\ -+ mov %i5, %o1\n\ -+ add %o2, %o3, %o3\n\ -+ call _dl_init\n\ -+ ld [%o0], %o0\n\ -+ /* Pass our finalizer function to the user in %g1. */\n\ -+ sethi %hi(_dl_fini), %g1\n\ -+ or %g1, %lo(_dl_fini), %g1\n\ -+ ld [%l7+%g1], %g1\n\ -+ /* Jump to the user's entry point and deallocate the extra stack we got. */\n\ -+ jmp %l0\n\ -+ add %sp, 6*4, %sp\n\ -+ .size _dl_start_user, . - _dl_start_user\n\ - .previous"); - - static inline Elf32_Addr diff --git a/packages/glibc/glibc-2.2.5/errlist-1.9.patch b/packages/glibc/glibc-2.2.5/errlist-1.9.patch deleted file mode 100644 index ced22eecf9..0000000000 --- a/packages/glibc/glibc-2.2.5/errlist-1.9.patch +++ /dev/null @@ -1,25 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/unix/sysv/linux/errlist.c~errlist-1.9.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/unix/sysv/linux/errlist.c 2004-09-03 19:00:37.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1998, 2000 Free Software Foundation, Inc. -+/* Copyright (C) 1998, 2000, 2002 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -38,10 +38,9 @@ - const int __old_sys_nerr = OLD_ERRLIST_SIZE; - - strong_alias (__old_sys_nerr, _old_sys_nerr); --weak_alias (__old_sys_nerr, _old_sys_nerr) - compat_symbol (libc, __old_sys_nerr, _sys_nerr, GLIBC_2_0); - compat_symbol (libc, _old_sys_nerr, sys_nerr, GLIBC_2_0); --weak_alias (__old_sys_errlist, _old_sys_errlist); -+strong_alias (__old_sys_errlist, _old_sys_errlist); - compat_symbol (libc, __old_sys_errlist, _sys_errlist, GLIBC_2_0); - compat_symbol (libc, _old_sys_errlist, sys_errlist, GLIBC_2_0); - #endif diff --git a/packages/glibc/glibc-2.2.5/errlist-arm.patch b/packages/glibc/glibc-2.2.5/errlist-arm.patch deleted file mode 100644 index a2afbd036e..0000000000 --- a/packages/glibc/glibc-2.2.5/errlist-arm.patch +++ /dev/null @@ -1,25 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/unix/sysv/linux/arm/errlist.c~errlist-arm.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/unix/sysv/linux/arm/errlist.c 2004-09-03 19:00:37.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1998, 2000 Free Software Foundation, Inc. -+/* Copyright (C) 1998, 2000, 2002 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -38,10 +38,9 @@ - const int __old_sys_nerr = OLD_ERRLIST_SIZE; - - strong_alias (__old_sys_nerr, _old_sys_nerr); --weak_alias (__old_sys_nerr, _old_sys_nerr) - compat_symbol (libc, __old_sys_nerr, _sys_nerr, GLIBC_2_0); - compat_symbol (libc, _old_sys_nerr, sys_nerr, GLIBC_2_0); --weak_alias (__old_sys_errlist, _old_sys_errlist); -+strong_alias (__old_sys_errlist, _old_sys_errlist); - compat_symbol (libc, __old_sys_errlist, _sys_errlist, GLIBC_2_0); - compat_symbol (libc, _old_sys_errlist, sys_errlist, GLIBC_2_0); - #endif diff --git a/packages/glibc/glibc-2.2.5/etc/ld.so.conf b/packages/glibc/glibc-2.2.5/etc/ld.so.conf deleted file mode 100644 index 46e06d3f0a..0000000000 --- a/packages/glibc/glibc-2.2.5/etc/ld.so.conf +++ /dev/null @@ -1,2 +0,0 @@ -/usr/local/lib - diff --git a/packages/glibc/glibc-2.2.5/fhs-linux-paths.patch b/packages/glibc/glibc-2.2.5/fhs-linux-paths.patch deleted file mode 100644 index 9ba033fd8d..0000000000 --- a/packages/glibc/glibc-2.2.5/fhs-linux-paths.patch +++ /dev/null @@ -1,16 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/unix/sysv/linux/paths.h~fhs-linux-paths.patch 2000-11-15 17:06:47.000000000 -0600 -+++ glibc-2.2.5/sysdeps/unix/sysv/linux/paths.h 2004-09-03 19:00:39.000000000 -0500 -@@ -67,7 +67,7 @@ - /* Provide trailing slash, since mostly used for building pathnames. */ - #define _PATH_DEV "/dev/" - #define _PATH_TMP "/tmp/" --#define _PATH_VARDB "/var/db/" -+#define _PATH_VARDB "/var/lib/misc/" - #define _PATH_VARRUN "/var/run/" - #define _PATH_VARTMP "/var/tmp/" - diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-fixup.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-fixup.patch deleted file mode 100644 index e4abfe3f49..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-fixup.patch +++ /dev/null @@ -1,55 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/i386/dl-machine.h~glibc-2.2.5-allow-gcc-3.4-fixup.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/i386/dl-machine.h 2004-09-03 19:00:37.000000000 -0500 -@@ -63,11 +63,12 @@ - destroys the passed register information. */ - /* GKM FIXME: Fix trampoline to pass bounds so we can do - without the `__unbounded' qualifier. */ -+#define ARCH_FIXUP_ATTRIBUTE __attribute__ ((regparm (3), unused)) - static ElfW(Addr) fixup (struct link_map *__unbounded l, ElfW(Word) reloc_offset) -- __attribute__ ((regparm (2), unused)); -+ ARCH_FIXUP_ATTRIBUTE; - static ElfW(Addr) profile_fixup (struct link_map *l, ElfW(Word) reloc_offset, - ElfW(Addr) retaddr) -- __attribute__ ((regparm (3), unused)); -+ ARCH_FIXUP_ATTRIBUTE; - #endif - - /* Set up the loaded object described by L so its unrelocated PLT ---- glibc-2.2.5/elf/dl-runtime.c~glibc-2.2.5-allow-gcc-3.4-fixup.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/elf/dl-runtime.c 2004-09-03 19:00:37.000000000 -0500 -@@ -33,6 +33,12 @@ - # define VERSYMIDX(sym) (DT_NUM + DT_THISPROCNUM + DT_VERSIONTAGIDX (sym)) - #endif - -+/* The fixup functions might have need special attributes. If none -+ are provided define the macro as empty. */ -+#ifndef ARCH_FIXUP_ATTRIBUTE -+# define ARCH_FIXUP_ATTRIBUTE -+#endif -+ - - /* This function is called through a special trampoline from the PLT the - first time each PLT entry is called. We must perform the relocation -@@ -42,7 +48,7 @@ - function. */ - - #ifndef ELF_MACHINE_NO_PLT --static ElfW(Addr) __attribute_used__ -+static ElfW(Addr) __attribute_used__ ARCH_FIXUP_ATTRIBUTE - fixup ( - # ifdef ELF_MACHINE_RUNTIME_FIXUP_ARGS - ELF_MACHINE_RUNTIME_FIXUP_ARGS, -@@ -126,7 +132,7 @@ - - #if !defined PROF && !defined ELF_MACHINE_NO_PLT && !__BOUNDED_POINTERS__ - --static ElfW(Addr) __attribute_used__ -+static ElfW(Addr) __attribute_used__ ARCH_FIXUP_ATTRIBUTE - profile_fixup ( - #ifdef ELF_MACHINE_RUNTIME_FIXUP_ARGS - ELF_MACHINE_RUNTIME_FIXUP_ARGS, diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-grp.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-grp.patch deleted file mode 100644 index 5a9b3057dd..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-grp.patch +++ /dev/null @@ -1,36 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/grp/initgroups.c~glibc-2.2.5-allow-gcc-3.4-grp.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/grp/initgroups.c 2004-09-03 19:00:38.000000000 -0500 -@@ -176,7 +176,7 @@ - - /* This is really only for debugging. */ - if (NSS_STATUS_TRYAGAIN > status || status > NSS_STATUS_RETURN) -- __libc_fatal ("illegal status in " __FUNCTION__); -+ __libc_fatal ("illegal status in internal_getgrouplist"); - - if (status != NSS_STATUS_SUCCESS - && nss_next_action (nip, status) == NSS_ACTION_RETURN) -@@ -214,7 +214,7 @@ - } - else - *ngroups = result; -- -+ - memcpy (groups, newgroups, *ngroups * sizeof (gid_t)); - - free (newgroups); ---- glibc-2.2.5/nss/nsswitch.c~glibc-2.2.5-allow-gcc-3.4-grp.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/nss/nsswitch.c 2004-09-03 19:00:38.000000000 -0500 -@@ -178,7 +178,7 @@ - { - /* This is really only for debugging. */ - if (NSS_STATUS_TRYAGAIN > status || status > NSS_STATUS_RETURN) -- __libc_fatal ("illegal status in " __FUNCTION__); -+ __libc_fatal ("illegal status in __nss_next"); - - if (nss_next_action (*ni, status) == NSS_ACTION_RETURN) - return 1; diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-td.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-td.patch deleted file mode 100644 index 0a6cee11fe..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-3.4-td.patch +++ /dev/null @@ -1,881 +0,0 @@ -Fixes following error building glibc-2.2.5 with gcc-3.4: -td_init.c: In function `td_init': -td_init.c:30: error: parse error before string constant -td_init.c:30: error: parse error before string constant -make[2]: *** [/home/dank/wk/crosstool-0.28-rc4h/build/i686-unknown-linux-gnu/gcc-3.4.0-20040406-glibc-2.2.5/build-glibc/linuxthreads_db/td_init.os] Error 1 - -# Retrieved by diffing a +-1 day rng around the time mentioned -# in http://sources.redhat.com/ml/glibc-cvs/2001-q4/msg00654.html -# cvs -z 9 -d :pserver:anoncvs@sources.redhat.com:/cvs/glibc diff -u -D"2001-12-27 08:41:30" -D"2001-12-29 08:41:32" -# then fixing paths. - -Index: ChangeLog -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/ChangeLog,v -retrieving revision 1.41 -retrieving revision 1.42 -diff -u -r1.41 -r1.42 ---- libc/linuxthreads_db/ChangeLog 13 Apr 2001 00:09:54 -0000 1.41 -+++ libc/linuxthreads_db/ChangeLog 29 Dec 2001 00:59:58 -0000 1.42 -@@ -1,3 +1,43 @@ -+2001-12-28 Andreas Jaeger -+ -+ * td_init.c (td_init): Don't use __FUNCTION__ as literal. -+ * td_log.c (td_log): Likewise. -+ * td_ta_delete.c (td_ta_delete): Likewise. -+ * td_ta_get_nthreads.c (td_ta_get_nthreads): Likewise. -+ * td_ta_get_ph.c (td_ta_get_ph): Likewise. -+ * td_ta_map_id2thr.c (td_ta_map_id2thr): Likewise. -+ * td_ta_map_lwp2thr.c (td_ta_map_lwp2thr): Likewise. -+ * td_ta_new.c (td_ta_new): Likewise. -+ * td_ta_clear_event.c (td_ta_clear_event): Likewise. -+ * td_ta_enable_stats.c (td_ta_enable_stats): Likewise. -+ * td_ta_event_addr.c (td_ta_event_addr): Likewise. -+ * td_ta_event_getmsg.c (td_ta_event_getmsg): Likewise. -+ * td_ta_get_stats.c (td_ta_get_stats): Likewise. -+ * td_ta_reset_stats.c (td_ta_reset_stats): Likewise. -+ * td_ta_set_event.c (td_ta_set_event): Likewise. -+ * td_ta_setconcurrency.c (td_ta_setconcurrency): Likewise. -+ * td_ta_thr_iter.c (td_ta_thr_iter): Likewise. -+ * td_ta_tsd_iter.c (td_ta_tsd_iter): Likewise. -+ * td_thr_clear_event.c (td_thr_clear_event): Likewise. -+ * td_thr_dbresume.c (td_thr_dbresume): Likewise. -+ * td_thr_dbsuspend.c (td_thr_dbsuspend): Likewise. -+ * td_thr_event_enable.c (td_thr_event_enable): Likewise. -+ * td_thr_event_getmsg.c (td_thr_event_getmsg): Likewise. -+ * td_thr_get_info.c (td_thr_get_info): Likewise. -+ * td_thr_getfpregs.c (td_thr_getfpregs): Likewise. -+ * td_thr_getgregs.c (td_thr_getgregs): Likewise. -+ * td_thr_getxregs.c (td_thr_getxregs): Likewise. -+ * td_thr_getxregsize.c (td_thr_getxregsize): Likewise. -+ * td_thr_set_event.c (td_thr_set_event): Likewise. -+ * td_thr_setfpregs.c (td_thr_setfpregs): Likewise. -+ * td_thr_setgregs.c (td_thr_setgregs): Likewise. -+ * td_thr_setprio.c (td_thr_setprio): Likewise. -+ * td_thr_setsigpending.c (td_thr_setsigpending): Likewise. -+ * td_thr_setxregs.c (td_thr_setxregs): Likewise. -+ * td_thr_sigsetmask.c (td_thr_sigsetmask): Likewise. -+ * td_thr_tsd.c (td_thr_tsd): Likewise. -+ * td_thr_validate.c (td_thr_validate): Likewise. -+ - 2001-04-12 Ulrich Drepper - - * td_ta_map_id2thr.c: If thread terminated return TD_NOTHR. -Index: td_init.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_init.c,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- libc/linuxthreads_db/td_init.c 6 Jul 2001 05:27:23 -0000 1.3 -+++ libc/linuxthreads_db/td_init.c 28 Dec 2001 16:41:29 -0000 1.4 -@@ -1,5 +1,5 @@ - /* Initialization function of thread debugger support library. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -27,6 +27,6 @@ - td_init (void) - { - /* XXX We have to figure out what has to be done. */ -- LOG (__FUNCTION__); -+ LOG ("td_init"); - return TD_OK; - } -Index: td_log.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_log.c,v -retrieving revision 1.2 -retrieving revision 1.3 -diff -u -r1.2 -r1.3 ---- libc/linuxthreads_db/td_log.c 6 Jul 2001 05:27:23 -0000 1.2 -+++ libc/linuxthreads_db/td_log.c 28 Dec 2001 16:41:29 -0000 1.3 -@@ -1,5 +1,5 @@ - /* Noop, left for historical reasons. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,8 +25,8 @@ - td_log (void) - { - /* This interface is deprecated in the Sun interface. We provide it -- for compatibility but don't do anyhting ourself. We might in -+ for compatibility but don't do anything ourself. We might in - future do some logging if this seems reasonable. */ -- LOG (__FUNCTION__); -+ LOG ("td_log"); - return TD_OK; - } -Index: td_ta_clear_event.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_clear_event.c,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- libc/linuxthreads_db/td_ta_clear_event.c 6 Jul 2001 05:27:23 -0000 1.3 -+++ libc/linuxthreads_db/td_ta_clear_event.c 28 Dec 2001 16:41:29 -0000 1.4 -@@ -1,5 +1,5 @@ - /* Globally disable events. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -29,7 +29,7 @@ - td_thr_events_t old_event; - int i; - -- LOG (__FUNCTION__); -+ LOG ("td_ta_clear_event"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_delete.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_delete.c,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- libc/linuxthreads_db/td_ta_delete.c 6 Jul 2001 05:27:23 -0000 1.3 -+++ libc/linuxthreads_db/td_ta_delete.c 28 Dec 2001 16:41:29 -0000 1.4 -@@ -1,5 +1,5 @@ - /* Detach to target process. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -26,7 +26,7 @@ - td_err_e - td_ta_delete (td_thragent_t *ta) - { -- LOG (__FUNCTION__); -+ LOG ("td_ta_delete"); - - /* Safety check. */ - if (ta == NULL || __td_agent_list == NULL) -Index: td_ta_enable_stats.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_enable_stats.c,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- libc/linuxthreads_db/td_ta_enable_stats.c 6 Jul 2001 05:27:23 -0000 1.3 -+++ libc/linuxthreads_db/td_ta_enable_stats.c 28 Dec 2001 16:41:29 -0000 1.4 -@@ -1,5 +1,5 @@ - /* Enable collection of statistics for process. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,7 +25,7 @@ - td_ta_enable_stats (const td_thragent_t *ta, int enable) - { - /* XXX We have to figure out what has to be done. */ -- LOG (__FUNCTION__); -+ LOG ("td_ta_enable_stats"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_event_addr.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_event_addr.c,v -retrieving revision 1.5 -retrieving revision 1.6 -diff -u -r1.5 -r1.6 ---- libc/linuxthreads_db/td_ta_event_addr.c 6 Jul 2001 05:27:23 -0000 1.5 -+++ libc/linuxthreads_db/td_ta_event_addr.c 28 Dec 2001 16:41:29 -0000 1.6 -@@ -27,7 +27,7 @@ - td_err_e res = TD_NOEVENT; - int idx = -1; - -- LOG (__FUNCTION__); -+ LOG ("td_ta_event_addr"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_event_getmsg.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_event_getmsg.c,v -retrieving revision 1.5 -retrieving revision 1.6 -diff -u -r1.5 -r1.6 ---- libc/linuxthreads_db/td_ta_event_getmsg.c 6 Jul 2001 05:27:23 -0000 1.5 -+++ libc/linuxthreads_db/td_ta_event_getmsg.c 28 Dec 2001 16:41:29 -0000 1.6 -@@ -1,5 +1,5 @@ - /* Retrieve event. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -32,7 +32,7 @@ - td_eventbuf_t event; - psaddr_t addr; - -- LOG (__FUNCTION__); -+ LOG ("td_ta_event_getmsg"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_get_nthreads.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_get_nthreads.c,v -retrieving revision 1.5 -retrieving revision 1.6 -diff -u -r1.5 -r1.6 ---- libc/linuxthreads_db/td_ta_get_nthreads.c 6 Jul 2001 05:27:23 -0000 1.5 -+++ libc/linuxthreads_db/td_ta_get_nthreads.c 28 Dec 2001 16:41:29 -0000 1.6 -@@ -25,7 +25,7 @@ - { - psaddr_t addr; - -- LOG (__FUNCTION__); -+ LOG ("td_ta_get_nthreads"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_get_ph.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_get_ph.c,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- libc/linuxthreads_db/td_ta_get_ph.c 6 Jul 2001 05:27:23 -0000 1.3 -+++ libc/linuxthreads_db/td_ta_get_ph.c 28 Dec 2001 16:41:29 -0000 1.4 -@@ -1,5 +1,5 @@ - /* Get external process handle. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -24,7 +24,7 @@ - td_err_e - td_ta_get_ph (const td_thragent_t *ta, struct ps_prochandle **ph) - { -- LOG (__FUNCTION__); -+ LOG ("td_ta_get_ph"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_get_stats.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_get_stats.c,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- libc/linuxthreads_db/td_ta_get_stats.c 6 Jul 2001 05:27:23 -0000 1.3 -+++ libc/linuxthreads_db/td_ta_get_stats.c 28 Dec 2001 16:41:29 -0000 1.4 -@@ -1,5 +1,5 @@ - /* Retrieve statistics for process. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,7 +25,7 @@ - td_ta_get_stats (const td_thragent_t *ta, td_ta_stats_t *statsp) - { - /* XXX We have to figure out what has to be done. */ -- LOG (__FUNCTION__); -+ LOG ("td_ta_get_stats"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_map_id2thr.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_map_id2thr.c,v -retrieving revision 1.4 -retrieving revision 1.5 -diff -u -r1.4 -r1.5 ---- libc/linuxthreads_db/td_ta_map_id2thr.c 6 Jul 2001 05:27:23 -0000 1.4 -+++ libc/linuxthreads_db/td_ta_map_id2thr.c 28 Dec 2001 16:41:29 -0000 1.5 -@@ -28,7 +28,7 @@ - struct _pthread_descr_struct pds; - int pthread_threads_max; - -- LOG (__FUNCTION__); -+ LOG ("td_ta_map_id2thr"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_map_lwp2thr.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_map_lwp2thr.c,v -retrieving revision 1.5 -retrieving revision 1.6 -diff -u -r1.5 -r1.6 ---- libc/linuxthreads_db/td_ta_map_lwp2thr.c 6 Jul 2001 05:27:23 -0000 1.5 -+++ libc/linuxthreads_db/td_ta_map_lwp2thr.c 28 Dec 2001 16:41:29 -0000 1.6 -@@ -1,5 +1,5 @@ - /* Which thread is running on an lwp? -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -34,7 +34,7 @@ - # define num 1 - #endif - -- LOG (__FUNCTION__); -+ LOG ("td_ta_map_lwp2thr"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_new.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_new.c,v -retrieving revision 1.10 -retrieving revision 1.11 -diff -u -r1.10 -r1.11 ---- libc/linuxthreads_db/td_ta_new.c 6 Jul 2001 05:27:23 -0000 1.10 -+++ libc/linuxthreads_db/td_ta_new.c 28 Dec 2001 16:41:29 -0000 1.11 -@@ -35,7 +35,7 @@ - psaddr_t addr; - struct agent_list *elemp; - -- LOG (__FUNCTION__); -+ LOG ("td_ta_new"); - - /* Get the global event mask. This is one of the variables which - are new in the thread library to enable debugging. If it is -Index: td_ta_reset_stats.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_reset_stats.c,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- libc/linuxthreads_db/td_ta_reset_stats.c 6 Jul 2001 05:27:23 -0000 1.3 -+++ libc/linuxthreads_db/td_ta_reset_stats.c 28 Dec 2001 16:41:29 -0000 1.4 -@@ -1,5 +1,5 @@ - /* Reset statistics. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,7 +25,7 @@ - td_ta_reset_stats (const td_thragent_t *ta) - { - /* XXX We have to figure out what has to be done. */ -- LOG (__FUNCTION__); -+ LOG ("td_ta_reset_stats"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_set_event.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_set_event.c,v -retrieving revision 1.4 -retrieving revision 1.5 -diff -u -r1.4 -r1.5 ---- libc/linuxthreads_db/td_ta_set_event.c 6 Jul 2001 05:27:23 -0000 1.4 -+++ libc/linuxthreads_db/td_ta_set_event.c 28 Dec 2001 16:41:29 -0000 1.5 -@@ -1,5 +1,5 @@ - /* Globally enable events. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -29,7 +29,7 @@ - td_thr_events_t old_event; - int i; - -- LOG (__FUNCTION__); -+ LOG ("td_ta_set_event"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_setconcurrency.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_setconcurrency.c,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- libc/linuxthreads_db/td_ta_setconcurrency.c 6 Jul 2001 05:27:23 -0000 1.3 -+++ libc/linuxthreads_db/td_ta_setconcurrency.c 28 Dec 2001 16:41:29 -0000 1.4 -@@ -1,5 +1,5 @@ - /* Set suggested concurrency level for process. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,7 +25,7 @@ - td_ta_setconcurrency (const td_thragent_t *ta, int level) - { - /* This is something LinuxThreads does not support. */ -- LOG (__FUNCTION__); -+ LOG ("td_ta_setconcurrency"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_thr_iter.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_thr_iter.c,v -retrieving revision 1.11 -retrieving revision 1.12 -diff -u -r1.11 -r1.12 ---- libc/linuxthreads_db/td_ta_thr_iter.c 6 Jul 2001 05:27:23 -0000 1.11 -+++ libc/linuxthreads_db/td_ta_thr_iter.c 28 Dec 2001 16:41:29 -0000 1.12 -@@ -1,5 +1,5 @@ - /* Iterate over a process's threads. -- Copyright (C) 1999, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -86,7 +86,7 @@ - # define num 1 - #endif - -- LOG (__FUNCTION__); -+ LOG ("td_ta_thr_iter"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_ta_tsd_iter.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_ta_tsd_iter.c,v -retrieving revision 1.4 -retrieving revision 1.5 -diff -u -r1.4 -r1.5 ---- libc/linuxthreads_db/td_ta_tsd_iter.c 6 Jul 2001 05:27:23 -0000 1.4 -+++ libc/linuxthreads_db/td_ta_tsd_iter.c 28 Dec 2001 16:41:29 -0000 1.5 -@@ -1,5 +1,5 @@ - /* Iterate over a process's thread-specific data. -- Copyright (C) 1999, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -29,7 +29,7 @@ - int pthread_keys_max; - int cnt; - -- LOG (__FUNCTION__); -+ LOG ("td_ta_tsd_iter"); - - /* Test whether the TA parameter is ok. */ - if (! ta_ok (ta)) -Index: td_thr_clear_event.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_clear_event.c,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- libc/linuxthreads_db/td_thr_clear_event.c 6 Jul 2001 05:27:23 -0000 1.3 -+++ libc/linuxthreads_db/td_thr_clear_event.c 28 Dec 2001 16:41:29 -0000 1.4 -@@ -1,5 +1,5 @@ - /* Disable specific event for thread. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -31,7 +31,7 @@ - td_thr_events_t old_event; - int i; - -- LOG (__FUNCTION__); -+ LOG ("td_thr_clear_event"); - - /* Write the new value into the thread data structure. */ - if (ps_pdread (th->th_ta_p->ph, -Index: td_thr_dbresume.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_dbresume.c,v -retrieving revision 1.2 -retrieving revision 1.3 -diff -u -r1.2 -r1.3 ---- libc/linuxthreads_db/td_thr_dbresume.c 6 Jul 2001 05:27:23 -0000 1.2 -+++ libc/linuxthreads_db/td_thr_dbresume.c 28 Dec 2001 16:41:29 -0000 1.3 -@@ -1,5 +1,5 @@ - /* Resume execution of given thread. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,6 +25,6 @@ - td_thr_dbresume (const td_thrhandle_t *th) - { - /* XXX We have to figure out what has to be done. */ -- LOG (__FUNCTION__); -+ LOG ("td_thr_dbresume"); - return TD_NOCAPAB; - } -Index: td_thr_dbsuspend.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_dbsuspend.c,v -retrieving revision 1.2 -retrieving revision 1.3 -diff -u -r1.2 -r1.3 ---- libc/linuxthreads_db/td_thr_dbsuspend.c 6 Jul 2001 05:27:23 -0000 1.2 -+++ libc/linuxthreads_db/td_thr_dbsuspend.c 28 Dec 2001 16:41:29 -0000 1.3 -@@ -1,5 +1,5 @@ - /* Suspend execution of given thread. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,6 +25,6 @@ - td_thr_dbsuspend (const td_thrhandle_t *th) - { - /* XXX We have to figure out what has to be done. */ -- LOG (__FUNCTION__); -+ LOG ("td_thr_dbsuspend"); - return TD_NOCAPAB; - } -Index: td_thr_event_enable.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_event_enable.c,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- libc/linuxthreads_db/td_thr_event_enable.c 6 Jul 2001 05:27:23 -0000 1.3 -+++ libc/linuxthreads_db/td_thr_event_enable.c 28 Dec 2001 16:41:29 -0000 1.4 -@@ -1,5 +1,5 @@ - /* Enable event process-wide. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -28,7 +28,7 @@ - const td_thrhandle_t *th; - int onoff; - { -- LOG (__FUNCTION__); -+ LOG ("td_thr_event_enable"); - - /* Write the new value into the thread data structure. */ - if (ps_pdwrite (th->th_ta_p->ph, -Index: td_thr_event_getmsg.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_event_getmsg.c,v -retrieving revision 1.3 -retrieving revision 1.4 -diff -u -r1.3 -r1.4 ---- libc/linuxthreads_db/td_thr_event_getmsg.c 6 Jul 2001 05:27:23 -0000 1.3 -+++ libc/linuxthreads_db/td_thr_event_getmsg.c 28 Dec 2001 16:41:29 -0000 1.4 -@@ -1,5 +1,5 @@ - /* Retrieve event. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -29,7 +29,7 @@ - { - td_eventbuf_t event; - -- LOG (__FUNCTION__); -+ LOG ("td_thr_event_getmsg"); - - /* Read the even structure from the target. */ - if (ps_pdread (th->th_ta_p->ph, -Index: td_thr_get_info.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_get_info.c,v -retrieving revision 1.9 -retrieving revision 1.10 -diff -u -r1.9 -r1.10 ---- libc/linuxthreads_db/td_thr_get_info.c 6 Jul 2001 05:27:23 -0000 1.9 -+++ libc/linuxthreads_db/td_thr_get_info.c 28 Dec 2001 16:41:29 -0000 1.10 -@@ -1,5 +1,5 @@ - /* Get thread information. -- Copyright (C) 1999, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -29,7 +29,7 @@ - { - struct _pthread_descr_struct pds; - -- LOG (__FUNCTION__); -+ LOG ("td_thr_get_info"); - - /* Get the thread descriptor. */ - if (ps_pdread (th->th_ta_p->ph, th->th_unique, &pds, -Index: td_thr_getfpregs.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_getfpregs.c,v -retrieving revision 1.4 -retrieving revision 1.5 -diff -u -r1.4 -r1.5 ---- libc/linuxthreads_db/td_thr_getfpregs.c 6 Jul 2001 05:27:23 -0000 1.4 -+++ libc/linuxthreads_db/td_thr_getfpregs.c 28 Dec 2001 16:41:29 -0000 1.5 -@@ -26,7 +26,7 @@ - { - struct _pthread_descr_struct pds; - -- LOG (__FUNCTION__); -+ LOG ("td_thr_getfpregs"); - - /* We have to get the state and the PID for this thread. */ - if (ps_pdread (th->th_ta_p->ph, th->th_unique, &pds, -Index: td_thr_getgregs.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_getgregs.c,v -retrieving revision 1.8 -retrieving revision 1.9 -diff -u -r1.8 -r1.9 ---- libc/linuxthreads_db/td_thr_getgregs.c 6 Jul 2001 05:27:23 -0000 1.8 -+++ libc/linuxthreads_db/td_thr_getgregs.c 28 Dec 2001 16:41:29 -0000 1.9 -@@ -26,7 +26,7 @@ - { - struct _pthread_descr_struct pds; - -- LOG (__FUNCTION__); -+ LOG ("td_thr_getgregs"); - - /* We have to get the state and the PID for this thread. */ - if (ps_pdread (th->th_ta_p->ph, th->th_unique, &pds, -Index: td_thr_getxregs.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_getxregs.c,v -retrieving revision 1.2 -retrieving revision 1.3 -diff -u -r1.2 -r1.3 ---- libc/linuxthreads_db/td_thr_getxregs.c 6 Jul 2001 05:27:23 -0000 1.2 -+++ libc/linuxthreads_db/td_thr_getxregs.c 28 Dec 2001 16:41:29 -0000 1.3 -@@ -1,5 +1,5 @@ - /* Get a thread's extra state register set. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,6 +25,6 @@ - td_thr_getxregs (const td_thrhandle_t *th, void *xregs) - { - /* XXX This might be platform specific. */ -- LOG (__FUNCTION__); -+ LOG ("td_thr_getxregs"); - return TD_NOXREGS; - } -Index: td_thr_getxregsize.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_getxregsize.c,v -retrieving revision 1.2 -retrieving revision 1.3 -diff -u -r1.2 -r1.3 ---- libc/linuxthreads_db/td_thr_getxregsize.c 6 Jul 2001 05:27:23 -0000 1.2 -+++ libc/linuxthreads_db/td_thr_getxregsize.c 28 Dec 2001 16:41:29 -0000 1.3 -@@ -1,5 +1,5 @@ - /* Get the size of the extra state register set for this architecture. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,6 +25,6 @@ - td_thr_getxregsize (const td_thrhandle_t *th, int *sizep) - { - /* XXX This might be platform specific. */ -- LOG (__FUNCTION__); -+ LOG ("td_thr_getxregsize"); - return TD_NOXREGS; - } -Index: td_thr_set_event.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_set_event.c,v -retrieving revision 1.4 -retrieving revision 1.5 -diff -u -r1.4 -r1.5 ---- libc/linuxthreads_db/td_thr_set_event.c 6 Jul 2001 05:27:23 -0000 1.4 -+++ libc/linuxthreads_db/td_thr_set_event.c 28 Dec 2001 16:41:29 -0000 1.5 -@@ -1,5 +1,5 @@ - /* Enable specific event for thread. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -31,7 +31,7 @@ - td_thr_events_t old_event; - int i; - -- LOG (__FUNCTION__); -+ LOG ("td_thr_set_event"); - - /* Write the new value into the thread data structure. */ - if (ps_pdread (th->th_ta_p->ph, -Index: td_thr_setfpregs.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_setfpregs.c,v -retrieving revision 1.4 -retrieving revision 1.5 -diff -u -r1.4 -r1.5 ---- libc/linuxthreads_db/td_thr_setfpregs.c 6 Jul 2001 05:27:23 -0000 1.4 -+++ libc/linuxthreads_db/td_thr_setfpregs.c 28 Dec 2001 16:41:29 -0000 1.5 -@@ -26,7 +26,7 @@ - { - struct _pthread_descr_struct pds; - -- LOG (__FUNCTION__); -+ LOG ("td_thr_setfpregs"); - - /* We have to get the state and the PID for this thread. */ - if (ps_pdread (th->th_ta_p->ph, th->th_unique, &pds, -Index: td_thr_setgregs.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_setgregs.c,v -retrieving revision 1.6 -retrieving revision 1.7 -diff -u -r1.6 -r1.7 ---- libc/linuxthreads_db/td_thr_setgregs.c 6 Jul 2001 05:27:23 -0000 1.6 -+++ libc/linuxthreads_db/td_thr_setgregs.c 28 Dec 2001 16:41:29 -0000 1.7 -@@ -26,7 +26,7 @@ - { - struct _pthread_descr_struct pds; - -- LOG (__FUNCTION__); -+ LOG ("td_thr_setgregs"); - - /* We have to get the state and the PID for this thread. */ - if (ps_pdread (th->th_ta_p->ph, th->th_unique, &pds, -Index: td_thr_setprio.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_setprio.c,v -retrieving revision 1.2 -retrieving revision 1.3 -diff -u -r1.2 -r1.3 ---- libc/linuxthreads_db/td_thr_setprio.c 6 Jul 2001 05:27:23 -0000 1.2 -+++ libc/linuxthreads_db/td_thr_setprio.c 28 Dec 2001 16:41:29 -0000 1.3 -@@ -1,5 +1,5 @@ - /* Set a thread's priority. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,6 +25,6 @@ - td_thr_setprio (const td_thrhandle_t *th, int prio) - { - /* XXX We have to figure out what has to be done. */ -- LOG (__FUNCTION__); -+ LOG ("td_thr_setprio"); - return TD_OK; - } -Index: td_thr_setsigpending.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_setsigpending.c,v -retrieving revision 1.2 -retrieving revision 1.3 -diff -u -r1.2 -r1.3 ---- libc/linuxthreads_db/td_thr_setsigpending.c 6 Jul 2001 05:27:23 -0000 1.2 -+++ libc/linuxthreads_db/td_thr_setsigpending.c 28 Dec 2001 16:41:29 -0000 1.3 -@@ -1,5 +1,5 @@ - /* Raise a signal for a thread. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -26,6 +26,6 @@ - const sigset_t *ss) - { - /* XXX We have to figure out what has to be done. */ -- LOG (__FUNCTION__); -+ LOG ("td_thr_setsigpending"); - return TD_OK; - } -Index: td_thr_setxregs.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_setxregs.c,v -retrieving revision 1.2 -retrieving revision 1.3 -diff -u -r1.2 -r1.3 ---- libc/linuxthreads_db/td_thr_setxregs.c 6 Jul 2001 05:27:23 -0000 1.2 -+++ libc/linuxthreads_db/td_thr_setxregs.c 28 Dec 2001 16:41:29 -0000 1.3 -@@ -1,5 +1,5 @@ - /* Set a thread's extra state register set. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,6 +25,6 @@ - td_thr_setxregs (const td_thrhandle_t *ta, const void *addr) - { - /* XXX This might have to be platform specific. */ -- LOG (__FUNCTION__); -+ LOG ("td_thr_setxregs"); - return TD_NOXREGS; - } -Index: td_thr_sigsetmask.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_sigsetmask.c,v -retrieving revision 1.2 -retrieving revision 1.3 -diff -u -r1.2 -r1.3 ---- libc/linuxthreads_db/td_thr_sigsetmask.c 6 Jul 2001 05:27:23 -0000 1.2 -+++ libc/linuxthreads_db/td_thr_sigsetmask.c 28 Dec 2001 16:41:29 -0000 1.3 -@@ -1,5 +1,5 @@ - /* Set a thread's signal mask. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -25,6 +25,6 @@ - td_thr_sigsetmask (const td_thrhandle_t *th, const sigset_t *ss) - { - /* XXX We have to figure out what has to be done. */ -- LOG (__FUNCTION__); -+ LOG ("td_thr_sigsetmask"); - return TD_OK; - } -Index: td_thr_tsd.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_tsd.c,v -retrieving revision 1.2 -retrieving revision 1.3 -diff -u -r1.2 -r1.3 ---- libc/linuxthreads_db/td_thr_tsd.c 6 Jul 2001 05:27:23 -0000 1.2 -+++ libc/linuxthreads_db/td_thr_tsd.c 28 Dec 2001 16:41:29 -0000 1.3 -@@ -1,5 +1,5 @@ - /* Get a thread-specific data pointer for a thread. -- Copyright (C) 1999 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -33,7 +33,7 @@ - unsigned int idx2nd; - void *p; - -- LOG (__FUNCTION__); -+ LOG ("td_thr_tsd"); - - /* Get the thread descriptor. */ - if (ps_pdread (th->th_ta_p->ph, th->th_unique, &pds, -Index: td_thr_validate.c -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads_db/td_thr_validate.c,v -retrieving revision 1.4 -retrieving revision 1.5 -diff -u -r1.4 -r1.5 ---- libc/linuxthreads_db/td_thr_validate.c 6 Jul 2001 05:27:23 -0000 1.4 -+++ libc/linuxthreads_db/td_thr_validate.c 28 Dec 2001 16:41:29 -0000 1.5 -@@ -28,7 +28,7 @@ - int pthread_threads_max = th->th_ta_p->pthread_threads_max; - int cnt; - -- LOG (__FUNCTION__); -+ LOG ("td_thr_validate"); - - /* Now get all descriptors, one after the other. */ - for (cnt = 0; cnt < pthread_threads_max; ++cnt, ++handles) diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-4.x-configure.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-4.x-configure.patch deleted file mode 100644 index 138c5414cb..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-allow-gcc-4.x-configure.patch +++ /dev/null @@ -1,21 +0,0 @@ -Fixes -checking version of powerpc-405-linux-gnu-gcc ... 4.0.0, bad -checking for gnumake... no -checking for gmake... no -checking for make... make -checking version of make... 3.80, ok -configure: error: -*** These critical programs are missing or too old:gcc - - ---- glibc-2.2.5/configure.old 2005-03-10 00:23:46.374213600 -0800 -+++ glibc-2.2.5/configure 2005-03-10 00:25:13.313996744 -0800 -@@ -1476,7 +1476,7 @@ - ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- *gcc-2.9[5-9].*|*2.8.[1-9]*|*2.9|*2.9.[0-9]*|2.9[5-9]*|3.[0-9]*|cygnus-2.9[1-9]*|gcc-2.9[5-9]|gcc-2.1[0-9][0-9]|sgicc-*) -+ *gcc-2.9[5-9].*|*2.8.[1-9]*|*2.9|*2.9.[0-9]*|2.9[5-9]*|3.[0-9]*|4.[0-9]*|cygnus-2.9[1-9]*|gcc-2.9[5-9]|gcc-2.1[0-9][0-9]|sgicc-*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-alpha-pwrite64.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-alpha-pwrite64.patch deleted file mode 100644 index 8466731834..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-alpha-pwrite64.patch +++ /dev/null @@ -1,35 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/unix/sysv/linux/alpha/sysdep.h~glibc-2.2.5-alpha-pwrite64.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/unix/sysv/linux/alpha/sysdep.h 2004-09-03 19:00:38.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1992, 1993, 1995, 1996, 1997 Free Software Foundation, Inc. -+/* Copyright (C) 1992, 1993, 1995, 1996, 1997, 2004 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper, , August 1995. - -@@ -56,6 +56,21 @@ - #define __NR_osf_getsysinfo 256 - #define __NR_osf_setsysinfo 257 - -+/* Help old kernel headers where particular syscalls are not available. */ -+#ifndef __NR_semtimedop -+# define __NR_semtimedop 423 -+#endif -+ -+/* This is a kludge to make syscalls.list find these under the names -+ pread and pwrite, since some kernel headers define those names -+ and some define the *64 names for the same system calls. */ -+#if !defined __NR_pread && defined __NR_pread64 -+# define __NR_pread __NR_pread64 -+#endif -+#if !defined __NR_pwrite && defined __NR_pwrite64 -+# define __NR_pwrite __NR_pwrite64 -+#endif -+ - /* - * In order to get the hidden arguments for rt_sigaction set up - * properly, we need to call the assembly version. Detect this in the diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-alpha-self-clobber.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-alpha-self-clobber.patch deleted file mode 100644 index fd3403405a..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-alpha-self-clobber.patch +++ /dev/null @@ -1,25 +0,0 @@ -wget http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/linuxthreads/sysdeps/alpha/pt-machine.h.diff?r1=1.9&r2=1.10&cvsroot=glibc - -Should fix error - -internals.h: In function `pthread_setcancelstate': -internals.h:381: error: asm-specifier for variable `__self' conflicts with asm clobber list -make[2]: *** [/home/dank/crosstool-0.28/build/alpha-unknown-linux-gnu/gcc-3.4.1-glibc-2.2.5/build-glibc/linuxthreads/cancel.o] Error 1 -make[2]: Leaving directory `/home/dank/crosstool-0.28/build/alpha-unknown-linux-gnu/gcc-3.4.1-glibc-2.2.5/glibc-2.2.5/linuxthreads' - -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads/sysdeps/alpha/pt-machine.h,v -retrieving revision 1.9 -retrieving revision 1.10 -diff -u -r1.9 -r1.10 ---- libc/linuxthreads/sysdeps/alpha/pt-machine.h 2002/04/06 04:05:13 1.9 -+++ libc/linuxthreads/sysdeps/alpha/pt-machine.h 2002/05/20 20:09:34 1.10 -@@ -76,7 +76,7 @@ - #define THREAD_SELF \ - ({ \ - register pthread_descr __self __asm__("$0"); \ -- __asm__ ("call_pal %1" : "=r"(__self) : "i"(PAL_rduniq) : "$0"); \ -+ __asm__ ("call_pal %1" : "=r"(__self) : "i"(PAL_rduniq)); \ - __self; \ - }) - diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-arm-pwrite64.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-arm-pwrite64.patch deleted file mode 100644 index eb7fa996fa..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-arm-pwrite64.patch +++ /dev/null @@ -1,23 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/unix/sysv/linux/arm/sysdep.h~glibc-2.2.5-arm-pwrite64.patch 2004-09-03 19:00:37.000000000 -0500 -+++ glibc-2.2.5/sysdeps/unix/sysv/linux/arm/sysdep.h 2004-09-03 19:00:38.000000000 -0500 -@@ -32,6 +32,15 @@ - #define SWI_BASE (0x900000) - #define SYS_ify(syscall_name) (__NR_##syscall_name) - -+/* This is a kludge to make syscalls.list find these under the names -+ pread and pwrite, since some kernel headers define those names -+ and some define the *64 names for the same system calls. */ -+#if !defined __NR_pread && defined __NR_pread64 -+# define __NR_pread __NR_pread64 -+#endif -+#if !defined __NR_pwrite && defined __NR_pwrite64 -+# define __NR_pwrite __NR_pwrite64 -+#endif - - #ifdef __ASSEMBLER__ - diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-crosstest.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-crosstest.patch deleted file mode 100644 index 4029bf4f2a..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-crosstest.patch +++ /dev/null @@ -1,28 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/dlfcn/Makefile~glibc-2.2.5-crosstest.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/dlfcn/Makefile 2004-09-03 19:00:38.000000000 -0500 -@@ -60,6 +60,8 @@ - test-modules = $(addprefix $(objpfx),$(addsuffix .so,$(modules-names))) - $(test-modules): $(objpfx)%.so: $(objpfx)%.os - $(build-module) -+# without following rule, test-modules don't get built when cross-compiling -+tests: $(test-modules) - - $(objpfx)glrefmain: $(libdl) - $(objpfx)glrefmain.out: $(objpfx)glrefmain \ ---- glibc-2.2.5/elf/Makefile~glibc-2.2.5-crosstest.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/elf/Makefile 2004-09-03 19:00:38.000000000 -0500 -@@ -263,6 +263,9 @@ - test-modules = $(addprefix $(objpfx),$(addsuffix .so,$(strip $(modules-names)))) - generated += $(addsuffix .so,$(strip $(modules-names))) - -+# without following rule, test-modules don't get built when cross-compiling -+tests: $(test-modules) -+ - ifeq (yes,$(build-shared)) - ifeq ($(cross-compiling),no) - tests: $(objpfx)tst-pathopt.out diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-crossyes.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-crossyes.patch deleted file mode 100644 index a27be24275..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-crossyes.patch +++ /dev/null @@ -1,16 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/configure~glibc-2.2.5-crossyes.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/configure 2004-09-03 19:00:38.000000000 -0500 -@@ -1738,7 +1738,7 @@ - ac_cv_prog_cc_works=yes - # If we can't run a trivial program, we are probably using a cross compiler. - if (./conftest; exit) 2>/dev/null; then -- ac_cv_prog_cc_cross=no -+ ac_cv_prog_cc_cross=yes - else - ac_cv_prog_cc_cross=yes - fi diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-cygwin.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-cygwin.patch deleted file mode 100644 index 9b732188ca..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-cygwin.patch +++ /dev/null @@ -1,79 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/Makeconfig~glibc-2.2.5-cygwin.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/Makeconfig 2004-09-03 19:00:38.000000000 -0500 -@@ -439,13 +439,13 @@ - # run the linked programs. - link-libc = -Wl,-rpath-link=$(rpath-link) \ - $(common-objpfx)libc.so$(libc.so-version) \ -- $(common-objpfx)$(patsubst %,$(libtype.oS),c) $(gnulib) -+ $(common-objpfx)$(patsubst %,$(libtype.oST),c) $(gnulib) - # This is how to find at build-time things that will be installed there. - rpath-dirs = math elf dlfcn nss nis rt resolv crypt - else - ifneq (,$(findstring aix,$(config-os))) - link-libc = $(common-objpfx)libc.a \ -- $(common-objpfx)$(patsubst %,$(libtype.oS),c) $(gnulib) -+ $(common-objpfx)$(patsubst %,$(libtype.oST),c) $(gnulib) - rpath-dirs = math dlfcn nss nis rt resolv crypt - endif - endif -@@ -649,7 +649,7 @@ - # The compilation rules use $(CPPFLAGS-${SUFFIX}) and $(CFLAGS-${SUFFIX}) - # to pass different flags for each flavor. - libtypes = $(foreach o,$(object-suffixes-for-libc),$(libtype$o)) --all-object-suffixes := .o .os .op .og .ob .oS -+all-object-suffixes := .o .os .op .og .ob .oST - object-suffixes := - CPPFLAGS-.o = $(pic-default) - CFLAGS-.o = $(filter %frame-pointer,$(+cflags)) -@@ -703,14 +703,14 @@ - - ifeq (yes,$(build-shared)) - # Build special library that contains the static-only routines for libc. --object-suffixes-for-libc += .oS -+object-suffixes-for-libc += .oST - - # Must build the routines as PIC, though, because they can end up in (users') - # shared objects. We don't want to use CFLAGS-os because users may, for - # example, make that processor-specific. --CFLAGS-.oS = $(CFLAGS-.o) $(pic-ccflag) --CPPFLAGS-.oS = $(CPPFLAGS-.o) -DPIC --libtype.oS = lib%_nonshared.a -+CFLAGS-.oST = $(CFLAGS-.o) $(pic-ccflag) -+CPPFLAGS-.oST = $(CPPFLAGS-.o) -DPIC -+libtype.oST = lib%_nonshared.a - endif - - ---- glibc-2.2.5/Makerules~glibc-2.2.5-cygwin.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/Makerules 2004-09-03 19:00:38.000000000 -0500 -@@ -361,7 +361,7 @@ - # Bounded pointer thunks are only built for *.ob - elide-bp-thunks = $(addprefix $(bppfx),$(bp-thunks)) - --elide-routines.oS += $(filter-out $(static-only-routines),\ -+elide-routines.oST += $(filter-out $(static-only-routines),\ - $(routines) $(aux) $(sysdep_routines)) \ - $(elide-bp-thunks) - elide-routines.os += $(static-only-routines) $(elide-bp-thunks) -@@ -842,14 +842,14 @@ - # of the files are taken by the linker. - install: $(inst_libdir)/libc.so - $(inst_libdir)/libc.so: $(common-objpfx)libc.so$(libc.so-version) \ -- $(inst_libdir)/$(patsubst %,$(libtype.oS),\ -+ $(inst_libdir)/$(patsubst %,$(libtype.oST),\ - $(libprefix)$(libc-name)) \ - $(+force) - (echo '/* GNU ld script';\ - echo ' Use the shared library, but some functions are only in';\ - echo ' the static library, so try that secondarily. */';\ - echo 'GROUP ( $(slibdir)/libc.so$(libc.so-version)' \ -- '$(libdir)/$(patsubst %,$(libtype.oS),$(libprefix)$(libc-name))'\ -+ '$(libdir)/$(patsubst %,$(libtype.oST),$(libprefix)$(libc-name))'\ - ')' \ - ) > $@.new - mv -f $@.new $@ diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-hhl-powerpc-fpu.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-hhl-powerpc-fpu.patch deleted file mode 100644 index 73cfd1a832..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-hhl-powerpc-fpu.patch +++ /dev/null @@ -1,1108 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/powerpc/Dist~glibc-2.2.5-hhl-powerpc-fpu.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/Dist 2004-09-03 19:00:38.000000000 -0500 -@@ -1,9 +1,6 @@ - dl-machine.c - dl-start.S - ppc-mcount.S --fe_nomask.c --fprrest.S --fprsave.S - gprsave1.S - gprsave0.S - gprrest1.S ---- glibc-2.2.5/sysdeps/powerpc/Makefile~glibc-2.2.5-hhl-powerpc-fpu.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/Makefile 2004-09-03 19:00:38.000000000 -0500 -@@ -3,16 +3,12 @@ - +cflags += -mnew-mnemonics -Wa,-mppc -mpowerpc - asm-CPPFLAGS += -Wa,-mppc - --ifeq ($(subdir),math) --libm-support += fenv_const fe_nomask --endif -- - ifeq ($(subdir),gmon) - sysdep_routines += ppc-mcount - endif - - ifeq ($(subdir),misc) --sysdep_routines += gprsave0 gprrest0 gprsave1 gprrest1 fprsave fprrest -+sysdep_routines += gprsave0 gprrest0 gprsave1 gprrest1 - endif - - # On PPC, -fpic works until the GOT contains 2^15 bytes, and possibly ---- glibc-2.2.5/sysdeps/powerpc/Versions~glibc-2.2.5-hhl-powerpc-fpu.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/Versions 2004-09-03 19:00:38.000000000 -0500 -@@ -1,8 +1,4 @@ - libm { -- GLIBC_2.1 { -- # symbols used in macros from sysdeps/powerpc/bits/fenv.h -- __fe_dfl_env; __fe_enabled_env; __fe_nonieee_env; __fe_nomask_env; -- } - GLIBC_2.2 { - # Special functions to save and restore registers used by the - # runtime libraries. ---- glibc-2.2.5/sysdeps/powerpc/__longjmp.S~glibc-2.2.5-hhl-powerpc-fpu.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/__longjmp.S 2004-09-03 19:00:38.000000000 -0500 -@@ -24,6 +24,8 @@ - #include - #include - -+/* The FPU loads have been removed from this file - see fpu/__longjmp.S */ -+ - ENTRY (BP_SYM (__longjmp)) - CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) - -@@ -31,44 +33,26 @@ - lwz r2,(JB_GPR2*4)(r3) - lwz r0,(JB_LR*4)(r3) - lwz r14,((JB_GPRS+0)*4)(r3) -- lfd fp14,((JB_FPRS+0*2)*4)(r3) - lwz r15,((JB_GPRS+1)*4)(r3) -- lfd fp15,((JB_FPRS+1*2)*4)(r3) - lwz r16,((JB_GPRS+2)*4)(r3) -- lfd fp16,((JB_FPRS+2*2)*4)(r3) - lwz r17,((JB_GPRS+3)*4)(r3) -- lfd fp17,((JB_FPRS+3*2)*4)(r3) - lwz r18,((JB_GPRS+4)*4)(r3) -- lfd fp18,((JB_FPRS+4*2)*4)(r3) - lwz r19,((JB_GPRS+5)*4)(r3) -- lfd fp19,((JB_FPRS+5*2)*4)(r3) - lwz r20,((JB_GPRS+6)*4)(r3) -- lfd fp20,((JB_FPRS+6*2)*4)(r3) - mtlr r0 - lwz r21,((JB_GPRS+7)*4)(r3) -- lfd fp21,((JB_FPRS+7*2)*4)(r3) - lwz r22,((JB_GPRS+8)*4)(r3) -- lfd fp22,((JB_FPRS+8*2)*4)(r3) - lwz r0,(JB_CR*4)(r3) - lwz r23,((JB_GPRS+9)*4)(r3) -- lfd fp23,((JB_FPRS+9*2)*4)(r3) - lwz r24,((JB_GPRS+10)*4)(r3) -- lfd fp24,((JB_FPRS+10*2)*4)(r3) - lwz r25,((JB_GPRS+11)*4)(r3) -- lfd fp25,((JB_FPRS+11*2)*4)(r3) - mtcrf 0xFF,r0 - lwz r26,((JB_GPRS+12)*4)(r3) -- lfd fp26,((JB_FPRS+12*2)*4)(r3) - lwz r27,((JB_GPRS+13)*4)(r3) -- lfd fp27,((JB_FPRS+13*2)*4)(r3) - lwz r28,((JB_GPRS+14)*4)(r3) -- lfd fp28,((JB_FPRS+14*2)*4)(r3) - lwz r29,((JB_GPRS+15)*4)(r3) -- lfd fp29,((JB_FPRS+15*2)*4)(r3) - lwz r30,((JB_GPRS+16)*4)(r3) -- lfd fp30,((JB_FPRS+16*2)*4)(r3) - lwz r31,((JB_GPRS+17)*4)(r3) -- lfd fp31,((JB_FPRS+17*2)*4)(r3) - mr r3,r4 - blr - END (BP_SYM (__longjmp)) ---- glibc-2.2.5/sysdeps/powerpc/bits/setjmp.h~glibc-2.2.5-hhl-powerpc-fpu.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/bits/setjmp.h 2004-09-03 19:00:38.000000000 -0500 -@@ -17,6 +17,7 @@ - 02111-1307 USA. */ - - /* Define the machine-dependent type `jmp_buf'. PowerPC version. */ -+/* For processors without floating point. */ - - #ifndef _SETJMP_H - # error "Never include directly; use instead." -@@ -33,12 +34,11 @@ - # define JB_LR 2 /* The address we will return to */ - # define JB_GPRS 3 /* GPRs 14 through 31 are saved, 18 in total */ - # define JB_CR 21 /* Condition code registers. */ --# define JB_FPRS 22 /* FPRs 14 through 31 are saved, 18*2 words total */ --# define JB_SIZE (58*4) -+# define JB_SIZE (22*4) - #endif - - #ifndef _ASM --typedef long int __jmp_buf[58]; -+typedef long int __jmp_buf[22]; - #endif - - /* Test if longjmp to JMPBUF would unwind the frame ---- glibc-2.2.5/sysdeps/powerpc/fclrexcpt.c~glibc-2.2.5-hhl-powerpc-fpu.patch -+++ glibc-2.2.5/sysdeps/powerpc/fclrexcpt.c --/* Clear given exceptions in current floating-point environment. -- Copyright (C) 1997,99,2000,01 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include -- --#undef feclearexcept --int --__feclearexcept (int excepts) --{ -- fenv_union_t u; -- -- /* Get the current state. */ -- u.fenv = fegetenv_register (); -- -- /* Clear the relevant bits. */ -- u.l[1] = u.l[1] & ~((-(excepts >> (31 - FPSCR_VX) & 1) & FE_ALL_INVALID) -- | (excepts & FPSCR_STICKY_BITS)); -- -- /* Put the new state in effect. */ -- fesetenv_register (u.fenv); -- -- /* Success. */ -- return 0; --} -- --#include --#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) --strong_alias (__feclearexcept, __old_feclearexcept) --compat_symbol (libm, __old_feclearexcept, feclearexcept, GLIBC_2_1); --#endif -- --versioned_symbol (libm, __feclearexcept, feclearexcept, GLIBC_2_2); ---- glibc-2.2.5/sysdeps/powerpc/fe_nomask.c~glibc-2.2.5-hhl-powerpc-fpu.patch -+++ glibc-2.2.5/sysdeps/powerpc/fe_nomask.c --/* Procedure definition for FE_NOMASK_ENV. -- Copyright (C) 1997 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include --#include -- --/* This is presently a stub, until it's decided how the kernels should -- support this. */ -- --const fenv_t * --__fe_nomask_env(void) --{ -- __set_errno (ENOSYS); -- return FE_ENABLED_ENV; --} --stub_warning (__fe_nomask_env) ---- glibc-2.2.5/sysdeps/powerpc/fprrest.S~glibc-2.2.5-hhl-powerpc-fpu.patch -+++ glibc-2.2.5/sysdeps/powerpc/fprrest.S --/* Copyright (C) 2000, 2001 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --/* -- Floating Point Registers (FPRs) restore routine --*/ -- --#include -- --ENTRY(_restfpr_all) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf14) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_14) --C_TEXT(_restf14): --C_TEXT(_restfpr_14): lfd fp14,-144(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf15) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_15) --C_TEXT(_restf15): --C_TEXT(_restfpr_15): lfd fp15,-136(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf16) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_16) --C_TEXT(_restf16): --C_TEXT(_restfpr_16): lfd fp16,-128(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf17) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_17) --C_TEXT(_restf17): --C_TEXT(_restfpr_17): lfd fp17,-120(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf18) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_18) --C_TEXT(_restf18): --C_TEXT(_restfpr_18): lfd fp18,-112(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf19) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_19) --C_TEXT(_restf19): --C_TEXT(_restfpr_19): lfd fp19,-104(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf20) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_20) --C_TEXT(_restf20): --C_TEXT(_restfpr_20): lfd fp20,-96(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf21) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_21) --C_TEXT(_restf21): --C_TEXT(_restfpr_21): lfd fp21,-88(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf22) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_22) --C_TEXT(_restf22): --C_TEXT(_restfpr_22): lfd fp22,-80(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf23) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_23) --C_TEXT(_restf23): --C_TEXT(_restfpr_23): lfd fp23,-72(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf24) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_24) --C_TEXT(_restf24): --C_TEXT(_restfpr_24): lfd fp24,-64(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf25) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_25) --C_TEXT(_restf25): --C_TEXT(_restfpr_25): lfd fp25,-56(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf26) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_26) --C_TEXT(_restf26): --C_TEXT(_restfpr_26): lfd fp26,-48(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf27) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_27) --C_TEXT(_restf27): --C_TEXT(_restfpr_27): lfd fp27,-40(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf28) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_28) --C_TEXT(_restf28): --C_TEXT(_restfpr_28): lfd fp28,-32(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restf29) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_29) --C_TEXT(_restf29): --C_TEXT(_restfpr_29): lwz r0,8(r1) #get return address from frame -- lfd fp29,-24(r1) #restore f29 -- mtlr r0 #move return address to LR -- lfd fp30,-16(r1) #restore f30 -- lfd fp31,-8(r1) #restore f31 -- blr #return ---- glibc-2.2.5/sysdeps/powerpc/fprsave.S~glibc-2.2.5-hhl-powerpc-fpu.patch -+++ glibc-2.2.5/sysdeps/powerpc/fprsave.S --/* Copyright (C) 2000, 2001 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --/* -- Floating Point Registers (FPRs) save routine --*/ -- --#include -- --ENTRY(_savefpr_all) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef14) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_14) --C_TEXT(_savef14): --C_TEXT(_savefpr_14): stfd fp14,-144(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef15) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_15) --C_TEXT(_savef15): --C_TEXT(_savefpr_15): stfd fp15,-136(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef16) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_16) --C_TEXT(_savef16): --C_TEXT(_savefpr_16): stfd fp16,-128(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef17) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_17) --C_TEXT(_savef17): --C_TEXT(_savefpr_17): stfd fp17,-120(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef18) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_18) --C_TEXT(_savef18): --C_TEXT(_savefpr_18): stfd fp18,-112(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef19) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_19) --C_TEXT(_savef19): --C_TEXT(_savefpr_19): stfd fp19,-104(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef20) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_20) --C_TEXT(_savef20): --C_TEXT(_savefpr_20): stfd fp20,-96(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef21) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_21) --C_TEXT(_savef21): --C_TEXT(_savefpr_21): stfd fp21,-88(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef22) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_22) --C_TEXT(_savef22): --C_TEXT(_savefpr_22): stfd fp22,-80(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef23) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_23) --C_TEXT(_savef23): --C_TEXT(_savefpr_23): stfd fp23,-72(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef24) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_24) --C_TEXT(_savef24): --C_TEXT(_savefpr_24): stfd fp24,-64(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef25) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_25) --C_TEXT(_savef25): --C_TEXT(_savefpr_25): stfd fp25,-56(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef26) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_26) --C_TEXT(_savef26): --C_TEXT(_savefpr_26): stfd fp26,-48(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef27) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_27) --C_TEXT(_savef27): --C_TEXT(_savefpr_27): stfd fp27,-40(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef28) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_28) --C_TEXT(_savef28): --C_TEXT(_savefpr_28): stfd fp28,-32(r1) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savef29) -- ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_29) --C_TEXT(_savef29): --C_TEXT(_savefpr_29): stfd fp29,-24(r1) #save f29 -- stfd fp30,-16(r1) #save f30 -- stfd fp31,-8(r1) #save f31 -- stw r0,8(r1) #save LR in callers frame -- blr #return ---- glibc-2.2.5/sysdeps/powerpc/fpu/Dist~glibc-2.2.5-hhl-powerpc-fpu.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/fpu/Dist 2004-09-03 19:00:38.000000000 -0500 -@@ -1,3 +1,6 @@ -+fe_nomask.c -+fprrest.S -+fprsave.S - fenv_const.c - fenv_libc.h - t_sqrt.c ---- glibc-2.2.5/sysdeps/powerpc/fpu/Makefile~glibc-2.2.5-hhl-powerpc-fpu.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/fpu/Makefile 2004-09-03 19:00:38.000000000 -0500 -@@ -1,3 +1,7 @@ - ifeq ($(subdir),math) - libm-support += fenv_const fe_nomask t_sqrt - endif -+ -+ifeq ($(subdir),misc) -+sysdep_routines += fprsave fprrest -+endif ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/fpu/Versions 2004-09-03 19:00:38.000000000 -0500 -@@ -0,0 +1,6 @@ -+libm { -+ GLIBC_2.1 { -+ # symbols used in macros from sysdeps/powerpc/bits/fenv.h -+ __fe_dfl_env; __fe_enabled_env; __fe_nonieee_env; __fe_nomask_env; -+ } -+} ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/fpu/__longjmp.S 2004-09-03 19:00:38.000000000 -0500 -@@ -0,0 +1,74 @@ -+/* longjmp for PowerPC. -+ Copyright (C) 1995, 1996, 1997, 1999, 2000 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public License as -+ published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with the GNU C Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. */ -+ -+#include -+#define _ASM -+#define _SETJMP_H -+#include -+#include -+#include -+ -+ENTRY (BP_SYM (__longjmp)) -+ CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) -+ -+ lwz r1,(JB_GPR1*4)(r3) -+ lwz r2,(JB_GPR2*4)(r3) -+ lwz r0,(JB_LR*4)(r3) -+ lwz r14,((JB_GPRS+0)*4)(r3) -+ lfd fp14,((JB_FPRS+0*2)*4)(r3) -+ lwz r15,((JB_GPRS+1)*4)(r3) -+ lfd fp15,((JB_FPRS+1*2)*4)(r3) -+ lwz r16,((JB_GPRS+2)*4)(r3) -+ lfd fp16,((JB_FPRS+2*2)*4)(r3) -+ lwz r17,((JB_GPRS+3)*4)(r3) -+ lfd fp17,((JB_FPRS+3*2)*4)(r3) -+ lwz r18,((JB_GPRS+4)*4)(r3) -+ lfd fp18,((JB_FPRS+4*2)*4)(r3) -+ lwz r19,((JB_GPRS+5)*4)(r3) -+ lfd fp19,((JB_FPRS+5*2)*4)(r3) -+ lwz r20,((JB_GPRS+6)*4)(r3) -+ lfd fp20,((JB_FPRS+6*2)*4)(r3) -+ mtlr r0 -+ lwz r21,((JB_GPRS+7)*4)(r3) -+ lfd fp21,((JB_FPRS+7*2)*4)(r3) -+ lwz r22,((JB_GPRS+8)*4)(r3) -+ lfd fp22,((JB_FPRS+8*2)*4)(r3) -+ lwz r0,(JB_CR*4)(r3) -+ lwz r23,((JB_GPRS+9)*4)(r3) -+ lfd fp23,((JB_FPRS+9*2)*4)(r3) -+ lwz r24,((JB_GPRS+10)*4)(r3) -+ lfd fp24,((JB_FPRS+10*2)*4)(r3) -+ lwz r25,((JB_GPRS+11)*4)(r3) -+ lfd fp25,((JB_FPRS+11*2)*4)(r3) -+ mtcrf 0xFF,r0 -+ lwz r26,((JB_GPRS+12)*4)(r3) -+ lfd fp26,((JB_FPRS+12*2)*4)(r3) -+ lwz r27,((JB_GPRS+13)*4)(r3) -+ lfd fp27,((JB_FPRS+13*2)*4)(r3) -+ lwz r28,((JB_GPRS+14)*4)(r3) -+ lfd fp28,((JB_FPRS+14*2)*4)(r3) -+ lwz r29,((JB_GPRS+15)*4)(r3) -+ lfd fp29,((JB_FPRS+15*2)*4)(r3) -+ lwz r30,((JB_GPRS+16)*4)(r3) -+ lfd fp30,((JB_FPRS+16*2)*4)(r3) -+ lwz r31,((JB_GPRS+17)*4)(r3) -+ lfd fp31,((JB_FPRS+17*2)*4)(r3) -+ mr r3,r4 -+ blr -+END (BP_SYM (__longjmp)) ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/fpu/bits/setjmp.h 2004-09-03 19:00:38.000000000 -0500 -@@ -0,0 +1,47 @@ -+/* Copyright (C) 1997, 1998, 2000 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public License as -+ published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with the GNU C Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. */ -+ -+/* Define the machine-dependent type `jmp_buf'. PowerPC version. */ -+ -+#ifndef _SETJMP_H -+# error "Never include directly; use instead." -+#endif -+ -+/* The previous bits/setjmp.h had __jmp_buf defined as a structure. -+ We use an array of 'long int' instead, to make writing the -+ assembler easier. Naturally, user code should not depend on -+ either representation. */ -+ -+#if defined __USE_MISC || defined _ASM -+# define JB_GPR1 0 /* Also known as the stack pointer */ -+# define JB_GPR2 1 -+# define JB_LR 2 /* The address we will return to */ -+# define JB_GPRS 3 /* GPRs 14 through 31 are saved, 18 in total */ -+# define JB_CR 21 /* Condition code registers. */ -+# define JB_FPRS 22 /* FPRs 14 through 31 are saved, 18*2 words total */ -+# define JB_SIZE (58*4) -+#endif -+ -+#ifndef _ASM -+typedef long int __jmp_buf[58]; -+#endif -+ -+/* Test if longjmp to JMPBUF would unwind the frame -+ containing a local variable at ADDRESS. */ -+#define _JMPBUF_UNWINDS(jmpbuf, address) \ -+ ((void *) (address) < (void *) (jmpbuf)[JB_GPR1]) ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/fpu/fclrexcpt.c 2004-09-03 19:00:38.000000000 -0500 -@@ -0,0 +1,48 @@ -+/* Clear given exceptions in current floating-point environment. -+ Copyright (C) 1997,99,2000,01 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+ -+#undef feclearexcept -+int -+__feclearexcept (int excepts) -+{ -+ fenv_union_t u; -+ -+ /* Get the current state. */ -+ u.fenv = fegetenv_register (); -+ -+ /* Clear the relevant bits. */ -+ u.l[1] = u.l[1] & ~((-(excepts >> (31 - FPSCR_VX) & 1) & FE_ALL_INVALID) -+ | (excepts & FPSCR_STICKY_BITS)); -+ -+ /* Put the new state in effect. */ -+ fesetenv_register (u.fenv); -+ -+ /* Success. */ -+ return 0; -+} -+ -+#include -+#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -+strong_alias (__feclearexcept, __old_feclearexcept) -+compat_symbol (libm, __old_feclearexcept, feclearexcept, GLIBC_2_1); -+#endif -+ -+versioned_symbol (libm, __feclearexcept, feclearexcept, GLIBC_2_2); ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/fpu/fe_nomask.c 2004-09-03 19:00:38.000000000 -0500 -@@ -0,0 +1,32 @@ -+/* Procedure definition for FE_NOMASK_ENV. -+ Copyright (C) 1997 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+ -+/* This is presently a stub, until it's decided how the kernels should -+ support this. */ -+ -+const fenv_t * -+__fe_nomask_env(void) -+{ -+ __set_errno (ENOSYS); -+ return FE_ENABLED_ENV; -+} -+stub_warning (__fe_nomask_env) ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/fpu/fprrest.S 2004-09-03 19:00:38.000000000 -0500 -@@ -0,0 +1,94 @@ -+/* Copyright (C) 2000, 2001 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+/* -+ Floating Point Registers (FPRs) restore routine -+*/ -+ -+#include -+ -+ENTRY(_restfpr_all) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf14) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_14) -+C_TEXT(_restf14): -+C_TEXT(_restfpr_14): lfd fp14,-144(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf15) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_15) -+C_TEXT(_restf15): -+C_TEXT(_restfpr_15): lfd fp15,-136(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf16) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_16) -+C_TEXT(_restf16): -+C_TEXT(_restfpr_16): lfd fp16,-128(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf17) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_17) -+C_TEXT(_restf17): -+C_TEXT(_restfpr_17): lfd fp17,-120(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf18) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_18) -+C_TEXT(_restf18): -+C_TEXT(_restfpr_18): lfd fp18,-112(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf19) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_19) -+C_TEXT(_restf19): -+C_TEXT(_restfpr_19): lfd fp19,-104(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf20) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_20) -+C_TEXT(_restf20): -+C_TEXT(_restfpr_20): lfd fp20,-96(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf21) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_21) -+C_TEXT(_restf21): -+C_TEXT(_restfpr_21): lfd fp21,-88(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf22) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_22) -+C_TEXT(_restf22): -+C_TEXT(_restfpr_22): lfd fp22,-80(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf23) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_23) -+C_TEXT(_restf23): -+C_TEXT(_restfpr_23): lfd fp23,-72(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf24) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_24) -+C_TEXT(_restf24): -+C_TEXT(_restfpr_24): lfd fp24,-64(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf25) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_25) -+C_TEXT(_restf25): -+C_TEXT(_restfpr_25): lfd fp25,-56(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf26) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_26) -+C_TEXT(_restf26): -+C_TEXT(_restfpr_26): lfd fp26,-48(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf27) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_27) -+C_TEXT(_restf27): -+C_TEXT(_restfpr_27): lfd fp27,-40(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf28) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_28) -+C_TEXT(_restf28): -+C_TEXT(_restfpr_28): lfd fp28,-32(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restf29) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_restfpr_29) -+C_TEXT(_restf29): -+C_TEXT(_restfpr_29): lwz r0,8(r1) #get return address from frame -+ lfd fp29,-24(r1) #restore f29 -+ mtlr r0 #move return address to LR -+ lfd fp30,-16(r1) #restore f30 -+ lfd fp31,-8(r1) #restore f31 -+ blr #return ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/fpu/fprsave.S 2004-09-03 19:00:38.000000000 -0500 -@@ -0,0 +1,93 @@ -+/* Copyright (C) 2000, 2001 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+/* -+ Floating Point Registers (FPRs) save routine -+*/ -+ -+#include -+ -+ENTRY(_savefpr_all) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef14) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_14) -+C_TEXT(_savef14): -+C_TEXT(_savefpr_14): stfd fp14,-144(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef15) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_15) -+C_TEXT(_savef15): -+C_TEXT(_savefpr_15): stfd fp15,-136(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef16) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_16) -+C_TEXT(_savef16): -+C_TEXT(_savefpr_16): stfd fp16,-128(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef17) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_17) -+C_TEXT(_savef17): -+C_TEXT(_savefpr_17): stfd fp17,-120(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef18) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_18) -+C_TEXT(_savef18): -+C_TEXT(_savefpr_18): stfd fp18,-112(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef19) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_19) -+C_TEXT(_savef19): -+C_TEXT(_savefpr_19): stfd fp19,-104(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef20) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_20) -+C_TEXT(_savef20): -+C_TEXT(_savefpr_20): stfd fp20,-96(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef21) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_21) -+C_TEXT(_savef21): -+C_TEXT(_savefpr_21): stfd fp21,-88(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef22) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_22) -+C_TEXT(_savef22): -+C_TEXT(_savefpr_22): stfd fp22,-80(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef23) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_23) -+C_TEXT(_savef23): -+C_TEXT(_savefpr_23): stfd fp23,-72(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef24) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_24) -+C_TEXT(_savef24): -+C_TEXT(_savefpr_24): stfd fp24,-64(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef25) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_25) -+C_TEXT(_savef25): -+C_TEXT(_savefpr_25): stfd fp25,-56(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef26) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_26) -+C_TEXT(_savef26): -+C_TEXT(_savefpr_26): stfd fp26,-48(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef27) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_27) -+C_TEXT(_savef27): -+C_TEXT(_savefpr_27): stfd fp27,-40(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef28) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_28) -+C_TEXT(_savef28): -+C_TEXT(_savefpr_28): stfd fp28,-32(r1) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savef29) -+ ASM_GLOBAL_DIRECTIVE C_TEXT(_savefpr_29) -+C_TEXT(_savef29): -+C_TEXT(_savefpr_29): stfd fp29,-24(r1) #save f29 -+ stfd fp30,-16(r1) #save f30 -+ stfd fp31,-8(r1) #save f31 -+ stw r0,8(r1) #save LR in callers frame -+ blr #return ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/fpu/fpu_control.h 2004-09-03 19:00:38.000000000 -0500 -@@ -0,0 +1,67 @@ -+/* FPU control word definitions. PowerPC version. -+ Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _FPU_CONTROL_H -+#define _FPU_CONTROL_H -+ -+/* rounding control */ -+#define _FPU_RC_NEAREST 0x00 /* RECOMMENDED */ -+#define _FPU_RC_DOWN 0x03 -+#define _FPU_RC_UP 0x02 -+#define _FPU_RC_ZERO 0x01 -+ -+#define _FPU_MASK_NI 0x04 /* non-ieee mode */ -+ -+/* masking of interrupts */ -+#define _FPU_MASK_ZM 0x10 /* zero divide */ -+#define _FPU_MASK_OM 0x40 /* overflow */ -+#define _FPU_MASK_UM 0x20 /* underflow */ -+#define _FPU_MASK_XM 0x08 /* inexact */ -+#define _FPU_MASK_IM 0x80 /* invalid operation */ -+ -+#define _FPU_RESERVED 0xffffff00 /* These bits are reserved are not changed. */ -+ -+/* The fdlibm code requires no interrupts for exceptions. */ -+#define _FPU_DEFAULT 0x00000000 /* Default value. */ -+ -+/* IEEE: same as above, but (some) exceptions; -+ we leave the 'inexact' exception off. -+ */ -+#define _FPU_IEEE 0x000000f0 -+ -+/* Type of the control word. */ -+typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); -+ -+/* Macros for accessing the hardware control word. */ -+#define _FPU_GETCW(cw) ( { \ -+ union { double d; fpu_control_t cw[2]; } tmp __attribute__ ((__aligned__(8))); \ -+ __asm__ ("mffs 0; stfd%U0 0,%0" : "=m" (tmp.d) : : "fr0"); \ -+ (cw)=tmp.cw[1]; \ -+ tmp.cw[1]; } ) -+#define _FPU_SETCW(cw) { \ -+ union { double d; fpu_control_t cw[2]; } tmp __attribute__ ((__aligned__(8))); \ -+ tmp.cw[0] = 0xFFF80000; /* More-or-less arbitrary; this is a QNaN. */ \ -+ tmp.cw[1] = cw; \ -+ __asm__ ("lfd%U0 0,%0; mtfsf 255,0" : : "m" (tmp.d) : "fr0"); \ -+} -+ -+/* Default control word set at startup. */ -+extern fpu_control_t __fpu_control; -+ -+#endif /* _FPU_CONTROL_H */ ---- /dev/null 2004-06-02 16:28:12.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/fpu/setjmp.S 2004-09-03 19:00:38.000000000 -0500 -@@ -0,0 +1,73 @@ -+/* setjmp for PowerPC. -+ Copyright (C) 1995, 1996, 1997, 1999, 2000 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public License as -+ published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with the GNU C Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. */ -+ -+#include -+#define _ASM -+#define _SETJMP_H -+#include -+#include -+#include -+ -+ENTRY (BP_SYM (__sigsetjmp)) -+ CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) -+ -+ stw r1,(JB_GPR1*4)(3) -+ mflr r0 -+ stw r2,(JB_GPR2*4)(3) -+ stw r14,((JB_GPRS+0)*4)(3) -+ stfd fp14,((JB_FPRS+0*2)*4)(3) -+ stw r0,(JB_LR*4)(3) -+ stw r15,((JB_GPRS+1)*4)(3) -+ stfd fp15,((JB_FPRS+1*2)*4)(3) -+ mfcr r0 -+ stw r16,((JB_GPRS+2)*4)(3) -+ stfd fp16,((JB_FPRS+2*2)*4)(3) -+ stw r0,(JB_CR*4)(3) -+ stw r17,((JB_GPRS+3)*4)(3) -+ stfd fp17,((JB_FPRS+3*2)*4)(3) -+ stw r18,((JB_GPRS+4)*4)(3) -+ stfd fp18,((JB_FPRS+4*2)*4)(3) -+ stw r19,((JB_GPRS+5)*4)(3) -+ stfd fp19,((JB_FPRS+5*2)*4)(3) -+ stw r20,((JB_GPRS+6)*4)(3) -+ stfd fp20,((JB_FPRS+6*2)*4)(3) -+ stw r21,((JB_GPRS+7)*4)(3) -+ stfd fp21,((JB_FPRS+7*2)*4)(3) -+ stw r22,((JB_GPRS+8)*4)(3) -+ stfd fp22,((JB_FPRS+8*2)*4)(3) -+ stw r23,((JB_GPRS+9)*4)(3) -+ stfd fp23,((JB_FPRS+9*2)*4)(3) -+ stw r24,((JB_GPRS+10)*4)(3) -+ stfd fp24,((JB_FPRS+10*2)*4)(3) -+ stw r25,((JB_GPRS+11)*4)(3) -+ stfd fp25,((JB_FPRS+11*2)*4)(3) -+ stw r26,((JB_GPRS+12)*4)(3) -+ stfd fp26,((JB_FPRS+12*2)*4)(3) -+ stw r27,((JB_GPRS+13)*4)(3) -+ stfd fp27,((JB_FPRS+13*2)*4)(3) -+ stw r28,((JB_GPRS+14)*4)(3) -+ stfd fp28,((JB_FPRS+14*2)*4)(3) -+ stw r29,((JB_GPRS+15)*4)(3) -+ stfd fp29,((JB_FPRS+15*2)*4)(3) -+ stw r30,((JB_GPRS+16)*4)(3) -+ stfd fp30,((JB_FPRS+16*2)*4)(3) -+ stw r31,((JB_GPRS+17)*4)(3) -+ stfd fp31,((JB_FPRS+17*2)*4)(3) -+ b JUMPTARGET (BP_SYM (__sigjmp_save)) -+END (BP_SYM (__sigsetjmp)) ---- glibc-2.2.5/sysdeps/powerpc/fpu_control.h~glibc-2.2.5-hhl-powerpc-fpu.patch -+++ glibc-2.2.5/sysdeps/powerpc/fpu_control.h --/* FPU control word definitions. PowerPC version. -- Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#ifndef _FPU_CONTROL_H --#define _FPU_CONTROL_H -- --/* rounding control */ --#define _FPU_RC_NEAREST 0x00 /* RECOMMENDED */ --#define _FPU_RC_DOWN 0x03 --#define _FPU_RC_UP 0x02 --#define _FPU_RC_ZERO 0x01 -- --#define _FPU_MASK_NI 0x04 /* non-ieee mode */ -- --/* masking of interrupts */ --#define _FPU_MASK_ZM 0x10 /* zero divide */ --#define _FPU_MASK_OM 0x40 /* overflow */ --#define _FPU_MASK_UM 0x20 /* underflow */ --#define _FPU_MASK_XM 0x08 /* inexact */ --#define _FPU_MASK_IM 0x80 /* invalid operation */ -- --#define _FPU_RESERVED 0xffffff00 /* These bits are reserved are not changed. */ -- --/* The fdlibm code requires no interrupts for exceptions. */ --#define _FPU_DEFAULT 0x00000000 /* Default value. */ -- --/* IEEE: same as above, but (some) exceptions; -- we leave the 'inexact' exception off. -- */ --#define _FPU_IEEE 0x000000f0 -- --/* Type of the control word. */ --typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); -- --/* Macros for accessing the hardware control word. */ --#define _FPU_GETCW(cw) ( { \ -- union { double d; fpu_control_t cw[2]; } tmp __attribute__ ((__aligned__(8))); \ -- __asm__ ("mffs 0; stfd%U0 0,%0" : "=m" (tmp.d) : : "fr0"); \ -- (cw)=tmp.cw[1]; \ -- tmp.cw[1]; } ) --#define _FPU_SETCW(cw) { \ -- union { double d; fpu_control_t cw[2]; } tmp __attribute__ ((__aligned__(8))); \ -- tmp.cw[0] = 0xFFF80000; /* More-or-less arbitrary; this is a QNaN. */ \ -- tmp.cw[1] = cw; \ -- __asm__ ("lfd%U0 0,%0; mtfsf 255,0" : : "m" (tmp.d) : "fr0"); \ --} -- --/* Default control word set at startup. */ --extern fpu_control_t __fpu_control; -- --#endif /* _FPU_CONTROL_H */ ---- glibc-2.2.5/sysdeps/powerpc/setjmp.S~glibc-2.2.5-hhl-powerpc-fpu.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/setjmp.S 2004-09-03 19:00:38.000000000 -0500 -@@ -24,6 +24,8 @@ - #include - #include - -+/* The FPU stores have been removed from this file - see fpu/setjmp.S */ -+ - ENTRY (BP_SYM (__sigsetjmp)) - CHECK_BOUNDS_BOTH_WIDE_LIT (r3, r8, r9, JB_SIZE) - -@@ -31,43 +33,25 @@ - mflr r0 - stw r2,(JB_GPR2*4)(3) - stw r14,((JB_GPRS+0)*4)(3) -- stfd fp14,((JB_FPRS+0*2)*4)(3) - stw r0,(JB_LR*4)(3) - stw r15,((JB_GPRS+1)*4)(3) -- stfd fp15,((JB_FPRS+1*2)*4)(3) - mfcr r0 - stw r16,((JB_GPRS+2)*4)(3) -- stfd fp16,((JB_FPRS+2*2)*4)(3) - stw r0,(JB_CR*4)(3) - stw r17,((JB_GPRS+3)*4)(3) -- stfd fp17,((JB_FPRS+3*2)*4)(3) - stw r18,((JB_GPRS+4)*4)(3) -- stfd fp18,((JB_FPRS+4*2)*4)(3) - stw r19,((JB_GPRS+5)*4)(3) -- stfd fp19,((JB_FPRS+5*2)*4)(3) - stw r20,((JB_GPRS+6)*4)(3) -- stfd fp20,((JB_FPRS+6*2)*4)(3) - stw r21,((JB_GPRS+7)*4)(3) -- stfd fp21,((JB_FPRS+7*2)*4)(3) - stw r22,((JB_GPRS+8)*4)(3) -- stfd fp22,((JB_FPRS+8*2)*4)(3) - stw r23,((JB_GPRS+9)*4)(3) -- stfd fp23,((JB_FPRS+9*2)*4)(3) - stw r24,((JB_GPRS+10)*4)(3) -- stfd fp24,((JB_FPRS+10*2)*4)(3) - stw r25,((JB_GPRS+11)*4)(3) -- stfd fp25,((JB_FPRS+11*2)*4)(3) - stw r26,((JB_GPRS+12)*4)(3) -- stfd fp26,((JB_FPRS+12*2)*4)(3) - stw r27,((JB_GPRS+13)*4)(3) -- stfd fp27,((JB_FPRS+13*2)*4)(3) - stw r28,((JB_GPRS+14)*4)(3) -- stfd fp28,((JB_FPRS+14*2)*4)(3) - stw r29,((JB_GPRS+15)*4)(3) -- stfd fp29,((JB_FPRS+15*2)*4)(3) - stw r30,((JB_GPRS+16)*4)(3) -- stfd fp30,((JB_FPRS+16*2)*4)(3) - stw r31,((JB_GPRS+17)*4)(3) -- stfd fp31,((JB_FPRS+17*2)*4)(3) - b JUMPTARGET (BP_SYM (__sigjmp_save)) - END (BP_SYM (__sigsetjmp)) diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-mips-build-gmon.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-mips-build-gmon.patch deleted file mode 100644 index 9a9eb37c7d..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-mips-build-gmon.patch +++ /dev/null @@ -1,88 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/mips/machine-gmon.h~glibc-2.2.5-mips-build-gmon.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/mips/machine-gmon.h 2004-09-03 19:00:38.000000000 -0500 -@@ -17,42 +17,52 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - --#define _MCOUNT_DECL static void __mcount -+#define _MCOUNT_DECL(frompc,selfpc) \ -+static void __attribute_used__ __mcount (u_long frompc, u_long selfpc) - - /* Call __mcount with our the return PC for our caller, - and the return PC our caller will return to. */ - #ifdef __PIC__ - #define CPLOAD ".cpload $25;" -+#define CPRESTORE ".cprestore 44\n\t" - #else - #define CPLOAD -+#define CPRESTORE - #endif - - #define MCOUNT asm(\ -- ".globl _mcount;" \ -- ".align 2;" \ -- ".type _mcount,@function;" \ -- "_mcount:;" \ -- ".set noreorder;" \ -- ".set noat;" \ -+ ".globl _mcount;\n\t" \ -+ ".align 2;\n\t" \ -+ ".type _mcount,@function;\n\t" \ -+ ".ent _mcount\n\t" \ -+ "_mcount:\n\t" \ -+ ".frame $sp,44,$31\n\t" \ -+ ".set noreorder;\n\t" \ -+ ".set noat;\n\t" \ - CPLOAD \ -- "sw $4,8($29);" \ -- "sw $5,12($29);" \ -- "sw $6,16($29);" \ -- "sw $7,20($29);" \ -- "sw $1,0($29);" \ -- "sw $31,4($29);" \ -- "move $5,$31;" \ -- "move $4,$1;" \ -- "jal __mcount;" \ -- "nop;" \ -- "lw $4,8($29);" \ -- "lw $5,12($29);" \ -- "lw $6,16($29);" \ -- "lw $7,20($29);" \ -- "lw $31,4($29);" \ -- "lw $1,0($29);" \ -- "addu $29,$29,8;" \ -- "j $31;" \ -- "move $31,$1;" \ -- ".set reorder;" \ -- ".set at"); -+ "subu $29,$29,48;\n\t" \ -+ CPRESTORE \ -+ "sw $4,24($29);\n\t" \ -+ "sw $5,28($29);\n\t" \ -+ "sw $6,32($29);\n\t" \ -+ "sw $7,36($29);\n\t" \ -+ "sw $2,40($29);\n\t" \ -+ "sw $1,16($29);\n\t" \ -+ "sw $31,20($29);\n\t" \ -+ "move $5,$31;\n\t" \ -+ "move $4,$1;\n\t" \ -+ "jal __mcount;\n\t" \ -+ "nop;\n\t" \ -+ "lw $4,24($29);\n\t" \ -+ "lw $5,28($29);\n\t" \ -+ "lw $6,32($29);\n\t" \ -+ "lw $7,36($29);\n\t" \ -+ "lw $2,40($29);\n\t" \ -+ "lw $31,20($29);\n\t" \ -+ "lw $1,16($29);\n\t" \ -+ "addu $29,$29,56;\n\t" \ -+ "j $31;\n\t" \ -+ "move $31,$1;\n\t" \ -+ ".set reorder;\n\t" \ -+ ".set at\n\t" \ -+ ".end _mcount"); diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-mips-clone-local-label.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-mips-clone-local-label.patch deleted file mode 100644 index 18d64201fa..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-mips-clone-local-label.patch +++ /dev/null @@ -1,24 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/unix/sysv/linux/mips/clone.S~glibc-2.2.5-mips-clone-local-label.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/unix/sysv/linux/mips/clone.S 2004-09-03 19:00:38.000000000 -0500 -@@ -63,7 +63,7 @@ - syscall - - bnez a3,error -- beqz v0,__thread_start -+ beqz v0,.Lthread_start - - /* Successful return from the parent */ - addiu sp,32 -@@ -85,6 +85,7 @@ - debug info. */ - - ENTRY(__thread_start) -+.Lthread_start: - /* cp is already loaded. */ - .cprestore 16 - /* The stackframe has been created on entry of clone(). */ diff --git a/packages/glibc/glibc-2.2.5/glibc-2.2.5-ppc405erratum77.patch b/packages/glibc/glibc-2.2.5/glibc-2.2.5-ppc405erratum77.patch deleted file mode 100644 index 7a27bacea1..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.2.5-ppc405erratum77.patch +++ /dev/null @@ -1,65 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/powerpc/atomicity.h~glibc-2.2.5-ppc405erratum77.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/powerpc/atomicity.h 2004-09-03 19:00:38.000000000 -0500 -@@ -28,6 +28,17 @@ - # define __ATOMICITY_INLINE inline - #endif - -+#ifdef __PPC405__ -+/* workaround for PPC405 erratum #77 - Mark Hatle, dank. References: -+ http://www-3.ibm.com/chips/techlib/techlib.nsf/techdocs/89DED00DEBFF54BF87256A8000491BA2/$file/405CR_C_errata_1_2.pdf -+ http://ppc.bkbits.net:8080/linuxppc_2_4_devel/cset@1.489 -+ http://www.kegel.com/xgcc3/ppc405erratum77.html -+ FIXME: using dbct instead of sync would be faster */ -+#define __LIBC_PPC405_ERR77_SYNC "sync \n\t" -+#else -+#define __LIBC_PPC405_ERR77_SYNC -+#endif -+ - static __ATOMICITY_INLINE int - __attribute__ ((unused)) - exchange_and_add (volatile uint32_t *mem, int val) -@@ -36,6 +47,7 @@ - __asm__ ("\n\ - 0: lwarx %0,0,%2 \n\ - add%I3 %1,%0,%3 \n\ -+ " __LIBC_PPC405_ERR77_SYNC "\n\ - stwcx. %1,0,%2 \n\ - bne- 0b \n\ - " : "=&b"(result), "=&r"(tmp) : "r" (mem), "Ir"(val) : "cr0", "memory"); -@@ -50,6 +62,7 @@ - __asm__ ("\n\ - 0: lwarx %0,0,%1 \n\ - add%I2 %0,%0,%2 \n\ -+ " __LIBC_PPC405_ERR77_SYNC "\n\ - stwcx. %0,0,%1 \n\ - bne- 0b \n\ - " : "=&b"(tmp) : "r" (mem), "Ir"(val) : "cr0", "memory"); -@@ -65,6 +78,7 @@ - sub%I2c. %0,%0,%2 \n\ - cntlzw %0,%0 \n\ - bne- 1f \n\ -+ " __LIBC_PPC405_ERR77_SYNC "\n\ - stwcx. %3,0,%1 \n\ - bne- 0b \n\ - 1: \n\ -@@ -79,6 +93,7 @@ - long int result; - __asm__ ("\n\ - 0: lwarx %0,0,%1 \n\ -+ " __LIBC_PPC405_ERR77_SYNC "\n\ - stwcx. %2,0,%1 \n\ - bne- 0b \n\ - " : "=&r"(result) : "r"(p), "r"(newval) : "cr0", "memory"); -@@ -94,6 +109,7 @@ - 0: lwarx %0,0,%1 \n\ - cmpwi %0,0 \n\ - bne- 1f \n\ -+ " __LIBC_PPC405_ERR77_SYNC "\n\ - stwcx. %2,0,%1 \n\ - bne- 0b \n\ - 1: \n\ diff --git a/packages/glibc/glibc-2.2.5/glibc-2.3.2-allow-solaris.patch b/packages/glibc/glibc-2.2.5/glibc-2.3.2-allow-solaris.patch deleted file mode 100644 index bda01b4267..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.3.2-allow-solaris.patch +++ /dev/null @@ -1,41 +0,0 @@ -See http://sources.redhat.com/ml/crossgcc/2003-11/msg00111.html -Might fix error -... gcc-3.2.3-glibc-2.3.2/build-glibc/csu/version-info.h:8: too many decimal points in floating constant -make[2]: *** -when building on Solaris. I haven't seen this be needed yet, but what the heck, -here it is in case someone needs it. - -Retrieved with http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/csu/Makefile.diff?r1=1.70&r2=1.71&cvsroot=glibc - -Revision 1.71, Thu Sep 25 20:29:39 2003 UTC (8 months, 2 weeks ago) by drepper -Branch: MAIN -CVS Tags: glibc-2_3_3 - -($(objpfx)version-info.h): Fix sed script to handle banners. - -=================================================================== -RCS file: /cvs/glibc/libc/csu/Makefile,v -retrieving revision 1.70 -retrieving revision 1.71 -diff -u -r1.70 -r1.71 ---- libc/csu/Makefile 2003/06/26 07:27:39 1.70 -+++ libc/csu/Makefile 2003/09/25 20:29:39 1.71 -@@ -222,14 +222,14 @@ - if [ -z "$$os" ]; then \ - os=Linux; \ - fi; \ -- echo "\"Compiled on a $$os $$version system" \ -- "on `date +%Y-%m-%d`.\\n\"" ;; \ -+ printf '"Compiled on a %s %s system on %s.\\n"\n' \ -+ "$os" "$version" "`date +%Y-%m-%d`" ;; \ - *) ;; \ - esac; \ - files="$(all-Banner-files)"; \ - if test -n "$$files"; then \ -- echo "\"Available extensions:\\n\""; \ -+ printf '"Available extensions:\\n"\n'; \ - sed -e '/^#/d' -e 's/^[[:space:]]*/ /' \ -- -e 's/\(^.*$$\)/\"\1\\n\"/' $$files; \ -+ -e 's/^\(.*\)$$/\"\1\\n\"/' $$files; \ - fi) > $@T - mv -f $@T $@ diff --git a/packages/glibc/glibc-2.2.5/glibc-2.3.2-initfini.patch b/packages/glibc/glibc-2.2.5/glibc-2.3.2-initfini.patch deleted file mode 100644 index 8bfbcb173a..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-2.3.2-initfini.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urNd glibc-2.3.2-ct25/csu/Makefile glibc-2.3.2/csu/Makefile ---- glibc-2.3.2-ct25/csu/Makefile 2004-06-25 13:47:54.000000000 +0200 -+++ glibc-2.3.2/csu/Makefile 2004-06-25 13:54:33.000000000 +0200 -@@ -99,7 +99,7 @@ - $(objpfx)crt%.o: $(objpfx)crt%.S $(objpfx)defs.h - $(compile.S) -g0 $(ASFLAGS-.os) -o $@ - --CFLAGS-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time) -+CFLAGS-initfini.s = -O1 -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time) - - vpath initfini.c $(full_config_sysdirs) - diff --git a/packages/glibc/glibc-2.2.5/glibc-drow-sh.patch b/packages/glibc/glibc-2.2.5/glibc-drow-sh.patch deleted file mode 100644 index c0e4bbd58c..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-drow-sh.patch +++ /dev/null @@ -1,30 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/unix/sysv/linux/kernel-features.h~glibc-drow-sh.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/unix/sysv/linux/kernel-features.h 2004-09-03 19:00:38.000000000 -0500 -@@ -134,11 +134,20 @@ - - /* The changed st_ino field appeared in 2.4.0-test6. But we cannot - distinguish this version from other 2.4.0 releases. Therefore play -- save and assume it available is for 2.4.1 and up. */ --#if __LINUX_KERNEL_VERSION >= 132097 -+ save and assume it available is for 2.4.1 and up. However, SH is lame, -+ and still does not have a 64-bit inode field. */ -+#if __LINUX_KERNEL_VERSION >= 132097 \ -+ && !defined __sh__ - # define __ASSUME_ST_INO_64_BIT 1 - #endif - -+/* SH kernels got stat64, mmap2, and truncate64 during 2.4.0-test. */ -+#if __LINUX_KERNEL_VERSION >= 132096 && defined __sh__ -+# define __ASSUME_TRUNCATE64_SYSCALL 1 -+# define __ASSUME_MMAP2_SYSCALL 1 -+# define __ASSUME_STAT64_SYSCALL 1 -+#endif -+ - /* To support locking of large files a new fcntl() syscall was introduced - in 2.4.0-test7. We test for 2.4.1 for the earliest version we know - the syscall is available. */ diff --git a/packages/glibc/glibc-2.2.5/glibc-linuxthreads-2.3.2-initfini.patch b/packages/glibc/glibc-2.2.5/glibc-linuxthreads-2.3.2-initfini.patch deleted file mode 100644 index 4556e858d2..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-linuxthreads-2.3.2-initfini.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urNd glibc-2.3.2-ct25/linuxthreads/Makefile glibc-2.3.2/linuxthreads/Makefile ---- glibc-2.3.2-ct25/linuxthreads/Makefile 2004-06-25 13:48:03.000000000 +0200 -+++ glibc-2.3.2/linuxthreads/Makefile 2004-06-25 13:53:02.000000000 +0200 -@@ -81,7 +81,7 @@ - extra-objs += crti.o crtn.o - omit-deps += crti crtn - --CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time) -+CFLAGS-pt-initfini.s = -O1 -g0 -fPIC -fno-inline-functions $(fno-unit-at-a-time) - endif - - librt-tests = ex10 ex11 diff --git a/packages/glibc/glibc-2.2.5/glibc-test-lowram.patch b/packages/glibc/glibc-2.2.5/glibc-test-lowram.patch deleted file mode 100644 index 658d14bac6..0000000000 --- a/packages/glibc/glibc-2.2.5/glibc-test-lowram.patch +++ /dev/null @@ -1,19 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/malloc/tst-calloc.c~glibc-test-lowram.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/malloc/tst-calloc.c 2004-09-03 19:00:38.000000000 -0500 -@@ -24,9 +24,8 @@ - #include - - --/* Number of samples per size. */ --#define N 50000 -- -+/* Number of samples per size. This is also the maximum memory consumption in kilobytes. */ -+#define N 8000 - - static void - fixed_test (int size) diff --git a/packages/glibc/glibc-2.2.5/initfini-alpha.patch b/packages/glibc/glibc-2.2.5/initfini-alpha.patch deleted file mode 100644 index 94dc2aba25..0000000000 --- a/packages/glibc/glibc-2.2.5/initfini-alpha.patch +++ /dev/null @@ -1,128 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/alpha/elf/initfini.c~initfini-alpha.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/alpha/elf/initfini.c 2004-09-03 19:00:38.000000000 -0500 -@@ -37,62 +37,62 @@ - files, all of which may have different GP values. So we must reload - the GP value from crti.o in crtn.o. */ - --__asm__ (" -- --#include \"defs.h\" -- --/*@HEADER_ENDS*/ -- --/*@_init_PROLOG_BEGINS*/ -- .section .init, \"ax\", @progbits -- .globl _init -- .ent _init --_init: -- ldgp $29, 0($27) -- subq $30, 16, $30 -- lda $27, __gmon_start__ -- stq $26, 0($30) -- stq $29, 8($30) -- .prologue 1 -- beq $27, 1f -- jsr $26, ($27), __gmon_start__ -- ldq $29, 8($30) --1: -- .align 3 -- .end _init -- .size _init, 0 --/*@_init_PROLOG_ENDS*/ -- --/*@_init_EPILOG_BEGINS*/ -- .section .init, \"ax\", @progbits -- ldq $26, 0($30) -- ldq $29, 8($30) -- addq $30, 16, $30 -- ret --/*@_init_EPILOG_ENDS*/ -- --/*@_fini_PROLOG_BEGINS*/ -- .section .fini, \"ax\", @progbits -- .globl _fini -- .ent _fini --_fini: -- ldgp $29, 0($27) -- subq $30, 16, $30 -- stq $26, 0($30) -- stq $29, 8($30) -- .prologue 1 -- .align 3 -- .end _fini -- .size _fini, 0 --/*@_fini_PROLOG_ENDS*/ -- --/*@_fini_EPILOG_BEGINS*/ -- .section .fini, \"ax\", @progbits -- ldq $26, 0($30) -- ldq $29, 8($30) -- addq $30, 16, $30 -- ret --/*@_fini_EPILOG_ENDS*/ -- --/*@TRAILER_BEGINS*/ -+__asm__ ("\n\ -+\n\ -+#include \"defs.h\"\n\ -+\n\ -+/*@HEADER_ENDS*/\n\ -+\n\ -+/*@_init_PROLOG_BEGINS*/\n\ -+ .section .init, \"ax\", @progbits\n\ -+ .globl _init\n\ -+ .ent _init\n\ -+_init:\n\ -+ ldgp $29, 0($27)\n\ -+ subq $30, 16, $30\n\ -+ lda $27, __gmon_start__\n\ -+ stq $26, 0($30)\n\ -+ stq $29, 8($30)\n\ -+ .prologue 1\n\ -+ beq $27, 1f\n\ -+ jsr $26, ($27), __gmon_start__\n\ -+ ldq $29, 8($30)\n\ -+1:\n\ -+ .align 3\n\ -+ .end _init\n\ -+ .size _init, 0\n\ -+/*@_init_PROLOG_ENDS*/\n\ -+\n\ -+/*@_init_EPILOG_BEGINS*/\n\ -+ .section .init, \"ax\", @progbits\n\ -+ ldq $26, 0($30)\n\ -+ ldq $29, 8($30)\n\ -+ addq $30, 16, $30\n\ -+ ret\n\ -+/*@_init_EPILOG_ENDS*/\n\ -+\n\ -+/*@_fini_PROLOG_BEGINS*/\n\ -+ .section .fini, \"ax\", @progbits\n\ -+ .globl _fini\n\ -+ .ent _fini\n\ -+_fini:\n\ -+ ldgp $29, 0($27)\n\ -+ subq $30, 16, $30\n\ -+ stq $26, 0($30)\n\ -+ stq $29, 8($30)\n\ -+ .prologue 1\n\ -+ .align 3\n\ -+ .end _fini\n\ -+ .size _fini, 0\n\ -+/*@_fini_PROLOG_ENDS*/\n\ -+\n\ -+/*@_fini_EPILOG_BEGINS*/\n\ -+ .section .fini, \"ax\", @progbits\n\ -+ ldq $26, 0($30)\n\ -+ ldq $29, 8($30)\n\ -+ addq $30, 16, $30\n\ -+ ret\n\ -+/*@_fini_EPILOG_ENDS*/\n\ -+\n\ -+/*@TRAILER_BEGINS*/\n\ - "); diff --git a/packages/glibc/glibc-2.2.5/initfini-flags.patch b/packages/glibc/glibc-2.2.5/initfini-flags.patch deleted file mode 100644 index 1c9bd2bcf2..0000000000 --- a/packages/glibc/glibc-2.2.5/initfini-flags.patch +++ /dev/null @@ -1,16 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- glibc-2.2.5/csu/Makefile~glibc-2.3.2-initfini -+++ glibc-2.2.5/csu/Makefile -@@ -92,7 +92,7 @@ - $(objpfx)crt%.o: $(objpfx)crt%.S $(objpfx)defs.h - $(compile.S) -g0 $(ASFLAGS-.os) -o $@ - --CFLAGS-initfini.s = -g0 -fPIC -fno-inline-functions -+CFLAGS-initfini.s = -O1 -g0 -fPIC -fno-inline-functions - - vpath initfini.c $(full_config_sysdirs) - diff --git a/packages/glibc/glibc-2.2.5/initfini-sh.patch b/packages/glibc/glibc-2.2.5/initfini-sh.patch deleted file mode 100644 index 2566cd933a..0000000000 --- a/packages/glibc/glibc-2.2.5/initfini-sh.patch +++ /dev/null @@ -1,248 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/sh/elf/initfini.c~initfini-sh.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/sh/elf/initfini.c 2004-09-03 19:00:39.000000000 -0500 -@@ -27,122 +27,122 @@ - * crtn.s puts the corresponding function epilogues - in the .init and .fini sections. */ - --__asm__ (" -- --#include \"defs.h\" --#define SHARED -- --/*@HEADER_ENDS*/ -- --/*@TESTS_BEGIN*/ -- --/*@TESTS_END*/ -- --/*@_init_PROLOG_BEGINS*/ -- .section .init -- .align 5 -- .global _init -- .type _init,@function --_init: -- mov.l r12,@-r15 -- mov.l r14,@-r15 -- sts.l pr,@-r15 --#ifdef SHARED -- mova .L22,r0 -- mov.l .L22,r12 -- add r0,r12 -- mova .L23,r0 -- mov.l .L23,r1 -- add r0,r1 --#else -- mov.l .L23,r1 --#endif -- jsr @r1 -- mov r15,r14 -- bra 1f -- nop -- .align 2 --#ifdef SHARED --.L22: -- .long _GLOBAL_OFFSET_TABLE_ --.L23: -- .long __gmon_start__@PLT --#else --.L23: -- .long __gmon_start__ --#endif -- .data -- .global __fpscr_values --__fpscr_values: -- .long 0 -- .long 0x80000 -- .previous --1: -- ALIGN -- END_INIT -- -- --/*@_init_PROLOG_ENDS*/ -- --/*@_init_EPILOG_BEGINS*/ -- .section .init -- mov r14,r15 -- lds.l @r15+,pr -- mov.l @r15+,r14 -- rts -- mov.l @r15+,r12 -- END_INIT -- .section .text -- .align 5 -- .weak __gmon_start__ -- .type __gmon_start__,@function --__gmon_start__: -- mov.l r14,@-r15 -- mov r15,r14 -- mov r14,r15 -- rts -- mov.l @r15+,r14 -- --/*@_init_EPILOG_ENDS*/ -- --/*@_fini_PROLOG_BEGINS*/ -- .section .fini -- .align 5 -- .global _fini -- .type _fini,@function --_fini: -- mov.l r12,@-r15 -- mov.l r14,@-r15 -- sts.l pr,@-r15 --#ifdef SHARED -- mova .L27,r0 -- mov.l .L27,r12 -- add r0,r12 --#endif -- mov r15,r14 -- ALIGN -- END_FINI --#ifdef SHARED -- bra 1f -- nop -- .align 2 --.L27: -- .long _GLOBAL_OFFSET_TABLE_ --#endif --1: --/*@_fini_PROLOG_ENDS*/ -- --/*@_fini_EPILOG_BEGINS*/ -- .section .fini -- mov r14,r15 -- lds.l @r15+,pr -- mov.l @r15+,r14 -- rts -- mov.l @r15+,r12 -- -- END_FINI -- --/*@_fini_EPILOG_ENDS*/ -- --/*@TRAILER_BEGINS*/ -+__asm__ ("\n\ -+\n\ -+#include \"defs.h\"\n\ -+#define SHARED\n\ -+\n\ -+/*@HEADER_ENDS*/\n\ -+\n\ -+/*@TESTS_BEGIN*/\n\ -+\n\ -+/*@TESTS_END*/\n\ -+\n\ -+/*@_init_PROLOG_BEGINS*/\n\ -+ .section .init\n\ -+ .align 5\n\ -+ .global _init\n\ -+ .type _init,@function\n\ -+_init:\n\ -+ mov.l r12,@-r15\n\ -+ mov.l r14,@-r15\n\ -+ sts.l pr,@-r15\n\ -+#ifdef SHARED\n\ -+ mova .L22,r0\n\ -+ mov.l .L22,r12\n\ -+ add r0,r12\n\ -+ mova .L23,r0\n\ -+ mov.l .L23,r1\n\ -+ add r0,r1\n\ -+#else\n\ -+ mov.l .L23,r1\n\ -+#endif\n\ -+ jsr @r1\n\ -+ mov r15,r14\n\ -+ bra 1f\n\ -+ nop\n\ -+ .align 2\n\ -+#ifdef SHARED\n\ -+.L22:\n\ -+ .long _GLOBAL_OFFSET_TABLE_\n\ -+.L23:\n\ -+ .long __gmon_start__@PLT\n\ -+#else\n\ -+.L23:\n\ -+ .long __gmon_start__\n\ -+#endif\n\ -+ .data\n\ -+ .global __fpscr_values\n\ -+__fpscr_values:\n\ -+ .long 0\n\ -+ .long 0x80000\n\ -+ .previous\n\ -+1:\n\ -+ ALIGN\n\ -+ END_INIT\n\ -+\n\ -+ \n\ -+/*@_init_PROLOG_ENDS*/\n\ -+\n\ -+/*@_init_EPILOG_BEGINS*/\n\ -+ .section .init\n\ -+ mov r14,r15\n\ -+ lds.l @r15+,pr\n\ -+ mov.l @r15+,r14\n\ -+ rts \n\ -+ mov.l @r15+,r12\n\ -+ END_INIT\n\ -+ .section .text\n\ -+ .align 5\n\ -+ .weak __gmon_start__\n\ -+ .type __gmon_start__,@function\n\ -+__gmon_start__:\n\ -+ mov.l r14,@-r15\n\ -+ mov r15,r14\n\ -+ mov r14,r15\n\ -+ rts \n\ -+ mov.l @r15+,r14\n\ -+ \n\ -+/*@_init_EPILOG_ENDS*/\n\ -+\n\ -+/*@_fini_PROLOG_BEGINS*/\n\ -+ .section .fini\n\ -+ .align 5\n\ -+ .global _fini\n\ -+ .type _fini,@function\n\ -+_fini:\n\ -+ mov.l r12,@-r15\n\ -+ mov.l r14,@-r15\n\ -+ sts.l pr,@-r15\n\ -+#ifdef SHARED\n\ -+ mova .L27,r0\n\ -+ mov.l .L27,r12\n\ -+ add r0,r12\n\ -+#endif\n\ -+ mov r15,r14\n\ -+ ALIGN\n\ -+ END_FINI\n\ -+#ifdef SHARED\n\ -+ bra 1f\n\ -+ nop\n\ -+ .align 2\n\ -+.L27:\n\ -+ .long _GLOBAL_OFFSET_TABLE_\n\ -+#endif\n\ -+1:\n\ -+/*@_fini_PROLOG_ENDS*/\n\ -+\n\ -+/*@_fini_EPILOG_BEGINS*/\n\ -+ .section .fini\n\ -+ mov r14,r15\n\ -+ lds.l @r15+,pr\n\ -+ mov.l @r15+,r14\n\ -+ rts \n\ -+ mov.l @r15+,r12\n\ -+\n\ -+ END_FINI\n\ -+ \n\ -+/*@_fini_EPILOG_ENDS*/\n\ -+\n\ -+/*@TRAILER_BEGINS*/\n\ - "); diff --git a/packages/glibc/glibc-2.2.5/ldd.patch b/packages/glibc/glibc-2.2.5/ldd.patch deleted file mode 100644 index 01719dbe08..0000000000 --- a/packages/glibc/glibc-2.2.5/ldd.patch +++ /dev/null @@ -1,38 +0,0 @@ ---- elf/ldd.bash.in~ Tue Apr 3 21:43:31 2001 -+++ elf/ldd.bash.in Tue Apr 3 21:54:15 2001 -@@ -32,6 +32,7 @@ - warn= - bind_now= - verbose= -+filename_magic_regex="((^|/)lib|.so$)" - - while test $# -gt 0; do - case "$1" in -@@ -123,8 +124,11 @@ - echo "ldd: ${file}:" $"No such file or directory" >&2 - result=1 - elif test -r "$file"; then -- test -x "$file" || echo 'ldd:' $"\ --warning: you do not have execution permission for" "\`$file'" >&2 -+ if test ! -x "$file" && eval echo "$file" \ -+ | egrep -v "$filename_magic_regex" > /dev/null; then -+ echo 'ldd:' $"warning: you do not have execution permission for"\ -+ "\`$file'" >&2 -+ fi - RTLD= - for rtld in ${RTLDLIST}; do - if test -x $rtld; then -@@ -143,7 +147,12 @@ - fi - case $ret in - 0) -- eval $add_env '"$file"' || result=1 -+ if [ ! -x "$file" ] && eval file -L "$file" 2>/dev/null \ -+ | sed 10q | egrep "$file_magic_regex" > /dev/null; then -+ eval $add_env ${RTLD} '"$file"' || result=1 -+ else -+ eval $add_env '"$file"' || result=1 -+ fi - ;; - 1) - # This can be a non-ELF binary or no binary at all. diff --git a/packages/glibc/glibc-2.2.5/linuxthreads-2.2.5-ppc405erratum77.patch b/packages/glibc/glibc-2.2.5/linuxthreads-2.2.5-ppc405erratum77.patch deleted file mode 100644 index 48127a1281..0000000000 --- a/packages/glibc/glibc-2.2.5/linuxthreads-2.2.5-ppc405erratum77.patch +++ /dev/null @@ -1,34 +0,0 @@ -# see http://bugs.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=4155 -# and http://www.kegel.com/xgcc3/ppc405erratum77.html -# See also matching patch for glibc - -diff -aur glibc-2.2.5.orig/linuxthreads/sysdeps/powerpc/pt-machine.h glibc-2.2.5/linuxthreads/sysdeps/powerpc/pt-machine.h ---- glibc-2.2.5.orig/linuxthreads/sysdeps/powerpc/pt-machine.h Thu May 17 12:47:46 2001 -+++ glibc-2.2.5/linuxthreads/sysdeps/powerpc/pt-machine.h Tue Jul 23 05:38:24 2002 -@@ -41,6 +41,17 @@ - #define HAS_COMPARE_AND_SWAP_WITH_RELEASE_SEMANTICS - #define IMPLEMENT_TAS_WITH_CAS - -+#ifdef __PPC405__ -+/* workaround for PPC405 erratum #77 - Mark Hatle, dank. References: -+ http://www-3.ibm.com/chips/techlib/techlib.nsf/techdocs/89DED00DEBFF54BF87256A8000491BA2/$file/405CR_C_errata_1_2.pdf -+ http://ppc.bkbits.net:8080/linuxppc_2_4_devel/cset@1.489 -+ http://www.kegel.com/xgcc3/ppc405erratum77.html -+ FIXME: using dbct instead of sync would be faster */ -+#define __LINUXTHREADS_PPC405_ERR77_SYNC "sync \n\t" -+#else -+#define __LINUXTHREADS_PPC405_ERR77_SYNC -+#endif -+ - PT_EI int - __compare_and_swap (long int *p, long int oldval, long int newval) - { -@@ -50,6 +61,7 @@ - "0: lwarx %0,0,%1 ;" - " xor. %0,%3,%0;" - " bne 1f;" -+ __LINUXTHREADS_PPC405_ERR77_SYNC - " stwcx. %2,0,%1;" - " bne- 0b;" - "1: " - diff --git a/packages/glibc/glibc-2.2.5/longjmp-sparc.patch b/packages/glibc/glibc-2.2.5/longjmp-sparc.patch deleted file mode 100644 index 8bce091779..0000000000 --- a/packages/glibc/glibc-2.2.5/longjmp-sparc.patch +++ /dev/null @@ -1,16 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h~longjmp-sparc.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h 2004-09-03 19:00:39.000000000 -0500 -@@ -48,7 +48,7 @@ - #define END(name) \ - .size name, . - name - --#define LOC(name) . ## L ## name -+#define LOC(name) .##L##name - - #ifdef PIC - #define SYSCALL_ERROR_HANDLER \ diff --git a/packages/glibc/glibc-2.2.5/pt-initfini-alpha.patch b/packages/glibc/glibc-2.2.5/pt-initfini-alpha.patch deleted file mode 100644 index 22a1cfed17..0000000000 --- a/packages/glibc/glibc-2.2.5/pt-initfini-alpha.patch +++ /dev/null @@ -1,119 +0,0 @@ ---- glibc-2.2.5/linuxthreads/sysdeps/alpha/elf/pt-initfini.c.old Fri Jun 6 22:02:08 2003 -+++ glibc-2.2.5/linuxthreads/sysdeps/alpha/elf/pt-initfini.c Fri Jun 6 22:02:33 2003 -@@ -37,60 +37,60 @@ - files, all of which may have different GP values. So we must reload - the GP value from crti.o in crtn.o. */ - --__asm__ (" -- --#include \"defs.h\" -- --/*@HEADER_ENDS*/ -- --/*@_init_PROLOG_BEGINS*/ -- .section .init, \"ax\", @progbits -- .globl _init -- .ent _init --_init: -- ldgp $29, 0($27) -- subq $30, 16, $30 -- lda $27, __pthread_initialize_minimal -- stq $26, 0($30) -- stq $29, 8($30) -- .prologue 1 -- jsr $26, ($27), __pthread_initialize_minimal -- ldq $29, 8($30) -- .align 3 -- .end _init -- .size _init, 0 --/*@_init_PROLOG_ENDS*/ -- --/*@_init_EPILOG_BEGINS*/ -- .section .init, \"ax\", @progbits -- ldq $26, 0($30) -- ldq $29, 8($30) -- addq $30, 16, $30 -- ret --/*@_init_EPILOG_ENDS*/ -- --/*@_fini_PROLOG_BEGINS*/ -- .section .fini, \"ax\", @progbits -- .globl _fini -- .ent _fini --_fini: -- ldgp $29, 0($27) -- subq $30, 16, $30 -- stq $26, 0($30) -- stq $29, 8($30) -- .prologue 1 -- .align 3 -- .end _fini -- .size _fini, 0 --/*@_fini_PROLOG_ENDS*/ -- --/*@_fini_EPILOG_BEGINS*/ -- .section .fini, \"ax\", @progbits -- ldq $26, 0($30) -- ldq $29, 8($30) -- addq $30, 16, $30 -- ret --/*@_fini_EPILOG_ENDS*/ -- --/*@TRAILER_BEGINS*/ -+__asm__ ("\n\ -+\n\ -+#include \"defs.h\"\n\ -+\n\ -+/*@HEADER_ENDS*/\n\ -+\n\ -+/*@_init_PROLOG_BEGINS*/\n\ -+ .section .init, \"ax\", @progbits\n\ -+ .globl _init\n\ -+ .ent _init\n\ -+_init:\n\ -+ ldgp $29, 0($27)\n\ -+ subq $30, 16, $30\n\ -+ lda $27, __pthread_initialize_minimal\n\ -+ stq $26, 0($30)\n\ -+ stq $29, 8($30)\n\ -+ .prologue 1\n\ -+ jsr $26, ($27), __pthread_initialize_minimal\n\ -+ ldq $29, 8($30)\n\ -+ .align 3\n\ -+ .end _init\n\ -+ .size _init, 0\n\ -+/*@_init_PROLOG_ENDS*/\n\ -+\n\ -+/*@_init_EPILOG_BEGINS*/\n\ -+ .section .init, \"ax\", @progbits\n\ -+ ldq $26, 0($30)\n\ -+ ldq $29, 8($30)\n\ -+ addq $30, 16, $30\n\ -+ ret\n\ -+/*@_init_EPILOG_ENDS*/\n\ -+\n\ -+/*@_fini_PROLOG_BEGINS*/\n\ -+ .section .fini, \"ax\", @progbits\n\ -+ .globl _fini\n\ -+ .ent _fini\n\ -+_fini:\n\ -+ ldgp $29, 0($27)\n\ -+ subq $30, 16, $30\n\ -+ stq $26, 0($30)\n\ -+ stq $29, 8($30)\n\ -+ .prologue 1\n\ -+ .align 3\n\ -+ .end _fini\n\ -+ .size _fini, 0\n\ -+/*@_fini_PROLOG_ENDS*/\n\ -+\n\ -+/*@_fini_EPILOG_BEGINS*/\n\ -+ .section .fini, \"ax\", @progbits\n\ -+ ldq $26, 0($30)\n\ -+ ldq $29, 8($30)\n\ -+ addq $30, 16, $30\n\ -+ ret\n\ -+/*@_fini_EPILOG_ENDS*/\n\ -+\n\ -+/*@TRAILER_BEGINS*/\n\ - "); diff --git a/packages/glibc/glibc-2.2.5/pt-initfini-flags.patch b/packages/glibc/glibc-2.2.5/pt-initfini-flags.patch deleted file mode 100644 index e8ba2facfc..0000000000 --- a/packages/glibc/glibc-2.2.5/pt-initfini-flags.patch +++ /dev/null @@ -1,16 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- glibc-2.2.5/linuxthreads/Makefile~glibc-linuxthreads-2.3.2-initfini -+++ glibc-2.2.5/linuxthreads/Makefile -@@ -54,7 +54,7 @@ - extra-objs += crti.o - omit-deps += crti - --CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions -+CFLAGS-pt-initfini.s = -O1 -g0 -fPIC -fno-inline-functions - endif - - librt-tests = ex10 ex11 diff --git a/packages/glibc/glibc-2.2.5/pt-initfini-sh.patch b/packages/glibc/glibc-2.2.5/pt-initfini-sh.patch deleted file mode 100644 index 8c9cdb8ada..0000000000 --- a/packages/glibc/glibc-2.2.5/pt-initfini-sh.patch +++ /dev/null @@ -1,267 +0,0 @@ ---- glibc-2.2.5/linuxthreads/sysdeps/unix/sysv/linux/sh/pt-initfini.c.old Wed May 28 09:29:55 2003 -+++ glibc-2.2.5/linuxthreads/sysdeps/unix/sysv/linux/sh/pt-initfini.c Wed May 28 09:30:11 2003 -@@ -36,134 +36,134 @@ - * crtn.s puts the corresponding function epilogues - in the .init and .fini sections. */ - --__asm__ (" -- --#include \"defs.h\" --#define SHARED -- --/*@HEADER_ENDS*/ -- --/*@TESTS_BEGIN*/ -- --/*@TESTS_END*/ -- --/*@_init_PROLOG_BEGINS*/ -- .section .init -- .align 5 -- .global _init -- .type _init,@function --_init: -- mov.l r12,@-r15 -- mov.l r14,@-r15 -- sts.l pr,@-r15 --#ifdef SHARED -- mova .L22,r0 -- mov.l .L22,r12 -- add r0,r12 -- mova .L24,r0 -- mov.l .L24,r1 -- add r0,r1 -- jsr @r1 -- nop -- mova .L23,r0 -- mov.l .L23,r1 -- add r0,r1 --#else -- mov.l .L24,r1 -- jsr @r1 -- nop -- mov.l .L23,r1 --#endif -- jsr @r1 -- mov r15,r14 -- bra 1f -- nop -- .align 2 --#ifdef SHARED --.L22: -- .long _GLOBAL_OFFSET_TABLE_ --.L23: -- .long __gmon_start__@PLT --.L24: -- .long __pthread_initialize_minimal@PLT --#else --.L23: -- .long __gmon_start__ --.L24: -- .long __pthread_initialize_minimal --#endif -- .data -- .global __fpscr_values --__fpscr_values: -- .long 0 -- .long 0x80000 -- .previous --1: -- ALIGN -- END_INIT -- -- --/*@_init_PROLOG_ENDS*/ -- --/*@_init_EPILOG_BEGINS*/ -- .section .init -- mov r14,r15 -- lds.l @r15+,pr -- mov.l @r15+,r14 -- rts -- mov.l @r15+,r12 -- END_INIT -- .section .text -- .align 5 -- .weak __gmon_start__ -- .type __gmon_start__,@function --__gmon_start__: -- mov.l r14,@-r15 -- mov r15,r14 -- mov r14,r15 -- rts -- mov.l @r15+,r14 -- --/*@_init_EPILOG_ENDS*/ -- --/*@_fini_PROLOG_BEGINS*/ -- .section .fini -- .align 5 -- .global _fini -- .type _fini,@function --_fini: -- mov.l r12,@-r15 -- mov.l r14,@-r15 -- sts.l pr,@-r15 --#ifdef SHARED -- mova .L27,r0 -- mov.l .L27,r12 -- add r0,r12 --#endif -- mov r15,r14 -- ALIGN -- END_FINI --#ifdef SHARED -- bra 1f -- nop -- .align 2 --.L27: -- .long _GLOBAL_OFFSET_TABLE_ --#endif --1: --/*@_fini_PROLOG_ENDS*/ -- --/*@_fini_EPILOG_BEGINS*/ -- .section .fini -- mov r14,r15 -- lds.l @r15+,pr -- mov.l @r15+,r14 -- rts -- mov.l @r15+,r12 -- -- END_FINI -- --/*@_fini_EPILOG_ENDS*/ -- --/*@TRAILER_BEGINS*/ -+__asm__ ("\n\ -+\n\ -+#include \"defs.h\"\n\ -+#define SHARED\n\ -+\n\ -+/*@HEADER_ENDS*/\n\ -+\n\ -+/*@TESTS_BEGIN*/\n\ -+\n\ -+/*@TESTS_END*/\n\ -+\n\ -+/*@_init_PROLOG_BEGINS*/\n\ -+ .section .init\n\ -+ .align 5\n\ -+ .global _init\n\ -+ .type _init,@function\n\ -+_init:\n\ -+ mov.l r12,@-r15\n\ -+ mov.l r14,@-r15\n\ -+ sts.l pr,@-r15\n\ -+#ifdef SHARED\n\ -+ mova .L22,r0\n\ -+ mov.l .L22,r12\n\ -+ add r0,r12\n\ -+ mova .L24,r0\n\ -+ mov.l .L24,r1\n\ -+ add r0,r1\n\ -+ jsr @r1\n\ -+ nop\n\ -+ mova .L23,r0\n\ -+ mov.l .L23,r1\n\ -+ add r0,r1\n\ -+#else\n\ -+ mov.l .L24,r1\n\ -+ jsr @r1\n\ -+ nop\n\ -+ mov.l .L23,r1\n\ -+#endif\n\ -+ jsr @r1\n\ -+ mov r15,r14\n\ -+ bra 1f\n\ -+ nop\n\ -+ .align 2\n\ -+#ifdef SHARED\n\ -+.L22:\n\ -+ .long _GLOBAL_OFFSET_TABLE_\n\ -+.L23:\n\ -+ .long __gmon_start__@PLT\n\ -+.L24:\n\ -+ .long __pthread_initialize_minimal@PLT\n\ -+#else\n\ -+.L23:\n\ -+ .long __gmon_start__\n\ -+.L24:\n\ -+ .long __pthread_initialize_minimal\n\ -+#endif\n\ -+ .data\n\ -+ .global __fpscr_values\n\ -+__fpscr_values:\n\ -+ .long 0\n\ -+ .long 0x80000\n\ -+ .previous\n\ -+1:\n\ -+ ALIGN\n\ -+ END_INIT\n\ -+\n\ -+ \n\ -+/*@_init_PROLOG_ENDS*/\n\ -+\n\ -+/*@_init_EPILOG_BEGINS*/\n\ -+ .section .init\n\ -+ mov r14,r15\n\ -+ lds.l @r15+,pr\n\ -+ mov.l @r15+,r14\n\ -+ rts \n\ -+ mov.l @r15+,r12\n\ -+ END_INIT\n\ -+ .section .text\n\ -+ .align 5\n\ -+ .weak __gmon_start__\n\ -+ .type __gmon_start__,@function\n\ -+__gmon_start__:\n\ -+ mov.l r14,@-r15\n\ -+ mov r15,r14\n\ -+ mov r14,r15\n\ -+ rts \n\ -+ mov.l @r15+,r14\n\ -+ \n\ -+/*@_init_EPILOG_ENDS*/\n\ -+\n\ -+/*@_fini_PROLOG_BEGINS*/\n\ -+ .section .fini\n\ -+ .align 5\n\ -+ .global _fini\n\ -+ .type _fini,@function\n\ -+_fini:\n\ -+ mov.l r12,@-r15\n\ -+ mov.l r14,@-r15\n\ -+ sts.l pr,@-r15\n\ -+#ifdef SHARED\n\ -+ mova .L27,r0\n\ -+ mov.l .L27,r12\n\ -+ add r0,r12\n\ -+#endif\n\ -+ mov r15,r14\n\ -+ ALIGN\n\ -+ END_FINI\n\ -+#ifdef SHARED\n\ -+ bra 1f\n\ -+ nop\n\ -+ .align 2\n\ -+.L27:\n\ -+ .long _GLOBAL_OFFSET_TABLE_\n\ -+#endif\n\ -+1:\n\ -+/*@_fini_PROLOG_ENDS*/\n\ -+\n\ -+/*@_fini_EPILOG_BEGINS*/\n\ -+ .section .fini\n\ -+ mov r14,r15\n\ -+ lds.l @r15+,pr\n\ -+ mov.l @r15+,r14\n\ -+ rts \n\ -+ mov.l @r15+,r12\n\ -+\n\ -+ END_FINI\n\ -+ \n\ -+/*@_fini_EPILOG_ENDS*/\n\ -+\n\ -+/*@TRAILER_BEGINS*/\n\ - "); diff --git a/packages/glibc/glibc-2.2.5/sh-setjmp-fix.patch b/packages/glibc/glibc-2.2.5/sh-setjmp-fix.patch deleted file mode 100644 index fa2f51aab6..0000000000 --- a/packages/glibc/glibc-2.2.5/sh-setjmp-fix.patch +++ /dev/null @@ -1,17 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/sh/bits/setjmp.h~sh-setjmp-fix.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/sh/bits/setjmp.h 2004-09-03 19:00:39.000000000 -0500 -@@ -42,7 +42,9 @@ - } __jmp_buf[1]; - #endif - -+#if defined __USE_MISC || defined _ASM - #define JB_SIZE (4 * 15) -+#endif - - /* Test if longjmp to JMPBUF would unwind the frame - containing a local variable at ADDRESS. */ diff --git a/packages/glibc/glibc-2.2.5/sprintf-prototype.patch b/packages/glibc/glibc-2.2.5/sprintf-prototype.patch deleted file mode 100644 index 47dc672a38..0000000000 --- a/packages/glibc/glibc-2.2.5/sprintf-prototype.patch +++ /dev/null @@ -1,18 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/stdio-common/sprintf.c~sprintf-prototype.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/stdio-common/sprintf.c 2004-09-03 19:00:39.000000000 -0500 -@@ -27,9 +27,7 @@ - /* Write formatted output into S, according to the format string FORMAT. */ - /* VARARGS2 */ - int --sprintf (s, format) -- char *s; -- const char *format; -+sprintf (char *s, const char *format, ...) - { - va_list arg; - int done; diff --git a/packages/glibc/glibc-2.2.5/sscanf.patch b/packages/glibc/glibc-2.2.5/sscanf.patch deleted file mode 100644 index 2958b1f8e0..0000000000 --- a/packages/glibc/glibc-2.2.5/sscanf.patch +++ /dev/null @@ -1,64 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/stdio-common/sscanf.c~sscanf.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/stdio-common/sscanf.c 2004-09-03 19:00:39.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991, 1995, 1996, 1998 Free Software Foundation, Inc. -+/* Copyright (C) 1991,1995,1996,1998,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -27,9 +27,7 @@ - /* Read formatted input from S, according to the format string FORMAT. */ - /* VARARGS2 */ - int --sscanf (s, format) -- const char *s; -- const char *format; -+sscanf (const char *s, const char *format, ...) - { - va_list arg; - int done; ---- glibc-2.2.5/libio/swprintf.c~sscanf.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/libio/swprintf.c 2004-09-03 19:00:39.000000000 -0500 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1991,1995,1997,1998,1999,2000 Free Software Foundation, Inc. -+/* Copyright (C) 1991,1995,1997,1998,1999,2000,2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -22,10 +23,7 @@ - /* Write formatted output into S, according to the format string FORMAT. */ - /* VARARGS3 */ - int --swprintf (s, n, format) -- wchar_t *s; -- size_t n; -- const wchar_t *format; -+swprintf (wchar_t *s, size_t n, const wchar_t *format, ...) - { - va_list arg; - int done; ---- glibc-2.2.5/libio/swscanf.c~sscanf.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/libio/swscanf.c 2004-09-03 19:00:39.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991, 1995, 1996, 1998, 1999 Free Software Foundation, Inc. -+/* Copyright (C) 1991,1995,1996,1998,1999,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -22,9 +22,7 @@ - /* Read formatted input from S, according to the format string FORMAT. */ - /* VARARGS2 */ - int --swscanf (s, format) -- const wchar_t *s; -- const wchar_t *format; -+swscanf (const wchar_t *s, const wchar_t *format, ...) - { - va_list arg; - int done; diff --git a/packages/glibc/glibc-2.2.5/threadparam.patch b/packages/glibc/glibc-2.2.5/threadparam.patch deleted file mode 100644 index dd97838c07..0000000000 --- a/packages/glibc/glibc-2.2.5/threadparam.patch +++ /dev/null @@ -1,69 +0,0 @@ -2002-05-21 Ulrich Drepper - - * sysdeps/pthread/pthread.h (pthread_create): Rename first parameter. - (pthread_cancel): Likewise. - * internals.h (__pthread_create_2_1): Likewise. - * sysdeps/unix/sysv/linux/bits/sigthread.h (pthread_kill): Likewise. -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads/internals.h,v -retrieving revision 1.69.2.2 -retrieving revision 1.69.2.3 -diff -u -r1.69.2.2 -r1.69.2.3 ---- libc/linuxthreads/internals.h 2002/03/22 08:30:32 1.69.2.2 -+++ libc/linuxthreads/internals.h 2002/08/20 22:01:25 1.69.2.3 -@@ -554,7 +554,7 @@ - /* Prototypes for compatibility functions. */ - extern int __pthread_attr_init_2_1 (pthread_attr_t *__attr); - extern int __pthread_attr_init_2_0 (pthread_attr_t *__attr); --extern int __pthread_create_2_1 (pthread_t *__restrict __thread, -+extern int __pthread_create_2_1 (pthread_t *__restrict __threadp, - const pthread_attr_t *__attr, - void *(*__start_routine) (void *), - void *__restrict __arg); -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads/sysdeps/pthread/pthread.h,v -retrieving revision 1.31 -retrieving revision 1.31.2.1 -diff -u -r1.31 -r1.31.2.1 ---- libc/linuxthreads/sysdeps/pthread/pthread.h 2001/03/15 21:12:31 1.31 -+++ libc/linuxthreads/sysdeps/pthread/pthread.h 2002/08/20 22:01:26 1.31.2.1 -@@ -160,7 +160,7 @@ - /* Create a thread with given attributes ATTR (or default attributes - if ATTR is NULL), and call function START_ROUTINE with given - arguments ARG. */ --extern int pthread_create (pthread_t *__restrict __thread, -+extern int pthread_create (pthread_t *__restrict __threadp, - __const pthread_attr_t *__restrict __attr, - void *(*__start_routine) (void *), - void *__restrict __arg) __THROW; -@@ -588,7 +588,7 @@ - extern int pthread_setcanceltype (int __type, int *__oldtype) __THROW; - - /* Cancel THREAD immediately or at the next possibility. */ --extern int pthread_cancel (pthread_t __thread) __THROW; -+extern int pthread_cancel (pthread_t __cancelthread) __THROW; - - /* Test for pending cancellation for the current thread and terminate - the thread as per pthread_exit(PTHREAD_CANCELED) if it has been -=================================================================== -RCS file: /cvs/glibc/libc/linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h,v -retrieving revision 1.5 -retrieving revision 1.5.2.1 -diff -u -r1.5 -r1.5.2.1 ---- libc/linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h 2000/08/21 06:48:03 1.5 -+++ libc/linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h 2002/08/20 22:01:26 1.5.2.1 -@@ -1,5 +1,5 @@ - /* Signal handling function for threaded programs. -- Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1998, 1999, 2000, 2002 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -33,6 +33,6 @@ - __sigset_t *__restrict __oldmask)__THROW; - - /* Send signal SIGNO to the given thread. */ --extern int pthread_kill (pthread_t __thread, int __signo) __THROW; -+extern int pthread_kill (pthread_t __threadid, int __signo) __THROW; - - #endif /* bits/sigthread.h */ diff --git a/packages/glibc/glibc-2.2.5/unwind-arm.patch b/packages/glibc/glibc-2.2.5/unwind-arm.patch deleted file mode 100644 index b44f41aec0..0000000000 --- a/packages/glibc/glibc-2.2.5/unwind-arm.patch +++ /dev/null @@ -1,18 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- glibc-2.2.5/sysdeps/unix/sysv/linux/configure~unwind-arm.patch 2004-09-03 19:00:33.000000000 -0500 -+++ glibc-2.2.5/sysdeps/unix/sysv/linux/configure 2004-09-03 19:00:39.000000000 -0500 -@@ -56,6 +56,10 @@ - arch_minimum_kernel=2.1.100 - libc_cv_gcc_unwind_find_fde=yes - ;; -+ arm*) -+ libc_cv_gcc_unwind_find_fde=yes -+ arch_minimum_kernel=2.0.10 -+ ;; - i386*) - libc_cv_gcc_unwind_find_fde=yes - arch_minimum_kernel=2.0.10 diff --git a/packages/glibc/glibc-2.3.2/10_cvs.patch b/packages/glibc/glibc-2.3.2/10_cvs.patch deleted file mode 100644 index 0c3ecdcb40..0000000000 --- a/packages/glibc/glibc-2.3.2/10_cvs.patch +++ /dev/null @@ -1,177118 +0,0 @@ ---- glibc-2.3.2/CANCEL-FILE-WAIVE 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/CANCEL-FILE-WAIVE 2003-09-02 05:24:58.000000000 -0400 -@@ -0,0 +1,33 @@ -+mkdtemp.os -+tmpnam.os -+tmpnam_r.os -+__assert.os -+assert.os -+assert-perr.os -+gconv_builtin.os -+gconv_simple.os -+gconv.os -+iconv.os -+strfmon.os -+strfmon_l.os -+argp-xinl.os -+iofdopen.os -+printf_fp.os -+printf_fphex.os -+printf_size.os -+strxfrm.os -+strxfrm_l.os -+strcoll.os -+strcoll_l.os -+alphasort.os -+alphasort64.os -+set-freeres.os -+btowc.os -+wctob.os -+mblen.os -+strops.os -+wstrops.os -+fmemopen.os -+closedir.os -+hsearch.os -+hsearch_r.os ---- glibc-2.3.2/ChangeLog 2003-02-28 20:10:14.000000000 -0500 -+++ glibc-2.3.2/ChangeLog 2003-09-20 09:40:33.000000000 -0400 -@@ -1,3 +1,5919 @@ -+2003-09-19 Ulrich Drepper -+ -+ * elf/Makefile ($(objpfx)librtld.os): Create link map also for -+ final build to ease quality control. -+ -+ * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for -+ ld.so, don't include NULL buffer pointer handling. -+ -+2003-09-19 Jakub Jelinek -+ -+ * dlfcn/dlopen.c (dlopen): Add static_link_warning. -+ -+2003-09-18 Jakub Jelinek -+ -+ * libio/memstream.c (open_memstream): Use _IO_init instead of -+ _IO_old_init. -+ -+2003-09-17 Ulrich Drepper -+ -+ * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we -+ have to recognize octal and hexadecimal numbers as well. Simplify -+ function, signs are handled in strtol. -+ * posix/wordexp-test.c: Add tests for octal and hexadecimal -+ numbers in arithmetic expressions. -+ -+2003-09-17 Jakub Jelinek -+ -+ * elf/Makefile (distribute): Add tst-alignmod.c. -+ (tests): Add tst-align. -+ (modules-names): Add tst-alignmod. -+ (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add -+ $(stack-align-test-flags). -+ ($(objpfx)tst-align): Depend on libdl. -+ ($(objpfx)tst-align.out): Depend on tst-alignmod.so. -+ * elf/tst-align.c: New file. -+ * elf/tst-alignmod.c: New file. -+ * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags). -+ * misc/tst-tsearch.c: Include tst-stack-align.h. -+ (stack_align_check): New array. -+ (cmp_fn, walk_action): Use TEST_STACK_ALIGN (). -+ (main): Report error if stack was not enough aligned -+ in cmp_fn or walk_action. -+ * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags). -+ * stdlib/tst-qsort.c: Include tst-stack-align.h. -+ (align_check): New var. -+ (compare): Use TEST_STACK_ALIGN () macro. -+ (main): Report error if stack was not enough aligned in compare. -+ * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove -+ unneeded -mpreferred-stack-boundary=4. -+ * sysdeps/x86_64/tst-stack-align.h: New file. -+ -+ * libio/memstream.c (_IO_wmem_jumps): Remove unused structure. -+ (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions. -+ -+2003-09-17 Philip Blundell -+ -+ * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted. -+ (BX): Define. -+ (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little. -+ -+ * sysdeps/arm/sysdep.h (DO_RET): New. -+ -+ * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork -+ required but not defined. Improve test of error code. -+ -+2003-09-17 Jakub Jelinek -+ -+ * sysdeps/i386/Makefile (stack-align-test-flags): Add -+ -malign-double -mpreferred-stack-boundary=4. -+ -+2003-09-17 Ulrich Drepper -+ -+ * sysdeps/posix/utimes.c (__utimes): Truncate instead of round. -+ * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise. -+ -+2003-09-15 Jakub Jelinek -+ -+ * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu -+ subdir, add -mpreferred-stack-boundary=4, with few exceptions. -+ -+2003-09-17 Jakub Jelinek -+ -+ * Makeconfig (stack-align-test-flags): Set. -+ * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add -+ $(stack-align-test-flags). -+ * stdlib/tst-bsearch.c: Include tst-stack-align.h. -+ (align_check): New var. -+ (comp): Use TEST_STACK_ALIGN macro. -+ (do_test): Fail if align_check != 1. -+ * sysdeps/generic/tst-stack-align.h: New file. -+ * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse. -+ * sysdeps/i386/i686/tst-stack-align.h: New file. -+ -+2003-09-17 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a -+ stack which is aligned (mod 16). -+ -+2003-09-17 Uwe Reimann -+ Hans-Peter Nilsson -+ -+ * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify -+ R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT. Clarify comment. -+ -+2003-09-17 Jakub Jelinek -+ -+ * dirent/scandir.c: Include bits/libc-lock.h. -+ (struct scandir_cancel_struct): New type. -+ (cancel_handler): New function. -+ (SCANDIR): Add __libc_cleanup_{push,pop}, save state into -+ scandir_cancel_struct. -+ -+2003-09-16 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c. -+ * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): -+ Add internal_statvfs. -+ * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs -+ instead of including "internal_statvfs.c". -+ * sysdeps/unix/sysv/linux/statvfs.c: Likewise. -+ * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function. -+ Add code to avoid the stat calls on all the reported mount points -+ when we can determine mismatch in advance. -+ * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and -+ USBDEVFS_SUPER_MAGIC. -+ -+2003-09-16 Jakub Jelinek -+ -+ * posix/Versions (sched_getaffinity, sched_setaffinity): Change -+ from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version. -+ -+2003-09-16 Bruno Haible -+ -+ * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after -+ invoking msgfmt, not before. -+ -+2003-09-15 Jakub Jelinek -+ -+ * argp/argp.h (argp_parse, __argp_parse): Remove __THROW. -+ * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add -+ $(uses-callbacks). -+ * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise. -+ * elf/Makefile (CFLAGS-dl-iterate-phdr.c, -+ CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks). -+ * elf/dl-iteratephdr.c (cancel_handler): New function. -+ (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}. -+ * elf/link.h (dl_iterate_phdr): Remove __THROW. -+ * io/Makefile (CFLAGS-fts.c): Merge into one assignment. -+ Add $(uses-callbacks). -+ (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks). -+ * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change -+ $(exceptions) to $(uses-callbacks). -+ * Makeconfig (uses-callbacks): Set to $(exceptions). -+ * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add -+ $(uses-callbacks). -+ * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c): -+ Likewise. -+ -+2003-09-15 Andreas Schwab -+ -+ * sysdeps/m68k/setjmp.c: Add hidden_def. -+ -+2003-09-14 Ulrich Drepper -+ -+ * libio/memstream.c (open_memstream): Don't allow wide char operations. -+ -+ * dirent/dirent.h: Remove __THROW from scandir. -+ -+2003-09-14 Philip Blundell -+ -+ * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known -+ to be available. -+ -+ * sysdeps/unix/sysv/linux/arm/mmap64.S: Optimise code a little. -+ -+ * sysdeps/arm/memset.S: Rewrite. -+ -+2003-09-12 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New. -+ (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and -+ __SLONGWORD_TYPE otherwise. -+ -+2003-09-14 Ulrich Drepper -+ -+ * io/Makefile (CFLAGS-ftw.c): Add -fexceptions. -+ (CFLAGS-ftw64.c): Likewise. -+ -+2003-09-13 Ulrich Drepper -+ -+ * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Add -fexceptions. -+ (CFLAGS-nscd_getgr_r.c): Likewise. -+ (CFLAGS-nscd_gethst_r.c): Likewise. -+ -+2003-09-12 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/if_index.c: Use only non-cancelable -+ interfaces. -+ -+ * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c, -+ CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c, -+ CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions. -+ * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c, -+ CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise. -+ * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c): -+ Likewise. -+ * misc/Makefile (CFLAGS-err.c): Likewise. -+ * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c, -+ CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c, -+ CFLAGS-glob64.c): Likewise. -+ * pwd/Makefile (CFLAGS-getpw.c): Likewise. -+ * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c, -+ CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise. -+ * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise. -+ * sunrpc/Makefile (CFLAGS-openchild.c): Likewise. -+ -+ * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition. -+ -+ * libio/stdio.h: Remove __THROW from cuserid prototype. -+ -+ * locale/loadarchive.c: Use only non-cancelable interfaces. -+ * resolv/herror.c (herror): Likewise. -+ -+ * malloc/hooks.c: Before using IO stream mark stream so it uses -+ only non-cancelable interfaces. -+ * malloc/malloc.c: Likewise. -+ * posix/getopt.c: Likewise. -+ -+ -+2003-09-11 Jakub Jelinek -+ -+ * Makerules (LDFLAGS-c.so): Remove -u __register_frame. -+ -+2003-09-12 Ulrich Drepper -+ -+ * stdio-common/stdio_ext.h: Mark most functions with __THROW. -+ -+ * misc/err.h: Remove __THROW from all prototypes. -+ -+ * posix/getopt.h (__THROW): Define if not already defined. Add -+ __THROW to the getopt functions. -+ -+2003-09-11 Ulrich Drepper -+ -+ * io/Makefile (CFLAGS-lockf.c): Add -fexceptions. -+ (CFLAGS-fts.c): Likewise. -+ * io/fcntl.h: Remove __THROW from lockf prototypes. -+ * io/fts.h: Remove most __THROW. -+ -+2003-09-11 H.J. Lu -+ -+ * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64. -+ (TLS_LD): Likewise. -+ (TLS_GD): Likewise. -+ -+2003-09-11 Jakub Jelinek -+ -+ * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to -+ _IO_free_backup_area call. -+ -+2003-09-10 Chris Demetriou -+ -+ * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Fix -+ syscall invocation. -+ * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise. -+ * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise. -+ Also, only assert off_t size is 4 for N32 and O32, and clean up -+ white space. -+ * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise. -+ -+2003-09-10 Roland McGrath -+ -+ * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): -+ Don't use c_ispeed under [! _HAVE_STRUCT_TERMIOS_C_ISPEED]. -+ Don't use c_ospeed under [! _HAVE_STRUCT_TERMIOS_C_OSPEED]. -+ * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise. -+ Reported by Daniel Jacobowitz . -+ -+2003-09-10 Jakub Jelinek -+ -+ * string/Makefile (strop-tests): Add memccpy. -+ * string/test-memccpy.c: New test. -+ -+2003-09-09 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): Add -+ siginfo_t * argument before, change into struct ucontext *. -+ (SIGCONTEXT_EXTRA_ARGS): Define to _si,. -+ (GET_PC, GET_FRAME, GET_STACK): Adjust for ctx being a pointer -+ instead of structure. -+ * sysdeps/unix/sysv/linux/x86_64/register-dump.h (REGISTER_DUMP): -+ Likewise. -+ -+2003-09-09 Ulrich Drepper -+ -+ * string/stratcliff.c (main): Check memccpy. -+ -+2003-04-11 Jes Sorensen -+ -+ * sysdeps/ia64/memccpy.S: When recovering for src_aligned and the -+ character is found during recovery, use correct register when -+ determining the position of the found character. -+ -+2003-04-01 Jes Sorensen -+ -+ * sysdeps/ia64/memccpy.S: Use speculatively loads for readahead to -+ avoid segfaults when reading from unmapped pages. For aligned -+ reload and continue, for misaligned, roll back and use byte copy. -+ Save ar.ec on entry and restore on exit. -+ -+2003-09-09 Chris Demetriou -+ -+ * sysdeps/unix/mips/sysdep.h (PSEUDO_END): Undef before defining. -+ -+2003-09-08 Chris Demetriou -+ -+ * sysdeps/mips/mips64/n32/Implies: Move ieee754/ldbl-128 to -+ the top of the list. -+ * sysdeps/mips/mips64/n64/Implies: Likewise. -+ -+2003-09-08 Roland McGrath -+ -+ * sysdeps/unix/sysv/linux/speed.c -+ (cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED]. -+ (cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED]. -+ * sysdeps/unix/sysv/linux/bits/termios.h -+ (_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define. -+ * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. -+ -+2003-09-08 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/x86_64/register-dump.h: Undo last change. -+ * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise. -+ -+2003-09-08 Jakub Jelinek -+ -+ * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit. -+ (__u_quad_t): Make unsigned long int if 64-bit. -+ (__SQUAD_TYPE): Make long int if 64-bit. -+ (__UQUAD_TYPE): Make unsigned long int if 64-bit. -+ * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove. -+ -+2003-09-08 Ulrich Drepper -+ -+ * Makefile (tests): Run check-c++-types.sh if possible. -+ * scripts/check-c++-types.h: New file. -+ * scripts/data/c++-types-i386-linux-gnu.data: New file. -+ -+2003-09-08 Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump): -+ Use struct sigcontext. -+ -+ * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): -+ Use struct sigcontext. -+ (GET_PC): Adopt. -+ (GET_FRAME): Likewise. -+ (GET_STACK): Likewise. -+ -+2003-09-08 Wolfram Gloger -+ -+ * malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into -+ contiguous case. Bug report from Prem Gopalan . -+ (mALLOPt): Avoid requirement of C99. -+ -+2003-09-08 Ulrich Drepper -+ -+ * libio/bug-ftell.c: Include . -+ (main): Mark cp as const. -+ -+2003-09-07 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/syscalls.list (fcntl): Remove. -+ * sysdeps/unix/sysv/linux/x86_64/fcntl.c: Remove. -+ -+2003-09-05 Roland McGrath -+ -+ * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed -+ and c_ospeed fields. -+ * sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field. -+ (cfsetispeed): Set c_ispeed field. -+ * sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally -+ to match corresponding speed.c code. -+ -+2003-09-06 Ulrich Drepper -+ -+ * libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the -+ narrow character buffer. -+ * libio/Makefile: Add rules to build and run bug-ftell. -+ * libio/bug-ftell.c: New file. -+ -+ * stdio-common/vfprintf.c: Don't use the first grouping number twice. -+ -+ * stdio-common/vfscanf.c (vfscanf): Fix recognition of characters -+ matching the decimal point and possibly leading the thousands -+ separator. This caused the recognition of thousands separators to -+ always fail. -+ -+2003-09-05 Ulrich Drepper -+ -+ * libio/fileops.c (_IO_new_file_overflow): Handle switching to -+ write mode from read in backup buffer. -+ * libio/Makefile (tests): Add bug-ungetc2. -+ * libio/bug-ungetc2.c: New file. -+ -+2003-09-05 Roland McGrath -+ -+ * nss/getXXbyYY.c (FUNCTION_NAME): Remove unused variable. -+ -+2003-09-04 Roland McGrath -+ -+ * sysdeps/mach/hurd/mmap.c (__mmap): If io_map fails with MIG_BAD_ID, -+ EOPNOTSUPP, or ENOSYS, change it to ENODEV. -+ -+2003-09-04 H.J. Lu -+ -+ * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): -+ Fix a typo. -+ -+2003-09-05 Andreas Jaeger -+ -+ * sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler -+ to make it conforming C. -+ * sysdeps/i386/i486/bits/string.h (__memrchr): Likewise. -+ -+ * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Change -+ prototype to use variable argument lists and get the possible one -+ argument via va_arg. -+ * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Likewise. -+ * sysdeps/unix/sysv/linux/x86_64/fcntl.c: New. -+ -+2003-09-04 Ulrich Drepper -+ -+ * posix/unistd.h: Add back __THROW to sysconf, pathconf, fpathconf. -+ -+ * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max): -+ Report correct value for vxfs. -+ * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC. -+ -+ * gmon/gmon.c: Use only not-cancelable syscalls to write profiling -+ data. -+ -+ * sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all -+ over the place. It would be allowed to have these functions as -+ cancellation points but the cleanup would be ugly and a lot of -+ work. -+ -+ * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define. -+ * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define. -+ -+ * include/fcntl.h (__fcntl_nocancel): Declare. -+ * sysdeps/unix/sysv/linux/fcntl.c: New file. -+ * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable -+ cancellation if absolutely needed. -+ (__fcntl_nocancel): Define. -+ -+ * posix/unistd.h (gethostid): Remove __THROW. Clarify comment. -+ * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add -+ -fexceptions. -+ * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use -+ extend_alloca. -+ -+ * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status -+ instead of __close. -+ -+ * nss/getXXbyYY.c (FUNCTION_NAME): Add a few casts. Remove -+ unnecessary errno handling. -+ -+ * nss/getXXbyYY_r.c (INTERNAL): Use better variable name. -+ Initialize it in all cases. Change it to be a bit more like the -+ code we had before. -+ -+2003-09-04 Jakub Jelinek -+ -+ * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add -+ __builtin_expect. -+ (_IO_file_open): Likewise. Use close_not_cancel. -+ -+2003-09-04 Ulrich Drepper -+ -+ * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL. -+ * libio/fileops.c [_LIBC]: Remove close macro. -+ (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel. -+ (_IO_new_file_open): Recognize 'c' flag in mode string. -+ (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel. -+ (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use -+ write_not_cancel. -+ * iconv/gconv_conf.c: Use fopen with 'c' mode flag. -+ * inet/rcmd.c: Likewise. -+ * inet/ruserpass.c: Likewise. -+ * intl/localealias.c: Likewise. -+ * malloc/mtrace.c: Likewise. -+ * misc/getpass.c: Likewise. -+ * misc/getttyent.c: Likewise. -+ * misc/mntent_r.c: Likewise. -+ * misc/getusershell.c: Likewise. -+ * nss/nsswitch.c: Likewise. -+ * resolv/res_hconf.c: Likewise. -+ * resolv/res_init.c: Likewise. -+ * sysdeps/unix/sysv/linux/getsysstats.c: Likewise. -+ * time/getdate.c: Likewise. -+ * time/tzfile.c: Likewise. -+ * misc/fstab.h: Undo last change. -+ * misc/mntent.h: Likewise. -+ * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and -+ CFLAGS-fstab.c definition. -+ -+2003-09-04 Jakub Jelinek -+ -+ * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype. -+ -+2003-09-03 Ulrich Drepper -+ -+ * nss/getXXbyYY_r.c (INTERNAL): Explicitly set errno and avoid -+ returning ERANGE if this wasn't intended. -+ -+2003-09-03 Jakub Jelinek -+ -+ * intl/loadmsgcat.c (open, close, read, mmap, munmap): Define as -+ function-like macros. -+ -+2003-09-03 Ulrich Drepper -+ -+ * grp/Makefile (CFLAGS-getgrent_r.c): Add -fexceptions. -+ (CFLAGS-getgrent.c): Likewise. -+ * pwd/Makefile (CFLAGS-getpwent_r.c): Add -fexceptions. -+ (CFLAGS-getpwent.c): Likewise. -+ * shadow/Makefile (CFLAGS-getspent_r.c): Add -fexceptions. -+ (CFLAGS-getspent.c): Likewise. -+ -+ * inet/Makefile: Add -fexceptions to CFLAGS for the various -+ getXXent and getXXbyYY functions. -+ -+ * locale/loadlocale.c: Use not-cancelable variants of open, close, -+ and read. -+ -+2003-09-02 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove -+ rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and -+ rt_sigpending. -+ * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction): -+ New prototype. -+ * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove -+ unused __syscall_ stubs. -+ * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove -+ rt_*. -+ * sysdeps/unix/sysv/linux/cris/Makefile: Removed. -+ * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list -+ (__syscall_recvfrom, __syscall_sendto): Remove unused aliases. -+ * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove -+ unused __syscall_ stubs. -+ * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list -+ (__syscall_*): Remove unused __syscall_ stubs. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list -+ (__syscall_*): Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove -+ rt_*. -+ * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*): -+ Remove unused __syscall_ stubs. -+ * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*. -+ * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed. -+ * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed. -+ * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed. -+ * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed. -+ * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed. -+ * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed. -+ * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed. -+ * sysdeps/unix/sysv/linux/s_pread64.c: Removed. -+ * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed. -+ * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused -+ __syscall_* prototypes. -+ * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise. -+ * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/chown.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/pread.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise. -+ * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise. -+ * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise. -+ * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise. -+ * sysdeps/unix/sysv/linux/pwrite.c: Likewise. -+ * sysdeps/unix/sysv/linux/execve.c: Likewise. -+ * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise. -+ * sysdeps/unix/sysv/linux/reboot.c: Likewise. -+ * sysdeps/unix/sysv/linux/_exit.c: Likewise. -+ * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise. -+ * sysdeps/unix/sysv/linux/pwrite64.c: Likewise. -+ * sysdeps/unix/sysv/linux/fxstat64.c: Likewise. -+ * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise. -+ * sysdeps/unix/sysv/linux/readahead.c: Likewise. -+ * sysdeps/unix/sysv/linux/getcwd.c: Likewise. -+ * sysdeps/unix/sysv/linux/sigwait.c: Likewise. -+ * sysdeps/unix/sysv/linux/getdents.c: Likewise. -+ * sysdeps/unix/sysv/linux/readv.c: Likewise. -+ * sysdeps/unix/sysv/linux/getpriority.c: Likewise. -+ * sysdeps/unix/sysv/linux/sigaction.c: Likewise. -+ * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise. -+ * sysdeps/unix/sysv/linux/llseek.c: Likewise. -+ * sysdeps/unix/sysv/linux/sysctl.c: Likewise. -+ * sysdeps/unix/sysv/linux/lxstat64.c: Likewise. -+ * sysdeps/unix/sysv/linux/mmap64.c: Likewise. -+ * sysdeps/unix/sysv/linux/ustat.c: Likewise. -+ * sysdeps/unix/sysv/linux/poll.c: Likewise. -+ * sysdeps/unix/sysv/linux/pread64.c: Likewise. -+ * sysdeps/unix/sysv/linux/writev.c: Likewise. -+ * sysdeps/unix/sysv/linux/pread.c: Likewise. -+ * sysdeps/unix/sysv/linux/ptrace.c: Likewise. -+ * sysdeps/unix/sysv/linux/sigpending.c: Likewise. -+ * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise. -+ * sysdeps/unix/sysv/linux/sigqueue.c: Likewise. -+ * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise. -+ * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise. -+ * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise. -+ * sysdeps/unix/sysv/linux/truncate64.c: Likewise. -+ * sysdeps/unix/sysv/linux/xmknod.c: Likewise. -+ * sysdeps/unix/sysv/linux/xstat64.c: Likewise. -+ -+2003-09-02 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change. -+ * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file. -+ * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file. -+ -+2003-09-02 Ulrich Drepper -+ -+ * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions. -+ -+ * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of -+ open, close, and read. -+ -+ * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Also define -+ *_nocancel name. -+ -+ * sysdeps/unix/sysv/linux/i386/syscalls.list: Add waitpid. -+ -+ * libio/Makefile (CFLAGS-oldtmpfile.c): Add -fexceptions. -+ * sysdeps/generic/tmpfile.c (tmpfile): Use __unlink instead of remove. -+ * libio/oldtmpfile.c (__old_tmpfile): Likewise. -+ -+ * misc/Makefile (CFLAGS-getusershell.c): Add -fexceptions. -+ -+ * io/Makefile (CFLAGS-statfs.c): Add -fexceptions. -+ (CFLAGS-fstatfs.c): Likewise. -+ (CFLAGS-statvfs.c): Likewise. -+ (CFLAGS-fstatvfs.c): Likewise. -+ -+2003-09-01 Ulrich Drepper -+ -+ * misc/Makefile (CFLAGS-getsysstats.c): Add -fexceptions. -+ * posix/unistd.h: Remove __THROW from pathconf, fpathconf, -+ sysconf. -+ * posix/Makefile (CFLAGS-sysconf.c): Add -fexceptions. -+ (CFLAGS-pathconf.c): Likewise. -+ (CFLAGS-fpathconf.c): Likewise. -+ -+ * misc/Makefile (CFLAGS-fstab.c): Add -fexceptions. -+ * misc/fstab.h: Remove all __THROW. -+ * misc/Makefile (CFLAGS-mntent.c): Add -fexceptions. -+ (CFLAGS-mntent_r.c): Likewise. -+ * misc/mntent.h: Remove most __THROW. -+ -+ * misc/Makefile (CFLAGS-mkstemp.c): Add -fexceptions. -+ (CFLAGS-mkstemp64.c): Likewise. -+ -+ * sysdeps/generic/wordexp.c (parse_comm): Disable cancellation -+ around call to exec_comm. -+ * posix/wordexp.h: Remove __THROW from wordexp. -+ * posix/Makefile (CFLAGS-wordexp.c): Add -fexceptions. -+ -+ * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Use -+ not-cancelable functions. -+ -+ * libio/Makefile (CFLAGS-oldiofopen.c): Add -fexceptions. -+ (CFLAGS-iofopen.c): Likewise. -+ (CFLAGS-iofopen64.c): Likewise. -+ -+ * stdlib/fmtmsg.c (fmtmsg): Disable cancellation around output -+ functions. -+ * stdlib/Makefile (CFLAGS-fmtmsg.c): Add -fexceptions. -+ * stdlib/fmtmsg.h: Remove __THROW from fmtmsg. -+ -+ * stdlib/stdlib.h: Remove __THROW from posix_openpt and getpt. -+ * login/Makefile (CFLAGS-getpt.c): Add -fexceptions. -+ -+2003-09-01 Thorsten Kukuk -+ -+ * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return -+ NSS_STATUS_SUCCESS if entry was found. -+ (getspent_next_file): Store user in blacklist after entry -+ was found, use innetgr. -+ -+2003-09-01 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New. -+ -+ * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset -+ computation for TCB_AT_TP. Support l_firstbyte_offset != 0 for -+ DTV_AT_TP, optimize. -+ -+2003-08-31 Kaz Kojima -+ -+ * sysdeps/unix/sysv/linux/sh/Versions: Add posix_fadvise64 and -+ posix_fallocate64 at GLIBC_2.3.3. -+ * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO_ERRVAL): Define. -+ (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise. -+ -+2003-08-08 H.J. Lu -+ -+ * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove __syscall_ -+ functions. -+ -+2003-08-31 Ulrich Drepper -+ -+ * libio/libioP.h (_IO_acquire_lock_fct): Define as inline function. -+ Code by Richard Henderson. -+ -+2003-08-31 Philip Blundell -+ -+ * sysdeps/unix/sysv/linux/arm/Versions: Add posix_fadvise64 and -+ posix_fallocate64 at GLIBC_2.3.3. -+ -+2003-08-31 Ulrich Drepper -+ -+ * sysdeps/x86_64/bsd-_setjmp.S: Use HIDDEN_JUMPTARGET. -+ * include/setjmp.h: Add libc_hidden_proto for __sigsetjmp. -+ -+2003-08-30 Jakub Jelinek -+ -+ * sysdeps/generic/sysdep.h (cfi_window_save, CFI_WINDOW_SAVE): Define. -+ * sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Allow file to be -+ included multiple times. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Pass -+ ptid, tls, ctid arguments to the kernel. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize): -+ Use INTERNAL_SYSCALL instead of __syscall_getpagesize. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c -+ (__libc_sigaction): Use INLINE_SYSCALL instead of -+ __syscall_rt_sigaction. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list -+ (__syscall_getgroups, __syscall_getpagesize, __syscall__llseek, -+ __syscall_setfsgid, __syscall_setfsuid, __syscall_setgid, -+ __syscall_setgroups, __syscall_setregid, __syscall_setreuid, -+ __syscall_ipc, __syscall_setuid, __syscall_rt_sigaction, -+ __syscall_rt_sigpending, __syscall_rt_sigprocmask, -+ __syscall_rt_sigqueueinfo, __syscall_rt_sigsuspend, -+ __syscall_rt_sigtimedwait): Remove unneeded syscall stubs. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (sysdep_routines): -+ Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, -+ rt_sigqueueinfo, rt_sigaction and rt_sigpending. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h -+ (__CLONE_SYSCALL_STRING): Define. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Add -+ CFI directives. -+ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h -+ (__CLONE_SYSCALL_STRING): Define. -+ * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_CLONE_SYSCALL): -+ Define. -+ * sysdeps/unix/sysv/linux/sparc/system.c: New file. -+ -+2003-08-30 Ulrich Drepper -+ -+ * sunrpc/rpc/clnt.h: Remove a few __THROW. -+ * sunrpc/Makefile (CFLAGS-auth_unix.c): Add -fexceptions. -+ (CFLAGS-key_call.c): Likewise. -+ (CFLAGS-pmap_rmt.c): Likewise. -+ (CFLAGS-clnt_perr.c): Likewise. -+ * sunrpc/rpc/auth.h: Remove serveral __THROW. -+ -+ * inet/Makefile (CFLAGS-gethstbyad_r.c): Add -fexceptions. -+ (CFLAGS-gethstbynm_r.c): Likewise. -+ (CFLAGS-gethstbynm2_r.c): Likewise. -+ (CFLAGS-rcmd.c): Likewise. -+ * resolv/Makefile (CFLAGS-res_hconf.c): Add -fexceptions. -+ -+ * argp/Makefile (CFLAGS-argp-help.c): Add -fexceptions. -+ (CFLAGS-argp-fmtstream.c): Likewise. -+ * argp/argp.h: Remove a number of __THROW. -+ -+ * misc/sys/syslog.h (vsyslog): Remove __THROW. -+ -+ * misc/Makefile (CFLAGS-getpass.c): Add -fexceptions. -+ * misc/getpass.c (getpass): Add cleanup handler to ensure the -+ stream is closed even if the thread is canceled. -+ (call_fclose): New function. -+ * posix/unistd.h: Remove __THROW from getpass prototype. -+ -+ * posix/Makefile (CFLAGS-getopt.c): Add -fexceptions. -+ -+ * signal/signal.h (psignal): Remove __THROW. -+ * stdio-common/Makefile (CFLAGS-psignal.c): Add -fexceptions. -+ -+ * misc/Makefile (CFLAGS-error.c): Define. -+ * misc/error.c (error): Disable cancellation handling around the -+ actual output. The message should in any case be printed. -+ (error_at_line): Likewise. -+ -+ * misc/error.h: Protect parameter names with leading __. -+ -+2003-08-28 Carlos O'Donell -+ -+ * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop. -+ -+2003-08-29 Jakub Jelinek -+ -+ * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the -+ end. -+ -+2003-08-29 Ulrich Drepper -+ -+ * libio/stdio.h: Remove a few more __THROW. -+ -+2003-08-29 Jakub Jelinek -+ -+ * libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c, -+ fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c, -+ getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c, -+ iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c, -+ iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c, -+ iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c, -+ ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c, -+ oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c, -+ oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c, -+ putwchar.c and rewind.c with exceptions. -+ * sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock, -+ _IO_release_lock): Define. -+ * libio/fileops.c (_IO_new_file_underflow): Use it. -+ * libio/fputc.c (fputc): Likewise. -+ * libio/fputwc.c (fputwc): Likewise. -+ * libio/freopen64.c (freopen64): -+ * libio/freopen.c (freopen): Likewise. -+ * libio/fseek.c (fseek): Likewise. -+ * libio/fseeko64.c (fseeko64): Likewise. -+ * libio/fseeko.c (fseeko): Likewise. -+ * libio/ftello64.c (ftello64): Likewise. -+ * libio/ftello.c (ftello): Likewise. -+ * libio/fwide.c (fwide): Likewise. -+ * libio/getc.c (_IO_getc): Likewise. -+ * libio/getchar.c (getchar): Likewise. -+ * libio/getwc.c (_IO_getwc): Likewise. -+ * libio/getwchar.c (getwchar): Likewise. -+ * libio/iofclose.c (_IO_new_fclose): -+ * libio/iofflush.c (_IO_fflush): Likewise. -+ * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise. -+ * libio/iofgetpos.c (_IO_new_fgetpos): Likewise. -+ * libio/iofgets.c (_IO_fgets): Likewise. -+ * libio/iofgetws.c (fgetws): Likewise. -+ * libio/iofputs.c (_IO_fputs): Likewise. -+ * libio/iofputws.c (fputws): Likewise. -+ * libio/iofread.c (_IO_fread): Likewise. -+ * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise. -+ * libio/iofsetpos.c (_IO_new_fsetpos): Likewise. -+ * libio/ioftell.c (_IO_ftell): Likewise. -+ * libio/iofwrite.c (_IO_fwrite): Likewise. -+ * libio/iogetdelim.c (_IO_getdelim): Likewise. -+ * libio/iogets.c (_IO_gets): Likewise. -+ * libio/ioputs.c (_IO_puts): Likewise. -+ * libio/ioseekoff.c (_IO_seekoff): Likewise. -+ * libio/ioseekpos.c (_IO_seekpos): Likewise. -+ * libio/iosetbuffer.c (_IO_setbuffer): Likewise. -+ * libio/iosetvbuf.c (_IO_setvbuf): Likewise. -+ * libio/ioungetc.c (_IO_ungetc): Likewise. -+ * libio/ioungetwc.c (ungetwc): Likewise. -+ * libio/oldiofclose.c (_IO_old_fclose): Likewise. -+ * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise. -+ * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise. -+ * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise. -+ * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise. -+ * libio/peekc.c (_IO_peekc_locked): Likewise. -+ * libio/putc.c (_IO_putc): Likewise. -+ * libio/putchar.c (putchar): Likewise. -+ * libio/putwc.c (putwc): Likewise. -+ * libio/putwchar.c (putwchar): Likewise. -+ * libio/rewind.c (rewind): Likewise. -+ * libio/wfileops.c (_IO_wfile_underflow): Likewise. -+ -+2003-08-29 Ulrich Drepper -+ -+ * signal/signal.h: sighold, sigrelse, sigignore, sigset were -+ available in XPG4.2. -+ -+2003-08-27 Phil Knirsch -+ Jakub Jelinek -+ -+ * sunrpc/svc.c (svc_getreqset): Fix fds_bits reading on 64-bit -+ big endian arches. Don't read beyond end of fds_bits array. -+ -+2003-04-27 Bruno Haible -+ -+ * manual/message.texi (Advanced gettext functions): Add information -+ about Korean, Portuguese, Latvian. Gaeilge is also known as Irish. -+ Add section about Lithuanian, reported by Ricardas Cepas -+ . -+ Add information about Croatian. -+ Ukrainian is like Russian, reported by Andy Rysin . -+ Remove remark about continuation lines that is not true for PO files. -+ Fix formula for Slovenian, reported by Roman Maurer -+ . -+ -+2003-08-27 Ulrich Drepper -+ -+ * math/math_private.h: Declare __copysignf. -+ * sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of -+ copysignf. -+ -+ * sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf, -+ __signbit, and __signbitl inline functions. -+ -+ * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Use -+ HIDDEN_JUMPTARGET instead of JUMPTARGET to call exit(). -+ -+ * sysdeps/x86_64/bsd-_setjmp.S [PIC]: Jump to __GI___sigsetjmp. -+ * sysdeps/x86_64/setjmp.S: Add libc_hidden_def for __sigsetjmp. -+ -+2003-08-27 Jakub Jelinek -+ -+ * inet/inet_mkadr.c (inet_makeaddr): Optimize. -+ -+2003-08-27 Ulrich Drepper -+ -+ * include/stdio.h: Add declarations for __builtin_fwrite and -+ __builtin_fwrite_unlocked. -+ -+2003-08-27 Jakub Jelinek -+ -+ * sysdeps/unix/opendir.c (__opendir): Make sure even struct dirent64 -+ fits into allocation. Add padding on 32-bit arches so that -+ dirp->data is enough aligned for struct dirent64. -+ Avoid clearing of the buffer, just clear DIR structure. -+ -+2003-08-26 Ulrich Drepper -+ -+ * nss/nsswitch.c: Add libc_hidden_def for __nss_lookup_function. -+ * nss/nsswitch.h: Add libc_hidden_proto for __nss_lookup_function. -+ -+2003-08-26 Steven Munroe -+ -+ * sysdeps/powerpc/powerpc64/elf/Makefile: New file. -+ -+2003-08-26 Jakub Jelinek -+ -+ * login/programs/utmpdump.c (print_entry): Cast tv_usec to long -+ to match format string. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (union semun): Add -+ __old_buf. -+ (__new_semctl): Shut up warning. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h -+ (_dl_string_hwcap): Add __attribute__ ((always_inline)). -+ -+2003-08-26 Jakub Jelinek -+ -+ * elf/ldconfig.c (search_dir): When checking for GNU-style .so -+ link file use the real file name, not the resolved name we got by -+ following the symlinks. -+ -+2003-08-25 Ulrich Drepper -+ -+ * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field -+ if the object size is large enough. -+ -+2003-08-25 Jakub Jelinek -+ -+ * elf/ldconfig.c (search_dir): Treat symlink as regular file -+ if it won't point to itself unless it is .so symlink for the linker. -+ -+2003-08-25 Ulrich Drepper -+ -+ * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't -+ use _mode if _IO_fwide_maybe_incompatible. -+ * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after -+ the compatibility test. -+ -+2003-08-25 Jakub Jelinek -+ -+ * elf/cache.c (save_cache): Don't write beyond end of file_entries -+ buffer. -+ Duplicate last old cache entry if the count would be odd. -+ -+2003-08-25 Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/posix_fadvise64.c: Cast arguments of -+ __LONG_LONG_PAIR to long. -+ -+2003-08-25 Philip Blundell -+ -+ * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define. -+ (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise. -+ -+2003-08-18 Alfred M. Szmidt -+ -+ * sysdeps/generic/bits/libc-lock.h (__libc_cleanup_pop): Redefine -+ and use __libc_cleanup_region_end instead. -+ -+2003-08-25 Ulrich Drepper -+ -+ * elf/ldconfig.c (search_dir): Revert patch of 2003-7-21. -+ -+2003-08-22 Ulrich Drepper -+ -+ * io/fcntl.h (posix_fallocate): Change type of third parameter to -+ off_t. -+ (posix_fallocate64): Change type of third parameter to off64_t. -+ * sysdeps/generic/posix_fallocate.c: Adjust for type change. -+ * sysdeps/posix/posix_fallocate.c: Likewise. -+ * sysdeps/generic/posix_fallocate64.c: Likewise. -+ * sysdeps/posix/posix_fallocate64.c: Likewise. Add compatibility -+ code for 32-bit platforms. -+ * sysdeps/unix/sysv/linux/i386/Versions: Add new version for -+ posix_fallocate64. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise. -+ -+2003-08-19 Ulrich Drepper -+ -+ * string/bits/string2.h (__STRING2_COPY_TYPE): Add attribute to -+ the type, not to name. -+ -+ * stdio-common/test-vfprintf.c (main): Don't write temporary file -+ into source directory. -+ -+ * malloc/malloc.c (_int_free): Add cheap test for some invalid -+ block sizes. -+ -+ * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo in -+ syscall name. -+ -+2003-08-18 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Fold EISDIR error -+ into EINVAL. -+ -+2003-08-18 H.J. Lu -+ -+ * sysdeps/ia64/dl-machine.h (elf_machine_rela): Use _dl_reloc_bad_type. -+ (elf_machine_lazy_rel): Likewise. -+ -+2003-08-18 Art Haas -+ -+ * malloc/malloc.h: Remove unneeded ';' where closing the C++ -+ extern block. -+ -+2003-08-18 Ulrich Drepper -+ -+ * sysdeps/ia64/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Support -+ loading big binaries where @gprel(sym) cannot be handled in 'add' -+ but instead has to be used with 'movl'. -+ -+2003-08-17 Juergen Kreileder -+ Andreas Jaeger -+ -+ * sysdeps/x86_64/bits/byteswap.h: New file. -+ -+2003-08-17 Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo. -+ -+2003-08-16 Jakub Jelinek -+ -+ * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL, -+ PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define. -+ * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL, -+ PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define. -+ * sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL, -+ ret_ERRVAL, PSEUDO_END_ERRVAL): Define. -+ * sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL, -+ ret_ERRVAL, PSEUDO_END_ERRVAL): Define. -+ * sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL, -+ ret_ERRVAL): Define. -+ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL, -+ PSEUDO_END_ERRVAL, ret_ERRVAL): Define. -+ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL, -+ PSEUDO_END_ERRVAL, ret_ERRVAL): Define. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL): -+ Define. -+ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL, -+ PSEUDO_END_ERRVAL, ret_ERRVAL): Define. -+ * sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define. -+ -+ * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64, -+ posix_fadvise64_64): Remove. -+ * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add -+ V flag. -+ * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64): -+ Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list -+ (posix_fadvise64): Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list -+ (posix_fadvise64): Likewise. -+ * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list -+ (posix_fadvise64): Likewise. -+ * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64): -+ Likewise. -+ * sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to... -+ * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here. -+ (__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation. -+ (__posix_fadvise64_l32): New function. -+ * sysdeps/unix/sysv/linux/i386/Makefile: Revert last change. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export -+ posix_fadvise64@@GLIBC_2.3.3. -+ * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise. -+ * sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return -+ error value. -+ * sysdeps/unix/sysv/linux/posix_fadvise64.c: New file. -+ -+ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h -+ (SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD. -+ -+2003-08-15 Jakub Jelinek -+ -+ * sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove. -+ (elf_machine_matches_host): Remove weak extern stuff. -+ Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED. -+ (elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern -+ stuff. Use GL(dl_hwcap) unconditionally. -+ -+2003-08-16 Alan Modra -+ -+ * sysdeps/powerpc/powerpc64/elf/start.S: Add a nop after -+ __libc_start_main branch. -+ -+2003-08-16 Jakub Jelinek , -+ Andreas Jaeger -+ -+ * sysdeps/generic/posix_fadvise.c (posix_fadvise): Return ENOSYS -+ instead of setting errno. -+ * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise. -+ -+2003-08-16 Andreas Jaeger -+ -+ * sysdeps/generic/posix_fadvise.c (posix_fadvise): Adjust prototype. -+ * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise. -+ -+2003-08-15 Ulrich Drepper -+ -+ * io/fcntl.h (posix_fadvise64): Change type of third parameter to -+ off_t. -+ * sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition. -+ * sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter -+ description indicating the error value is returned, not -1. -+ * sysdeps/unix/sysv/linux/kernel-features.h: Add definition of -+ __ASSUME_FADVISE64_64_SYSCALL. -+ * sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and -+ posix_madvise in one file. Have posix_madvise defined with error -+ value returned. -+ Define posix_fadvise64_64 entry. Add version info to posix_fadvise64 -+ entry. -+ * sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file. -+ * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL, -+ PSEUDO_END_ERRVAL, and ret_ERRVAL. -+ * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add -+ posix_fadvise64. -+ -+ * posix/Makefile (routines): Add posix_madvise. -+ * sysdeps/generic/madvise.c: Don't define posix_madvise. -+ * sysdeps/generic/posix_madvise.c: New file. -+ * sysdeps/unix/sysv/aix/posix_madvise.c: New file. -+ * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines): -+ Add posix_fadvise64_64. -+ -+2003-08-15 Jakub Jelinek -+ -+ * assert/assert.h (assert_perror): Use __builtin_expect for gcc >= -+ 3.0, not for !gcc or gcc < 3.0. -+ -+2003-08-11 Carlos O'Donell -+ -+ * dlfcn/default.c (main): Cast dlsym loaded value to same type as main. -+ Address passed to test_in_mod1 and test_in_mod2 without casting. -+ * dlfcn/defaultmod1.c: Change prototype of test_in_mod1. -+ (test_in_mod1): Cast dlsym loaded value to same type as mainp. -+ * dlfcn/defaultmod2.c: Change prototype of test_in_mod2. -+ (test_in_mod2): Cast dlsym loaded value to same type as mainp. -+ -+2003-08-15 Jakub Jelinek -+ -+ * sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls): -+ Change quotes before using []. -+ -+ * sysdeps/unix/sysv/linux/sparc/sys/user.h: New file. -+ -+ * sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock): -+ Renamed to... -+ (__sparc32_atomic_locks): ...this. Change into 64-byte array. -+ (__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr -+ argument. Select one of 64 locks from address bits. -+ (atomic_compare_and_exchange_val_acq, -+ atomic_compare_and_exchange_bool_acq): Pass memory address to -+ __sparc32_atomic_do_{,un}lock. -+ -+2003-08-14 Ulrich Drepper -+ -+ * assert/assert.h (assert): Use !! in front of expression to allow -+ use of pointers. -+ -+ * iconvdata/cp932.c: Fixed checking of a few border of code areas. -+ Changed conversion of JIS X 0201 from using a table to calculating. -+ * iconvdata/euc-jp-ms.c: Fixed conversion table and rewrote -+ conversion routine. Changed CHARSET_NAME definition from EUCJP-MS to -+ EUC-JP-MS. -+ * iconvdata/tst-tables.sh: Add CP932 and EUC-JP-MS. -+ * iconvdata/CP932.irreversible: New file. -+ * iconvdata/EUC-JP-MS.irreversible: New file. -+ Patch by MORIYAMA Masayuki . -+ -+2003-08-13 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/i386/syscalls.list: Add time syscall. -+ -+ * elf/Makefile: Use LC_ALL=C in a few cases where we call external -+ text processing tools. -+ -+ * sysdeps/pthread/aio_misc.h (struct waitlist): Don't add caller_pid -+ element unless BROKEN_THREAD_SIGNALS is defined. -+ (struct requestlist): Likewise. -+ * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Don't fill in -+ caller_pid of new request unless BROKEN_THREAD_SIGNALS is defined. -+ * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise. -+ * sysdeps/pthread/aio_notify.c (__aio_notify_only): Remove caller_pid -+ parameter unless BROKEN_THREAD_SIGNALS is defined. Adjust callers. -+ Pass current PID to __aio_sigqueue. -+ * sysdeps/pthread/lio_listio.c (lio_listio): Adjust __aio_notify_only -+ call. Don't initialize caller_pid field of waitlist element. -+ -+2003-08-12 Jakub Jelinek -+ -+ * libio/libioP.h (_IO_vtable_offset): Define. -+ * libio/freopen.c (freopen): Use it. -+ * libio/ioputs.c (_IO_puts): Likewise. -+ * libio/freopen64.c (freopen64): Likewise. -+ * libio/genops.c (__underflow, __uflow, _IO_flush_all_lockp): -+ Likewise. -+ * libio/iofclose.c (_IO_new_fclose): Likewise. -+ * libio/iofputs.c (_IO_fputs): Likewise. -+ * libio/ioftell.c (_IO_ftell): Likewise. -+ * libio/iofwrite.c (_IO_fwrite): Likewise. -+ * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise. -+ * libio/iosetbuffer.c (_IO_setbuffer): Likewise. -+ * stdio-common/vfprintf.c (ORIENT, vfprintf): Likewise. -+ * stdio-common/vfscanf.c (ORIENT): Likewise. -+ -+2003-08-11 Ulrich Drepper -+ -+ * assert/assert.h: Use __builtin_expect in assert and -+ assert_perror definitions if possible. -+ -+2003-08-07 Jakub Jelinek -+ -+ * sysdeps/generic/ldsodefs.h (_rtld_global): Add -+ _dl_rtld_lock_recursive and _dl_rtld_unlock_recursive. -+ * elf/rtld.c (rtld_lock_default_lock_recursive, -+ rtld_lock_default_unlock_recursive): New functions. -+ (dl_main): Initialize _dl_rtld_lock_recursive and -+ _dl_rtld_unlock_recursive. -+ -+2003-08-05 Jakub Jelinek -+ -+ * elf/ldconfig.c (main): Append SLIBDIR and LIBDIR to -+ config_file directories instead of prepending. -+ -+2003-08-02 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/kernel-features.h: Define -+ __ASSUME_CLONE_STOPPED. -+ -+2003-08-01 Ulrich Drepper -+ -+ * sysdeps/generic/bits/libc-lock.h -+ (__libc_cleanup_push,__libc_cleanup_pop): Define even here. -+ -+2003-08-01 Roland McGrath -+ -+ * sysdeps/mach/hurd/getdents.c: Just use sysdeps/generic/getdents.c. -+ -+2003-07-31 Jakub Jelinek -+ -+ * sysdeps/generic/bits/types.h (__ssize_t): Use __SSIZE_T_TYPE -+ instead of __SWORD_TYPE. -+ * sysdeps/generic/bits/typesizes.h (__SSIZE_T_TYPE): Define. -+ * sysdeps/mach/hurd/bits/typesizes.h (__SSIZE_T_TYPE): Define. -+ * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h (__SSIZE_T_TYPE): -+ Define. -+ * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__SSIZE_T_TYPE): -+ Define. -+ * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__SSIZE_T_TYPE): -+ Define. -+ * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New file. -+ -+ * dlfcn/dlerror.c (once): New. -+ (dlerror): Call __libc_once. -+ (_dlerror_run): Remove once. -+ -+ * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext): -+ Sync with 2.5.7 and 2.5.73 kernel changes. -+ -+ * dlfcn/eval.c (funcall): Add noinline attribute to shut up warnings. -+ * elf/rtld.c (dl_main): Cast ElfW(Addr) arguments with %Zx/%Zd -+ formats to size_t. -+ * elf/dl-lookup.c (_dl_debug_bindings): Likewise. -+ * elf/tst-tls6.c (do_test): Use %zd format for l_tls_modid. -+ * elf/tst-tls8.c (do_test): Use %zd format for modid1 and modid2. -+ * gmon/tst-sprofil.c (main): Add parens to shut up warning. -+ * iconv/tst-iconv3.c (main): Use %td instead of %zd for pointer -+ difference argument. -+ * stdio-common/tst-wc-printf.c (main): Cast arguments with %C -+ format to wint_t. -+ * stdlib/tst-limits.c (main): For WORD_BIT and LONG_BIT, use -+ %d format and cast expected value to int. -+ * sysdeps/generic/libc-start.c (STATIC): Add -+ __attribute__((always_inline) if LIBC_START_MAIN is already defined. -+ * sysdeps/powerpc/fpu/w_sqrt.c (a_nan, a_inf): Change from uint32_t -+ to ieee_float_shape_type. -+ (__sqrt): Avoid type punning. -+ * sysdeps/powerpc/fpu/w_sqrtf.c (a_nan, a_inf): Change from uint32_t -+ to ieee_float_shape_type. -+ (__sqrtf): Avoid type punning. -+ * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Don't define -+ refsym if in dl-conflict.c. -+ * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise. -+ * sysdeps/unix/sysv/linux/i386/semctl.c (union semun): Add __old_buf. -+ (__new_semctl): Shut up warning. -+ * sysdeps/unix/sysv/linux/semctl.c (union semun): Add __old_buf. -+ (__new_semctl): Shut up warning. -+ * sysdeps/unix/sysv/linux/shmctl.c (__new_shmctl): Wrap long lines. -+ Change old into union of __old_shmid_ds and __old_shminfo structs. -+ Adjust all users. -+ * wcsmbs/wcsmbs-tst1.c (main): Cast arguments with %C format to wint_t. -+ -+ * sysdeps/unix/sysv/linux/utimes.c (__utimes): Fix actime and -+ modtime computation. -+ * sysdeps/unix/sysv/linux/futimes.c (__futimes): Likewise. -+ * sysdeps/posix/utimes.c (__utimes): Likewise. -+ -+2003-07-30 Jakub Jelinek -+ -+ * elf/dl-reloc.c (_dl_allocate_static_tls): Don't return any value, -+ call dl_signal_error directly. If already relocated, call -+ GL(dl_init_static_tls) directly, otherwise queue it for later. -+ (CHECK_STATIC_TLS): Undo 2003-07-24 change. -+ * elf/rtld.c (dl_main): Initialize GL(dl_init_static_tls). -+ * elf/dl-open.c (dl_open_worker): Call GL_dl_init_static_tls -+ for all static TLS initializations delayed in _dl_allocate_static_tls. -+ * elf/dl-support.c (_dl_init_static_tls): New variable. -+ * include/link.h (struct link_map): Add l_need_tls_init. -+ * sysdeps/generic/ldsodefs.h (_rtld_global): Add _dl_init_static_tls. -+ (_dl_nothread_init_static_tls): New prototype. -+ (_dl_allocate_static_tls): Adjust prototype. -+ -+ * elf/tls-macros.h (VAR_INT_DEF): Add alignment directive. -+ -+2003-07-31 Alexandre Oliva -+ -+ * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela, -+ elf_machine_rel_relative, elf_machine_rela_relative): Don't assume -+ reloc_addr is aligned. -+ * sysdeps/alpha/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela, -+ elf_machine_rel_relative, elf_machine_rela_relative): Adjust. -+ * sysdeps/cris/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/hppa/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela, -+ elf_machine_rel_relative, elf_machine_rela_relative): Adjust. -+ * sysdeps/ia64/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/m68k/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/mips/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/powerpc/powerpc64/dl-machine.h -+ (elf_machine_rela_relative, elf_machine_rela): Adjust. -+ * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/sh/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ * sysdeps/x86_64/dl-machine.h (elf_machine_rela, -+ elf_machine_rela_relative): Adjust. -+ -+2003-07-29 Ulrich Drepper -+ -+ * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Restore -+ alignment of TCB used before the last change so that it matches -+ ld's output for IE code. -+ -+2003-07-29 Jakub Jelinek -+ -+ * include/ctype.h (__ctype_b_loc, __ctype_toupper_loc, -+ __ctype_tolower_loc): Avoid "dereferencing type-punned pointer will -+ break strict-aliasing rules" warnings. -+ -+2003-07-29 Roland McGrath -+ -+ * elf/Makefile: Revert accidental changes in last commit. -+ * elf/dl-support.c: Likewise. -+ -+ * rt/tst-timer2.c: New file. -+ * rt/Makefile (tests): Add it. -+ -+2003-07-25 Jakub Jelinek -+ -+ * elf/dl-support.c (_dl_hwcap): Add nocommon attribute. -+ -+2003-07-29 Roland McGrath -+ -+ * elf/Makefile (tests) [$(build-shared) = yes]: -+ Depend on $(test-modules). -+ * dlfcn/Makefile: Likewise. -+ -+2003-07-28 Roland McGrath -+ -+ * sysdeps/generic/bits/types.h (__STD_TYPE): New macro. -+ Use that instead of `typedef' when using __*_TYPE macros in rhs. -+ -+ * elf/tst-tls14.c [USE_TLS && HAVE___THREAD]: Conditionalize on this. -+ * elf/tst-tlsmod14a.c: Likewise. -+ -+ * sysdeps/unix/sysv/linux/sys/sysctl.h: Include -+ before . -+ -+2003-07-27 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/syscalls.list: time syscall never fails. -+ * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails. -+ * sysdeps/unix/sysv/i386/time.S: time syscall never fails. -+ * sysdeps/unix/syscalls.list: umask syscall never fails. -+ -+2003-07-27 Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/init-first.c: Mark init as used. -+ -+2003-07-25 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/a.out.h: Replace with i386 version. -+ Include bits/a.out.h. -+ * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add -+ bits/a.out.h. -+ * sysdeps/unix/sysv/linux/bits/a.out.h: New file. -+ * sysdeps/unix/sysv/linux/i386/bits/a.out.h: New file. -+ * sysdeps/unix/sysv/linux/m68k/bits/a.out.h: New file. -+ * sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: New file. -+ * sysdeps/unix/sysv/linux/alpha/a.out.h: New file. -+ * sysdeps/unix/sysv/linux/alpha/bits/a.out.h: New file. -+ * sysdeps/unix/sysv/linux/sparc/a.out.h: New file. -+ * sysdeps/unix/sysv/linux/sparc/bits/a.out.h: New file. -+ -+2003-07-24 Jakub Jelinek -+ -+ * sysdeps/pthread/aio_cancel.c (aio_cancel): Return AIO_ALLDONE -+ if aiocbp != NULL and has already completed. Return -1/EINVAL if -+ aiocbp->aio_fildes does not match fildes. -+ -+2003-07-24 Ulrich Drepper -+ -+ * timezone/zic.c (rpytime): Replace cheap overflow check with a -+ functioning one. -+ -+ * include/link.h (struct link_map): Add l_tls_firstbyte_offset field. -+ * sysdeps/generic/dl-tls.c [TLS_TCB_AT_TP] (_dl_determine_tlsoffset): -+ Fix calculation of offsets to take misalignment of first byte in -+ file into account. -+ * elf/dl-load.c (_dl_map_object_from_fd): Initialize -+ l_tls_firstbyte_offset field. -+ * elf/rtld.c (_dl_start_final, _dl_start, dl_main): Likewise. -+ * elf/dl-reloc.c (_dl_allocate_static_tls): Change return type to int. -+ Take l_tls_firstbyte_offset information into account. -+ (CHECK_STATIC_TLS): _dl_allocate_static_tls can fail now. -+ * sysdeps/generic/ldsodefs.h: Adjust _dl_allocate_static_tls prototype. -+ * elf/Makefile: Add rules to build and run tst-tls14. -+ * elf/tst-tls14.c: New file. -+ * elf/tst-tlsmod14a.c: New file. -+ * elf/tst-tlsmod14b.c: New file. -+ -+2003-07-23 Jakub Jelinek -+ -+ * sysdeps/pthread/lio_listio.c (LIO_OPCODE_BASE): Define. -+ (lio_listio): Use it. -+ * sysdeps/pthread/lio_listio64.c: Include lio_listio.c instead of -+ after few defines to avoid duplication. -+ -+2003-07-22 Jakub Jelinek -+ -+ * include/stdio.h (__libc_fatal): Add libc_hidden_proto. -+ * include/dlfcn.h (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose): -+ Likewise. -+ * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose): -+ Add libc_hidden_def. -+ * sysdeps/generic/libc_fatal.c (__libc_fatal): Likewise. -+ * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise. -+ * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Likewise. -+ * elf/Versions (libc): Export __libc_dlopen_mode@@GLIBC_PRIVATE, -+ __libc_dlsym@@GLIBC_PRIVATE and __libc_dlclose@@GLIBC_PRIVATE. -+ * libio/Versions (libc): Export __libc_fatal@@GLIBC_PRIVATE. -+ * sysdeps/generic/unwind-dw2.c: Readd #ifs removed during last -+ change. -+ * sysdeps/generic/unwind.inc: Removed. -+ -+ * include/resolv.h (__resp): Declare. Define to __libc_resp -+ if in libc.so. -+ (_res): If USE___THREAD, define to (*__resp). -+ * resolv/res_libc.c (_res): Normal .bss variable with compat_symbol -+ even if USE___THREAD. -+ (__resp): New __thread variable. -+ (__libc_resp): New alias. -+ * resolv/Versions (libc): Export _res@GLIBC_2.0 even if -+ USE_TLS && HAVE___THREAD. Export __resp@@GLIBC_PRIVATE. -+ * sysdeps/generic/res-state.c (__res_state): Return __resp -+ if USE___THREAD. -+ -+2003-07-22 H.J. Lu -+ -+ * elf/dl-support.c (_dl_hwcap): New variable. -+ (_dl_aux_init): Initialize GL(dl_hwcap) for static binaries. -+ -+ * sysdeps/i386/fpu/fclrexcpt.c: Include , -+ and . -+ (__feclearexcept): Clear MXCSR if needed. -+ * sysdeps/i386/fpu/fsetexcptflg.c: Likewise. -+ -+ * sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Document -+ that newer hardware needs more than these macros. -+ -+ * sysdeps/i386/setfpucw.c: New file. -+ -+2003-07-22 Jakub Jelinek -+ -+ * elf/Makefile (CFLAGS-ldconfig.c): Define IS_IN_ldconfig. -+ * elf/ldconfig.c: Include dl-procinfo.c. -+ (PROCINFO_CLASS): Define. -+ * sysdeps/generic/ldsodefs.h (PROCINFO_CLASS): Define. -+ * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: New file. -+ * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: New file. -+ * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (PROCINFO_CLASS): -+ Define if not yet defined. Use it instead of EXTERN. Undefine -+ at the end of the file. -+ * sysdeps/unix/sysv/linux/arm/dl-procinfo.c (PROCINFO_CLASS): -+ Likewise. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c -+ (PROCINFO_CLASS): Likewise. -+ * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c -+ (PROCINFO_CLASS): Likewise. -+ -+2003-07-22 H.J. Lu -+ -+ * elf/ldconfig.c (main): Issue a fatal error if relative path -+ is used to build cache. -+ -+2003-07-22 Ulrich Drepper -+ -+ * elf/readlib.c (process_file): Avoid possible overflow in assignment. -+ -+2003-07-21 Art Haas -+ -+ * manual/charset.texi (Converting a Character): Fix example code so a -+ valid pointer is returned. -+ -+2003-07-22 Andreas Jaeger -+ -+ * elf/readlib.c (process_file): Check that file is a shared -+ object. -+ -+ * elf/sofini.c (__FRAME_END__): Use attribute used so that gcc -+ will not optimize it away. -+ (__DTOR_END__): Likewise. -+ (__CTOR_END__): Likewise. -+ -+ * include/libc-symbols.h (_elf_set_element): Use attribute used so -+ that gcc will not optimize it away. -+ (link_warning): Likewise. -+ -+2003-07-22 Ulrich Drepper -+ -+ * wcsmbs/wcpncpy.c (__wcpncpy): Correct destination pointer handling. -+ * wcsmbs/Makefile (tests): Add tst-wcpncpy. -+ * wcsmbs/tst-wcpncpy.c: New file. -+ -+2003-07-21 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_STOPPED): Define. -+ -+ * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Reverse use of -+ stmxcsr and ldmxcsr. -+ -+ * Makerules (build-module-helper): Add -z defs unless explicitly said -+ not to do it. -+ * dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs -+ which has undefined symbols. -+ * elf/Makefile: Likewise. -+ -+ * sysdeps/i386/fpu/fedisblxcpt.c: Use dl_hwcap, not dl_hwcap_mask. -+ * sysdeps/i386/fpu/feenablxcpt.c: Likewise. -+ * sysdeps/i386/fpu/feholdexcpt.c: Likewise. -+ * sysdeps/i386/fpu/fesetround.c: Likewise. -+ * sysdeps/i386/fpu/ftestexcept.c: Likewise. -+ -+2003-07-21 HJ Lu -+ -+ * elf/ldconfig.c (search_dir): Treat symlink as regular file -+ if it won't point to itself. -+ -+2003-07-20 Ulrich Drepper -+ -+ * sysdeps/ia64/hp-timing.h (REPEAT_READ): Cast to long int not to int. -+ -+2003-07-20 Andreas Jaeger -+ -+ * iconvdata/cp932.c (BODY): STANDARD_ERR_HANDLER is now called -+ STANDARD_TO_LOOP_ERR_HANDLER. -+ * iconvdata/euc-jp-ms.c (BODY): Likewise. -+ -+2003-07-19 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo. -+ -+ * sysdeps/unix/sysv/linux/syscalls.list: Remove affinity syscalls. -+ -+2003-07-16 Daniel Jacobowitz -+ Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHMLBA): Define to -+ 256K, remove unneeded declaration of __getpagesize. -+ -+2003-07-16 Andreas Schwab -+ -+ * sysdeps/unix/sysv/linux/futimes.c: Include . -+ -+2003-07-15 Ulrich Drepper -+ -+ * io/test-utime.c (main): Make test yet more robust. -+ -+2003-07-14 Ulrich Drepper -+ -+ More cancellation handling fixups. -+ * sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel. -+ * sysdeps/generic/not-cancel.h: Likewise. -+ * catgets/open_catalog.c: Use not-cancelable syscalls. -+ * time/Makefile (CFLAGS-getdate.c): Add -fexceptions. -+ * sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable. -+ * sysdeps/unix/syscalls.list: Don't mark lseek as cancelable. -+ * dlfcn/dlfcn.h: Mark dlopen with __THROW again. -+ * io/fcntl.h: Don't mark posix_fallocate with __THROW. -+ * libio/fileops.c: Use not-cancelable syscalls for fclose. -+ * libio/iopopen.c: Use no-cancelable syscalls. -+ * libio/stdio.h: Mark popen and pclose with __THROW again. -+ * misc/Makefile (CFLAGS-syslog.c): Add -fexceptions. -+ * misc/syslog.c: Fix locking and cancellation cleanup handling. -+ * posix/unistd.h: Mark ttyname and ttyname_r again with __THROW. -+ * stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c, -+ CFLAGS-tempname.c): Add -fexceptions. -+ * stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions. -+ * string/string.h: Mark strerror and strerror_r with _THROW again. -+ * sysdeps/generic/unwind.inc: New file. Copied from gcc. -+ * sysdeps/generic/unwind-dw2.c: Update from gcc version. Remove -+ #ifs since we now need all the code compiled. -+ * sysdeps/posix/spawni.c: Use close_not_cancel instead of close. -+ * sysdeps/unix/closedir.c: Use not-cancelable syscalls. -+ * sysdeps/unix/opendir.c: Likewise. -+ -+ * iconvdata/Makefile (modules): Add CP932 and EUC-JP-MS. -+ Add rule for EUC-JP-MS dependency. -+ * iconvdata/cp932.c: New file. -+ * iconvdata/eucjp-ms.c: New file. -+ * iconvdata/gconv-modules: Add entries for CP932 and EUC-JP-MS. -+ Patch by MORIYAMA Masayuki . -+ -+2003-07-15 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): Add -+ cfi directives. -+ -+2003-07-14 Franz Sirl -+ -+ * sysdeps/unix/sysv/linux/kernel-features.h -+ (__ASSUME_FIXED_CLONE_SYSCALL): New macro. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Use it. -+ -+ * sysdeps/unix/sysv/linux/utimes.c: Include sysdep.h. -+ -+2003-07-14 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/kernel-features.h: Define -+ __ASSUME_TGKILL for Alpha appropriately. -+ -+2003-07-12 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/bits/statfs.h (_STATFS_F_FRSIZE): Define. -+ * sysdeps/unix/sysv/linux/alpha/bits/statfs.h (_STATFS_F_FRSIZE): -+ Likewise. -+ * sysdeps/unix/sysv/linux/s390/bits/statfs.h (_STATFS_F_FRSIZE): -+ Likewise. -+ -+ * sysdeps/unix/sysv/linux/kernel-features.h: Define -+ __ASSUME_UTIMES for x86 and kernels > 2.5.75. -+ -+ * sysdeps/unix/sysv/linux/futimes.c (__futimes): Handle case with -+ second parameter == NULL. -+ * sysdeps/unix/sysv/linux/utimes.c: New file. -+ -+2003-07-12 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/futimes.c: Include kernel-features.h. -+ * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_UTIMES): Fix -+ a typo. -+ -+2003-07-12 Ulrich Drepper -+ -+ * time/sys/time.h: Namespace cleanup. -+ * sysdeps/unix/sysv/linux/kernel-features.h: Define -+ __ASSUME_UTIMES for the architectures which always had the syscall. -+ * sysdeps/unix/sysv/linux/futimes.c: New file. -+ -+2003-07-12 Kaz Kojima -+ -+ * sysdeps/unix/sysv/linux/sh/socket.S: Save and restore the PR -+ register across CENABLE and CDISABLE. -+ -+2003-07-11 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/sigwait.c: Include string.h. -+ * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise. -+ * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise. -+ * sysdeps/unix/sysv/linux/sleep.c (__sleep): Cast value to unsigned -+ int before assigning to max to avoid warnings. -+ -+2003-07-11 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket): Add -+ cfi directives. -+ * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise. -+ -+2003-07-10 Jakub Jelinek -+ -+ * sysdeps/powerpc/powerpc64/elf/start.S: Set section flags of -+ .data.rel.ro.local to "aw". -+ -+2003-07-10 Ulrich Drepper -+ -+ * sysdeps/m68k/Makefile: Remove CLFAGS-.oS addition. -+ * Makeconfig (CFLAGS-.oS): Use PIC-ccflag instead of pic-ccflag. -+ (PIC-ccflag): Define. -+ -+2003-07-04 Jakub Jelinek -+ -+ * sysdeps/s390/s390-32/elf/start.S: Emit position independent code -+ if PIC. -+ * sysdeps/s390/s390-64/elf/start.S: Likewise. -+ -+2003-07-07 Jakub Jelinek -+ -+ * sysdeps/powerpc/powerpc64/elf/start.S: Put L(start_address) -+ into .data.rel.ro.local section if PIC to avoid DT_TEXTREL. -+ -+2003-07-07 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/kernel-features.h: Version -+ __ASSUME_CORRECT_SI_PID and __ASSUME_TGKILL if possible. -+ -+ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for -+ compilation with HAVE_AUX_SECURE defined. -+ -+2003-07-05 Richard Henderson -+ -+ * sysdeps/alpha/elf/initfini.c: Avoid .ent/.end. -+ -+2003-07-03 Ulrich Drepper -+ -+ * configure.in: Also check for .cfi_rel_offset pseudo-op. -+ -+2003-07-03 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/prof-freq.c (__profile_frequency): Fix a -+ typo. -+ -+2003-07-03 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_CLKTCK): -+ Define. -+ * sysdeps/unix/sysv/linux/prof-freq.h: New file. -+ -+2003-07-02 Jakub Jelinek -+ -+ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Protect new_sysinfo -+ decl and use with #ifdef NEED_DL_SYSINFO. -+ -+2003-07-02 Ulrich Drepper -+ -+ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't set -+ GL(dl_sysinfo) unles GL(dl_sysinfo_dso) is also set. -+ * sysdeps/unix/sysv/linux/kernel-features.h: Define -+ __ASSUME_VSYSCALL only for 2.5.69 and up since this is when the -+ vsyscall DSO was added. -+ -+ * posix/bits/posix1_lim.h (_POSIX_NGROUPS_MAX): Define to 8 or 0 -+ depending on selected standard. -+ (NGROUPS_MAX): Define to 8 if not defined. -+ -+2003-07-02 Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: New file. -+ -+2003-05-04 H.J. Lu -+ -+ * malloc/arena.c (arena_get2): Add atomic_write_barrier. -+ * malloc/thread-m.h: Include . -+ (atomic_full_barrier): Provide default. -+ (atomic_read_barrier): Likewise. -+ (atomic_write_barrier): Likewise. -+ * sysdeps/ia64/bits/atomic.h (atomic_full_barrier): New #define. -+ -+2003-06-30 Ulrich Drepper -+ -+ * sysdeps/generic/sysdep.h: Define cfi_rel_offset and CFI_REL_OFFSET. -+ -+2003-06-30 Richard Henderson -+ -+ * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_bool_*_int): -+ Invert the sense of the return value. -+ (__arch_exchange_16_int): Fix paste-o. -+ (__arch_exchange_{32,64}_int): Fix think-o. -+ -+ * sysdeps/unix/sysv/linux/alpha/clone.S: Load child_tid properly. -+ -+2003-06-30 Richard Henderson -+ -+ * include/sys/resource.h (__getrusage): Mark hidden. -+ * include/sys/time.h (__settimeofday, __setitimer, __utimes): Likewise. -+ * include/sys/wait.h (__wait4): Likewise. -+ -+2003-06-17 Guido Guenther -+ -+ * sysdeps/unix/sysv/linux/mips/xstatconv.c: Handle STAT_IS_KERNEL_STAT -+ case. -+ (xstat_conv): Rename to __xstat_conv and remove static inline. -+ (xstat64_conv): Likewise. -+ -+2003-06-29 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/sleep.c (__sleep): Handle parameter -+ values which cannot be handled in one nanosleep call. -+ -+2003-06-25 Alfred M. Szmidt -+ -+ * sysdeps/generic/bits/in.h (IPV6_HOPOPTS, IPV6_DSTOPTS): New macros. -+ (IPV6_RXHOPOPTS, IPV6_RXDSTOPTS): Use them. -+ -+ * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: Typo fix. -+ -+2003-06-04 Thorsten Kukuk -+ -+ * sysdeps/unix/sysv/linux/net/if_arp.h: Sync with kernel header, -+ fix typo. -+ -+2003-06-26 Steven Munroe -+ -+ * sysdeps/unix/sysv/linux/xstatconv.h [!STAT_IS_KERNEL_STAT]: -+ Conditionalize function definitions that use struct kernel_stat. -+ * sysdeps/unix/sysv/linux/fxstat.c: Remove __syscall_fstat extern. -+ * sysdeps/unix/sysv/linux/lxstat.c: Remove __syscall_lstat extern. -+ * sysdeps/unix/sysv/linux/xstat.c: Remove __syscall_stat extern. -+ -+2003-06-28 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/s390/semtimedop.c (semtimedop): Add real -+ implementation. -+ -+2003-06-07 Thorsten Kukuk -+ -+ * nis/nss_compat/compat-grp.c: Remove unused nis_first variable. -+ (getgrent_next_file): Don't store group name to early in blacklist. -+ -+ * nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Save strlen result -+ and use memcpy instead of strcpy. -+ -+2003-06-28 Ulrich Drepper -+ -+ * nis/nss_compat/compat-grp.c: Optimize several little things. Use -+ stream unlocked. -+ * nis/nss_compat/compat-initgroups.c: Likewise. -+ * nis/nss_compat/compat-pwd.c: Likewise. -+ * nis/nss_compat/compat-spwd.c: Likewise. -+ -+2003-06-27 Thorsten Kukuk -+ -+ * nis/nss_compat/compat-initgroups.c: Don't use our own NIS/NIS+ -+ functions, dlopen corresponding NSS module instead. -+ -+2003-06-27 Jeroen Dekkers -+ -+ * sysdeps/mach/hurd/alpha/init-first.c: Remove call to __libc_init. -+ * sysdeps/mach/hurd/i386/init-first.c: Likewise. -+ * sysdeps/mach/hurd/mips/init-first.c: Likewise. -+ * sysdeps/mach/hurd/powerpc/init-first.c: Likewise. -+ -+2003-06-27 Ulrich Drepper -+ -+ * rt/Makefile (CFLAGS-librt-cancellation.c): Define. -+ -+2003-06-26 Roland McGrath -+ -+ * sysdeps/mach/configure.in: Barf rather than define NO_CREATION_TIME. -+ * sysdeps/mach/configure: Regenerated. -+ * sysdeps/mach/hurd/times.c (times_init): Function removed. -+ (__times): Assume `creation_time' field is available. -+ * sysdeps/mach/hurd/Makefile [$(subdir) = csu] (sysdep_routines): -+ Don't append set-init. -+ * sysdeps/mach/hurd/set-init.c: File removed. -+ -+2003-06-26 Roland McGrath -+ -+ * elf/elf.h (AT_SECURE): New macro. -+ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Grok it, -+ set __libc_enable_secure. -+ (_dl_show_auxv): Add AT_SECURE to name table. -+ * elf/dl-support.c (_dl_aux_init): Grok AT_SECURE, set -+ __libc_enable_secure and __libc_enable_secure_decided. -+ * sysdeps/unix/sysv/linux/ldsodefs.h -+ [__ASSUME_AT_SECURE] (HAVE_AUX_SECURE): Define it. -+ * sysdeps/unix/sysv/linux/kernel-features.h -+ [__LINUX_KERNEL_VERSION >= 132426] (__ASSUME_AT_SECURE): Define it. -+ -+2003-06-26 Ulrich Drepper -+ -+ * io/test-utime.c: If _STATBUF_ST_NSEC is defined, adjust lower -+ boundary test to take rounding of nanoseconds into account. -+ -+ * sysdeps/unix/sysv/linux/bits/stat.h: Define _STATBUF_ST_NSEC. -+ * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise. -+ * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise. -+ * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise. -+ * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise. -+ * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise. -+ -+2003-06-26 Andreas Schwab -+ -+ * sysdeps/m68k/fpu/bits/mathinline.h: Don't inline frexp. -+ * sysdeps/m68k/fpu/s_frexp.c: Put implementation here. -+ * sysdeps/m68k/fpu/s_frexpl.c: Fix to handle unnormalized numbers. -+ -+2003-06-17 Thorsten Kukuk -+ -+ * nis/Makefile: Remove NIS/NIS+ files from nss_compat module. -+ * nis/nss_compat/compat-grp.c: Don't use our own NIS/NIS+ functions, -+ dlopen corresponding NSS module instead. -+ * nis/nss_compat/compat-pwd.c: Likewise. -+ * nis/nss_compat/compat-spwd.c: Likewise. -+ * nis/nss_compat/compat-initgroups.c: Disabled for now. -+ * nss/Versions: Export __nss_lookup_function. -+ -+2003-06-19 Daniel Jacobowitz -+ -+ * sysdeps/unix/sysv/linux/kernel-features.h: Update kernel features -+ for the SH architecture. -+ -+2003-06-25 Thorsten Kukuk -+ -+ * csu/Makefile: Use CPPFLAGS to find correct linux/version.h. -+ -+2003-06-25 Andreas Jaeger -+ -+ * stdlib/tst-strtod.c (main): Declare constant long double as -+ suggested by Jakub Jelinek and Andreas Schwab. -+ -+ * posix/tst-nanosleep.c: Include for nanosleep -+ declaration. -+ -+ * stdio-common/tst-fphex.c: Fix format string. -+ -+ * posix/transbug.c: Include for memset and strlen -+ declarations. -+ -+ * stdio-common/tst-sprintf.c: Include for free declaration. -+ -+ * stdlib/tst-strtod.c (main): Pass long double value. -+ -+ * test-skeleton.c: Include for nanosleep declaration. -+ -+2003-06-25 Ulrich Drepper -+ -+ * include/time.h: Don't define CLOCK_IDFIELD_SIZE if _ISOMAC is -+ defined. -+ -+2003-06-11 Jakub Jelinek -+ -+ * elf/Versions (libc): Add _dl_open_hook@GLIBC_PRIVATE. -+ * elf/dl-libc.c (struct dl_open_hook): New. -+ (_dl_open_hook): New variable. -+ (do_dlsym_private): New function. -+ (__libc_dlopen_mode) [!SHARED]: Lookup _dl_open_hook@GLIBC_PRIVATE -+ and initialize it if found. -+ (__libc_dlopen_mode) [SHARED]: If _dl_open_hook is non-NULL, -+ call dlopen_mode hook. -+ (__libc_dlsym) [SHARED]: If _dl_open_hook is non-NULL, -+ call dlsym hook. -+ (__libc_dlclose) [SHARED]: If _dl_open_hook is non-NULL, -+ call dlclose hook. -+ -+2003-06-25 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/cris/sysdep.h (INLINE_SYSCALL): Cast -+ result to long int so that extensions to long long int work. -+ Patch by Uwe Reimann . -+ -+2003-06-19 Jakub Jelinek -+ -+ * elf/ldconfig.c (main): Use add_system_dir instead of add_dir. -+ * sysdeps/generic/dl-cache.h (add_system_dir): Define. -+ * sysdeps/unix/sysv/linux/x86_64/dl-cache.h: Include sparc -+ dl-cache.h. -+ * sysdeps/unix/sysv/linux/s390/dl-cache.h: New file. -+ * sysdeps/unix/sysv/linux/mips/dl-cache.h: New file. -+ * sysdeps/unix/sysv/linux/powerpc/dl-cache.h: New file. -+ * sysdeps/unix/sysv/linux/sparc/dl-cache.h: New file. -+ -+2003-06-19 Jakub Jelinek -+ -+ * test-skeleton.c (timeout_handler): If waitpid returned 0, -+ retry once after a second. If killed == 0, assume -+ WTERMSIG (status) == SIGKILL. -+ -+2003-06-18 Roland McGrath -+ -+ * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Catch uninitialized -+ elements in the table instead of printing an empty name string. -+ -+2003-06-05 Roland McGrath -+ -+ * elf/elf.h (PT_GNU_STACK): New macro. -+ -+2003-06-24 Ulrich Drepper -+ -+ * include/time.h: Define CLOCK_IDFIELD_SIZE. -+ * sysdeps/posix/clock_getres.c: Recognize thread CPU clock IDs. -+ * sysdeps/unix/clock_gettime.c: Likewise. -+ * sysdeps/unix/clock_settime.c: Likewise. -+ * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Adjust for new -+ clock id for thread CPU clocks. -+ -+ * sysdeps/unix/sysv/linux/fstatfs64.c (__fstatfs64): Add support -+ for the fstatfs64 syscall. -+ * sysdeps/unix/sysv/linux/statfs64.c (__statfs64): Add support for -+ the statfs64 syscall. -+ -+ * sysdeps/unix/sysv/linux/kernel-features.h: Define -+ __ASSUME_STATFS64 appropriately. -+ -+ * sysdeps/unix/sysv/linux/internal_statvfs.c: Use f_frsize field -+ from statfs structure if it has been filled in. -+ -+ * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_frsize -+ field. -+ (struct statfs64): Likewise. -+ * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: Likewise. -+ * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise. -+ -+2003-06-24 Richard Henderson -+ -+ * sysdeps/unix/sysv/linux/alpha/syscalls.list (pread, pwrite): Use -+ the 64-bit syscall name. -+ -+ * sysdeps/alpha/setjmp.S (_setjmp, setjmp): Mark .prologue. -+ -+ * sysdeps/alpha/fpu/bits/mathinline.h: Honor -+ __LIBC_INTERNAL_MATH_INLINES. Implement __signbitf, __signbit. -+ -+ * sysdeps/unix/sysv/linux/alpha/clone.S: Use HIDDEN_JUMPTARGET. -+ * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use -+ libc_hidden_def. -+ * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/setfpucw.c: Use libc_hidden_proto -+ on them. -+ -+ * sysdeps/alpha/bits/atomic.h: New file. -+ -+2003-06-24 Andreas Schwab -+ -+ * sysdeps/m68k/fpu/libm-test-ulps: Update. -+ -+2003-06-24 Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/x86_64/stat.h (_STAT_VER_LINUX): Avoid -+ redeclaration with 32-bit code. -+ -+2003-05-19 Ed Connell -+ -+ * sysdeps/unix/sysv/linux/i386/getcontext.S (getcontext): Retain -+ floating point mask. -+ * sysdeps/i386/fpu/fegetenv.c (fegetenv): Likewise. -+ -+2003-06-23 Ulrich Drepper -+ -+ * sysdeps/pthread/aio_misc.h: Mark __aio_requests_mutex, -+ __aio_enqueue_request, __aio_find_req, __aio_find_req_fd, -+ __aio_free_request, __aio_notify, and __aio_sigqueue as hidden. -+ -+ * sysdeps/pthread/aio_suspend.c (aio_suspend): Set errno to the result -+ of pthread_cond_wait if there was an error. Use pthread_cleanup_* -+ instead of __libc_cleanup_region_*. -+ -+2003-06-20 Richard Henderson -+ -+ * sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases. -+ * sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New. -+ -+2003-06-20 Richard Henderson -+ -+ * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL1): Use __builtin_expect. -+ * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ST_INO_64_BIT) -+ Unset for alpha. -+ (__ASSUME_TIMEVAL64): Set for alpha. -+ * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove -+ adjtimex, osf_sigprocmask, old_adjtimex. -+ * sysdeps/unix/sysv/linux/alpha/adjtime.c: Use INLINE_SYSCALL, -+ __ASSUME_TIMEVAL64. Reorg tv64 functions to avoid uninit variable. -+ * sysdeps/unix/sysv/linux/alpha/getitimer.S: Use __ASSUME_TIMEVAL64. -+ * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/select.S: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Streamline -+ PIC code sequence. -+ * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/sigaction.c: New file. -+ * sysdeps/unix/sysv/linux/alpha/sigprocmask.c: Use INLINE_SYSCALL. -+ * sysdeps/unix/sysv/linux/alpha/ustat.c: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove osf_sigprocmask, -+ sys_ustat, sys_mknod, adjtimex, old_adjtimex. -+ * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): Don't -+ defer to __syscall_name; error for rt_sigaction. -+ * sysdeps/unix/sysv/linux/alpha/xstatconv.c: Include kernel_stat.h. -+ -+2003-06-18 Ulrich Drepper -+ -+ * malloc/malloc.c (public_mALLINFo): Initialize malloc if it -+ hasn't happened yet. -+ -+ * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump): -+ Fix completely broken implementation. The second parameter is of -+ type struct ucontext*. -+ -+ * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always -+ inline. -+ -+ * sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash. -+ * sysdeps/generic/dl-hash.h: Likewise. -+ -+ * sysdeps/generic/memcmp.c: Remove inline from -+ memcmp_common_alignment and memcmp_not_common_alignment definition. -+ -+ * intl/localealias.c (read_alias_file): Determine whether line is -+ read incompletely early, before we modify the line. -+ -+2003-06-17 Jakub Jelinek -+ -+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela) -+ : Don't segfault on undefined symbols. -+ -+2003-06-17 Paul Mackerras -+ -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: New file. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: New file. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: New file. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: New file. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: New file. -+ * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Adjust. -+ -+2003-06-17 Jakub Jelinek -+ -+ * posix/regcomp.c (build_word_op): Use alnum instead of alpha class. -+ -+2003-06-17 Ulrich Drepper -+ -+ * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): nanosleep -+ takes care of enabling cancellation. -+ -+ * sysdeps/pthread/aio_suspend.c (aio_suspend): Make aio_suspend -+ cancelable. It's not correct to disable cancellation. Instead of -+ a cleanup handler. -+ -+ * sysdeps/unix/sysv/linux/sigtimedwait.c: If SIGCANCEL is defined -+ and part of the incoming set, create a temporary set without this -+ signal. -+ * sysdeps/unix/sysv/linux/sigwait.c: Likewise. -+ * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise. -+ -+ * sysdeps/unix/sysv/linux/sleep.c: Use CANCELLATION_P if defined before -+ returning because seconds==0. Add __builtin_expect. -+ -+2003-06-16 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/i386/socket.S: Add unwind information. -+ -+ * sysdeps/unix/sysv/linux/wait.c (__libc_wait): Fix type of result -+ variable. -+ -+2003-06-16 Thorsten Kukuk -+ -+ * include/libc-symbols.h: Add static_link_warning macro. -+ * grp/initgroups.c: Print linker warning if this function -+ is called in a static linked binary. -+ * nss/getXXbyYY.c: Likewise. -+ * nss/getXXbyYY_r.c: Likewise. -+ * nss/getXXent.c: Likewise. -+ * nss/getXXent_r.c: Likewise. -+ * sysdeps/posix/getaddrinfo.c: Likewise. -+ -+2003-06-16 Bruno Haible -+ -+ * iconvdata/gconv-modules (ISO-8859-15): Add aliases ISO_8859-15, -+ LATIN-9. -+ (ISO-8859-16): Add aliases ISO_8859-16:2001, ISO_8859-16. -+ (IBM1047): Add alias IBM-1047. -+ (GBK): Add aliases MS936, WINDOWS-936. -+ -+2003-06-16 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/xstatconv.c (__xstat_conv): Define even if -+ defined __ASSUME_STAT64_SYSCALL && defined XSTAT_IS_XSTAT64. -+ (__xstat64_conv): Change xstat_conv to __xstat_conv. -+ -+2003-06-16 Ulrich Drepper -+ -+ * locale/iso-639.def: Update from current official ISO 639. -+ -+ * math/tgmath.h (__TGMATH_UNARY_IMAG_ONLY): Removed. -+ -+2003-06-15 Andreas Jaeger -+ -+ * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Correct setting -+ of MXCSR. -+ * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise. -+ * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise. -+ Reported by Arnaud Desitter . -+ -+ * math/tgmath.h (carg): Handle real arguments. -+ (conj): Likewise. -+ (cproj): Likewise. -+ (cimag): Likewise. -+ (creal): Likewise. -+ -+ * math/Makefile (CFLAGS-test-tgmath-ret.c): New. -+ (tests): Add test-tgmath-ret. -+ * math/test-tgmath-ret.c: New file. -+ -+ * math/tgmath.h (ilogb): Return always an int. -+ -+2003-06-16 Ulrich Drepper -+ -+ * elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr -+ computation so that prelinking works. -+ -+2003-06-15 Ulrich Drepper -+ -+ * elf/dl-iteratephdr.c (__dl_iterate_phdr): Don't skip dynamic -+ linker's map. -+ * elf/rtld.c (dl_main): Initialize l_phdr and l_phnum of of the -+ dynamic linker's map. -+ -+ Fix cancellation point handling wrt exception based cleanup. -+ * io/Makefile: Compile fcntl.c, poll.c, and lockf.c with exceptions. -+ * misc/Makefile: Compile pselect.c, readv.c, writev.c, and usleep.c -+ with exceptions. -+ * posix/Makefile: Compile pread.c, pread64.c, pwrite.c, pwrite64.c, -+ sleep.c, wait.c, waitid.c, and waitpid.c with exceptions. -+ * rt/Makefile: Compile aio_suspend.c and clock_nanosleep.c with -+ exceptions. -+ * signal/Makefile: Compile sigpause.c, sigsuspend.c, sigtimedwait.c, -+ sigwait.c, and sigwaitinfo.c with exceptions. -+ * stdlib/Makefile: Compile system.c with exceptions. -+ * sysvipc/Makefile: Compile msgrcv.c and msgsnd.c with exceptions. -+ * termios/Makefile: Compile tcdrain.c with exceptions. -+ * sysdeps/generic/lockf.c: Add comment explaining the cancellation -+ situation. -+ * sysdeps/generic/pselect.c: Likewise. -+ * sysdeps/posix/sigpause.c: Likewise. -+ * sysdeps/posix/system.c: Likewise. -+ * sysdeps/posix/waitid.c: Likewise. -+ * sysdeps/unix/sysv/linux/sleep.c: Likewise. -+ * sysdeps/unix/sysv/linux/usleep.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/sysdep.h: Major rewrite of -+ INTERNAL_SYSCALL to not use push inside asm statement so that -+ unwind info is correct around the syscall. -+ * sysdeps/unix/clock_nanosleep.c: Add cancellation support. -+ * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise. -+ -+2003-06-15 Andreas Jaeger -+ -+ * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): -+ Add CFI directives. -+ -+2003-06-15 Guido Guenther -+ -+ * sysdeps/unix/sysv/linux/mips/Makefile: Add missing endif and -+ create $(objpfx). -+ -+2003-06-14 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Use __close, -+ not close. -+ -+ * inet/inet6_option.c (inet6_option_alloc): Add libc_hidden_def. -+ * include/netinet/in.h (inet6_option_alloc): Add libc_hidden_proto -+ definition. -+ -+ * inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define. -+ * inet/netinet/in.h: Add prototypes for inet6_option_* functions. -+ * inet/Makefile (routines): Add inet6_option. -+ * inet/inet6_option.c: New file. -+ * inet/Versions [GLIBC_2.3.3] (libc): Add inet6_option_space, -+ inet6_option_init, inet6_option_append, inet6_option_alloc, -+ inet6_option_next, and inet6_option_find. -+ -+2003-06-13 Ulrich Drepper -+ -+ * inet/netinet/ip6.h (struct ip6_ext): Define. -+ -+ * sysdeps/unix/sysv/linux/sys/param.h (howmany): Optimize for gcc. -+ -+ Fixing gcc 3.3 warnings, part II. -+ * argp/argp-help.c (hol_entry_long_iterate): Always inline. -+ * elf/dl-load.c (cache_rpath): Don't inline. -+ * iconvdata/cns11642l2.h: Always inline all functions. -+ * iconvdata/iso-ir-165.h: Likewise. -+ * locale/Makefile (aux): Add coll-lookup. -+ * locale/coll-lookup.c: New file. -+ * locale/coll-lookup.h (collidx_table_lookup): Do not define here. -+ (collseq_table_lookup): Likewise. -+ * locale/weightwc.h: Adjust collidx_table_lookup calls for name change. -+ * posix/fnmatch_loop.c: Adjust collseq_table_lookup calls for name -+ change. -+ * posix/regcomp.c: Likewise. -+ * posix/regexec.c: Likewise. -+ * locale/programs/3level.h (*_get): Always inline. -+ * locale/programs/locfile.h: Move definition of handle_copy to... -+ * locale/programs/locfile.c: ...here. -+ * locale/programs/ld-collate.c (obstack_int32_grow): Always inline. -+ (obstack_int32_grow_fast): Likewise. -+ (utf8_encode): Likewise. -+ (find_element): Avoid aliasing problems. -+ (insert_value): Likewise. -+ (collate_read): Likewise. -+ * nss/getent.c (print_hosts): Don't inline -+ (print_networks): Likewise. -+ (print_shadow): Likewise. -+ (build_doc): Likewise. -+ * nss/nss_files/files-parse.c [ENTDATA] (parser_stclass): Don't -+ inline. -+ * posix/regcomp.c (re_set_fastmap): Always inline. -+ (seek_collating_symbol_entry): Likewise. -+ (lookup_collation_sequence_value): Likewise. -+ (build_range_exp): Likewise. -+ (build_collating_symbol): Likewise. -+ * posix/regexec.c (acquire_init_state_context): Don't inline. -+ (clean_state_log_if_need): Likewise. -+ * resolv/res_send.c (eConsIovec): Rewrite to not return struct and -+ adjust all callers. -+ (evConsTime): Likewise. -+ (evAddTime): Likewise. -+ (evSubTime): Likewise. -+ (evNowTime): Likewise. -+ (evTimeSpec): Removed. -+ (__libc_res_nsend): Avoid aliasing problem. -+ * sysdeps/unix/sysv/linux/ifreq.h: Move old_siocgifconf definition to.. -+ * sysdeps/unix/sysv/linux/ifreq.c: ...here. -+ * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_dl_string_hwcap): -+ Always inline. -+ (_dl_string_platform): Likewise. -+ * wctype/wchar-lookup.h (wctype_table_lookup): Always inline. -+ (wcwidth_table_lookup): Likewise. -+ (wctrans_table_lookup): Likewise. -+ -+ * sysdeps/unix/sysv/linux/sys/epoll.h: Include . -+ -+2003-06-12 Ulrich Drepper -+ -+ * wcsmbs/wchar.h: Define wint_t in std namespace, too [PR libc/5034]. -+ -+2003-05-29 Jim Meyering -+ -+ * time/strftime.c (my_strftime) [!defined _NL_CURRENT -+ && HAVE_STRFTIME]: Use underlying_strftime for %r. -+ Suggested by Daniel Yacob . -+ -+2003-06-12 Steven Munroe -+ -+ * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Replace -+ @got notation with @toc. -+ * sysdeps/powerpc/powerpc64/sysdep.h (CALL_MCOUNT): Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Likewise. -+ -+2003-06-12 Ulrich Drepper -+ -+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date also -+ if only PF_INET address is needed. -+ -+ * nss/getXXbyYY_r.c: Make sure we always return a nonzero value in -+ case of an error. -+ -+ * scripts/config.guess: Update from upstream version. -+ * scripts/config.sub: Likewise. -+ -+2003-06-12 Jakub Jelinek -+ -+ * locale/programs/ld-time.c (time_output): Also copy the era format, -+ not only the name. -+ -+2003-06-12 H.J. Lu -+ -+ * posix/transbug.c (run_test): Return 1 for failure. -+ (do_test): Compare only if run_test is successful. -+ -+2003-06-12 Simon Josefsson -+ -+ * argp/argp.h [!__THROW]: Define if undefined. -+ -+2003-06-12 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/cris/sysdep.h: Fix handling of syscalls with -+ more than four parameters. -+ Patch by Uwe Reimann . -+ -+2003-06-12 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/ia64/kernel_stat.h: New file. -+ * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: New file. -+ * sysdeps/unix/sysv/linux/x86_64/kernel_stat.h: New file. -+ -+ * stdio-common/printf-parsemb.c: Include stdlib.h and sys/param.h. -+ -+2003-06-12 Roland McGrath -+ -+ * Makerules ($(objpfx)stubs): Rewrite sed magic. -+ -+2003-02-28 Isamu Hasegawa -+ -+ * posix/regcomp.c (parse_expression): Deliver translation to -+ build_word_op, and build_charclass. -+ (build_charclass): Apply translation for character classes too. -+ (build_word_op): Deliver translation to build_charclass. -+ * posix/transbug.c: New file. -+ * posix/Makefile (tests): Add transbug. -+ -+2003-06-04 Paolo Bonzini -+ -+ * posix/regexec.c (group_nodes_into_DFAstates): Check for -+ NEXT_ENDBUF_CONSTRAINT. Move check for constraints which do a -+ 'continue' before the others. -+ -+2003-06-11 Ulrich Drepper -+ -+ * dirent/scandir.c (SCANDIR): Reset errno after calling selector -+ function [PR libc/5045]. -+ -+ * sysdeps/i386/bits/byteswap.h (__bswap_32): Use bswap instruction -+ also for P4. -+ -+ * time/tzfile.c: Add a couple of __builtin_expect. -+ -+ Remove warnings gcc 3.3 shows. -+ * argp/argp-help.c (hol_entry_short_iterate): Don't inline. -+ * elf/dl-load.c (fillin_rpath): Likewise. -+ (add_path): Likewise. -+ * elf/dl-version.c (find_needed): Always inline. -+ * elf/do-lookup.c (FCT): Don't inline. -+ * iconv/Makefile: Extend vpath to intl subdir. -+ (iconvconfig-modules): Add hash-string. -+ * iconv/gconv_charset.h (strip): Don't inline. -+ (upstr): Always inline. -+ Move __gconv_compare_alias prototype to... -+ * iconv/gconv_int.h: ...here. -+ * iconv/gconv_db.c: Don't include gconv_charset.h. -+ * iconv/gconv_conf.c (add_alias): Don't inline. -+ (insert_module): Likewise. -+ * iconv/gconv_simple.c (internal_ucs4_loop): Always inline. -+ (internal_ucs4_loop_unaligned): Likewise. -+ (internal_ucs4_loop_single): Likewise. -+ (ucs4_internal_loop): Likewise. -+ (ucs4_internal_loop_unaligned): Likewise. -+ (ucs4_internal_loop_single): Likewise. -+ (internal_ucs4le_loop): Always inline. -+ (internal_ucs4le_loop_unaligned): Likewise. -+ (internal_ucs4le_loop_single): Likewise. -+ (ucs4le_internal_loop): Likewise. -+ (ucs4le_internal_loop_unaligned): Likewise. -+ (ucs4le_internal_loop_single): Likewise. -+ * iconv/loop.c: Always inline the defined functions. -+ * iconvdata/cns11642.h: Likewise. -+ * iconvdata/cns11642l1.h: Likewise. -+ * iconvdata/euc-kr.c: Likewise. -+ * iconvdata/gb2312.h: Likewise. -+ * iconvdata/jis0201.h: Likewise. -+ * iconvdata/jis0208.h: Likewise. -+ * iconvdata/jis0212.h: Likewise. -+ * iconvdata/jisx0213.h: Likewise. -+ * iconvdata/ksc5601.h: Likewise. -+ * iconvdata/utf-7.c (base64): Don't inline. -+ * include/libc-symbols.h (symbol_set_first_element): Add cast -+ (symbol_set_end_p): Likewise. -+ * include/set-hooks (RUN_HOOK): Likewise. -+ * inet/Makefile (aux): Add ifreq. -+ * intl/Makefile (aux): Add some entries from routines. Add -+ hash-string. -+ * intl/hash-string.c: New file. -+ * intl/hash-string.h: Remove hash_string definition. Declare -+ __hash_string. -+ * iconv/gconv_cache.c (find_module_idx): Adjust hash_string caller. -+ * iconv/iconvconfig.c (new_name): Likewise. -+ * intl/dcigettext.c (_nl_find_msg): Likewise. -+ * intl/loadmsgcat.c (_nl_load_domain): Likewise. -+ * io/ftw.c (open_dir_stream): Always inline. -+ (process_entry): Don't inline. -+ * locale/findlocale.c: Include gconv_int.h. -+ * locale/setlocale.c (new_composite_name): Don't inline. -+ * locale/weight.h (findidx): Always inline. -+ * locale/weightwc.h (findidx): Likewise. -+ * locale/programs/linereader.c (lr_ignore_rest): Define here. -+ * locale/programs/linereader.h (lr_ignore_rest): Don't define here, -+ just declare it. -+ (lr_getc): Always inline. -+ (lr_ungetc): Likewise. -+ * nss/nss_files/files-parse.c (parse_list): Likewise. -+ * stdio-common/Makefile (aux): Add printf-parsemb and -+ printf-parsewc. -+ * stdio-common/_itoa.h (_itoa_word): Always inline. -+ (_fitoa_word, _fitoa): Don't define here, only declare. -+ * stdio-common/_itoa.c (_iftoa_word): Add here. -+ (_fitoa): Likewise. -+ * stdio-common/_itowa.h (_itowa_word): Always inline. -+ * stdio-common/printf-parse.h (read_int): Don't inline. -+ (find_spec): Don't define. -+ Declare __find_specmb and __find_specwc. -+ (parse_one_spec): Don't define. -+ Declare __parse_one_specmb and __parse_one_specwc. -+ * stdio-common/printf-parsemb.c: New file. -+ * stdio-common/printf-parsewc.c: New file. -+ * stdio-common/vfprintf.c: Update calls to find_spec and -+ parse_one_spec for new names. -+ * stdio-common/printf-prs.c: Likewise. Define DONT_NEED_READ_INT. -+ * stdlib/Makefile (aux): Add grouping and groupingwc. -+ * stdlib/grouping.c: New file. -+ * stdlib/groupingwc.c: New file. -+ * stdlib/grouping.h (correctly_grouped_prefix): Don't define here. -+ Just prototype. -+ * stdlib/rpmatch.c (try): Don't inline. -+ * stdlib/strtod.c (round_and_return): Don't line. -+ (str_to_mpn): Likewise. -+ (__mpn_lshift_1): Always inline. Optimize only for constant count. -+ Adjust for name change of correctly_grouped_prefix. -+ * sysdeps/generic/strtol.c: Adjust for name change of -+ correctly_grouped_prefix. -+ * string/strxfrm.c (utf8_encode): Don't inline. -+ * sysdeps/generic/dl-cache.c: Define _dl_cache_libcmp. -+ * sysdeps/generic/dl-cache.h: Just declare _dl_cache_libcmp. -+ * sysdeps/generic/ifreq.c: New file. -+ * sysdeps/unix/sysv/linux/ifreq.c: New file. -+ * sysdeps/generic/ifreq.h (__ifreq): Only declare here. -+ * sysdeps/unix/sysv/linux/ifreq.h: Likewise. -+ * sysdeps/generic/ldsodefs.h (_dl_name_match_p): Always inline. -+ * sysdeps/generic/unwind-dw2-fde.c (start_fde_sort): Don't inline. -+ (fde_split): Likewise. -+ (fde_merge): Likewise. -+ (end_fde_sort): Likewise. -+ (init_object): Likewise. -+ (binary_search_unencoded_fdes): Likewise. -+ (binary_search_single_encoding_fdes): Likewise. -+ (binary_search_mixed_encoding_fdes): Likewise. -+ * sysdeps/generic/wordexp.c (w_addchar): Don't inline. -+ * sysdeps/i386/dl-machine.c (elf_machine_runtime_setup): Always inline. -+ * sysdeps/posix/sprofil.c (profil_count): Don't inline. -+ * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): -+ Add xstatconv. -+ * sysdeps/unix/sysv/linux/xstatconv.h: New file. -+ * sysdeps/unix/sysv/linux/xstatconv.c: Don't inline the function. -+ Export them. Prepend __ to name. -+ * sysdeps/unix/sysv/linux/Dist: Add xstatconv.h. -+ * sysdeps/unix/sysv/linux/fxstat.c: Adjust for name change of -+ conversion functions. -+ * sysdeps/unix/sysv/linux/fxstat64.c: Likewise. -+ * sysdeps/unix/sysv/linux/lxstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/lxstat64.c: Likewise. -+ * sysdeps/unix/sysv/linux/xstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/xstat64.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise. -+ * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max, -+ __statfs_filesize_max, __statfs_symlinks): Define here. __ prepended -+ to name. Change callers. -+ * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max, -+ __statfs_filesize_max, __statfs_symlinks): Don't define here, just -+ declare. -+ * sysdeps/unix/sysv/linux/fpathconf.c: Change all callers. -+ * time/tzfile.c (decode): Always inline. -+ * wcsmbs/wcsnrtombs.c: Change type of inbuf to unsigned char*. -+ Remove cast in tomb function call. -+ * wcsmbs/wcsrtombs.c Likewise. -+ * wcsmbs/wcstob.c: Introduce new temp variable to take pointer in -+ tomb function call. -+ -+2003-06-10 Ulrich Drepper -+ -+ * po/zh_CN.po: Update from translation team. -+ -+2003-06-10 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/bits/in.h (IPV6_V6ONLY, IPV6_JOIN_ANYCAST, -+ IPV6_LEAVE_ANYCAST, IPV6_IPSEC_POLICY, IPV6_XFRM_POLICY): Define. -+ -+2003-06-10 Ulrich Drepper -+ -+ * inet/Makefile (aux): Add check_pf. -+ * include/ifaddrs.h: Add prototype for __check_pf. -+ * sysdeps/generic/check_pf.c: New file. -+ * sysdeps/unix/sysv/linux/check_pf.c: New file. -+ * sysdeps/unix/sysv/linux/ifaddrs.h (__no_netlink_support): Renamed -+ from no_netlink_support. Export. -+ * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call getifaddrs, -+ call __check_pf. -+ -+ * sysdeps/generic/ifaddrs.h: Add libc_hidden_def. -+ -+ * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't leak memory -+ from getifaddr calls. -+ -+2003-06-09 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/kernel-features.h -+ (__ASSUME_SETRESGID_SYSCALL): Define. -+ * sysdeps/unix/sysv/linux/setegid.c: Use __ASSUME_SETRESGID_SYSCALL -+ instead of __ASSUME_SETRESUID_SYSCALL. -+ (setegid): Only use setresgid32 inline syscall if __NR_setresgid32 is -+ defined. -+ * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Only use setresgid32 -+ inline syscall if __NR_setresuid32 is defined. -+ * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use -+ __ASSUME_SETRESGID_SYSCALL instead of __ASSUME_SETRESUID_SYSCALL. -+ * sysdeps/unix/sysv/linux/i386/setregid.c: Backout last changes. -+ * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Protect -+ code handling non-existant setresgid32 syscall with -+ #if __ASSUME_SETRESGID_SYSCALL == 0. -+ -+2003-06-09 Andreas Schwab -+ -+ * sunrpc/Makefile (generated): Remove rpc-proto.c, rpc-proto.d. -+ ($(rpcsvc:%.x=$(objpfx)x%$o)): Don't depend on -+ $(objpfx)rpc-proto.d. -+ (rpcsvc-dt-files, rpcsvc-depfiles): Define. Include -+ $(rpcsvc-depfiles) instead of $(objpfx)rpc-proto.d. -+ ($(objpfx)rpc-proto.d, $(objpfx)rpc-proto.c): Remove rules. -+ -+2003-06-08 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Use setresuid32 -+ syscall directly if possible. If __ASSUME_SETRESUID_SYSCALL is -+ defined drop compatibility code. -+ * sysdeps/unix/sysv/linux/setegid.c (setegid): Use setresgid32 -+ syscall directly if possible. If __ASSUME_SETRESUID_SYSCALL is -+ defined drop compatibility code. -+ * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Use -+ setresuid32 syscall directly if possible. -+ * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use -+ setresgid32 syscall directly if possible. -+ * sysdeps/unix/sysv/linux/i386/setregid.c (__setregid): Make POSIX -+ compliant. Don't change sgid. -+ * sysdeps/unix/sysv/linux/i386/setreuid.c (__setreuid): Make POSIX -+ compliant. Don't change suid. -+ -+ * config.h.in: Add have-forced-unwind. -+ * configure.in: Add AC_SUBST(libc_cv_forced_unwind). -+ -+2003-06-07 Ulrich Drepper -+ -+ * test-skeleton.c (main): If EXPECTED_STATUS is defined check that -+ returned status from child matches. -+ -+ * Makeconfig (gnulib): Add -lgcc_eh once again. -+ -+2003-06-06 Ulrich Drepper -+ -+ * test-skeleton.c (main): Use TEMP_FAILURE_RETRY with waitpid. -+ -+ * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Only allow -+ %edx for first parameter. This means no pushl and therefore the -+ unwind info isn't screwed up. -+ -+2003-06-04 Richard Henderson -+ -+ * sysdeps/alpha/dl-machine.h (RTLD_START): Fix top-of-stack backtrace. -+ * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise. -+ * sysdeps/alpha/elf/start.S: Likewise. Remove pointless allocation. -+ * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Use standard ldgp -+ entry sequence and explicit relocs. Add unwind info for sigreturn -+ and rt_sigreturn. -+ * configure.in (libc_cv_asm_cfi_directives): Test .cfi_remember_state. -+ -+ * sysdeps/unix/sysv/linux/alpha/syscalls.list (semtimedop): New. -+ Annotate some parameters. -+ * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_semtimedop): New. -+ -+ * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Fix typo in conversion. -+ -+ * include/libc-symbols.h (symbol_set_declare): Use arrays -+ of unspecified size. -+ -+2003-06-04 Jakub Jelinek -+ -+ * config.make.in (ASFLAGS-config): New. -+ * Makeconfig (ASFLAGS): Append $(ASFLAGS-config). -+ * configure.in (libc_cv_as_noexecstack): New check. -+ (ASFLAGS_config): Substitute. -+ -+2003-06-04 Jakub Jelinek -+ -+ * sysdeps/i386/fpu/bits/mathinline.h (log1p, asinh, acosh, atanh, -+ hypot, logb): Protect with #ifdef __FAST_MATH__. -+ -+2003-06-04 Thorsten Kukuk -+ -+ * sysdeps/i386/fpu/bits/mathinline.h (ldexpf, ldexpl): Protect with -+ #ifdef __FAST_MATH__. -+ -+2003-06-03 Ulrich Drepper -+ -+ * sysdeps/generic/glob.c [HAVE_D_TYPE] (glob_in_dir): Also allow -+ DT_LNK entries if GLOB_ONLYDIR is set [PR libc/5043]. -+ * posix/globtest.sh: Adjust for this change. -+ -+ * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_open): Call getsockname -+ to get the actual PID value used in the records passed up. -+ (getifaddrs): Don't initialize nh.pid here. -+ -+2003-06-02 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_receive): Minor -+ optimization. -+ -+ * po/zh_CN.po: Update from translation team. -+ -+ * posix/getconf.c (main): Also recognize names without the -+ _POSIX_ prefix. -+ -+ * elf/Makefile (CFLAGS-dl-lookup.c): Define. -+ -+2003-06-02 Bernd Schmidt -+ -+ * sysdeps/i386/fpu/bits/mathinline.h (sqrt, __sqrtl, ldexp, -+ ldexpf, ldexpl): Only define if __FAST_MATH__. -+ -+2003-06-02 Richard C. Bilson -+ -+ Replace hard-coded offsets into struct sigcontext with generated file. -+ * sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym: New file. -+ * sysdeps/unix/sysv/linux/ia64/Makefile -+ [$(subdir) = stdlib] (gen-as-const-headers): Add it. -+ * sysdeps/unix/sysv/linux/ia64/ucontext_i.h: Include it instead of -+ defining SC_* macros here. -+ -+2003-06-02 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_PID): Remove. -+ -+2003-06-01 Jakub Jelinek -+ -+ * sysdeps/i386/dl-machine.h: Include . -+ -+2003-06-01 Ulrich Drepper -+ -+ * test-skeleton.c (main): Request getopt to not reorder the -+ command line. -+ -+ * elf/Makefile (CFLAGS-dl-runtime.c): Define. -+ -+ * wcsmbs/wcpncpy.c (__wcpncpy): Fix broken implementation to match -+ stpncpy. -+ -+2003-05-31 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (SA_NOCLDWAIT): Define. -+ -+2003-05-31 Jakub Jelinek -+ -+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_plt_conflict): -+ New function. -+ (elf_machine_rela) : Avoid -+ RESOLVE_CONFLICT_FIND_MAP. If RESOLVE_CONFLICT_FIND_MAP is defined, -+ call elf_machine_plt_conflict instead of elf_machine_fixup_plt. -+ -+2003-05-31 Ulrich Drepper -+ -+ * sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add -+ CFI directives. -+ -+ * csu/Makefile: Fix Makefile warnings regarding Scrt1.o. -+ -+ * libio/fileops.c (_IO_file_open): Don't mark as inline. -+ -+ * sysdeps/ia64/elf/initfini.c (gmon_initializer): Mark with -+ attribute used. -+ -+2003-05-30 Ulrich Drepper -+ -+ * scripts/config.guess: Update from master copy. -+ * scripts/config.sub: Likewise. -+ -+2003-05-30 Guido Guenther -+ -+ * sysdeps/mips/mips64/bsd-_setjmp.S: Include for -+ SETUP_GP64 and friends. -+ * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register -+ names in internal_syscall{6,7}. -+ * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix -+ number of syscall arguments. -+ * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise. -+ -+2003-05-30 Andreas Jaeger -+ -+ * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): -+ Add CFI directives. -+ -+ * sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI -+ directives. -+ -+ * sysdeps/generic/sysdep.h: Add CFI_* macros for C files. -+ -+ * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): -+ Add CFI directives. -+ -+2003-05-30 Jakub Jelinek -+ -+ * sysdeps/powerpc/powerpc32/elf/start.S: Make code compilable with -+ SHARED. -+ -+2003-05-11 Andreas Schwab -+ -+ * Makerules: Always use -MP together with -MD. -+ (sed-remove-dotot): Substitute $(..) also at start of line. -+ ($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES. -+ Generated defines with a single compiler call. -+ Use $(sed-remove-dotdot). -+ * mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead -+ of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx). -+ * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h): -+ Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx). -+ * sysdeps/unix/sysv/linux/mips/Makefile -+ ($(objpfx)syscall-%.h): Likewise. -+ -+2003-05-28 Roland McGrath -+ -+ * malloc/malloc.h [! __GNUC__] (__const): Define if undefined. -+ -+2003-05-26 Aldy Hernandez -+ -+ * soft-fp/soft-fp.h (FP_EX_UNDERFLOW): Define to 0. -+ -+2003-05-28 Roland McGrath -+ -+ * sysdeps/unix/sysv/linux/ia64/setcontext.S: Pass fourth argument to -+ rt_sigprocmask system call. -+ * sysdeps/unix/sysv/linux/ia64/ucontext_i.h (SC_MASK): Fix value. -+ From Peter A. Buhr . -+ -+2003-05-28 Ulrich Drepper -+ -+ * include/libc-symbols.h: Define hidden attribute for real also if -+ LIBC_NONSHARED is defined. Patch by Jakub Jelinek. -+ -+ * csu/Makefile: Add rules to build Scrt1.o. -+ * sysdeps/i386/elf/start.S: Make code compilable with SHARED. -+ * sysdeps/x86_64/elf/start.S: Likewise. -+ -+2003-05-27 Jakub Jelinek -+ -+ * stdio-common/vfprintf.c (process_arg, process_string_arg): Use -+ pa_int/pa_u_int instead of pa_short_int, pa_u_short_int and pa_char. -+ * stdio-common/printf-parse.h (union printf_arg): Remove pa_char, -+ pa_short_int, pa_u_short_int and pa_float. -+ -+2003-05-26 Jakub Jelinek -+ -+ * libio/strops.c (_IO_str_init_static): Change into a wrapper around -+ _IO_str_init_static_internal. -+ (_IO_str_init_static_internal): Moved from _IO_str_init_static, -+ change size argument to _IO_size_t, don't limit sprintf to 64M. -+ (_IO_str_init_readonly): Call _IO_str_init_static_internal. -+ * libio/wstrops.c (_IO_wstr_init_static): Change size argument to -+ _IO_size_t, don't limit swprintf to 256M. -+ (_IO_wstr_init_readonly): Remove. -+ * libio/libioP.h (_IO_str_init_static_internal, _IO_wstr_init_static): -+ Adjust prototypes. -+ (_IO_wstr_init_readonly): Remove prototype. -+ * libio/iovsprintf.c (_IO_vsprintf): Use -+ _IO_str_init_static_internal instead of INTUSE(_IO_str_init_static). -+ * libio/iovsscanf.c (_IO_vsscanf): Likewise. -+ * libio/memstream.c (open_memstream): Likewise. -+ * libio/obprintf.c (_IO_obstack_vfprintf): Likewise. -+ * libio/vasprintf.c (_IO_vasprintf): Likewise. -+ * libio/vsnprintf.c (_IO_vsnprintf): Likewise. -+ * stdio-common/tst-sprintf.c (main): Add new test. -+ -+2003-05-26 Ulrich Drepper -+ -+ * stdio-common/vfprintf.c (vfprintf): Be bug-compatible with some -+ other implementation in respect of multiple uses of parameter with -+ different types. -+ -+2003-05-25 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/kernel-features.h: Define -+ __ASSUME_FUTEX_REQUEUE for >= 2.5.70. -+ -+2003-05-22 Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Add CFI -+ directives. -+ * sysdeps/unix/sysv/linux/x86_64/time.S: Likewise. -+ * sysdeps/x86_64/strtok.S: Likewise. -+ -+2003-05-20 Guido Guenther -+ -+ * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Change SI_ASYNCNL -+ to -60 and define SI_TKILL. -+ -+2003-05-21 H.J. Lu -+ -+ * math/test-fenv.c (feexcp_nomask_test): Fix comment. -+ (feexcp_mask_test): Likewise. -+ -+2003-05-21 Ulrich Drepper -+ -+ * locale/programs/locale.c (main): Fix typo in last patch. -+ -+ * csu/elf-init.c: Mark __preinit_array_start, __preinit_array_end, -+ __init_array_start, __init_array_end, __fini_array_start, and -+ __fini_array_end as hidden. -+ -+2003-05-21 Petter Reinholdtsen -+ -+ * locale/programs/locale.c (main): Report an error if setlocale() -+ fails [PR libc/2254]. -+ -+2003-05-21 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/s390/system.c: New file. -+ -+2003-05-21 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_0, -+ LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, -+ LOADARGS_6): Don't error if syscall argument is a string literal. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_0, -+ LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, -+ LOADARGS_6): Likewise. -+ -+2003-05-21 Andreas Jaeger -+ -+ * sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc, -+ cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register, -+ cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define. -+ -+ * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives. -+ (ENTRY): Likewise. -+ (END): Likewise. -+ -+ * configure.in: Test for asm cfi directives. -+ -+ * config.h.in: Add HAVE_ASM_CFI_DIRECTIVES. -+ -+2003-05-17 Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/x86_64/syscall.S: Revert last patch. -+ -+ * rt/tst-clock_nanosleep.c: Include for clock_nanosleep. -+ -+2003-05-16 Ulrich Drepper -+ -+ * rt/Makefile (tests): Add tst-clock_nanosleep. -+ * rt/tst-clock_nanosleep.c: New file. -+ * posix/Makefile (tests): Add tst-nanosleep. -+ * posix/tst-nanosleep.c: New file. -+ -+ * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Fix definition. -+ -+ * include/features.h (__USE_XOPEN2K): Define also for -+ _POSIX_C_SOURCE>=200112L. -+ -+ * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Fold -+ SI_TKILL code into SI_USER. -+ * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise. -+ -+ * sysdeps/posix/sigpause.c (do_sigpause): Use sigdelset after all. -+ -+2003-05-15 Jakub Jelinek -+ -+ * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): -+ Remove sym argument, always use refsym. -+ (__process_machine_rela): Adjust callers. -+ * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow): -+ Likewise. -+ * sysdeps/powerpc/powerpc32/dl-machine.h (_dl_reloc_overflow): -+ Adjust prototype. -+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise. -+ -+2003-05-15 Ulrich Drepper -+ -+ * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Fix typo -+ (DL_NEED_SYSINFO -> NEED_DL_SYSINFO). If aux value is not known -+ print numeric values. -+ -+2003-05-12 Thorsten Kukuk -+ -+ * inet/netinet/igmp.h: Sync with Linux Kernel 2.5.69 and *BSD. -+ -+2003-05-14 Andreas Schwab -+ -+ * sysdeps/unix/sysv/linux/ia64/umount.c: New file. -+ -+2003-05-14 Jakub Jelinek -+ -+ * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope -+ even if no DT_NEEDED is present. -+ -+2003-05-13 David Mosberger -+ -+ * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix the fix from -+ 2003-03-27: setjmp is NOT a leaf-routine (due to the call to -+ __sigjmp_save) so we can't keep the saved unat value in a scratch -+ register (r16). Use loc2 instead. -+ -+2003-05-13 Ulrich Drepper -+ -+ * csu/Makefile: Do compile elf-init with PIC flag since in dynamic -+ binaries it has to be relocatable. -+ -+ * sysdeps/unix/sysv/linux/waitpid.c: Use waitpid syscall is available. -+ -+2003-05-12 Steven Munroe -+ -+ * sysdeps/powerpc/bits/atomic.h -+ (__arch_compare_and_exchange_bool_8_rel): Define. -+ (__arch_compare_and_exchange_bool_16_rel): Define. -+ (__ARCH_REL_INSTR): Define if not already defined. -+ (__arch_atomic_exchange_and_add_32): Add "memory" to clobber list. -+ (__arch_atomic_decrement_if_positive_32): -+ Add "memory" to clobber list. -+ (__arch_compare_and_exchange_val_32_acq): Remove release sync. -+ (__arch_compare_and_exchange_val_32_rel): Define. -+ (__arch_atomic_exchange_32): Remove. -+ (__arch_atomic_exchange_32_acq): Define. -+ (__arch_atomic_exchange_32_rel): Define. -+ (atomic_compare_and_exchange_val_rel): Define. -+ (atomic_exchange_acq): Use __arch_atomic_exchange_*_acq forms. -+ (atomic_exchange_rel): Define. -+ * sysdeps/powerpc/powerpc32/bits/atomic.h -+ (__arch_compare_and_exchange_bool_32_acq): Remove release sync. -+ (__arch_compare_and_exchange_bool_32_rel): Define. -+ (__arch_compare_and_exchange_bool_64_rel): Define. -+ (__arch_compare_and_exchange_val_64_rel): Define. -+ (__arch_atomic_exchange_64): Remove. -+ (__arch_atomic_exchange_64_acq): Define. -+ (__arch_atomic_exchange_64_rel): Define. -+ * sysdeps/powerpc/powerpc64/bits/atomic.h -+ (__arch_compare_and_exchange_bool_32_rel): Define. -+ (__arch_compare_and_exchange_bool_64_acq): Remove release sync. -+ (__arch_compare_and_exchange_bool_64_rel): Define. -+ (__arch_compare_and_exchange_val_64_acq): Remove release sync. -+ (__arch_compare_and_exchange_val_64_rel): Define. -+ (__arch_atomic_exchange_64): Remove. -+ (__arch_atomic_exchange_64_acq): Define. -+ (__arch_atomic_exchange_64_rel): Define. -+ (__arch_atomic_exchange_and_add_64): Add "memory" to clobber list. -+ (__arch_atomic_decrement_if_positive_64): -+ Add "memory" to clobber list. -+ [!UP](__ARCH_REL_INSTR): Define as lwsync. -+ -+2003-05-11 Andreas Schwab -+ -+ * io/Makefile ($(objpfx)ftwtest.out): Use absolute file names. -+ -+2003-05-11 Ulrich Drepper -+ -+ * time/tst-strftime.c (do_test): Add tests for - flag. -+ -+2003-05-11 Jim Meyering -+ -+ * time/strftime.c (my_strftime): Let the `-' (no-pad) flag affect -+ the space-padded-by-default conversion specifiers, %e, %k, %l. -+ -+2003-05-11 Andreas Schwab -+ -+ * sysdeps/generic/sched_setaffinity.c: Fix parameter name. -+ -+2003-05-10 Ulrich Drepper -+ -+ * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not -+ already defined and when really needed. -+ * sysdeps/unix/sysv/linux/bits/sched.h: Likewise. -+ -+2003-05-09 Thorsten Kukuk -+ -+ * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel -+ headers, add defines from kernel header, move it from here... -+ * inet/netinet/igmp.h: ... to here. -+ * inet/Makefile (headers): Add netinet/igmp.h. -+ * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h. -+ * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h. -+ -+2003-05-10 Ulrich Drepper -+ -+ * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL, -+ use dummy sigevent structure with SIGEV_NONE [PR libc/5015]. -+ -+2003-05-09 Thorsten Kukuk -+ -+ * libio/bits/stdio.h: Sync prototypes with libio/stdio.h -+ (remove __THROW from possible cancellation points). -+ -+2003-05-10 Ulrich Drepper -+ -+ * posix/sched.h (CPU_SETSIZE): Define. -+ -+2003-05-09 Ulrich Drepper -+ -+ * Makeconfig (gnulib): Remove -lgcc_eh again. -+ -+ * posix/sched.h: Change prototypes of sched_getaffinity and -+ sched_setaffinity. Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO. -+ * sysdeps/generic/sched_getaffinity.c: Adjust definition. -+ * sysdeps/generic/sched_setaffinity.c: Likewise. -+ * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS, -+ __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET, -+ __CPU_CLR, and __CPU_ISSET. -+ * sysdeps/unix/sysv/linux/bits/sched.h: Likewise. -+ * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file. -+ * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file. -+ -+ * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange. -+ (atomic_exchange_rel): New #define. -+ * sysdeps/ia64/bits/atomic.h: Likewise. -+ * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from -+ atomic_exchange. -+ * sysdeps/m68k/m68020/bits/atomic.h: Likewise. -+ * sysdeps/powerpc/bits/atomic.h: Likewise. -+ * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise. -+ * sysdeps/sparc/sparc64/bits/atomic.h: Likewise. -+ * sysdeps/x86_64/bits/atomic.h: Likewise. -+ * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange. -+ -+ * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: New file. -+ -+2003-05-08 Ulrich Drepper -+ -+ * malloc/thread-m.h: Remove special handling of thread_atfork if -+ HAVE_register_atfork_malloc is defined. -+ -+2003-05-07 Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/x86_64/syscall.S: Add DWARF2 unwind -+ information. -+ -+2003-05-06 Ulrich Drepper -+ -+ * libio/oldiofdopen.c (_IO_old_fdopen): Use _IO_old_init not _IO_init. -+ * libio/oldiofopen.c (_IO_old_fopen): Likewise. -+ * libio/libioP.h: Declare _IO_old_init. -+ * libio/genops.c (_IO_no_init): Split in two. New function -+ _IO_old_init. -+ -+2003-05-05 Ulrich Drepper -+ -+ * sysdeps/generic/enbl-secure.c (__libc_enable_secure_decided): New -+ variable. -+ (__libc_init_secure): Don't do anything if __libc_enable_secure_decided -+ is nonzero. -+ * include/unistd.h: Declare __libc_enable_secure_decided. -+ * elf/dl-support.c (_dl_aux_init): Recognize AT_UID, AT_EUID, AT_GID, -+ and AT_EGID. If all found, set __libc_enable_secure and -+ __libc_enable_secure_decided. -+ -+ * sysdeps/generic/libc-start.c [!SHARED]: Call -+ __libc_check_standard_fds after __libc_init_first. -+ -+2003-05-05 Roland McGrath -+ -+ * Makerules (common-before-compile): New variable. -+ ($(common-objpfx)%.make): Depend on that instead of $(before-compile). -+ ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise. Move this rule -+ to after all setting of before-compile. -+ -+2003-05-05 Jakub Jelinek -+ -+ * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq, -+ __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type. -+ * sysdeps/powerpc/powerpc32/bits/atomic.h -+ (__arch_compare_and_exchange_val_64_acq): Likewise. -+ * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h -+ (__arch_compare_and_exchange_val_8_acq, -+ __arch_compare_and_exchange_val_16_acq, -+ __arch_compare_and_exchange_val_64_acq): Likewise. -+ * sysdeps/sparc/sparc64/bits/atomic.h -+ (__arch_compare_and_exchange_val_8_acq, -+ __arch_compare_and_exchange_val_16_acq): Likewise. -+ * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq, -+ __arch_compare_and_exchange_val_16_acq, -+ __arch_compare_and_exchange_val_64_acq): Likewise. -+ * sysdeps/unix/sysv/linux/sh/bits/atomic.h -+ (__arch_compare_and_exchange_val_64_acq): Likewise. -+ * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut -+ up warning. -+ * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise. -+ -+ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h -+ (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0): -+ Return long instead of int. -+ (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace -+ 0xfffff001u with -4095UL. -+ -+2003-05-05 Andreas Jaeger -+ -+ * sysdeps/x86_64/fpu_control.h: New from i386. -+ -+ * sysdeps/unix/sysv/linux/x86_64/sysdep.h (__NR_semtimedop): -+ Define if not defined. -+ -+ * sunrpc/Makefile (generated-dirs): New variable. -+ * resolv/Makefile (generated): New variable. -+ -+2003-05-04 Roland McGrath -+ -+ * csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file. -+ Depend on $(before-compile). -+ -+ * csu/Makefile ($(objpfx)crt%.o): Replace implicit rule with a static -+ pattern rule. The implicit rule could be ruled out when $(objpfx) -+ didn't exist at the time of its consideration (ugh!). -+ -+ * Makerules (+make-deps): Fix target matching. -+ Use $(sed-remove-dotdot). -+ -+2003-05-03 Ulrich Drepper -+ -+ * nscd/nscd.c (main): Parse config file right after parsing -+ parameters. Then, if get_stats is true, call receive_print_stats. -+ Drop parameter from nscd_init call. -+ (get_stats): New variable. -+ (parse_opt): Set get_stats, don't call receive_print_stats here. -+ * nscd/nscd.h: Declare dbs, stat_user, and stat_uid. Adjust nscd_init -+ prototype. -+ * nscd/connections.c (stat_user, stat_uid): New variables. -+ (dbs): Make global. -+ (nscd_init): Don't read configuration file here. Drop parameter. -+ (handle_request): Cleanup handling of non-database lookup requests. -+ * nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry. -+ Get UID of the specified user. Use xstrdup instead of strdup. -+ * nscd/nscd_stat.c (receive_print_stats): Check UID. If not zero, -+ check stat_user. -+ * nscd/Makefile (nscd-modules): Add xstrdup. -+ * nscd/nscd.conf: Document stat-user entry. -+ -+2003-05-03 H.J. Lu -+ -+ * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define -+ if not defined. -+ -+2003-04-22 Roland McGrath -+ -+ * elf/elf.h (AT_SYSINFO_EHDR): New macro, replaces AT_SYSINFO_EH_FRAME. -+ * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove -+ dl_sysinfo_eh_frame member, add dl_sysinfo_dso member instead. -+ * elf/dl-support.c: Update defn. -+ * sysdeps/generic/libc-start.c: Don't call __register_frame_info_bases. -+ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]: -+ Set GL(dl_sysinfo_dso) from AT_SYSINFO_EHDR. -+ (_dl_show_auxv): Grok AT_SYSINFO_EHDR, not AT_SYSINFO_EH_FRAME. -+ * elf/rtld.c (dl_main) [NEED_DL_SYSINFO]: If GL(dl_sysinfo_dso) is -+ set, set up a link_map for the preloaded, prelinked object. -+ -+2003-05-03 Roland McGrath -+ -+ * sysdeps/gnu/Makefile (generated): Append errlist-compat.c here, ... -+ * stdio-common/Makefile: ... not here. -+ -+ * csu/Makefile ($(objpfx)initfini.s): Depend on $(before-compile). -+ * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise. -+ -+2003-05-02 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/s390/semtimedop.c: New file. -+ -+ * sysdeps/unix/sysv/linux/alpha/ipc_priv.h (IPCOP_semtimedop): Define. -+ -+ * sysdeps/generic/dl-fptr.c (_dl_make_fptr): Use 0 not NULL for -+ comparing ftab elements. -+ (_dl_unmap): Fix typo in test. -+ (_dl_make_fptr): Fix typos introduced in last change. -+ -+ * sysdeps/generic/dl-fptr.c: Put back one optimization from the -+ original patch. Use non-exported symbols. Mark translatable -+ strings. Pretty printing. -+ -+2003-05-02 Roland McGrath -+ -+ * Makerules (do-stamp): Do $(make-target-directory). -+ -+2003-04-07 H.J. Lu -+ -+ * sysdeps/generic/dl-fptr.c: Modify to remove the lock. -+ -+2003-04-03 H.J. Lu -+ -+ * sysdeps/ia64/dl-fptr.c: Moved to ... -+ * sysdeps/generic/dl-fptr.c: Here. -+ -+ * sysdeps/generic/dl-fptr.h: New. -+ * sysdeps/ia64/dl-fptr.h: New. -+ -+ * sysdeps/ia64/dl-symaddr.c: Moved to ... -+ * sysdeps/generic/dl-symaddr.c: here. -+ -+ * sysdeps/ia64/dl-machine.h: Include . -+ (IA64_BOOT_FPTR_TABLE_LEN): Removed. -+ (ia64_fdesc): Likewise. -+ (ia64_fdesc_table): Likewise. -+ (__ia64_make_fptr): Likewise. -+ (__ia64_init_bootstrap_fdesc_table): Replace __ia64_boot_fptr_table -+ with _dl_boot_fptr_table. -+ (elf_machine_runtime_setup): Replace `struct ia64_fdesc' with -+ `struct fdesc'. -+ (elf_machine_rela): Replace __ia64_make_fptr with _dl_make_fptr. -+ -+2003-05-01 Roland McGrath -+ -+ * sysdeps/generic/bp-thunks.h: Protect includes with [!__ASSEMBLER__]. -+ * sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise. -+ -+ * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h): -+ Use $(make-target-directory). -+ * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Likewise. -+ -+ * Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d. -+ (compile-command.S): Don't use ifndef. Append $(compile-mkdep-flags). -+ (compile-command.s, compile-command.c): Likewise. -+ ($(objpfx)%.d): All such pattern rules removed. -+ ($(+sysdir_pfx)sysd-rules): Don't generate them. -+ ($(common-objpfx)dummy.d): Target removed. -+ (make-dummy-dep): Variable removed. -+ (generate-md5): Likewise. -+ (%.d: %.dt): New pattern rule. -+ (+depfiles): Use $(wildcard) function to get just existing *.d files -+ and .d files for existing *.dt files. -+ (common-clean): Remove all *.d and *.dt files. -+ (before-compile): Add $(objpfx). when it doesn't exist, -+ regardless of $(no_deps). -+ * elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed. -+ (rtld-depfiles): Use .os.d instead of .d names. -+ Include existing *.d files and .d files for existing *.dt files. -+ -+ * Makerules ($(common-objpfx)%.make): Protect with [! subdir]. -+ Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable. -+ -+ * sysdeps/unix/Makefile ($(common-objpfx)s-%.d): Remove compat.h hack. -+ Do s-*.d includes only if we have some syscall routines in this subdir. -+ -+ * include/libc-symbols.h (libc_freeres_ptr): Use %nobits instead of -+ @nobits. The former is accepted by gas on any ELF platform. -+ -+2003-05-01 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/semtimedop.c: New file. -+ -+ * malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary. -+ -+2003-04-29 Andreas Schwab -+ -+ * string/test-strcat.c (do_one_test): Fix attribute name. -+ -+2003-04-30 Alexandre Oliva -+ -+ * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make -+ uc_flags long for all ABIs. -+ -+2003-04-30 Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h -+ (DR_CONTROL_RESERVED): Use correct value for 64-bit. -+ Reported by Andrew Derrick Balsa . -+ Add bi-arch support. -+ -+2003-04-30 Ulrich Drepper -+ -+ * malloc/malloc.c (mEMALIGn): Define alias __memalign_internal. -+ (__posix_memalign): Use __memalign_internal instead of memalign. -+ -+2003-04-29 Roland McGrath -+ -+ * configure.in: Search for AUTOCONF unconditionally. -+ Just don't complain about missing it under --without-cvs. -+ -+ * include/libc-symbols.h (__symbol_set_attribute): New macro, -+ give hidden for [SHARED] and weak for [! SHARED]. -+ (symbol_set_declare): Use that. Never need weak_extern these days. -+ * Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE. -+ Depend on $(..)Makerules. -+ -+2003-04-29 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Use __ protected -+ variants of socket, bind, recvmsg, and sendto. -+ -+ * sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word. -+ -+ * include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset. -+ * signal/sigaddset.c: Add libc_hidden_def. -+ * signal/sigdelset.c: Likewise. -+ -+2003-04-29 Jakub Jelinek -+ -+ * sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move -+ to the end of the file. -+ -+ * configure.in: Change __oline__ to $LINENO. -+ (HAVE_BUILTIN_REDIRECTION): New check. -+ * config.h.in (HAVE_BUILTIN_REDIRECTION): Add. -+ * include/libc-symbols.h (libc_hidden_builtin_proto, -+ libc_hidden_builtin_def, libc_hidden_builtin_weak, -+ libc_hidden_builtin_ver): Define. -+ * include/string.h (memchr, memcpy, memmove, memset, strcat, strchr, -+ strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr, -+ strspn, strstr): Add libc_hidden_builtin_proto. -+ * intl/plural.y: Include string.h. -+ * sysdeps/alpha/alphaev6/memchr.S (memchr): Add -+ libc_hidden_builtin_def. -+ * sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise. -+ * sysdeps/alpha/alphaev6/memset.S (memset): Likewise. -+ * sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise. -+ * sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise. -+ * sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise. -+ * sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise. -+ * sysdeps/alpha/memchr.S (memchr): Likewise. -+ * sysdeps/alpha/memset.S (memset): Likewise. -+ * sysdeps/alpha/strcat.S (strcat): Likewise. -+ * sysdeps/alpha/strchr.S (strchr): Likewise. -+ * sysdeps/alpha/strcmp.S (strcmp): Likewise. -+ * sysdeps/alpha/strcpy.S (strcpy): Likewise. -+ * sysdeps/alpha/strlen.S (strlen): Likewise. -+ * sysdeps/alpha/strncmp.S (strncmp): Likewise. -+ * sysdeps/alpha/strncpy.S (strncpy): Likewise. -+ * sysdeps/alpha/strrchr.S (strrchr): Likewise. -+ * sysdeps/arm/memset.S (memset): Likewise. -+ * sysdeps/arm/strlen.S (strlen): Likewise. -+ * sysdeps/generic/memchr.c (memchr): Likewise. -+ * sysdeps/generic/memcpy.c (memcpy): Likewise. -+ * sysdeps/generic/memmove.c (memmove): Likewise. -+ * sysdeps/generic/memset.c (memset): Likewise. -+ * sysdeps/generic/strcat.c (strcat): Likewise. -+ * sysdeps/generic/strchr.c (strchr): Likewise. -+ * sysdeps/generic/strcmp.c (strcmp): Likewise. -+ * sysdeps/generic/strcpy.c (strcpy): Likewise. -+ * sysdeps/generic/strcspn.c (strcspn): Likewise. -+ * sysdeps/generic/strlen.c (strlen): Likewise. -+ * sysdeps/generic/strncmp.c (strncmp): Likewise. -+ * sysdeps/generic/strncpy.c (strncpy): Likewise. -+ * sysdeps/generic/strpbrk.c (strpbrk): Likewise. -+ * sysdeps/generic/strrchr.c (strrchr): Likewise. -+ * sysdeps/generic/strspn.c (strspn): Likewise. -+ * sysdeps/generic/strstr.c (strstr): Likewise. -+ * sysdeps/i386/i486/strcat.S (strcat): Likewise. -+ * sysdeps/i386/i486/strlen.S (strlen): Likewise. -+ * sysdeps/i386/i586/memcpy.S (memcpy): Likewise. -+ * sysdeps/i386/i586/memset.S (memset): Likewise. -+ * sysdeps/i386/i586/strchr.S (strchr): Likewise. -+ * sysdeps/i386/i586/strcpy.S (strcpy): Likewise. -+ * sysdeps/i386/i586/strlen.S (strlen): Likewise. -+ * sysdeps/i386/i686/memcpy.S (memcpy): Likewise. -+ * sysdeps/i386/i686/memmove.S (memmove): Likewise. -+ * sysdeps/i386/i686/memset.S (memset): Likewise. -+ * sysdeps/i386/i686/strcmp.S (strcmp): Likewise. -+ * sysdeps/i386/memchr.S (memchr): Likewise. -+ * sysdeps/i386/memset.c (memset): Likewise. -+ * sysdeps/i386/strchr.S (strchr): Likewise. -+ * sysdeps/i386/strcspn.S (strcspn): Likewise. -+ * sysdeps/i386/strlen.c (strlen): Likewise. -+ * sysdeps/i386/strpbrk.S (strpbrk): Likewise. -+ * sysdeps/i386/strrchr.S (strrchr): Likewise. -+ * sysdeps/i386/strspn.S (strspn): Likewise. -+ * sysdeps/ia64/memchr.S (memchr): Likewise. -+ * sysdeps/ia64/memcpy.S (memcpy): Likewise. -+ * sysdeps/ia64/memmove.S (memmove): Likewise. -+ * sysdeps/ia64/memset.S (memset): Likewise. -+ * sysdeps/ia64/strcat.S (strcat): Likewise. -+ * sysdeps/ia64/strchr.S (strchr): Likewise. -+ * sysdeps/ia64/strcmp.S (strcmp): Likewise. -+ * sysdeps/ia64/strcpy.S (strcpy): Likewise. -+ * sysdeps/ia64/strlen.S (strlen): Likewise. -+ * sysdeps/ia64/strncmp.S (strncmp): Likewise. -+ * sysdeps/ia64/strncpy.S (strncpy): Likewise. -+ * sysdeps/m68k/memchr.S (memchr): Likewise. -+ * sysdeps/m68k/strchr.S (strchr): Likewise. -+ * sysdeps/mips/mips64/memcpy.S (memcpy): Likewise. -+ * sysdeps/mips/mips64/memset.S (memset): Likewise. -+ * sysdeps/mips/memcpy.S (memcpy): Likewise. -+ * sysdeps/mips/memset.S (memset): Likewise. -+ * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise. -+ * sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise. -+ * sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise. -+ * sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise. -+ * sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise. -+ * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise. -+ * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise. -+ * sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise. -+ * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise. -+ * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise. -+ * sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise. -+ * sysdeps/powerpc/strcat.c (strcat): Likewise. -+ * sysdeps/sparc/sparc32/memchr.S (memchr): Likewise. -+ * sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise. -+ * sysdeps/sparc/sparc32/memset.S (memset): Likewise. -+ * sysdeps/sparc/sparc32/strcat.S (strcat): Likewise. -+ * sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise. -+ * sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise. -+ * sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise. -+ * sysdeps/sparc/sparc32/strlen.S (strlen): Likewise. -+ * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise. -+ * sysdeps/sparc/sparc64/memchr.S (memchr): Likewise. -+ * sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise. -+ * sysdeps/sparc/sparc64/memset.S (memset): Likewise. -+ * sysdeps/sparc/sparc64/strcat.S (strcat): Likewise. -+ * sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise. -+ * sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise. -+ * sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise. -+ * sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise. -+ * sysdeps/sparc/sparc64/strlen.S (strlen): Likewise. -+ * sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise. -+ * sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise. -+ * sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise. -+ * sysdeps/sparc/sparc64/strspn.S (strspn): Likewise. -+ * sysdeps/sh/memcpy.S (memcpy): Likewise. -+ * sysdeps/sh/memset.S (memset): Likewise. -+ * sysdeps/sh/strlen.S (strlen): Likewise. -+ * sysdeps/s390/s390-32/memchr.S (memchr): Likewise. -+ * sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise. -+ * sysdeps/s390/s390-32/memset.S (memset): Likewise. -+ * sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise. -+ * sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise. -+ * sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise. -+ * sysdeps/s390/s390-64/memchr.S (memchr): Likewise. -+ * sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise. -+ * sysdeps/s390/s390-64/memset.S (memset): Likewise. -+ * sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise. -+ * sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise. -+ * sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise. -+ * sysdeps/x86_64/memcpy.S (memcpy): Likewise. -+ * sysdeps/x86_64/memset.S (memset): Likewise. -+ * sysdeps/x86_64/strcat.S (strcat): Likewise. -+ * sysdeps/x86_64/strchr.S (strchr): Likewise. -+ * sysdeps/x86_64/strcmp.S (strcmp): Likewise. -+ * sysdeps/x86_64/strcpy.S (strcpy): Likewise. -+ * sysdeps/x86_64/strcspn.S (strcspn): Likewise. -+ * sysdeps/x86_64/strlen.S (strlen): Likewise. -+ * sysdeps/x86_64/strspn.S (strspn): Likewise. -+ * string/string-inlines.c: Move... -+ * sysdeps/generic/string-inlines.c: ...here. -+ (__memcpy_g, __strchr_g): Remove. -+ (__NO_INLINE__): Define before including , -+ undefine after. Include bits/string.h and bits/string2.h. -+ * sysdeps/i386/i486/string-inlines.c: New file. -+ * sysdeps/i386/string-inlines.c: New file. -+ * sysdeps/i386/i486/Versions: Remove. -+ All GLIBC_2.1.1 symbols moved... -+ * sysdeps/i386/Versions (libc): ...here. -+ -+2003-04-29 Ulrich Drepper -+ -+ * sysdeps/i386/fpu/Makefile: New file. -+ * sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word. -+ * sysdeps/i386/fpu/feenablxcpt.c: Likewise. -+ * sysdeps/i386/fpu/feholdexcpt.c: Likewise. -+ * sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode -+ [PR libc/4987]. -+ -+2003-04-28 Ulrich Drepper -+ -+ * nscd/nscd_getgr_r.c: Compact code a bit. Add some __builtin_expect. -+ * nscd/nscd_getpw_r.c: Likewise. -+ * nscd/nscd_gethst_r.c: Likewise. -+ -+2003-04-27 Ulrich Drepper -+ -+ * nscd/pwdcache.c: Initialize .version element in result. -+ * nscd/grpcache.c: Likewise. -+ * nscd/pwdcache.c: Likewise. -+ -+2003-04-27 Andreas Schwab -+ -+ * Makeconfig ($(common-objpfx)sysd-sorted): Fix for running in -+ subdirectory. -+ -+2003-04-27 Andreas Schwab -+ -+ * sysdeps/unix/sysv/linux/m68k/semtimedop.S: New file. -+ -+2003-04-27 Ulrich Drepper -+ -+ * nscd/connections.c (client_queued): New variable. -+ (nscd_run): Revamp the loop. Don't call poll except for cleanup -+ threads. Keep track of the number of delays caused because of busy -+ worker threads. -+ * nscd/nscd.h: Declare client_queued. -+ * nscd/nscd_stat.c: Transmit and print client_queued information. -+ -+ * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX. -+ -+ * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to -+ define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs. -+ -+2003-04-26 Ulrich Drepper -+ -+ * elf/dl-close.c [USE_TLS && TLS_TCB_AT_TP] (_dl_close): Reimplement -+ tracking of freed memory in static TLS block. -+ * elf/Makefile: Add rules to build and run tst-tls13. -+ * elf/tst-tls13.c: New file. -+ * elf/tst-tlsmod13.c: New file. -+ * elf/tst-tlsmod13a.c: New file. -+ -+ * elf/tst-tls8.c: Adjust types of variables to avoid warnings. -+ -+ * elf/dl-reloc.c: Pretty printing. -+ -+2003-04-26 Roland McGrath -+ -+ * Makerules ($(common-objpfx)shlib.lds): New target. -+ (common-generated): Add it. -+ (build-shlib, build-module): Use that instead of generating every time. -+ ($(common-objpfx)libc.so): Depend on it. -+ (lib%.so rule): Likewise. -+ (build-module-helper-objlist): Remove %.lds. -+ (LDSEDCMD-c.so): Variable removed. -+ * iconvdata/extra-module.mk ($(objpfx)$(mod).so): -+ Depend on $(common-objpfx)shlib.lds. -+ * dlfcn/Makefile ($(test-modules)): Likewise. -+ -+2003-04-26 Roland McGrath -+ -+ * sysdeps/mach/hurd/tmpfile.c: Remove USE_IN_LIBIO conditionals. -+ -+2003-04-26 Andreas Schwab -+ -+ * elf/dl-close.c (remove_slotinfo): Fix missing parens. -+ -+2003-04-25 Ulrich Drepper -+ -+ * nscd/cache.c (cache_search): Keep track of how many chain links -+ we searched and update table statistics. -+ (cache_add): Keep track of how many values are in the table. -+ (prune_cache): Likewise. Keep track of locking success. -+ Print messages about removed entries in separate pass. -+ * nscd/connections.c (handle_request): Don't print debug message here. -+ The caller will do it. Keep track of locking success. -+ (nscd_run): Print debug message. Also print PID of the client process. -+ * nscd/nscd.c (start_time): New variable. -+ (main): Remember start time. -+ * nscd/nscd.h: Declare start_time. -+ (struct database): Add more members for new statistics. -+ * nscd/nscd_stat.c: Add support for sending, receiving, and printing -+ of new statistics. -+ -+ * sysdeps/posix/getaddrinfo.c: Include . -+ -+2003-04-22 Jakub Jelinek -+ -+ * include/link.h (NO_TLS_OFFSET): Define to 0 if not defined. -+ * elf/dl-close.c (_dl_close): Use NO_TLS_OFFSET. -+ * elf/dl-object.c (_dl_new_object): Initialize l_tls_offset to -+ NO_TLS_OFFSET. -+ * elf/rtld.c (_dl_start_final, _dl_start): Likewise. -+ * elf/dl-reloc.c (CHECK_STATIC_TLS): Use NO_TLS_OFFSET. -+ * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Likewise. -+ * sysdeps/powerpc/dl-tls.h (TLS_TPREL_VALUE): Don't subtract -+ TLS_TCB_SIZE. -+ -+2003-04-24 Ulrich Drepper -+ -+ * nss/getent.c: Implement alternative host database lookup via -+ getaddrinfo. -+ -+ * include/ifaddrs.h: New file. -+ * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and -+ AI_ADDRCONFIG... -+ * resolv/netdb.h: ...here. -+ * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate. -+ * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise. -+ * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and -+ AI_ADDRCONFIG. -+ -+2003-04-24 Roland McGrath -+ -+ * elf/dl-reloc.c (_dl_allocate_static_tls): Add internal_function. -+ -+2003-04-24 Jakub Jelinek -+ -+ * elf/dl-reloc.c (allocate_static_tls): Rename to... -+ (_dl_allocate_static_tls): ... this function. No longer static. -+ (CHECK_STATIC_TLS): Adjust. -+ * sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype. -+ * sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela): -+ Add SYM_MAP argument. -+ (elf_machine_rela): Adjust caller. Declare SYM_MAP unconditionally. -+ Check if SYM_MAP != NULL for R_PPC_DTPREL32. Only handle 32-bit -+ TLS relocs here. #ifdef out relocs which never appear in -+ .gnu.conflict section from dl-conflict.c processing. -+ * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): -+ Add SYM_MAP argument. Handle 16-bit TLS relocs here. -+ -+ * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef -+ out relocs which never appear in .gnu.conflict section from -+ dl-conflict.c processing. -+ * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise. -+ * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise. -+ * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise. -+ Use r_type in RESOLVE macro. -+ -+2003-04-23 Ulrich Drepper -+ -+ * nis/ypclnt.c (__yp_bind): Expect YPDB parameter to always be != -+ NULL. Remove code made redundant by this assumption. -+ (__yp_unbind): Add call to free. Adjust all callers. -+ -+ * nis/ypclnt.c (yp_all): Free the dom_binding object after -+ unbinding it. -+ -+ * grp/initgroups.c (getgrouplist): Don't copy too much into the -+ user buffer if more groups are found than fit into it. -+ -+ * nis/nss_nis/nis-initgroups.c (_nss_nis_initgroups_dyn): Use -+ extend_alloca. -+ -+2003-04-23 Jakub Jelinek -+ -+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Check for rc == ERANGE, -+ not rc == errno. Use extend_alloca. -+ -+ * elf/tst-tls12.c (main): Fix declaration. -+ * elf/tst-tls10.c (dummy): Make hidden instead of static. -+ * elf/tst-tlsmod7.c (dummy): Likewise. -+ * elf/tst-tlsmod8.c (dummy): Likewise. -+ * elf/tst-tlsmod9.c (dummy): Likewise. -+ -+2003-04-22 Roland McGrath -+ -+ * sysdeps/unix/sysv/linux/not-cancel.h: Put parens around macro args. -+ (open_not_cancel): Make last argument non-optional. -+ * sysdeps/generic/check_fds.c (check_one_fd): Update caller. -+ * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise. -+ * iconv/gconv_cache.c (__gconv_load_cache): Likewise. -+ -+ * include/tls.h: Protect against multiple inclusion. -+ -+2003-04-22 Ulrich Drepper -+ -+ * nscd/nscd-client.h: Add declaration for __nscd_open_socket. -+ * nscd/nscd_gethst_r.c (__nscd_open_socket): Renamed from -+ open_socket. Not static anymore. -+ (nscd_gethst_r): Use __nscd_open_socket. -+ * nscd/nscd_getgr_r.c (open_socket): Removed. -+ (nscd_getgr_r): Use __nscd_open_socket. -+ * nscd/nscd_getpw_r.c (open_socket): Removed. -+ (nscd_getpw_r): Use __nscd_open_socket. -+ -+ * nscd/nscd.c (main): Change type of fdn to long int and use strtol. -+ * nscd/connections.c (handle_request): Add cast to avoid warning. -+ -+2003-04-21 Ulrich Drepper -+ -+ * signal/sigfillset.c: Moved to... -+ * sysdeps/generic/sigfillset.c: ...here. If SIGCANCEL is defined -+ do not set the corresponding bit. -+ -+ * sysdeps/unix/sysv/linux/sigprocmask.c: Prevent changing mask for -+ SIGCANCEL. -+ * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Define SI_TKILL. -+ * sysdeps/unix/sysv/linux/bits/siginfo.h: Define SI_TKILL. -+ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Define SI_TKILL. -+ * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Define SI_TKILL. -+ * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Define SI_TKILL. -+ -+2003-04-20 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Cast -+ first syscall parameter to const char*. -+ -+2003-04-19 Ulrich Drepper -+ -+ * intl/Makefile ($(objpfx)msgs.h): Use C locale for sed run. -+ -+ * configure.in: Add AC_PROG_CXX. -+ * config.make.in (CXX): Define. -+ -+ * sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of -+ __len to size_t to avoid warnings. -+ -+2003-04-18 Jes Sorensen -+ -+ * libc/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Sync with Linux -+ 2.5.67. -+ * libc/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise. -+ -+2003-04-19 Ulrich Drepper -+ -+ * stdlib/cxa_finalize.c (__cxa_finalize): Don't call -+ UNREGISTER_ATFORK if d == NULL. -+ -+ * catgets/nl_types.h: Remove __THROW marker from cancellation points. -+ * dirent/dirent.h: Likewise. -+ * dlfcn/dlfcn.h: Likewise. -+ * grp/grp.h: Likewise. -+ * iconv/iconv.h: Likewise. -+ * io/fcntl.h: Likewise. -+ * io/ftw.h: Likewise. -+ * libio/stdio.h: Likewise. -+ * misc/sys/mman.h: Likewise. -+ * misc/sys/select.h: Likewise. -+ * misc/sys/syslog.h: Likewise. -+ * misc/sys/uio.h: Likewise. -+ * posix/spawn.h: Likewise. -+ * posix/unistd.h: Likewise. -+ * posix/sys/wait.h: Likewise. -+ * pwd/pwd.h: Likewise. -+ * resolv/netdb.h: Likewise. -+ * rt/aio.h: Likewise. -+ * shadow/shadow.h: Likewise. -+ * signal/signal.h: Likewise. -+ * socket/sys/socket.h: Likewise. -+ * stdlib/stdlib.h: Likewise. -+ * streams/stropts.h: Likewise. -+ * string/string.h: Likewise. -+ * sysdeps/gnu/utmpx.h: Likewise. -+ * sysvipc/sys/msg.h: Likewise. -+ * termios/termios.h: Likewise. -+ * time/time.h: Likewise. -+ * wcsmbs/wchar.h: Likewise. -+ * iconv/gconv_cache.c: Include and use non-cancelable -+ functions. -+ * misc/daemon.c: Likewise. -+ * sysdeps/generic/backtracesymsfd.c: Likewise. -+ * sysdeps/generic/check_fds.c: Likewise. -+ * sysdeps/unix/sysv/linux/gethostid.c: Likewise. -+ * sysdeps/unix/sysv/linux/not-cancel.h: New file. -+ * sysdeps/generic/not-cancel.h: New file. -+ * csu/Makefile (distribute): Add not-cancel.h. -+ * sysdeps/unix/sysv/linux/fatal-prepare.h: New file. -+ * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE -+ for assert.c and assert-perr.c to include . -+ * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h. -+ -+ * sysdeps/posix/remove.c (remove): Rewrite. No need to restore -+ errno and unlink first. -+ -+ * io/ftw.c (ftw_dir): In all places assume fchdir is available. -+ -+2003-04-18 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use -+ INTERNAL_SYSCALL instead of INLINE_SYSCALL. -+ -+2003-04-17 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling. -+ -+ * malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k. -+ * sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not -+ replace. -+ -+ * signal/Makefile (tests): Add tst-sigsimple. -+ * signal/tst-sigsimple.c: New file. -+ -+2003-04-16 Jakub Jelinek -+ -+ * elf/Makefile (distribute): Add tst-tlsmod{[7-9],1[0-2]}.c and -+ tst-tls10.h. -+ (tests): Add tst-tls1[0-2]. -+ (modules-names): Add tst-tlsmod{[7-8],1[0-2]}. -+ ($(objpfx)tst-tlsmod8.so): Depend on tst-tlsmod7.so. -+ ($(objpfx)tst-tlsmod10.so): Depend on tst-tlsmod9.so. -+ ($(objpfx)tst-tlsmod12.so): Depend on tst-tlsmod11.so. -+ ($(objpfx)tst-tls10): Depend on tst-tlsmod8.so. -+ ($(objpfx)tst-tls11): Depend on tst-tlsmod10.so. -+ ($(objpfx)tst-tls12): Depend on tst-tlsmod12.so. -+ * elf/tst-tls10.c: New test. -+ * elf/tst-tls11.c: New test. -+ * elf/tst-tls12.c: New test. -+ * elf/tst-tls10.h: New file. -+ * elf/tst-tlsmod7.c: New file. -+ * elf/tst-tlsmod8.c: New file. -+ * elf/tst-tlsmod9.c: New file. -+ * elf/tst-tlsmod10.c: New file. -+ * elf/tst-tlsmod11.c: New file. -+ * elf/tst-tlsmod12.c: New file. -+ -+2003-04-15 Steven Munroe -+ -+ * sysdeps/powerpc/bits/atomic.h: Moved ppc32/64 specific code to ... -+ * sysdeps/powerpc/powerpc32/bits/atomic.h: New file. -+ * sysdeps/powerpc/powerpc64/bits/atomic.h: New file. -+ -+2003-04-17 Ulrich Drepper -+ -+ * posix/regex.h: Include . -+ -+ * signal/sigrelse.c (sigrelse): Use sigdelset and not __sigdelset. -+ The signal number must be checked. -+ * signal/sighold.c (sighold): Use sigaddset and not __sigaddset. -+ The signal number must be checked [PR libc/5004]. -+ -+ * sysdeps/unix/sysv/linux/system.c: If compiled without threads -+ don't do anything fancy. -+ -+ * sysdeps/generic/bits/libc-lock.h: Define -+ __rtld_lock_define_initialized_recursive. -+ -+ * nss/getXXbyYY_r.c [USE_NSCD] (REENTRANT_NAME): Only retry -+ contacting nscd if NOT_USENSCD_NAME > 0. -+ * nss/nsswitch.c (__nss_disable_nscd): New function. -+ * nss/nsswitch.h: Declare it. -+ * nss/Versions [GLIBC_PRIVATE]: Export __nss_disable_nscd. -+ * nscd/nscd.c (main): Call __nss_disable_nscd. -+ -+2003-04-16 Ulrich Drepper -+ -+ * stdio-common/perror.c (perror): We don't need to set the offset -+ to _IO_pos_bad, this is how streams are initialized. -+ -+ * locale/programs/ld-time.c (TESTARR_ELEM): Make i unsigned. -+ (time_output): If necessary, allocate new buffer for .name string if -+ padding is required. -+ -+ * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Check lengths -+ before copying. This might leave holes in the list. Adjust -+ pointers if necessary. -+ (netlink_receive): Allocate only one block. -+ (free_netlink_handle): Adjust appropriately. -+ (getifaddrs): Lots of cleanups. -+ -+ * string/test-strncpy.c (do_one_test): Mark start and stop as -+ possibly unused. -+ * string/test-memchr.c: Likewise. -+ * string/test-memcmp.c: Likewise. -+ * string/test-memcpy.c: Likewise. -+ * string/test-memmove.c: Likewise. -+ * string/test-memset.c: Likewise. -+ * string/test-strcat.c: Likewise. -+ * string/test-strchr.c: Likewise. -+ * string/test-strcmp.c: Likewise. -+ * string/test-strcpy.c: Likewise. -+ * string/test-strlen.c: Likewise. -+ * string/test-strncmp.c: Likewise. -+ * string/test-strpbrk.c: Likewise. -+ * string/test-strrchr.c: Likewise. -+ * string/test-strspn.c: Likewise. -+ -+2003-04-15 Roland McGrath -+ -+ * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning. -+ -+ * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for -+ INTUSE(__register_frame_info_bases). -+ -+2003-04-15 Ulrich Drepper -+ -+ * elf/elf.h: Define AT_SYSINFO_EH_FRAME. -+ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle -+ AT_SYSINFO_EH_FRAME. Adjust string width. -+ (_dl_show_auxv):Display AT_SYSINFO_EH_FRAME value. -+ * sysdeps/generic/ldsodefs.h [NEED_DL_SYSINFO] (struct rtld_global): -+ Add _dl_sysinfo_eh_frame field. -+ * elf/dl-support.c [NEED_DL_SYSINFO]: Define _dl_sysinfo_eh_frame. -+ * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO] Define eh_obj -+ variable. -+ [NEED_DL_SYSINFO] (LIBC_START_MAIN): Call __register_frame_info_bases -+ if _dl_sysinfo_eh_frame is non-NULL. -+ -+ * Makeconfig (gnulib): Add -lgcc_eh. -+ -+ * config.h.in: Define HAVE_FORCED_UNWIND. -+ -+2003-04-15 Steven Munroe -+ -+ * sysdeps/powerpc/powerpc64/strcmp.S: Convert to full 64-bit. -+ * sysdeps/powerpc/powerpc64/strcpy.S: Likewise. -+ -+2003-04-15 Jakub Jelinek -+ -+ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid -+ checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is -+ against local symbol in conflict processing. -+ -+2003-04-15 Steven Munroe -+ -+ * sysdeps/powerpc/bits/atomic.h -+ [__powerpc64] (__arch_compare_and_exchange_val_64_acq): Define. -+ [! __powerpc64] (__arch_compare_and_exchange_val_64_acq): Defined -+ as abort stub. -+ (__arch_compare_and_exchange_val_32_acq): Define. -+ (atomic_compare_and_exchange_val_acq): Define. -+ -+2003-04-15 Ulrich Drepper -+ -+ * include/atomic.h: Pretty printing. -+ -+2003-04-14 Ulrich Drepper -+ -+ * stdio-common/vfscanf.c: Add casts to avoid warnings. -+ -+2003-04-14 Jakub Jelinek -+ -+ * sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX. -+ * sysdeps/x86_64/bits/atomic.h: Likewise. -+ -+2003-04-14 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and -+ POPARGS_1 to emit labels for the mov instructions. -+ -+2003-04-14 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define. -+ -+2003-04-14 Roland McGrath -+ -+ * sysdeps/generic/unwind-dw2.c (_Unwind_GetCFA): Add a cast to silence -+ compiler warning. -+ -+ * sysdeps/generic/unwind-pe.h: Fix decl hacks broken in merge. -+ -+2003-04-14 Ulrich Drepper -+ -+ * string/strxfrm.c (STRXFRM): Terminate rulearr at correct -+ position. Reported by jreiser@BitWagon.com. -+ -+2003-04-13 Ulrich Drepper -+ -+ * sysdeps/generic/unwind-dw2-fde.c: Update from recent gcc version. -+ * sysdeps/generic/unwind-dw2-fde.h: Likewise. -+ * sysdeps/generic/unwind-dw2.c: Likewise. -+ * sysdeps/generic/unwind-pe.h: Likewise. -+ -+2003-04-13 Alexandre Oliva -+ -+ * sysdeps/unix/sysv/linux/mips/profil-counter: New. -+ * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64. -+ * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New. -+ * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64. -+ (mcontext_t): Make it match the 32-bit mips kernel in o32. -+ * sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from -+ the mips and mips64 headers. -+ (struct user): Port to n32/n64. -+ -+2003-04-12 Ulrich Drepper -+ -+ * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add cast to -+ avoid warning. -+ -+ * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): If -+ __ASSUME_VSYSCALL is defined don't add restorer. -+ * sysdeps/unix/sysv/linux/kernel-features.h: Define -+ __ASSUME_VSYSCALL for 2.5.53. -+ -+2003-04-11 Ulrich Drepper -+ -+ * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling. -+ Remove HAVE_CANCELBUF code. Replace with code using the new -+ initializers for unwind-based cleanup handling. -+ * sysdeps/generic/unwind.h: Update from latest gcc version. -+ * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few -+ places to allow unwind data generation. -+ * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times. -+ * sysdeps/x86_64/bits/setjmp.h: Likewise. -+ * sysdeps/sh/bits/setjmp.h: Likewise. -+ * sysdeps/powerpc/bits/setjmp.h: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise. -+ * sysdeps/alpha/bits/setjmp.h: Likewise. -+ -+2003-04-11 Roland McGrath -+ -+ * csu/tst-empty.c: New file. -+ * csu/Makefile (tests, tests-static): Add it. -+ -+2003-04-11 Jakub Jelinek -+ -+ * string/test-strcmp.c (do_random_tests): Test whether return value -+ has been promoted to wordsize if the ABI requires caller to do so. -+ * string/test-strncmp.c (do_random_tests): Likewise. -+ * string/test-memcmp.c (do_random_tests): Likewise. -+ -+ * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Sign extend rRTN -+ before returning. -+ -+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c -+ (__fe_nomask_env): Try prctl even if __ASSUME_NEW_PRCTL_SYSCALL -+ is not defined, but the prctl constants are. -+ -+ * string/tester.c (test_strcmp): Fix a typo. -+ -+2003-04-09 Ulrich Drepper -+ -+ * sysdeps/alpha/fpu/bits/mathdef.h: Remove FLT_EVAL_METHOD definition. -+ * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise. -+ -+2003-04-08 Alexandre Oliva -+ -+ * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on -+ NewABI. -+ (ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on -+ NewABI. -+ * sysdeps/mips/mips64/memcpy.S: Adjust register naming -+ conventions. -+ * sysdeps/mips/mips64/memset.S: Likewise. -+ * sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]: -+ Use t0 instead of t4 as temporary. -+ -+2003-04-07 Ulrich Drepper -+ -+ * elf/ldconfig.c (parse_conf): Ignore leading whitespace. Use -+ feof_unlocked instead of feof. -+ (add_dir): Ignore trailing whitespace. -+ -+2003-04-07 Jakub Jelinek -+ -+ * posix/bug-regex4.c (main): Cap RANGE and STOP arguments to -+ sum of SIZE1 and SIZE2 arguments. -+ -+2003-04-06 Ulrich Drepper -+ -+ * iconv/iconv_prog.c (process_block): Don't print message about -+ invalid input if the -c option is used. -+ (main): Correctly append IGNORE string for -c option. -+ -+2002-04-06 Kaz Kojima -+ -+ * sysdeps/sh/bits/atomic.h: Moved to ... -+ * sysdeps/unix/sysv/linux/sh/bits/atomic.h: ... here. Add comments. -+ (__arch_compare_and_exchange_val_*_acq): Add parens around macro -+ arguments. -+ (atomic_bit_set, atomic_bit_test_set): Likewise. -+ (atomic_exchange_and_add): Likewise. Don't evaluate VALUE argument -+ twice. -+ (atomic_add, atomic_add_negative, atomic_add_zero): Likewise. -+ -+2003-04-06 Roland McGrath -+ -+ * sysdeps/unix/sysv/linux/i386/swapcontext.S: Rewrite register -+ restoration as done for setcontext yesterday. -+ -+2003-04-06 Jakub Jelinek -+ -+ * elf/rtld.c: Revert 2003-03-14 change. -+ * elf/dl-conflict.c (_dl_resolve_conflicts): Move -+ #if ! ELF_MACHINE_NO_RELA conditional into the routine. -+ -+2003-04-05 Ulrich Drepper -+ -+ * sunrpc/xdr.c (xdr_string): Catch nodesize == 0 [PR libc/4999]. -+ -+ * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r): -+ Always initialize *signgamp before returning an error. -+ -+2003-04-05 Roland McGrath -+ -+ * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing -+ below the stack pointer even if switching to the same context we are -+ running right now. -+ -+2003-04-05 Ulrich Drepper -+ -+ * catgets/gencat.c (read_input_file): Make sure that \n is not -+ alone on the line before testing for continuation. -+ -+ * math/test-tgmath.c (compile_test): Initialize c. -+ -+2003-04-05 Alexandre Oliva -+ -+ * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New. -+ * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New. -+ * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available -+ on mips n32. -+ * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why -+ XSTAT_IS_XSTAT64 must not be used for mips n64. Use 64-bit data -+ structure on n32 as well. -+ * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant -+ data types on n32 and n64. -+ -+2003-04-05 Ulrich Drepper -+ -+ * libio/fileops.c (_IO_new_file_fopen): Don't free step data right -+ after getting them. -+ -+ * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If -+ HAVE_register_atfork_malloc is defined use __register_atfork_malloc -+ instead of __register_atfork. -+ -+2003-04-05 Jakub Jelinek -+ -+ * stdio-common/reg-printf.c (__register_printf_function): Calloc -+ instead of malloc __printf_arginfo_table and __printf_function_table. -+ Reported by John Reiser . -+ -+2003-04-04 Steven Munroe -+ -+ * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations. -+ * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations. -+ -+ * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before -+ defining. -+ -+2003-04-04 Alexandre Oliva -+ -+ * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust -+ for n64 abi. -+ -+2003-04-03 Roland McGrath -+ -+ * configure.in: Fix up use of compilation flags to match the build: -+ For .s files, $ASFLAGS; -+ For .S files, $CPPFLAGS $ASFLAGS; -+ For .c files, $CFLAGS $CPPFLAGS; -+ when linking, add $LDFLAGS. -+ * configure: Regenerated. -+ -+2003-04-03 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test -+ for atomic_compare_and_exchange_bool_acq failure. -+ -+2003-04-03 Ulrich Drepper -+ -+ * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION, -+ _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and -+ _POSXI2_LOCALEDEF to 200112L. Remove _POSIX2_C_VERSION. -+ Remove declaration of pthread_atfork. -+ -+2003-04-02 Ulrich Drepper -+ -+ * locale/iso-639.def: Add many more languages from the current ISO 639. -+ -+ * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop. -+ * sysdeps/generic/semtimedop.c: New file. -+ * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file. -+ * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop. -+ * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise. -+ * sysvipc/Makefile (routines): Add semtimedop. -+ * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop. -+ * sysvipc/sys/sem.h: Declare semtimedop. -+ -+2003-04-02 Daniel Jacobowitz -+ -+ * configure.in: Check for __register_frame_info in both -+ -lgcc and -lgcc_eh. -+ * configure: Regenerated. -+ -+2003-04-01 Roland McGrath -+ -+ * scripts/abilist.awk: Allow dots in soname suffix. -+ -+ * scripts/abilist.awk (emit): Fix bailout condition. -+ -+2003-04-01 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the -+ IA-64 version. -+ -+ * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp -+ register as input to asm. -+ -+2003-04-01 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo. -+ -+2003-04-01 Andreas Jaeger -+ -+ * configure.in: Output as/ld as name if version is too old. -+ -+2003-03-31 Daniel Jacobowitz -+ -+ * configure.in: Don't require an installed C library in the test -+ for ".set" assembler support. -+ -+2003-03-31 Roland McGrath -+ -+ * signal/tst-sigset.c: New file. -+ * signal/Makefile (tests): Add it. -+ -+2003-03-31 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65. -+ * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise. -+ * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise. -+ * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise. -+ (__SIGRTMAX): Adjust accordingly. -+ * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define -+ second compatibility symbol set. -+ * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define. -+ -+2003-03-31 Andreas Schwab -+ -+ * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test): -+ Define. -+ (atomic_decrement_and_test): Fix test. -+ -+2003-03-31 Jakub Jelinek -+ -+ * sysdeps/sparc/sparc32/bits/atomic.h: New file. -+ * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file. -+ * sysdeps/sparc/sparc64/bits/atomic.h: New file. -+ * sysdeps/sparc/sparc32/atomicity.h: Removed. -+ * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed. -+ * sysdeps/sparc/sparc64/atomicity.h: Removed. -+ -+2003-03-30 Roland McGrath -+ -+ * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone. -+ -+ * intl/po2test.sed: Anchor substitution regexps to fix last change. -+ -+2003-03-29 Paolo Bonzini -+ -+ * intl/po2test.sed: Unify the transformations for msgid and msgstr -+ and remove a useless s/// command. -+ -+2003-03-27 David Mosberger -+ -+ * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0" -+ directive into empty .prologue region to ensure that call-chain -+ is terminated even for the first instruction. -+ -+ * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom -+ to terminate call-chain right from the get-go. -+ -+ * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary -+ stop bit between compare & branch. -+ -+2003-03-29 Ulrich Drepper -+ -+ * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal -+ point correctly [PR libc/4993]. -+ -+ * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid -+ netlink_open calls if netlink is known to not be available. -+ -+2003-03-29 Alexandre Oliva -+ -+ * configure.in: Add mips64* support. -+ * sysdeps/mips/bits/endian.h: Make it bi-endian. -+ * sysdeps/mips/mipsel/bits/endian.h: Removed. -+ * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed. -+ * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed. -+ * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32. -+ * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32. -+ * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64. -+ * sysdeps/mips/Implies: Moved wordsize-32 to... -+ * sysdeps/mips/mips32/Implies: New file. -+ * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO, -+ ret_NOERRNO): New. -+ (ret, PSEUDO_END): Moved past END. -+ (PSEUDO): Moved to... -+ * sysdeps/unix/mips/mips32/sysdep.h: New file. -+ * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO. -+ * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to... -+ * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file. -+ * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file. -+ -+ * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): -+ Re-introduce ENTRY. -+ -+2003-03-28 Thorsten Kukuk -+ -+ * sysdeps/unix/sysv/linux/ifaddrs.c: New file. -+ * inet/test-ifaddrs.c: Allow AF_PACKET. -+ * sysdeps/unix/sysv/linux/kernel-features.h: Add -+ __ASSUME_NETLINK_SUPPORT. -+ -+2003-03-28 Ulrich Drepper -+ -+ * elf/vismain.c (do_test): Comment out tests which fail in the moment. -+ -+2003-03-26 H.J. Lu -+ -+ * elf/vismod.h (getvarlocal1): Return const char **. -+ (getvarinmod1): Likewise. -+ (getvaritcpt1): Likewise. -+ (getvarlocal2): Likewise. -+ (getvarinmod2): Likewise. -+ (getvaritcpt2): Likewise. -+ (getvaritcpt3): Likewise. -+ * elf/vismain.c (do_test): Adjusted. -+ * elf/vismod1.c (getvarlocal1): Return address. -+ (getvarinmod1): Likewise. -+ (getvaritcpt1): Likewise. -+ * elf/vismod2.c (getvarlocal2): Likewise. -+ (getvarinmod2): Likewise. -+ (getvaritcpt2): Likewise. -+ * elf/vismod3.c (getvaritcpt3): Likewise. -+ -+2003-03-28 Roland McGrath -+ -+ * elf/vismain.c (do_test): Print both addresses when they don't match. -+ -+ * scripts/abilist.awk: If given -v filename_regexp and/or -v -+ libname_regexp when parsing names, then produce output only -+ for those matching the given regexps. In combine mode, save all -+ stanzas for a final sorting by stanza header at the end. -+ Emit a blank line between stanzas. -+ -+ * scripts/abilist.awk: When given -v combine=1, do parse_names and -+ emit a single output stream with lib name in stanza header lines. -+ -+ * scripts/abilist.awk: Emit A for all *ABS* regardless of type. -+ -+2003-03-27 Roland McGrath -+ -+ * sysdeps/powerpc/bits/atomic.h [! __powerpc64__] -+ (__arch_atomic_decrement_if_positive_64): Fix bogus definition. -+ -+2003-03-28 Kaz Kojima -+ -+ * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq): -+ Return old value. Make asm output reg constraint earlyclobber. -+ Renamed from... -+ (__arch_compare_and_exchange_8_acq): ... this. -+ (__arch_compare_and_exchange_val_16_acq): -+ Return old value. Make asm output reg constraint earlyclobber. -+ Renamed from... -+ (__arch_compare_and_exchange_16_acq): ... this. -+ (__arch_compare_and_exchange_val_32_acq): -+ Return old value. Make asm output reg constraint earlyclobber. -+ Renamed from... -+ (__arch_compare_and_exchange_32_acq): ... this. -+ (__arch_compare_and_exchange_val_64_acq): -+ Renamed from... -+ (__arch_compare_and_exchange_64_acq): ... this. -+ (atomic_exchange_and_add): Use local variables and -+ __arch_compare_and_exchange_val_64_acq. -+ (atomic_add): Likewise. -+ (atomic_add_negative, atomic_add_zero): Use local variables. -+ -+2003-03-28 Alexandre Oliva -+ -+ * sysdeps/unix/mips/sysdep.S: Include sys/asm.h. -+ -+2003-03-27 Ulrich Drepper -+ -+ * Makefile: Remove libmd5crypt goal. -+ -+2003-03-25 Jakub Jelinek -+ -+ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore -+ special handling of relocations against local symbols. -+ -+2003-03-27 Steven Munroe -+ -+ * sysdeps/powerpc/bits/atomic.h -+ (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__]. -+ [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq): -+ Define PPC64 specific version. -+ [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq): -+ Change (mem) constraint to "b". -+ [__powerpc64__] (__arch_atomic_exchange_and add_64): -+ Replace addi with add. Change (value) contraint to "r". -+ Change (mem) constraint to "b". -+ [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro. -+ (__arch_atomic_exchange_32): Change (mem) constraint to "b". -+ (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b". -+ (__arch_atomic_decrement_if_positive_32): New macro. -+ (atomic_decrement_if_positive): Use __arch* macros. -+ -+2003-03-27 Jakub Jelinek -+ -+ * sysdeps/ia64/fpu/libm-test-ulps: Update. -+ -+2003-03-27 Roland McGrath -+ -+ * scripts/rpm2dynsym.sh: New file. -+ * Makefile (distribute): Add it. -+ -+2003-03-27 David Mosberger -+ -+ * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's -+ ar.unat before returning. Add missing .mem.offset directives -+ to ensure file gets assembled without warnings. -+ * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise. -+ -+2003-03-27 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>: -+ Return -1 instead of 0 if clock_getres failed. -+ -+2003-03-27 Roland McGrath -+ -+ * scripts/abilist.awk: If variable `parse_names' is set, grok the file -+ header lines and write out foo.symlist files for each foo.so.NN listed. -+ -+ * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden. -+ This symbol is exported, and we don't want to hide it. -+ Add libc_hidden_proto instead. -+ (_IO_file_jumps): Add libc_hidden_proto. -+ * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def. -+ Remove INTVARDEF. -+ * libio/fileops.c (_IO_file_jumps): Likewise. -+ * libio/stdfiles.c: Don't use INTUSE on them. -+ * libio/iofdopen.c (_IO_new_fdopen): Likewise. -+ * libio/iofopen.c (__fopen_internal): Likewise. -+ * libio/freopen.c (freopen): Likewise. -+ * libio/freopen64.c (freopen64): Likewise. -+ * libio/iovdprintf.c (_IO_vdprintf): Likewise. -+ -+ * Makerules (check-abi) [$(enable-check-abi) = warn]: -+ Ignore exit status from diff. -+ * configure.in (enable_check_abi): Document possible value "warn". -+ Change default to no for now. -+ * configure: Regenerated. -+ -+ * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning -+ macro calls and a #include at the end. -+ * Makerules ($(objpfx)stubs): Tweak sed commands. -+ -+ * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in -+ caller column for *xattr syscalls, since they are in sysdeps/generic. -+ -+ * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid -+ * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid -+ -+2003-03-26 Roland McGrath -+ -+ * Makerules (check-abi-config): Use /thread instead of /tls when -+ use-thread and not just use-tls is set. -+ -+ * Makerules (update-abi): Put quotes around $(update-abi-config). -+ -+ * elf/Makefile (check-abi): Depend on check-abi-ld. -+ (update-abi): Depend on update-abi-ld. -+ -+2003-03-26 GOTO Masanori -+ -+ * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and -+ do not check for errors (unless testing for 32bit variant). -+ * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise. -+ -+2003-03-27 Philip Blundell -+ -+ * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use -+ unconditional mov. Remove nop. -+ -+ * sysdeps/unix/sysv/linux/kernel-features.h -+ (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm. -+ * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code -+ when __ASSUME_VFORK_SYSCALL is defined. -+ * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for -+ __ASSUME_MMAP2_SYSCALL. -+ * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for -+ __ASSUME_REALTIME_SIGNALS. -+ -+2003-03-26 Ulrich Drepper -+ -+ * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2 -+ only if DL_NO_COPY_RELOCS is not defined. -+ * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS. -+ -+2003-03-26 Roland McGrath -+ -+ * sysdeps/unix/make-syscalls.sh: When an undefined syscall has -+ SOURCE=-, append its symbol names to make variable unix-stub-syscalls. -+ * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls] -+ (sysdep_routines): Add stub-syscalls. -+ ($(objpfx)stub-syscalls.c): New target. -+ (generated): Add stub-syscalls.c. -+ -+ * tls.make.c: Also define use-tls according to USE_TLS macro. -+ -+2003-03-26 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid -+ no-op padding element. -+ * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise. -+ * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise. -+ * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise. -+ -+2003-03-26 GOTO Masanori -+ -+ * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error -+ condition check for the return value of getgroups32. -+ -+2003-03-26 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO): -+ Fix a typo. -+ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO, -+ PSEUDO_END_NOERRNO): Define. -+ * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo. -+ Define to PSEUDO_END. -+ -+2003-03-26 Ulrich Drepper -+ -+ * abilist/librt.abilist: Add new timer interfaces for 64-bit archs. -+ -+2003-03-25 Jiro SEKIBA -+ -+ * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP. -+ * iconvdata/bug-iconv4.c: New file. -+ * iconvdata/Makefile (tests): Add bug-iconv4. -+ -+2003-03-25 H.J. Lu -+ -+ * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected -+ symbols twice. -+ (_dl_lookup_versioned_symbol): Likewise. -+ -+2003-03-26 Jakub Jelinek -+ -+ * csu/tst-atomic.c (do_test): Add some new -+ atomic_compare_and_exchange_val_acq, atomic_add_zero, -+ atomic_compare_and_exchange_bool_acq and atomic_add_negative tests. -+ * include/atomic.h (atomic_add_negative, atomic_add_zero): -+ Prefix local variable so that it doesn't clash with the one -+ in atomic_exchange_and_add. -+ * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void * -+ pointers. -+ (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i. -+ * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force -+ value into register. -+ * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq): -+ Cast newval to long. -+ * sysdeps/x86_64/bits/atomic.h -+ (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to -+ long. -+ (atomic_exchange): Cast newvalue to long if sizeof == 8. -+ (atomic_exchange_and_add): Cast value to long if sizeof == 8. -+ (atomic_add, atomic_add_negative, atomic_add_zero): Likewise. -+ (atomic_bit_set): Shift 1L up in all cases to shut up warnings. -+ -+2003-03-21 Martin Schwidefsky -+ -+ * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order -+ bit from backtrace addresses. -+ -+2003-03-21 Andreas Schwab -+ -+ * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned -+ __chown symbols. -+ -+2003-03-25 Roland McGrath -+ -+ * config.make.in (enable-check-abi): New variable from configure. -+ * configure.in (enable_check_abi): New substituted variable, -+ controlled by --{enable,disable}-check-abi (default yes). -+ * configure: Regenerated. -+ * Makerules [$(enable-check-abi) = yes] (tests): Put this condition -+ on check-abi dependency. -+ -+2003-03-26 Andreas Schwab -+ -+ * sysdeps/m68k/m68020/bits/atomic.h: Fix typos. -+ * include/atomic.h: Likewise. -+ -+ * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO. -+ -+2003-03-25 Roland McGrath -+ -+ * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro. -+ (__arch_atomic_exchange_64): New macro. -+ (atomic_exchange): Use them. -+ (__arch_atomic_exchange_and_add_32): New macro. -+ (__arch_atomic_exchange_and_add_64): New macro. -+ (atomic_exchange_and_add): Use them. -+ Original patch from Steven Munroe . -+ -+2003-03-25 Alexandre Oliva -+ -+ * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64): -+ Define. -+ * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all -+ ISA tests. -+ (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA. -+ (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG. -+ * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR -+ to decide whether to add padding. -+ * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR -+ to decide whether to add padding. -+ * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct -+ old_kernel_sigaction): Likewise. -+ -+2003-03-25 Ulrich Drepper -+ -+ * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and -+ atomic_add_zero were supposed to do. -+ * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero -+ to x86 behavior. -+ -+ * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*. -+ This matches the new timer implementation. -+ * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE): -+ Likewise. -+ * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE): -+ Likewise. -+ * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust -+ timer info for what the kernel provides these days. -+ (struct sigevent): Add _tid field. -+ Define SIGEV_THREAD_ID. -+ Remove struct __pthread_attr_s forward declaration. -+ * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise. -+ * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise. -+ * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise. -+ -+ * Versions.def (librt): Add GLIBC_2.3.3. -+ -+ * abilist/libpthread.abilist: Update for nptl. -+ -+2003-03-24 Jon Grimm -+ -+ * inet/netinet/in.h: Add IPPROTO_SCTP. -+ -+2003-03-24 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define. -+ -+2003-03-24 Philip Blundell -+ -+ * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL): -+ Remove a1 from clobber list. -+ -+2003-03-24 Ulrich Drepper -+ -+ * timezone/antarctica: Update from tzdata2003a. -+ * timezone/asia: Likewise. -+ * timezone/australasia: Likewise. -+ * timezone/europe: Likewise. -+ * timezone/iso3166.tab: Likewise. -+ * timezone/northamerica: Likewise. -+ * timezone/southamerica: Likewise. -+ * timezone/zone.tab: Likewise. -+ -+2003-03-24 Steven Munroe -+ -+ * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo. -+ -+2003-03-23 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid -+ unwanted expansion by definining to ret. Patch by Ian Wienand. -+ -+ * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of -+ the parameter description to denote no error checking. Generate -+ appropriate pseudo asm code. -+ * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'. -+ * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid, -+ getpgrp, and getppid with 'E'. -+ * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO, -+ PSEUDO_END_NOERRNO, and ret_NOERRNO. -+ * sysdeps/powerpc/powerpc64/sysdep.h: Likewise. -+ * sysdeps/unix/sysdep.h: Likewise. -+ * sysdeps/unix/alpha/sysdep.h: Likewise. -+ * sysdeps/unix/sparc/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise. -+ * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise. -+ -+2003-03-23 Roland McGrath -+ -+ * Makeconfig (+includes): Don't use $(last-includes). -+ -+2003-03-22 Alexandre Oliva -+ -+ * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns. -+ * sysdeps/unix/sysv/linux/configure: Rebuilt. -+ -+2003-03-23 Jakub Jelinek -+ -+ * sysdeps/alpha/fpu/libm-test-ulps: Update. -+ * sysdeps/arm/libm-test-ulps: Update. -+ * sysdeps/hppa/fpu/libm-test-ulps: Update. -+ * sysdeps/ia64/fpu/libm-test-ulps: Update. -+ * sysdeps/mips/fpu/libm-test-ulps: Update. -+ * sysdeps/powerpc/nofpu/libm-test-ulps: Update. -+ * sysdeps/powerpc/fpu/libm-test-ulps: Update. -+ * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update. -+ * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update. -+ * sysdeps/sh/sh4/fpu/libm-test-ulps: Update. -+ * sysdeps/s390/fpu/libm-test-ulps: Update. -+ * sysdeps/x86_64/fpu/libm-test-ulps: Update. -+ -+2003-03-22 Roland McGrath -+ -+ * include/atomic.h: Put parens around all macro arguments. -+ (__atomic_val_bysize, __atomic_bool_bysize): New macros. -+ (atomic_compare_and_exchange_val_acq): Use it. -+ (atomic_compare_and_exchange_bool_acq): Likewise. -+ (atomic_increment_and_test): Invert sense of test. -+ (atomic_decrement_and_test): Likewise. -+ * csu/tst-atomic.c: Update those tests to match. -+ -+2003-03-22 Jakub Jelinek -+ -+ * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment. -+ Don't define if __arch_compare_and_exchange_val_32_acq is not defined. -+ (atomic_compare_and_exchange_bool_acq): Add comment. Don't use -+ __oldval variable in the macro, since it might be macro argument. -+ (atomic_decrement_if_positive): Initialize __memp, remove setting -+ of non-existent variable. -+ (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting. -+ * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement -+ using atomic_compare_and_exchange_val_acq. -+ (atomic_decrement_if_positive, atomic_bit_test_set): Define. -+ * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq): -+ Renamed from... -+ (__arch_compare_and_exchange_bool_8_acq): ... this. -+ (__arch_compare_and_exchange_val_16_acq): Renamed from... -+ (__arch_compare_and_exchange_bool_16_acq): ... this. -+ (__arch_compare_and_exchange_val_32_acq): Return old value. Renamed -+ from... -+ (__arch_compare_and_exchange_bool_32_acq): ... this. -+ (__arch_compare_and_exchange_val_64_acq): Return old value. Renamed -+ from... -+ (__arch_compare_and_exchange_bool_64_acq): ... this. -+ (__arch_compare_and_exchange_val_32_acq): Use __typeof for local -+ variables types instead of assuming int. -+ Change prefix of local variables to __arch. -+ * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq): -+ Remove. -+ (atomic_compare_and_exchange_val_acq, -+ atomic_compare_and_exchange_bool_acq): Define. -+ -+ * csu/tst-atomic.c: New test. -+ * csu/tst-atomic-long.c: New test. -+ * csu/Makefile (tests): Add tst-atomic and tst-atomic-long. -+ -+ * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong. -+ -+ * sysdeps/s390/Versions: Add trailing newline. -+ -+ * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning -+ if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument. -+ -+2003-03-22 Andreas Schwab -+ -+ * sysdeps/m68k/fpu/libm-test-ulps: Update. -+ -+ * sysdeps/m68k/m68020/bits/atomic.h: New file. -+ * sysdeps/m68k/m68020/atomicity.h: Removed. -+ -+2003-03-22 Alexandre Oliva -+ -+ * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation -+ data structures and macros. Protect from multiple inclusion. -+ -+ * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless -+ typo in #if test. -+ -+2003-03-21 Andreas Jaeger -+ -+ * sysdeps/i386/fpu/libm-test-ulps: Update. -+ -+ * math/libm-test.inc (tgamma_test): Recompute some constants with -+ 36 digits precision. -+ (lgamma_test): Likewise. -+ (ccos_test): Likewise. -+ (ccosh_test): Likewise. -+ (clog10_test): Likewise. -+ (csin_test): Likewise. -+ (csinh_test): Likewise. -+ (ctan_test): Likewise. -+ (ctanh_test): Likewise. -+ -+2003-03-19 Jakub Jelinek -+ -+ * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated. -+ -+2003-03-21 Roland McGrath -+ -+ * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir" -+ constraint to permit non-constant BIT argument. -+ (atomic_bit_test_set): Likewise. -+ * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise. -+ (atomic_bit_set): Likewise. Use 1UL in case that BIT might be >= 32. -+ For quadword case, use "i" constraint if __builtin_constant_p and < 32 -+ or "r" constraint otherwise. -+ -+ * configure.in: Move AC_PROG_CC and other program-finding before all -+ the version checks. -+ * configure: Regenerated. -+ -+2003-03-21 Alexandre Oliva -+ -+ * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke -+ unaligned copying of 8-15 bytes. From Chris Demetriou -+ . Fix label names. -+ * sysdeps/mips/mips64/memset.S: Fix label names. Make similar -+ change as to memcpy.S. -+ * sysdeps/mips/memcpy.S: Formatting changes. -+ * sysdeps/mips/memset.S: Likewise. -+ -+2003-03-21 Roland McGrath -+ -+ * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon. -+ -+2003-03-21 Alexandre Oliva -+ -+ * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New. -+ * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments. -+ -+2003-03-21 Roland McGrath -+ -+ * sysdeps/i386/i486/bits/atomic.h -+ (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling -+ version of the macro to avoid compile-time warnings. -+ [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above. -+ (atomic_exchange_and_add, atomic_add): Fix name and usage of it. -+ (atomic_increment, atomic_decrement): Likewise. -+ -+2003-03-21 Ulrich Drepper -+ -+ * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints. -+ * sysdeps/i386/i486/bits/atomic.h: Likewise. -+ -+2003-03-21 Roland McGrath -+ -+ * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix. -+ -+2003-03-20 Ulrich Drepper -+ -+ * include/atomic.h: Define atomic_compare_and_exchange_val_acq, -+ atomic_compare_and_exchange_val_rel, -+ atomic_compare_and_exchange_bool_acq, and -+ atomic_compare_and_exchange_bool_rel instead of -+ atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel. -+ * sysdeps/i386/i486/bits/atomic.h: Define -+ __arch_compare_and_exchange_val_*_acq instead of -+ __arch_compare_and_exchange_*_acq. -+ * sysdeps/x86_64/bits/atomic.h: Likewise. -+ * sysdeps/ia64/bits/atomic.h: Define -+ __arch_compare_and_exchange_bool_*_acq instead of -+ __arch_compare_and_exchange_*_acq. -+ * sysdeps/powerpc/bits/atomic.h: Likewise. -+ * sysdeps/s390/bits/atomic.h: Likewise. -+ * gmon/mcount.c: Adjust for new form of compare&exchange macros. -+ * malloc/set-freeres.c: Likewise. -+ * nscd/cache.c: Likewise. -+ * stdlib/cxa_finalize.c: Likewise. -+ * sysdeps/unix/sysv/linux/getsysstats.c: Likewise. -+ -+2003-03-20 Alexandre Oliva -+ -+ * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs. -+ * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust. -+ * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise. -+ -+ * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset -+ into high and low halves on n64. -+ * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise. -+ * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise. -+ -+2003-03-20 Ulrich Drepper -+ -+ * include/atomic.h (atomic_decrement_if_positive): Adjust for the -+ correct atomic_compare_and_exchange_acq semantics. -+ -+2003-03-20 Alexandre Oliva -+ -+ * sysdeps/mips/ieee754.h: Remove excess #endif. -+ -+2003-03-20 Roland McGrath -+ -+ * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused -+ variable. Remove superfluous memory clobber. -+ -+ * include/atomic.h: Syntax braino fix. -+ -+ * posix/tst-nice.c (do_test): Use %m formats instead of printing errno -+ in decimal. Don't bail if niced at start. Just check that nice call -+ bumps the total at all. -+ -+2003-03-20 Alexandre Oliva -+ -+ * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers, -+ including pc, gp, sp and fp, as long long. -+ * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux. -+ * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments. -+ Add gp argument, and set gp in the jmpbuf to it. -+ * sysdeps/mips/setjmp_aux.c: Revert to o32-only. -+ -+2003-03-20 Ulrich Drepper -+ -+ * include/atomic.h: Define atomic_exchange and -+ atomic_decrement_if_positive if not already defined. Add some -+ __builtin_expect. -+ * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange. -+ * sysdeps/x86_64/bits/atomic.h: Likewise. -+ * sysdeps/ia64/bits/atomic.h: Pretty printing. Define atomic_exchange. -+ * sysdeps/powerpc/bits/atomic.h: Pretty printing. Define -+ atomic_exchange, atomic_exchange_and_add, and -+ atomic_decrement_if_positive -+ -+2003-03-20 Alexandre Oliva -+ -+ * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend -+ with a single instruction. -+ -+ * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define -+ properly for n64. -+ (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr -+ type. -+ (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf -+ Word before comparing with gotsym. Take reloc_addr argument as -+ void*. Remove the code added for the compiler to drop any -+ alignment assumptions. -+ -+2003-03-19 Ulrich Drepper -+ -+ * Makefile (distribute): Add include/atomic.h and bits/atomic.h. -+ * include/atomic.h: New file. -+ * sysdeps/i386/i486/bits/atomic.h: New file. -+ * sysdeps/x86_64/bits/atomic.h: New file. -+ * sysdeps/s390/bits/atomic.h: New file. -+ * sysdeps/sh/bits/atomic.h: New file. -+ * sysdeps/ia64/bits/atomic.h: New file. -+ * sysdeps/powerpc/bits/atomic.h: New file. -+ * sysdeps/generic/bits/atomic.h: New file. -+ * sysdeps/i386/i486/atomicity.h: Removed. -+ * sysdeps/x86_64/atomicity.h: Removed. -+ * sysdeps/s390/s390-32/atomicity.h: Removed. -+ * sysdeps/s390/s390-64/atomicity.h: Removed. -+ * sysdeps/ia64/atomicity.h: Removed. -+ * sysdeps/powerpc/powerpc32/atomicity.h: Removed. -+ * sysdeps/powerpc/powerpc64/atomicity.h: Removed. -+ * elf/dl-profile.c: Use atomic.h instead of atomicity.h. Adjust -+ use of macros from atomicity.h to new names and semantics. -+ * gmon_mcount.c: Likewise. -+ * malloc/set-freeres.c: Likewise. -+ * nscd/cache.c: Likewise. -+ * stdlib/cxa_finalize.c: Likewise. -+ * sysdeps/unix/sysv/linux/getsysstats.c: Likewise. -+ -+2003-03-19 Alexandre Oliva -+ -+ * sysdeps/mips/ieee754.h: New file, suitable to replace both -+ ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept -+ mips-specific for now. -+ -+2003-03-19 Ulrich Drepper -+ -+ * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle -+ hexdigits correctly. Reported by Fred Tydeman . -+ * stdlib/tst-strtod.c: Add test for the bug. -+ -+ * posix/tst-nice.c (do_test): Remove invalid of return value. -+ Don't run test if initial level != 0. -+ -+2003-03-19 Amos Waterland -+ -+ * posix/tst-nice.c: New file. -+ * posix/Makefile (tests): Add tst-nice. -+ -+2003-03-18 Roland McGrath -+ -+ * abilist: New directory of libfoo.abilist files maintained using -+ scripts/merge-abilist.awk and "make update-abi" rules. -+ * Makefile (distribute): Add abilist/*.abilist. -+ * Makerules [$(build-shared) = yes] [$(subdir)] (tests): -+ Depend on check-abi. -+ -+ * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER. -+ * configure: Regenerated. -+ -+ * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name. -+ -+2003-03-18 Ulrich Drepper -+ -+ * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK -+ correctly. -+ -+2003-03-18 Steven Munroe -+ -+ * sysdeps/powerpc/powerpc64/memcpy.S: New file. -+ -+2003-03-18 Ulrich Drepper -+ -+ * Versions.def: Add GLIBC_2.3.3 for libpthread. -+ -+2003-03-17 Ulrich Drepper -+ -+ * sysdeps/generic/libc-start.c [!SHARED && -+ !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly. -+ -+2003-03-17 Roland McGrath -+ -+ * include/ctype.h: Revert last change. -+ -+2003-03-17 Ulrich Drepper -+ -+ * argp/tst-argp1.c: Use test-skeleton.c. -+ * locale/tst-C-locale.c: Likewise. -+ -+2003-03-17 Alexandre Oliva -+ -+ * sysdeps/mips/mips64/Implies: Move wordsize-64 to... -+ * sysdeps/mips/mips64/n64/Implies: New file. -+ * sysdeps/mips/mips64/n64/Makefile: New file. -+ * sysdeps/mips/mips64/n64/el/bits/endian.h: New file. -+ * sysdeps/mips/mips64/n32/Implies: New file. -+ * sysdeps/mips/mips64/n32/Makefile: New file. -+ * sysdeps/mips/mips64/n32/el/bits/endian.h: New file. -+ * sysdeps/unix/mips/mips64/n32/sysdep.h: New file. -+ * sysdeps/unix/mips/mips64/n64/sysdep.h: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file. -+ -+ * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use -+ lib64 for mips64/n64 and lib32 for mips64/n32. -+ (ldd_rewrite_script): Needed for all mips64 configurations. -+ * sysdeps/unix/sysv/linux/configure: Rebuilt. -+ * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file. -+ * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file. -+ -+ * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as -+ well. -+ -+ * sysdeps/unix/sysv/linux/mips/configure.in: New. Pre-process -+ asm/unistd.h into asm-unistd.h. -+ * sysdeps/unix/sysv/linux/mips/configure: Generated. -+ * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing -+ of syscall list. -+ * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file. -+ * sysdeps/unix/sysv/linux/mips/clone.S: Don't include -+ asm/unistd.h. -+ -+ * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file. -+ * sysdeps/unix/sysv/linux/mips/ptrace.c: New file. Use long -+ long type for registers on n32. -+ -+ * sysdeps/mips/bits/wordsize.h: New file, appropriate for all -+ 3 ABIs. -+ * sysdeps/mips/mips64/gmp-mparam.h: New file. Define -+ BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs. -+ * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros. -+ (__sigsetjmp_aux): Use them. Adjust for all 3 ABIs. -+ * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs. -+ * sysdeps/unix/mips/brk.S: Likewise. -+ * sysdeps/unix/mips/sysdep.S: Likewise. -+ * sysdeps/unix/sysv/linux/mips/clone.S: Likewise. -+ * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise. -+ * sysdeps/mips/sys/ucontext.h: Likewise. -+ * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise. -+ * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise. -+ * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise. -+ * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise. -+ * sysdeps/mips/mips64/bsd-setjmp.S: Likewise. -+ * sysdeps/mips/mips64/setjmp.S: Likewise. -+ * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete. -+ * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for -+ 64-bit types. -+ -+2003-03-16 Ulrich Drepper -+ -+ * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here, -+ not at function level. -+ * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise. -+ -+2003-03-15 Roland McGrath -+ -+ * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t -+ * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise. -+ * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise. -+ * nis/nis_table.c (__create_ib_request): Likewise. -+ -+ * posix/fnmatch_loop.c: Add casts for signedness. -+ * nss/nss_files/files-hosts.c: Likewise. -+ * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise. -+ * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN. -+ * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT. -+ -+ * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND, -+ get errors into the log file. -+ (libc_cv_broken_visibility_attribute): Likewise. -+ (libc_cv_broken_alias_attribute): Likewise. -+ (libc_cv_asm_weak_directive): Likewise. -+ (libc_cv_need_minus_P): Likewise. -+ (libc_cv_dot_text): Likewise. -+ (libc_cv_asm_global_directive): Likewise. -+ (libc_cv_asm_type_prefix): Likewise. -+ * configure: Regenerated. -+ -+ * nscd/cache.c (cache_search): Give first arg type `request_type'. -+ * nscd/nscd.h: Update decl. -+ -+ * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness. -+ * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise. -+ * elf/dl-close.c (_dl_close): Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t -+ * io/fts.c (fts_build): Likewise. -+ * elf/cache.c (add_to_cache): Likewise. -+ * locale/programs/locarchive.c (show_archive_content): Likewise. -+ -+ * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use. -+ -+ * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3 -+ happy. -+ (__ctype_toupper_loc, __ctype_tolower_loc): Likewise. -+ -+2003-03-15 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux -+ code for most parts. -+ -+2003-03-15 Roland McGrath -+ -+ * sysdeps/unix/sysv/linux/i386/system.c: Moved to ... -+ * sysdeps/unix/sysv/linux/system.c: ... here. -+ (FORK): Don't #define if already #define'd. -+ * sysdeps/unix/sysv/linux/s390/system.c: File removed. -+ * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]: -+ (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64. -+ -+ * dlfcn/tst-dlinfo.c: New file. -+ * dlfcn/Makefile (tests): Add tst-dlinfo. -+ ($(objpfx)tst-dlinfo): New target. -+ -+ * dlfcn/dlinfo.c: New file. -+ * dlfcn/Makefile (libdl-routines): Add it. -+ * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo. -+ * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo. -+ [__USE_GNU] (RTLD_DI_*): New enum constants. -+ [__USE_GNU] (Dl_serpath, Dl_serinfo): New types. -+ * elf/dl-load.c (cache_rpath): New inline function. -+ (_dl_map_object): Use it. -+ (_dl_rtld_di_serinfo): New function. -+ * sysdeps/generic/ldsodefs.h: Declare it. -+ * elf/Versions (ld: GLIBC_PRIVATE): Add it. -+ -+ * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it. -+ (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG) -+ (INIT_MAIN_ARGS): Define, and #include . -+ (__libc_start_main): Just call the generic one for most of the work. -+ -+ * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a -+ static function by that name instead of BP_SYM (__libc_start_main). -+ [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument. -+ [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN. -+ [INIT_MAIN_ARGS]: Give INIT the same args as MAIN. -+ -+ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]: -+ Use this macro for extra AT_* cases. -+ * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV): -+ New macro, guts from ... -+ (__aux_init_cache): ... here, function removed. -+ (DL_PLATFORM_INIT): Don't define this. -+ -+ * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss. -+ * sysdeps/powerpc/powerpc64/memset.S: Likewise. -+ -+ * Versions.def (libthread_db): Add GLIBC_2.3.3 set. -+ -+2003-03-14 Roland McGrath -+ -+ * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it. -+ -+2003-03-14 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo. -+ -+ * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include -+ sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c. -+ -+2003-03-14 Alexandre Oliva -+ -+ * sysdeps/mips/fpu/bits/mathdef.h: New. -+ (__NO_LONG_DOUBLE_MATH): Define for o32. -+ -+ * sysdeps/mips/sys/asm.h: Formatting changes. -+ (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs. -+ (CPADD): Define for all of them. -+ (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64, -+ SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP, -+ NARGSAVE): Define per ABI spec. -+ (END): Don't redefine. -+ (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA, -+ LONG_SRAV): Remove duplicate definitions. -+ (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI, -+ PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL, -+ PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32. -+ (PTR_LA): Define for all 3 ABIs. -+ -+ * sysdeps/mips/dl-machine.h: Include sys/asm.h. -+ (elf_machine_matches_host): Prevent linking of o32 and n32 -+ together. -+ (elf_machine_dynamic): Document assumption on $gp. -+ (STRINGXP, STRINGXV, STRINGV_): New macros. -+ (elf_machine_load_address): Use them to stringize PTR_LA and -+ PTR_SUBU. -+ (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS, -+ ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in... -+ (_dl_runtime_resolve): Adjust it for all 3 ABIs. -+ (__dl_runtime_resolve): Cast the symtab initializer to the -+ right type. -+ (RTLD_START): Use it. Adjust it for all 3 ABIs. -+ (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP. -+ Handle 64-bit R_MIPS_REL composite relocation and accept -+ R_MIPS_64 relocations to shift addend size to 64 bits. -+ Document assumption regarding local GOT entries. Document -+ backward-compatibility departing from the ABI behavior in -+ applying relocations that reference section symbols, no longer -+ used. Support relocations to mis-aligned offsets. -+ * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete. -+ -+ * sysdeps/unix/sysv/linux/mips/readelflib.c: New file. -+ -+ * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h -+ (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG. -+ * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and -+ restore_rt functions. Use them. -+ -+ * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't -+ .set mips2 on new abis. -+ -+2003-03-13 Ulrich Drepper -+ -+ * posix/getconf.c: Recognize POSIX2_SYMLINKS. -+ * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS. -+ * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS. -+ * sysdeps/posix/pathconf.c: Likewise. -+ * sysdeps/unix/sysv/linux/fpathconf.c: Likewise. -+ * sysdeps/unix/sysv/linux/pathconf.c: Likewise. -+ * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks. -+ -+ * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic -+ words. -+ -+2003-03-14 Alexandre Oliva -+ -+ * include/gmp.h: Include/gmp-mparam.h. -+ * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and -+ gmp-impl.h. -+ -+ * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if -+ ELF_MACHINE_NO_RELA is set. -+ * elf/rtld.c (dl_main): No prelink support for REL-only. -+ -+ * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32, -+ FLAG_MIPS64_LIBN64): Define. -+ * elf/cache.c (print_entry): Handle mips64 n32 and n64. -+ -+ * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis. -+ * sysdeps/mips/memset.S: Likewise. -+ * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11 -+ depending on the ABI. -+ -+ * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add): -+ Don't .set mips2 on new abi. -+ (compare_and_swap): Likewise. Support 64-bit longs on n64. -+ -+ * stdlib/fpioconst.h: Include gmp.h with angle brackets. -+ -+2003-03-13 Roland McGrath -+ -+ * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs -+ found. Reported by Alexandre Oliva . -+ -+2003-03-13 Alexandre Oliva -+ -+ * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit -+ literals long long. -+ * stdlib/fpioconst.c: Likewise. -+ * stdlib/strtod.c: Likewise. -+ -+ * sysdeps/mips/add_n.S: Use L macro for local labels. -+ * sysdeps/mips/addmul_1.S: Likewise. -+ * sysdeps/mips/lshift.S: Likewise. -+ * sysdeps/mips/memcpy.S: Likewise. -+ * sysdeps/mips/memset.S: Likewise. -+ * sysdeps/mips/mul_1.S: Likewise. -+ * sysdeps/mips/rshift.S: Likewise. -+ * sysdeps/mips/sub_n.S: Likewise. -+ * sysdeps/mips/submul_1.S: Likewise. -+ * sysdeps/mips/mips64/add_n.S: Likewise. -+ * sysdeps/mips/mips64/addmul_1.S: Likewise. -+ * sysdeps/mips/mips64/lshift.S: Likewise. -+ * sysdeps/mips/mips64/mul_1.S: Likewise. -+ * sysdeps/mips/mips64/rshift.S: Likewise. -+ * sysdeps/mips/mips64/sub_n.S: Likewise. -+ * sysdeps/mips/mips64/submul_1.S: Likewise. -+ * sysdeps/unix/mips/sysdep.h: Define L() according to ABI -+ conventions. Define END as in sys/asm.h. -+ * sysdeps/unix/mips/sysdep.S: Likewise. -+ * sysdeps/unix/mips/wait.S: Likewise. -+ * sysdeps/unix/sysv/linux/mips/clone.S: Likewise. -+ -+ * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double): -+ Cast shifted values that may be too narrow to mp_limb_t. -+ * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double): -+ Likewise. -+ * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float): -+ Likewise. -+ * sysdeps/ieee754/ldbl-128/ldbl2mpn.c -+ (__mpn_extract_long_double): Likewise. -+ * sysdeps/ieee754/ldbl-128/mpn2ldbl.c -+ (__mpn_construct_long_double): Likewise. -+ * sysdeps/ieee754/ldbl-96/ldbl2mpn.c -+ (__mpn_extract_long_double): Likewise. -+ * sysdeps/ieee754/ldbl-96/mpn2ldbl.c -+ (__mpn_construct_long_double): Likewise. -+ -+2003-03-13 Roland McGrath -+ -+ * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line -+ entries in the map file match too. -+ -+2003-03-13 Guido Guenther -+ -+ * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local -+ label .Lthread_start since current binutils don't allow branches -+ to globally visible symbols. -+ -+2003-03-13 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN, -+ ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3, -+ ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define. -+ (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it. Make syscall arguments -+ clobbered by the syscall. -+ (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5, -+ ASM_ARGS_6): Change constraints from r to index of corresponding -+ output register. -+ * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap -+ ptid and ctid to match kernel. -+ * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise. -+ -+2003-03-12 Steven Munroe -+ -+ * sysdeps/powerpc/powerpc64/elf/configure.in: Remove -+ AC_DEFINE(PI_STATIC_AND_HIDDEN). Not supported for PowerPC64. -+ * sysdeps/powerpc/powerpc64/elf/configure: Regenerated. -+ -+2003-03-11 Roland McGrath -+ -+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): -+ Check SYM_MAP rather than SYM as definedness check. -+ Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs. -+ Don't handle R_PPC64_REL24 reloc. -+ Mostly from Steven Munroe . -+ -+ * sysdeps/powerpc/powerpc64/dl-machine.h -+ [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a -+ block, so we cover all the TPREL16* flavors without 6 ||s. -+ [USE_TLS] (elf_machine_tprel): New function. -+ (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc, -+ and handle TPREL16 relocs too. Return rather than break for DTPREL64. -+ Mostly from Steven Munroe . -+ -+2003-03-11 Ralf Baechle -+ -+ * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal -+ instead of jalr to invoke subroutine so restoring the $gp register -+ will work properly. -+ -+2003-03-11 Martin Schwidefsky -+ -+ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define -+ to __NR_pread if not defined. -+ (__NR_pwrite64): Define to __NR_pwrite if not defined. -+ -+2003-03-11 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/ia64/system.c: New file. -+ * sysdeps/unix/sysv/linux/kernel-features.h -+ (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with -+ kernel >= 2.5.64. -+ -+2003-03-11 Jakub Jelinek -+ -+ * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1, -+ allocate space even for the trailing '/'. -+ Reported by John Reiser . -+ -+ * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6, -+ ASM_CLOBBERS_6): Define. -+ (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6. -+ * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments -+ to match IA-32 order. -+ * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment. -+ -+2003-03-10 Steven Munroe -+ -+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7. -+ Copy extra params for NPTL to registers used in clone syscall. -+ -+2003-03-10 Martin Schwidefsky -+ -+ * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system -+ call names for pread and pwrite. -+ -+2003-03-10 Roland McGrath -+ -+ * dlfcn/Makefile (libdl-routines): Add dladdr1. -+ * dlfcn/dladdr1.c: New file. -+ * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1. -+ [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants. -+ * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and -+ a const ElfNN_Sym ** to fill in. -+ * include/dlfcn.h: Update decl. Include . -+ * dlfcn/dladdr.c (dladdr): Update caller. -+ * malloc/mtrace.c (tr_where): Likewise. -+ * sysdeps/generic/elf/backtracesyms.c: Likewise. -+ * sysdeps/generic/elf/backtracesymsfd.c: Likewise. -+ * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1. -+ * Versions.def (libdl): Define GLIBC_2.3.3 set. -+ -+ * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for -+ assembler command. -+ * sysdeps/unix/Makefile (compile-syscall): New variable. -+ Pass -g0 to compiler for assembling syscall stubs from stdin. -+ -+ * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO] -+ (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END): -+ Define these to do nothing. -+ -+ * configure.in: New check for -g on .S files. -+ * configure: Regenerated. -+ * config.make.in (have-cpp-asm-debuginfo): New variable. -+ * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef. -+ * Makeconfig (ASFLAGS): New variable, if undefined and -+ $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS). -+ * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS). -+ -+2003-03-09 Roland McGrath -+ -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args -+ used by NPTL on new kernels. From Paul Mackerras . -+ -+2003-03-09 Ulrich Drepper -+ -+ * po/fi.po: Update from translation team. -+ * po/ca.po: Likewise. -+ * po/da.po: Likewise. -+ -+2003-03-08 Ulrich Drepper -+ -+ * rt/tst-aio7.c (do_test): Change BYTES into a #define. -+ -+2003-03-07 Ulrich Drepper -+ -+ * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too. -+ -+ * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment. -+ -+2003-03-07 Roland McGrath -+ -+ * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo. -+ * sysdeps/s390/s390-64/sysdep.h (L): Likewise. -+ -+2003-03-04 Guido Guenther -+ -+ * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded -+ stubs, we have INLINE_SYSCALL. -+ * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE, -+ MAP_NONBLOCK. -+ -+2003-03-06 Roland McGrath -+ -+ * rt/tst-aio7.c (do_test): Revert last change. Instead, give CB1 -+ permanent extent and add a comment about testing its implicit teardown. -+ -+2003-03-06 Martin Schwidefsky -+ -+ * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope. -+ -+2003-03-05 Ulrich Drepper -+ -+ * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix -+ reversed __builtin_expect expectation. -+ -+2003-03-05 Roland McGrath -+ -+ * stdio-common/sscanf.c: Use prototype defn with ... syntax. -+ * libio/swscanf.c: Likewise. -+ * libio/swprintf.c: Likewise. -+ -+2003-03-04 Roland McGrath -+ -+ * sysdeps/powerpc/powerpc64/dl-machine.h: Include . -+ (elf_machine_rela): Always use RESOLVE_MAP, needed for -+ R_PPC64_JMP_SLOT as well as TLS cases. -+ (BIT_INSERT): Move parenthesis where it ought to have been. -+ Reported by Steven Munroe . -+ -+ * posix/confstr.c (confstr): Correct STRING_LEN values for -+ _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing -+ break. Reported by Alexandre Julliard . -+ -+2003-03-04 Jakub Jelinek -+ -+ * sysdeps/ia64/fpu/libm-test-ulps: Regenerated. -+ -+2003-03-04 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new -+ clone parameters. -+ -+ * po/sv.po: Update from translation team. -+ -+2003-03-04 Andreas Jaeger -+ Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments. -+ -+2003-03-03 Ulrich Drepper -+ -+ * sysdeps/generic/dl-sysdep.h: Add double include protection. -+ -+ * po/tr.po: Update from translation team. -+ -+ * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there -+ are holes between the segments. Only call mprotect to set -+ proection to PROT_NONE if there are some. -+ -+ * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE. -+ Update comment. -+ -+ * include/sched.h (__clone2): Use ... instead of adding all the -+ new parameters. -+ -+2003-03-03 Roland McGrath -+ -+ * elf/dl-load.c (struct filebuf): Fix typo in last change. -+ -+ * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define -+ PI_STATIC_AND_HIDDEN. -+ -+2003-03-03 Ian Wienand -+ -+ * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone -+ flags. -+ * include/sched.h: Update clone2 prototype. -+ -+2003-03-03 Andreas Jaeger -+ -+ * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition. -+ (llrint): Use it to correct return type. -+ (lrint): Likewise. -+ (lround): Likewise. -+ (llround): Likewise. -+ -+2003-03-03 Ulrich Drepper -+ -+ * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640 -+ byte filebuf size. -+ -+ * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor -+ if ccs parameter isn't valid. Reported by Andreas Schwab. -+ -+2003-03-03 Martin Schwidefsky -+ -+ * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support -+ for system call numbers > 255. -+ * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL, -+ INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0, -+ INTERNAL_SYSCALL): Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL, -+ INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0, -+ INTERNAL_SYSCALL): Likewise. -+ -+2003-03-03 Martin Schwidefsky -+ -+ * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv -+ array if it is the initial dtv. -+ -+2003-03-03 Ulrich Drepper -+ -+ * po/es.po: Update from translation team. -+ * po/fr.po: Likewise. -+ * po/gl.po: Likewise. -+ * po/sk.po: Likewise. -+ * po/sv.po: Likewise. -+ -+ * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry. -+ * misc/sys/mman.h: Add prototype for remap_file_pages. -+ * sysdeps/generic/remap_file_pages.c: New file. -+ * misc/Makefile (routines): Add remap_file_pages. -+ * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages. -+ -+ * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE -+ and MAP_NONBLOCK. -+ * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise -+ * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise. -+ * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise. -+ * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise. -+ * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise. -+ * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise. -+ * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise. -+ -+2003-03-03 Roland McGrath -+ -+ * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change. -+ * sysdeps/ia64/dl-machine.h: Likewise. -+ * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from -+ argument type. -+ * sysdeps/ia64/dl-lookupcfg.h: Update decl. -+ -+ * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias. -+ * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias. -+ * locale/Versions (libc: GLIBC_2.3): Move those to ... -+ * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file. -+ * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise. -+ * Versions.def (libc): Add GLIBC_2.3.3 set. -+ -+ * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg. -+ * sysdeps/ia64/dl-machine.h: Update decl. -+ -+2003-03-03 Andreas Jaeger -+ -+ * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace. -+ -+2003-03-02 Roland McGrath -+ -+ * scripts/abilist.awk: Reject data items with apparent 0 size. -+ -+ * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar -+ after foo.* as if it were a duplicate. -+ -+ * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk. -+ -+2003-03-02 Ulrich Drepper -+ -+ * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes. -+ -+ * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC. -+ * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only -+ if not already defined. Use SYSDEP_GETRES to allow other files to -+ provide alternative implementations. -+ * sysdeps/unix/sysv/linux/clock_getres.c: New file -+ * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only -+ if not already defined. Use SYSDEP_GETTIME to allow other files to -+ provide alternative implementations. -+ * sysdeps/unix/sysv/linux/clock_gettime.c: New file. -+ * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only -+ if not already defined. Use SYSDEP_GETTIME to allow other files to -+ provide alternative implementations. -+ * sysdeps/unix/sysv/linux/clock_settime.c: New file. -+ * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow -+ other files to provide alternative implementations. Rearrange -+ tests for invalid parameters. -+ * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file. -+ * sysdeps/unix/sysv/linux/sysconf.c: New file. -+ * sysdeps/unix/sysv/linux/kernel-features.h: Define -+ __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up. -+ * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define -+ _POSIX_MONOTONIC_CLOCK. -+ -+2003-03-02 Roland McGrath -+ -+ * scripts/merge-abilist.awk: More checks for bogus input. -+ Uniquify duplicate config names. -+ -+ * scripts/abilist.awk: Don't distinguish weak symbols in normal output. -+ -+ * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed -+ from dl_reloc_overflow, make global. -+ (__process_machine_rela): Update callers. -+ * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow. -+ Add attribute_hidden to __process_machine_rela decl. -+ (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs. -+ -+ * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const -+ variable. -+ -+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt): -+ Don't use weak_extern for dl_rtld_map. Instead check only if [SHARED]. -+ (elf_machine_rela): Clean up. -+ -+ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up. -+ -+ PowerPC TLS support contributed by Paul Mackerras . -+ * sysdeps/powerpc/powerpc32/elf/configure.in: New file. -+ * sysdeps/powerpc/powerpc32/elf/configure: New generated file. -+ * elf/tls-macros.h [__powerpc__ && !__powerpc64__] -+ (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them. -+ * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support -+ new relocs for TLS. -+ -+ * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these -+ macros out of [SHARED]. -+ (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros. -+ -+ * elf/elf.h: Define R_PPC_* relocs for TLS support. -+ Clean up R_PPC64_* macro definition comments. -+ -+ * configure.in: In "running configure fragment for" message, -+ omit $srcdir from the name if we prepended it. -+ * configure: Regenerated. -+ -+ * elf/dl-reloc.c (allocate_static_tls): Fix calculations. -+ From Jakub Jelinek . -+ -+ * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change, -+ which duplicated the O_DIRECT defn. -+ -+2003-03-01 GOTO Masanori -+ -+ * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived -+ random functions. -+ -+2003-03-01 Andreas Schwab -+ -+ * resolv/Makefile (tests): Don't depend on -+ $(objpfx)mtrace-tst-leaks when cross compiling. -+ -+ * sysdeps/m68k/dl-machine.h (_dl_start_user): Access -+ __libc_stack_end through GOT since it is a global symbol. -+ - 2003-03-01 GOTO Masanori - - * argp/argp.h: Fix a typo. -@@ -5561,6 +11477,16 @@ - (common-mostlyclean, common-clean): Clean up rtld-* files. - * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules. - -+2003-05-20 Jakub Jelinek -+ -+ * elf/dynamic-link.h (elf_get_dynamic_info): Add temp argument. -+ If temp != NULL, copy dynamic entries which need relocation to temp -+ array before relocating. -+ (DL_RO_DYN_TEMP_CNT): Define. -+ * elf/dl-load.c (_dl_map_object_from_fd): Adjust caller. -+ * elf/rtld.c (_dl_start): Likewise. -+ (dl_main): Likewise. Add dyn_temp static variable. -+ - 2002-10-11 Roland McGrath - - * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in ---- glibc-2.3.2/Makeconfig 2003-01-06 00:31:36.000000000 -0500 -+++ glibc-2.3.2/Makeconfig 2003-09-19 22:37:01.000000000 -0400 -@@ -83,6 +83,12 @@ - # Get the values defined by options to `configure'. - include $(common-objpfx)config.make - -+# What flags to give to sources which call user provided callbacks -+uses-callbacks = $(exceptions) -+ -+# What flags to give to tests which test stack alignment -+stack-align-test-flags = -+ - # We have a special subdir for each binary format. - # For now, only ELF is fully supported. - ifeq ($(elf),yes) -@@ -505,7 +511,7 @@ - link-extra-libs-bounded = $(foreach lib,$(LDLIBS-$(@F:%-bp=%)),$(common-objpfx)$(lib)_b.a) - - ifndef gnulib --gnulib := -lgcc -+gnulib := -lgcc -lgcc_eh - endif - ifeq ($(elf),yes) - +preinit = $(addprefix $(csu-objpfx),crti.o) -@@ -621,7 +627,7 @@ - +includes = -I$(..)include -I. \ - $(patsubst %/,-I%,$(objpfx)) $(patsubst %/,-I%,$(..)) \ - $(libio-include) $(includes) \ -- $(+sysdep-includes) $(last-includes) $(sysincludes) -+ $(+sysdep-includes) $(sysincludes) - - # Since libio has several internal header files, we use a -I instead - # of many little headers in the include directory. -@@ -669,6 +675,8 @@ - libtype.os := lib%_pic.a - # This can be changed by a sysdep makefile - pic-ccflag = -fPIC -+# This one should always stay like this unless there is a very good reason. -+PIC-ccflag = -fPIC - endif - ifeq (yes,$(build-profile)) - # Under --enable-profile, we will build a static library of profiled objects. -@@ -711,11 +719,20 @@ - # Must build the routines as PIC, though, because they can end up in (users') - # shared objects. We don't want to use CFLAGS-os because users may, for - # example, make that processor-specific. --CFLAGS-.oS = $(CFLAGS-.o) $(pic-ccflag) -+CFLAGS-.oS = $(CFLAGS-.o) $(PIC-ccflag) - CPPFLAGS-.oS = $(CPPFLAGS-.o) -DPIC -DLIBC_NONSHARED=1 - libtype.oS = lib%_nonshared.a - endif - -+# The assembler can generate debug information too. -+ifndef ASFLAGS -+ifeq ($(have-cpp-asm-debuginfo),yes) -+ASFLAGS := $(filter -g%,$(CFLAGS)) -+else -+ASFLAGS := -+endif -+endif -+ASFLAGS += $(ASFLAGS-config) - - +gnu-stabs = $(shell echo>&2 '*** BARF ON ME') - -@@ -921,11 +938,11 @@ - all-Depend-files = $(wildcard $(..)*/Depend) - $(common-objpfx)sysd-sorted: $(..)scripts/gen-sorted.awk $(all-Depend-files) \ - $(common-objpfx)sysd-dirs $(..)Makeconfig -- { { dirs='$(patsubst $(..)%/Depend,$(..)%,$(filter %/Depend,$^))';\ -+ { { dirs='$(patsubst $(..)%/Depend,%,$(filter %/Depend,$^))'; \ - for d in $$dirs; do \ - while read on; do \ - echo "depend $$d $$on"; \ -- done < $$d/Depend; \ -+ done < $(..)$$d/Depend; \ - done; \ - for f in $(all-subdirs); do \ - echo $$f; \ ---- glibc-2.3.2/Makefile 2003-02-21 01:22:51.000000000 -0500 -+++ glibc-2.3.2/Makefile 2003-09-19 22:37:01.000000000 -0400 -@@ -228,6 +228,18 @@ - tests-clean: - @$(MAKE) subdir_testclean no_deps=t - -+tests: $(objpfx)c++-types-check.out -+ifneq ($(CXX),no) -+ifneq (,$(wildcard scripts/data/c++-types-$(base-machine)-$(config-os).data)) -+$(objpfx)c++-types-check.out: scripts/data/c++-types-$(base-machine)-$(config-os).data -+ scripts/check-c++-types.sh $^ $(CXX) $(filter-out -std=gnu99,$(CFLAGS)) $(CPPFLAGS) > $@ -+else -+$(objpfx)c++-types-check.out: -+ @echo 'WARNING C++ tests not run; create a c++-types-XXX file' -+ @echo "not run" > $@ -+endif -+endif -+ - # The realclean target is just like distclean for the parent, but we want - # the subdirs to know the difference in case they care. - realclean distclean: parent-clean -@@ -274,6 +286,7 @@ - include/shlib-compat.h include/pthread.h Versions.def \ - cppflags-iterator.mk tls.make.c \ - include/stubs-prologue.h include/gnu/stubs.h \ -+ include/atomic.h bits/atomic.h \ - INTERFACE CONFORMANCE NAMESPACE LICENSES \ - $(addprefix scripts/, \ - rellns-sh config.sub config.guess \ -@@ -282,7 +295,11 @@ - gen-sorted.awk abi-versions.awk abilist.awk \ - firstversions.awk documented.sh cpp \ - output-format.sed gen-as-const.awk \ -- merge-abilist.awk extract-abilist.awk) -+ merge-abilist.awk extract-abilist.awk \ -+ rpm2dynsym.sh \ -+ ) \ -+ $(wildcard scripts/data/*.data) \ -+ $(wildcard abilist/*.abilist) - - distribute := $(strip $(distribute)) - generated := $(generated) stubs.h -@@ -318,12 +335,6 @@ - iconvdata/% localedata/% po/% manual/%: - $(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F) - --# This is a special goal for people making binary distributions. Normally --# everybody uses the DES based crypt library but for the distribution we --# need the only-MD5 based one as well. --md5-crypt/libmd5crypt: -- $(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F) -- - # glibc 2.0 contains some header files which aren't used with glibc 2.1 - # anymore. - # These rules should remove those headers ---- glibc-2.3.2/Makefile.in 2000-11-15 18:03:08.000000000 -0500 -+++ glibc-2.3.2/Makefile.in 2002-11-16 08:53:55.000000000 -0500 -@@ -1,4 +1,4 @@ --# Generated from $Id: Makefile.in,v 1.7 2000/11/15 23:03:08 drepper Exp $. -+# Generated from $Id: Makefile.in,v 1.6 1998/02/26 14:51:55 drepper Exp $. - - srcdir = @srcdir@ - ---- glibc-2.3.2/Makerules 2003-02-22 18:23:31.000000000 -0500 -+++ glibc-2.3.2/Makerules 2003-09-19 22:37:01.000000000 -0400 -@@ -125,29 +125,9 @@ - endif # avoid-generated - endif # $(versioning) = yes - -- --# Generating headers for assembly constants. --# We need this defined early to get into before-compile before --# it's used in sysd-rules, below. --$(common-objpfx)%.h $(common-objpfx)%.h.d: $(..)scripts/gen-as-const.awk \ -- %.sym $(before-compile) -- $(AWK) -f $< $(filter %.sym,$^) \ -- | $(CC) -S -o - $(CFLAGS) $(CPPFLAGS) -x c - \ -- -MD -MF $(@:.h=.h.d)T -MT '$(@:.h=.h.d) $(@:.h.d=.h)' \ -- | sed -n 's/^.*@@@name@@@\([^@]*\)@@@value@@@[^0-9Xxa-fA-F-]*\([0-9Xxa-fA-F-][0-9Xxa-fA-F-]*\).*@@@end@@@.*$$/#define \1 \2/p' > $(@:.h.d=.h)T -- sed $(sed-remove-objpfx) $(sed-remove-dotdot) \ -- $(@:.h=.h.d)T > $(@:.h=.h.d)T2 -- rm -f $(@:.h=.h.d)T -- mv -f $(@:.h=.h.d)T2 $(@:.h=.h.d) -- mv -f $(@:.h.d=.h)T $(@:.h.d=.h) --vpath %.sym $(sysdirs) --before-compile += $(gen-as-const-headers:%.sym=$(common-objpfx)%.h) -- -- --# When we have no deps pass doing it, then make sure the subdirectory --# for object files gets created. --ifdef no_deps -+# Make sure the subdirectory for object files gets created. - ifdef objpfx -+ifeq (,$(wildcard $(objpfx).)) - before-compile += $(objpfx). - $(objpfx).: - $(make-target-directory) -@@ -166,26 +146,59 @@ - $(before-compile): - endif - -+# We don't want $(common-objpfx) files to depend on miscellaneous stuff -+# in subdirs. -+ifdef subdir -+common-before-compile := $(filter-out $(objpfx)%,$(before-compile)) -+else -+common-before-compile = $(before-compile) -+endif -+ -+ifndef subdir - # If a makefile needs to do something conditional on something that - # can only be figured out from headers, write a FOO.make.c input - # file that uses cpp contructs and contains @@@ LINE @@@ for each LINE - # to emit in the generated makefile, and use -include $(common-objpfx)FOO.make. --$(common-objpfx)%.make: $(..)%.make.c $(..)Makerules $(before-compile) -+# -+# We only generate these in the top-level makefile, to avoid any weirdness -+# from subdir-specific makefile tweaks creeping in on an update. -+$(common-objpfx)%.make: $(..)%.make.c $(..)Makerules $(common-before-compile) - rm -f $@T $@.dT - (echo '# Generated from $*.make.c by Makerules.'; \ -- SUNPRO_DEPENDENCIES='$@.dT $$(common-objpfx)$*.make' \ - $(CC) $(CFLAGS) $(CPPFLAGS) -E $< \ -+ -MD -MP -MT '$$(common-objpfx)$*.make' -MF $@.dT \ - | sed -n '/@@@/{s/@@@[ ]*\(.*\)@@@/\1/;s/[ ]*$$//p;}'; \ - echo 'common-generated += $(@F)'; \ - sed $(sed-remove-objpfx) $(sed-remove-dotdot) $@.dT; \ - rm -f $@.dT) > $@T - mv -f $@T $@ -+endif - - ifdef subdir --sed-remove-dotdot := -e 's@ *\.\.\/\([^ \]*\)@ $$(..)\1@g' -+sed-remove-dotdot := -e 's@ *\.\.\/\([^ \]*\)@ $$(..)\1@g' \ -+ -e 's@^\.\.\/\([^ \]*\)@$$(..)\1@g' - else --sed-remove-dotdot := -e 's@ *\([^ \/$$][^ \]*\)@ $$(..)\1@g' -+sed-remove-dotdot := -e 's@ *\([^ \/$$][^ \]*\)@ $$(..)\1@g' \ -+ -e 's@^\([^ \/$$][^ \]*\)@$$(..)\1@g' - endif -+ -+ -+# Generating headers for assembly constants. -+# We need this defined early to get into before-compile before -+# it's used in sysd-rules, below. -+$(common-objpfx)%.h $(common-objpfx)%.h.d: $(..)scripts/gen-as-const.awk \ -+ %.sym $(common-before-compile) -+ $(AWK) -f $< $(filter %.sym,$^) \ -+ | $(CC) -S -o - $(CFLAGS) $(CPPFLAGS) -x c - \ -+ -MD -MP -MF $(@:.h=.h.d)T -MT '$(@:.h=.h.d) $(@:.h.d=.h)' \ -+ | sed -n 's/^.*@@@name@@@\([^@]*\)@@@value@@@[^0-9Xxa-fA-F-]*\([0-9Xxa-fA-F-][0-9Xxa-fA-F-]*\).*@@@end@@@.*$$/#define \1 \2/p' > $(@:.h.d=.h)T -+ sed $(sed-remove-objpfx) $(sed-remove-dotdot) \ -+ $(@:.h=.h.d)T > $(@:.h=.h.d)T2 -+ rm -f $(@:.h=.h.d)T -+ mv -f $(@:.h=.h.d)T2 $(@:.h=.h.d) -+ mv -f $(@:.h.d=.h)T $(@:.h.d=.h) -+vpath %.sym $(sysdirs) -+before-compile += $(gen-as-const-headers:%.sym=$(common-objpfx)%.h) - - # Generate an ordered list of implicit rules which find the source files in - # each sysdep directory. The old method was to use vpath to search all the -@@ -193,15 +206,6 @@ - # later directory would be chosen over a .c file in an earlier directory, - # which does not preserve the desired sysdeps ordering behavior. - --# When making the list of .d files to include, we can't know which ones --# have source in .s files, and thus do not in fact need a .d file. --# So we must define rules to make .d files for .s files. --define make-dummy-dep --$(addprefix ln $(common-objpfx)dummy.d ,$(filter-out $(wildcard $@),$@)) --endef --$(common-objpfx)dummy.d: -- echo '# .s files cannot contain includes, so they need no deps.' > $@ -- - # It matters that this set of rules, for compiling from sources in - # the current directory (the $srcdir/$subdir) come before the - # generated sysdep rules in included from sysd-rules below. When -@@ -212,21 +216,18 @@ - endef - object-suffixes-left := $(all-object-suffixes) - include $(o-iterator) --$(objpfx)%.d: %.S $(before-compile); $(+make-deps) - - define o-iterator-doit - $(objpfx)%$o: %.s $(before-compile); $$(compile-command.s) - endef - object-suffixes-left := $(all-object-suffixes) - include $(o-iterator) --$(objpfx)%.d: %.s $(common-objpfx)dummy.d; $(make-dummy-dep) - - define o-iterator-doit - $(objpfx)%$o: %.c $(before-compile); $$(compile-command.c) - endef - object-suffixes-left := $(all-object-suffixes) - include $(o-iterator) --$(objpfx)%.d: %.c $(before-compile); $(+make-deps) - - # Omit the objpfx rules when building in the source tree, because - # objpfx is empty and so these rules just override the ones above. -@@ -238,21 +239,18 @@ - endef - object-suffixes-left := $(all-object-suffixes) - include $(o-iterator) --$(objpfx)%.d: $(objpfx)%.S $(before-compile); $(+make-deps) - - define o-iterator-doit - $(objpfx)%$o: $(objpfx)%.s $(before-compile); $$(compile-command.s) - endef - object-suffixes-left := $(all-object-suffixes) - include $(o-iterator) --$(objpfx)%.d: $(objpfx)%.s $(common-objpfx)dummy.d; $(make-dummy-dep) - - define o-iterator-doit - $(objpfx)%$o: $(objpfx)%.c $(before-compile); $$(compile-command.c) - endef - object-suffixes-left := $(all-object-suffixes) - include $(o-iterator) --$(objpfx)%.d: $(objpfx)%.c $(before-compile); $(+make-deps) - endif - - # System-dependent makefiles can put in `inhibit-sysdep-asm' wildcard -@@ -301,26 +299,6 @@ - echo "\$$(objpfx)ptw-%$$o: $$dir/%.c \$$(before-compile); \ - \$$(compile-command.c)"; \ - done; \ -- $(open-check-inhibit-asm) \ -- echo "\$$(objpfx)%.d: $$dir/%.s \$$(common-objpfx)dummy.d; \ -- \$$(make-dummy-dep)"; \ -- echo "\$$(objpfx)rtld-%.d: $$dir/%.s \$$(common-objpfx)dummy.d; \ -- \$$(make-dummy-dep)"; \ -- echo "\$$(objpfx)ptw-%.d: $$dir/%.s \$$(common-objpfx)dummy.d; \ -- \$$(make-dummy-dep)"; \ -- echo "\$$(objpfx)%.d: $$dir/%.S \$$(before-compile); \ -- \$$(+make-deps)"; \ -- echo "\$$(objpfx)rtld-%.d: $$dir/%.S \$$(before-compile); \ -- \$$(+make-deps)"; \ -- echo "\$$(objpfx)ptw-%.d: $$dir/%.S \$$(before-compile); \ -- \$$(+make-deps)"; \ -- $(close-check-inhibit-asm) \ -- echo "\$$(objpfx)%.d: $$dir/%.c \$$(before-compile); \ -- \$$(+make-deps)"; \ -- echo "\$$(objpfx)rtld-%.d: $$dir/%.c \$$(before-compile); \ -- \$$(+make-deps)"; \ -- echo "\$$(objpfx)ptw-%.d: $$dir/%.c \$$(before-compile); \ -- \$$(+make-deps)"; \ - echo "\$$(objpfx)m_%.S: $$dir/s_%.S; \$$(+make-include-of-dep)"; \ - echo "\$$(objpfx)m_%.c: $$dir/s_%.c; \$$(+make-include-of-dep)"; \ - done; \ -@@ -383,32 +361,20 @@ - endif # $(versioning) = yes - endif # sysd-sorted-done - -- --ifndef compile-command.S --compile-command.S = $(compile.S) $(OUTPUT_OPTION) --endif --ifndef compile-command.s --compile-command.s = $(COMPILE.s) $< $(OUTPUT_OPTION) --endif --ifndef compile-command.c --compile-command.c = $(compile.c) $(OUTPUT_OPTION) --endif -+# Generate .dT files as we compile. -+compile-mkdep-flags = -MD -MP -MF $@.dt -+compile-command.S = $(compile.S) $(OUTPUT_OPTION) $(compile-mkdep-flags) -+compile-command.s = $(COMPILE.s) $< $(OUTPUT_OPTION) $(compile-mkdep-flags) -+compile-command.c = $(compile.c) $(OUTPUT_OPTION) $(compile-mkdep-flags) - - # GCC can grok options after the file name, and it looks nicer that way. - compile.c = $(CC) $< -c $(CFLAGS) $(CPPFLAGS) --compile.S = $(CC) $< -c $(CPPFLAGS) $(S-CPPFLAGS) $(ASFLAGS-$(suffix $@)) --COMPILE.S = $(CC) -c $(CPPFLAGS) $(S-CPPFLAGS) $(ASFLAGS-$(suffix $@)) -+compile.S = $(CC) $< -c $(CPPFLAGS) $(S-CPPFLAGS) \ -+ $(ASFLAGS) $(ASFLAGS-$(suffix $@)) -+COMPILE.S = $(CC) -c $(CPPFLAGS) $(S-CPPFLAGS) \ -+ $(ASFLAGS) $(ASFLAGS-$(suffix $@)) - COMPILE.s = $(filter-out -pipe,$(CC)) -c $(ASFLAGS) - --# If we want to generate MD5 checksums for the sources do this now. --ifeq ($(md5),yes) --generate-md5 = ; rm -f $(@:.d=.md5); \ --$(CC) -E $< $(CFLAGS) $(CPPFLAGS) $($(patsubst .%,%,$(suffix $( $(@:.d=.md5) --else --generate-md5 = --endif -- - # We need this for the output to go in the right place. It will default to - # empty if make was configured to work with a cc that can't grok -c and -o - # together. You can't compile the C library with such a compiler. -@@ -418,14 +384,16 @@ - # the dependency run for C sources. But having it for assembly sources can - # get the wrong predefines. - S-CPPFLAGS = -DASSEMBLER $(asm-CPPFLAGS) -+ - define +make-deps - $(make-target-directory) - $(+mkdep) $< $(if $(filter %.c,$<),$(CFLAGS)) \ -- $(CPPFLAGS) $($(patsubst .%,%,$(suffix $( $(@:.d=.T) -+ $(CPPFLAGS) $($(patsubst .%,%,$(suffix $( $(@:.d=.T) - mv -f $(@:.d=.T) $@ $(generate-md5) - endef -+ - ifneq (,$(objpfx)) - # Continuation lines here are dangerous because they introduce spaces! - define sed-remove-objpfx -@@ -509,17 +477,23 @@ - ifeq (yes,$(elf)) - # binutils only position loadable notes into the first page for binaries, - # not for shared objects --define build-shlib --$(build-shlib-helper) \ -- -o $@.new $(csu-objpfx)abi-note.o -Wl,--verbose \ -- $(LDLIBS-$(@F:lib%.so=%).so) 2>&1 | \ -- sed -e '/^=========/,/^=========/!d;/^=========/d' \ -+$(common-objpfx)shlib.lds: $(common-objpfx)config.make $(..)Makerules -+ $(LINK.o) -shared -Wl,-O1 \ -+ $(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS.so) \ -+ -Wl,--verbose 2>&1 | \ -+ sed > $@T \ -+ -e '/^=========/,/^=========/!d;/^=========/d' \ - -e 's/^.*\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \ -- $(LDSEDCMD-$(@F:lib%.so=%).so) > $@.lds --rm -f $@.new --$(build-shlib-helper) -o $@ -T $@.lds \ -+ -e 's/^.*\*(\.dynbss).*$$/& \ -+ PROVIDE(__start___libc_freeres_ptrs = .); \ -+ *(__libc_freeres_ptrs) \ -+ PROVIDE(__stop___libc_freeres_ptrs = .);/' -+ mv -f $@T $@ -+common-generated += shlib.lds -+ -+define build-shlib -+$(build-shlib-helper) -o $@ -T $(common-objpfx)shlib.lds \ - $(csu-objpfx)abi-note.o $(build-shlib-objlist) --rm -f $@.lds - endef - else - ifneq (,$(findstring aix,$(config-os))) -@@ -547,6 +521,7 @@ - else - define build-module-helper - $(LINK.o) -shared $(static-libgcc) $(sysdep-LDFLAGS) $(config-LDFLAGS) \ -+ $(if $($(@F)-no-z-defs)$(no-z-defs),,-Wl,-z,defs) \ - -B$(csu-objpfx) $(load-map-file) \ - $(LDFLAGS.so) $(LDFLAGS-$(@F:%.so=%).so) \ - -L$(subst :, -L,$(rpath-link)) -Wl,-rpath-link=$(rpath-link) -@@ -559,16 +534,8 @@ - # binutils only position loadable notes into the first page for binaries, - # not for shared objects - define build-module --$(build-module-helper) \ -- -o $@.new $(csu-objpfx)abi-note.o -Wl,--verbose \ -- $(LDLIBS-$(@F:lib%.so=%).so) 2>&1 | \ -- sed -e '/^=========/,/^=========/!d;/^=========/d' \ -- -e 's/^.*\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \ -- > $@.lds --rm -f $@.new --$(build-module-helper) -o $@ -T $@.lds \ -+$(build-module-helper) -o $@ -T $(common-objpfx)shlib.lds \ - $(csu-objpfx)abi-note.o $(build-module-objlist) --rm -f $@.lds - endef - else - ifneq (,$(findstring aix,$(config-os))) -@@ -590,7 +557,7 @@ - - build-module-helper-objlist = \ - $(patsubst %_pic.a,$(whole-archive) %_pic.a $(no-whole-archive),\ -- $(filter-out $(map-file) $(+preinit) $(+postinit),$^)) -+ $(filter-out %.lds $(map-file) $(+preinit) $(+postinit),$^)) - whole-archive := -Wl,--whole-archive - - build-module-objlist = $(build-module-helper-objlist) $(LDLIBS-$(@F:%.so=%).so) -@@ -605,8 +572,6 @@ - LDLIBS-c.so += $(gnulib) - # Give libc.so an entry point and make it directly runnable itself. - LDFLAGS-c.so += -e __libc_main --# Force the backward compatibility EH functions to be linked. --LDFLAGS-c.so += -u __register_frame - # Pre-link the objects of libc_pic.a so that we can locally resolve - # COMMON symbols before we link against ld.so. This is because ld.so - # contains some of libc_pic.a already, which will prevent the COMMONs -@@ -616,12 +581,12 @@ - $(common-objpfx)libc_pic.os: $(common-objpfx)libc_pic.a - $(LINK.o) -nostdlib -nostartfiles -r -o $@ \ - $(LDFLAGS-c_pic.os) -Wl,-d -Wl,--whole-archive $^ --LDSEDCMD-c.so = -e 's/^.*\*(\.dynbss).*$$/& __start___libc_freeres_ptrs = .; *(__libc_freeres_ptrs) __stop___libc_freeres_ptrs = .;/' - # Use our own special initializer and finalizer files for libc.so. - $(common-objpfx)libc.so: $(elfobjdir)/soinit.os \ - $(common-objpfx)libc_pic.os \ - $(elfobjdir)/sofini.os \ -- $(elfobjdir)/interp.os $(elfobjdir)/ld.so -+ $(elfobjdir)/interp.os $(elfobjdir)/ld.so \ -+ $(common-objpfx)shlib.lds - $(build-shlib) - ifeq ($(versioning),yes) - $(common-objpfx)libc.so: $(common-objpfx)libc.map -@@ -689,6 +654,15 @@ - +depfiles := $(addprefix $(objpfx),\ - $(filter-out $(addsuffix .d,$(omit-deps)),\ - $(+depfiles))) -+all-dt-files := $(foreach o,$(object-suffixes-for-libc),$(+depfiles:.d=$o.dt)) -++depfiles := $(patsubst %.dt,%.d,$(wildcard $(all-dt-files))) \ -+ $(wildcard $(all-dt-files:.dt=.d)) -+ -+# This is a funny rule in that it removes its input file. -+%.d: %.dt -+ @sed $(sed-remove-objpfx) $< > $(@:.d=.T) && \ -+ mv -f $(@:.d=.T) $@ && \ -+ rm -f $< - - # Avoid the .h.d files for any .sym files whose .h files don't exist yet. - # They will be generated when they're needed, and trying too early won't work. -@@ -762,6 +736,7 @@ - $(objpfx)stamp$o: $(o-objects); $$(do-stamp) - endef - define do-stamp -+$(make-target-directory) - echo '$(patsubst $(objpfx)%,$(addsuffix /,$(subdir))%,$^)' > $@T - mv -f $@T $@ - endef -@@ -1188,15 +1163,23 @@ - LC_ALL=C \ - $(AWK) -f $< -v 'config=$(check-abi-config)' \ - $(filter %.abilist,$^) \ -- | diff -pu0 - $(filter %.symlist,$^) -+ | { diff -pu0 - $(filter %.symlist,$^) $(check-abi-warn) ; } - endef -+ifeq ($(enable-check-abi),warn) -+check-abi-warn = || echo '*** WARNING: $*.so failed ABI check' -+endif - - ifeq ($(firstword $(sysd-sorted-done) f)$(firstword $(generating) f),tf) - -include $(common-objpfx)tls.make --config-tls-yes := tls --config-tls-no := notls -+config-tls := notls -+ifeq ($(use-tls),yes) -+config-tls := tls -+endif -+ifeq ($(use-thread),yes) -+config-tls := thread -+endif - check-abi-config := \ -- $(config-machine)-$(config-vendor)-$(config-os)/$(config-tls-$(use-thread)) -+ $(config-machine)-$(config-vendor)-$(config-os)/$(config-tls) - endif - - update-abi-%: $(..)scripts/merge-abilist.awk $(..)abilist/%.abilist \ -@@ -1211,7 +1194,7 @@ - endef - else - define update-abi --LC_ALL=C $(AWK) -v config=$(update-abi-config) -f $^ \ -+LC_ALL=C $(AWK) -v config='$(update-abi-config)' -f $^ \ - > $(..)abilist/$*.abilist.new - @if cmp -s $(..)abilist/$*.abilist.new $(..)abilist/$*.abilist 2> /dev/null; \ - then rm -f $(..)abilist/$*.abilist.new; \ -@@ -1233,19 +1216,23 @@ - update-abi: subdir_update-abi - endif - --# Enable this when all the .abilist files are in place. --#tests: check-abi -- - ifeq ($(subdir),elf) - check-abi: check-abi-libc - update-abi: update-abi-libc - common-generated += libc.symlist - endif - -+ifeq ($(build-shared),yes) -+ifneq ($(enable-check-abi),no) -+ifdef subdir -+tests: check-abi -+endif -+endif -+endif -+ - endif - - # There's no good place to put this - here will do. --# The dependencies are wrong if it's run from the top level. - ifeq ($(filter %posix, $(sysdirs)),) - L_tmpnam = 1 - TMP_MAX = 0 -@@ -1263,24 +1250,20 @@ - $(stdio_lim:h=st): $(..)stdio-common/stdio_lim.h.in $(..)Rules \ - $(common-objpfx)config.make - $(make-target-directory) -- echo '#include "$(..)posix/bits/posix1_lim.h"' | \ -- SUNPRO_DEPENDENCIES='$(@:st=dT) $@' \ -- $(CC) $(+includes) -E -dM -xc - -o $(@:st=hT) -- echo '#include "$(..)misc/sys/uio.h"' | \ -- SUNPRO_DEPENDENCIES='$(@:st=dT) $@' \ -- $(CC) -D_LIBC=1 $(+includes) -E -dM -xc - | cat - >> $(@:st=hT) --ifdef sed-remove-objpfx -- sed $(sed-remove-objpfx) $(@:st=dT) > $(@:st=dt) -- cat $(@:st=dt) >> $(@:st=d) --else -- cat $(@:st=dT) >> $(@:st=d) --endif -+ { echo '#include "$(..)posix/bits/posix1_lim.h"'; \ -+ echo '#define _LIBC 1'; \ -+ echo '#include "$(..)misc/sys/uio.h"'; } | \ -+ $(CC) -E -dM -MD -MP -MF $(@:st=dT) -MT '$(@:st=h) $(@:st=d)' \ -+ $(+includes) -xc - -o $(@:st=hT) -+ sed $(sed-remove-objpfx) $(sed-remove-dotdot) \ -+ $(@:st=dT) > $(@:st=dt) -+ mv -f $(@:st=dt) $(@:st=d) - fopen_max=`sed -n 's/^#define OPEN_MAX //1p' $(@:st=hT)`; \ - filename_max=`sed -n 's/^#define PATH_MAX //1p' $(@:st=hT)`; \ - iov_max=`sed -n 's/^#define UIO_MAXIOV //p' $(@:st=hT)`; \ - fopen_max=$${fopen_max:-16}; \ - filename_max=$${filename_max:-1024}; \ -- if [ -z $$iov_max ]; then \ -+ if [ -z "$$iov_max" ]; then \ - define_iov_max="# undef IOV_MAX"; \ - else \ - define_iov_max="# define IOV_MAX $$iov_max"; \ -@@ -1355,8 +1338,8 @@ - - # Also remove the dependencies and generated source files. - common-clean: common-mostlyclean -- -rm -f $(addprefix $(objpfx),$(generated)) $(+depfiles) -- -rm -f $(objpfx)rtld-*.d -+ -rm -f $(addprefix $(objpfx),$(generated)) -+ -rm -f $(objpfx)*.d $(objpfx)*.dt - -rm -fr $(addprefix $(objpfx),$(generated-dirs)) - -rm -f $(addprefix $(common-objpfx),$(common-generated)) - -rm -f $(objpfx)distinfo -@@ -1370,17 +1353,23 @@ - .PHONY: stubs # The parent Makefile calls this target. - stubs: $(objpfx)stubs - endif --s = $(sysdep_dir)/generic - $(objpfx)stubs: $(+depfiles) -+ifneq (,$(strip $(+depfiles))) - # Use /dev/null since `...` might expand to empty. -- (s=`cd $s && $(PWD_P)`; \ -- $(patsubst %/,cd % &&,$(objpfx)) \ -- sed -n 's/^stub_warning *(\([^)]*\).*$$/#define __stub_\1/p' \ -- `sed -n -e '\@ $s/[^ ]*\.c@{; s@^.* $s/\([^ ]*\.c\).*$$@'"$$s"'/\1@; h; }' \ -- -e '/stub-tag\.h/{; g; p; }' \ -- $(patsubst $(objpfx)%,%,$^) /dev/null` \ -- /dev/null) > $@T -+ c=`($(patsubst %/,cd % &&,$(objpfx)) \ -+ sed -n -e 's@\$$(common-objpfx)@$(common-objpfx)@g' \ -+ -e 's@\$$(objpfx)@$(objpfx)@g' \ -+ -e '/stub-tag\.h/{; g; s/./&/p; }' \ -+ -e '/:/{x; s/^.*$$//; x; }' \ -+ -e 's/^.*://;s/\\$$//;s/^ *\([^ ][^ ]*\) .*$$/\1/' \ -+ -e '/^[^ ][^ ]*$$/{G;s/^.*\n\(..*\)/\1/;s/\n//;h; }' \ -+ $(patsubst $(objpfx)%,%,$^)) | sort | uniq`; \ -+ sed -n 's/^stub_warning *(\([^)]*\).*$$/#define __stub_\1/p' \ -+ $$c /dev/null > $@T - mv -f $@T $@ -+else -+ > $@ -+endif - - # Make the distribution tar file. - ---- glibc-2.3.2/NEWS 2003-01-13 04:26:13.000000000 -0500 -+++ glibc-2.3.2/NEWS 2003-04-24 20:05:56.000000000 -0400 -@@ -1,10 +1,24 @@ --GNU C Library NEWS -- history of user-visible changes. 2003-1-12 --Copyright (C) 1992-2002, 2003 Free Software Foundation, Inc. -+GNU C Library NEWS -- history of user-visible changes. 2003-4-24 -+Copyright (C) 1992-2002,2003 Free Software Foundation, Inc. - See the end for copying conditions. - - Please send GNU C library bug reports using the `glibcbug' script to - . Please send questions and suggestions to . - -+Version 2.3.3 -+ -+* New functions `dladdr1' and `dlinfo' in provide more ways to -+ interrogate the dynamic linker, compatible with the Solaris interface. -+ -+* ELF thread-local storage support (TLS) now works on PowerPC and PowerPC64; -+ implemented by Paul Mackerras, Steven Munroe, and Roland McGrath. -+ -+* getifaddrs new uses on Linux the netlink interface to get the information. -+ Implemented by Thorsten Kukuk. -+ -+* getaddrinfo now implements AI_V4MAPPED, AI_ALL, and AI_ADDRCONF. -+ Implemented by Ulrich Drepper. -+ - Version 2.3.2 - - * Thread-safe interfaces for many functions that access locale data ---- glibc-2.3.2/README-alpha 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/README-alpha 2002-11-16 08:53:55.000000000 -0500 -@@ -0,0 +1,287 @@ -+ GNU libc SNAPSHOT SYSTEM -+ (general info) -+ Updated 1997-9-26 -+ -+WHAT ARE GNU libc SNAPSHOTS -+--------------------------- -+ -+Snapshots are an "image" of the main glibc development tree, captured at a -+particular random instant in time. When you use the snapshots, you should be -+able to maintain a local copy of libc that is no more than one day older than -+the official source tree used by the libc maintainers. -+ -+The primary purpose of providing snapshots is to widen the group of motivated -+developers that would like to help test, debug, and enhance glibc, by providing -+you with access to the "latest and greatest" source. This has several -+advantages, and several disadvantages. -+ -+ First the advantages: -+ -+ o Once we have a large base of motivated testers using the snapshots, -+ this should provide good coverage across all currently supported -+ glibc hosts and targets. If a new bug is introduced in glibc due to -+ fixing another bug or ongoing development, it should become -+ obvious much more quickly and get fixed before the next general -+ net release. This should help to reduce the chances of glibc being -+ released to the general public with a major bug that went unnoticed -+ during the release cycle testing because they are machine dependent. -+ We hope to greatly improve glibc's stability and reliability by -+ involving more people and more execution environments in the -+ prerelease testing. -+ -+ o With access to the latest source, any diffs that you send to fix -+ bugs or add new features should be much easier for the glibc team -+ to merge into the official source base (after suitable review -+ of course). This encourages us to merge your changes quicker, -+ while they are still "fresh". -+ -+ o Once your diffs are merged, you can obtain a new copy of glibc -+ containing your changes almost immediately. Thus you do not -+ have to maintain local copies of your changes for any longer -+ than it takes to get them merged into the official source base. -+ This encourages you to send in changes quicker. -+ -+ And the disadvantages: -+ -+ o The snapshot you get will be largely untested and of unknown quality. -+ It may fail to configure or compile. It may have serious bugs. -+ You should always keep a copy of the last known working version -+ before updating to the current snapshot, or at least be able to -+ regenerate a working version if the latest snapshot is unusable -+ in your environment for some reason. -+ -+ If a production version of glibc has a bug and a snapshot has the fix, -+ and you care about stability, you should put only the fix for that -+ particular problem into your production version. Of course, if you -+ are eager to test glibc, you can use the snapshot versions in your -+ daily work, but users who have not been consulted about whether they -+ feel like testing glibc should generally have something which is at -+ least as bug free as the last released version. -+ -+ o Providing timely response to your questions, bug reports, and -+ submitted patches will require the glibc development team to allocate -+ time from an already thin time budget. Please try to help us make -+ this time as productive as possible. See the section below about -+ how to submit changes. -+ -+ -+WHO SHOULD TRY THE SNAPSHOTS -+---------------------------- -+ -+Remember, these are snapshots not tested versions. So if you use -+these versions you should be able to -+ -+ o make sure your system stays usable -+ -+ o locate and hopefully fix problems -+ -+ o to port glibc to a new target yourself -+ -+You should not use the snapshots if -+ -+ o your system is needed in a production environment which needs -+ stability -+ -+ o you expect us to fix your problems since you somehow depend on them. -+ You must be willing to fix the problems yourself, we don't want to -+ see "I have problems, fix this" messages. -+ -+ -+HOW TO GET THE SNAPSHOTS -+------------------------ -+ -+At the moment we provide a full snapshot weekly (every sunday), so -+that users getting a snapshot for the first time, or updating after -+a long period of not updating, can get the latest version in a single -+operation. Along with the full snapshot, we will provide incremental -+diffs on a nearly daily basis (whenever code changes). Each daily -+diff will be relative to the source tree after applying all previous -+daily diffs. The daily diffs are for people who have relatively low -+bandwidth ftp or uucp connections. -+ -+The files will be available via anonymous ftp from alpha.gnu.org, in -+directory /gnu/libc and on linux.kernel.org in /pub/software/libs/glibc. The -+directories should look something like: -+ -+ libc-970921.tar.gz -+ libc-970917-970922.diff.gz -+ libc-970922-970925.diff.gz -+ . -+ . -+ . -+ -+Please note that the snapshots on alpha.gnu.org and on -+linux.kernel.org are not always in sync. Patches to some files might -+appear a day a diff earlier or later on alpha than on kernel. -+Use always alpha or always kernel but don't mix them. -+ -+There are sometimes additionally test releases of the add-ons available in -+these directories. If a new version of an add-on is available it is normally -+required for the corresponding snapshot so always pay attention for these. -+ -+Note that we provide GNU gzip compressed files only. You can ftp gzip -+from ftp.gnu.org in directory pub/gnu. -+ -+In some cases the dates for diffs and snapshots do not match like in the -+example above. The full release is for 970921 but the patch is for -+970917-970922. This only means that nothing changed between 970917 and 970922 -+and that you have to use this patch on top of the 970921 snapshot since the -+patch is made on 970922. -+ -+Also, as the gcc developers did with their gcc snapshot system, even though we -+will make the snapshots available on a publically accessible ftp area, we ask -+that recipients not widely publicise their availability. The motivation for -+this request is not to hoard them, but to avoid the situation where the -+general glibc user base naively attempts to use the snapshots, has trouble with -+them, complains publically, and the reputation of glibc declines because of a -+perception of instability or lack of quality control. -+ -+ -+GLIBC TEST SUITE -+---------------- -+ -+A test suite is distributed as an integral part of the snapshots. A simple -+"make check" in your build directory is sufficient to run the tests. glibc -+should pass all tests and if any fails, please report it. A failure might not -+originate from a bug in glibc but also from bugs in the tools, e.g. with gcc -+2.7.2.x the math tests fail some of the tests because of compiler bugs. -+ -+Note that the test suite is still in its infancy. The tests themselves only -+cover a small portion of libc features, and where tests do exist for a feature -+they are not exhaustive. New tests are welcome. -+ -+ -+GETTING HELP, GLIBC DISCUSSIONS, etc -+------------------------------------ -+ -+People who want to help with glibc and who test out snapshots -+regularly should get on the libc-alpha@sourceware.cygnus.com mailing -+list by sending an email to libc-alpha-subscribe@sourceware.cygnus.com. -+This list is meant (as the name suggests) for the discussion of test -+releases and also reports for them. People who are on this list are -+welcome to post questions of general interest. -+ -+People who are not only willing to test the snapshots but instead -+really want to help developing glibc should contact -+libc-hacker-subscribe@sourceware.cygnus.com.org to be put on the developers -+mailing list. This list is really only meant for developers. No -+questions about installation problems or other simple topics are -+wanted nor will they be answered. -+ -+Do *not* send any questions about the snapshots or patches specific to the -+snapshots to bug-glibc@gnu.org. Nobody there will have any idea what -+you are talking about and it will just cause confusion. -+ -+ -+BUG REPORTS -+----------- -+ -+Send bug reports directly to Ulrich Drepper . Please -+do *not* use the glibcbug script for reporting bugs in the snapshots. -+glibcbug should only be used for problems with the official released versions. -+We don't like bug reports in the bug database because otherwise the impression -+of instability or lack of quality control of glibc as a whole might manifest -+in people's mind. -+ -+Note that since no testing is done on the snapshots, and snapshots may even be -+made when glibc is in an inconsistent state, it may not be unusual for an -+occasional snapshot to have a very obvious bug, such as failure to compile on -+*any* machine. It is likely that such bugs will be fixed by the next -+snapshot, so it really isn't necessary to report them unless they persist for -+a couple of days. -+ -+Missing files should always be reported, since they usually mean there is a -+problem with the snapshot-generating process and we won't know about them -+unless someone tells us. -+ -+Bugs which are non-obvious, such as failure to compile on only a specific -+machine, a new machine dependent or obscure bug (particularly one not detected -+by the testsuite), etc should be reported when you discover them, or have a -+suggested patch to fix them. -+ -+ -+FORMAT FOR PATCHES -+------------------ -+ -+If you have a fix for a bug, or an enhancement to submit, send your patch to -+Ulrich Drepper . Here are some simple guidelines for -+submitting patches: -+ -+ o Use "unified diffs" for patches. A typical command for generating -+ context diffs is "diff -ru glibc-old glibc-patched". -+ -+ o Use the "minimalist approach" for patches. That is, each patch -+ should address only one particular bug, new feature, etc. Do not -+ save up many unrelated changes and submit them all in one big -+ patch, since in general, the larger the patch the more difficult -+ it is for us to decide if the patch is either correct or -+ desirable. And if we find something about the patch that needs -+ to be corrected before it can be installed, we would have to reject -+ the entire patch, which might contain changes which otherwise would -+ be accepted if submitted separately. -+ -+ o Submit a sample ChangeLog entry with your patch. See the existing -+ glibc ChangeLog for examples of what a ChangeLog entry should look -+ like. The emacs command ^X4A will create a ChangeLog entry header -+ for you. -+ -+ -+BUILDING SNAPSHOTS -+------------------ -+ -+The `best' way to build glibc is to use an extra directory, e.g.: -+tar xzf libc-970921.tar.gz -+mkdir build-glibc -+cd build-glibc -+../libc-970921/configure ... -+ -+In this way you can easily clean up (since `make clean' doesn't work at -+the moment) and rebuild glibc. -+ -+ -+NECESSARY TOOLS -+--------------- -+ -+For the recommended versions of gcc, binutils, make, texinfo, gettext, -+autoconf and other tools which might be especially needed when using patches, -+please read the file INSTALL. -+ -+ -+HOW CAN YOU HELP -+---------------- -+ -+It helps already a lot if you just install glibc on your system and try to -+solve any problems. You might want to look at the file `PROJECTS' and help -+with one of those projects, fix some bugs (see `BUGS' or the bug database), -+port to an unsupported platform, ... -+ -+ -+FURTHER DOCUMENTATION -+--------------------- -+ -+A lot of questions are answered in the FAQ. The files `INSTALL', `README' and -+`NOTES' contain the most important documentation. Furthermore glibc has its -+own 700+ pages info documentation, ... -+ -+ -+ -+And finally a word of caution: The libc is one of the most fundamental parts -+of your system - and these snapshots are untested and come without any -+guarantee or warranty. You might be lucky and everything works or you might -+crash your system. If you install a glibc snapshot as primary library, you -+should have a backup somewhere. -+ -+On many systems it is also a problem to replace the libc while the system is -+running. In the worst case on broken OSes some systems crash. On better -+systems you can move the old libc aside but removing it will cause problems -+since there are still processes using this libc image and so you might have to -+check the filesystem to get rid of the libc data. One good alternative (which -+is also safer) is to use a chroot'ed environment. -+ -+Thanks for your help and support. -+ -+Thanks to Fred Fish from Cygnus for the original version of this text -+(for GDB). -+ -+ -+Ulrich Drepper ---- glibc-2.3.2/README.template 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/README.template 2002-11-16 08:53:56.000000000 -0500 -@@ -0,0 +1,87 @@ -+This directory contains the version VERSION release of the GNU C Library. -+Many bugs have been fixed since the last release. -+Some bugs surely remain. -+ -+As of this release, the GNU C library is known to run on the following -+configurations: -+ -+ *-*-gnu GNU Hurd -+ i[3456]86-*-linux-gnu Linux-2.x on Intel -+ m68k-*-linux-gnu Linux-2.x on Motorola 680x0 -+ alpha*-*-linux-gnu Linux-2.x on DEC Alpha -+ powerpc-*-linux-gnu Linux and MkLinux on PowerPC systems -+ powerpc64-*-linux-gnu Linux-2.4.19+ on 64-bit PowerPC systems -+ sparc-*-linux-gnu Linux-2.x on SPARC -+ sparc64-*-linux-gnu Linux-2.x on UltraSPARC 64-bit -+ arm-*-none ARM standalone systems -+ arm-*-linux Linux-2.x on ARM -+ arm-*-linuxaout Linux-2.x on ARM using a.out binaries -+ mips*-*-linux-gnu Linux-2.x on MIPS -+ ia64-*-linux-gnu Linux-2.x on ia64 -+ s390-*-linux-gnu Linux-2.x on IBM S/390 -+ s390x-*-linux-gnu Linux-2.4+ on IBM S/390 64-bit -+ sh-*-linux-gnu Linux-2.x on Super Hitachi -+ cris-*-linux-gnu Linux-2.4+ on CRIS -+ x86-64-*-linux-gnu Linux-2.4+ on x86-64 -+ -+Former releases of this library (version 1.09.1 and perhaps earlier -+versions) used to run on the following configurations: -+ -+ alpha-dec-osf1 -+ i[3456]86-*-bsd4.3 -+ i[3456]86-*-isc2.2 -+ i[3456]86-*-isc3 -+ i[3456]86-*-sco3.2 -+ i[3456]86-*-sco3.2v4 -+ i[3456]86-*-sysv -+ i[3456]86-*-sysv4 -+ i[3456]86-force_cpu386-none -+ i[3456]86-sequent-bsd -+ i960-nindy960-none -+ m68k-hp-bsd4.3 -+ m68k-mvme135-none -+ m68k-mvme136-none -+ m68k-sony-newsos3 -+ m68k-sony-newsos4 -+ m68k-sun-sunos4 -+ mips-dec-ultrix4 -+ mips-sgi-irix4 -+ sparc-sun-solaris2 -+ sparc-sun-sunos4 -+ -+Since no one has volunteered to test and fix the above configurations, -+these are not supported at the moment. It's expected that these don't -+work anymore. Porting the library is not hard. If you are interested -+in doing a port, please contact the glibc maintainers by sending -+electronic mail to . -+ -+There are some add-ons which can be used together with GNU libc. They -+are designed in a way to ease the installation by integrating them in -+the libc source tree. Simply get the add-ons you need and use the -+--enable-add-ons option of the `configure' script to tell where the -+add-ons are found. Please read the FAQ file for more details. -+ -+See the file INSTALL to find out how to configure, build, install, and port -+the GNU C library. You might also consider reading the WWW pages for the -+GNU libc at http://www.gnu.org/software/libc/libc.html. -+ -+The GNU C Library is completely documented by the Texinfo manual found -+in the `manual/' subdirectory. The manual is still being updated and -+contains some known errors and omissions; we regret that we do not -+have the resources to work on the manual as much as we would like. -+Please send comments on the manual to , and -+not to the library bug-reporting address. -+ -+The file NOTES contains a description of the feature-test macros used -+in the GNU C library, explaining how you can tell the library what -+facilities you want it to make available. -+ -+We prefer to get bug reports sent using the `glibcbug' shell script which -+is installed together with the rest of the GNU libc to . -+Simply run this shell script and fill in the information. Nevertheless -+you can still send bug reports to as normal electronic -+mails. -+ -+The GNU C Library is free software. See the file COPYING.LIB for copying -+conditions, and LICENSES for notices about a few contributions that require -+these additional notices to be distributed. ---- glibc-2.3.2/Versions.def 2002-12-10 14:05:17.000000000 -0500 -+++ glibc-2.3.2/Versions.def 2003-04-12 11:39:41.000000000 -0400 -@@ -18,6 +18,7 @@ - GLIBC_2.3 - GLIBC_2.3.1 - GLIBC_2.3.2 -+ GLIBC_2.3.3 - %ifdef USE_IN_LIBIO - HURD_CTHREADS_0.3 - %endif -@@ -32,6 +33,7 @@ - libdl { - GLIBC_2.0 - GLIBC_2.1 -+ GLIBC_2.3.3 - } - libm { - GLIBC_2.0 -@@ -71,6 +73,7 @@ - GLIBC_2.2.3 - GLIBC_2.2.6 - GLIBC_2.3.2 -+ GLIBC_2.3.3 - GLIBC_PRIVATE - } - libresolv { -@@ -82,6 +85,7 @@ - GLIBC_2.1 - GLIBC_2.2 - GLIBC_2.3 -+ GLIBC_2.3.3 - } - libutil { - GLIBC_2.0 -@@ -96,6 +100,7 @@ - GLIBC_2.1.3 - GLIBC_2.2.3 - GLIBC_2.3 -+ GLIBC_2.3.3 - } - libanl { - GLIBC_2.2.3 ---- glibc-2.3.2/abilist/ld.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/ld.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,35 @@ -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.0 A -+ _r_debug D 0x14 -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __libc_memalign F -+ calloc F -+ free F -+ malloc F -+ realloc F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.1 A -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _dl_mcount F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _r_debug D 0x28 -+GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls x86_64-.*-linux.*/tls -+ GLIBC_2.3 A -+GLIBC_2.3 i.86-.*-linux.*/thread i.86-.*-linux.*/tls -+ ___tls_get_addr F -+GLIBC_2.3 i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread x86_64-.*-linux.*/tls -+ __tls_get_addr F -+GLIBC_2.3 s390-.*-linux.*/tls s390x-.*-linux.*/tls -+ __tls_get_offset F ---- glibc-2.3.2/abilist/libBrokenLocale.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/libBrokenLocale.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,13 @@ -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.0 A -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __ctype_get_mb_cur_max F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.3 powerpc64-.*-linux.*/thread -+ GLIBC_2.3 A ---- glibc-2.3.2/abilist/libanl.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/libanl.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,13 @@ -+GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2.3 A -+GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ gai_cancel F -+ gai_error F -+ gai_suspend F -+ getaddrinfo_a F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.3 powerpc64-.*-linux.*/thread -+ GLIBC_2.3 A ---- glibc-2.3.2/abilist/libc.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/libc.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,2231 @@ -+GCC_3.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GCC_3.0 A -+ _Unwind_Find_FDE F -+ __deregister_frame_info_bases F -+ __register_frame_info_bases F -+ __register_frame_info_table_bases F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls -+ __fpu_control D 0x2 -+ vm86 F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.0 A -+ _IO_stderr_ D 0x50 -+ _IO_stdin_ D 0x50 -+ _IO_stdout_ D 0x50 -+ __strtoq_internal F -+ __strtouq_internal F -+ _sys_errlist D 0x1ec -+ _sys_siglist D 0x80 -+ res_init F -+ sys_errlist D 0x1ec -+ sys_sigabbrev D 0x80 -+ sys_siglist D 0x80 -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ getaliasbyname_r F -+ getaliasent_r F -+ getgrent_r F -+ getgrgid_r F -+ getgrnam_r F -+ gethostbyaddr_r F -+ gethostbyname2_r F -+ gethostbyname_r F -+ gethostent_r F -+ getnetbyaddr_r F -+ getnetbyname_r F -+ getnetent_r F -+ getprotobyname_r F -+ getprotobynumber_r F -+ getprotoent_r F -+ getpwent_r F -+ getpwnam_r F -+ getpwuid_r F -+ getrpcbyname_r F -+ getrpcbynumber_r F -+ getrpcent_r F -+ getservbyname_r F -+ getservbyport_r F -+ getservent_r F -+ getspent_r F -+ getspnam_r F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ _sys_nerr D 0x4 -+ sys_nerr D 0x4 -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _IO_do_write F -+ _IO_fclose F -+ _IO_fdopen F -+ _IO_file_attach F -+ _IO_file_close_it F -+ _IO_file_fopen F -+ _IO_file_init F -+ _IO_file_overflow F -+ _IO_file_seekoff F -+ _IO_file_setbuf F -+ _IO_file_sync F -+ _IO_file_underflow F -+ _IO_file_write F -+ _IO_file_xsputn F -+ _IO_fopen F -+ _IO_popen F -+ _IO_proc_close F -+ _IO_proc_open F -+ fclose F -+ fdopen F -+ fopen F -+ pclose F -+ popen F -+ pthread_attr_init F -+ tmpfile F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ chown F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ fnmatch F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _IO_fgetpos F -+ _IO_fsetpos F -+ fgetpos F -+ fopencookie F -+ fsetpos F -+ getrlimit F -+ localeconv F -+ msgctl F -+ semctl F -+ setrlimit F -+ shmctl F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ re_max_failures D 0x4 -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ pthread_cond_broadcast F -+ pthread_cond_destroy F -+ pthread_cond_init F -+ pthread_cond_signal F -+ pthread_cond_wait F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ realpath F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _IO_adjust_column F -+ _IO_default_doallocate F -+ _IO_default_finish F -+ _IO_default_pbackfail F -+ _IO_default_uflow F -+ _IO_default_xsgetn F -+ _IO_default_xsputn F -+ _IO_doallocbuf F -+ _IO_feof F -+ _IO_ferror F -+ _IO_fflush F -+ _IO_fgets F -+ _IO_file_close F -+ _IO_file_doallocate F -+ _IO_file_open F -+ _IO_file_read F -+ _IO_file_seek F -+ _IO_file_stat F -+ _IO_flockfile F -+ _IO_flush_all F -+ _IO_flush_all_linebuffered F -+ _IO_fprintf F -+ _IO_fputs F -+ _IO_fread F -+ _IO_free_backup_area F -+ _IO_ftell F -+ _IO_ftrylockfile F -+ _IO_funlockfile F -+ _IO_fwrite F -+ _IO_getc F -+ _IO_getline F -+ _IO_gets F -+ _IO_init F -+ _IO_init_marker F -+ _IO_link_in F -+ _IO_marker_delta F -+ _IO_marker_difference F -+ _IO_padn F -+ _IO_peekc_locked F -+ _IO_printf F -+ _IO_putc F -+ _IO_puts F -+ _IO_remove_marker F -+ _IO_seekmark F -+ _IO_seekoff F -+ _IO_seekpos F -+ _IO_setb F -+ _IO_setbuffer F -+ _IO_setvbuf F -+ _IO_sgetn F -+ _IO_sprintf F -+ _IO_sputbackc F -+ _IO_sscanf F -+ _IO_str_init_readonly F -+ _IO_str_init_static F -+ _IO_str_overflow F -+ _IO_str_pbackfail F -+ _IO_str_seekoff F -+ _IO_str_underflow F -+ _IO_sungetc F -+ _IO_switch_to_get_mode F -+ _IO_un_link F -+ _IO_ungetc F -+ _IO_unsave_markers F -+ _IO_vfprintf F -+ _IO_vfscanf F -+ _IO_vsprintf F -+ __adjtimex F -+ __argz_count F -+ __argz_next F -+ __argz_stringify F -+ __assert_fail F -+ __assert_perror_fail F -+ __bsd_getpgrp F -+ __check_rhosts_file D 0x4 -+ __close F -+ __cmsg_nxthdr F -+ __connect F -+ __ctype_get_mb_cur_max F -+ __daylight D 0x4 -+ __dcgettext F -+ __default_morecore F -+ __dgettext F -+ __dup2 F -+ __errno_location F -+ __fcntl F -+ __ffs F -+ __finite F -+ __finitef F -+ __finitel F -+ __fxstat F -+ __getdelim F -+ __getpagesize F -+ __getpgid F -+ __getpid F -+ __gettimeofday F -+ __gmtime_r F -+ __h_errno_location F -+ __isinf F -+ __isinff F -+ __isinfl F -+ __isnan F -+ __isnanf F -+ __isnanl F -+ __iswctype F -+ __ivaliduser F -+ __libc_calloc F -+ __libc_free F -+ __libc_init_first F -+ __libc_mallinfo F -+ __libc_malloc F -+ __libc_mallopt F -+ __libc_memalign F -+ __libc_pvalloc F -+ __libc_realloc F -+ __libc_start_main F -+ __libc_valloc F -+ __lseek F -+ __lxstat F -+ __mbrlen F -+ __mbrtowc F -+ __mempcpy F -+ __monstartup F -+ __nss_configure_lookup F -+ __nss_database_lookup F -+ __nss_group_lookup F -+ __nss_hosts_lookup F -+ __nss_next F -+ __nss_passwd_lookup F -+ __open F -+ __overflow F -+ __pipe F -+ __printf_fp F -+ __profile_frequency F -+ __read F -+ __res_randomid F -+ __sbrk F -+ __sched_get_priority_max F -+ __sched_get_priority_min F -+ __sched_getparam F -+ __sched_getscheduler F -+ __sched_setscheduler F -+ __sched_yield F -+ __secure_getenv F -+ __select F -+ __send F -+ __setpgid F -+ __sigaction F -+ __sigaddset F -+ __sigdelset F -+ __sigismember F -+ __sigpause F -+ __sigsetjmp F -+ __stpcpy F -+ __stpncpy F -+ __strcasecmp F -+ __strdup F -+ __strerror_r F -+ __strtod_internal F -+ __strtof_internal F -+ __strtok_r F -+ __strtol_internal F -+ __strtold_internal F -+ __strtoll_internal F -+ __strtoul_internal F -+ __strtoull_internal F -+ __sysv_signal F -+ __uflow F -+ __underflow F -+ __vfscanf F -+ __vsnprintf F -+ __vsscanf F -+ __wait F -+ __waitpid F -+ __wcstod_internal F -+ __wcstof_internal F -+ __wcstol_internal F -+ __wcstold_internal F -+ __wcstoll_internal F -+ __wcstoul_internal F -+ __wcstoull_internal F -+ __write F -+ __xmknod F -+ __xpg_basename F -+ __xstat F -+ _exit F -+ _libc_intl_domainname D 0x5 -+ _longjmp F -+ _mcleanup F -+ _mcount F -+ _nl_msg_cat_cntr D 0x4 -+ _obstack_allocated_p F -+ _obstack_begin F -+ _obstack_begin_1 F -+ _obstack_free F -+ _obstack_memory_used F -+ _obstack_newchunk F -+ _rpc_dtablesize F -+ _seterr_reply F -+ _setjmp F -+ _tolower F -+ _toupper F -+ a64l F -+ abort F -+ abs F -+ accept F -+ access F -+ acct F -+ addmntent F -+ adjtime F -+ adjtimex F -+ advance F -+ alarm F -+ alphasort F -+ argz_add F -+ argz_add_sep F -+ argz_append F -+ argz_count F -+ argz_create F -+ argz_create_sep F -+ argz_delete F -+ argz_extract F -+ argz_insert F -+ argz_next F -+ argz_replace F -+ argz_stringify F -+ asctime F -+ asctime_r F -+ asprintf F -+ atof F -+ atoi F -+ atol F -+ atoll F -+ authnone_create F -+ authunix_create F -+ authunix_create_default F -+ basename F -+ bcmp F -+ bcopy F -+ bdflush F -+ bind F -+ bindresvport F -+ bindtextdomain F -+ brk F -+ bsd_signal F -+ bsearch F -+ btowc F -+ bzero F -+ calloc F -+ callrpc F -+ canonicalize_file_name F -+ catclose F -+ catgets F -+ catopen F -+ cfgetispeed F -+ cfgetospeed F -+ cfmakeraw F -+ cfree F -+ cfsetispeed F -+ cfsetospeed F -+ cfsetspeed F -+ chdir F -+ chflags F -+ chmod F -+ chroot F -+ clearenv F -+ clearerr F -+ clearerr_unlocked F -+ clnt_broadcast F -+ clnt_create F -+ clnt_pcreateerror F -+ clnt_perrno F -+ clnt_perror F -+ clnt_spcreateerror F -+ clnt_sperrno F -+ clnt_sperror F -+ clntraw_create F -+ clnttcp_create F -+ clntudp_bufcreate F -+ clntudp_create F -+ clock F -+ close F -+ closedir F -+ closelog F -+ confstr F -+ connect F -+ copysign F -+ copysignf F -+ copysignl F -+ creat F -+ create_module F -+ ctermid F -+ ctime F -+ ctime_r F -+ cuserid F -+ daemon F -+ daylight D 0x4 -+ dcgettext F -+ delete_module F -+ dgettext F -+ difftime F -+ dirfd F -+ dirname F -+ div F -+ dprintf F -+ drand48 F -+ drand48_r F -+ dup F -+ dup2 F -+ dysize F -+ ecvt F -+ ecvt_r F -+ endaliasent F -+ endfsent F -+ endgrent F -+ endhostent F -+ endmntent F -+ endnetent F -+ endnetgrent F -+ endprotoent F -+ endpwent F -+ endrpcent F -+ endservent F -+ endspent F -+ endttyent F -+ endusershell F -+ endutent F -+ envz_add F -+ envz_entry F -+ envz_get F -+ envz_merge F -+ envz_remove F -+ envz_strip F -+ erand48 F -+ erand48_r F -+ err F -+ error F -+ error_at_line F -+ error_message_count D 0x4 -+ error_one_per_line D 0x4 -+ errx F -+ ether_aton F -+ ether_aton_r F -+ ether_hostton F -+ ether_line F -+ ether_ntoa F -+ ether_ntoa_r F -+ ether_ntohost F -+ euidaccess F -+ execl F -+ execle F -+ execlp F -+ execv F -+ execve F -+ execvp F -+ exit F -+ fchdir F -+ fchflags F -+ fchmod F -+ fchown F -+ fcloseall F -+ fcntl F -+ fcvt F -+ fcvt_r F -+ fdatasync F -+ feof F -+ feof_unlocked F -+ ferror F -+ ferror_unlocked F -+ fexecve F -+ fflush F -+ fflush_unlocked F -+ ffs F -+ fgetc F -+ fgetgrent F -+ fgetgrent_r F -+ fgetpwent F -+ fgetpwent_r F -+ fgets F -+ fgetspent F -+ fgetspent_r F -+ fileno F -+ fileno_unlocked F -+ finite F -+ finitef F -+ finitel F -+ flock F -+ flockfile F -+ fork F -+ fpathconf F -+ fprintf F -+ fputc F -+ fputc_unlocked F -+ fputs F -+ fread F -+ free F -+ freeaddrinfo F -+ freopen F -+ frexp F -+ frexpf F -+ frexpl F -+ fscanf F -+ fseek F -+ fstatfs F -+ fsync F -+ ftell F -+ ftime F -+ ftok F -+ ftruncate F -+ ftrylockfile F -+ fts_children F -+ fts_close F -+ fts_open F -+ fts_read F -+ fts_set F -+ ftw F -+ funlockfile F -+ fwrite F -+ gcvt F -+ get_avphys_pages F -+ get_current_dir_name F -+ get_kernel_syms F -+ get_myaddress F -+ get_nprocs F -+ get_nprocs_conf F -+ get_phys_pages F -+ getaddrinfo F -+ getaliasbyname F -+ getaliasent F -+ getc F -+ getc_unlocked F -+ getchar F -+ getchar_unlocked F -+ getcwd F -+ getdelim F -+ getdirentries F -+ getdomainname F -+ getdtablesize F -+ getegid F -+ getenv F -+ geteuid F -+ getfsent F -+ getfsfile F -+ getfsspec F -+ getgid F -+ getgrent F -+ getgrgid F -+ getgrnam F -+ getgroups F -+ gethostbyaddr F -+ gethostbyname F -+ gethostbyname2 F -+ gethostent F -+ gethostid F -+ gethostname F -+ getitimer F -+ getline F -+ getlogin F -+ getlogin_r F -+ getmntent F -+ getmntent_r F -+ getnetbyaddr F -+ getnetbyname F -+ getnetent F -+ getnetgrent F -+ getnetgrent_r F -+ getopt F -+ getopt_long F -+ getopt_long_only F -+ getpagesize F -+ getpass F -+ getpeername F -+ getpgid F -+ getpgrp F -+ getpid F -+ getppid F -+ getpriority F -+ getprotobyname F -+ getprotobynumber F -+ getprotoent F -+ getpublickey F -+ getpw F -+ getpwent F -+ getpwnam F -+ getpwuid F -+ getresgid F -+ getresuid F -+ getrpcbyname F -+ getrpcbynumber F -+ getrpcent F -+ getrpcport F -+ getrusage F -+ gets F -+ getsecretkey F -+ getservbyname F -+ getservbyport F -+ getservent F -+ getsid F -+ getsockname F -+ getsockopt F -+ getspent F -+ getspnam F -+ getsubopt F -+ gettext F -+ gettimeofday F -+ getttyent F -+ getttynam F -+ getuid F -+ getusershell F -+ getutent F -+ getutent_r F -+ getutid F -+ getutid_r F -+ getutline F -+ getutline_r F -+ getw F -+ getwd F -+ glob F -+ glob_pattern_p F -+ globfree F -+ gmtime F -+ gmtime_r F -+ group_member F -+ gsignal F -+ gtty F -+ h_nerr D 0x4 -+ hasmntopt F -+ hcreate F -+ hcreate_r F -+ hdestroy F -+ hdestroy_r F -+ herror F -+ hsearch F -+ hsearch_r F -+ hstrerror F -+ htonl F -+ htons F -+ index F -+ inet_addr F -+ inet_aton F -+ inet_lnaof F -+ inet_makeaddr F -+ inet_netof F -+ inet_network F -+ inet_nsap_addr F -+ inet_nsap_ntoa F -+ inet_ntoa F -+ inet_ntop F -+ inet_pton F -+ init_module F -+ initgroups F -+ initstate F -+ initstate_r F -+ innetgr F -+ insque F -+ ioctl F -+ iruserok F -+ isalnum F -+ isalpha F -+ isascii F -+ isatty F -+ isblank F -+ iscntrl F -+ isdigit F -+ isfdtype F -+ isgraph F -+ isinf F -+ isinff F -+ isinfl F -+ islower F -+ isnan F -+ isnanf F -+ isnanl F -+ isprint F -+ ispunct F -+ isspace F -+ isupper F -+ iswalnum F -+ iswalpha F -+ iswcntrl F -+ iswctype F -+ iswdigit F -+ iswgraph F -+ iswlower F -+ iswprint F -+ iswpunct F -+ iswspace F -+ iswupper F -+ iswxdigit F -+ isxdigit F -+ jrand48 F -+ jrand48_r F -+ kill F -+ killpg F -+ klogctl F -+ l64a F -+ labs F -+ lchown F -+ lckpwdf F -+ lcong48 F -+ lcong48_r F -+ ldexp F -+ ldexpf F -+ ldexpl F -+ ldiv F -+ lfind F -+ link F -+ listen F -+ llabs F -+ lldiv F -+ llseek F -+ localtime F -+ localtime_r F -+ lockf F -+ longjmp F -+ lrand48 F -+ lrand48_r F -+ lsearch F -+ lseek F -+ madvise F -+ mallinfo F -+ malloc F -+ malloc_get_state F -+ malloc_set_state F -+ malloc_stats F -+ malloc_trim F -+ malloc_usable_size F -+ mallopt F -+ mblen F -+ mbrlen F -+ mbrtowc F -+ mbsinit F -+ mbsnrtowcs F -+ mbsrtowcs F -+ mbstowcs F -+ mbtowc F -+ mcheck F -+ memalign F -+ memccpy F -+ memchr F -+ memcmp F -+ memcpy F -+ memfrob F -+ memmem F -+ memmove F -+ memset F -+ mkdir F -+ mkfifo F -+ mkstemp F -+ mktemp F -+ mktime F -+ mlock F -+ mlockall F -+ mmap F -+ modf F -+ modff F -+ modfl F -+ monstartup F -+ mount F -+ mprobe F -+ mprotect F -+ mrand48 F -+ mrand48_r F -+ mremap F -+ msgget F -+ msgrcv F -+ msgsnd F -+ msync F -+ mtrace F -+ munlock F -+ munlockall F -+ munmap F -+ muntrace F -+ nanosleep F -+ nfsservctl F -+ nice F -+ nl_langinfo F -+ nrand48 F -+ nrand48_r F -+ ntohl F -+ ntohs F -+ obstack_exit_failure D 0x4 -+ obstack_free F -+ obstack_printf F -+ obstack_vprintf F -+ on_exit F -+ open F -+ open_memstream F -+ opendir F -+ openlog F -+ opterr D 0x4 -+ optind D 0x4 -+ optopt D 0x4 -+ parse_printf_format F -+ pathconf F -+ pause F -+ perror F -+ personality F -+ pipe F -+ pmap_getmaps F -+ pmap_getport F -+ pmap_rmtcall F -+ pmap_set F -+ pmap_unset F -+ poll F -+ prctl F -+ printf F -+ profil F -+ pselect F -+ psignal F -+ pthread_attr_destroy F -+ pthread_attr_getdetachstate F -+ pthread_attr_getinheritsched F -+ pthread_attr_getschedparam F -+ pthread_attr_getschedpolicy F -+ pthread_attr_getscope F -+ pthread_attr_setdetachstate F -+ pthread_attr_setinheritsched F -+ pthread_attr_setschedparam F -+ pthread_attr_setschedpolicy F -+ pthread_attr_setscope F -+ pthread_condattr_destroy F -+ pthread_condattr_init F -+ pthread_equal F -+ pthread_exit F -+ pthread_getschedparam F -+ pthread_mutex_destroy F -+ pthread_mutex_init F -+ pthread_mutex_lock F -+ pthread_mutex_unlock F -+ pthread_self F -+ pthread_setcancelstate F -+ pthread_setcanceltype F -+ pthread_setschedparam F -+ ptrace F -+ putc F -+ putc_unlocked F -+ putchar F -+ putchar_unlocked F -+ putenv F -+ putpwent F -+ puts F -+ putspent F -+ pututline F -+ putw F -+ pvalloc F -+ qecvt F -+ qecvt_r F -+ qfcvt F -+ qfcvt_r F -+ qgcvt F -+ qsort F -+ query_module F -+ quotactl F -+ raise F -+ rand F -+ rand_r F -+ random F -+ random_r F -+ rcmd F -+ re_comp F -+ re_compile_fastmap F -+ re_compile_pattern F -+ re_exec F -+ re_match F -+ re_match_2 F -+ re_search F -+ re_search_2 F -+ re_set_registers F -+ re_set_syntax F -+ read F -+ readdir F -+ readdir_r F -+ readlink F -+ readv F -+ realloc F -+ reboot F -+ recv F -+ recvfrom F -+ recvmsg F -+ regcomp F -+ regerror F -+ regexec F -+ regfree F -+ register_printf_function F -+ registerrpc F -+ remove F -+ remque F -+ rename F -+ revoke F -+ rewind F -+ rewinddir F -+ rexec F -+ rexecoptions D 0x4 -+ rindex F -+ rmdir F -+ rpmatch F -+ rresvport F -+ ruserok F -+ ruserpass F -+ sbrk F -+ scalbn F -+ scalbnf F -+ scalbnl F -+ scandir F -+ scanf F -+ sched_get_priority_max F -+ sched_get_priority_min F -+ sched_getparam F -+ sched_getscheduler F -+ sched_rr_get_interval F -+ sched_setparam F -+ sched_setscheduler F -+ sched_yield F -+ seed48 F -+ seed48_r F -+ seekdir F -+ select F -+ semget F -+ semop F -+ send F -+ sendmsg F -+ sendto F -+ setaliasent F -+ setbuf F -+ setbuffer F -+ setcontext F -+ setdomainname F -+ setegid F -+ setenv F -+ seteuid F -+ setfsent F -+ setfsgid F -+ setfsuid F -+ setgid F -+ setgrent F -+ setgroups F -+ sethostent F -+ sethostid F -+ sethostname F -+ setitimer F -+ setjmp F -+ setlinebuf F -+ setlocale F -+ setlogin F -+ setlogmask F -+ setmntent F -+ setnetent F -+ setnetgrent F -+ setpgid F -+ setpgrp F -+ setpriority F -+ setprotoent F -+ setpwent F -+ setregid F -+ setresgid F -+ setresuid F -+ setreuid F -+ setrpcent F -+ setservent F -+ setsid F -+ setsockopt F -+ setspent F -+ setstate F -+ setstate_r F -+ settimeofday F -+ setttyent F -+ setuid F -+ setusershell F -+ setutent F -+ setvbuf F -+ sgetspent F -+ sgetspent_r F -+ shmat F -+ shmdt F -+ shmget F -+ shutdown F -+ sigaction F -+ sigaddset F -+ sigaltstack F -+ sigandset F -+ sigblock F -+ sigdelset F -+ sigemptyset F -+ sigfillset F -+ siggetmask F -+ siginterrupt F -+ sigisemptyset F -+ sigismember F -+ siglongjmp F -+ signal F -+ sigorset F -+ sigpause F -+ sigpending F -+ sigprocmask F -+ sigreturn F -+ sigsetmask F -+ sigstack F -+ sigsuspend F -+ sigvec F -+ sigwait F -+ sleep F -+ snprintf F -+ socket F -+ socketpair F -+ sprintf F -+ srand F -+ srand48 F -+ srand48_r F -+ srandom F -+ srandom_r F -+ sscanf F -+ ssignal F -+ sstk F -+ statfs F -+ step F -+ stime F -+ stpcpy F -+ stpncpy F -+ strcasecmp F -+ strcat F -+ strchr F -+ strcmp F -+ strcoll F -+ strcpy F -+ strcspn F -+ strdup F -+ strerror F -+ strerror_r F -+ strfmon F -+ strfry F -+ strftime F -+ strlen F -+ strncasecmp F -+ strncat F -+ strncmp F -+ strncpy F -+ strndup F -+ strnlen F -+ strpbrk F -+ strptime F -+ strrchr F -+ strsep F -+ strsignal F -+ strspn F -+ strstr F -+ strtod F -+ strtof F -+ strtok F -+ strtok_r F -+ strtol F -+ strtold F -+ strtoll F -+ strtoq F -+ strtoul F -+ strtoull F -+ strtouq F -+ strxfrm F -+ stty F -+ svc_exit F -+ svc_fdset D 0x80 -+ svc_getreq F -+ svc_getreqset F -+ svc_register F -+ svc_run F -+ svc_sendreply F -+ svc_unregister F -+ svcerr_auth F -+ svcerr_decode F -+ svcerr_noproc F -+ svcerr_noprog F -+ svcerr_progvers F -+ svcerr_systemerr F -+ svcerr_weakauth F -+ svcfd_create F -+ svcraw_create F -+ svctcp_create F -+ svcudp_bufcreate F -+ svcudp_create F -+ svcudp_enablecache F -+ swab F -+ swapoff F -+ swapon F -+ symlink F -+ sync F -+ syscall F -+ sysconf F -+ sysctl F -+ sysinfo F -+ syslog F -+ system F -+ tcdrain F -+ tcflow F -+ tcflush F -+ tcgetattr F -+ tcgetpgrp F -+ tcsendbreak F -+ tcsetattr F -+ tcsetpgrp F -+ tdelete F -+ telldir F -+ tempnam F -+ textdomain F -+ tfind F -+ time F -+ timegm F -+ timelocal F -+ times F -+ tmpnam F -+ tmpnam_r F -+ toascii F -+ tolower F -+ toupper F -+ towctrans F -+ towlower F -+ towupper F -+ tr_break F -+ truncate F -+ tsearch F -+ ttyname F -+ ttyname_r F -+ ttyslot F -+ twalk F -+ tzset F -+ ualarm F -+ ulckpwdf F -+ ulimit F -+ umask F -+ umount F -+ uname F -+ ungetc F -+ unlink F -+ unsetenv F -+ updwtmp F -+ uselib F -+ usleep F -+ ustat F -+ utime F -+ utimes F -+ utmpname F -+ valloc F -+ vasprintf F -+ vdprintf F -+ verr F -+ verrx F -+ vfork F -+ vfprintf F -+ vfscanf F -+ vhangup F -+ vlimit F -+ vprintf F -+ vscanf F -+ vsnprintf F -+ vsprintf F -+ vsscanf F -+ vsyslog F -+ vtimes F -+ vwarn F -+ vwarnx F -+ wait F -+ wait3 F -+ wait4 F -+ waitpid F -+ warn F -+ warnx F -+ wcpcpy F -+ wcpncpy F -+ wcrtomb F -+ wcscat F -+ wcschr F -+ wcscmp F -+ wcscoll F -+ wcscpy F -+ wcscspn F -+ wcsdup F -+ wcslen F -+ wcsncat F -+ wcsncmp F -+ wcsncpy F -+ wcsnrtombs F -+ wcspbrk F -+ wcsrchr F -+ wcsrtombs F -+ wcsspn F -+ wcsstr F -+ wcstod F -+ wcstof F -+ wcstok F -+ wcstol F -+ wcstold F -+ wcstombs F -+ wcstoq F -+ wcstoul F -+ wcstouq F -+ wcswidth F -+ wcsxfrm F -+ wctob F -+ wctomb F -+ wctrans F -+ wctype F -+ wcwidth F -+ wmemchr F -+ wmemcmp F -+ wmemcpy F -+ wmemmove F -+ wmemset F -+ write F -+ writev F -+ xdr_accepted_reply F -+ xdr_array F -+ xdr_authunix_parms F -+ xdr_bool F -+ xdr_bytes F -+ xdr_callhdr F -+ xdr_callmsg F -+ xdr_char F -+ xdr_cryptkeyarg F -+ xdr_cryptkeyarg2 F -+ xdr_cryptkeyres F -+ xdr_des_block F -+ xdr_double F -+ xdr_enum F -+ xdr_float F -+ xdr_free F -+ xdr_int F -+ xdr_key_netstarg F -+ xdr_key_netstres F -+ xdr_keybuf F -+ xdr_keystatus F -+ xdr_long F -+ xdr_netobj F -+ xdr_opaque F -+ xdr_opaque_auth F -+ xdr_pmap F -+ xdr_pmaplist F -+ xdr_pointer F -+ xdr_reference F -+ xdr_rejected_reply F -+ xdr_replymsg F -+ xdr_rmtcall_args F -+ xdr_rmtcallres F -+ xdr_short F -+ xdr_string F -+ xdr_u_char F -+ xdr_u_int F -+ xdr_u_long F -+ xdr_u_short F -+ xdr_union F -+ xdr_vector F -+ xdr_void F -+ xdr_wrapstring F -+ xdrmem_create F -+ xdrrec_create F -+ xdrrec_endofrecord F -+ xdrrec_eof F -+ xdrrec_skiprecord F -+ xdrstdio_create F -+ xencrypt F -+ xprt_register F -+ xprt_unregister F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __fork F -+ _nl_default_dirname D 0x12 -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __bzero F -+ __clone F -+ clone F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls -+ __divdi3 F -+ __moddi3 F -+ __udivdi3 F -+ __umoddi3 F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ atexit F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+ __deregister_frame F -+ __frame_state_for F -+ __register_frame F -+ __register_frame_info_table F -+ __register_frame_table F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ __deregister_frame_info F -+ __register_frame_info F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ _IO_file_jumps D 0x54 -+ _IO_list_all D 0x4 -+ __after_morecore_hook D 0x4 -+ __ctype32_b D 0x4 -+ __ctype_b D 0x4 -+ __ctype_tolower D 0x4 -+ __ctype_toupper D 0x4 -+ __curbrk D 0x4 -+ __environ D 0x4 -+ __free_hook D 0x4 -+ __malloc_hook D 0x4 -+ __malloc_initialize_hook D 0x4 -+ __memalign_hook D 0x4 -+ __morecore D 0x4 -+ __progname D 0x4 -+ __progname_full D 0x4 -+ __rcmd_errstr D 0x4 -+ __realloc_hook D 0x4 -+ __timezone D 0x4 -+ __tzname D 0x8 -+ _environ D 0x4 -+ _nl_domain_bindings D 0x4 -+ _null_auth D 0xc -+ _obstack D 0x4 -+ environ D 0x4 -+ error_print_progname D 0x4 -+ h_errlist D 0x14 -+ loc1 D 0x4 -+ loc2 D 0x4 -+ locs D 0x4 -+ mallwatch D 0x4 -+ obstack_alloc_failed_handler D 0x4 -+ optarg D 0x4 -+ program_invocation_name D 0x4 -+ program_invocation_short_name D 0x4 -+ re_syntax_options D 0x4 -+ rpc_createerr D 0x10 -+ stderr D 0x4 -+ stdin D 0x4 -+ stdout D 0x4 -+ svcauthdes_stats D 0xc -+ timezone D 0x4 -+ tzname D 0x8 -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls s390-.*-linux.*/tls -+ ___brk_addr D 0x4 -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ mcount F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls -+ ioperm F -+ iopl F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls -+ _errno D 0x4 -+ _h_errno D 0x4 -+ errno D 0x4 -+ h_errno D 0x4 -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2 sh[34].*-.*-linux.*/notls -+ _res D 0x200 -+GLIBC_2.0 m68.*-.*-linux.*/notls -+ _res D 0x1fe -+ cacheflush F -+GLIBC_2.0 m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __fpu_control D 0x4 -+GLIBC_2.0 powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls -+ __ashldi3 F -+ __ashrdi3 F -+ __cmpdi2 F -+ __fixdfdi F -+ __fixsfdi F -+ __fixunsdfdi F -+ __fixunssfdi F -+ __floatdidf F -+ __floatdisf F -+ __lshrdi3 F -+ __ucmpdi2 F -+GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls -+ __memcpy_by2 F -+ __memcpy_by4 F -+ __memcpy_g F -+ __mempcpy_by2 F -+ __mempcpy_by4 F -+ __mempcpy_byn F -+ __memset_ccn_by2 F -+ __memset_ccn_by4 F -+ __memset_gcn_by2 F -+ __memset_gcn_by4 F -+ __stpcpy_g F -+ __strcat_c F -+ __strcat_g F -+ __strchr_c F -+ __strchr_g F -+ __strchrnul_c F -+ __strchrnul_g F -+ __strcmp_gg F -+ __strcpy_g F -+ __strcspn_cg F -+ __strcspn_g F -+ __strlen_g F -+ __strncat_g F -+ __strncmp_g F -+ __strncpy_by2 F -+ __strncpy_by4 F -+ __strncpy_byn F -+ __strncpy_gg F -+ __strpbrk_cg F -+ __strpbrk_g F -+ __strrchr_c F -+ __strrchr_g F -+ __strspn_cg F -+ __strspn_g F -+ __strstr_cg F -+ __strstr_g F -+GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.1.1 A -+GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _Exit F -+ __mempcpy_small F -+ __stpcpy_small F -+ __strcpy_small F -+ __strcspn_c1 F -+ __strcspn_c2 F -+ __strcspn_c3 F -+ __strpbrk_c2 F -+ __strpbrk_c3 F -+ __strsep_1c F -+ __strsep_2c F -+ __strsep_3c F -+ __strsep_g F -+ __strspn_c1 F -+ __strspn_c2 F -+ __strspn_c3 F -+ __strtok_r_1c F -+ __strverscmp F -+ getutmp F -+ getutmpx F -+ imaxabs F -+ imaxdiv F -+ strchrnul F -+ xdr_hyper F -+ xdr_int64_t F -+ xdr_longlong_t F -+ xdr_u_hyper F -+ xdr_u_longlong_t F -+ xdr_uint64_t F -+GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.1.2 A -+GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __vfork F -+GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.1.3 A -+GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __cxa_atexit F -+ __cxa_finalize F -+ __sigsuspend F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls -+ scalbln F -+ scalblnf F -+ scalblnl F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.1 A -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.2 ia64-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ wordexp F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _IO_fgetpos64 F -+ _IO_fsetpos64 F -+ __fxstat64 F -+ __lxstat64 F -+ __xstat64 F -+ fgetpos64 F -+ fsetpos64 F -+ getrlimit64 F -+ readdir64 F -+ readdir64_r F -+ scandir64 F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ glob64 F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ alphasort64 F -+ versionsort64 F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _IO_file_finish F -+ _IO_getline_info F -+ __asprintf F -+ __backtrace F -+ __backtrace_symbols F -+ __backtrace_symbols_fd F -+ __duplocale F -+ __freelocale F -+ __isalnum_l F -+ __isalpha_l F -+ __isascii_l F -+ __isblank_l F -+ __iscntrl_l F -+ __isdigit_l F -+ __isgraph_l F -+ __islower_l F -+ __isprint_l F -+ __ispunct_l F -+ __isspace_l F -+ __isupper_l F -+ __iswalnum_l F -+ __iswalpha_l F -+ __iswblank_l F -+ __iswcntrl_l F -+ __iswctype_l F -+ __iswdigit_l F -+ __iswgraph_l F -+ __iswlower_l F -+ __iswprint_l F -+ __iswpunct_l F -+ __iswspace_l F -+ __iswupper_l F -+ __iswxdigit_l F -+ __isxdigit_l F -+ __libc_allocate_rtsig F -+ __libc_current_sigrtmax F -+ __libc_current_sigrtmin F -+ __libc_freeres F -+ __libc_sa_len F -+ __newlocale F -+ __poll F -+ __pread64 F -+ __pwrite64 F -+ __rawmemchr F -+ __signbit F -+ __signbitf F -+ __strcasecmp_l F -+ __strcasestr F -+ __strcoll_l F -+ __strfmon_l F -+ __strncasecmp_l F -+ __strtod_l F -+ __strtof_l F -+ __strtol_l F -+ __strtold_l F -+ __strtoll_l F -+ __strtoul_l F -+ __strtoull_l F -+ __strxfrm_l F -+ __toascii_l F -+ __tolower_l F -+ __toupper_l F -+ __towctrans F -+ __towctrans_l F -+ __towlower_l F -+ __towupper_l F -+ __wcscasecmp_l F -+ __wcscoll_l F -+ __wcsncasecmp_l F -+ __wcstod_l F -+ __wcstof_l F -+ __wcstol_l F -+ __wcstold_l F -+ __wcstoll_l F -+ __wcstoul_l F -+ __wcstoull_l F -+ __wcsxfrm_l F -+ __wctype_l F -+ _argp_unlock_xxx F -+ _authenticate F -+ _dl_mcount_wrapper F -+ _dl_mcount_wrapper_check F -+ addseverity F -+ argp_err_exit_status D 0x4 -+ argp_error F -+ argp_failure F -+ argp_help F -+ argp_parse F -+ argp_state_help F -+ argp_usage F -+ authdes_create F -+ authdes_getucred F -+ authdes_pk_create F -+ backtrace F -+ backtrace_symbols F -+ backtrace_symbols_fd F -+ capget F -+ capset F -+ cbc_crypt F -+ clntunix_create F -+ creat64 F -+ des_setparity F -+ ecb_crypt F -+ endutxent F -+ fattach F -+ fdetach F -+ ffsl F -+ ffsll F -+ fgetc_unlocked F -+ fgets_unlocked F -+ fmtmsg F -+ fopen64 F -+ fputs_unlocked F -+ fread_unlocked F -+ freopen64 F -+ fseeko F -+ fseeko64 F -+ fstatfs64 F -+ fstatvfs F -+ fstatvfs64 F -+ ftello F -+ ftello64 F -+ ftruncate64 F -+ ftw64 F -+ fwrite_unlocked F -+ gai_strerror F -+ getcontext F -+ getdate F -+ getdate_err D 0x4 -+ getdate_r F -+ getmsg F -+ getnameinfo F -+ getnetname F -+ getpmsg F -+ getpt F -+ getutxent F -+ getutxid F -+ getutxline F -+ globfree64 F -+ gnu_get_libc_release F -+ gnu_get_libc_version F -+ grantpt F -+ host2netname F -+ iconv F -+ iconv_close F -+ iconv_open F -+ if_freenameindex F -+ if_indextoname F -+ if_nameindex F -+ if_nametoindex F -+ in6addr_any D 0x10 -+ in6addr_loopback D 0x10 -+ isastream F -+ iswblank F -+ key_decryptsession F -+ key_decryptsession_pk F -+ key_encryptsession F -+ key_encryptsession_pk F -+ key_gendes F -+ key_get_conv F -+ key_secretkey_is_set F -+ key_setnet F -+ key_setsecret F -+ lockf64 F -+ lseek64 F -+ makecontext F -+ mempcpy F -+ mmap64 F -+ netname2host F -+ netname2user F -+ nftw F -+ nftw64 F -+ ntp_adjtime F -+ ntp_gettime F -+ open64 F -+ passwd2des F -+ pread F -+ pread64 F -+ printf_size F -+ printf_size_info F -+ ptsname F -+ ptsname_r F -+ putgrent F -+ putmsg F -+ putpmsg F -+ pututxline F -+ pwrite F -+ pwrite64 F -+ rawmemchr F -+ rtime F -+ sendfile F -+ setrlimit64 F -+ setutxent F -+ sighold F -+ sigignore F -+ sigqueue F -+ sigrelse F -+ sigset F -+ sigtimedwait F -+ sigwaitinfo F -+ statfs64 F -+ statvfs F -+ statvfs64 F -+ strcasestr F -+ strtoimax F -+ strtoumax F -+ strverscmp F -+ svcunix_create F -+ svcunixfd_create F -+ swapcontext F -+ sysv_signal F -+ tcgetsid F -+ tdestroy F -+ tmpfile64 F -+ truncate64 F -+ umount2 F -+ unlockpt F -+ updwtmpx F -+ user2netname F -+ utmpxname F -+ versionsort F -+ waitid F -+ wcscasecmp F -+ wcsncasecmp F -+ wcsnlen F -+ wcstoimax F -+ wcstoll F -+ wcstoull F -+ wcstoumax F -+ wcswcs F -+ wordfree F -+ xdecrypt F -+ xdr_authdes_cred F -+ xdr_authdes_verf F -+ xdr_getcredres F -+ xdr_int16_t F -+ xdr_int32_t F -+ xdr_int8_t F -+ xdr_netnamestr F -+ xdr_sizeof F -+ xdr_uint16_t F -+ xdr_uint32_t F -+ xdr_uint8_t F -+ xdr_unixcred F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ __key_decryptsession_pk_LOCAL D 0x4 -+ __key_encryptsession_pk_LOCAL D 0x4 -+ __key_gendes_LOCAL D 0x4 -+ _sys_errlist D 0x1f4 -+ _sys_siglist D 0x100 -+ argp_program_bug_address D 0x4 -+ argp_program_version D 0x4 -+ argp_program_version_hook D 0x4 -+ sys_errlist D 0x1f4 -+ sys_sigabbrev D 0x100 -+ sys_siglist D 0x100 -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls -+ __signbitl F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls -+| GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ _IO_2_1_stderr_ D 0x98 -+ _IO_2_1_stdin_ D 0x98 -+ _IO_2_1_stdout_ D 0x98 -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ modify_ldt F -+GLIBC_2.1 powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ _IO_2_1_stderr_ D 0xa0 -+ _IO_2_1_stdin_ D 0xa0 -+ _IO_2_1_stdout_ D 0xa0 -+GLIBC_2.1 s390-.*-linux.*/tls -+ __chown F -+GLIBC_2.2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2.1 A -+GLIBC_2.2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ pivot_root F -+ posix_openpt F -+GLIBC_2.2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2.2 A -+GLIBC_2.2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __nss_hostname_digits_dots F -+GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2.3 A -+GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __rpc_thread_createerr F -+ __rpc_thread_svc_fdset F -+ __rpc_thread_svc_max_pollfd F -+ __rpc_thread_svc_pollfd F -+ sprofil F -+GLIBC_2.2.4 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2.4 A -+GLIBC_2.2.4 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ dl_iterate_phdr F -+ getgrouplist F -+ sockatmark F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+ __arch_prctl F -+ arch_prctl F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _IO_adjust_wcolumn F -+ _IO_free_wbackup_area F -+ _IO_init_wmarker F -+ _IO_iter_begin F -+ _IO_iter_end F -+ _IO_iter_file F -+ _IO_iter_next F -+ _IO_least_wmarker F -+ _IO_list_lock F -+ _IO_list_resetlock F -+ _IO_list_unlock F -+ _IO_seekwmark F -+ _IO_sputbackwc F -+ _IO_sungetwc F -+ _IO_switch_to_main_wget_area F -+ _IO_switch_to_wbackup_area F -+ _IO_switch_to_wget_mode F -+ _IO_unsave_wmarkers F -+ _IO_wdefault_doallocate F -+ _IO_wdefault_finish F -+ _IO_wdefault_pbackfail F -+ _IO_wdefault_uflow F -+ _IO_wdefault_xsgetn F -+ _IO_wdefault_xsputn F -+ _IO_wdo_write F -+ _IO_wdoallocbuf F -+ _IO_wfile_overflow F -+ _IO_wfile_seekoff F -+ _IO_wfile_sync F -+ _IO_wfile_underflow F -+ _IO_wfile_xsputn F -+ _IO_wmarker_delta F -+ _IO_wsetb F -+ __assert F -+ __cyg_profile_func_enter F -+ __cyg_profile_func_exit F -+ __endmntent F -+ __fbufsize F -+ __flbf F -+ __fpending F -+ __fpurge F -+ __freadable F -+ __freading F -+ __fsetlocking F -+ __fwritable F -+ __fwriting F -+ __getmntent_r F -+ __nl_langinfo_l F -+ __open64 F -+ __res_init F -+ __res_nclose F -+ __res_ninit F -+ __res_state F -+ __setmntent F -+ __statfs F -+ __strndup F -+ __sysconf F -+ __sysctl F -+ __wctrans_l F -+ __woverflow F -+ __wuflow F -+ __wunderflow F -+ __xpg_sigpause F -+ _flushlbf F -+ bind_textdomain_codeset F -+ dcngettext F -+ dngettext F -+ fgetwc F -+ fgetwc_unlocked F -+ fgetws F -+ fgetws_unlocked F -+ fmemopen F -+ fputwc F -+ fputwc_unlocked F -+ fputws F -+ fputws_unlocked F -+ fwide F -+ fwprintf F -+ fwscanf F -+ getdirentries64 F -+ getloadavg F -+ getwc F -+ getwc_unlocked F -+ getwchar F -+ getwchar_unlocked F -+ iruserok_af F -+ mcheck_check_all F -+ mcheck_pedantic F -+ memrchr F -+ mincore F -+ mkdtemp F -+ mkstemp64 F -+ moncontrol F -+ ngettext F -+ posix_fadvise F -+ posix_fadvise64 F -+ posix_fallocate F -+ posix_fallocate64 F -+ posix_madvise F -+ posix_memalign F -+ posix_spawn F -+ posix_spawn_file_actions_addclose F -+ posix_spawn_file_actions_adddup2 F -+ posix_spawn_file_actions_addopen F -+ posix_spawn_file_actions_destroy F -+ posix_spawn_file_actions_init F -+ posix_spawnattr_destroy F -+ posix_spawnattr_getflags F -+ posix_spawnattr_getpgroup F -+ posix_spawnattr_getschedparam F -+ posix_spawnattr_getschedpolicy F -+ posix_spawnattr_getsigdefault F -+ posix_spawnattr_getsigmask F -+ posix_spawnattr_init F -+ posix_spawnattr_setflags F -+ posix_spawnattr_setpgroup F -+ posix_spawnattr_setschedparam F -+ posix_spawnattr_setschedpolicy F -+ posix_spawnattr_setsigdefault F -+ posix_spawnattr_setsigmask F -+ posix_spawnp F -+ putwc F -+ putwc_unlocked F -+ putwchar F -+ putwchar_unlocked F -+ rcmd_af F -+ rexec_af F -+ rresvport_af F -+ ruserok_af F -+ svc_getreq_common F -+ svc_getreq_poll F -+ svc_max_pollfd D 0x4 -+ swprintf F -+ swscanf F -+ ungetwc F -+ vfwprintf F -+ vfwscanf F -+ vswprintf F -+ vswscanf F -+ vwprintf F -+ vwscanf F -+ wcschrnul F -+ wcsftime F -+ wmempcpy F -+ wprintf F -+ wscanf F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls -+ __ctype32_b D 0x8 -+ __ctype32_tolower D 0x8 -+ __ctype32_toupper D 0x8 -+ __ctype_b D 0x8 -+ __ctype_tolower D 0x8 -+ __ctype_toupper D 0x8 -+ _res D 0x238 -+ _sys_errlist D 0x3e8 -+ sys_errlist D 0x3e8 -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _IO_2_1_stderr_ D 0xe0 -+ _IO_2_1_stdin_ D 0xe0 -+ _IO_2_1_stdout_ D 0xe0 -+ _IO_file_jumps D 0xa8 -+ _IO_list_all D 0x8 -+ _IO_wfile_jumps D 0xa8 -+ __after_morecore_hook D 0x8 -+ __curbrk D 0x8 -+ __environ D 0x8 -+ __free_hook D 0x8 -+ __key_decryptsession_pk_LOCAL D 0x8 -+ __key_encryptsession_pk_LOCAL D 0x8 -+ __key_gendes_LOCAL D 0x8 -+ __malloc_hook D 0x8 -+ __malloc_initialize_hook D 0x8 -+ __memalign_hook D 0x8 -+ __morecore D 0x8 -+ __progname D 0x8 -+ __progname_full D 0x8 -+ __rcmd_errstr D 0x8 -+ __realloc_hook D 0x8 -+ __timezone D 0x8 -+ __tzname D 0x10 -+ _environ D 0x8 -+ _nl_domain_bindings D 0x8 -+ _null_auth D 0x18 -+ _obstack D 0x8 -+ _res_hconf D 0x48 -+ _sys_siglist D 0x200 -+ argp_program_bug_address D 0x8 -+ argp_program_version D 0x8 -+ argp_program_version_hook D 0x8 -+ environ D 0x8 -+ error_print_progname D 0x8 -+ h_errlist D 0x28 -+ loc1 D 0x8 -+ loc2 D 0x8 -+ locs D 0x8 -+ mallwatch D 0x8 -+ obstack_alloc_failed_handler D 0x8 -+ optarg D 0x8 -+ program_invocation_name D 0x8 -+ program_invocation_short_name D 0x8 -+ re_syntax_options D 0x8 -+ rpc_createerr D 0x20 -+ stderr D 0x8 -+ stdin D 0x8 -+ stdout D 0x8 -+ svc_pollfd D 0x8 -+ svcauthdes_stats D 0x18 -+ sys_sigabbrev D 0x200 -+ sys_siglist D 0x200 -+ timezone D 0x8 -+ tzname D 0x10 -+GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ GLIBC_2.2.6 A -+GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __nanosleep F -+GLIBC_2.2.6 ia64-.*-linux.*/tls -+ getunwind F -+GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ __ctype32_tolower D 0x4 -+ __ctype32_toupper D 0x4 -+ _res_hconf D 0x30 -+ svc_pollfd D 0x4 -+GLIBC_2.2 i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ _IO_wfile_jumps D 0x54 -+GLIBC_2.2 ia64-.*-linux.*/tls -+ __clone2 F -+ __divdf3 F -+ __divsf3 F -+ __divtf3 F -+ __multi3 F -+ _inb F -+ _inl F -+ _inw F -+ _outb F -+ _outl F -+ _outw F -+ inb F -+ inl F -+ inw F -+ outb F -+ outw F -+ pciconfig_read F -+ pciconfig_write F -+GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls -+ ___brk_addr D 0x8 -+GLIBC_2.2 sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ _nl_default_dirname D 0x20 -+GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ GLIBC_2.3.2 A -+ __register_atfork F -+ lchmod F -+ sched_getaffinity F -+ sched_setaffinity F -+ strptime_l F -+GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls x86_64-.*-linux.*/tls -+ epoll_create F -+ epoll_ctl F -+ epoll_wait F -+GLIBC_2.3.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ GLIBC_2.3.3 A -+ remap_file_pages F -+GLIBC_2.3.3 i.86-.*-linux.*/thread i.86-.*-linux.*/tls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls -+ _sys_siglist D 0x104 -+ sys_sigabbrev D 0x104 -+ sys_siglist D 0x104 -+GLIBC_2.3.3 ia64-.*-linux.*/tls powerpc64-.*-linux.*/thread s390x-.*-linux.*/tls x86_64-.*-linux.*/tls -+| GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ strtoll_l F -+ strtoull_l F -+GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ GLIBC_2.3 A -+ __ctype_b_loc F -+ __ctype_tolower_loc F -+ __ctype_toupper_loc F -+ __isctype F -+ __strftime_l F -+ __uselocale F -+ __wcsftime_l F -+ duplocale F -+ fgetxattr F -+ flistxattr F -+ freeifaddrs F -+ freelocale F -+ fremovexattr F -+ fsetxattr F -+ futimes F -+ getifaddrs F -+ getxattr F -+ isalnum_l F -+ isalpha_l F -+ isblank_l F -+ iscntrl_l F -+ isctype F -+ isdigit_l F -+ isgraph_l F -+ islower_l F -+ isprint_l F -+ ispunct_l F -+ isspace_l F -+ isupper_l F -+ iswalnum_l F -+ iswalpha_l F -+ iswblank_l F -+ iswcntrl_l F -+ iswctype_l F -+ iswdigit_l F -+ iswgraph_l F -+ iswlower_l F -+ iswprint_l F -+ iswpunct_l F -+ iswspace_l F -+ iswupper_l F -+ iswxdigit_l F -+ isxdigit_l F -+ lgetxattr F -+ listxattr F -+ llistxattr F -+ lremovexattr F -+ lsetxattr F -+ lutimes F -+ newlocale F -+ nl_langinfo_l F -+ readahead F -+ removexattr F -+ sendfile64 F -+ setxattr F -+ strcasecmp_l F -+ strcoll_l F -+ strfmon_l F -+ strftime_l F -+ strncasecmp_l F -+ strtod_l F -+ strtof_l F -+ strtol_l F -+ strtold_l F -+ strtoul_l F -+ strxfrm_l F -+ tolower_l F -+ toupper_l F -+ towctrans_l F -+ towlower_l F -+ towupper_l F -+ uselocale F -+ wcscasecmp_l F -+ wcscoll_l F -+ wcsftime_l F -+ wcsncasecmp_l F -+ wcstod_l F -+ wcstof_l F -+ wcstol_l F -+ wcstold_l F -+ wcstoll_l F -+ wcstoul_l F -+ wcstoull_l F -+ wcsxfrm_l F -+ wctrans_l F -+ wctype_l F -+GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ _sys_errlist D 0x1f8 -+ sys_errlist D 0x1f8 -+GLIBC_2.3 ia64-.*-linux.*/tls powerpc64-.*-linux.*/thread s390x-.*-linux.*/tls x86_64-.*-linux.*/tls -+ _sys_errlist D 0x3f0 -+ sys_errlist D 0x3f0 ---- glibc-2.3.2/abilist/libcrypt.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/libcrypt.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,19 @@ -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.0 A -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ crypt F -+ crypt_r F -+ encrypt F -+ encrypt_r F -+ fcrypt F -+ setkey F -+ setkey_r F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.2 s390x-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.3 powerpc64-.*-linux.*/thread -+ GLIBC_2.3 A ---- glibc-2.3.2/abilist/libdl.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/libdl.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,33 @@ -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.0 A -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ dlopen F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ dladdr F -+ dlclose F -+ dlerror F -+ dlsym F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.1 A -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ dlvsym F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.2 s390x-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.3.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ GLIBC_2.3.3 A -+ dladdr1 F -+ dlinfo F -+GLIBC_2.3 powerpc64-.*-linux.*/thread -+ GLIBC_2.3 A ---- glibc-2.3.2/abilist/libm.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/libm.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,355 @@ -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.0 A -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _LIB_VERSION D 0x4 -+ acos F -+ acosf F -+ acosh F -+ acoshf F -+ acoshl F -+ acosl F -+ asin F -+ asinf F -+ asinh F -+ asinhf F -+ asinhl F -+ asinl F -+ atan F -+ atan2 F -+ atan2f F -+ atan2l F -+ atanf F -+ atanh F -+ atanhf F -+ atanhl F -+ atanl F -+ cbrt F -+ cbrtf F -+ cbrtl F -+ ceil F -+ ceilf F -+ ceill F -+ copysign F -+ copysignf F -+ copysignl F -+ cos F -+ cosf F -+ cosh F -+ coshf F -+ coshl F -+ cosl F -+ drem F -+ dremf F -+ dreml F -+ erf F -+ erfc F -+ erfcf F -+ erfcl F -+ erff F -+ erfl F -+ exp F -+ expf F -+ expl F -+ expm1 F -+ expm1f F -+ expm1l F -+ fabs F -+ fabsf F -+ fabsl F -+ finite F -+ finitef F -+ finitel F -+ floor F -+ floorf F -+ floorl F -+ fmod F -+ fmodf F -+ fmodl F -+ frexp F -+ frexpf F -+ frexpl F -+ gamma F -+ gammaf F -+ gammal F -+ hypot F -+ hypotf F -+ hypotl F -+ ilogb F -+ ilogbf F -+ ilogbl F -+ j0 F -+ j0f F -+ j0l F -+ j1 F -+ j1f F -+ j1l F -+ jn F -+ jnf F -+ jnl F -+ ldexp F -+ ldexpf F -+ ldexpl F -+ lgamma F -+ lgamma_r F -+ lgammaf F -+ lgammaf_r F -+ lgammal F -+ lgammal_r F -+ log F -+ log10 F -+ log10f F -+ log10l F -+ log1p F -+ log1pf F -+ log1pl F -+ logb F -+ logbf F -+ logbl F -+ logf F -+ logl F -+ matherr F -+ modf F -+ modff F -+ modfl F -+ nextafter F -+ nextafterf F -+ nextafterl F -+ pow F -+ powf F -+ powl F -+ remainder F -+ remainderf F -+ remainderl F -+ rint F -+ rintf F -+ rintl F -+ scalb F -+ scalbf F -+ scalbl F -+ scalbn F -+ scalbnf F -+ scalbnl F -+ signgam D 0x4 -+ significand F -+ significandf F -+ significandl F -+ sin F -+ sinf F -+ sinh F -+ sinhf F -+ sinhl F -+ sinl F -+ sqrt F -+ sqrtf F -+ sqrtl F -+ tan F -+ tanf F -+ tanh F -+ tanhf F -+ tanhl F -+ tanl F -+ y0 F -+ y0f F -+ y0l F -+ y1 F -+ y1f F -+ y1l F -+ yn F -+ ynf F -+ ynl F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.1 A -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ feclearexcept F -+ fegetenv F -+ fegetexceptflag F -+ feraiseexcept F -+ fesetenv F -+ fesetexceptflag F -+ feupdateenv F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __clog10 F -+ __clog10f F -+ __clog10l F -+ __finite F -+ __finitef F -+ __finitel F -+ __fpclassify F -+ __fpclassifyf F -+ __signbit F -+ __signbitf F -+ cabs F -+ cabsf F -+ cabsl F -+ cacos F -+ cacosf F -+ cacosh F -+ cacoshf F -+ cacoshl F -+ cacosl F -+ carg F -+ cargf F -+ cargl F -+ casin F -+ casinf F -+ casinh F -+ casinhf F -+ casinhl F -+ casinl F -+ catan F -+ catanf F -+ catanh F -+ catanhf F -+ catanhl F -+ catanl F -+ ccos F -+ ccosf F -+ ccosh F -+ ccoshf F -+ ccoshl F -+ ccosl F -+ cexp F -+ cexpf F -+ cexpl F -+ cimag F -+ cimagf F -+ cimagl F -+ clog F -+ clog10 F -+ clog10f F -+ clog10l F -+ clogf F -+ clogl F -+ conj F -+ conjf F -+ conjl F -+ cpow F -+ cpowf F -+ cpowl F -+ cproj F -+ cprojf F -+ cprojl F -+ creal F -+ crealf F -+ creall F -+ csin F -+ csinf F -+ csinh F -+ csinhf F -+ csinhl F -+ csinl F -+ csqrt F -+ csqrtf F -+ csqrtl F -+ ctan F -+ ctanf F -+ ctanh F -+ ctanhf F -+ ctanhl F -+ ctanl F -+ exp10 F -+ exp10f F -+ exp10l F -+ exp2 F -+ exp2f F -+ fdim F -+ fdimf F -+ fdiml F -+ fegetround F -+ feholdexcept F -+ fesetround F -+ fetestexcept F -+ fma F -+ fmaf F -+ fmal F -+ fmax F -+ fmaxf F -+ fmaxl F -+ fmin F -+ fminf F -+ fminl F -+ llrint F -+ llrintf F -+ llrintl F -+ llround F -+ llroundf F -+ llroundl F -+ log2 F -+ log2f F -+ log2l F -+ lrint F -+ lrintf F -+ lrintl F -+ lround F -+ lroundf F -+ lroundl F -+ nan F -+ nanf F -+ nanl F -+ nearbyint F -+ nearbyintf F -+ nearbyintl F -+ nexttoward F -+ nexttowardf F -+ nexttowardl F -+ pow10 F -+ pow10f F -+ pow10l F -+ remquo F -+ remquof F -+ remquol F -+ round F -+ roundf F -+ roundl F -+ scalbln F -+ scalblnf F -+ scalblnl F -+ sincos F -+ sincosf F -+ sincosl F -+ tgamma F -+ tgammaf F -+ tgammal F -+ trunc F -+ truncf F -+ truncl F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls -+ __fpclassifyl F -+ __signbitl F -+ exp2l F -+GLIBC_2.1 powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __fe_dfl_env D 0x8 -+ __fe_enabled_env D 0x8 -+ __fe_nomask_env F -+ __fe_nonieee_env D 0x8 -+GLIBC_2.2.3 ia64-.*-linux.*/tls -+ GLIBC_2.2.3 A -+ matherrf F -+ matherrl F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ fedisableexcept F -+ feenableexcept F -+ fegetexcept F -+GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls -+ __expl F -+ __expm1l F -+GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.3 powerpc64-.*-linux.*/thread -+ GLIBC_2.3 A ---- glibc-2.3.2/abilist/libnsl.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/libnsl.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,142 @@ -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.0 A -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __yp_check F -+ xdr_domainname F -+ xdr_keydat F -+ xdr_mapname F -+ xdr_peername F -+ xdr_valdat F -+ xdr_yp_buf F -+ xdr_ypbind_binding F -+ xdr_ypbind_resp F -+ xdr_ypbind_resptype F -+ xdr_ypbind_setdom F -+ xdr_ypdelete_args F -+ xdr_ypmap_parms F -+ xdr_ypmaplist F -+ xdr_yppush_status F -+ xdr_yppushresp_xfr F -+ xdr_ypreq_key F -+ xdr_ypreq_nokey F -+ xdr_ypreq_xfr F -+ xdr_ypresp_all F -+ xdr_ypresp_key_val F -+ xdr_ypresp_maplist F -+ xdr_ypresp_master F -+ xdr_ypresp_order F -+ xdr_ypresp_val F -+ xdr_ypresp_xfr F -+ xdr_ypstat F -+ xdr_ypupdate_args F -+ xdr_ypxfrstat F -+ yp_all F -+ yp_bind F -+ yp_first F -+ yp_get_default_domain F -+ yp_maplist F -+ yp_master F -+ yp_match F -+ yp_next F -+ yp_order F -+ yp_unbind F -+ yp_update F -+ ypbinderr_string F -+ yperr_string F -+ ypprot_err F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.1 A -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __free_fdresult F -+ __nis_default_access F -+ __nis_default_group F -+ __nis_default_owner F -+ __nis_default_ttl F -+ __nis_finddirectory F -+ __nis_hash F -+ __nisbind_connect F -+ __nisbind_create F -+ __nisbind_destroy F -+ __nisbind_next F -+ nis_add F -+ nis_add_entry F -+ nis_addmember F -+ nis_checkpoint F -+ nis_clone_directory F -+ nis_clone_object F -+ nis_clone_result F -+ nis_creategroup F -+ nis_destroy_object F -+ nis_destroygroup F -+ nis_dir_cmp F -+ nis_domain_of F -+ nis_domain_of_r F -+ nis_first_entry F -+ nis_free_directory F -+ nis_free_object F -+ nis_free_request F -+ nis_freenames F -+ nis_freeresult F -+ nis_freeservlist F -+ nis_freetags F -+ nis_getnames F -+ nis_getservlist F -+ nis_ismember F -+ nis_leaf_of F -+ nis_leaf_of_r F -+ nis_lerror F -+ nis_list F -+ nis_local_directory F -+ nis_local_group F -+ nis_local_host F -+ nis_local_principal F -+ nis_lookup F -+ nis_mkdir F -+ nis_modify F -+ nis_modify_entry F -+ nis_name_of F -+ nis_name_of_r F -+ nis_next_entry F -+ nis_perror F -+ nis_ping F -+ nis_print_directory F -+ nis_print_entry F -+ nis_print_group F -+ nis_print_group_entry F -+ nis_print_link F -+ nis_print_object F -+ nis_print_result F -+ nis_print_rights F -+ nis_print_table F -+ nis_read_obj F -+ nis_remove F -+ nis_remove_entry F -+ nis_removemember F -+ nis_rmdir F -+ nis_servstate F -+ nis_sperrno F -+ nis_sperror F -+ nis_sperror_r F -+ nis_stats F -+ nis_verifygroup F -+ nis_write_obj F -+ readColdStartFile F -+ writeColdStartFile F -+ xdr_cback_data F -+ xdr_obj_p F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ xdr_ypall F -+GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.3 powerpc64-.*-linux.*/thread -+ GLIBC_2.3 A ---- glibc-2.3.2/abilist/libpthread.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/libpthread.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,256 @@ -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.0 A -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ pthread_attr_init F -+ pthread_create F -+ sem_destroy F -+ sem_getvalue F -+ sem_init F -+ sem_post F -+ sem_trywait F -+ sem_wait F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ pthread_atfork F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ pthread_cond_broadcast F -+ pthread_cond_destroy F -+ pthread_cond_init F -+ pthread_cond_signal F -+ pthread_cond_timedwait F -+ pthread_cond_wait F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ _IO_flockfile F -+ _IO_ftrylockfile F -+ _IO_funlockfile F -+ __close F -+ __connect F -+ __errno_location F -+ __fcntl F -+ __fork F -+ __h_errno_location F -+ __lseek F -+ __open F -+ __pthread_getspecific F -+ __pthread_key_create F -+ __pthread_mutex_destroy F -+ __pthread_mutex_init F -+ __pthread_mutex_lock F -+ __pthread_mutex_trylock F -+ __pthread_mutex_unlock F -+ __pthread_mutexattr_destroy F -+ __pthread_mutexattr_init F -+ __pthread_mutexattr_settype F -+ __pthread_once F -+ __pthread_setspecific F -+ __read F -+ __send F -+ __sigaction F -+ __wait F -+ __write F -+ _pthread_cleanup_pop F -+ _pthread_cleanup_pop_restore F -+ _pthread_cleanup_push F -+ _pthread_cleanup_push_defer F -+ accept F -+ close F -+ connect F -+ fcntl F -+ flockfile F -+ fork F -+ fsync F -+ ftrylockfile F -+ funlockfile F -+ longjmp F -+ lseek F -+ msync F -+ nanosleep F -+ open F -+ pause F -+ pthread_attr_destroy F -+ pthread_attr_getdetachstate F -+ pthread_attr_getinheritsched F -+ pthread_attr_getschedparam F -+ pthread_attr_getschedpolicy F -+ pthread_attr_getscope F -+ pthread_attr_setdetachstate F -+ pthread_attr_setinheritsched F -+ pthread_attr_setschedparam F -+ pthread_attr_setschedpolicy F -+ pthread_attr_setscope F -+ pthread_cancel F -+ pthread_condattr_destroy F -+ pthread_condattr_init F -+ pthread_detach F -+ pthread_equal F -+ pthread_exit F -+ pthread_getschedparam F -+ pthread_getspecific F -+ pthread_join F -+ pthread_key_create F -+ pthread_key_delete F -+ pthread_kill F -+ pthread_kill_other_threads_np F -+ pthread_mutex_destroy F -+ pthread_mutex_init F -+ pthread_mutex_lock F -+ pthread_mutex_trylock F -+ pthread_mutex_unlock F -+ pthread_mutexattr_destroy F -+ pthread_mutexattr_getkind_np F -+ pthread_mutexattr_init F -+ pthread_mutexattr_setkind_np F -+ pthread_once F -+ pthread_self F -+ pthread_setcancelstate F -+ pthread_setcanceltype F -+ pthread_setschedparam F -+ pthread_setspecific F -+ pthread_sigmask F -+ pthread_testcancel F -+ raise F -+ read F -+ recv F -+ recvfrom F -+ recvmsg F -+ send F -+ sendmsg F -+ sendto F -+ sigaction F -+ siglongjmp F -+ sigwait F -+ system F -+ tcdrain F -+ vfork F -+ wait F -+ waitpid F -+ write F -+GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.1.1 A -+GLIBC_2.1.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ sem_close F -+ sem_open F -+ sem_unlink F -+GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.1.2 A -+GLIBC_2.1.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __vfork F -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+ GLIBC_2.1 A -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 ia64-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __libc_allocate_rtsig F -+ __libc_current_sigrtmax F -+ __libc_current_sigrtmin F -+ pthread_attr_getguardsize F -+ pthread_attr_getstackaddr F -+ pthread_attr_getstacksize F -+ pthread_attr_setguardsize F -+ pthread_attr_setstackaddr F -+ pthread_attr_setstacksize F -+ pthread_getconcurrency F -+ pthread_mutexattr_gettype F -+ pthread_mutexattr_settype F -+ pthread_rwlock_destroy F -+ pthread_rwlock_init F -+ pthread_rwlock_rdlock F -+ pthread_rwlock_tryrdlock F -+ pthread_rwlock_trywrlock F -+ pthread_rwlock_unlock F -+ pthread_rwlock_wrlock F -+ pthread_rwlockattr_destroy F -+ pthread_rwlockattr_getkind_np F -+ pthread_rwlockattr_getpshared F -+ pthread_rwlockattr_init F -+ pthread_rwlockattr_setkind_np F -+ pthread_rwlockattr_setpshared F -+ pthread_setconcurrency F -+GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2.3 A -+GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ pthread_getattr_np F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __open64 F -+ __pread64 F -+ __pthread_rwlock_destroy F -+ __pthread_rwlock_init F -+ __pthread_rwlock_rdlock F -+ __pthread_rwlock_tryrdlock F -+ __pthread_rwlock_trywrlock F -+ __pthread_rwlock_unlock F -+ __pthread_rwlock_wrlock F -+ __pwrite64 F -+ __res_state F -+ lseek64 F -+ open64 F -+ pread F -+ pread64 F -+ pthread_attr_getstack F -+ pthread_attr_setstack F -+ pthread_barrier_destroy F -+ pthread_barrier_init F -+ pthread_barrier_wait F -+ pthread_barrierattr_destroy F -+ pthread_barrierattr_init F -+ pthread_barrierattr_setpshared F -+ pthread_condattr_getpshared F -+ pthread_condattr_setpshared F -+ pthread_getcpuclockid F -+ pthread_mutex_timedlock F -+ pthread_mutexattr_getpshared F -+ pthread_mutexattr_setpshared F -+ pthread_rwlock_timedrdlock F -+ pthread_rwlock_timedwrlock F -+ pthread_spin_destroy F -+ pthread_spin_init F -+ pthread_spin_lock F -+ pthread_spin_trylock F -+ pthread_spin_unlock F -+ pthread_yield F -+ pwrite F -+ pwrite64 F -+ sem_timedwait F -+GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ GLIBC_2.2.6 A -+GLIBC_2.2.6 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __nanosleep F -+GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ GLIBC_2.3.2 A -+GLIBC_2.3.3 i.86-.*-linux.*/thread sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.3.3 A -+ pthread_barrierattr_getpshared F -+ pthread_condattr_getclock F -+ pthread_condattr_setclock F -+ pthread_timedjoin_np F -+ pthread_tryjoin_np F -+GLIBC_2.3 powerpc64-.*-linux.*/thread -+ GLIBC_2.3 A ---- glibc-2.3.2/abilist/libresolv.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/libresolv.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,95 @@ -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.0 A -+ dn_expand F -+ res_mkquery F -+ res_query F -+ res_querydomain F -+ res_search F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __b64_ntop F -+ __b64_pton F -+ __dn_comp F -+ __dn_count_labels F -+ __dn_skipname F -+ __fp_nquery F -+ __fp_query F -+ __fp_resstat F -+ __hostalias F -+ __loc_aton F -+ __loc_ntoa F -+ __p_cdname F -+ __p_cdnname F -+ __p_class F -+ __p_fqname F -+ __p_fqnname F -+ __p_option F -+ __p_query F -+ __p_secstodate F -+ __p_time F -+ __p_type F -+ __putlong F -+ __putshort F -+ __res_close F -+ __res_dnok F -+ __res_hnok F -+ __res_isourserver F -+ __res_mailok F -+ __res_nameinquery F -+ __res_ownok F -+ __res_queriesmatch F -+ __res_send F -+ __sym_ntop F -+ __sym_ntos F -+ __sym_ston F -+ _gethtbyaddr F -+ _gethtbyname F -+ _gethtbyname2 F -+ _gethtent F -+ _getlong F -+ _getshort F -+ _sethtent F -+ inet_net_ntop F -+ inet_net_pton F -+ inet_neta F -+ res_gethostbyaddr F -+ res_gethostbyname F -+ res_gethostbyname2 F -+ res_send_setqhook F -+ res_send_setrhook F -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ __p_class_syms D 0x54 -+ __p_type_syms D 0x21c -+ _res_opcodes D 0x40 -+GLIBC_2.0 ia64-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __p_class_syms D 0xa8 -+ __p_type_syms D 0x438 -+ _res_opcodes D 0x80 -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ __dn_expand F -+ __res_hostalias F -+ __res_mkquery F -+ __res_nmkquery F -+ __res_nquery F -+ __res_nquerydomain F -+ __res_nsearch F -+ __res_nsend F -+ __res_query F -+ __res_querydomain F -+ __res_search F -+GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.3.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ GLIBC_2.3.2 A -+ __p_rcode F -+GLIBC_2.3 powerpc64-.*-linux.*/thread -+ GLIBC_2.3 A ---- glibc-2.3.2/abilist/librt.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/librt.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,44 @@ -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.1 A -+GLIBC_2.1 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ aio_cancel F -+ aio_cancel64 F -+ aio_error F -+ aio_error64 F -+ aio_fsync F -+ aio_fsync64 F -+ aio_init F -+ aio_read F -+ aio_read64 F -+ aio_return F -+ aio_return64 F -+ aio_suspend F -+ aio_suspend64 F -+ aio_write F -+ aio_write64 F -+ lio_listio F -+ lio_listio64 F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ clock_getcpuclockid F -+ clock_getres F -+ clock_gettime F -+ clock_nanosleep F -+ clock_settime F -+ shm_open F -+ shm_unlink F -+ timer_create F -+ timer_delete F -+ timer_getoverrun F -+ timer_gettime F -+ timer_settime F -+GLIBC_2.2 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.3 powerpc64-.*-linux.*/thread -+ GLIBC_2.3 A ---- glibc-2.3.2/abilist/libthread_db.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/libthread_db.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,59 @@ -+GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.1.3 A -+GLIBC_2.1.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ td_init F -+ td_log F -+ td_ta_clear_event F -+ td_ta_delete F -+ td_ta_enable_stats F -+ td_ta_event_addr F -+ td_ta_event_getmsg F -+ td_ta_get_nthreads F -+ td_ta_get_ph F -+ td_ta_get_stats F -+ td_ta_map_id2thr F -+ td_ta_map_lwp2thr F -+ td_ta_new F -+ td_ta_reset_stats F -+ td_ta_set_event F -+ td_ta_setconcurrency F -+ td_ta_thr_iter F -+ td_ta_tsd_iter F -+ td_thr_clear_event F -+ td_thr_dbresume F -+ td_thr_dbsuspend F -+ td_thr_event_enable F -+ td_thr_event_getmsg F -+ td_thr_get_info F -+ td_thr_getfpregs F -+ td_thr_getgregs F -+ td_thr_getxregs F -+ td_thr_getxregsize F -+ td_thr_set_event F -+ td_thr_setfpregs F -+ td_thr_setgregs F -+ td_thr_setprio F -+ td_thr_setsigpending F -+ td_thr_setxregs F -+ td_thr_sigsetmask F -+ td_thr_tsd F -+ td_thr_validate F -+GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.2.3 A -+GLIBC_2.2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ td_symbol_list F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.2 s390x-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.3.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ GLIBC_2.3.3 A -+ td_thr_tlsbase F -+GLIBC_2.3 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls powerpc64-.*-linux.*/thread s390-.*-linux.*/tls s390x-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls x86_64-.*-linux.*/tls -+ GLIBC_2.3 A -+ td_thr_tls_get_addr F ---- glibc-2.3.2/abilist/libutil.abilist 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/abilist/libutil.abilist 2003-04-01 23:39:52.000000000 -0500 -@@ -0,0 +1,18 @@ -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+ GLIBC_2.0 A -+GLIBC_2.0 i.86-.*-linux.*/notls i.86-.*-linux.*/thread i.86-.*-linux.*/tls ia64-.*-linux.*/tls m68.*-.*-linux.*/notls powerpc-.*-linux.*/notls powerpc-.*-linux.*/thread powerpc-.*-linux.*/tls s390-.*-linux.*/tls sh[34].*-.*-linux.*/notls sh[34].*-.*-linux.*/thread sh[34].*-.*-linux.*/tls -+| GLIBC_2.2.5 x86_64-.*-linux.*/tls -+| GLIBC_2.2 s390x-.*-linux.*/tls -+| GLIBC_2.3 powerpc64-.*-linux.*/thread -+ forkpty F -+ login F -+ login_tty F -+ logout F -+ logwtmp F -+ openpty F -+GLIBC_2.2.5 x86_64-.*-linux.*/tls -+ GLIBC_2.2.5 A -+GLIBC_2.2 s390x-.*-linux.*/tls -+ GLIBC_2.2 A -+GLIBC_2.3 powerpc64-.*-linux.*/thread -+ GLIBC_2.3 A ---- glibc-2.3.2/argp/Makefile 2002-12-04 14:45:21.000000000 -0500 -+++ glibc-2.3.2/argp/Makefile 2003-09-19 22:37:01.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1997, 2002 Free Software Foundation, Inc. -+# Copyright (C) 1997, 2002, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -28,4 +28,8 @@ - - tests = argp-test tst-argp1 - -+CFLAGS-argp-help.c = $(uses-callbacks) -fexceptions -+CFLAGS-argp-parse.c = $(uses-callbacks) -+CFLAGS-argp-fmtstream.c = -fexceptions -+ - include ../Rules ---- glibc-2.3.2/argp/argp-help.c 2002-04-08 04:19:17.000000000 -0400 -+++ glibc-2.3.2/argp/argp-help.c 2003-08-21 08:36:58.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Hierarchial argument parsing help output -- Copyright (C) 1995-2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1995-2000, 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - -@@ -521,7 +521,7 @@ - free (hol); - } - --static inline int -+static int - hol_entry_short_iterate (const struct hol_entry *entry, - int (*func)(const struct argp_option *opt, - const struct argp_option *real, -@@ -547,6 +547,7 @@ - } - - static inline int -+__attribute ((always_inline)) - hol_entry_long_iterate (const struct hol_entry *entry, - int (*func)(const struct argp_option *opt, - const struct argp_option *real, ---- glibc-2.3.2/argp/argp.h 2003-02-28 20:09:18.000000000 -0500 -+++ glibc-2.3.2/argp/argp.h 2003-09-19 22:37:01.000000000 -0400 -@@ -32,6 +32,10 @@ - # define __const const - #endif - -+#ifndef __THROW -+# define __THROW -+#endif -+ - #ifndef __error_t_defined - typedef int error_t; - # define __error_t_defined -@@ -376,11 +380,11 @@ - extern error_t argp_parse (__const struct argp *__restrict __argp, - int __argc, char **__restrict __argv, - unsigned __flags, int *__restrict __arg_index, -- void *__restrict __input) __THROW; -+ void *__restrict __input); - extern error_t __argp_parse (__const struct argp *__restrict __argp, - int __argc, char **__restrict __argv, - unsigned __flags, int *__restrict __arg_index, -- void *__restrict __input) __THROW; -+ void *__restrict __input); - - /* Global variables. */ - -@@ -444,10 +448,10 @@ - ARGP_HELP_*. */ - extern void argp_help (__const struct argp *__restrict __argp, - FILE *__restrict __stream, -- unsigned __flags, char *__restrict __name) __THROW; -+ unsigned __flags, char *__restrict __name); - extern void __argp_help (__const struct argp *__restrict __argp, - FILE *__restrict __stream, unsigned __flags, -- char *__name) __THROW; -+ char *__name); - - /* The following routines are intended to be called from within an argp - parsing routine (thus taking an argp_state structure as the first -@@ -461,23 +465,23 @@ - from the set ARGP_HELP_*. */ - extern void argp_state_help (__const struct argp_state *__restrict __state, - FILE *__restrict __stream, -- unsigned int __flags) __THROW; -+ unsigned int __flags); - extern void __argp_state_help (__const struct argp_state *__restrict __state, - FILE *__restrict __stream, -- unsigned int __flags) __THROW; -+ unsigned int __flags); - - /* Possibly output the standard usage message for ARGP to stderr and exit. */ --extern void argp_usage (__const struct argp_state *__state) __THROW; --extern void __argp_usage (__const struct argp_state *__state) __THROW; -+extern void argp_usage (__const struct argp_state *__state); -+extern void __argp_usage (__const struct argp_state *__state); - - /* If appropriate, print the printf string FMT and following args, preceded - by the program name and `:', to stderr, and followed by a `Try ... --help' - message, then exit (1). */ - extern void argp_error (__const struct argp_state *__restrict __state, -- __const char *__restrict __fmt, ...) __THROW -+ __const char *__restrict __fmt, ...) - __attribute__ ((__format__ (__printf__, 2, 3))); - extern void __argp_error (__const struct argp_state *__restrict __state, -- __const char *__restrict __fmt, ...) __THROW -+ __const char *__restrict __fmt, ...) - __attribute__ ((__format__ (__printf__, 2, 3))); - - /* Similar to the standard gnu error-reporting function error(), but will -@@ -490,11 +494,11 @@ - parsing but don't reflect a (syntactic) problem with the input. */ - extern void argp_failure (__const struct argp_state *__restrict __state, - int __status, int __errnum, -- __const char *__restrict __fmt, ...) __THROW -+ __const char *__restrict __fmt, ...) - __attribute__ ((__format__ (__printf__, 4, 5))); - extern void __argp_failure (__const struct argp_state *__restrict __state, - int __status, int __errnum, -- __const char *__restrict __fmt, ...) __THROW -+ __const char *__restrict __fmt, ...) - __attribute__ ((__format__ (__printf__, 4, 5))); - - /* Returns true if the option OPT is a valid short option. */ ---- glibc-2.3.2/argp/tst-argp1.c 2002-12-04 17:45:02.000000000 -0500 -+++ glibc-2.3.2/argp/tst-argp1.c 2003-03-18 16:46:06.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (C) 2002 Free Software Foundation, Inc. -+/* Copyright (C) 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2002. - -@@ -29,7 +29,7 @@ - #define OPT_TOPLEVEL 304 - - --static const struct argp_option options[] = -+static const struct argp_option test_options[] = - { - { NULL, 0, NULL, 0, "\ - This is a test for threads so we allow ther user to selection the number of \ -@@ -89,12 +89,12 @@ - /* Data structure to communicate with argp functions. */ - static struct argp argp = - { -- options, parse_opt -+ test_options, parse_opt - }; - - --int --main (void) -+static int -+do_test (void) - { - int argc = 2; - char *argv[3] = { (char *) "tst-argp1", (char *) "--help", NULL }; -@@ -113,3 +113,6 @@ - { - return ARGP_ERR_UNKNOWN; - } -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" ---- glibc-2.3.2/assert/assert.h 2001-07-07 15:20:51.000000000 -0400 -+++ glibc-2.3.2/assert/assert.h 2003-08-21 08:36:58.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991,1992,1994-1999,2000,2001 Free Software Foundation, Inc. -+/* Copyright (C) 1991,1992,1994-2001,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -84,16 +84,33 @@ - - __END_DECLS - --# define assert(expr) \ -+/* For the macro definition we use gcc's __builtin_expect if possible -+ to generate good code for the non-error case. gcc 3.0 is a good -+ enough estimate for when the feature became available. */ -+# if __GNUC_PREREQ (3, 0) -+# define assert(expr) \ -+ (__ASSERT_VOID_CAST (__builtin_expect (!!(expr), 1) ? 0 : \ -+ (__assert_fail (__STRING(expr), __FILE__, __LINE__, \ -+ __ASSERT_FUNCTION), 0))) -+# else -+# define assert(expr) \ - (__ASSERT_VOID_CAST ((expr) ? 0 : \ - (__assert_fail (__STRING(expr), __FILE__, __LINE__, \ - __ASSERT_FUNCTION), 0))) -+# endif - - # ifdef __USE_GNU --# define assert_perror(errnum) \ -+# if __GNUC_PREREQ (3, 0) -+# define assert_perror(errnum) \ -+ (__ASSERT_VOID_CAST (__builtin_expect (!(errnum), 1) ? 0 : \ -+ (__assert_perror_fail ((errnum), __FILE__, __LINE__, \ -+ __ASSERT_FUNCTION), 0))) -+# else -+# define assert_perror(errnum) \ - (__ASSERT_VOID_CAST (!(errnum) ? 0 : \ - (__assert_perror_fail ((errnum), __FILE__, __LINE__, \ - __ASSERT_FUNCTION), 0))) -+# endif - # endif - - /* Version 2.4 and later of GCC define a magical variable `__PRETTY_FUNCTION__' ---- glibc-2.3.2/autom4te.cache/output.0 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/autom4te.cache/output.0 2003-09-19 22:40:33.000000000 -0400 -@@ -0,0 +1,8515 @@ -+@%:@! /bin/sh -+@%:@ From configure.in CVSid. -+@%:@ Guess values for system-dependent variables and create Makefiles. -+@%:@ Generated by GNU Autoconf 2.57 for GNU C Library (see version.h). -+@%:@ -+@%:@ Report bugs to . -+@%:@ -+@%:@ Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 -+@%:@ Free Software Foundation, Inc. -+@%:@ This configure script is free software; the Free Software Foundation -+@%:@ gives unlimited permission to copy, distribute and modify it. -+## --------------------- ## -+## M4sh Initialization. ## -+## --------------------- ## -+ -+# Be Bourne compatible -+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then -+ emulate sh -+ NULLCMD=: -+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which -+ # is contrary to our usage. Disable this feature. -+ alias -g '${1+"$@"}'='"$@"' -+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then -+ set -o posix -+fi -+ -+# Support unset when possible. -+if (FOO=FOO; unset FOO) >/dev/null 2>&1; then -+ as_unset=unset -+else -+ as_unset=false -+fi -+ -+ -+# Work around bugs in pre-3.0 UWIN ksh. -+$as_unset ENV MAIL MAILPATH -+PS1='$ ' -+PS2='> ' -+PS4='+ ' -+ -+# NLS nuisances. -+for as_var in \ -+ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ -+ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ -+ LC_TELEPHONE LC_TIME -+do -+ if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then -+ eval $as_var=C; export $as_var -+ else -+ $as_unset $as_var -+ fi -+done -+ -+# Required to use basename. -+if expr a : '\(a\)' >/dev/null 2>&1; then -+ as_expr=expr -+else -+ as_expr=false -+fi -+ -+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then -+ as_basename=basename -+else -+ as_basename=false -+fi -+ -+ -+# Name of the executable. -+as_me=`$as_basename "$0" || -+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ -+ X"$0" : 'X\(//\)$' \| \ -+ X"$0" : 'X\(/\)$' \| \ -+ . : '\(.\)' 2>/dev/null || -+echo X/"$0" | -+ sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } -+ /^X\/\(\/\/\)$/{ s//\1/; q; } -+ /^X\/\(\/\).*/{ s//\1/; q; } -+ s/.*/./; q'` -+ -+ -+# PATH needs CR, and LINENO needs CR and PATH. -+# Avoid depending upon Character Ranges. -+as_cr_letters='abcdefghijklmnopqrstuvwxyz' -+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -+as_cr_Letters=$as_cr_letters$as_cr_LETTERS -+as_cr_digits='0123456789' -+as_cr_alnum=$as_cr_Letters$as_cr_digits -+ -+# The user is always right. -+if test "${PATH_SEPARATOR+set}" != set; then -+ echo "#! /bin/sh" >conf$$.sh -+ echo "exit 0" >>conf$$.sh -+ chmod +x conf$$.sh -+ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then -+ PATH_SEPARATOR=';' -+ else -+ PATH_SEPARATOR=: -+ fi -+ rm -f conf$$.sh -+fi -+ -+ -+ as_lineno_1=$LINENO -+ as_lineno_2=$LINENO -+ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -+ test "x$as_lineno_1" != "x$as_lineno_2" && -+ test "x$as_lineno_3" = "x$as_lineno_2" || { -+ # Find who we are. Look in the path if we contain no path at all -+ # relative or not. -+ case $0 in -+ *[\\/]* ) as_myself=$0 ;; -+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -+done -+ -+ ;; -+ esac -+ # We did not find ourselves, most probably we were run as `sh COMMAND' -+ # in which case we are not to be found in the path. -+ if test "x$as_myself" = x; then -+ as_myself=$0 -+ fi -+ if test ! -f "$as_myself"; then -+ { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 -+ { (exit 1); exit 1; }; } -+ fi -+ case $CONFIG_SHELL in -+ '') -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for as_base in sh bash ksh sh5; do -+ case $as_dir in -+ /*) -+ if ("$as_dir/$as_base" -c ' -+ as_lineno_1=$LINENO -+ as_lineno_2=$LINENO -+ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -+ test "x$as_lineno_1" != "x$as_lineno_2" && -+ test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then -+ $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } -+ $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } -+ CONFIG_SHELL=$as_dir/$as_base -+ export CONFIG_SHELL -+ exec "$CONFIG_SHELL" "$0" ${1+"$@"} -+ fi;; -+ esac -+ done -+done -+;; -+ esac -+ -+ # Create $as_me.lineno as a copy of $as_myself, but with $LINENO -+ # uniformly replaced by the line number. The first 'sed' inserts a -+ # line-number line before each line; the second 'sed' does the real -+ # work. The second script uses 'N' to pair each line-number line -+ # with the numbered line, and appends trailing '-' during -+ # substitution so that $LINENO is not a special case at line end. -+ # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the -+ # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) -+ sed '=' <$as_myself | -+ sed ' -+ N -+ s,$,-, -+ : loop -+ s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, -+ t loop -+ s,-$,, -+ s,^['$as_cr_digits']*\n,, -+ ' >$as_me.lineno && -+ chmod +x $as_me.lineno || -+ { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 -+ { (exit 1); exit 1; }; } -+ -+ # Don't try to exec as it changes $[0], causing all sort of problems -+ # (the dirname of $[0] is not the place where we might find the -+ # original and so on. Autoconf is especially sensible to this). -+ . ./$as_me.lineno -+ # Exit status is that of the last command. -+ exit -+} -+ -+ -+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in -+ *c*,-n*) ECHO_N= ECHO_C=' -+' ECHO_T=' ' ;; -+ *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; -+ *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -+esac -+ -+if expr a : '\(a\)' >/dev/null 2>&1; then -+ as_expr=expr -+else -+ as_expr=false -+fi -+ -+rm -f conf$$ conf$$.exe conf$$.file -+echo >conf$$.file -+if ln -s conf$$.file conf$$ 2>/dev/null; then -+ # We could just check for DJGPP; but this test a) works b) is more generic -+ # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). -+ if test -f conf$$.exe; then -+ # Don't use ln at all; we don't have any links -+ as_ln_s='cp -p' -+ else -+ as_ln_s='ln -s' -+ fi -+elif ln conf$$.file conf$$ 2>/dev/null; then -+ as_ln_s=ln -+else -+ as_ln_s='cp -p' -+fi -+rm -f conf$$ conf$$.exe conf$$.file -+ -+if mkdir -p . 2>/dev/null; then -+ as_mkdir_p=: -+else -+ as_mkdir_p=false -+fi -+ -+as_executable_p="test -f" -+ -+# Sed expression to map a string onto a valid CPP name. -+as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" -+ -+# Sed expression to map a string onto a valid variable name. -+as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g" -+ -+ -+# IFS -+# We need space, tab and new line, in precisely that order. -+as_nl=' -+' -+IFS=" $as_nl" -+ -+# CDPATH. -+$as_unset CDPATH -+ -+ -+# Name of the host. -+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, -+# so uname gets run too. -+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` -+ -+exec 6>&1 -+ -+# -+# Initializations. -+# -+ac_default_prefix=/usr/local -+ac_config_libobj_dir=. -+cross_compiling=no -+subdirs= -+MFLAGS= -+MAKEFLAGS= -+SHELL=${CONFIG_SHELL-/bin/sh} -+ -+# Maximum number of lines to put in a shell here document. -+# This variable seems obsolete. It should probably be removed, and -+# only ac_max_sed_lines should be used. -+: ${ac_max_here_lines=38} -+ -+# Identity of this package. -+PACKAGE_NAME='GNU C Library' -+PACKAGE_TARNAME='c-library' -+PACKAGE_VERSION='(see version.h)' -+PACKAGE_STRING='GNU C Library (see version.h)' -+PACKAGE_BUGREPORT='glibc' -+ -+ac_unique_file="include/features.h" -+ac_subdirs_all="$ac_subdirs_all " -+# Factoring default headers for most tests. -+ac_includes_default="\ -+#include -+#if HAVE_SYS_TYPES_H -+# include -+#endif -+#if HAVE_SYS_STAT_H -+# include -+#endif -+#if STDC_HEADERS -+# include -+# include -+#else -+# if HAVE_STDLIB_H -+# include -+# endif -+#endif -+#if HAVE_STRING_H -+# if !STDC_HEADERS && HAVE_MEMORY_H -+# include -+# endif -+# include -+#endif -+#if HAVE_STRINGS_H -+# include -+#endif -+#if HAVE_INTTYPES_H -+# include -+#else -+# if HAVE_STDINT_H -+# include -+# endif -+#endif -+#if HAVE_UNISTD_H -+# include -+#endif" -+ -+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS with_fp with_cvs enable_check_abi oldest_abi subdirs force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os base_machine sysnames INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP CXX CXXFLAGS ac_ct_CXX AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD PWD_P MAKE MSGFMT MAKEINFO SED AUTOCONF CCVERSION SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO OLD_DEBIAN_INSTALL_INFO BISON VERSIONING libc_cv_asm_protected_directive libc_cv_initfinit_array libc_cv_z_nodelete libc_cv_z_nodlopen libc_cv_z_initfirst libc_cv_Bgroup ASFLAGS_config libc_cv_z_combreloc libc_cv_have_initfini libc_cv_cpp_asm_debuginfo no_whole_archive exceptions LIBGD EGREP sizeof_long_double libc_cv_gcc_unwind_find_fde uname_sysname uname_release uname_version old_glibc_headers libc_cv_slibdir libc_cv_localedir libc_cv_sysconfdir libc_cv_rootsbindir libc_cv_forced_unwind use_ldconfig ldd_rewrite_script gnu_ld gnu_as elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES linux_doors mach_interface_list VERSION RELEASE LIB@&t@OBJS LTLIBOBJS' -+ac_subst_files='' -+ -+# Initialize some variables set by options. -+ac_init_help= -+ac_init_version=false -+# The variables have the same names as the options, with -+# dashes changed to underlines. -+cache_file=/dev/null -+exec_prefix=NONE -+no_create= -+no_recursion= -+prefix=NONE -+program_prefix=NONE -+program_suffix=NONE -+program_transform_name=s,x,x, -+silent= -+site= -+srcdir= -+verbose= -+x_includes=NONE -+x_libraries=NONE -+ -+# Installation directory options. -+# These are left unexpanded so users can "make install exec_prefix=/foo" -+# and all the variables that are supposed to be based on exec_prefix -+# by default will actually change. -+# Use braces instead of parens because sh, perl, etc. also accept them. -+bindir='${exec_prefix}/bin' -+sbindir='${exec_prefix}/sbin' -+libexecdir='${exec_prefix}/libexec' -+datadir='${prefix}/share' -+sysconfdir='${prefix}/etc' -+sharedstatedir='${prefix}/com' -+localstatedir='${prefix}/var' -+libdir='${exec_prefix}/lib' -+includedir='${prefix}/include' -+oldincludedir='/usr/include' -+infodir='${prefix}/info' -+mandir='${prefix}/man' -+ -+ac_prev= -+for ac_option -+do -+ # If the previous option needs an argument, assign it. -+ if test -n "$ac_prev"; then -+ eval "$ac_prev=\$ac_option" -+ ac_prev= -+ continue -+ fi -+ -+ ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` -+ -+ # Accept the important Cygnus configure options, so we can diagnose typos. -+ -+ case $ac_option in -+ -+ -bindir | --bindir | --bindi | --bind | --bin | --bi) -+ ac_prev=bindir ;; -+ -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) -+ bindir=$ac_optarg ;; -+ -+ -build | --build | --buil | --bui | --bu) -+ ac_prev=build_alias ;; -+ -build=* | --build=* | --buil=* | --bui=* | --bu=*) -+ build_alias=$ac_optarg ;; -+ -+ -cache-file | --cache-file | --cache-fil | --cache-fi \ -+ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) -+ ac_prev=cache_file ;; -+ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ -+ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) -+ cache_file=$ac_optarg ;; -+ -+ --config-cache | -C) -+ cache_file=config.cache ;; -+ -+ -datadir | --datadir | --datadi | --datad | --data | --dat | --da) -+ ac_prev=datadir ;; -+ -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ -+ | --da=*) -+ datadir=$ac_optarg ;; -+ -+ -disable-* | --disable-*) -+ ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` -+ # Reject names that are not valid shell variable names. -+ expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ { echo "$as_me: error: invalid feature name: $ac_feature" >&2 -+ { (exit 1); exit 1; }; } -+ ac_feature=`echo $ac_feature | sed 's/-/_/g'` -+ eval "enable_$ac_feature=no" ;; -+ -+ -enable-* | --enable-*) -+ ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` -+ # Reject names that are not valid shell variable names. -+ expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ { echo "$as_me: error: invalid feature name: $ac_feature" >&2 -+ { (exit 1); exit 1; }; } -+ ac_feature=`echo $ac_feature | sed 's/-/_/g'` -+ case $ac_option in -+ *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; -+ *) ac_optarg=yes ;; -+ esac -+ eval "enable_$ac_feature='$ac_optarg'" ;; -+ -+ -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ -+ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ -+ | --exec | --exe | --ex) -+ ac_prev=exec_prefix ;; -+ -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ -+ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ -+ | --exec=* | --exe=* | --ex=*) -+ exec_prefix=$ac_optarg ;; -+ -+ -gas | --gas | --ga | --g) -+ # Obsolete; use --with-gas. -+ with_gas=yes ;; -+ -+ -help | --help | --hel | --he | -h) -+ ac_init_help=long ;; -+ -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) -+ ac_init_help=recursive ;; -+ -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) -+ ac_init_help=short ;; -+ -+ -host | --host | --hos | --ho) -+ ac_prev=host_alias ;; -+ -host=* | --host=* | --hos=* | --ho=*) -+ host_alias=$ac_optarg ;; -+ -+ -includedir | --includedir | --includedi | --included | --include \ -+ | --includ | --inclu | --incl | --inc) -+ ac_prev=includedir ;; -+ -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ -+ | --includ=* | --inclu=* | --incl=* | --inc=*) -+ includedir=$ac_optarg ;; -+ -+ -infodir | --infodir | --infodi | --infod | --info | --inf) -+ ac_prev=infodir ;; -+ -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) -+ infodir=$ac_optarg ;; -+ -+ -libdir | --libdir | --libdi | --libd) -+ ac_prev=libdir ;; -+ -libdir=* | --libdir=* | --libdi=* | --libd=*) -+ libdir=$ac_optarg ;; -+ -+ -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ -+ | --libexe | --libex | --libe) -+ ac_prev=libexecdir ;; -+ -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ -+ | --libexe=* | --libex=* | --libe=*) -+ libexecdir=$ac_optarg ;; -+ -+ -localstatedir | --localstatedir | --localstatedi | --localstated \ -+ | --localstate | --localstat | --localsta | --localst \ -+ | --locals | --local | --loca | --loc | --lo) -+ ac_prev=localstatedir ;; -+ -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ -+ | --localstate=* | --localstat=* | --localsta=* | --localst=* \ -+ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) -+ localstatedir=$ac_optarg ;; -+ -+ -mandir | --mandir | --mandi | --mand | --man | --ma | --m) -+ ac_prev=mandir ;; -+ -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) -+ mandir=$ac_optarg ;; -+ -+ -nfp | --nfp | --nf) -+ # Obsolete; use --without-fp. -+ with_fp=no ;; -+ -+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \ -+ | --no-cr | --no-c | -n) -+ no_create=yes ;; -+ -+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \ -+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) -+ no_recursion=yes ;; -+ -+ -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ -+ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ -+ | --oldin | --oldi | --old | --ol | --o) -+ ac_prev=oldincludedir ;; -+ -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ -+ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ -+ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) -+ oldincludedir=$ac_optarg ;; -+ -+ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) -+ ac_prev=prefix ;; -+ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) -+ prefix=$ac_optarg ;; -+ -+ -program-prefix | --program-prefix | --program-prefi | --program-pref \ -+ | --program-pre | --program-pr | --program-p) -+ ac_prev=program_prefix ;; -+ -program-prefix=* | --program-prefix=* | --program-prefi=* \ -+ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) -+ program_prefix=$ac_optarg ;; -+ -+ -program-suffix | --program-suffix | --program-suffi | --program-suff \ -+ | --program-suf | --program-su | --program-s) -+ ac_prev=program_suffix ;; -+ -program-suffix=* | --program-suffix=* | --program-suffi=* \ -+ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) -+ program_suffix=$ac_optarg ;; -+ -+ -program-transform-name | --program-transform-name \ -+ | --program-transform-nam | --program-transform-na \ -+ | --program-transform-n | --program-transform- \ -+ | --program-transform | --program-transfor \ -+ | --program-transfo | --program-transf \ -+ | --program-trans | --program-tran \ -+ | --progr-tra | --program-tr | --program-t) -+ ac_prev=program_transform_name ;; -+ -program-transform-name=* | --program-transform-name=* \ -+ | --program-transform-nam=* | --program-transform-na=* \ -+ | --program-transform-n=* | --program-transform-=* \ -+ | --program-transform=* | --program-transfor=* \ -+ | --program-transfo=* | --program-transf=* \ -+ | --program-trans=* | --program-tran=* \ -+ | --progr-tra=* | --program-tr=* | --program-t=*) -+ program_transform_name=$ac_optarg ;; -+ -+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \ -+ | -silent | --silent | --silen | --sile | --sil) -+ silent=yes ;; -+ -+ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) -+ ac_prev=sbindir ;; -+ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ -+ | --sbi=* | --sb=*) -+ sbindir=$ac_optarg ;; -+ -+ -sharedstatedir | --sharedstatedir | --sharedstatedi \ -+ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ -+ | --sharedst | --shareds | --shared | --share | --shar \ -+ | --sha | --sh) -+ ac_prev=sharedstatedir ;; -+ -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ -+ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ -+ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ -+ | --sha=* | --sh=*) -+ sharedstatedir=$ac_optarg ;; -+ -+ -site | --site | --sit) -+ ac_prev=site ;; -+ -site=* | --site=* | --sit=*) -+ site=$ac_optarg ;; -+ -+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) -+ ac_prev=srcdir ;; -+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) -+ srcdir=$ac_optarg ;; -+ -+ -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ -+ | --syscon | --sysco | --sysc | --sys | --sy) -+ ac_prev=sysconfdir ;; -+ -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ -+ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) -+ sysconfdir=$ac_optarg ;; -+ -+ -target | --target | --targe | --targ | --tar | --ta | --t) -+ ac_prev=target_alias ;; -+ -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) -+ target_alias=$ac_optarg ;; -+ -+ -v | -verbose | --verbose | --verbos | --verbo | --verb) -+ verbose=yes ;; -+ -+ -version | --version | --versio | --versi | --vers | -V) -+ ac_init_version=: ;; -+ -+ -with-* | --with-*) -+ ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` -+ # Reject names that are not valid shell variable names. -+ expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ { echo "$as_me: error: invalid package name: $ac_package" >&2 -+ { (exit 1); exit 1; }; } -+ ac_package=`echo $ac_package| sed 's/-/_/g'` -+ case $ac_option in -+ *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; -+ *) ac_optarg=yes ;; -+ esac -+ eval "with_$ac_package='$ac_optarg'" ;; -+ -+ -without-* | --without-*) -+ ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` -+ # Reject names that are not valid shell variable names. -+ expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ { echo "$as_me: error: invalid package name: $ac_package" >&2 -+ { (exit 1); exit 1; }; } -+ ac_package=`echo $ac_package | sed 's/-/_/g'` -+ eval "with_$ac_package=no" ;; -+ -+ --x) -+ # Obsolete; use --with-x. -+ with_x=yes ;; -+ -+ -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ -+ | --x-incl | --x-inc | --x-in | --x-i) -+ ac_prev=x_includes ;; -+ -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ -+ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) -+ x_includes=$ac_optarg ;; -+ -+ -x-libraries | --x-libraries | --x-librarie | --x-librari \ -+ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) -+ ac_prev=x_libraries ;; -+ -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ -+ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) -+ x_libraries=$ac_optarg ;; -+ -+ -*) { echo "$as_me: error: unrecognized option: $ac_option -+Try \`$0 --help' for more information." >&2 -+ { (exit 1); exit 1; }; } -+ ;; -+ -+ *=*) -+ ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` -+ # Reject names that are not valid shell variable names. -+ expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && -+ { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 -+ { (exit 1); exit 1; }; } -+ ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` -+ eval "$ac_envvar='$ac_optarg'" -+ export $ac_envvar ;; -+ -+ *) -+ # FIXME: should be removed in autoconf 3.0. -+ echo "$as_me: WARNING: you should use --build, --host, --target" >&2 -+ expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && -+ echo "$as_me: WARNING: invalid host type: $ac_option" >&2 -+ : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} -+ ;; -+ -+ esac -+done -+ -+if test -n "$ac_prev"; then -+ ac_option=--`echo $ac_prev | sed 's/_/-/g'` -+ { echo "$as_me: error: missing argument to $ac_option" >&2 -+ { (exit 1); exit 1; }; } -+fi -+ -+# Be sure to have absolute paths. -+for ac_var in exec_prefix prefix -+do -+ eval ac_val=$`echo $ac_var` -+ case $ac_val in -+ [\\/$]* | ?:[\\/]* | NONE | '' ) ;; -+ *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 -+ { (exit 1); exit 1; }; };; -+ esac -+done -+ -+# Be sure to have absolute paths. -+for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ -+ localstatedir libdir includedir oldincludedir infodir mandir -+do -+ eval ac_val=$`echo $ac_var` -+ case $ac_val in -+ [\\/$]* | ?:[\\/]* ) ;; -+ *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 -+ { (exit 1); exit 1; }; };; -+ esac -+done -+ -+# There might be people who depend on the old broken behavior: `$host' -+# used to hold the argument of --host etc. -+# FIXME: To remove some day. -+build=$build_alias -+host=$host_alias -+target=$target_alias -+ -+# FIXME: To remove some day. -+if test "x$host_alias" != x; then -+ if test "x$build_alias" = x; then -+ cross_compiling=maybe -+ echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. -+ If a cross compiler is detected then cross compile mode will be used." >&2 -+ elif test "x$build_alias" != "x$host_alias"; then -+ cross_compiling=yes -+ fi -+fi -+ -+ac_tool_prefix= -+test -n "$host_alias" && ac_tool_prefix=$host_alias- -+ -+test "$silent" = yes && exec 6>/dev/null -+ -+ -+# Find the source files, if location was not specified. -+if test -z "$srcdir"; then -+ ac_srcdir_defaulted=yes -+ # Try the directory containing this script, then its parent. -+ ac_confdir=`(dirname "$0") 2>/dev/null || -+$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -+ X"$0" : 'X\(//\)[^/]' \| \ -+ X"$0" : 'X\(//\)$' \| \ -+ X"$0" : 'X\(/\)' \| \ -+ . : '\(.\)' 2>/dev/null || -+echo X"$0" | -+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -+ /^X\(\/\/\)[^/].*/{ s//\1/; q; } -+ /^X\(\/\/\)$/{ s//\1/; q; } -+ /^X\(\/\).*/{ s//\1/; q; } -+ s/.*/./; q'` -+ srcdir=$ac_confdir -+ if test ! -r $srcdir/$ac_unique_file; then -+ srcdir=.. -+ fi -+else -+ ac_srcdir_defaulted=no -+fi -+if test ! -r $srcdir/$ac_unique_file; then -+ if test "$ac_srcdir_defaulted" = yes; then -+ { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 -+ { (exit 1); exit 1; }; } -+ else -+ { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 -+ { (exit 1); exit 1; }; } -+ fi -+fi -+(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || -+ { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 -+ { (exit 1); exit 1; }; } -+srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -+ac_env_build_alias_set=${build_alias+set} -+ac_env_build_alias_value=$build_alias -+ac_cv_env_build_alias_set=${build_alias+set} -+ac_cv_env_build_alias_value=$build_alias -+ac_env_host_alias_set=${host_alias+set} -+ac_env_host_alias_value=$host_alias -+ac_cv_env_host_alias_set=${host_alias+set} -+ac_cv_env_host_alias_value=$host_alias -+ac_env_target_alias_set=${target_alias+set} -+ac_env_target_alias_value=$target_alias -+ac_cv_env_target_alias_set=${target_alias+set} -+ac_cv_env_target_alias_value=$target_alias -+ac_env_CC_set=${CC+set} -+ac_env_CC_value=$CC -+ac_cv_env_CC_set=${CC+set} -+ac_cv_env_CC_value=$CC -+ac_env_CFLAGS_set=${CFLAGS+set} -+ac_env_CFLAGS_value=$CFLAGS -+ac_cv_env_CFLAGS_set=${CFLAGS+set} -+ac_cv_env_CFLAGS_value=$CFLAGS -+ac_env_LDFLAGS_set=${LDFLAGS+set} -+ac_env_LDFLAGS_value=$LDFLAGS -+ac_cv_env_LDFLAGS_set=${LDFLAGS+set} -+ac_cv_env_LDFLAGS_value=$LDFLAGS -+ac_env_CPPFLAGS_set=${CPPFLAGS+set} -+ac_env_CPPFLAGS_value=$CPPFLAGS -+ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} -+ac_cv_env_CPPFLAGS_value=$CPPFLAGS -+ac_env_CPP_set=${CPP+set} -+ac_env_CPP_value=$CPP -+ac_cv_env_CPP_set=${CPP+set} -+ac_cv_env_CPP_value=$CPP -+ac_env_CXX_set=${CXX+set} -+ac_env_CXX_value=$CXX -+ac_cv_env_CXX_set=${CXX+set} -+ac_cv_env_CXX_value=$CXX -+ac_env_CXXFLAGS_set=${CXXFLAGS+set} -+ac_env_CXXFLAGS_value=$CXXFLAGS -+ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set} -+ac_cv_env_CXXFLAGS_value=$CXXFLAGS -+ -+# -+# Report the --help message. -+# -+if test "$ac_init_help" = "long"; then -+ # Omit some internal or obsolete options to make the list less imposing. -+ # This message is too long to be a string in the A/UX 3.1 sh. -+ cat <<_ACEOF -+\`configure' configures GNU C Library (see version.h) to adapt to many kinds of systems. -+ -+Usage: $0 [OPTION]... [VAR=VALUE]... -+ -+To assign environment variables (e.g., CC, CFLAGS...), specify them as -+VAR=VALUE. See below for descriptions of some of the useful variables. -+ -+Defaults for the options are specified in brackets. -+ -+Configuration: -+ -h, --help display this help and exit -+ --help=short display options specific to this package -+ --help=recursive display the short help of all the included packages -+ -V, --version display version information and exit -+ -q, --quiet, --silent do not print \`checking...' messages -+ --cache-file=FILE cache test results in FILE [disabled] -+ -C, --config-cache alias for \`--cache-file=config.cache' -+ -n, --no-create do not create output files -+ --srcdir=DIR find the sources in DIR [configure dir or \`..'] -+ -+_ACEOF -+ -+ cat <<_ACEOF -+Installation directories: -+ --prefix=PREFIX install architecture-independent files in PREFIX -+ [$ac_default_prefix] -+ --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX -+ [PREFIX] -+ -+By default, \`make install' will install all the files in -+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -+an installation prefix other than \`$ac_default_prefix' using \`--prefix', -+for instance \`--prefix=\$HOME'. -+ -+For better control, use the options below. -+ -+Fine tuning of the installation directories: -+ --bindir=DIR user executables [EPREFIX/bin] -+ --sbindir=DIR system admin executables [EPREFIX/sbin] -+ --libexecdir=DIR program executables [EPREFIX/libexec] -+ --datadir=DIR read-only architecture-independent data [PREFIX/share] -+ --sysconfdir=DIR read-only single-machine data [PREFIX/etc] -+ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] -+ --localstatedir=DIR modifiable single-machine data [PREFIX/var] -+ --libdir=DIR object code libraries [EPREFIX/lib] -+ --includedir=DIR C header files [PREFIX/include] -+ --oldincludedir=DIR C header files for non-gcc [/usr/include] -+ --infodir=DIR info documentation [PREFIX/info] -+ --mandir=DIR man documentation [PREFIX/man] -+_ACEOF -+ -+ cat <<\_ACEOF -+ -+System types: -+ --build=BUILD configure for building on BUILD [guessed] -+ --host=HOST cross-compile to build programs to run on HOST [BUILD] -+_ACEOF -+fi -+ -+if test -n "$ac_init_help"; then -+ case $ac_init_help in -+ short | recursive ) echo "Configuration of GNU C Library (see version.h):";; -+ esac -+ cat <<\_ACEOF -+ -+Optional Features: -+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) -+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes] -+ --disable-sanity-checks really do not use threads (should not be used except -+ in special situations) @<:@default=yes@:>@ -+ --enable-check-abi do "make check-abi" in "make check" (no/warn/yes) -+ @<:@default=no@:>@ -+ --enable-shared build shared library @<:@default=yes if GNU ld & -+ ELF@:>@ -+ --enable-profile build profiled library @<:@default=yes@:>@ -+ --enable-omitfp build undebuggable optimized library -+ @<:@default=no@:>@ -+ --enable-bounded build with runtime bounds checking -+ @<:@default=no@:>@ -+ --disable-versioning do not include versioning information in the library -+ objects @<:@default=yes if supported@:>@ -+ --enable-oldest-abi=ABI configure the oldest ABI supported @<:@e.g. 2.2@:>@ -+ @<:@default=glibc default@:>@ -+ --enable-add-ons@<:@=DIRS...@:>@ -+ configure and build add-ons in DIR1,DIR2,... search -+ for add-ons if no parameter given -+ --disable-hidden-plt do not hide internal function calls to avoid PLT -+ --enable-static-nss build static NSS modules @<:@default=no@:>@ -+ --disable-force-install don't force installation of files from this package, -+ even if they are older than the installed files -+ --enable-kernel=VERSION compile for compatibility with kernel not older than -+ VERSION -+ --enable-all-warnings enable all useful warnings gcc can issue -+ -+Optional Packages: -+ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] -+ --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) -+ --with-gmp=DIRECTORY find GMP source code in DIRECTORY (not needed) -+ --with-gd=DIR find libgd include dir and library with prefix DIR -+ --with-gd-include=DIR find libgd include files in DIR -+ --with-gd-lib=DIR find libgd library files in DIR -+ --with-fp if using floating-point hardware @<:@default=yes@:>@ -+ --with-binutils=PATH specify location of binutils (as and ld) -+ --with-elf if using the ELF object format -+ --with-xcoff if using the XCOFF object format -+ --without-cvs if CVS should not be used -+ --with-headers=PATH location of system headers to use (for example -+ /usr/src/linux/include) @<:@default=compiler -+ default@:>@ -+ --with-tls enable support for TLS -+ --without-__thread do not use TLS features even when supporting them -+ -+Some influential environment variables: -+ CC C compiler command -+ CFLAGS C compiler flags -+ LDFLAGS linker flags, e.g. -L if you have libraries in a -+ nonstandard directory -+ CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have -+ headers in a nonstandard directory -+ CPP C preprocessor -+ CXX C++ compiler command -+ CXXFLAGS C++ compiler flags -+ -+Use these variables to override the choices made by `configure' or to help -+it to find libraries and programs with nonstandard names/locations. -+ -+Report bugs to . -+_ACEOF -+fi -+ -+if test "$ac_init_help" = "recursive"; then -+ # If there are subdirs, report their specific --help. -+ ac_popdir=`pwd` -+ for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue -+ test -d $ac_dir || continue -+ ac_builddir=. -+ -+if test "$ac_dir" != .; then -+ ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -+ # A "../" for each directory in $ac_dir_suffix. -+ ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -+else -+ ac_dir_suffix= ac_top_builddir= -+fi -+ -+case $srcdir in -+ .) # No --srcdir option. We are building in place. -+ ac_srcdir=. -+ if test -z "$ac_top_builddir"; then -+ ac_top_srcdir=. -+ else -+ ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -+ fi ;; -+ [\\/]* | ?:[\\/]* ) # Absolute path. -+ ac_srcdir=$srcdir$ac_dir_suffix; -+ ac_top_srcdir=$srcdir ;; -+ *) # Relative path. -+ ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -+ ac_top_srcdir=$ac_top_builddir$srcdir ;; -+esac -+# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -+# absolute. -+ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -+ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -+ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -+ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` -+ -+ cd $ac_dir -+ # Check for guested configure; otherwise get Cygnus style configure. -+ if test -f $ac_srcdir/configure.gnu; then -+ echo -+ $SHELL $ac_srcdir/configure.gnu --help=recursive -+ elif test -f $ac_srcdir/configure; then -+ echo -+ $SHELL $ac_srcdir/configure --help=recursive -+ elif test -f $ac_srcdir/configure.ac || -+ test -f $ac_srcdir/configure.in; then -+ echo -+ $ac_configure --help -+ else -+ echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 -+ fi -+ cd "$ac_popdir" -+ done -+fi -+ -+test -n "$ac_init_help" && exit 0 -+if $ac_init_version; then -+ cat <<\_ACEOF -+GNU C Library configure (see version.h) -+generated by GNU Autoconf 2.57 -+ -+Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 -+Free Software Foundation, Inc. -+This configure script is free software; the Free Software Foundation -+gives unlimited permission to copy, distribute and modify it. -+_ACEOF -+ exit 0 -+fi -+exec 5>config.log -+cat >&5 <<_ACEOF -+This file contains any messages produced by compilers while -+running configure, to aid debugging if configure makes a mistake. -+ -+It was created by GNU C Library $as_me (see version.h), which was -+generated by GNU Autoconf 2.57. Invocation command line was -+ -+ $ $0 $@ -+ -+_ACEOF -+{ -+cat <<_ASUNAME -+@%:@@%:@ --------- @%:@@%:@ -+@%:@@%:@ Platform. @%:@@%:@ -+@%:@@%:@ --------- @%:@@%:@ -+ -+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -+uname -m = `(uname -m) 2>/dev/null || echo unknown` -+uname -r = `(uname -r) 2>/dev/null || echo unknown` -+uname -s = `(uname -s) 2>/dev/null || echo unknown` -+uname -v = `(uname -v) 2>/dev/null || echo unknown` -+ -+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -+/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` -+ -+/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -+hostinfo = `(hostinfo) 2>/dev/null || echo unknown` -+/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -+/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` -+ -+_ASUNAME -+ -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ echo "PATH: $as_dir" -+done -+ -+} >&5 -+ -+cat >&5 <<_ACEOF -+ -+ -+@%:@@%:@ ----------- @%:@@%:@ -+@%:@@%:@ Core tests. @%:@@%:@ -+@%:@@%:@ ----------- @%:@@%:@ -+ -+_ACEOF -+ -+ -+# Keep a trace of the command line. -+# Strip out --no-create and --no-recursion so they do not pile up. -+# Strip out --silent because we don't want to record it for future runs. -+# Also quote any args containing shell meta-characters. -+# Make two passes to allow for proper duplicate-argument suppression. -+ac_configure_args= -+ac_configure_args0= -+ac_configure_args1= -+ac_sep= -+ac_must_keep_next=false -+for ac_pass in 1 2 -+do -+ for ac_arg -+ do -+ case $ac_arg in -+ -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \ -+ | -silent | --silent | --silen | --sile | --sil) -+ continue ;; -+ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) -+ ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; -+ esac -+ case $ac_pass in -+ 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; -+ 2) -+ ac_configure_args1="$ac_configure_args1 '$ac_arg'" -+ if test $ac_must_keep_next = true; then -+ ac_must_keep_next=false # Got value, back to normal. -+ else -+ case $ac_arg in -+ *=* | --config-cache | -C | -disable-* | --disable-* \ -+ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ -+ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ -+ | -with-* | --with-* | -without-* | --without-* | --x) -+ case "$ac_configure_args0 " in -+ "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; -+ esac -+ ;; -+ -* ) ac_must_keep_next=true ;; -+ esac -+ fi -+ ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" -+ # Get rid of the leading space. -+ ac_sep=" " -+ ;; -+ esac -+ done -+done -+$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -+$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } -+ -+# When interrupted or exit'd, cleanup temporary files, and complete -+# config.log. We remove comments because anyway the quotes in there -+# would cause problems or look ugly. -+# WARNING: Be sure not to use single quotes in there, as some shells, -+# such as our DU 5.0 friend, will then `close' the trap. -+trap 'exit_status=$? -+ # Save into config.log some information that might help in debugging. -+ { -+ echo -+ -+ cat <<\_ASBOX -+@%:@@%:@ ---------------- @%:@@%:@ -+@%:@@%:@ Cache variables. @%:@@%:@ -+@%:@@%:@ ---------------- @%:@@%:@ -+_ASBOX -+ echo -+ # The following way of writing the cache mishandles newlines in values, -+{ -+ (set) 2>&1 | -+ case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in -+ *ac_space=\ *) -+ sed -n \ -+ "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; -+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" -+ ;; -+ *) -+ sed -n \ -+ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" -+ ;; -+ esac; -+} -+ echo -+ -+ cat <<\_ASBOX -+@%:@@%:@ ----------------- @%:@@%:@ -+@%:@@%:@ Output variables. @%:@@%:@ -+@%:@@%:@ ----------------- @%:@@%:@ -+_ASBOX -+ echo -+ for ac_var in $ac_subst_vars -+ do -+ eval ac_val=$`echo $ac_var` -+ echo "$ac_var='"'"'$ac_val'"'"'" -+ done | sort -+ echo -+ -+ if test -n "$ac_subst_files"; then -+ cat <<\_ASBOX -+@%:@@%:@ ------------- @%:@@%:@ -+@%:@@%:@ Output files. @%:@@%:@ -+@%:@@%:@ ------------- @%:@@%:@ -+_ASBOX -+ echo -+ for ac_var in $ac_subst_files -+ do -+ eval ac_val=$`echo $ac_var` -+ echo "$ac_var='"'"'$ac_val'"'"'" -+ done | sort -+ echo -+ fi -+ -+ if test -s confdefs.h; then -+ cat <<\_ASBOX -+@%:@@%:@ ----------- @%:@@%:@ -+@%:@@%:@ confdefs.h. @%:@@%:@ -+@%:@@%:@ ----------- @%:@@%:@ -+_ASBOX -+ echo -+ sed "/^$/d" confdefs.h | sort -+ echo -+ fi -+ test "$ac_signal" != 0 && -+ echo "$as_me: caught signal $ac_signal" -+ echo "$as_me: exit $exit_status" -+ } >&5 -+ rm -f core *.core && -+ rm -rf conftest* confdefs* conf$$* $ac_clean_files && -+ exit $exit_status -+ ' 0 -+for ac_signal in 1 2 13 15; do -+ trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal -+done -+ac_signal=0 -+ -+# confdefs.h avoids OS command line length limits that DEFS can exceed. -+rm -rf conftest* confdefs.h -+# AIX cpp loses on an empty file, so make sure it contains at least a newline. -+echo >confdefs.h -+ -+# Predefined preprocessor variables. -+ -+cat >>confdefs.h <<_ACEOF -+@%:@define PACKAGE_NAME "$PACKAGE_NAME" -+_ACEOF -+ -+ -+cat >>confdefs.h <<_ACEOF -+@%:@define PACKAGE_TARNAME "$PACKAGE_TARNAME" -+_ACEOF -+ -+ -+cat >>confdefs.h <<_ACEOF -+@%:@define PACKAGE_VERSION "$PACKAGE_VERSION" -+_ACEOF -+ -+ -+cat >>confdefs.h <<_ACEOF -+@%:@define PACKAGE_STRING "$PACKAGE_STRING" -+_ACEOF -+ -+ -+cat >>confdefs.h <<_ACEOF -+@%:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -+_ACEOF -+ -+ -+# Let the site file select an alternate cache file if it wants to. -+# Prefer explicitly selected file to automatically selected ones. -+if test -z "$CONFIG_SITE"; then -+ if test "x$prefix" != xNONE; then -+ CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" -+ else -+ CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" -+ fi -+fi -+for ac_site_file in $CONFIG_SITE; do -+ if test -r "$ac_site_file"; then -+ { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -+echo "$as_me: loading site script $ac_site_file" >&6;} -+ sed 's/^/| /' "$ac_site_file" >&5 -+ . "$ac_site_file" -+ fi -+done -+ -+if test -r "$cache_file"; then -+ # Some versions of bash will fail to source /dev/null (special -+ # files actually), so we avoid doing that. -+ if test -f "$cache_file"; then -+ { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -+echo "$as_me: loading cache $cache_file" >&6;} -+ case $cache_file in -+ [\\/]* | ?:[\\/]* ) . $cache_file;; -+ *) . ./$cache_file;; -+ esac -+ fi -+else -+ { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -+echo "$as_me: creating cache $cache_file" >&6;} -+ >$cache_file -+fi -+ -+# Check that the precious variables saved in the cache have kept the same -+# value. -+ac_cache_corrupted=false -+for ac_var in `(set) 2>&1 | -+ sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do -+ eval ac_old_set=\$ac_cv_env_${ac_var}_set -+ eval ac_new_set=\$ac_env_${ac_var}_set -+ eval ac_old_val="\$ac_cv_env_${ac_var}_value" -+ eval ac_new_val="\$ac_env_${ac_var}_value" -+ case $ac_old_set,$ac_new_set in -+ set,) -+ { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -+echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} -+ ac_cache_corrupted=: ;; -+ ,set) -+ { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -+echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} -+ ac_cache_corrupted=: ;; -+ ,);; -+ *) -+ if test "x$ac_old_val" != "x$ac_new_val"; then -+ { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -+echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} -+ { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -+echo "$as_me: former value: $ac_old_val" >&2;} -+ { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -+echo "$as_me: current value: $ac_new_val" >&2;} -+ ac_cache_corrupted=: -+ fi;; -+ esac -+ # Pass precious variables to config.status. -+ if test "$ac_new_set" = set; then -+ case $ac_new_val in -+ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) -+ ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; -+ *) ac_arg=$ac_var=$ac_new_val ;; -+ esac -+ case " $ac_configure_args " in -+ *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. -+ *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; -+ esac -+ fi -+done -+if $ac_cache_corrupted; then -+ { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -+echo "$as_me: error: changes in the environment can compromise the build" >&2;} -+ { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -+echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+ac_ext=c -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_c_compiler_gnu -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ ac_config_headers="$ac_config_headers config.h" -+ -+ac_aux_dir= -+for ac_dir in scripts $srcdir/scripts; do -+ if test -f $ac_dir/install-sh; then -+ ac_aux_dir=$ac_dir -+ ac_install_sh="$ac_aux_dir/install-sh -c" -+ break -+ elif test -f $ac_dir/install.sh; then -+ ac_aux_dir=$ac_dir -+ ac_install_sh="$ac_aux_dir/install.sh -c" -+ break -+ elif test -f $ac_dir/shtool; then -+ ac_aux_dir=$ac_dir -+ ac_install_sh="$ac_aux_dir/shtool install -c" -+ break -+ fi -+done -+if test -z "$ac_aux_dir"; then -+ { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in scripts $srcdir/scripts" >&5 -+echo "$as_me: error: cannot find install-sh or install.sh in scripts $srcdir/scripts" >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ac_config_guess="$SHELL $ac_aux_dir/config.guess" -+ac_config_sub="$SHELL $ac_aux_dir/config.sub" -+ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. -+ -+ -+if test "`cd $srcdir; /bin/pwd`" = "`/bin/pwd`"; then -+ { { echo "$as_me:$LINENO: error: you must configure in a separate build directory" >&5 -+echo "$as_me: error: you must configure in a separate build directory" >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+# This will get text that should go into config.make. -+config_vars= -+ -+# Check for a --with-gmp argument and set gmp-srcdir in config.make. -+ -+# Check whether --with-gmp or --without-gmp was given. -+if test "${with_gmp+set}" = set; then -+ withval="$with_gmp" -+ -+case "$with_gmp" in -+yes) { { echo "$as_me:$LINENO: error: --with-gmp requires an argument; use --with-gmp=DIRECTORY" >&5 -+echo "$as_me: error: --with-gmp requires an argument; use --with-gmp=DIRECTORY" >&2;} -+ { (exit 1); exit 1; }; } ;; -+''|no) ;; -+*) config_vars="$config_vars -+gmp-srcdir = $withval" ;; -+esac -+ -+fi; -+# Check for a --with-gd argument and set libgd-LDFLAGS in config.make. -+ -+# Check whether --with-gd or --without-gd was given. -+if test "${with_gd+set}" = set; then -+ withval="$with_gd" -+ case "$with_gd" in -+yes|''|no) ;; -+*) libgd_include="-I$withval/include" -+ libgd_ldflags="-L$withval/lib" ;; -+esac -+ -+fi; -+ -+# Check whether --with-gd-include or --without-gd-include was given. -+if test "${with_gd_include+set}" = set; then -+ withval="$with_gd_include" -+ case "$with_gd_include" in -+''|no) ;; -+*) libgd_include="-I$withval" ;; -+esac -+ -+fi; -+ -+# Check whether --with-gd-lib or --without-gd-lib was given. -+if test "${with_gd_lib+set}" = set; then -+ withval="$with_gd_lib" -+ case "$with_gd_lib" in -+''|no) ;; -+*) libgd_ldflags="-L$withval" ;; -+esac -+ -+fi; -+ -+if test -n "$libgd_include"; then -+ config_vars="$config_vars -+CFLAGS-memusagestat.c = $libgd_include" -+fi -+if test -n "$libgd_ldflags"; then -+ config_vars="$config_vars -+libgd-LDFLAGS = $libgd_ldflags" -+fi -+ -+ -+# Check whether --with-fp or --without-fp was given. -+if test "${with_fp+set}" = set; then -+ withval="$with_fp" -+ with_fp=$withval -+else -+ with_fp=yes -+fi; -+ -+ -+# Check whether --with-binutils or --without-binutils was given. -+if test "${with_binutils+set}" = set; then -+ withval="$with_binutils" -+ path_binutils=$withval -+else -+ path_binutils='' -+fi; -+ -+# Check whether --with-elf or --without-elf was given. -+if test "${with_elf+set}" = set; then -+ withval="$with_elf" -+ elf=$withval -+else -+ elf=no -+fi; -+ -+# Check whether --with-xcoff or --without-xcoff was given. -+if test "${with_xcoff+set}" = set; then -+ withval="$with_xcoff" -+ xcoff=$withval -+else -+ xcoff=no -+fi; -+ -+# Check whether --with-cvs or --without-cvs was given. -+if test "${with_cvs+set}" = set; then -+ withval="$with_cvs" -+ with_cvs=$withval -+else -+ with_cvs=yes -+fi; -+if test "$with_cvs" = yes; then -+ if test -d $srcdir/CVS && grep :pserver: $srcdir/CVS/Root > /dev/null -+ then -+ with_cvs=no -+ fi -+fi -+ -+ -+ -+# Check whether --with-headers or --without-headers was given. -+if test "${with_headers+set}" = set; then -+ withval="$with_headers" -+ sysheaders=$withval -+else -+ sysheaders='' -+fi; -+ -+# Check whether --enable-sanity-checks or --disable-sanity-checks was given. -+if test "${enable_sanity_checks+set}" = set; then -+ enableval="$enable_sanity_checks" -+ enable_sanity=$enableval -+else -+ enable_sanity=yes -+fi; -+ -+ -+# Check whether --enable-check-abi or --disable-check-abi was given. -+if test "${enable_check_abi+set}" = set; then -+ enableval="$enable_check_abi" -+ enable_check_abi=$enableval -+else -+ enable_check_abi=no -+fi; -+ -+static=yes -+# Check whether --enable-shared or --disable-shared was given. -+if test "${enable_shared+set}" = set; then -+ enableval="$enable_shared" -+ shared=$enableval -+else -+ shared=default -+fi; -+# Check whether --enable-profile or --disable-profile was given. -+if test "${enable_profile+set}" = set; then -+ enableval="$enable_profile" -+ profile=$enableval -+else -+ profile=yes -+fi; -+# Check whether --enable-omitfp or --disable-omitfp was given. -+if test "${enable_omitfp+set}" = set; then -+ enableval="$enable_omitfp" -+ omitfp=$enableval -+else -+ omitfp=no -+fi; -+# Check whether --enable-bounded or --disable-bounded was given. -+if test "${enable_bounded+set}" = set; then -+ enableval="$enable_bounded" -+ bounded=$enableval -+else -+ bounded=no -+fi; -+# Check whether --enable-versioning or --disable-versioning was given. -+if test "${enable_versioning+set}" = set; then -+ enableval="$enable_versioning" -+ enable_versioning=$enableval -+else -+ enable_versioning=yes -+fi; -+ -+# Check whether --enable-oldest-abi or --disable-oldest-abi was given. -+if test "${enable_oldest_abi+set}" = set; then -+ enableval="$enable_oldest_abi" -+ oldest_abi=$enableval -+else -+ oldest_abi=no -+fi; -+if test "$oldest_abi" = yes || test "$oldest_abi" = no; then -+ oldest_abi=default -+else -+ cat >>confdefs.h <<_ACEOF -+@%:@define GLIBC_OLDEST_ABI "$oldest_abi" -+_ACEOF -+ -+fi -+ -+ -+# Check whether --enable-add-ons or --disable-add-ons was given. -+if test "${enable_add_ons+set}" = set; then -+ enableval="$enable_add_ons" -+ case "$enableval" in -+ yes) add_ons=`cd $srcdir && echo */configure | sed -e 's!/configure!!g'` -+ test "$add_ons" = "*" && add_ons= ;; -+ *) add_ons=`echo "$enableval" | sed 's/,/ /g'`;; -+ esac -+else -+ add_ons= -+fi; -+ -+ -+# Check whether --with-tls or --without-tls was given. -+if test "${with_tls+set}" = set; then -+ withval="$with_tls" -+ usetls=$withval -+else -+ usetls=no -+fi; -+ -+ -+# Check whether --with-__thread or --without-__thread was given. -+if test "${with___thread+set}" = set; then -+ withval="$with___thread" -+ use__thread=$withval -+else -+ use__thread=yes -+fi; -+ -+# Check whether --enable-hidden-plt or --disable-hidden-plt was given. -+if test "${enable_hidden_plt+set}" = set; then -+ enableval="$enable_hidden_plt" -+ hidden=$enableval -+else -+ hidden=yes -+fi; -+if test "x$hidden" = xno; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define NO_HIDDEN 1 -+_ACEOF -+ -+fi -+ -+ -+ -+subdirs="$subdirs " -+add_ons_pfx= -+if test x"$add_ons" != x; then -+ for f in $add_ons; do -+ # Some sanity checks -+ if test "$f" = "crypt"; then -+ { { echo "$as_me:$LINENO: error: -+*** It seems that you're using an old \`crypt' add-on. crypt is now -+*** part of glibc and using the old add-on will not work with this -+*** release. Start again with fresh sources and without the old -+*** \`crypt' add-on." >&5 -+echo "$as_me: error: -+*** It seems that you're using an old \`crypt' add-on. crypt is now -+*** part of glibc and using the old add-on will not work with this -+*** release. Start again with fresh sources and without the old -+*** \`crypt' add-on." >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ if test "$f" = "localedata"; then -+ { { echo "$as_me:$LINENO: error: -+*** It seems that you're using an old \`localedata' add-on. localedata -+*** is now part of glibc and using the old add-on will not work with -+*** this release. Start again with fresh sources and without the old -+*** \`localedata' add-on." >&5 -+echo "$as_me: error: -+*** It seems that you're using an old \`localedata' add-on. localedata -+*** is now part of glibc and using the old add-on will not work with -+*** this release. Start again with fresh sources and without the old -+*** \`localedata' add-on." >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ # Test whether such a subdir really exists. -+ if test -d $srcdir/$f; then -+ add_ons_pfx="$add_ons_pfx $f/" -+ subdirs="$subdirs $f" -+ else -+ { { echo "$as_me:$LINENO: error: add-on directory \"$f\" does not exist" >&5 -+echo "$as_me: error: add-on directory \"$f\" does not exist" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ done -+fi -+ -+# Check whether --enable-static-nss or --disable-static-nss was given. -+if test "${enable_static_nss+set}" = set; then -+ enableval="$enable_static_nss" -+ static_nss=$enableval -+else -+ static_nss=no -+fi; -+if test x"$static_nss" = xyes || test x"$shared" = xno; then -+ static_nss=yes -+ cat >>confdefs.h <<\_ACEOF -+@%:@define DO_STATIC_NSS 1 -+_ACEOF -+ -+fi -+ -+# Check whether --enable-force-install or --disable-force-install was given. -+if test "${enable_force_install+set}" = set; then -+ enableval="$enable_force_install" -+ force_install=$enableval -+else -+ force_install=yes -+fi; -+ -+ -+# Check whether --enable-kernel or --disable-kernel was given. -+if test "${enable_kernel+set}" = set; then -+ enableval="$enable_kernel" -+ minimum_kernel=$enableval -+fi; -+if test "$minimum_kernel" = yes || test "$minimum_kernel" = no; then -+ # Better nothing than this. -+ minimum_kernel="" -+else -+ if test "$minimum_kernel" = current; then -+ minimum_kernel=`uname -r 2>/dev/null` || minimum_kernel= -+ fi -+fi -+ -+# Check whether --enable-all-warnings or --disable-all-warnings was given. -+if test "${enable_all_warnings+set}" = set; then -+ enableval="$enable_all_warnings" -+ all_warnings=$enableval -+fi; -+ -+ -+# Make sure we can run config.sub. -+$ac_config_sub sun4 >/dev/null 2>&1 || -+ { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 -+echo "$as_me: error: cannot run $ac_config_sub" >&2;} -+ { (exit 1); exit 1; }; } -+ -+echo "$as_me:$LINENO: checking build system type" >&5 -+echo $ECHO_N "checking build system type... $ECHO_C" >&6 -+if test "${ac_cv_build+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_build_alias=$build_alias -+test -z "$ac_cv_build_alias" && -+ ac_cv_build_alias=`$ac_config_guess` -+test -z "$ac_cv_build_alias" && -+ { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -+echo "$as_me: error: cannot guess build type; you must specify one" >&2;} -+ { (exit 1); exit 1; }; } -+ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || -+ { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 -+echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} -+ { (exit 1); exit 1; }; } -+ -+fi -+echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -+echo "${ECHO_T}$ac_cv_build" >&6 -+build=$ac_cv_build -+build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -+build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -+build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -+ -+ -+echo "$as_me:$LINENO: checking host system type" >&5 -+echo $ECHO_N "checking host system type... $ECHO_C" >&6 -+if test "${ac_cv_host+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_host_alias=$host_alias -+test -z "$ac_cv_host_alias" && -+ ac_cv_host_alias=$ac_cv_build_alias -+ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || -+ { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -+echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} -+ { (exit 1); exit 1; }; } -+ -+fi -+echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -+echo "${ECHO_T}$ac_cv_host" >&6 -+host=$ac_cv_host -+host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -+host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -+host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -+ -+ -+ -+# The way shlib-versions is used to generate soversions.mk uses a -+# fairly simplistic model for name recognition that can't distinguish -+# i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os -+# of `gnu*' here to be `gnu-gnu*' just so that shlib-versions can -+# tell. This doesn't get used much beyond that, so it's fairly safe. -+case "$host_os" in -+linux*) -+ ;; -+gnu*) -+ host_os=`echo $host_os | sed -e 's/gnu/gnu-gnu/'` -+ ;; -+esac -+ -+# We keep the original values in `$config_*' and never modify them, so we -+# can write them unchanged into config.make. Everything else uses -+# $machine, $vendor, and $os, and changes them whenever convenient. -+config_machine=$host_cpu config_vendor=$host_vendor config_os=$host_os -+ -+# Don't allow vendor == "unknown" -+test "$config_vendor" = unknown && config_vendor= -+config_os="`echo $config_os | sed 's/^unknown-//'`" -+ -+# Some configurations imply other options. -+case "$host_os" in -+gnu* | linux* | bsd4.4* | netbsd* | freebsd*) -+ # These systems always use GNU tools. -+ gnu_ld=yes gnu_as=yes ;; -+esac -+case "$host_os" in -+# i586-linuxaout is mangled into i586-pc-linux-gnuaout -+linux*ecoff* | linux*aout* | gnu*aout* | gnu*ecoff*) -+ ;; -+gnu* | linux* | freebsd* | netbsd* | sysv4* | solaris2* | irix6*) -+ # These systems (almost) always use the ELF format. -+ elf=yes -+ ;; -+aix*) -+ # These systems are always xcoff -+ xcoff=yes -+ elf=no -+ ;; -+esac -+ -+machine=$config_machine -+vendor=$config_vendor -+os=$config_os -+ -+# config.guess on some IBM machines says `rs6000' instead of `powerpc'. -+# Unify this here. -+if test "$machine" = rs6000; then -+ machine="powerpc" -+fi -+ -+# Braindead PowerPC box with absolutely no FPU. -+case "$machine-$host_os" in -+ powerpc*-*soft) -+ with_fp=no -+ ;; -+esac -+ -+### -+### I put this here to prevent those annoying emails from people who cannot -+### read and try to compile glibc on unsupported platforms. --drepper -+### -+### By using the undocumented --enable-hacker-mode option for configure -+### one can skip this test to make the configuration not fail for unsupported -+### platforms. -+### -+if test -z "$enable_hacker_mode"; then -+ case "$machine-$host_os" in -+ *-linux* | *-gnu* | arm*-none* | powerpc-aix4.3.*) -+ ;; -+ *) -+ echo "*** The GNU C library is currently not available for this platform." -+ echo "*** So far nobody cared to port it and if there is no volunteer it" -+ echo "*** might never happen. So, if you have interest to see glibc on" -+ echo "*** this platform visit" -+ echo "*** http://www.gnu.org/software/libc/porting.html" -+ echo "*** and join the group of porters" -+ exit 1 -+ ;; -+ esac -+fi -+ -+# Expand the configuration machine name into a subdirectory by architecture -+# type and particular chip. -+case "$machine" in -+a29k | am29000) base_machine=a29k machine=a29k ;; -+alpha*) base_machine=alpha machine=alpha/$machine ;; -+arm*) base_machine=arm machine=arm/arm32/$machine ;; -+c3[012]) base_machine=cx0 machine=cx0/c30 ;; -+c4[04]) base_machine=cx0 machine=cx0/c40 ;; -+hppa*64*) base_machine=hppa machine=hppa/hppa64 ;; -+hppa*) base_machine=hppa machine=hppa/hppa1.1 ;; -+i[3456]86) base_machine=i386 machine=i386/$machine ;; -+ia64) base_machine=ia64 machine=ia64 ;; -+m680?0) base_machine=m68k machine=m68k/$machine ;; -+m68k) base_machine=m68k machine=m68k/m68020 ;; -+m88???) base_machine=m88k machine=m88k/$machine ;; -+m88k) base_machine=m88k machine=m88k/m88100 ;; -+mips64*) base_machine=mips64 -+ case "$CC $CFLAGS $CPPFLAGS " in -+ *" -mabi=n32 "*) mips_cc_abi=n32 ;; -+ *" -mabi=64 "*|*" -mabi=n64 "*) mips_cc_abi=64 ;; -+ *" -mabi=32 "*|*" -mabi=o32 "*) mips_cc_abi=32 ;; -+ *) mips_cc_abi=default ;; -+ esac -+ case $config_os in -+ *abin32*) mips_config_abi=n32 ;; -+ *abi64*|*abin64*) mips_config_abi=64 ;; -+ *abi32*|*abio32*) mips_config_abi=32 ;; -+ *) mips_config_abi=$mips_cc_abi ;; -+ esac -+ case $mips_config_abi in -+ default) machine=mips/mips64/n32 mips_config_abi=n32 ;; -+ n32) machine=mips/mips64/n32 ;; -+ 64) machine=mips/mips64/n64 ;; -+ 32) machine=mips/mips32/kern64 ;; -+ esac -+ machine=$machine/$config_machine -+ if test $mips_config_abi != $mips_cc_abi; then -+ # This won't make it to config.make, but we want to -+ # set this in case configure tests depend on it. -+ CPPFLAGS="$CPPFLAGS -mabi=$mips_config_abi" -+ fi -+ ;; -+mips*) base_machine=mips machine=mips/mips32/$machine ;; -+powerpc) base_machine=powerpc machine=powerpc/powerpc32 ;; -+powerpc64) base_machine=powerpc machine=powerpc/powerpc64 ;; -+s390) base_machine=s390 machine=s390/s390-32 ;; -+s390x) base_machine=s390 machine=s390/s390-64 ;; -+sh3*) base_machine=sh machine=sh/sh3 ;; -+sh4*) base_machine=sh machine=sh/sh4 ;; -+sparc | sparcv[67]) -+ base_machine=sparc machine=sparc/sparc32 ;; -+sparcv8 | supersparc | hypersparc) -+ base_machine=sparc machine=sparc/sparc32/sparcv8 ;; -+sparcv8plus | sparcv8plusa | sparcv9) -+ base_machine=sparc machine=sparc/sparc32/sparcv9 ;; -+sparcv8plusb | sparcv9b) -+ base_machine=sparc machine=sparc/sparc32/sparcv9b ;; -+sparc64 | ultrasparc) -+ base_machine=sparc machine=sparc/sparc64 ;; -+sparc64b | ultrasparc3) -+ base_machine=sparc machine=sparc/sparc64/sparcv9b ;; -+thumb*) base_machine=thumb machine=arm/thumb/$machine ;; -+*) base_machine=$machine ;; -+esac -+ -+ -+if test "$base_machine" = "i386"; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define USE_REGPARMS 1 -+_ACEOF -+ -+fi -+ -+# Compute the list of sysdep directories for this configuration. -+# This can take a while to compute. -+sysdep_dir=$srcdir/sysdeps -+echo "$as_me:$LINENO: checking sysdep dirs" >&5 -+echo $ECHO_N "checking sysdep dirs... $ECHO_C" >&6 -+# Make sco3.2v4 become sco3.2.4 and sunos4.1.1_U1 become sunos4.1.1.U1. -+os="`echo $os | sed 's/\([0-9A-Z]\)[v_]\([0-9A-Z]\)/\1.\2/g'`" -+ -+case "$os" in -+gnu*) -+ base_os=mach/hurd ;; -+netbsd* | 386bsd* | freebsd* | bsdi*) -+ base_os=unix/bsd/bsd4.4 ;; -+osf* | sunos* | ultrix* | newsos* | dynix* | *bsd*) -+ base_os=unix/bsd ;; -+sysv* | isc* | esix* | sco* | minix* | irix4* | linux*) -+ base_os=unix/sysv ;; -+irix6*) -+ base_os=unix/sysv/irix6/$os ;; -+solaris[2-9]*) -+ base_os=unix/sysv/sysv4 ;; -+hpux*) -+ base_os=unix/sysv/hpux/$os ;; -+aix4.3*) -+ base_os=unix/sysv/aix/aix4.3 ;; -+none) -+ base_os=standalone ;; -+*) -+ base_os='' ;; -+esac -+ -+# For sunos4.1.1, try sunos4.1.1, then sunos4.1, then sunos4, then sunos. -+tail=$os -+ostry=$os -+while o=`echo $tail | sed 's/\.[^.]*$//'`; test $o != $tail; do -+ ostry="$ostry /$o" -+ tail=$o -+done -+o=`echo $tail | sed 's/[0-9]*$//'` -+if test $o != $tail; then -+ ostry="$ostry /$o" -+fi -+# For linux-gnu, try linux-gnu, then linux. -+o=`echo $tail | sed 's/-.*$//'` -+if test $o != $tail; then -+ ostry="$ostry /$o" -+fi -+ -+# For unix/sysv/sysv4, try unix/sysv/sysv4, then unix/sysv, then unix. -+base= -+tail=$base_os -+while b=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$b"; do -+ set $b -+ base="$base /$1" -+ tail="$2" -+done -+ -+# For sparc/sparc32, try sparc/sparc32 and then sparc. -+mach= -+tail=$machine -+while m=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$m"; do -+ set $m -+ # Prepend the machine's FPU directory unless --without-fp. -+ if test "$with_fp" = yes; then -+ mach="$mach /$1/fpu" -+ else -+ mach="$mach /$1/nofpu" -+ fi -+ mach="$mach /$1" -+ tail="$2" -+done -+ -+ -+# Find what sysdep directories exist. -+sysnames= -+IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" -+for d in $add_ons_pfx ''; do -+ for b in $base ''; do -+ for m0 in $mach ''; do -+ for v in /$vendor ''; do -+ test "$v" = / && continue -+ for o in /$ostry ''; do -+ test "$o" = / && continue -+ for m in $mach ''; do -+ if test "$m0$b$v$o$m"; then -+ try="${d}sysdeps$m0$b$v$o$m" -+ test -n "$enable_debug_configure" && -+ echo "$0 DEBUG: try $try" >&2 -+ if test -d $srcdir/$try; then -+ sysnames="$sysnames $try" -+ { test -n "$o" || test -n "$b"; } && os_used=t -+ { test -n "$m" || test -n "$m0"; } && machine_used=t -+ fi -+ fi -+ done -+ done -+ done -+ done -+ done -+done -+IFS="$ac_save_ifs" -+ -+if test -z "$os_used" && test "$os" != none; then -+ { { echo "$as_me:$LINENO: error: Operating system $os is not supported." >&5 -+echo "$as_me: error: Operating system $os is not supported." >&2;} -+ { (exit 1); exit 1; }; } -+fi -+if test -z "$machine_used" && test "$machine" != none; then -+ { { echo "$as_me:$LINENO: error: The $machine is not supported." >&5 -+echo "$as_me: error: The $machine is not supported." >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+# We have now validated the configuration. -+ -+ -+# If using ELF, look for an `elf' subdirectory of each machine directory. -+# We prepend these rather than inserting them whereever the machine appears -+# because things specified by the machine's ELF ABI should override -+# OS-specific things, and should always be the same for any OS on the -+# machine (otherwise what's the point of an ABI?). -+if test "$elf" = yes; then -+ elf_dirs= -+ for d in $add_ons_pfx ''; do -+ for m in $mach; do -+ if test -d $srcdir/${d}sysdeps$m/elf; then -+ elf_dirs="$elf_dirs ${d}sysdeps$m/elf" -+ fi -+ done -+ done -+ sysnames="`echo $elf_dirs | sed -e 's,//,/,g'` $sysnames" -+fi -+ -+ -+# Expand the list of system names into a full list of directories -+# from each element's parent name and Implies file (if present). -+set $sysnames -+names= -+while test $# -gt 0; do -+ name=$1 -+ shift -+ -+ case " $names " in *" $name "*) -+ # Already in the list. -+ continue -+ esac -+ -+ # Report each name as we discover it, so there is no long pause in output. -+ echo $ECHO_N "$name $ECHO_C" >&6 -+ -+ name_base=`echo $name | sed -e 's@\(.*sysdeps\)/.*@\1@'` -+ -+ case $name in -+ /*) xsrcdir= ;; -+ *) xsrcdir=$srcdir/ ;; -+ esac -+ test -n "$enable_debug_configure" && -+ echo "DEBUG: name/Implies $xsrcdir$name/Implies" >&2 -+ -+ if test -f $xsrcdir$name/Implies; then -+ # Collect more names from the `Implies' file (removing comments). -+ implied_candidate="`sed 's/#.*$//' < $xsrcdir$name/Implies`" -+ implied= -+ for x in $implied_candidate; do -+ found=no -+ if test -d $xsrcdir$name_base/$x; then -+ implied="$implied $name_base/$x"; -+ found=yes -+ fi -+ for d in $add_ons_pfx ''; do -+ try="${d}sysdeps/$x" -+ case $d in -+ /*) try_srcdir= ;; -+ *) try_srcdir=$srcdir/ ;; -+ esac -+ test -n "$enable_debug_configure" && -+ echo "DEBUG: $name implied $x try($d) {$try_srcdir}$try" >&2 -+ if test $try != $xsrcdir$name_base/$x && test -d $try_srcdir$try; -+ then -+ implied="$implied $try" -+ found=yes -+ fi -+ done -+ if test $found = no; then -+ { echo "$as_me:$LINENO: WARNING: $name/Implies specifies nonexistent $x" >&5 -+echo "$as_me: WARNING: $name/Implies specifies nonexistent $x" >&2;} -+ fi -+ done -+ else -+ implied= -+ fi -+ -+ # Add NAME to the list of names. -+ names="$names $name" -+ -+ # Find the parent of NAME, using the empty string if it has none. -+ parent="`echo $name | sed -n -e 's=/[^/]*$==' -e '/sysdeps$/q' -e p`" -+ -+ # Add the names implied by NAME, and NAME's parent (if it has one), to -+ # the list of names to be processed (the argument list). We prepend the -+ # implied names to the list and append the parent. We want implied -+ # directories to come before further directories inferred from the -+ # configuration components; this ensures that for sysv4, unix/common -+ # (implied by unix/sysv/sysv4) comes before unix/sysv (in ostry (here $*) -+ # after sysv4). -+ sysnames="`echo $implied $* $parent`" -+ test -n "$sysnames" && set $sysnames -+done -+ -+# Add the default directories. -+default_sysnames=sysdeps/generic -+if test "$elf" = yes; then -+ default_sysnames="sysdeps/generic/elf $default_sysnames" -+fi -+sysnames="$names $default_sysnames" -+ -+# The other names were emitted during the scan. -+echo "$as_me:$LINENO: result: $default_sysnames" >&5 -+echo "${ECHO_T}$default_sysnames" >&6 -+ -+ -+### Locate tools. -+ -+# Find a good install program. We prefer a C program (faster), -+# so one script is as good as another. But avoid the broken or -+# incompatible versions: -+# SysV /etc/install, /usr/sbin/install -+# SunOS /usr/etc/install -+# IRIX /sbin/install -+# AIX /bin/install -+# AmigaOS /C/install, which installs bootblocks on floppy discs -+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -+# AFS /usr/afsws/bin/install, which mishandles nonexistent args -+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -+# ./install, which can be erroneously created by make from ./install.sh. -+echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 -+echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 -+if test -z "$INSTALL"; then -+if test "${ac_cv_path_install+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ # Account for people who put trailing slashes in PATH elements. -+case $as_dir/ in -+ ./ | .// | /cC/* | \ -+ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ -+ /usr/ucb/* ) ;; -+ *) -+ # OSF1 and SCO ODT 3.0 have their own names for install. -+ # Don't use installbsd from OSF since it installs stuff as root -+ # by default. -+ for ac_prog in ginstall scoinst install; do -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then -+ if test $ac_prog = install && -+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then -+ # AIX install. It has an incompatible calling convention. -+ : -+ elif test $ac_prog = install && -+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then -+ # program-specific install script used by HP pwplus--don't use. -+ : -+ else -+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" -+ break 3 -+ fi -+ fi -+ done -+ done -+ ;; -+esac -+done -+ -+ -+fi -+ if test "${ac_cv_path_install+set}" = set; then -+ INSTALL=$ac_cv_path_install -+ else -+ # As a last resort, use the slow shell script. We don't cache a -+ # path for INSTALL within a source directory, because that will -+ # break other packages using the cache if that directory is -+ # removed, or if the path is relative. -+ INSTALL=$ac_install_sh -+ fi -+fi -+echo "$as_me:$LINENO: result: $INSTALL" >&5 -+echo "${ECHO_T}$INSTALL" >&6 -+ -+# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -+# It thinks the first close brace ends the variable substitution. -+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' -+ -+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' -+ -+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' -+ -+if test "$INSTALL" = "${srcdir}/scripts/install-sh -c"; then -+ # The makefiles need to use a different form to find it in $srcdir. -+ INSTALL='\$(..)./scripts/install-sh -c' -+fi -+echo "$as_me:$LINENO: checking whether ln -s works" >&5 -+echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6 -+LN_S=$as_ln_s -+if test "$LN_S" = "ln -s"; then -+ echo "$as_me:$LINENO: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+else -+ echo "$as_me:$LINENO: result: no, using $LN_S" >&5 -+echo "${ECHO_T}no, using $LN_S" >&6 -+fi -+ -+ -+ac_ext=c -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_c_compiler_gnu -+if test -n "$ac_tool_prefix"; then -+ # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -+set dummy ${ac_tool_prefix}gcc; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$CC"; then -+ ac_cv_prog_CC="$CC" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_CC="${ac_tool_prefix}gcc" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+CC=$ac_cv_prog_CC -+if test -n "$CC"; then -+ echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+fi -+if test -z "$ac_cv_prog_CC"; then -+ ac_ct_CC=$CC -+ # Extract the first word of "gcc", so it can be a program name with args. -+set dummy gcc; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_CC"; then -+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_ac_ct_CC="gcc" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+ac_ct_CC=$ac_cv_prog_ac_ct_CC -+if test -n "$ac_ct_CC"; then -+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -+echo "${ECHO_T}$ac_ct_CC" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ CC=$ac_ct_CC -+else -+ CC="$ac_cv_prog_CC" -+fi -+ -+if test -z "$CC"; then -+ if test -n "$ac_tool_prefix"; then -+ # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -+set dummy ${ac_tool_prefix}cc; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$CC"; then -+ ac_cv_prog_CC="$CC" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_CC="${ac_tool_prefix}cc" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+CC=$ac_cv_prog_CC -+if test -n "$CC"; then -+ echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+fi -+if test -z "$ac_cv_prog_CC"; then -+ ac_ct_CC=$CC -+ # Extract the first word of "cc", so it can be a program name with args. -+set dummy cc; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_CC"; then -+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_ac_ct_CC="cc" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+ac_ct_CC=$ac_cv_prog_ac_ct_CC -+if test -n "$ac_ct_CC"; then -+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -+echo "${ECHO_T}$ac_ct_CC" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ CC=$ac_ct_CC -+else -+ CC="$ac_cv_prog_CC" -+fi -+ -+fi -+if test -z "$CC"; then -+ # Extract the first word of "cc", so it can be a program name with args. -+set dummy cc; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$CC"; then -+ ac_cv_prog_CC="$CC" # Let the user override the test. -+else -+ ac_prog_rejected=no -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then -+ ac_prog_rejected=yes -+ continue -+ fi -+ ac_cv_prog_CC="cc" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+if test $ac_prog_rejected = yes; then -+ # We found a bogon in the path, so make sure we never use it. -+ set dummy $ac_cv_prog_CC -+ shift -+ if test $@%:@ != 0; then -+ # We chose a different compiler from the bogus one. -+ # However, it has the same basename, so the bogon will be chosen -+ # first if we set CC to just the basename; use the full file name. -+ shift -+ ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" -+ fi -+fi -+fi -+fi -+CC=$ac_cv_prog_CC -+if test -n "$CC"; then -+ echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+fi -+if test -z "$CC"; then -+ if test -n "$ac_tool_prefix"; then -+ for ac_prog in cl -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$CC"; then -+ ac_cv_prog_CC="$CC" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_CC="$ac_tool_prefix$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+CC=$ac_cv_prog_CC -+if test -n "$CC"; then -+ echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$CC" && break -+ done -+fi -+if test -z "$CC"; then -+ ac_ct_CC=$CC -+ for ac_prog in cl -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_CC"; then -+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_ac_ct_CC="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+ac_ct_CC=$ac_cv_prog_ac_ct_CC -+if test -n "$ac_ct_CC"; then -+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -+echo "${ECHO_T}$ac_ct_CC" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$ac_ct_CC" && break -+done -+ -+ CC=$ac_ct_CC -+fi -+ -+fi -+ -+ -+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -+See \`config.log' for more details." >&5 -+echo "$as_me: error: no acceptable C compiler found in \$PATH -+See \`config.log' for more details." >&2;} -+ { (exit 1); exit 1; }; } -+ -+# Provide some information about the compiler. -+echo "$as_me:$LINENO:" \ -+ "checking for C compiler version" >&5 -+ac_compiler=`set X $ac_compile; echo $2` -+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 -+ (eval $ac_compiler --version &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 -+ (eval $ac_compiler -v &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 -+ (eval $ac_compiler -V &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+ -+EXEEXT= -+echo "$as_me:$LINENO: checking for suffix of object files" >&5 -+echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 -+if test "${ac_cv_objext+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+ -+int -+main () -+{ -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.o conftest.obj -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do -+ case $ac_file in -+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; -+ *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` -+ break;; -+ esac -+done -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -+See \`config.log' for more details." >&5 -+echo "$as_me: error: cannot compute suffix of object files: cannot compile -+See \`config.log' for more details." >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+rm -f conftest.$ac_cv_objext conftest.$ac_ext -+fi -+echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -+echo "${ECHO_T}$ac_cv_objext" >&6 -+OBJEXT=$ac_cv_objext -+ac_objext=$OBJEXT -+echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 -+if test "${ac_cv_c_compiler_gnu+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+ -+int -+main () -+{ -+#ifndef __GNUC__ -+ choke me -+#endif -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_compiler_gnu=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ac_compiler_gnu=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ac_cv_c_compiler_gnu=$ac_compiler_gnu -+ -+fi -+echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 -+GCC=`test $ac_compiler_gnu = yes && echo yes` -+ac_test_CFLAGS=${CFLAGS+set} -+ac_save_CFLAGS=$CFLAGS -+CFLAGS="-g" -+echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 -+if test "${ac_cv_prog_cc_g+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+ -+int -+main () -+{ -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_prog_cc_g=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ac_cv_prog_cc_g=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 -+if test "$ac_test_CFLAGS" = set; then -+ CFLAGS=$ac_save_CFLAGS -+elif test $ac_cv_prog_cc_g = yes; then -+ if test "$GCC" = yes; then -+ CFLAGS="-g -O2" -+ else -+ CFLAGS="-g" -+ fi -+else -+ if test "$GCC" = yes; then -+ CFLAGS="-O2" -+ else -+ CFLAGS= -+ fi -+fi -+echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 -+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -+if test "${ac_cv_prog_cc_stdc+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_prog_cc_stdc=no -+ac_save_CC=$CC -+cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+#include -+#include -+#include -+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -+struct buf { int x; }; -+FILE * (*rcsopen) (struct buf *, struct stat *, int); -+static char *e (p, i) -+ char **p; -+ int i; -+{ -+ return p[i]; -+} -+static char *f (char * (*g) (char **, int), char **p, ...) -+{ -+ char *s; -+ va_list v; -+ va_start (v,p); -+ s = g (p, va_arg (v,int)); -+ va_end (v); -+ return s; -+} -+int test (int i, double x); -+struct s1 {int (*f) (int a);}; -+struct s2 {int (*f) (double a);}; -+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -+int argc; -+char **argv; -+int -+main () -+{ -+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; -+ ; -+ return 0; -+} -+_ACEOF -+# Don't try gcc -ansi; that turns off useful extensions and -+# breaks some systems' header files. -+# AIX -qlanglvl=ansi -+# Ultrix and OSF/1 -std1 -+# HP-UX 10.20 and later -Ae -+# HP-UX older versions -Aa -D_HPUX_SOURCE -+# SVR4 -Xc -D__EXTENSIONS__ -+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -+do -+ CC="$ac_save_CC $ac_arg" -+ rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_prog_cc_stdc=$ac_arg -+break -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+fi -+rm -f conftest.$ac_objext -+done -+rm -f conftest.$ac_ext conftest.$ac_objext -+CC=$ac_save_CC -+ -+fi -+ -+case "x$ac_cv_prog_cc_stdc" in -+ x|xno) -+ echo "$as_me:$LINENO: result: none needed" >&5 -+echo "${ECHO_T}none needed" >&6 ;; -+ *) -+ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 -+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 -+ CC="$CC $ac_cv_prog_cc_stdc" ;; -+esac -+ -+# Some people use a C++ compiler to compile C. Since we use `exit', -+# in C++ we need to declare it. In case someone uses the same compiler -+# for both compiling C and C++ we need to have the C++ compiler decide -+# the declaration of exit, since it's the most demanding environment. -+cat >conftest.$ac_ext <<_ACEOF -+@%:@ifndef __cplusplus -+ choke me -+@%:@endif -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ for ac_declaration in \ -+ '' \ -+ 'extern "C" void std::exit (int) throw (); using std::exit;' \ -+ 'extern "C" void std::exit (int); using std::exit;' \ -+ 'extern "C" void exit (int) throw ();' \ -+ 'extern "C" void exit (int);' \ -+ 'void exit (int);' -+do -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_declaration -+@%:@include -+int -+main () -+{ -+exit (42); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ : -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+continue -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_declaration -+int -+main () -+{ -+exit (42); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ break -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+done -+rm -f conftest* -+if test -n "$ac_declaration"; then -+ echo '#ifdef __cplusplus' >>confdefs.h -+ echo $ac_declaration >>confdefs.h -+ echo '#endif' >>confdefs.h -+fi -+ -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ac_ext=c -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_c_compiler_gnu -+ -+if test $host != $build; then -+ for ac_prog in gcc cc -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_BUILD_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$BUILD_CC"; then -+ ac_cv_prog_BUILD_CC="$BUILD_CC" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_BUILD_CC="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+BUILD_CC=$ac_cv_prog_BUILD_CC -+if test -n "$BUILD_CC"; then -+ echo "$as_me:$LINENO: result: $BUILD_CC" >&5 -+echo "${ECHO_T}$BUILD_CC" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$BUILD_CC" && break -+done -+ -+fi -+ -+ac_ext=c -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_c_compiler_gnu -+echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -+echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 -+# On Suns, sometimes $CPP names a directory. -+if test -n "$CPP" && test -d "$CPP"; then -+ CPP= -+fi -+if test -z "$CPP"; then -+ if test "${ac_cv_prog_CPP+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ # Double quotes because CPP needs to be expanded -+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" -+ do -+ ac_preproc_ok=false -+for ac_c_preproc_warn_flag in '' yes -+do -+ # Use a header file that comes with gcc, so configuring glibc -+ # with a fresh cross-compiler works. -+ # Prefer to if __STDC__ is defined, since -+ # exists even on freestanding compilers. -+ # On the NeXT, cc -E runs the code through the compiler's parser, -+ # not just through cpp. "Syntax error" is here to catch this case. -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+@%:@ifdef __STDC__ -+@%:@ include -+@%:@else -+@%:@ include -+@%:@endif -+ Syntax error -+_ACEOF -+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ grep -v '^ *+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ : -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ # Broken: fails on valid input. -+continue -+fi -+rm -f conftest.err conftest.$ac_ext -+ -+ # OK, works on sane cases. Now check whether non-existent headers -+ # can be detected and how. -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+@%:@include -+_ACEOF -+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ grep -v '^ *+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ # Broken: success on invalid input. -+continue -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ # Passes both tests. -+ac_preproc_ok=: -+break -+fi -+rm -f conftest.err conftest.$ac_ext -+ -+done -+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -+rm -f conftest.err conftest.$ac_ext -+if $ac_preproc_ok; then -+ break -+fi -+ -+ done -+ ac_cv_prog_CPP=$CPP -+ -+fi -+ CPP=$ac_cv_prog_CPP -+else -+ ac_cv_prog_CPP=$CPP -+fi -+echo "$as_me:$LINENO: result: $CPP" >&5 -+echo "${ECHO_T}$CPP" >&6 -+ac_preproc_ok=false -+for ac_c_preproc_warn_flag in '' yes -+do -+ # Use a header file that comes with gcc, so configuring glibc -+ # with a fresh cross-compiler works. -+ # Prefer to if __STDC__ is defined, since -+ # exists even on freestanding compilers. -+ # On the NeXT, cc -E runs the code through the compiler's parser, -+ # not just through cpp. "Syntax error" is here to catch this case. -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+@%:@ifdef __STDC__ -+@%:@ include -+@%:@else -+@%:@ include -+@%:@endif -+ Syntax error -+_ACEOF -+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ grep -v '^ *+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ : -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ # Broken: fails on valid input. -+continue -+fi -+rm -f conftest.err conftest.$ac_ext -+ -+ # OK, works on sane cases. Now check whether non-existent headers -+ # can be detected and how. -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+@%:@include -+_ACEOF -+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ grep -v '^ *+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ # Broken: success on invalid input. -+continue -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ # Passes both tests. -+ac_preproc_ok=: -+break -+fi -+rm -f conftest.err conftest.$ac_ext -+ -+done -+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -+rm -f conftest.err conftest.$ac_ext -+if $ac_preproc_ok; then -+ : -+else -+ { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -+See \`config.log' for more details." >&5 -+echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -+See \`config.log' for more details." >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+ac_ext=c -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_c_compiler_gnu -+ -+# We need the C++ compiler only for testing. -+ac_ext=cc -+ac_cpp='$CXXCPP $CPPFLAGS' -+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -+if test -n "$ac_tool_prefix"; then -+ for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_CXX+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$CXX"; then -+ ac_cv_prog_CXX="$CXX" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+CXX=$ac_cv_prog_CXX -+if test -n "$CXX"; then -+ echo "$as_me:$LINENO: result: $CXX" >&5 -+echo "${ECHO_T}$CXX" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$CXX" && break -+ done -+fi -+if test -z "$CXX"; then -+ ac_ct_CXX=$CXX -+ for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_CXX"; then -+ ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_ac_ct_CXX="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+ac_ct_CXX=$ac_cv_prog_ac_ct_CXX -+if test -n "$ac_ct_CXX"; then -+ echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 -+echo "${ECHO_T}$ac_ct_CXX" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$ac_ct_CXX" && break -+done -+test -n "$ac_ct_CXX" || ac_ct_CXX="g++" -+ -+ CXX=$ac_ct_CXX -+fi -+ -+ -+# Provide some information about the compiler. -+echo "$as_me:$LINENO:" \ -+ "checking for C++ compiler version" >&5 -+ac_compiler=`set X $ac_compile; echo $2` -+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 -+ (eval $ac_compiler --version &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 -+ (eval $ac_compiler -v &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 -+ (eval $ac_compiler -V &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+ -+echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 -+echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6 -+if test "${ac_cv_cxx_compiler_gnu+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+ -+int -+main () -+{ -+#ifndef __GNUC__ -+ choke me -+#endif -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_compiler_gnu=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ac_compiler_gnu=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ac_cv_cxx_compiler_gnu=$ac_compiler_gnu -+ -+fi -+echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 -+echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6 -+GXX=`test $ac_compiler_gnu = yes && echo yes` -+ac_test_CXXFLAGS=${CXXFLAGS+set} -+ac_save_CXXFLAGS=$CXXFLAGS -+CXXFLAGS="-g" -+echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 -+echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6 -+if test "${ac_cv_prog_cxx_g+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+ -+int -+main () -+{ -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_prog_cxx_g=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ac_cv_prog_cxx_g=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 -+echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6 -+if test "$ac_test_CXXFLAGS" = set; then -+ CXXFLAGS=$ac_save_CXXFLAGS -+elif test $ac_cv_prog_cxx_g = yes; then -+ if test "$GXX" = yes; then -+ CXXFLAGS="-g -O2" -+ else -+ CXXFLAGS="-g" -+ fi -+else -+ if test "$GXX" = yes; then -+ CXXFLAGS="-O2" -+ else -+ CXXFLAGS= -+ fi -+fi -+for ac_declaration in \ -+ '' \ -+ 'extern "C" void std::exit (int) throw (); using std::exit;' \ -+ 'extern "C" void std::exit (int); using std::exit;' \ -+ 'extern "C" void exit (int) throw ();' \ -+ 'extern "C" void exit (int);' \ -+ 'void exit (int);' -+do -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_declaration -+@%:@include -+int -+main () -+{ -+exit (42); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ : -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+continue -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_declaration -+int -+main () -+{ -+exit (42); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ break -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+done -+rm -f conftest* -+if test -n "$ac_declaration"; then -+ echo '#ifdef __cplusplus' >>confdefs.h -+ echo $ac_declaration >>confdefs.h -+ echo '#endif' >>confdefs.h -+fi -+ -+ac_ext=c -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_c_compiler_gnu -+ -+# Was a --with-binutils option given? -+if test -n "$path_binutils"; then -+ # Make absolute; ensure a single trailing slash. -+ path_binutils=`(cd $path_binutils; pwd) | sed 's%/*$%/%'` -+ CC="$CC -B$path_binutils" -+fi -+AS=`$CC -print-prog-name=as` -+LD=`$CC -print-prog-name=ld` -+AR=`$CC -print-prog-name=ar` -+ -+OBJDUMP=`$CC -print-prog-name=objdump` -+ -+ -+# ranlib has to be treated a bit differently since it might not exist at all. -+ac_ranlib=`$CC -print-prog-name=ranlib` -+if test "x$ac_ranlib" = xranlib; then -+# This extra check has to happen since gcc simply echos the parameter in -+# case it cannot find the value in its own directories. -+if test -n "$ac_tool_prefix"; then -+ # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -+set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_RANLIB+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$RANLIB"; then -+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+RANLIB=$ac_cv_prog_RANLIB -+if test -n "$RANLIB"; then -+ echo "$as_me:$LINENO: result: $RANLIB" >&5 -+echo "${ECHO_T}$RANLIB" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+fi -+if test -z "$ac_cv_prog_RANLIB"; then -+ ac_ct_RANLIB=$RANLIB -+ # Extract the first word of "ranlib", so it can be a program name with args. -+set dummy ranlib; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_RANLIB"; then -+ ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_ac_ct_RANLIB="ranlib" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" -+fi -+fi -+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -+if test -n "$ac_ct_RANLIB"; then -+ echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 -+echo "${ECHO_T}$ac_ct_RANLIB" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ RANLIB=$ac_ct_RANLIB -+else -+ RANLIB="$ac_cv_prog_RANLIB" -+fi -+ -+else -+ RANLIB=$ac_ranlib -+fi -+ -+ -+# Determine whether we are using GNU binutils. -+echo "$as_me:$LINENO: checking whether $AS is GNU as" >&5 -+echo $ECHO_N "checking whether $AS is GNU as... $ECHO_C" >&6 -+if test "${libc_cv_prog_as_gnu+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ # Most GNU programs take a -v and spit out some text including -+# the word 'GNU'. Some try to read stdin, so give them /dev/null. -+if $AS -o conftest -v &1 | grep GNU > /dev/null 2>&1; then -+ libc_cv_prog_as_gnu=yes -+else -+ libc_cv_prog_as_gnu=no -+fi -+rm -fr contest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_prog_as_gnu" >&5 -+echo "${ECHO_T}$libc_cv_prog_as_gnu" >&6 -+rm -f a.out -+gnu_as=$libc_cv_prog_as_gnu -+ -+echo "$as_me:$LINENO: checking whether $LD is GNU ld" >&5 -+echo $ECHO_N "checking whether $LD is GNU ld... $ECHO_C" >&6 -+if test "${libc_cv_prog_ld_gnu+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ # Most GNU programs take a -v and spit out some text including -+# the word 'GNU'. Some try to read stdin, so give them /dev/null. -+if $LD -o conftest -v &1 | grep GNU > /dev/null 2>&1; then -+ libc_cv_prog_ld_gnu=yes -+else -+ libc_cv_prog_ld_gnu=no -+fi -+rm -fr contest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_prog_ld_gnu" >&5 -+echo "${ECHO_T}$libc_cv_prog_ld_gnu" >&6 -+gnu_ld=$libc_cv_prog_ld_gnu -+ -+ -+# Accept binutils 2.13 or newer. -+for ac_prog in $AS -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_AS+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$AS"; then -+ ac_cv_prog_AS="$AS" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_AS="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+AS=$ac_cv_prog_AS -+if test -n "$AS"; then -+ echo "$as_me:$LINENO: result: $AS" >&5 -+echo "${ECHO_T}$AS" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$AS" && break -+done -+ -+if test -z "$AS"; then -+ ac_verc_fail=yes -+else -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $AS" >&5 -+echo $ECHO_N "checking version of $AS... $ECHO_C" >&6 -+ ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 2.1[3-9]*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 -+fi -+if test $ac_verc_fail = yes; then -+ AS=: critic_missing="$critic_missing as" -+fi -+ -+for ac_prog in $LD -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_LD+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$LD"; then -+ ac_cv_prog_LD="$LD" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_LD="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+LD=$ac_cv_prog_LD -+if test -n "$LD"; then -+ echo "$as_me:$LINENO: result: $LD" >&5 -+echo "${ECHO_T}$LD" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$LD" && break -+done -+ -+if test -z "$LD"; then -+ ac_verc_fail=yes -+else -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $LD" >&5 -+echo $ECHO_N "checking version of $LD... $ECHO_C" >&6 -+ ac_prog_version=`$LD --version 2>&1 | sed -n 's/^.*GNU ld.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 2.1[3-9]*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 -+fi -+if test $ac_verc_fail = yes; then -+ LD=: critic_missing="$critic_missing ld" -+fi -+ -+ -+# We need the physical current working directory. We cannot use the -+# "pwd -P" shell builtin since that's not portable. Instead we try to -+# find a pwd binary. Note that assigning to the PWD environment -+# variable might have some interesting side effects, so we don't do -+# that. -+# Extract the first word of "pwd", so it can be a program name with args. -+set dummy pwd; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_path_PWD_P+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ case $PWD_P in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_PWD_P="$PWD_P" # Let the user override the test with a path. -+ ;; -+ *) -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_path_PWD_P="$as_dir/$ac_word$ac_exec_ext" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_path_PWD_P" && ac_cv_path_PWD_P="no" -+ ;; -+esac -+fi -+PWD_P=$ac_cv_path_PWD_P -+ -+if test -n "$PWD_P"; then -+ echo "$as_me:$LINENO: result: $PWD_P" >&5 -+echo "${ECHO_T}$PWD_P" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+if test "$PWD_P" = no; then -+ { { echo "$as_me:$LINENO: error: *** A pwd binary could not be found." >&5 -+echo "$as_me: error: *** A pwd binary could not be found." >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+# These programs are version sensitive. -+ -+for ac_prog in ${ac_tool_prefix}gcc ${ac_tool_prefix}cc -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$CC"; then -+ ac_cv_prog_CC="$CC" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_CC="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+CC=$ac_cv_prog_CC -+if test -n "$CC"; then -+ echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$CC" && break -+done -+ -+if test -z "$CC"; then -+ ac_verc_fail=yes -+else -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $CC" >&5 -+echo $ECHO_N "checking version of $CC... $ECHO_C" >&6 -+ ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 3.[2-9]*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 -+fi -+if test $ac_verc_fail = yes; then -+ critic_missing="$critic_missing gcc" -+fi -+ -+for ac_prog in gnumake gmake make -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_MAKE+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$MAKE"; then -+ ac_cv_prog_MAKE="$MAKE" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_MAKE="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+MAKE=$ac_cv_prog_MAKE -+if test -n "$MAKE"; then -+ echo "$as_me:$LINENO: result: $MAKE" >&5 -+echo "${ECHO_T}$MAKE" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$MAKE" && break -+done -+ -+if test -z "$MAKE"; then -+ ac_verc_fail=yes -+else -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $MAKE" >&5 -+echo $ECHO_N "checking version of $MAKE... $ECHO_C" >&6 -+ ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 3.79* | 3.[89]*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 -+fi -+if test $ac_verc_fail = yes; then -+ critic_missing="$critic_missing make" -+fi -+ -+ -+for ac_prog in gnumsgfmt gmsgfmt msgfmt -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_MSGFMT+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$MSGFMT"; then -+ ac_cv_prog_MSGFMT="$MSGFMT" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_MSGFMT="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+MSGFMT=$ac_cv_prog_MSGFMT -+if test -n "$MSGFMT"; then -+ echo "$as_me:$LINENO: result: $MSGFMT" >&5 -+echo "${ECHO_T}$MSGFMT" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$MSGFMT" && break -+done -+ -+if test -z "$MSGFMT"; then -+ ac_verc_fail=yes -+else -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $MSGFMT" >&5 -+echo $ECHO_N "checking version of $MSGFMT... $ECHO_C" >&6 -+ ac_prog_version=`$MSGFMT --version 2>&1 | sed -n 's/^.*GNU gettext.* \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 0.10.3[6-9]* | 0.10.[4-9][0-9]* | 0.1[1-9]* | 0.[2-9][0-9]* | [1-9].*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 -+fi -+if test $ac_verc_fail = yes; then -+ MSGFMT=: aux_missing="$aux_missing msgfmt" -+fi -+ -+for ac_prog in makeinfo -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_MAKEINFO+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$MAKEINFO"; then -+ ac_cv_prog_MAKEINFO="$MAKEINFO" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_MAKEINFO="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+MAKEINFO=$ac_cv_prog_MAKEINFO -+if test -n "$MAKEINFO"; then -+ echo "$as_me:$LINENO: result: $MAKEINFO" >&5 -+echo "${ECHO_T}$MAKEINFO" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$MAKEINFO" && break -+done -+ -+if test -z "$MAKEINFO"; then -+ ac_verc_fail=yes -+else -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $MAKEINFO" >&5 -+echo $ECHO_N "checking version of $MAKEINFO... $ECHO_C" >&6 -+ ac_prog_version=`$MAKEINFO --version 2>&1 | sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 4.*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 -+fi -+if test $ac_verc_fail = yes; then -+ MAKEINFO=: aux_missing="$aux_missing makeinfo" -+fi -+ -+for ac_prog in sed -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_SED+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$SED"; then -+ ac_cv_prog_SED="$SED" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_SED="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+SED=$ac_cv_prog_SED -+if test -n "$SED"; then -+ echo "$as_me:$LINENO: result: $SED" >&5 -+echo "${ECHO_T}$SED" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$SED" && break -+done -+ -+if test -z "$SED"; then -+ ac_verc_fail=yes -+else -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $SED" >&5 -+echo $ECHO_N "checking version of $SED... $ECHO_C" >&6 -+ ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed version \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 3.0[2-9]*|3.[1-9]*|[4-9]*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 -+fi -+if test $ac_verc_fail = yes; then -+ SED=: aux_missing="$aux_missing sed" -+fi -+ -+ -+for ac_prog in autoconf -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_AUTOCONF+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$AUTOCONF"; then -+ ac_cv_prog_AUTOCONF="$AUTOCONF" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_AUTOCONF="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+AUTOCONF=$ac_cv_prog_AUTOCONF -+if test -n "$AUTOCONF"; then -+ echo "$as_me:$LINENO: result: $AUTOCONF" >&5 -+echo "${ECHO_T}$AUTOCONF" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$AUTOCONF" && break -+done -+test -n "$AUTOCONF" || AUTOCONF="no" -+ -+case "x$AUTOCONF" in -+xno|x|x:) AUTOCONF=no ;; -+*) -+ echo "$as_me:$LINENO: checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works" >&5 -+echo $ECHO_N "checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works... $ECHO_C" >&6 -+if test "${libc_cv_autoconf_works+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if (cd $srcdir; $AUTOCONF $ACFLAGS configure.in > /dev/null 2>&1); then -+ libc_cv_autoconf_works=yes -+ else -+ libc_cv_autoconf_works=no -+ fi -+fi -+echo "$as_me:$LINENO: result: $libc_cv_autoconf_works" >&5 -+echo "${ECHO_T}$libc_cv_autoconf_works" >&6 -+ test $libc_cv_autoconf_works = yes || AUTOCONF=no -+ ;; -+esac -+if test "x$with_cvs" = xyes && test "x$AUTOCONF" = xno; then -+ # If --without-cvs they probably won't change configure.in, so no complaints. -+ aux_missing="$aux_missing autoconf" -+fi -+ -+test -n "$critic_missing" && { { echo "$as_me:$LINENO: error: -+*** These critical programs are missing or too old:$critic_missing -+*** Check the INSTALL file for required versions." >&5 -+echo "$as_me: error: -+*** These critical programs are missing or too old:$critic_missing -+*** Check the INSTALL file for required versions." >&2;} -+ { (exit 1); exit 1; }; } -+ -+test -n "$aux_missing" && { echo "$as_me:$LINENO: WARNING: -+*** These auxiliary programs are missing or incompatible versions:$aux_missing -+*** some features will be disabled. -+*** Check the INSTALL file for required versions." >&5 -+echo "$as_me: WARNING: -+*** These auxiliary programs are missing or incompatible versions:$aux_missing -+*** some features will be disabled. -+*** Check the INSTALL file for required versions." >&2;} -+ -+# glibcbug.in wants to know the compiler version. -+CCVERSION=`$CC -v 2>&1 | sed -n 's/gcc version //p'` -+ -+ -+# if using special system headers, find out the compiler's sekrit -+# header directory and add that to the list. NOTE: Only does the right -+# thing on a system that doesn't need fixincludes. (Not presently a problem.) -+if test -n "$sysheaders"; then -+ ccheaders=`$CC -print-file-name=include` -+ SYSINCLUDES="-nostdinc -isystem $ccheaders -isystem $sysheaders" -+fi -+ -+ -+# check if ranlib is necessary -+echo "$as_me:$LINENO: checking whether ranlib is necessary" >&5 -+echo $ECHO_N "checking whether ranlib is necessary... $ECHO_C" >&6 -+if test "${libc_cv_ranlib_necessary+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+echo "${ECHO_T}$libc_cv_ranlib_necessary" >&6 -+if test "$libc_cv_ranlib_necessary" = no; then -+ RANLIB=: -+fi -+ -+# Test if LD_LIBRARY_PATH contains the notation for the current directory -+# since this would lead to problems installing/building glibc. -+# LD_LIBRARY_PATH contains the current directory if one of the following -+# is true: -+# - one of the terminals (":" and ";") is the first or last sign -+# - two terminals occur directly after each other -+# - the path contains an element with a dot in it -+echo "$as_me:$LINENO: checking LD_LIBRARY_PATH variable" >&5 -+echo $ECHO_N "checking LD_LIBRARY_PATH variable... $ECHO_C" >&6 -+case ${LD_LIBRARY_PATH} in -+ [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* ) -+ ld_library_path_setting="contains current directory" -+ ;; -+ *) -+ ld_library_path_setting="ok" -+ ;; -+esac -+echo "$as_me:$LINENO: result: $ld_library_path_setting" >&5 -+echo "${ECHO_T}$ld_library_path_setting" >&6 -+if test "$ld_library_path_setting" != "ok"; then -+{ { echo "$as_me:$LINENO: error: -+*** LD_LIBRARY_PATH shouldn't contain the current directory when -+*** building glibc. Please change the environment variable -+*** and run configure again." >&5 -+echo "$as_me: error: -+*** LD_LIBRARY_PATH shouldn't contain the current directory when -+*** building glibc. Please change the environment variable -+*** and run configure again." >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+echo "$as_me:$LINENO: checking whether GCC supports -static-libgcc" >&5 -+echo $ECHO_N "checking whether GCC supports -static-libgcc... $ECHO_C" >&6 -+if test "${libc_cv_gcc_static_libgcc+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if $CC -v -static-libgcc 2>&1 | grep -q 'unrecognized option.*static-libgcc'; then -+ libc_cv_gcc_static_libgcc= -+else -+ libc_cv_gcc_static_libgcc=-static-libgcc -+fi -+fi -+echo "$as_me:$LINENO: result: $libc_cv_gcc_static_libgcc" >&5 -+echo "${ECHO_T}$libc_cv_gcc_static_libgcc" >&6 -+ -+ -+# Extract the first word of "bash", so it can be a program name with args. -+set dummy bash; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_path_BASH+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ case $BASH in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_BASH="$BASH" # Let the user override the test with a path. -+ ;; -+ *) -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_path_BASH="$as_dir/$ac_word$ac_exec_ext" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_path_BASH" && ac_cv_path_BASH="no" -+ ;; -+esac -+fi -+BASH=$ac_cv_path_BASH -+ -+if test -n "$BASH"; then -+ echo "$as_me:$LINENO: result: $BASH" >&5 -+echo "${ECHO_T}$BASH" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+if test "$BASH" != no && -+ $BASH -c 'test "$BASH_VERSINFO" \ -+ && test "$BASH_VERSINFO" -ge 2 >&/dev/null'; then -+ libc_cv_have_bash2=yes -+else -+ libc_cv_have_bash2=no -+fi -+ -+ -+if test "$BASH" = no; then -+ # Extract the first word of "ksh", so it can be a program name with args. -+set dummy ksh; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_path_KSH+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ case $KSH in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_KSH="$KSH" # Let the user override the test with a path. -+ ;; -+ *) -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_path_KSH="$as_dir/$ac_word$ac_exec_ext" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_path_KSH" && ac_cv_path_KSH="no" -+ ;; -+esac -+fi -+KSH=$ac_cv_path_KSH -+ -+if test -n "$KSH"; then -+ echo "$as_me:$LINENO: result: $KSH" >&5 -+echo "${ECHO_T}$KSH" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ if test "$KSH" = no; then -+ libc_cv_have_ksh=no -+ else -+ libc_cv_have_ksh=yes -+ fi -+else -+ KSH="$BASH" -+ -+ libc_cv_have_ksh=yes -+fi -+ -+ -+for ac_prog in gawk mawk nawk awk -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_AWK+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$AWK"; then -+ ac_cv_prog_AWK="$AWK" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_AWK="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+AWK=$ac_cv_prog_AWK -+if test -n "$AWK"; then -+ echo "$as_me:$LINENO: result: $AWK" >&5 -+echo "${ECHO_T}$AWK" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$AWK" && break -+done -+ -+# Extract the first word of "perl", so it can be a program name with args. -+set dummy perl; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_path_PERL+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ case $PERL in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_PERL="$PERL" # Let the user override the test with a path. -+ ;; -+ *) -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_path_PERL" && ac_cv_path_PERL="no" -+ ;; -+esac -+fi -+PERL=$ac_cv_path_PERL -+ -+if test -n "$PERL"; then -+ echo "$as_me:$LINENO: result: $PERL" >&5 -+echo "${ECHO_T}$PERL" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+if test "$PERL" != no && -+ (eval `$PERL -V:apiversion`; test `expr "$apiversion" \< 5` -ne 0); then -+ PERL=no -+fi -+# Extract the first word of "install-info", so it can be a program name with args. -+set dummy install-info; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_path_INSTALL_INFO+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ case $INSTALL_INFO in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_INSTALL_INFO="$INSTALL_INFO" # Let the user override the test with a path. -+ ;; -+ *) -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+as_dummy="$PATH:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin" -+for as_dir in $as_dummy -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_path_INSTALL_INFO="$as_dir/$ac_word$ac_exec_ext" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_path_INSTALL_INFO" && ac_cv_path_INSTALL_INFO="no" -+ ;; -+esac -+fi -+INSTALL_INFO=$ac_cv_path_INSTALL_INFO -+ -+if test -n "$INSTALL_INFO"; then -+ echo "$as_me:$LINENO: result: $INSTALL_INFO" >&5 -+echo "${ECHO_T}$INSTALL_INFO" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+if test "$INSTALL_INFO" != "no"; then -+echo "$as_me:$LINENO: checking for old Debian install-info" >&5 -+echo $ECHO_N "checking for old Debian install-info... $ECHO_C" >&6 -+if test "${libc_cv_old_debian_install_info+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ mkdir conftest.d -+ # There is a hard ^_ on the next line. I am open to better ideas. -+ (echo '' -+ echo 'File: dir Node: Top This is the top of the INFO tree' -+ echo '* Menu:') >conftest.d/dir -+ (echo 'INFO-DIR-SECTION i-d-s works' -+ echo 'START-INFO-DIR-ENTRY' -+ echo '* Prog: (prog). Program.' -+ echo 'END-INFO-DIR-ENTRY') >conftest.d/prog.info -+ if $INSTALL_INFO --info-dir=conftest.d conftest.d/prog.info >&5 2>&1 -+ then -+ if grep -s 'i-d-s works' conftest.d/dir >/dev/null -+ then libc_cv_old_debian_install_info=no -+ else libc_cv_old_debian_install_info=yes -+ fi -+ else libc_cv_old_debian_install_info=no testfailed=t -+ fi -+ rm -fr conftest.d -+fi -+echo "$as_me:$LINENO: result: $libc_cv_old_debian_install_info" >&5 -+echo "${ECHO_T}$libc_cv_old_debian_install_info" >&6 -+if test -n "$testfailed" -+then { echo "$as_me:$LINENO: WARNING: install-info errored out, check config.log" >&5 -+echo "$as_me: WARNING: install-info errored out, check config.log" >&2;} -+fi -+OLD_DEBIAN_INSTALL_INFO=$libc_cv_old_debian_install_info -+fi -+ -+ -+# Extract the first word of "bison", so it can be a program name with args. -+set dummy bison; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_path_BISON+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ case $BISON in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_BISON="$BISON" # Let the user override the test with a path. -+ ;; -+ *) -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+as_dummy="$PATH:/usr/local/bin:/usr/bin:/bin" -+for as_dir in $as_dummy -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_path_BISON="$as_dir/$ac_word$ac_exec_ext" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_path_BISON" && ac_cv_path_BISON="no" -+ ;; -+esac -+fi -+BISON=$ac_cv_path_BISON -+ -+if test -n "$BISON"; then -+ echo "$as_me:$LINENO: result: $BISON" >&5 -+echo "${ECHO_T}$BISON" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ -+echo "$as_me:$LINENO: checking for signed size_t type" >&5 -+echo $ECHO_N "checking for signed size_t type... $ECHO_C" >&6 -+if test "${libc_cv_signed_size_t+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ echo '#include -+FOOBAR __SIZE_TYPE__ FOOBAR' > conftest.c -+if eval "$ac_cpp conftest.c 2>/dev/null" \ -+| grep '^FOOBAR.*unsigned.*FOOBAR$' >/dev/null; then -+ libc_cv_signed_size_t=no -+else -+ libc_cv_signed_size_t=yes -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_signed_size_t" >&5 -+echo "${ECHO_T}$libc_cv_signed_size_t" >&6 -+if test $libc_cv_signed_size_t = yes; then -+ cat >> confdefs.h <<\EOF -+#undef __SIZE_TYPE__ -+#define __SIZE_TYPE__ unsigned -+EOF -+fi -+ -+ -+echo "$as_me:$LINENO: checking for libc-friendly stddef.h" >&5 -+echo $ECHO_N "checking for libc-friendly stddef.h... $ECHO_C" >&6 -+if test "${libc_cv_friendly_stddef+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#define __need_size_t -+#define __need_wchar_t -+#include -+#define __need_NULL -+#include -+int -+main () -+{ -+size_t size; wchar_t wchar; -+#ifdef offsetof -+#error stddef.h ignored __need_* -+#endif -+if (&size == NULL || &wchar == NULL) abort (); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_friendly_stddef=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+libc_cv_friendly_stddef=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+echo "$as_me:$LINENO: result: $libc_cv_friendly_stddef" >&5 -+echo "${ECHO_T}$libc_cv_friendly_stddef" >&6 -+if test $libc_cv_friendly_stddef = yes; then -+ config_vars="$config_vars -+override stddef.h = # The installed seems to be libc-friendly." -+fi -+ -+echo "$as_me:$LINENO: checking whether we need to use -P to assemble .S files" >&5 -+echo $ECHO_N "checking whether we need to use -P to assemble .S files... $ECHO_C" >&6 -+if test "${libc_cv_need_minus_P+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.S <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_need_minus_P=no -+else -+ libc_cv_need_minus_P=yes -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_need_minus_P" >&5 -+echo "${ECHO_T}$libc_cv_need_minus_P" >&6 -+if test $libc_cv_need_minus_P = yes; then -+ config_vars="$config_vars -+asm-CPPFLAGS = -P # The assembler can't grok cpp's # line directives." -+fi -+ -+echo "$as_me:$LINENO: checking whether .text pseudo-op must be used" >&5 -+echo $ECHO_N "checking whether .text pseudo-op must be used... $ECHO_C" >&6 -+if test "${libc_cv_dot_text+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.s <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_dot_text=.text -+fi -+rm -f conftest* -+fi -+ -+if test -z "$libc_cv_dot_text"; then -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+else -+ echo "$as_me:$LINENO: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+fi -+ -+echo "$as_me:$LINENO: checking for assembler global-symbol directive" >&5 -+echo $ECHO_N "checking for assembler global-symbol directive... $ECHO_C" >&6 -+if test "${libc_cv_asm_global_directive+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ libc_cv_asm_global_directive=UNKNOWN -+for ac_globl in .globl .global .EXPORT; do -+ cat > conftest.s <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_asm_global_directive=${ac_globl} -+ fi -+ rm -f conftest* -+ test $libc_cv_asm_global_directive != UNKNOWN && break -+done -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_global_directive" >&5 -+echo "${ECHO_T}$libc_cv_asm_global_directive" >&6 -+if test $libc_cv_asm_global_directive = UNKNOWN; then -+ { { echo "$as_me:$LINENO: error: cannot determine asm global directive" >&5 -+echo "$as_me: error: cannot determine asm global directive" >&2;} -+ { (exit 1); exit 1; }; } -+else -+ cat >>confdefs.h <<_ACEOF -+@%:@define ASM_GLOBAL_DIRECTIVE ${libc_cv_asm_global_directive} -+_ACEOF -+ -+fi -+ -+echo "$as_me:$LINENO: checking for .set assembler directive" >&5 -+echo $ECHO_N "checking for .set assembler directive... $ECHO_C" >&6 -+if test "${libc_cv_asm_set_directive+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.s < conftest1.c <<\EOF -+extern int glibc_conftest_frobozz; -+void _start() { glibc_conftest_frobozz = 1; } -+EOF -+if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \ -+ -nostartfiles -nostdlib \ -+ -o conftest conftest.s conftest1.c 1>&5 2>&5; then -+ libc_cv_asm_set_directive=yes -+else -+ libc_cv_asm_set_directive=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_set_directive" >&5 -+echo "${ECHO_T}$libc_cv_asm_set_directive" >&6 -+if test $libc_cv_asm_set_directive = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_ASM_SET_DIRECTIVE 1 -+_ACEOF -+ -+fi -+ -+echo "$as_me:$LINENO: checking for assembler .type directive prefix" >&5 -+echo $ECHO_N "checking for assembler .type directive prefix... $ECHO_C" >&6 -+if test "${libc_cv_asm_type_prefix+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ libc_cv_asm_type_prefix=no -+for ac_try_prefix in '@' '%' '#'; do -+ cat > conftest.s <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_asm_type_prefix=${ac_try_prefix} -+ fi -+ rm -f conftest* -+ test "x$libc_cv_asm_type_prefix" != xno && break -+done -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_type_prefix" >&5 -+echo "${ECHO_T}$libc_cv_asm_type_prefix" >&6 -+if test "x$libc_cv_asm_type_prefix" != xno; then -+ cat >>confdefs.h <<_ACEOF -+@%:@define ASM_TYPE_DIRECTIVE_PREFIX ${libc_cv_asm_type_prefix} -+_ACEOF -+ -+fi -+ -+# The Aix ld uses global .symbol_names instead of symbol_names. -+# Unfortunately also used in the PPC64 ELF ABI. -+case "${os}${machine}" in -+aix4.3* | linux*powerpc/powerpc64*) -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_ASM_GLOBAL_DOT_NAME 1 -+_ACEOF -+ -+esac -+ -+echo "$as_me:$LINENO: checking for .symver assembler directive" >&5 -+echo $ECHO_N "checking for .symver assembler directive... $ECHO_C" >&6 -+if test "${libc_cv_asm_symver_directive+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.s <&5 2>&5; then -+ libc_cv_asm_symver_directive=yes -+else -+ libc_cv_asm_symver_directive=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_symver_directive" >&5 -+echo "${ECHO_T}$libc_cv_asm_symver_directive" >&6 -+echo "$as_me:$LINENO: checking for ld --version-script" >&5 -+echo $ECHO_N "checking for ld --version-script... $ECHO_C" >&6 -+if test "${libc_cv_ld_version_script_option+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test $libc_cv_asm_symver_directive = yes; then -+ cat > conftest.s < conftest.map <&5 2>&5; then -+ if { ac_try='${CC-cc} $CFLAGS $LDFLAGS -shared -+ -o conftest.so conftest.o -+ -nostartfiles -nostdlib -+ -Wl,--version-script,conftest.map -+ 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; -+ then -+ libc_cv_ld_version_script_option=yes -+ else -+ libc_cv_ld_version_script_option=no -+ fi -+ else -+ libc_cv_ld_version_script_option=no -+ fi -+else -+ libc_cv_ld_version_script_option=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_ld_version_script_option" >&5 -+echo "${ECHO_T}$libc_cv_ld_version_script_option" >&6 -+if test $shared != no && -+ test $libc_cv_asm_symver_directive = yes && -+ test $libc_cv_ld_version_script_option = yes && -+ test $enable_versioning = yes; then -+ VERSIONING=yes -+ cat >>confdefs.h <<\_ACEOF -+@%:@define DO_VERSIONING 1 -+_ACEOF -+ -+else -+ VERSIONING=no -+fi -+ -+ -+if test $elf = yes && test $shared != no && test $VERSIONING = no; then -+ echo "\ -+*** WARNING: You should not compile GNU libc without versioning. Not using -+*** versioning will introduce incompatibilities so that old binaries -+*** will not run anymore. -+*** For versioning you need recent binutils (binutils-2.8.1.0.23 or newer)." -+fi -+if test $elf = yes; then -+ echo "$as_me:$LINENO: checking for .previous assembler directive" >&5 -+echo $ECHO_N "checking for .previous assembler directive... $ECHO_C" >&6 -+if test "${libc_cv_asm_previous_directive+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.s <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_asm_previous_directive=yes -+ else -+ libc_cv_asm_previous_directive=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_previous_directive" >&5 -+echo "${ECHO_T}$libc_cv_asm_previous_directive" >&6 -+ if test $libc_cv_asm_previous_directive = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_ASM_PREVIOUS_DIRECTIVE 1 -+_ACEOF -+ -+ else -+ echo "$as_me:$LINENO: checking for .popsection assembler directive" >&5 -+echo $ECHO_N "checking for .popsection assembler directive... $ECHO_C" >&6 -+if test "${libc_cv_asm_popsection_directive+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.s <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_asm_popsection_directive=yes -+ else -+ libc_cv_asm_popsection_directive=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_popsection_directive" >&5 -+echo "${ECHO_T}$libc_cv_asm_popsection_directive" >&6 -+ if test $libc_cv_asm_popsection_directive = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_ASM_POPSECTION_DIRECTIVE 1 -+_ACEOF -+ -+ fi -+ fi -+ echo "$as_me:$LINENO: checking for .protected and .hidden assembler directive" >&5 -+echo $ECHO_N "checking for .protected and .hidden assembler directive... $ECHO_C" >&6 -+if test "${libc_cv_asm_protected_directive+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.s <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_asm_protected_directive=yes -+ else -+ libc_cv_asm_protected_directive=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_protected_directive" >&5 -+echo "${ECHO_T}$libc_cv_asm_protected_directive" >&6 -+ -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_PROTECTED 1 -+_ACEOF -+ -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_HIDDEN 1 -+_ACEOF -+ -+ -+ if test $libc_cv_asm_protected_directive = yes; then -+ echo "$as_me:$LINENO: checking whether __attribute__((visibility())) is supported" >&5 -+echo $ECHO_N "checking whether __attribute__((visibility())) is supported... $ECHO_C" >&6 -+if test "${libc_cv_visibility_attribute+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ if grep '\.hidden.*foo' conftest.s >/dev/null; then -+ if grep '\.protected.*bar' conftest.s >/dev/null; then -+ libc_cv_visibility_attribute=yes -+ fi -+ fi -+ fi -+ rm -f conftest.cs -+ -+fi -+echo "$as_me:$LINENO: result: $libc_cv_visibility_attribute" >&5 -+echo "${ECHO_T}$libc_cv_visibility_attribute" >&6 -+ if test $libc_cv_visibility_attribute = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_VISIBILITY_ATTRIBUTE 1 -+_ACEOF -+ -+ fi -+ fi -+ -+ if test $libc_cv_visibility_attribute = yes; then -+ echo "$as_me:$LINENO: checking for broken __attribute__((visibility()))" >&5 -+echo $ECHO_N "checking for broken __attribute__((visibility()))... $ECHO_C" >&6 -+if test "${libc_cv_broken_visibility_attribute+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ if grep '\.hidden[ _]foo' conftest.s >/dev/null; then -+ libc_cv_broken_visibility_attribute=no -+ fi -+ fi -+ rm -f conftest.c conftest.s -+ -+fi -+echo "$as_me:$LINENO: result: $libc_cv_broken_visibility_attribute" >&5 -+echo "${ECHO_T}$libc_cv_broken_visibility_attribute" >&6 -+ if test $libc_cv_broken_visibility_attribute = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_BROKEN_VISIBILITY_ATTRIBUTE 1 -+_ACEOF -+ -+ fi -+ fi -+ -+ echo "$as_me:$LINENO: checking for broken __attribute__((alias()))" >&5 -+echo $ECHO_N "checking for broken __attribute__((alias()))... $ECHO_C" >&6 -+if test "${libc_cv_broken_alias_attribute+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ if grep 'xyzzy' conftest.s >/dev/null && -+ grep 'abccb' conftest.s >/dev/null; then -+ libc_cv_broken_alias_attribute=no -+ fi -+ fi -+ rm -f conftest.c conftest.s -+ -+fi -+echo "$as_me:$LINENO: result: $libc_cv_broken_alias_attribute" >&5 -+echo "${ECHO_T}$libc_cv_broken_alias_attribute" >&6 -+ if test $libc_cv_broken_alias_attribute = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_BROKEN_ALIAS_ATTRIBUTE 1 -+_ACEOF -+ -+ fi -+ -+ if test $libc_cv_visibility_attribute = yes -a $gnu_ld = yes; then -+ echo "$as_me:$LINENO: checking whether to put _rtld_local into .sdata section" >&5 -+echo $ECHO_N "checking whether to put _rtld_local into .sdata section... $ECHO_C" >&6 -+if test "${libc_cv_have_sdata_section+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ echo "int i;" > conftest.c -+ libc_cv_have_sdata_section=no -+ if ${CC-cc} $LDFLAGS -shared -Wl,--verbose conftest.c -o conftest.so 2>&1 \ -+ | grep '\.sdata' >/dev/null; then -+ libc_cv_have_sdata_section=yes -+ fi -+ rm -f conftest.c conftest.so -+ -+fi -+echo "$as_me:$LINENO: result: $libc_cv_have_sdata_section" >&5 -+echo "${ECHO_T}$libc_cv_have_sdata_section" >&6 -+ if test $libc_cv_have_sdata_section = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_SDATA_SECTION 1 -+_ACEOF -+ -+ fi -+ fi -+ -+ echo "$as_me:$LINENO: checking for .preinit_array/.init_array/.fini_array support" >&5 -+echo $ECHO_N "checking for .preinit_array/.init_array/.fini_array support... $ECHO_C" >&6 -+if test "${libc_cv_initfinit_array+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } -+ then -+ if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then -+ libc_cv_initfinit_array=yes -+ else -+ libc_cv_initfinit_array=no -+ fi -+ else -+ libc_cv_initfinit_array=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_initfinit_array" >&5 -+echo "${ECHO_T}$libc_cv_initfinit_array" >&6 -+ -+ if test $libc_cv_initfinit_array = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_INITFINI_ARRAY 1 -+_ACEOF -+ -+ fi -+ -+ echo "$as_me:$LINENO: checking for -z nodelete option" >&5 -+echo $ECHO_N "checking for -z nodelete option... $ECHO_C" >&6 -+if test "${libc_cv_z_nodelete+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } -+ then -+ libc_cv_z_nodelete=yes -+ else -+ libc_cv_z_nodelete=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_z_nodelete" >&5 -+echo "${ECHO_T}$libc_cv_z_nodelete" >&6 -+ -+ -+ echo "$as_me:$LINENO: checking for -z nodlopen option" >&5 -+echo $ECHO_N "checking for -z nodlopen option... $ECHO_C" >&6 -+if test "${libc_cv_z_nodlopen+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } -+ then -+ libc_cv_z_nodlopen=yes -+ else -+ libc_cv_z_nodlopen=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_z_nodlopen" >&5 -+echo "${ECHO_T}$libc_cv_z_nodlopen" >&6 -+ -+ -+ echo "$as_me:$LINENO: checking for -z initfirst option" >&5 -+echo $ECHO_N "checking for -z initfirst option... $ECHO_C" >&6 -+if test "${libc_cv_z_initfirst+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } -+ then -+ libc_cv_z_initfirst=yes -+ else -+ libc_cv_z_initfirst=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_z_initfirst" >&5 -+echo "${ECHO_T}$libc_cv_z_initfirst" >&6 -+ -+ -+ echo "$as_me:$LINENO: checking for -Bgroup option" >&5 -+echo $ECHO_N "checking for -Bgroup option... $ECHO_C" >&6 -+if test "${libc_cv_Bgroup+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } -+ then -+ libc_cv_Bgroup=yes -+ else -+ libc_cv_Bgroup=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_Bgroup" >&5 -+echo "${ECHO_T}$libc_cv_Bgroup" >&6 -+ -+ -+ ASFLAGS_config= -+ echo "$as_me:$LINENO: checking whether --noexecstack is desirable for .S files" >&5 -+echo $ECHO_N "checking whether --noexecstack is desirable for .S files... $ECHO_C" >&6 -+if test "${libc_cv_as_noexecstack+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } \ -+ && grep -q .note.GNU-stack conftest.s \ -+ && { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -Wa,--noexecstack -+ -c -o conftest.o conftest.s 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } -+ then -+ libc_cv_as_noexecstack=yes -+ else -+ libc_cv_as_noexecstack=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_as_noexecstack" >&5 -+echo "${ECHO_T}$libc_cv_as_noexecstack" >&6 -+ if test $libc_cv_as_noexecstack = yes; then -+ ASFLAGS_config="$ASFLAGS_config -Wa,--noexecstack" -+ fi -+ -+ echo "$as_me:$LINENO: checking for -z combreloc" >&5 -+echo $ECHO_N "checking for -z combreloc... $ECHO_C" >&6 -+if test "${libc_cv_z_combreloc+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } -+ then -+ if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then -+ libc_cv_z_combreloc=yes -+ else -+ libc_cv_z_combreloc=no -+ fi -+ else -+ libc_cv_z_combreloc=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_z_combreloc" >&5 -+echo "${ECHO_T}$libc_cv_z_combreloc" >&6 -+ if test "$libc_cv_z_combreloc" = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_Z_COMBRELOC 1 -+_ACEOF -+ -+ fi -+fi -+ -+ -+if test $elf != yes; then -+ echo "$as_me:$LINENO: checking for .init and .fini sections" >&5 -+echo $ECHO_N "checking for .init and .fini sections... $ECHO_C" >&6 -+if test "${libc_cv_have_initfini+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+ -+int -+main () -+{ -+asm (".section .init"); -+ asm (".section .fini"); -+ asm ("${libc_cv_dot_text}"); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_have_initfini=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+libc_cv_have_initfini=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+echo "$as_me:$LINENO: result: $libc_cv_have_initfini" >&5 -+echo "${ECHO_T}$libc_cv_have_initfini" >&6 -+ if test $libc_cv_have_initfini = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_INITFINI 1 -+_ACEOF -+ -+ fi -+fi -+ -+if test $elf = yes -a $gnu_ld = yes; then -+ echo "$as_me:$LINENO: checking whether cc puts quotes around section names" >&5 -+echo $ECHO_N "checking whether cc puts quotes around section names... $ECHO_C" >&6 -+if test "${libc_cv_have_section_quotes+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c </dev/null; then -+ libc_cv_have_section_quotes=yes -+ else -+ libc_cv_have_section_quotes=no -+ fi -+ else -+ libc_cv_have_section_quotes=unknown -+ fi -+ rm -f conftest.cs -+ -+fi -+echo "$as_me:$LINENO: result: $libc_cv_have_section_quotes" >&5 -+echo "${ECHO_T}$libc_cv_have_section_quotes" >&6 -+ if test $libc_cv_have_section_quotes = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_SECTION_QUOTES 1 -+_ACEOF -+ -+ fi -+fi -+ -+ -+ -+if test $elf = yes; then -+ libc_cv_asm_underscores=no -+else -+ if test $ac_cv_prog_cc_works = yes; then -+ echo "$as_me:$LINENO: checking for _ prefix on C symbol names" >&5 -+echo $ECHO_N "checking for _ prefix on C symbol names... $ECHO_C" >&6 -+if test "${libc_cv_asm_underscores+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+asm ("_glibc_foobar:"); -+int -+main () -+{ -+glibc_foobar (); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_asm_underscores=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+libc_cv_asm_underscores=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_underscores" >&5 -+echo "${ECHO_T}$libc_cv_asm_underscores" >&6 -+ else -+ echo "$as_me:$LINENO: checking for _ prefix on C symbol names" >&5 -+echo $ECHO_N "checking for _ prefix on C symbol names... $ECHO_C" >&6 -+if test "${libc_cv_asm_underscores+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.$ac_ext <&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ if grep _underscore_test conftest* >/dev/null; then -+ rm -f conftest* -+ libc_cv_asm_underscores=yes -+ else -+ rm -f conftest* -+ libc_cv_asm_underscores=no -+ fi -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -f conftest* -+ libc_cv_asm_underscores=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_underscores" >&5 -+echo "${ECHO_T}$libc_cv_asm_underscores" >&6 -+ fi -+fi -+if test $libc_cv_asm_underscores = no; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define NO_UNDERSCORES 1 -+_ACEOF -+ -+fi -+ -+if test $elf = yes; then -+ libc_cv_weak_symbols=yes -+fi -+ -+echo "$as_me:$LINENO: checking for assembler .weak directive" >&5 -+echo $ECHO_N "checking for assembler .weak directive... $ECHO_C" >&6 -+if test "${libc_cv_asm_weak_directive+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.s <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_asm_weak_directive=yes -+else -+ libc_cv_asm_weak_directive=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_weak_directive" >&5 -+echo "${ECHO_T}$libc_cv_asm_weak_directive" >&6 -+ -+if test $libc_cv_asm_weak_directive = no; then -+ echo "$as_me:$LINENO: checking for assembler .weakext directive" >&5 -+echo $ECHO_N "checking for assembler .weakext directive... $ECHO_C" >&6 -+if test "${libc_cv_asm_weakext_directive+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.s <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_asm_weakext_directive=yes -+ else -+ libc_cv_asm_weakext_directive=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_weakext_directive" >&5 -+echo "${ECHO_T}$libc_cv_asm_weakext_directive" >&6 -+ -+fi # no .weak -+ -+if test $libc_cv_asm_weak_directive = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_ASM_WEAK_DIRECTIVE 1 -+_ACEOF -+ -+elif test $libc_cv_asm_weakext_directive = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_ASM_WEAKEXT_DIRECTIVE 1 -+_ACEOF -+ -+fi -+ -+case "${host_cpu}-${host_os}" in -+ cris*) -+ libc_cv_asm_line_sep='@' -+ cat >>confdefs.h <<_ACEOF -+@%:@define ASM_LINE_SEP $libc_cv_asm_line_sep -+_ACEOF -+ -+ ;; -+ hppa*linux*) -+ echo "$as_me:$LINENO: checking for assembler line separator" >&5 -+echo $ECHO_N "checking for assembler line separator... $ECHO_C" >&6 -+if test "${libc_cv_asm_line_sep+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.s <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_asm_line_sep='!' -+ else -+ if test -z "$enable_hacker_mode"; then -+ echo "*** You need a newer assembler to compile glibc" -+ rm -f conftest* -+ exit 1 -+ fi -+ libc_cv_asm_line_sep=';' -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_line_sep" >&5 -+echo "${ECHO_T}$libc_cv_asm_line_sep" >&6 -+ cat >>confdefs.h <<_ACEOF -+@%:@define ASM_LINE_SEP $libc_cv_asm_line_sep -+_ACEOF -+ -+ ;; -+esac -+ -+echo "$as_me:$LINENO: checking whether CFI directives are supported" >&5 -+echo $ECHO_N "checking whether CFI directives are supported... $ECHO_C" >&6 -+if test "${libc_cv_asm_cfi_directives+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.s <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_asm_cfi_directives=yes -+else -+ libc_cv_asm_cfi_directives=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_cfi_directives" >&5 -+echo "${ECHO_T}$libc_cv_asm_cfi_directives" >&6 -+if test $libc_cv_asm_cfi_directives = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_ASM_CFI_DIRECTIVES 1 -+_ACEOF -+ -+fi -+ -+echo "$as_me:$LINENO: checking if -g produces usable source locations for assembler-with-cpp" >&5 -+echo $ECHO_N "checking if -g produces usable source locations for assembler-with-cpp... $ECHO_C" >&6 -+if test "${libc_cv_cpp_asm_debuginfo+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.S <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } && -+ ac_pattern='conftest\.S' -+ { ac_try='readelf --debug-dump=line conftest.o | -+ grep $ac_pattern 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_cpp_asm_debuginfo=yes -+else -+ libc_cv_cpp_asm_debuginfo=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_cpp_asm_debuginfo" >&5 -+echo "${ECHO_T}$libc_cv_cpp_asm_debuginfo" >&6 -+if test $libc_cv_cpp_asm_debuginfo = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_CPP_ASM_DEBUGINFO 1 -+_ACEOF -+ -+fi -+ -+echo "$as_me:$LINENO: checking for ld --no-whole-archive" >&5 -+echo $ECHO_N "checking for ld --no-whole-archive... $ECHO_C" >&6 -+if test "${libc_cv_ld_no_whole_archive+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <<\EOF -+_start () {} -+int __eh_pc; -+__throw () {} -+EOF -+if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -+ -nostdlib -nostartfiles -Wl,--no-whole-archive -+ -o conftest conftest.c 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_ld_no_whole_archive=yes -+else -+ libc_cv_ld_no_whole_archive=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_ld_no_whole_archive" >&5 -+echo "${ECHO_T}$libc_cv_ld_no_whole_archive" >&6 -+if test $libc_cv_ld_no_whole_archive = yes; then -+ no_whole_archive=-Wl,--no-whole-archive -+fi -+ -+echo "$as_me:$LINENO: checking for gcc -fexceptions" >&5 -+echo $ECHO_N "checking for gcc -fexceptions... $ECHO_C" >&6 -+if test "${libc_cv_gcc_exceptions+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <<\EOF -+_start () {} -+int __eh_pc; -+__throw () {} -+EOF -+if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -+ -nostdlib -nostartfiles -fexceptions -+ -o conftest conftest.c 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_gcc_exceptions=yes -+else -+ libc_cv_gcc_exceptions=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_gcc_exceptions" >&5 -+echo "${ECHO_T}$libc_cv_gcc_exceptions" >&6 -+if test $libc_cv_gcc_exceptions = yes; then -+ exceptions=-fexceptions -+fi -+ -+if test "$host_cpu" = powerpc ; then -+# Check for a bug present in at least versions 2.8.x of GCC -+# and versions 1.0.x of EGCS. -+echo "$as_me:$LINENO: checking whether clobbering cr0 causes problems" >&5 -+echo $ECHO_N "checking whether clobbering cr0 causes problems... $ECHO_C" >&6 -+if test "${libc_cv_c_asmcr0_bug+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+int tester(int x) { asm ("" : : : "cc"); return x & 123; } -+int -+main () -+{ -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_c_asmcr0_bug='no' -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+libc_cv_c_asmcr0_bug='yes' -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+echo "$as_me:$LINENO: result: $libc_cv_c_asmcr0_bug" >&5 -+echo "${ECHO_T}$libc_cv_c_asmcr0_bug" >&6 -+if test "$libc_cv_c_asmcr0_bug" != 'no'; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define BROKEN_PPC_ASM_CR0 1 -+_ACEOF -+ -+fi -+fi -+ -+echo "$as_me:$LINENO: checking for DWARF2 unwind info support" >&5 -+echo $ECHO_N "checking for DWARF2 unwind info support... $ECHO_C" >&6 -+if test "${libc_cv_gcc_dwarf2_unwind_info+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } || -+ { ac_try='$libc_unwind_check -lgcc_eh -lgcc >&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } -+then -+ if $libc_unwind_check -v 2>&1 >/dev/null \ -+ | grep -q -- --eh-frame-hdr; then -+ libc_cv_gcc_dwarf2_unwind_info=no_registry_needed -+ else -+ libc_cv_gcc_dwarf2_unwind_info=static -+ fi -+else -+ libc_cv_gcc_dwarf2_unwind_info=no -+fi -+if test $libc_cv_gcc_dwarf2_unwind_info = no; then -+ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -DCHECK__register_frame -+ $LDFLAGS -nostdlib -nostartfiles -+ -o conftest conftest.c -lgcc >&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_gcc_dwarf2_unwind_info=yes -+ else -+ libc_cv_gcc_dwarf2_unwind_info=no -+ fi -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_gcc_dwarf2_unwind_info" >&5 -+echo "${ECHO_T}$libc_cv_gcc_dwarf2_unwind_info" >&6 -+case $libc_cv_gcc_dwarf2_unwind_info in -+yes) -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_DWARF2_UNWIND_INFO 1 -+_ACEOF -+ -+ ;; -+static) -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_DWARF2_UNWIND_INFO 1 -+_ACEOF -+ -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_DWARF2_UNWIND_INFO_STATIC 1 -+_ACEOF -+ -+ ;; -+esac -+ -+echo "$as_me:$LINENO: checking for __builtin_expect" >&5 -+echo $ECHO_N "checking for __builtin_expect... $ECHO_C" >&6 -+if test "${libc_cv_gcc_builtin_expect+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_gcc_builtin_expect=yes -+else -+ libc_cv_gcc_builtin_expect=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_gcc_builtin_expect" >&5 -+echo "${ECHO_T}$libc_cv_gcc_builtin_expect" >&6 -+if test "$libc_cv_gcc_builtin_expect" = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_BUILTIN_EXPECT 1 -+_ACEOF -+ -+fi -+ -+echo "$as_me:$LINENO: checking for __builtin_memset" >&5 -+echo $ECHO_N "checking for __builtin_memset... $ECHO_C" >&6 -+if test "${libc_cv_gcc_builtin_memset+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <<\EOF -+void zero (void *x) -+{ -+ __builtin_memset (x, 0, 1000); -+} -+EOF -+if { ac_try='${CC-cc} -O3 -S conftest.c -o - | fgrep "memset" > /dev/null' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; -+then -+ libc_cv_gcc_builtin_memset=no -+else -+ libc_cv_gcc_builtin_memset=yes -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_gcc_builtin_memset" >&5 -+echo "${ECHO_T}$libc_cv_gcc_builtin_memset" >&6 -+if test "$libc_cv_gcc_builtin_memset" = yes ; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_BUILTIN_MEMSET 1 -+_ACEOF -+ -+fi -+ -+echo "$as_me:$LINENO: checking for redirection of built-in functions" >&5 -+echo $ECHO_N "checking for redirection of built-in functions... $ECHO_C" >&6 -+if test "${libc_cv_gcc_builtin_redirection+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <<\EOF -+extern char *strstr (const char *, const char *) __asm ("my_strstr"); -+char *foo (const char *a, const char *b) -+{ -+ return __builtin_strstr (a, b); -+} -+EOF -+if { ac_try='${CC-cc} -O3 -S conftest.c -o - | fgrep "my_strstr" > /dev/null' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; -+then -+ libc_cv_gcc_builtin_redirection=yes -+else -+ libc_cv_gcc_builtin_redirection=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_gcc_builtin_redirection" >&5 -+echo "${ECHO_T}$libc_cv_gcc_builtin_redirection" >&6 -+if test "$libc_cv_gcc_builtin_redirection" = yes ; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_BUILTIN_REDIRECTION 1 -+_ACEOF -+ -+fi -+ -+echo "$as_me:$LINENO: checking for local label subtraction" >&5 -+echo $ECHO_N "checking for local label subtraction... $ECHO_C" >&6 -+if test "${libc_cv_gcc_subtract_local_labels+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_gcc_subtract_local_labels=yes -+else -+ libc_cv_gcc_subtract_local_labels=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_gcc_subtract_local_labels" >&5 -+echo "${ECHO_T}$libc_cv_gcc_subtract_local_labels" >&6 -+if test "$libc_cv_gcc_subtract_local_labels" = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_SUBTRACT_LOCAL_LABELS 1 -+_ACEOF -+ -+fi -+ -+if test "x$use__thread" != xno; then -+ echo "$as_me:$LINENO: checking for __thread" >&5 -+echo $ECHO_N "checking for __thread... $ECHO_C" >&6 -+if test "${libc_cv_gcc___thread+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <<\EOF -+__thread int a = 42; -+EOF -+ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c >&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_gcc___thread=yes -+ else -+ libc_cv_gcc___thread=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_gcc___thread" >&5 -+echo "${ECHO_T}$libc_cv_gcc___thread" >&6 -+ if test "$libc_cv_gcc___thread" = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE___THREAD 1 -+_ACEOF -+ -+ fi -+else -+ libc_cv_gcc___thread=no -+fi -+ -+if test "$libc_cv_gcc___thread" = yes; then -+ echo "$as_me:$LINENO: checking for tls_model attribute" >&5 -+echo $ECHO_N "checking for tls_model attribute... $ECHO_C" >&6 -+if test "${libc_cv_gcc_tls_model_attr+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <<\EOF -+extern __thread int a __attribute__((tls_model ("initial-exec"))); -+EOF -+ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -S -Werror conftest.c >&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_gcc_tls_model_attr=yes -+ else -+ libc_cv_gcc_tls_model_attr=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_gcc_tls_model_attr" >&5 -+echo "${ECHO_T}$libc_cv_gcc_tls_model_attr" >&6 -+ if test "$libc_cv_gcc_tls_model_attr" = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_TLS_MODEL_ATTRIBUTE 1 -+_ACEOF -+ -+ fi -+fi -+ -+echo "$as_me:$LINENO: checking for libgd" >&5 -+echo $ECHO_N "checking for libgd... $ECHO_C" >&6 -+if test "$with_gd" != "no"; then -+ old_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS $libgd_include" -+ old_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS $libgd_ldflags" -+ old_LIBS="$LIBS" -+ LIBS="$LIBS -lgd -lpng -lz -lm" -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+int -+main () -+{ -+gdImagePng (0, 0) -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ LIBGD=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+LIBGD=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ CFLAGS="$old_CFLAGS" -+ LDFLAGS="$old_LDFLAGS" -+ LIBS="$old_LIBS" -+else -+ LIBGD=no -+fi -+echo "$as_me:$LINENO: result: $LIBGD" >&5 -+echo "${ECHO_T}$LIBGD" >&6 -+ -+ -+ -+echo "$as_me:$LINENO: checking for egrep" >&5 -+echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -+if test "${ac_cv_prog_egrep+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if echo a | (grep -E '(a|b)') >/dev/null 2>&1 -+ then ac_cv_prog_egrep='grep -E' -+ else ac_cv_prog_egrep='egrep' -+ fi -+fi -+echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -+echo "${ECHO_T}$ac_cv_prog_egrep" >&6 -+ EGREP=$ac_cv_prog_egrep -+ -+ -+echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -+echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -+if test "${ac_cv_header_stdc+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+#include -+#include -+#include -+ -+int -+main () -+{ -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_header_stdc=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ac_cv_header_stdc=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ -+if test $ac_cv_header_stdc = yes; then -+ # SunOS 4.x string.h does not declare mem*, contrary to ANSI. -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+ -+_ACEOF -+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -+ $EGREP "memchr" >/dev/null 2>&1; then -+ : -+else -+ ac_cv_header_stdc=no -+fi -+rm -f conftest* -+ -+fi -+ -+if test $ac_cv_header_stdc = yes; then -+ # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+ -+_ACEOF -+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -+ $EGREP "free" >/dev/null 2>&1; then -+ : -+else -+ ac_cv_header_stdc=no -+fi -+rm -f conftest* -+ -+fi -+ -+if test $ac_cv_header_stdc = yes; then -+ # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. -+ if test "$cross_compiling" = yes; then -+ : -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+#if ((' ' & 0x0FF) == 0x020) -+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -+#else -+# define ISLOWER(c) \ -+ (('a' <= (c) && (c) <= 'i') \ -+ || ('j' <= (c) && (c) <= 'r') \ -+ || ('s' <= (c) && (c) <= 'z')) -+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -+#endif -+ -+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -+int -+main () -+{ -+ int i; -+ for (i = 0; i < 256; i++) -+ if (XOR (islower (i), ISLOWER (i)) -+ || toupper (i) != TOUPPER (i)) -+ exit(2); -+ exit (0); -+} -+_ACEOF -+rm -f conftest$ac_exeext -+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ : -+else -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+( exit $ac_status ) -+ac_cv_header_stdc=no -+fi -+rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+fi -+fi -+fi -+echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -+echo "${ECHO_T}$ac_cv_header_stdc" >&6 -+if test $ac_cv_header_stdc = yes; then -+ -+cat >>confdefs.h <<\_ACEOF -+@%:@define STDC_HEADERS 1 -+_ACEOF -+ -+fi -+ -+# On IRIX 5.3, sys/types and inttypes.h are conflicting. -+ -+ -+ -+ -+ -+ -+ -+ -+ -+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ -+ inttypes.h stdint.h unistd.h -+do -+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -+echo "$as_me:$LINENO: checking for $ac_header" >&5 -+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Header+set}\" = set"; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_includes_default -+ -+@%:@include <$ac_header> -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ eval "$as_ac_Header=yes" -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+eval "$as_ac_Header=no" -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -+if test `eval echo '${'$as_ac_Header'}'` = yes; then -+ cat >>confdefs.h <<_ACEOF -+@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -+_ACEOF -+ -+fi -+ -+done -+ -+ -+echo "$as_me:$LINENO: checking for long double" >&5 -+echo $ECHO_N "checking for long double... $ECHO_C" >&6 -+if test "${ac_cv_type_long_double+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_includes_default -+int -+main () -+{ -+if ((long double *) 0) -+ return 0; -+if (sizeof (long double)) -+ return 0; -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_type_long_double=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ac_cv_type_long_double=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+echo "$as_me:$LINENO: result: $ac_cv_type_long_double" >&5 -+echo "${ECHO_T}$ac_cv_type_long_double" >&6 -+ -+echo "$as_me:$LINENO: checking size of long double" >&5 -+echo $ECHO_N "checking size of long double... $ECHO_C" >&6 -+if test "${ac_cv_sizeof_long_double+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test "$ac_cv_type_long_double" = yes; then -+ # The cast to unsigned long works around a bug in the HP C Compiler -+ # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects -+ # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. -+ # This bug is HP SR number 8606223364. -+ if test "$cross_compiling" = yes; then -+ # Depending upon the size, compute the lo and hi bounds. -+cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_includes_default -+int -+main () -+{ -+static int test_array @<:@1 - 2 * !(((long) (sizeof (long double))) >= 0)@:>@; -+test_array @<:@0@:>@ = 0 -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_lo=0 ac_mid=0 -+ while :; do -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_includes_default -+int -+main () -+{ -+static int test_array @<:@1 - 2 * !(((long) (sizeof (long double))) <= $ac_mid)@:>@; -+test_array @<:@0@:>@ = 0 -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_hi=$ac_mid; break -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ac_lo=`expr $ac_mid + 1` -+ if test $ac_lo -le $ac_mid; then -+ ac_lo= ac_hi= -+ break -+ fi -+ ac_mid=`expr 2 '*' $ac_mid + 1` -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ done -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_includes_default -+int -+main () -+{ -+static int test_array @<:@1 - 2 * !(((long) (sizeof (long double))) < 0)@:>@; -+test_array @<:@0@:>@ = 0 -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_hi=-1 ac_mid=-1 -+ while :; do -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_includes_default -+int -+main () -+{ -+static int test_array @<:@1 - 2 * !(((long) (sizeof (long double))) >= $ac_mid)@:>@; -+test_array @<:@0@:>@ = 0 -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_lo=$ac_mid; break -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ac_hi=`expr '(' $ac_mid ')' - 1` -+ if test $ac_mid -le $ac_hi; then -+ ac_lo= ac_hi= -+ break -+ fi -+ ac_mid=`expr 2 '*' $ac_mid` -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ done -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ac_lo= ac_hi= -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+# Binary search between lo and hi bounds. -+while test "x$ac_lo" != "x$ac_hi"; do -+ ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_includes_default -+int -+main () -+{ -+static int test_array @<:@1 - 2 * !(((long) (sizeof (long double))) <= $ac_mid)@:>@; -+test_array @<:@0@:>@ = 0 -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_hi=$ac_mid -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ac_lo=`expr '(' $ac_mid ')' + 1` -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+done -+case $ac_lo in -+?*) ac_cv_sizeof_long_double=$ac_lo;; -+'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long double), 77 -+See \`config.log' for more details." >&5 -+echo "$as_me: error: cannot compute sizeof (long double), 77 -+See \`config.log' for more details." >&2;} -+ { (exit 1); exit 1; }; } ;; -+esac -+else -+ if test "$cross_compiling" = yes; then -+ { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling -+See \`config.log' for more details." >&5 -+echo "$as_me: error: cannot run test program while cross compiling -+See \`config.log' for more details." >&2;} -+ { (exit 1); exit 1; }; } -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+$ac_includes_default -+long longval () { return (long) (sizeof (long double)); } -+unsigned long ulongval () { return (long) (sizeof (long double)); } -+@%:@include -+@%:@include -+int -+main () -+{ -+ -+ FILE *f = fopen ("conftest.val", "w"); -+ if (! f) -+ exit (1); -+ if (((long) (sizeof (long double))) < 0) -+ { -+ long i = longval (); -+ if (i != ((long) (sizeof (long double)))) -+ exit (1); -+ fprintf (f, "%ld\n", i); -+ } -+ else -+ { -+ unsigned long i = ulongval (); -+ if (i != ((long) (sizeof (long double)))) -+ exit (1); -+ fprintf (f, "%lu\n", i); -+ } -+ exit (ferror (f) || fclose (f) != 0); -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest$ac_exeext -+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_sizeof_long_double=`cat conftest.val` -+else -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+( exit $ac_status ) -+{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long double), 77 -+See \`config.log' for more details." >&5 -+echo "$as_me: error: cannot compute sizeof (long double), 77 -+See \`config.log' for more details." >&2;} -+ { (exit 1); exit 1; }; } -+fi -+rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+fi -+fi -+rm -f conftest.val -+else -+ ac_cv_sizeof_long_double=0 -+fi -+fi -+echo "$as_me:$LINENO: result: $ac_cv_sizeof_long_double" >&5 -+echo "${ECHO_T}$ac_cv_sizeof_long_double" >&6 -+cat >>confdefs.h <<_ACEOF -+@%:@define SIZEOF_LONG_DOUBLE $ac_cv_sizeof_long_double -+_ACEOF -+ -+ -+sizeof_long_double=$ac_cv_sizeof_long_double -+ -+ -+### End of automated tests. -+### Now run sysdeps configure fragments. -+ -+# They also can set these variables. -+use_ldconfig=no -+ldd_rewrite_script=no -+libc_cv_sysconfdir=$sysconfdir -+libc_cv_gcc_unwind_find_fde=no -+ -+# Iterate over all the sysdep directories we will use, running their -+# configure fragments, and looking for a uname implementation. -+uname= -+for dir in $sysnames; do -+ case $dir in -+ /*) dest=$dir ;; -+ *) dest=$srcdir/$dir ;; -+ esac -+ if test -r $dest/configure; then -+ echo "$as_me:$LINENO: result: running configure fragment for $dir" >&5 -+echo "${ECHO_T}running configure fragment for $dir" >&6 -+ . $dest/configure -+ fi -+ -+ if test -z "$uname"; then -+ if test -r $dest/uname.c || -+ test -r $dest/uname.S || -+ { test -r $dest/syscalls.list && -+ grep '^uname[ ]' $dest/syscalls.list >/dev/null; }; then -+ uname=$dir -+ fi -+ fi -+done -+ -+if test x$libc_cv_gcc_unwind_find_fde = xyes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define EXPORT_UNWIND_FIND_FDE 1 -+_ACEOF -+ -+fi -+ -+ -+# If we will use the generic uname implementation, we must figure out what -+# it will say by examining the system, and write the results in config-name.h. -+if test "$uname" = "sysdeps/generic"; then -+ -+ uname_sysname=`echo $config_os | sed 's/[0-9.]*$//'` -+ if test $uname_sysname != $config_os; then -+ config_release=`echo $config_os | sed s/$uname_sysname//` -+ fi -+ -+ echo "$as_me:$LINENO: checking OS release for uname" >&5 -+echo $ECHO_N "checking OS release for uname... $ECHO_C" >&6 -+if test "${libc_cv_uname_release+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -r /vmunix; then -+ kernel_id=`strings /vmunix | grep UNIX` -+ elif test -r /dynix; then -+ kernel_id=`strings /dynix | grep DYNIX` -+ else -+ kernel_id= -+ fi -+ -+ kernel_release=`echo "$kernel_id" | sed 's/^[^0-9.]*\([0-9.]*\).*$/\1/'` -+ if test x`echo "$config_release" | sed "s/^$kernel_release//"` \ -+ != x$config_release; then -+ # The configuration release is a substring of the kernel release. -+ libc_cv_uname_release=$kernel_release -+ elif test x$config_release != x; then -+ libc_cv_uname_release=$config_release -+ elif test x$kernel_release != x; then -+ libc_cv_uname_release=$kernel_release -+ else -+ libc_cv_uname_release=unknown -+ fi -+fi -+echo "$as_me:$LINENO: result: $libc_cv_uname_release" >&5 -+echo "${ECHO_T}$libc_cv_uname_release" >&6 -+ uname_release="$libc_cv_uname_release" -+ -+ echo "$as_me:$LINENO: checking OS version for uname" >&5 -+echo $ECHO_N "checking OS version for uname... $ECHO_C" >&6 -+if test "${libc_cv_uname_version+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -r /vmunix; then -+ kernel_id=`strings /vmunix | grep UNIX` -+ elif test -r /dynix; then -+ kernel_id=`strings /dynix | grep DYNIX` -+ else -+ kernel_id= -+ fi -+ -+ kernel_version=`echo "$kernel_id" | sed 's/^[^#]*#\([0-9]*\).*$/\1/'` -+ if test -n "$kernel_version"; then -+ libc_cv_uname_version="$kernel_version" -+ else -+ libc_cv_uname_version=unknown -+ fi -+fi -+echo "$as_me:$LINENO: result: $libc_cv_uname_version" >&5 -+echo "${ECHO_T}$libc_cv_uname_version" >&6 -+ uname_version="$libc_cv_uname_version" -+ -+ config_uname=config-name.h:config-name.in -+else -+ # For non-generic uname, we don't need to create config-name.h at all. -+ config_uname= -+fi -+ -+cat >>confdefs.h <<\_ACEOF -+@%:@define USE_IN_LIBIO 1 -+_ACEOF -+ -+ -+# Test for old glibc 2.0.x headers so that they can be removed properly -+# Search only in includedir. -+echo "$as_me:$LINENO: checking for old glibc 2.0.x headers" >&5 -+echo $ECHO_N "checking for old glibc 2.0.x headers... $ECHO_C" >&6 -+if eval test -f "${includedir}/elfclass.h" -a -f "${includedir}/fcntlbits.h" -+then -+ old_glibc_headers=yes -+else -+ old_glibc_headers=no -+fi -+echo "$as_me:$LINENO: result: $old_glibc_headers" >&5 -+echo "${ECHO_T}$old_glibc_headers" >&6 -+if test ${old_glibc_headers} = yes; then -+ { echo "$as_me:$LINENO: WARNING: *** During \"make install\" old headers from glibc 2.0.x will" >&5 -+echo "$as_me: WARNING: *** During \"make install\" old headers from glibc 2.0.x will" >&2;} -+ { echo "$as_me:$LINENO: WARNING: *** be removed." >&5 -+echo "$as_me: WARNING: *** be removed." >&2;} -+fi -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+if test $gnu_ld = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_GNU_LD 1 -+_ACEOF -+ -+fi -+if test $gnu_as = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_GNU_AS 1 -+_ACEOF -+ -+fi -+if test $elf = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_ELF 1 -+_ACEOF -+ -+fi -+if test $xcoff = yes; then -+ cat >>confdefs.h <<\_ACEOF -+@%:@define HAVE_XCOFF 1 -+_ACEOF -+ -+fi -+ -+ -+ -+if test $shared = default; then -+ if test $gnu_ld = yes; then -+ shared=$elf -+ else -+ # For now we do not assume shared libs are available. In future more -+ # tests might become available. -+ shared=no -+ fi -+fi -+ -+echo "$as_me:$LINENO: checking whether -fPIC is default" >&5 -+echo $ECHO_N "checking whether -fPIC is default... $ECHO_C" >&6 -+if test "${pic_default+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ pic_default=yes -+cat > conftest.c <&5 1>&5"; then -+ pic_default=no -+fi -+rm -f conftest.* -+fi -+echo "$as_me:$LINENO: result: $pic_default" >&5 -+echo "${ECHO_T}$pic_default" >&6 -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+case "$add_ons" in -+ *door*) linux_doors=yes ;; -+ *) linux_doors=no ;; -+esac -+ -+ -+ -+ -+if test "`(cd $srcdir; pwd)`" = "`pwd`"; then -+ config_makefile= -+else -+ config_makefile=Makefile -+fi -+ -+VERSION=`sed -n -e 's/^#define VERSION "\([^"]*\)"/\1/p' < $srcdir/version.h` -+RELEASE=`sed -n -e 's/^#define RELEASE "\([^"]*\)"/\1/p' < $srcdir/version.h` -+ -+ -+ -+ ac_config_files="$ac_config_files config.make glibcbug ${config_makefile} ${config_uname}" -+ -+ ac_config_commands="$ac_config_commands default" -+ -+cat >confcache <<\_ACEOF -+# This file is a shell script that caches the results of configure -+# tests run on this system so they can be shared between configure -+# scripts and configure runs, see configure's option --config-cache. -+# It is not useful on other systems. If it contains results you don't -+# want to keep, you may remove or edit it. -+# -+# config.status only pays attention to the cache file if you give it -+# the --recheck option to rerun configure. -+# -+# `ac_cv_env_foo' variables (set or unset) will be overridden when -+# loading this file, other *unset* `ac_cv_foo' will be assigned the -+# following values. -+ -+_ACEOF -+ -+# The following way of writing the cache mishandles newlines in values, -+# but we know of no workaround that is simple, portable, and efficient. -+# So, don't put newlines in cache variables' values. -+# Ultrix sh set writes to stderr and can't be redirected directly, -+# and sets the high bit in the cache file unless we assign to the vars. -+{ -+ (set) 2>&1 | -+ case `(ac_space=' '; set | grep ac_space) 2>&1` in -+ *ac_space=\ *) -+ # `set' does not quote correctly, so add quotes (double-quote -+ # substitution turns \\\\ into \\, and sed turns \\ into \). -+ sed -n \ -+ "s/'/'\\\\''/g; -+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" -+ ;; -+ *) -+ # `set' quotes correctly as required by POSIX, so do not add quotes. -+ sed -n \ -+ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" -+ ;; -+ esac; -+} | -+ sed ' -+ t clear -+ : clear -+ s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ -+ t end -+ /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ -+ : end' >>confcache -+if diff $cache_file confcache >/dev/null 2>&1; then :; else -+ if test -w $cache_file; then -+ test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" -+ cat confcache >$cache_file -+ else -+ echo "not updating unwritable cache $cache_file" -+ fi -+fi -+rm -f confcache -+ -+test "x$prefix" = xNONE && prefix=$ac_default_prefix -+# Let make expand exec_prefix. -+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' -+ -+# VPATH may cause trouble with some makes, so we remove $(srcdir), -+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -+# trailing colons and then remove the whole line if VPATH becomes empty -+# (actually we leave an empty line to preserve line numbers). -+if test "x$srcdir" = x.; then -+ ac_vpsub='/^[ ]*VPATH[ ]*=/{ -+s/:*\$(srcdir):*/:/; -+s/:*\${srcdir}:*/:/; -+s/:*@srcdir@:*/:/; -+s/^\([^=]*=[ ]*\):*/\1/; -+s/:*$//; -+s/^[^=]*=[ ]*$//; -+}' -+fi -+ -+DEFS=-DHAVE_CONFIG_H -+ -+ac_libobjs= -+ac_ltlibobjs= -+for ac_i in : $LIB@&t@OBJS; do test "x$ac_i" = x: && continue -+ # 1. Remove the extension, and $U if already installed. -+ ac_i=`echo "$ac_i" | -+ sed 's/\$U\././;s/\.o$//;s/\.obj$//'` -+ # 2. Add them. -+ ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" -+ ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' -+done -+LIB@&t@OBJS=$ac_libobjs -+ -+LTLIBOBJS=$ac_ltlibobjs -+ -+ -+ -+: ${CONFIG_STATUS=./config.status} -+ac_clean_files_save=$ac_clean_files -+ac_clean_files="$ac_clean_files $CONFIG_STATUS" -+{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -+echo "$as_me: creating $CONFIG_STATUS" >&6;} -+cat >$CONFIG_STATUS <<_ACEOF -+#! $SHELL -+# Generated by $as_me. -+# Run this file to recreate the current configuration. -+# Compiler output produced by configure, useful for debugging -+# configure, is in config.log if it exists. -+ -+debug=false -+ac_cs_recheck=false -+ac_cs_silent=false -+SHELL=\${CONFIG_SHELL-$SHELL} -+_ACEOF -+ -+cat >>$CONFIG_STATUS <<\_ACEOF -+## --------------------- ## -+## M4sh Initialization. ## -+## --------------------- ## -+ -+# Be Bourne compatible -+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then -+ emulate sh -+ NULLCMD=: -+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which -+ # is contrary to our usage. Disable this feature. -+ alias -g '${1+"$@"}'='"$@"' -+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then -+ set -o posix -+fi -+ -+# Support unset when possible. -+if (FOO=FOO; unset FOO) >/dev/null 2>&1; then -+ as_unset=unset -+else -+ as_unset=false -+fi -+ -+ -+# Work around bugs in pre-3.0 UWIN ksh. -+$as_unset ENV MAIL MAILPATH -+PS1='$ ' -+PS2='> ' -+PS4='+ ' -+ -+# NLS nuisances. -+for as_var in \ -+ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ -+ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ -+ LC_TELEPHONE LC_TIME -+do -+ if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then -+ eval $as_var=C; export $as_var -+ else -+ $as_unset $as_var -+ fi -+done -+ -+# Required to use basename. -+if expr a : '\(a\)' >/dev/null 2>&1; then -+ as_expr=expr -+else -+ as_expr=false -+fi -+ -+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then -+ as_basename=basename -+else -+ as_basename=false -+fi -+ -+ -+# Name of the executable. -+as_me=`$as_basename "$0" || -+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ -+ X"$0" : 'X\(//\)$' \| \ -+ X"$0" : 'X\(/\)$' \| \ -+ . : '\(.\)' 2>/dev/null || -+echo X/"$0" | -+ sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } -+ /^X\/\(\/\/\)$/{ s//\1/; q; } -+ /^X\/\(\/\).*/{ s//\1/; q; } -+ s/.*/./; q'` -+ -+ -+# PATH needs CR, and LINENO needs CR and PATH. -+# Avoid depending upon Character Ranges. -+as_cr_letters='abcdefghijklmnopqrstuvwxyz' -+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -+as_cr_Letters=$as_cr_letters$as_cr_LETTERS -+as_cr_digits='0123456789' -+as_cr_alnum=$as_cr_Letters$as_cr_digits -+ -+# The user is always right. -+if test "${PATH_SEPARATOR+set}" != set; then -+ echo "#! /bin/sh" >conf$$.sh -+ echo "exit 0" >>conf$$.sh -+ chmod +x conf$$.sh -+ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then -+ PATH_SEPARATOR=';' -+ else -+ PATH_SEPARATOR=: -+ fi -+ rm -f conf$$.sh -+fi -+ -+ -+ as_lineno_1=$LINENO -+ as_lineno_2=$LINENO -+ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -+ test "x$as_lineno_1" != "x$as_lineno_2" && -+ test "x$as_lineno_3" = "x$as_lineno_2" || { -+ # Find who we are. Look in the path if we contain no path at all -+ # relative or not. -+ case $0 in -+ *[\\/]* ) as_myself=$0 ;; -+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -+done -+ -+ ;; -+ esac -+ # We did not find ourselves, most probably we were run as `sh COMMAND' -+ # in which case we are not to be found in the path. -+ if test "x$as_myself" = x; then -+ as_myself=$0 -+ fi -+ if test ! -f "$as_myself"; then -+ { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -+echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ case $CONFIG_SHELL in -+ '') -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for as_base in sh bash ksh sh5; do -+ case $as_dir in -+ /*) -+ if ("$as_dir/$as_base" -c ' -+ as_lineno_1=$LINENO -+ as_lineno_2=$LINENO -+ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -+ test "x$as_lineno_1" != "x$as_lineno_2" && -+ test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then -+ $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } -+ $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } -+ CONFIG_SHELL=$as_dir/$as_base -+ export CONFIG_SHELL -+ exec "$CONFIG_SHELL" "$0" ${1+"$@"} -+ fi;; -+ esac -+ done -+done -+;; -+ esac -+ -+ # Create $as_me.lineno as a copy of $as_myself, but with $LINENO -+ # uniformly replaced by the line number. The first 'sed' inserts a -+ # line-number line before each line; the second 'sed' does the real -+ # work. The second script uses 'N' to pair each line-number line -+ # with the numbered line, and appends trailing '-' during -+ # substitution so that $LINENO is not a special case at line end. -+ # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the -+ # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) -+ sed '=' <$as_myself | -+ sed ' -+ N -+ s,$,-, -+ : loop -+ s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, -+ t loop -+ s,-$,, -+ s,^['$as_cr_digits']*\n,, -+ ' >$as_me.lineno && -+ chmod +x $as_me.lineno || -+ { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -+echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} -+ { (exit 1); exit 1; }; } -+ -+ # Don't try to exec as it changes $[0], causing all sort of problems -+ # (the dirname of $[0] is not the place where we might find the -+ # original and so on. Autoconf is especially sensible to this). -+ . ./$as_me.lineno -+ # Exit status is that of the last command. -+ exit -+} -+ -+ -+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in -+ *c*,-n*) ECHO_N= ECHO_C=' -+' ECHO_T=' ' ;; -+ *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; -+ *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -+esac -+ -+if expr a : '\(a\)' >/dev/null 2>&1; then -+ as_expr=expr -+else -+ as_expr=false -+fi -+ -+rm -f conf$$ conf$$.exe conf$$.file -+echo >conf$$.file -+if ln -s conf$$.file conf$$ 2>/dev/null; then -+ # We could just check for DJGPP; but this test a) works b) is more generic -+ # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). -+ if test -f conf$$.exe; then -+ # Don't use ln at all; we don't have any links -+ as_ln_s='cp -p' -+ else -+ as_ln_s='ln -s' -+ fi -+elif ln conf$$.file conf$$ 2>/dev/null; then -+ as_ln_s=ln -+else -+ as_ln_s='cp -p' -+fi -+rm -f conf$$ conf$$.exe conf$$.file -+ -+if mkdir -p . 2>/dev/null; then -+ as_mkdir_p=: -+else -+ as_mkdir_p=false -+fi -+ -+as_executable_p="test -f" -+ -+# Sed expression to map a string onto a valid CPP name. -+as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" -+ -+# Sed expression to map a string onto a valid variable name. -+as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g" -+ -+ -+# IFS -+# We need space, tab and new line, in precisely that order. -+as_nl=' -+' -+IFS=" $as_nl" -+ -+# CDPATH. -+$as_unset CDPATH -+ -+exec 6>&1 -+ -+# Open the log real soon, to keep \$[0] and so on meaningful, and to -+# report actual input values of CONFIG_FILES etc. instead of their -+# values after options handling. Logging --version etc. is OK. -+exec 5>>config.log -+{ -+ echo -+ sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX -+@%:@@%:@ Running $as_me. @%:@@%:@ -+_ASBOX -+} >&5 -+cat >&5 <<_CSEOF -+ -+This file was extended by GNU C Library $as_me (see version.h), which was -+generated by GNU Autoconf 2.57. Invocation command line was -+ -+ CONFIG_FILES = $CONFIG_FILES -+ CONFIG_HEADERS = $CONFIG_HEADERS -+ CONFIG_LINKS = $CONFIG_LINKS -+ CONFIG_COMMANDS = $CONFIG_COMMANDS -+ $ $0 $@ -+ -+_CSEOF -+echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -+echo >&5 -+_ACEOF -+ -+# Files that config.status was made for. -+if test -n "$ac_config_files"; then -+ echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -+fi -+ -+if test -n "$ac_config_headers"; then -+ echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -+fi -+ -+if test -n "$ac_config_links"; then -+ echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -+fi -+ -+if test -n "$ac_config_commands"; then -+ echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -+fi -+ -+cat >>$CONFIG_STATUS <<\_ACEOF -+ -+ac_cs_usage="\ -+\`$as_me' instantiates files from templates according to the -+current configuration. -+ -+Usage: $0 [OPTIONS] [FILE]... -+ -+ -h, --help print this help, then exit -+ -V, --version print version number, then exit -+ -q, --quiet do not print progress messages -+ -d, --debug don't remove temporary files -+ --recheck update $as_me by reconfiguring in the same conditions -+ --file=FILE[:TEMPLATE] -+ instantiate the configuration file FILE -+ --header=FILE[:TEMPLATE] -+ instantiate the configuration header FILE -+ -+Configuration files: -+$config_files -+ -+Configuration headers: -+$config_headers -+ -+Configuration commands: -+$config_commands -+ -+Report bugs to ." -+_ACEOF -+ -+cat >>$CONFIG_STATUS <<_ACEOF -+ac_cs_version="\\ -+GNU C Library config.status (see version.h) -+configured by $0, generated by GNU Autoconf 2.57, -+ with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" -+ -+Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 -+Free Software Foundation, Inc. -+This config.status script is free software; the Free Software Foundation -+gives unlimited permission to copy, distribute and modify it." -+srcdir=$srcdir -+INSTALL="$INSTALL" -+_ACEOF -+ -+cat >>$CONFIG_STATUS <<\_ACEOF -+# If no file are specified by the user, then we need to provide default -+# value. By we need to know if files were specified by the user. -+ac_need_defaults=: -+while test $# != 0 -+do -+ case $1 in -+ --*=*) -+ ac_option=`expr "x$1" : 'x\([^=]*\)='` -+ ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` -+ ac_shift=: -+ ;; -+ -*) -+ ac_option=$1 -+ ac_optarg=$2 -+ ac_shift=shift -+ ;; -+ *) # This is not an option, so the user has probably given explicit -+ # arguments. -+ ac_option=$1 -+ ac_need_defaults=false;; -+ esac -+ -+ case $ac_option in -+ # Handling of the options. -+_ACEOF -+cat >>$CONFIG_STATUS <<\_ACEOF -+ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) -+ ac_cs_recheck=: ;; -+ --version | --vers* | -V ) -+ echo "$ac_cs_version"; exit 0 ;; -+ --he | --h) -+ # Conflict between --help and --header -+ { { echo "$as_me:$LINENO: error: ambiguous option: $1 -+Try \`$0 --help' for more information." >&5 -+echo "$as_me: error: ambiguous option: $1 -+Try \`$0 --help' for more information." >&2;} -+ { (exit 1); exit 1; }; };; -+ --help | --hel | -h ) -+ echo "$ac_cs_usage"; exit 0 ;; -+ --debug | --d* | -d ) -+ debug=: ;; -+ --file | --fil | --fi | --f ) -+ $ac_shift -+ CONFIG_FILES="$CONFIG_FILES $ac_optarg" -+ ac_need_defaults=false;; -+ --header | --heade | --head | --hea ) -+ $ac_shift -+ CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" -+ ac_need_defaults=false;; -+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \ -+ | -silent | --silent | --silen | --sile | --sil | --si | --s) -+ ac_cs_silent=: ;; -+ -+ # This is an error. -+ -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -+Try \`$0 --help' for more information." >&5 -+echo "$as_me: error: unrecognized option: $1 -+Try \`$0 --help' for more information." >&2;} -+ { (exit 1); exit 1; }; } ;; -+ -+ *) ac_config_targets="$ac_config_targets $1" ;; -+ -+ esac -+ shift -+done -+ -+ac_configure_extra_args= -+ -+if $ac_cs_silent; then -+ exec 6>/dev/null -+ ac_configure_extra_args="$ac_configure_extra_args --silent" -+fi -+ -+_ACEOF -+cat >>$CONFIG_STATUS <<_ACEOF -+if \$ac_cs_recheck; then -+ echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 -+ exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -+fi -+ -+_ACEOF -+ -+cat >>$CONFIG_STATUS <<_ACEOF -+# -+# INIT-COMMANDS section. -+# -+ -+config_vars='$config_vars' -+ -+_ACEOF -+ -+ -+ -+cat >>$CONFIG_STATUS <<\_ACEOF -+for ac_config_target in $ac_config_targets -+do -+ case "$ac_config_target" in -+ # Handling of arguments. -+ "config.make" ) CONFIG_FILES="$CONFIG_FILES config.make" ;; -+ "glibcbug" ) CONFIG_FILES="$CONFIG_FILES glibcbug" ;; -+ "${config_makefile}" ) CONFIG_FILES="$CONFIG_FILES ${config_makefile}" ;; -+ "${config_uname}" ) CONFIG_FILES="$CONFIG_FILES ${config_uname}" ;; -+ "default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;; -+ "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; -+ *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -+echo "$as_me: error: invalid argument: $ac_config_target" >&2;} -+ { (exit 1); exit 1; }; };; -+ esac -+done -+ -+# If the user did not use the arguments to specify the items to instantiate, -+# then the envvar interface is used. Set only those that are not. -+# We use the long form for the default assignment because of an extremely -+# bizarre bug on SunOS 4.1.3. -+if $ac_need_defaults; then -+ test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files -+ test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers -+ test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -+fi -+ -+# Have a temporary directory for convenience. Make it in the build tree -+# simply because there is no reason to put it here, and in addition, -+# creating and moving files from /tmp can sometimes cause problems. -+# Create a temporary directory, and hook for its removal unless debugging. -+$debug || -+{ -+ trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 -+ trap '{ (exit 1); exit 1; }' 1 2 13 15 -+} -+ -+# Create a (secure) tmp directory for tmp files. -+ -+{ -+ tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && -+ test -n "$tmp" && test -d "$tmp" -+} || -+{ -+ tmp=./confstat$$-$RANDOM -+ (umask 077 && mkdir $tmp) -+} || -+{ -+ echo "$me: cannot create a temporary directory in ." >&2 -+ { (exit 1); exit 1; } -+} -+ -+_ACEOF -+ -+cat >>$CONFIG_STATUS <<_ACEOF -+ -+# -+# CONFIG_FILES section. -+# -+ -+# No need to generate the scripts if there are no CONFIG_FILES. -+# This happens for instance when ./config.status config.h -+if test -n "\$CONFIG_FILES"; then -+ # Protect against being on the right side of a sed subst in config.status. -+ sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; -+ s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -+s,@SHELL@,$SHELL,;t t -+s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -+s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -+s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -+s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -+s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -+s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -+s,@exec_prefix@,$exec_prefix,;t t -+s,@prefix@,$prefix,;t t -+s,@program_transform_name@,$program_transform_name,;t t -+s,@bindir@,$bindir,;t t -+s,@sbindir@,$sbindir,;t t -+s,@libexecdir@,$libexecdir,;t t -+s,@datadir@,$datadir,;t t -+s,@sysconfdir@,$sysconfdir,;t t -+s,@sharedstatedir@,$sharedstatedir,;t t -+s,@localstatedir@,$localstatedir,;t t -+s,@libdir@,$libdir,;t t -+s,@includedir@,$includedir,;t t -+s,@oldincludedir@,$oldincludedir,;t t -+s,@infodir@,$infodir,;t t -+s,@mandir@,$mandir,;t t -+s,@build_alias@,$build_alias,;t t -+s,@host_alias@,$host_alias,;t t -+s,@target_alias@,$target_alias,;t t -+s,@DEFS@,$DEFS,;t t -+s,@ECHO_C@,$ECHO_C,;t t -+s,@ECHO_N@,$ECHO_N,;t t -+s,@ECHO_T@,$ECHO_T,;t t -+s,@LIBS@,$LIBS,;t t -+s,@with_fp@,$with_fp,;t t -+s,@with_cvs@,$with_cvs,;t t -+s,@enable_check_abi@,$enable_check_abi,;t t -+s,@oldest_abi@,$oldest_abi,;t t -+s,@subdirs@,$subdirs,;t t -+s,@force_install@,$force_install,;t t -+s,@all_warnings@,$all_warnings,;t t -+s,@build@,$build,;t t -+s,@build_cpu@,$build_cpu,;t t -+s,@build_vendor@,$build_vendor,;t t -+s,@build_os@,$build_os,;t t -+s,@host@,$host,;t t -+s,@host_cpu@,$host_cpu,;t t -+s,@host_vendor@,$host_vendor,;t t -+s,@host_os@,$host_os,;t t -+s,@base_machine@,$base_machine,;t t -+s,@sysnames@,$sysnames,;t t -+s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -+s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t -+s,@INSTALL_DATA@,$INSTALL_DATA,;t t -+s,@LN_S@,$LN_S,;t t -+s,@CC@,$CC,;t t -+s,@CFLAGS@,$CFLAGS,;t t -+s,@LDFLAGS@,$LDFLAGS,;t t -+s,@CPPFLAGS@,$CPPFLAGS,;t t -+s,@ac_ct_CC@,$ac_ct_CC,;t t -+s,@OBJEXT@,$OBJEXT,;t t -+s,@BUILD_CC@,$BUILD_CC,;t t -+s,@cross_compiling@,$cross_compiling,;t t -+s,@CPP@,$CPP,;t t -+s,@CXX@,$CXX,;t t -+s,@CXXFLAGS@,$CXXFLAGS,;t t -+s,@ac_ct_CXX@,$ac_ct_CXX,;t t -+s,@AR@,$AR,;t t -+s,@OBJDUMP@,$OBJDUMP,;t t -+s,@RANLIB@,$RANLIB,;t t -+s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t -+s,@MIG@,$MIG,;t t -+s,@AS@,$AS,;t t -+s,@LD@,$LD,;t t -+s,@PWD_P@,$PWD_P,;t t -+s,@MAKE@,$MAKE,;t t -+s,@MSGFMT@,$MSGFMT,;t t -+s,@MAKEINFO@,$MAKEINFO,;t t -+s,@SED@,$SED,;t t -+s,@AUTOCONF@,$AUTOCONF,;t t -+s,@CCVERSION@,$CCVERSION,;t t -+s,@SYSINCLUDES@,$SYSINCLUDES,;t t -+s,@libc_cv_gcc_static_libgcc@,$libc_cv_gcc_static_libgcc,;t t -+s,@BASH@,$BASH,;t t -+s,@libc_cv_have_bash2@,$libc_cv_have_bash2,;t t -+s,@KSH@,$KSH,;t t -+s,@libc_cv_have_ksh@,$libc_cv_have_ksh,;t t -+s,@AWK@,$AWK,;t t -+s,@PERL@,$PERL,;t t -+s,@INSTALL_INFO@,$INSTALL_INFO,;t t -+s,@OLD_DEBIAN_INSTALL_INFO@,$OLD_DEBIAN_INSTALL_INFO,;t t -+s,@BISON@,$BISON,;t t -+s,@VERSIONING@,$VERSIONING,;t t -+s,@libc_cv_asm_protected_directive@,$libc_cv_asm_protected_directive,;t t -+s,@libc_cv_initfinit_array@,$libc_cv_initfinit_array,;t t -+s,@libc_cv_z_nodelete@,$libc_cv_z_nodelete,;t t -+s,@libc_cv_z_nodlopen@,$libc_cv_z_nodlopen,;t t -+s,@libc_cv_z_initfirst@,$libc_cv_z_initfirst,;t t -+s,@libc_cv_Bgroup@,$libc_cv_Bgroup,;t t -+s,@ASFLAGS_config@,$ASFLAGS_config,;t t -+s,@libc_cv_z_combreloc@,$libc_cv_z_combreloc,;t t -+s,@libc_cv_have_initfini@,$libc_cv_have_initfini,;t t -+s,@libc_cv_cpp_asm_debuginfo@,$libc_cv_cpp_asm_debuginfo,;t t -+s,@no_whole_archive@,$no_whole_archive,;t t -+s,@exceptions@,$exceptions,;t t -+s,@LIBGD@,$LIBGD,;t t -+s,@EGREP@,$EGREP,;t t -+s,@sizeof_long_double@,$sizeof_long_double,;t t -+s,@libc_cv_gcc_unwind_find_fde@,$libc_cv_gcc_unwind_find_fde,;t t -+s,@uname_sysname@,$uname_sysname,;t t -+s,@uname_release@,$uname_release,;t t -+s,@uname_version@,$uname_version,;t t -+s,@old_glibc_headers@,$old_glibc_headers,;t t -+s,@libc_cv_slibdir@,$libc_cv_slibdir,;t t -+s,@libc_cv_localedir@,$libc_cv_localedir,;t t -+s,@libc_cv_sysconfdir@,$libc_cv_sysconfdir,;t t -+s,@libc_cv_rootsbindir@,$libc_cv_rootsbindir,;t t -+s,@libc_cv_forced_unwind@,$libc_cv_forced_unwind,;t t -+s,@use_ldconfig@,$use_ldconfig,;t t -+s,@ldd_rewrite_script@,$ldd_rewrite_script,;t t -+s,@gnu_ld@,$gnu_ld,;t t -+s,@gnu_as@,$gnu_as,;t t -+s,@elf@,$elf,;t t -+s,@xcoff@,$xcoff,;t t -+s,@static@,$static,;t t -+s,@shared@,$shared,;t t -+s,@pic_default@,$pic_default,;t t -+s,@profile@,$profile,;t t -+s,@omitfp@,$omitfp,;t t -+s,@bounded@,$bounded,;t t -+s,@static_nss@,$static_nss,;t t -+s,@nopic_initfini@,$nopic_initfini,;t t -+s,@DEFINES@,$DEFINES,;t t -+s,@linux_doors@,$linux_doors,;t t -+s,@mach_interface_list@,$mach_interface_list,;t t -+s,@VERSION@,$VERSION,;t t -+s,@RELEASE@,$RELEASE,;t t -+s,@LIB@&t@OBJS@,$LIB@&t@OBJS,;t t -+s,@LTLIBOBJS@,$LTLIBOBJS,;t t -+CEOF -+ -+_ACEOF -+ -+ cat >>$CONFIG_STATUS <<\_ACEOF -+ # Split the substitutions into bite-sized pieces for seds with -+ # small command number limits, like on Digital OSF/1 and HP-UX. -+ ac_max_sed_lines=48 -+ ac_sed_frag=1 # Number of current file. -+ ac_beg=1 # First line for current file. -+ ac_end=$ac_max_sed_lines # Line after last line for current file. -+ ac_more_lines=: -+ ac_sed_cmds= -+ while $ac_more_lines; do -+ if test $ac_beg -gt 1; then -+ sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag -+ else -+ sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag -+ fi -+ if test ! -s $tmp/subs.frag; then -+ ac_more_lines=false -+ else -+ # The purpose of the label and of the branching condition is to -+ # speed up the sed processing (if there are no `@' at all, there -+ # is no need to browse any of the substitutions). -+ # These are the two extra sed commands mentioned above. -+ (echo ':t -+ /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed -+ if test -z "$ac_sed_cmds"; then -+ ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" -+ else -+ ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" -+ fi -+ ac_sed_frag=`expr $ac_sed_frag + 1` -+ ac_beg=$ac_end -+ ac_end=`expr $ac_end + $ac_max_sed_lines` -+ fi -+ done -+ if test -z "$ac_sed_cmds"; then -+ ac_sed_cmds=cat -+ fi -+fi # test -n "$CONFIG_FILES" -+ -+_ACEOF -+cat >>$CONFIG_STATUS <<\_ACEOF -+for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue -+ # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". -+ case $ac_file in -+ - | *:- | *:-:* ) # input from stdin -+ cat >$tmp/stdin -+ ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` -+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; -+ *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` -+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; -+ * ) ac_file_in=$ac_file.in ;; -+ esac -+ -+ # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. -+ ac_dir=`(dirname "$ac_file") 2>/dev/null || -+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -+ X"$ac_file" : 'X\(//\)[^/]' \| \ -+ X"$ac_file" : 'X\(//\)$' \| \ -+ X"$ac_file" : 'X\(/\)' \| \ -+ . : '\(.\)' 2>/dev/null || -+echo X"$ac_file" | -+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -+ /^X\(\/\/\)[^/].*/{ s//\1/; q; } -+ /^X\(\/\/\)$/{ s//\1/; q; } -+ /^X\(\/\).*/{ s//\1/; q; } -+ s/.*/./; q'` -+ { if $as_mkdir_p; then -+ mkdir -p "$ac_dir" -+ else -+ as_dir="$ac_dir" -+ as_dirs= -+ while test ! -d "$as_dir"; do -+ as_dirs="$as_dir $as_dirs" -+ as_dir=`(dirname "$as_dir") 2>/dev/null || -+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -+ X"$as_dir" : 'X\(//\)[^/]' \| \ -+ X"$as_dir" : 'X\(//\)$' \| \ -+ X"$as_dir" : 'X\(/\)' \| \ -+ . : '\(.\)' 2>/dev/null || -+echo X"$as_dir" | -+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -+ /^X\(\/\/\)[^/].*/{ s//\1/; q; } -+ /^X\(\/\/\)$/{ s//\1/; q; } -+ /^X\(\/\).*/{ s//\1/; q; } -+ s/.*/./; q'` -+ done -+ test ! -n "$as_dirs" || mkdir $as_dirs -+ fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} -+ { (exit 1); exit 1; }; }; } -+ -+ ac_builddir=. -+ -+if test "$ac_dir" != .; then -+ ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -+ # A "../" for each directory in $ac_dir_suffix. -+ ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -+else -+ ac_dir_suffix= ac_top_builddir= -+fi -+ -+case $srcdir in -+ .) # No --srcdir option. We are building in place. -+ ac_srcdir=. -+ if test -z "$ac_top_builddir"; then -+ ac_top_srcdir=. -+ else -+ ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -+ fi ;; -+ [\\/]* | ?:[\\/]* ) # Absolute path. -+ ac_srcdir=$srcdir$ac_dir_suffix; -+ ac_top_srcdir=$srcdir ;; -+ *) # Relative path. -+ ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -+ ac_top_srcdir=$ac_top_builddir$srcdir ;; -+esac -+# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -+# absolute. -+ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -+ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -+ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -+ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` -+ -+ -+ case $INSTALL in -+ [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; -+ *) ac_INSTALL=$ac_top_builddir$INSTALL ;; -+ esac -+ -+ if test x"$ac_file" != x-; then -+ { echo "$as_me:$LINENO: creating $ac_file" >&5 -+echo "$as_me: creating $ac_file" >&6;} -+ rm -f "$ac_file" -+ fi -+ # Let's still pretend it is `configure' which instantiates (i.e., don't -+ # use $as_me), people would be surprised to read: -+ # /* config.h. Generated by config.status. */ -+ if test x"$ac_file" = x-; then -+ configure_input= -+ else -+ configure_input="$ac_file. " -+ fi -+ configure_input=$configure_input"Generated from `echo $ac_file_in | -+ sed 's,.*/,,'` by configure." -+ -+ # First look for the input files in the build tree, otherwise in the -+ # src tree. -+ ac_file_inputs=`IFS=: -+ for f in $ac_file_in; do -+ case $f in -+ -) echo $tmp/stdin ;; -+ [\\/$]*) -+ # Absolute (can't be DOS-style, as IFS=:) -+ test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -+echo "$as_me: error: cannot find input file: $f" >&2;} -+ { (exit 1); exit 1; }; } -+ echo $f;; -+ *) # Relative -+ if test -f "$f"; then -+ # Build tree -+ echo $f -+ elif test -f "$srcdir/$f"; then -+ # Source tree -+ echo $srcdir/$f -+ else -+ # /dev/null tree -+ { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -+echo "$as_me: error: cannot find input file: $f" >&2;} -+ { (exit 1); exit 1; }; } -+ fi;; -+ esac -+ done` || { (exit 1); exit 1; } -+_ACEOF -+cat >>$CONFIG_STATUS <<_ACEOF -+ sed "$ac_vpsub -+$extrasub -+_ACEOF -+cat >>$CONFIG_STATUS <<\_ACEOF -+:t -+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -+s,@configure_input@,$configure_input,;t t -+s,@srcdir@,$ac_srcdir,;t t -+s,@abs_srcdir@,$ac_abs_srcdir,;t t -+s,@top_srcdir@,$ac_top_srcdir,;t t -+s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -+s,@builddir@,$ac_builddir,;t t -+s,@abs_builddir@,$ac_abs_builddir,;t t -+s,@top_builddir@,$ac_top_builddir,;t t -+s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -+s,@INSTALL@,$ac_INSTALL,;t t -+" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out -+ rm -f $tmp/stdin -+ if test x"$ac_file" != x-; then -+ mv $tmp/out $ac_file -+ else -+ cat $tmp/out -+ rm -f $tmp/out -+ fi -+ -+done -+_ACEOF -+cat >>$CONFIG_STATUS <<\_ACEOF -+ -+# -+# CONFIG_HEADER section. -+# -+ -+# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -+# NAME is the cpp macro being defined and VALUE is the value it is being given. -+# -+# ac_d sets the value in "#define NAME VALUE" lines. -+ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -+ac_dB='[ ].*$,\1#\2' -+ac_dC=' ' -+ac_dD=',;t' -+# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -+ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -+ac_uB='$,\1#\2define\3' -+ac_uC=' ' -+ac_uD=',;t' -+ -+for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue -+ # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". -+ case $ac_file in -+ - | *:- | *:-:* ) # input from stdin -+ cat >$tmp/stdin -+ ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` -+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; -+ *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` -+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; -+ * ) ac_file_in=$ac_file.in ;; -+ esac -+ -+ test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -+echo "$as_me: creating $ac_file" >&6;} -+ -+ # First look for the input files in the build tree, otherwise in the -+ # src tree. -+ ac_file_inputs=`IFS=: -+ for f in $ac_file_in; do -+ case $f in -+ -) echo $tmp/stdin ;; -+ [\\/$]*) -+ # Absolute (can't be DOS-style, as IFS=:) -+ test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -+echo "$as_me: error: cannot find input file: $f" >&2;} -+ { (exit 1); exit 1; }; } -+ echo $f;; -+ *) # Relative -+ if test -f "$f"; then -+ # Build tree -+ echo $f -+ elif test -f "$srcdir/$f"; then -+ # Source tree -+ echo $srcdir/$f -+ else -+ # /dev/null tree -+ { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -+echo "$as_me: error: cannot find input file: $f" >&2;} -+ { (exit 1); exit 1; }; } -+ fi;; -+ esac -+ done` || { (exit 1); exit 1; } -+ # Remove the trailing spaces. -+ sed 's/[ ]*$//' $ac_file_inputs >$tmp/in -+ -+_ACEOF -+ -+# Transform confdefs.h into two sed scripts, `conftest.defines' and -+# `conftest.undefs', that substitutes the proper values into -+# config.h.in to produce config.h. The first handles `#define' -+# templates, and the second `#undef' templates. -+# And first: Protect against being on the right side of a sed subst in -+# config.status. Protect against being in an unquoted here document -+# in config.status. -+rm -f conftest.defines conftest.undefs -+# Using a here document instead of a string reduces the quoting nightmare. -+# Putting comments in sed scripts is not portable. -+# -+# `end' is used to avoid that the second main sed command (meant for -+# 0-ary CPP macros) applies to n-ary macro definitions. -+# See the Autoconf documentation for `clear'. -+cat >confdef2sed.sed <<\_ACEOF -+s/[\\&,]/\\&/g -+s,[\\$`],\\&,g -+t clear -+: clear -+s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -+t end -+s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -+: end -+_ACEOF -+# If some macros were called several times there might be several times -+# the same #defines, which is useless. Nevertheless, we may not want to -+# sort them, since we want the *last* AC-DEFINE to be honored. -+uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -+sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -+rm -f confdef2sed.sed -+ -+# This sed command replaces #undef with comments. This is necessary, for -+# example, in the case of _POSIX_SOURCE, which is predefined and required -+# on some systems where configure will not decide to define it. -+cat >>conftest.undefs <<\_ACEOF -+s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, -+_ACEOF -+ -+# Break up conftest.defines because some shells have a limit on the size -+# of here documents, and old seds have small limits too (100 cmds). -+echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -+echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS -+echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -+echo ' :' >>$CONFIG_STATUS -+rm -f conftest.tail -+while grep . conftest.defines >/dev/null -+do -+ # Write a limited-size here document to $tmp/defines.sed. -+ echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS -+ # Speed up: don't consider the non `#define' lines. -+ echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS -+ # Work around the forget-to-reset-the-flag bug. -+ echo 't clr' >>$CONFIG_STATUS -+ echo ': clr' >>$CONFIG_STATUS -+ sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS -+ echo 'CEOF -+ sed -f $tmp/defines.sed $tmp/in >$tmp/out -+ rm -f $tmp/in -+ mv $tmp/out $tmp/in -+' >>$CONFIG_STATUS -+ sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail -+ rm -f conftest.defines -+ mv conftest.tail conftest.defines -+done -+rm -f conftest.defines -+echo ' fi # grep' >>$CONFIG_STATUS -+echo >>$CONFIG_STATUS -+ -+# Break up conftest.undefs because some shells have a limit on the size -+# of here documents, and old seds have small limits too (100 cmds). -+echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -+rm -f conftest.tail -+while grep . conftest.undefs >/dev/null -+do -+ # Write a limited-size here document to $tmp/undefs.sed. -+ echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS -+ # Speed up: don't consider the non `#undef' -+ echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS -+ # Work around the forget-to-reset-the-flag bug. -+ echo 't clr' >>$CONFIG_STATUS -+ echo ': clr' >>$CONFIG_STATUS -+ sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS -+ echo 'CEOF -+ sed -f $tmp/undefs.sed $tmp/in >$tmp/out -+ rm -f $tmp/in -+ mv $tmp/out $tmp/in -+' >>$CONFIG_STATUS -+ sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail -+ rm -f conftest.undefs -+ mv conftest.tail conftest.undefs -+done -+rm -f conftest.undefs -+ -+cat >>$CONFIG_STATUS <<\_ACEOF -+ # Let's still pretend it is `configure' which instantiates (i.e., don't -+ # use $as_me), people would be surprised to read: -+ # /* config.h. Generated by config.status. */ -+ if test x"$ac_file" = x-; then -+ echo "/* Generated by configure. */" >$tmp/config.h -+ else -+ echo "/* $ac_file. Generated by configure. */" >$tmp/config.h -+ fi -+ cat $tmp/in >>$tmp/config.h -+ rm -f $tmp/in -+ if test x"$ac_file" != x-; then -+ if diff $ac_file $tmp/config.h >/dev/null 2>&1; then -+ { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -+echo "$as_me: $ac_file is unchanged" >&6;} -+ else -+ ac_dir=`(dirname "$ac_file") 2>/dev/null || -+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -+ X"$ac_file" : 'X\(//\)[^/]' \| \ -+ X"$ac_file" : 'X\(//\)$' \| \ -+ X"$ac_file" : 'X\(/\)' \| \ -+ . : '\(.\)' 2>/dev/null || -+echo X"$ac_file" | -+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -+ /^X\(\/\/\)[^/].*/{ s//\1/; q; } -+ /^X\(\/\/\)$/{ s//\1/; q; } -+ /^X\(\/\).*/{ s//\1/; q; } -+ s/.*/./; q'` -+ { if $as_mkdir_p; then -+ mkdir -p "$ac_dir" -+ else -+ as_dir="$ac_dir" -+ as_dirs= -+ while test ! -d "$as_dir"; do -+ as_dirs="$as_dir $as_dirs" -+ as_dir=`(dirname "$as_dir") 2>/dev/null || -+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -+ X"$as_dir" : 'X\(//\)[^/]' \| \ -+ X"$as_dir" : 'X\(//\)$' \| \ -+ X"$as_dir" : 'X\(/\)' \| \ -+ . : '\(.\)' 2>/dev/null || -+echo X"$as_dir" | -+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -+ /^X\(\/\/\)[^/].*/{ s//\1/; q; } -+ /^X\(\/\/\)$/{ s//\1/; q; } -+ /^X\(\/\).*/{ s//\1/; q; } -+ s/.*/./; q'` -+ done -+ test ! -n "$as_dirs" || mkdir $as_dirs -+ fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} -+ { (exit 1); exit 1; }; }; } -+ -+ rm -f $ac_file -+ mv $tmp/config.h $ac_file -+ fi -+ else -+ cat $tmp/config.h -+ rm -f $tmp/config.h -+ fi -+done -+_ACEOF -+cat >>$CONFIG_STATUS <<\_ACEOF -+ -+# -+# CONFIG_COMMANDS section. -+# -+for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue -+ ac_dest=`echo "$ac_file" | sed 's,:.*,,'` -+ ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` -+ ac_dir=`(dirname "$ac_dest") 2>/dev/null || -+$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -+ X"$ac_dest" : 'X\(//\)[^/]' \| \ -+ X"$ac_dest" : 'X\(//\)$' \| \ -+ X"$ac_dest" : 'X\(/\)' \| \ -+ . : '\(.\)' 2>/dev/null || -+echo X"$ac_dest" | -+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -+ /^X\(\/\/\)[^/].*/{ s//\1/; q; } -+ /^X\(\/\/\)$/{ s//\1/; q; } -+ /^X\(\/\).*/{ s//\1/; q; } -+ s/.*/./; q'` -+ ac_builddir=. -+ -+if test "$ac_dir" != .; then -+ ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -+ # A "../" for each directory in $ac_dir_suffix. -+ ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -+else -+ ac_dir_suffix= ac_top_builddir= -+fi -+ -+case $srcdir in -+ .) # No --srcdir option. We are building in place. -+ ac_srcdir=. -+ if test -z "$ac_top_builddir"; then -+ ac_top_srcdir=. -+ else -+ ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -+ fi ;; -+ [\\/]* | ?:[\\/]* ) # Absolute path. -+ ac_srcdir=$srcdir$ac_dir_suffix; -+ ac_top_srcdir=$srcdir ;; -+ *) # Relative path. -+ ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -+ ac_top_srcdir=$ac_top_builddir$srcdir ;; -+esac -+# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -+# absolute. -+ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -+ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -+ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -+ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` -+ -+ -+ { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 -+echo "$as_me: executing $ac_dest commands" >&6;} -+ case $ac_dest in -+ default ) -+case $CONFIG_FILES in *config.make*) -+echo "$config_vars" >> config.make;; -+esac -+test -d bits || mkdir bits ;; -+ esac -+done -+_ACEOF -+ -+cat >>$CONFIG_STATUS <<\_ACEOF -+ -+{ (exit 0); exit 0; } -+_ACEOF -+chmod +x $CONFIG_STATUS -+ac_clean_files=$ac_clean_files_save -+ -+ -+# configure is writing to config.log, and then calls config.status. -+# config.status does its own redirection, appending to config.log. -+# Unfortunately, on DOS this fails, as config.log is still kept open -+# by configure, so config.status won't be able to write to it; its -+# output is simply discarded. So we exec the FD to /dev/null, -+# effectively closing config.log, so it can be properly (re)opened and -+# appended to by config.status. When coming back to configure, we -+# need to make the FD available again. -+if test "$no_create" != yes; then -+ ac_cs_success=: -+ ac_config_status_args= -+ test "$silent" = yes && -+ ac_config_status_args="$ac_config_status_args --quiet" -+ exec 5>/dev/null -+ $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false -+ exec 5>>config.log -+ # Use ||, not &&, to avoid exiting from the if with $? = 1, which -+ # would make configure fail if this is the last instruction. -+ $ac_cs_success || { (exit 1); exit 1; } -+fi -+ -+# -+# CONFIG_SUBDIRS section. -+# -+if test "$no_recursion" != yes; then -+ -+ # Remove --cache-file and --srcdir arguments so they do not pile up. -+ ac_sub_configure_args= -+ ac_prev= -+ for ac_arg in $ac_configure_args; do -+ if test -n "$ac_prev"; then -+ ac_prev= -+ continue -+ fi -+ case $ac_arg in -+ -cache-file | --cache-file | --cache-fil | --cache-fi \ -+ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) -+ ac_prev=cache_file ;; -+ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ -+ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* \ -+ | --c=*) -+ ;; -+ --config-cache | -C) -+ ;; -+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) -+ ac_prev=srcdir ;; -+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) -+ ;; -+ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) -+ ac_prev=prefix ;; -+ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) -+ ;; -+ *) ac_sub_configure_args="$ac_sub_configure_args $ac_arg" ;; -+ esac -+ done -+ -+ # Always prepend --prefix to ensure using the same prefix -+ # in subdir configurations. -+ ac_sub_configure_args="--prefix=$prefix $ac_sub_configure_args" -+ -+ ac_popdir=`pwd` -+ for ac_dir in : $subdirs; do test "x$ac_dir" = x: && continue -+ -+ # Do not complain, so a configure script can configure whichever -+ # parts of a large source tree are present. -+ test -d $srcdir/$ac_dir || continue -+ -+ { echo "$as_me:$LINENO: configuring in $ac_dir" >&5 -+echo "$as_me: configuring in $ac_dir" >&6;} -+ { if $as_mkdir_p; then -+ mkdir -p "$ac_dir" -+ else -+ as_dir="$ac_dir" -+ as_dirs= -+ while test ! -d "$as_dir"; do -+ as_dirs="$as_dir $as_dirs" -+ as_dir=`(dirname "$as_dir") 2>/dev/null || -+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -+ X"$as_dir" : 'X\(//\)[^/]' \| \ -+ X"$as_dir" : 'X\(//\)$' \| \ -+ X"$as_dir" : 'X\(/\)' \| \ -+ . : '\(.\)' 2>/dev/null || -+echo X"$as_dir" | -+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -+ /^X\(\/\/\)[^/].*/{ s//\1/; q; } -+ /^X\(\/\/\)$/{ s//\1/; q; } -+ /^X\(\/\).*/{ s//\1/; q; } -+ s/.*/./; q'` -+ done -+ test ! -n "$as_dirs" || mkdir $as_dirs -+ fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} -+ { (exit 1); exit 1; }; }; } -+ -+ ac_builddir=. -+ -+if test "$ac_dir" != .; then -+ ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -+ # A "../" for each directory in $ac_dir_suffix. -+ ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -+else -+ ac_dir_suffix= ac_top_builddir= -+fi -+ -+case $srcdir in -+ .) # No --srcdir option. We are building in place. -+ ac_srcdir=. -+ if test -z "$ac_top_builddir"; then -+ ac_top_srcdir=. -+ else -+ ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -+ fi ;; -+ [\\/]* | ?:[\\/]* ) # Absolute path. -+ ac_srcdir=$srcdir$ac_dir_suffix; -+ ac_top_srcdir=$srcdir ;; -+ *) # Relative path. -+ ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -+ ac_top_srcdir=$ac_top_builddir$srcdir ;; -+esac -+# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -+# absolute. -+ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -+ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -+ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -+ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` -+ -+ -+ cd $ac_dir -+ -+ # Check for guested configure; otherwise get Cygnus style configure. -+ if test -f $ac_srcdir/configure.gnu; then -+ ac_sub_configure="$SHELL '$ac_srcdir/configure.gnu'" -+ elif test -f $ac_srcdir/configure; then -+ ac_sub_configure="$SHELL '$ac_srcdir/configure'" -+ elif test -f $ac_srcdir/configure.in; then -+ ac_sub_configure=$ac_configure -+ else -+ { echo "$as_me:$LINENO: WARNING: no configuration information is in $ac_dir" >&5 -+echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2;} -+ ac_sub_configure= -+ fi -+ -+ # The recursion is here. -+ if test -n "$ac_sub_configure"; then -+ # Make the cache file name correct relative to the subdirectory. -+ case $cache_file in -+ [\\/]* | ?:[\\/]* ) ac_sub_cache_file=$cache_file ;; -+ *) # Relative path. -+ ac_sub_cache_file=$ac_top_builddir$cache_file ;; -+ esac -+ -+ { echo "$as_me:$LINENO: running $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&5 -+echo "$as_me: running $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&6;} -+ # The eval makes quoting arguments work. -+ eval $ac_sub_configure $ac_sub_configure_args \ -+ --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir || -+ { { echo "$as_me:$LINENO: error: $ac_sub_configure failed for $ac_dir" >&5 -+echo "$as_me: error: $ac_sub_configure failed for $ac_dir" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ -+ cd $ac_popdir -+ done -+fi -+ ---- glibc-2.3.2/autom4te.cache/requests 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/autom4te.cache/requests 2003-09-19 22:48:21.000000000 -0400 -@@ -0,0 +1,111 @@ -+# This file was created by autom4te. -+# It contains the lists of macros which have been traced. -+# It can be safely removed. -+ -+@request = ( -+ bless( [ -+ '0', -+ 1, -+ [ -+ '/usr/share/autoconf' -+ ], -+ [ -+ '/usr/share/autoconf/autoconf/autoconf.m4f', -+ 'aclocal.m4', -+ 'configure.in' -+ ], -+ { -+ 'm4_pattern_forbid' => 1, -+ 'AC_TYPE_OFF_T' => 1, -+ 'AC_C_VOLATILE' => 1, -+ 'AC_FUNC_CLOSEDIR_VOID' => 1, -+ 'AC_REPLACE_FNMATCH' => 1, -+ 'AC_PROG_LIBTOOL' => 1, -+ 'AC_FUNC_STAT' => 1, -+ 'AC_HEADER_TIME' => 1, -+ 'AC_FUNC_WAIT3' => 1, -+ 'AM_AUTOMAKE_VERSION' => 1, -+ 'AC_STRUCT_TM' => 1, -+ 'AC_FUNC_LSTAT' => 1, -+ 'AC_TYPE_MODE_T' => 1, -+ 'AC_FUNC_GETMNTENT' => 1, -+ 'AC_FUNC_STRTOD' => 1, -+ 'AC_CHECK_HEADERS' => 1, -+ 'AC_FUNC_STRNLEN' => 1, -+ 'AC_PROG_CXX' => 1, -+ 'AC_PATH_X' => 1, -+ 'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK' => 1, -+ 'AC_PROG_AWK' => 1, -+ 'AC_HEADER_STDC' => 1, -+ 'AC_HEADER_MAJOR' => 1, -+ 'AC_FUNC_ERROR_AT_LINE' => 1, -+ 'AC_PROG_GCC_TRADITIONAL' => 1, -+ 'AC_LIBSOURCE' => 1, -+ 'AC_FUNC_MBRTOWC' => 1, -+ 'AC_STRUCT_ST_BLOCKS' => 1, -+ 'AC_TYPE_SIGNAL' => 1, -+ 'AC_TYPE_UID_T' => 1, -+ 'AC_CONFIG_AUX_DIR' => 1, -+ 'AC_PROG_MAKE_SET' => 1, -+ 'm4_pattern_allow' => 1, -+ 'AC_DEFINE_TRACE_LITERAL' => 1, -+ 'AC_FUNC_STRERROR_R' => 1, -+ 'AC_PROG_CC' => 1, -+ 'AC_DECL_SYS_SIGLIST' => 1, -+ 'AC_FUNC_FORK' => 1, -+ 'AC_FUNC_VPRINTF' => 1, -+ 'AC_FUNC_STRCOLL' => 1, -+ 'AC_PROG_YACC' => 1, -+ 'AC_INIT' => 1, -+ 'AC_STRUCT_TIMEZONE' => 1, -+ 'AC_FUNC_CHOWN' => 1, -+ 'AC_SUBST' => 1, -+ 'AC_FUNC_ALLOCA' => 1, -+ 'AC_CANONICAL_HOST' => 1, -+ 'AC_FUNC_GETPGRP' => 1, -+ 'AC_PROG_RANLIB' => 1, -+ 'AM_INIT_AUTOMAKE' => 1, -+ 'AC_FUNC_SETPGRP' => 1, -+ 'AC_CONFIG_SUBDIRS' => 1, -+ 'AC_FUNC_MMAP' => 1, -+ 'AC_FUNC_REALLOC' => 1, -+ 'AC_TYPE_SIZE_T' => 1, -+ 'AC_CHECK_TYPES' => 1, -+ 'AC_CHECK_MEMBERS' => 1, -+ 'AM_MAINTAINER_MODE' => 1, -+ 'AC_FUNC_UTIME_NULL' => 1, -+ 'AC_FUNC_SELECT_ARGTYPES' => 1, -+ 'AC_FUNC_STRFTIME' => 1, -+ 'AC_HEADER_STAT' => 1, -+ 'AC_C_INLINE' => 1, -+ 'AC_PROG_CPP' => 1, -+ 'AC_C_CONST' => 1, -+ 'AC_PROG_LEX' => 1, -+ 'AC_TYPE_PID_T' => 1, -+ 'AC_CONFIG_FILES' => 1, -+ 'include' => 1, -+ 'AC_FUNC_SETVBUF_REVERSED' => 1, -+ 'AC_PROG_INSTALL' => 1, -+ 'AM_GNU_GETTEXT' => 1, -+ 'AC_FUNC_OBSTACK' => 1, -+ 'AC_CHECK_LIB' => 1, -+ 'AC_FUNC_MALLOC' => 1, -+ 'AC_FUNC_GETGROUPS' => 1, -+ 'AC_FUNC_GETLOADAVG' => 1, -+ 'AH_OUTPUT' => 1, -+ 'AC_FUNC_FSEEKO' => 1, -+ 'AM_PROG_CC_C_O' => 1, -+ 'AM_CONDITIONAL' => 1, -+ 'AC_CANONICAL_SYSTEM' => 1, -+ 'AC_FUNC_MKTIME' => 1, -+ 'AC_CONFIG_HEADERS' => 1, -+ 'AC_HEADER_SYS_WAIT' => 1, -+ 'AC_FUNC_MEMCMP' => 1, -+ 'AC_PROG_LN_S' => 1, -+ 'm4_include' => 1, -+ 'AC_HEADER_DIRENT' => 1, -+ 'AC_CHECK_FUNCS' => 1 -+ } -+ ], 'Request' ) -+ ); -+ ---- glibc-2.3.2/autom4te.cache/traces.0 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/autom4te.cache/traces.0 2003-09-19 22:40:33.000000000 -0400 -@@ -0,0 +1,254 @@ -+m4trace:configure.in:4: -1- AC_INIT([GNU C Library], [(see version.h)], [glibc]) -+m4trace:configure.in:4: -1- m4_pattern_forbid([^_?A[CHUM]_]) -+m4trace:configure.in:4: -1- m4_pattern_forbid([_AC_]) -+m4trace:configure.in:4: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS']) -+m4trace:configure.in:4: -1- m4_pattern_allow([^AS_FLAGS$]) -+m4trace:configure.in:4: -1- m4_pattern_forbid([^_?m4_]) -+m4trace:configure.in:4: -1- m4_pattern_forbid([^dnl$]) -+m4trace:configure.in:4: -1- m4_pattern_forbid([^_?AS_]) -+m4trace:configure.in:4: -1- AC_SUBST([SHELL], [${CONFIG_SHELL-/bin/sh}]) -+m4trace:configure.in:4: -1- AC_SUBST([PATH_SEPARATOR]) -+m4trace:configure.in:4: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME], ['AC_PACKAGE_NAME'])]) -+m4trace:configure.in:4: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME], ['AC_PACKAGE_TARNAME'])]) -+m4trace:configure.in:4: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION], ['AC_PACKAGE_VERSION'])]) -+m4trace:configure.in:4: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING], ['AC_PACKAGE_STRING'])]) -+m4trace:configure.in:4: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])]) -+m4trace:configure.in:4: -1- AC_SUBST([exec_prefix], [NONE]) -+m4trace:configure.in:4: -1- AC_SUBST([prefix], [NONE]) -+m4trace:configure.in:4: -1- AC_SUBST([program_transform_name], [s,x,x,]) -+m4trace:configure.in:4: -1- AC_SUBST([bindir], ['${exec_prefix}/bin']) -+m4trace:configure.in:4: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin']) -+m4trace:configure.in:4: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec']) -+m4trace:configure.in:4: -1- AC_SUBST([datadir], ['${prefix}/share']) -+m4trace:configure.in:4: -1- AC_SUBST([sysconfdir], ['${prefix}/etc']) -+m4trace:configure.in:4: -1- AC_SUBST([sharedstatedir], ['${prefix}/com']) -+m4trace:configure.in:4: -1- AC_SUBST([localstatedir], ['${prefix}/var']) -+m4trace:configure.in:4: -1- AC_SUBST([libdir], ['${exec_prefix}/lib']) -+m4trace:configure.in:4: -1- AC_SUBST([includedir], ['${prefix}/include']) -+m4trace:configure.in:4: -1- AC_SUBST([oldincludedir], ['/usr/include']) -+m4trace:configure.in:4: -1- AC_SUBST([infodir], ['${prefix}/info']) -+m4trace:configure.in:4: -1- AC_SUBST([mandir], ['${prefix}/man']) -+m4trace:configure.in:4: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME]) -+m4trace:configure.in:4: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */ -+#undef PACKAGE_NAME]) -+m4trace:configure.in:4: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME]) -+m4trace:configure.in:4: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */ -+#undef PACKAGE_TARNAME]) -+m4trace:configure.in:4: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION]) -+m4trace:configure.in:4: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */ -+#undef PACKAGE_VERSION]) -+m4trace:configure.in:4: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING]) -+m4trace:configure.in:4: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */ -+#undef PACKAGE_STRING]) -+m4trace:configure.in:4: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT]) -+m4trace:configure.in:4: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */ -+#undef PACKAGE_BUGREPORT]) -+m4trace:configure.in:4: -1- AC_SUBST([build_alias]) -+m4trace:configure.in:4: -1- AC_SUBST([host_alias]) -+m4trace:configure.in:4: -1- AC_SUBST([target_alias]) -+m4trace:configure.in:4: -1- AC_SUBST([DEFS]) -+m4trace:configure.in:4: -1- AC_SUBST([ECHO_C]) -+m4trace:configure.in:4: -1- AC_SUBST([ECHO_N]) -+m4trace:configure.in:4: -1- AC_SUBST([ECHO_T]) -+m4trace:configure.in:4: -1- AC_SUBST([LIBS]) -+m4trace:configure.in:6: -1- AC_CONFIG_HEADERS([config.h]) -+m4trace:configure.in:7: -1- AC_CONFIG_AUX_DIR([scripts]) -+m4trace:configure.in:73: -1- AC_SUBST([with_fp]) -+m4trace:configure.in:100: -1- AC_SUBST([with_cvs]) -+m4trace:configure.in:116: -1- AC_SUBST([enable_check_abi]) -+m4trace:configure.in:168: -1- AC_DEFINE_TRACE_LITERAL([GLIBC_OLDEST_ABI]) -+m4trace:configure.in:170: -1- AC_SUBST([oldest_abi]) -+m4trace:configure.in:203: -1- AC_DEFINE_TRACE_LITERAL([NO_HIDDEN]) -+m4trace:configure.in:206: -1- AC_CONFIG_SUBDIRS([ ]) -+m4trace:configure.in:206: -1- AC_SUBST([subdirs], ["$subdirs "]) -+m4trace:configure.in:248: -1- AC_DEFINE_TRACE_LITERAL([DO_STATIC_NSS]) -+m4trace:configure.in:256: -1- AC_SUBST([force_install]) -+m4trace:configure.in:283: -1- AC_SUBST([all_warnings]) -+m4trace:configure.in:285: -1- AC_CANONICAL_HOST -+m4trace:configure.in:285: -1- AC_SUBST([build], [$ac_cv_build]) -+m4trace:configure.in:285: -1- AC_SUBST([build_cpu], [`echo $ac_cv_build | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\1/'`]) -+m4trace:configure.in:285: -1- AC_SUBST([build_vendor], [`echo $ac_cv_build | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\2/'`]) -+m4trace:configure.in:285: -1- AC_SUBST([build_os], [`echo $ac_cv_build | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\3/'`]) -+m4trace:configure.in:285: -1- AC_SUBST([host], [$ac_cv_host]) -+m4trace:configure.in:285: -1- AC_SUBST([host_cpu], [`echo $ac_cv_host | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\1/'`]) -+m4trace:configure.in:285: -1- AC_SUBST([host_vendor], [`echo $ac_cv_host | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\2/'`]) -+m4trace:configure.in:285: -1- AC_SUBST([host_os], [`echo $ac_cv_host | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\3/'`]) -+m4trace:configure.in:438: -1- AC_SUBST([base_machine]) -+m4trace:configure.in:441: -1- AC_DEFINE_TRACE_LITERAL([USE_REGPARMS]) -+m4trace:configure.in:659: -1- AC_SUBST([sysnames]) -+m4trace:configure.in:666: -1- AC_PROG_INSTALL -+m4trace:configure.in:666: -1- AC_SUBST([INSTALL_PROGRAM]) -+m4trace:configure.in:666: -1- AC_SUBST([INSTALL_SCRIPT]) -+m4trace:configure.in:666: -1- AC_SUBST([INSTALL_DATA]) -+m4trace:configure.in:671: -1- AC_PROG_LN_S -+m4trace:configure.in:671: -1- AC_SUBST([LN_S], [$as_ln_s]) -+m4trace:configure.in:673: -1- AC_PROG_CC -+m4trace:configure.in:673: -1- AC_SUBST([CC]) -+m4trace:configure.in:673: -1- AC_SUBST([CFLAGS]) -+m4trace:configure.in:673: -1- AC_SUBST([LDFLAGS]) -+m4trace:configure.in:673: -1- AC_SUBST([CPPFLAGS]) -+m4trace:configure.in:673: -1- AC_SUBST([CC]) -+m4trace:configure.in:673: -1- AC_SUBST([ac_ct_CC]) -+m4trace:configure.in:673: -1- AC_SUBST([CC]) -+m4trace:configure.in:673: -1- AC_SUBST([ac_ct_CC]) -+m4trace:configure.in:673: -1- AC_SUBST([CC]) -+m4trace:configure.in:673: -1- AC_SUBST([CC]) -+m4trace:configure.in:673: -1- AC_SUBST([ac_ct_CC]) -+m4trace:configure.in:673: -1- AC_SUBST([OBJEXT], [$ac_cv_objext]) -+m4trace:configure.in:675: -1- AC_SUBST([BUILD_CC]) -+m4trace:configure.in:677: -1- AC_SUBST([cross_compiling]) -+m4trace:configure.in:678: -1- AC_PROG_CPP -+m4trace:configure.in:678: -1- AC_SUBST([CPP]) -+m4trace:configure.in:678: -1- AC_SUBST([CPPFLAGS]) -+m4trace:configure.in:678: -1- AC_SUBST([CPP]) -+m4trace:configure.in:680: -1- AC_PROG_CXX -+m4trace:configure.in:680: -1- AC_SUBST([CXX]) -+m4trace:configure.in:680: -1- AC_SUBST([CXXFLAGS]) -+m4trace:configure.in:680: -1- AC_SUBST([LDFLAGS]) -+m4trace:configure.in:680: -1- AC_SUBST([CPPFLAGS]) -+m4trace:configure.in:680: -1- AC_SUBST([CXX]) -+m4trace:configure.in:680: -1- AC_SUBST([ac_ct_CXX]) -+m4trace:configure.in:681: -1- AC_SUBST([AR]) -+m4trace:configure.in:681: -1- AC_SUBST([OBJDUMP]) -+m4trace:configure.in:681: -1- AC_SUBST([RANLIB]) -+m4trace:configure.in:681: -1- AC_SUBST([ac_ct_RANLIB]) -+m4trace:configure.in:681: -1- AC_SUBST([RANLIB]) -+m4trace:configure.in:682: -1- AC_SUBST([MIG]) -+m4trace:configure.in:687: -1- AC_SUBST([AS]) -+m4trace:configure.in:690: -1- AC_SUBST([LD]) -+m4trace:configure.in:697: -1- AC_SUBST([PWD_P], [$ac_cv_path_PWD_P]) -+m4trace:configure.in:706: -1- AC_SUBST([CC]) -+m4trace:configure.in:709: -1- AC_SUBST([MAKE]) -+m4trace:configure.in:714: -1- AC_SUBST([MSGFMT]) -+m4trace:configure.in:718: -1- AC_SUBST([MAKEINFO]) -+m4trace:configure.in:722: -1- AC_SUBST([SED]) -+m4trace:configure.in:724: -1- AC_SUBST([AUTOCONF]) -+m4trace:configure.in:754: -1- AC_SUBST([CCVERSION]) -+m4trace:configure.in:763: -1- AC_SUBST([SYSINCLUDES]) -+m4trace:configure.in:818: -1- AC_SUBST([libc_cv_gcc_static_libgcc]) -+m4trace:configure.in:820: -1- AC_SUBST([BASH], [$ac_cv_path_BASH]) -+m4trace:configure.in:828: -1- AC_SUBST([libc_cv_have_bash2]) -+m4trace:configure.in:832: -1- AC_SUBST([KSH], [$ac_cv_path_KSH]) -+m4trace:configure.in:840: -1- AC_SUBST([KSH]) -+m4trace:configure.in:843: -1- AC_SUBST([libc_cv_have_ksh]) -+m4trace:configure.in:845: -1- AC_PROG_AWK -+m4trace:configure.in:845: -1- AC_SUBST([AWK]) -+m4trace:configure.in:846: -1- AC_SUBST([PERL], [$ac_cv_path_PERL]) -+m4trace:configure.in:852: -1- AC_SUBST([INSTALL_INFO], [$ac_cv_path_INSTALL_INFO]) -+m4trace:configure.in:878: -1- AC_SUBST([OLD_DEBIAN_INSTALL_INFO]) -+m4trace:configure.in:880: -1- AC_SUBST([BISON], [$ac_cv_path_BISON]) -+m4trace:configure.in:969: -1- AC_DEFINE_TRACE_LITERAL([ASM_GLOBAL_DIRECTIVE]) -+m4trace:configure.in:994: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ASM_SET_DIRECTIVE]) -+m4trace:configure.in:1016: -1- AC_DEFINE_TRACE_LITERAL([ASM_TYPE_DIRECTIVE_PREFIX]) -+m4trace:configure.in:1023: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ASM_GLOBAL_DOT_NAME]) -+m4trace:configure.in:1077: -1- AC_DEFINE_TRACE_LITERAL([DO_VERSIONING]) -+m4trace:configure.in:1081: -1- AC_SUBST([VERSIONING]) -+m4trace:configure.in:1104: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ASM_PREVIOUS_DIRECTIVE]) -+m4trace:configure.in:1119: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ASM_POPSECTION_DIRECTIVE]) -+m4trace:configure.in:1136: -1- AC_SUBST([libc_cv_asm_protected_directive]) -+m4trace:configure.in:1137: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PROTECTED]) -+m4trace:configure.in:1138: -1- AC_DEFINE_TRACE_LITERAL([HAVE_HIDDEN]) -+m4trace:configure.in:1158: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VISIBILITY_ATTRIBUTE]) -+m4trace:configure.in:1181: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BROKEN_VISIBILITY_ATTRIBUTE]) -+m4trace:configure.in:1205: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BROKEN_ALIAS_ATTRIBUTE]) -+m4trace:configure.in:1220: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SDATA_SECTION]) -+m4trace:configure.in:1244: -1- AC_SUBST([libc_cv_initfinit_array]) -+m4trace:configure.in:1246: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INITFINI_ARRAY]) -+m4trace:configure.in:1264: -1- AC_SUBST([libc_cv_z_nodelete]) -+m4trace:configure.in:1281: -1- AC_SUBST([libc_cv_z_nodlopen]) -+m4trace:configure.in:1298: -1- AC_SUBST([libc_cv_z_initfirst]) -+m4trace:configure.in:1314: -1- AC_SUBST([libc_cv_Bgroup]) -+m4trace:configure.in:1336: -1- AC_SUBST([ASFLAGS_config]) -+m4trace:configure.in:1364: -1- AC_DEFINE_TRACE_LITERAL([HAVE_Z_COMBRELOC]) -+m4trace:configure.in:1367: -1- AC_SUBST([libc_cv_z_combreloc]) -+m4trace:configure.in:1376: -1- AC_SUBST([libc_cv_have_initfini]) -+m4trace:configure.in:1378: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INITFINI]) -+m4trace:configure.in:1401: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SECTION_QUOTES]) -+m4trace:configure.in:1446: -1- AC_DEFINE_TRACE_LITERAL([NO_UNDERSCORES]) -+m4trace:configure.in:1492: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ASM_WEAK_DIRECTIVE]) -+m4trace:configure.in:1494: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ASM_WEAKEXT_DIRECTIVE]) -+m4trace:configure.in:1503: -1- AC_DEFINE_TRACE_LITERAL([ASM_LINE_SEP]) -+m4trace:configure.in:1522: -1- AC_DEFINE_TRACE_LITERAL([ASM_LINE_SEP]) -+m4trace:configure.in:1543: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ASM_CFI_DIRECTIVES]) -+m4trace:configure.in:1573: -1- AC_SUBST([libc_cv_cpp_asm_debuginfo]) -+m4trace:configure.in:1575: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CPP_ASM_DEBUGINFO]) -+m4trace:configure.in:1596: -1- AC_SUBST([no_whole_archive]) -+m4trace:configure.in:1616: -1- AC_SUBST([exceptions]) -+m4trace:configure.in:1626: -1- AC_DEFINE_TRACE_LITERAL([BROKEN_PPC_ASM_CR0]) -+m4trace:configure.in:1687: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DWARF2_UNWIND_INFO]) -+m4trace:configure.in:1690: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DWARF2_UNWIND_INFO]) -+m4trace:configure.in:1691: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DWARF2_UNWIND_INFO_STATIC]) -+m4trace:configure.in:1714: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BUILTIN_EXPECT]) -+m4trace:configure.in:1733: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BUILTIN_MEMSET]) -+m4trace:configure.in:1753: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BUILTIN_REDIRECTION]) -+m4trace:configure.in:1782: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SUBTRACT_LOCAL_LABELS]) -+m4trace:configure.in:1798: -1- AC_DEFINE_TRACE_LITERAL([HAVE___THREAD]) -+m4trace:configure.in:1817: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TLS_MODEL_ATTRIBUTE]) -+m4trace:configure.in:1838: -1- AC_SUBST([LIBGD]) -+m4trace:configure.in:1841: -1- AC_HEADER_STDC -+m4trace:configure.in:1841: -1- AC_SUBST([EGREP]) -+m4trace:configure.in:1841: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS]) -+m4trace:configure.in:1841: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */ -+#undef STDC_HEADERS]) -+m4trace:configure.in:1841: -1- AC_CHECK_HEADERS([sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ -+ inttypes.h stdint.h unistd.h], [], [], [$ac_includes_default]) -+m4trace:configure.in:1841: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the header file. */ -+#undef HAVE_SYS_TYPES_H]) -+m4trace:configure.in:1841: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the header file. */ -+#undef HAVE_SYS_STAT_H]) -+m4trace:configure.in:1841: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the header file. */ -+#undef HAVE_STDLIB_H]) -+m4trace:configure.in:1841: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the header file. */ -+#undef HAVE_STRING_H]) -+m4trace:configure.in:1841: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the header file. */ -+#undef HAVE_MEMORY_H]) -+m4trace:configure.in:1841: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the header file. */ -+#undef HAVE_STRINGS_H]) -+m4trace:configure.in:1841: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the header file. */ -+#undef HAVE_INTTYPES_H]) -+m4trace:configure.in:1841: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the header file. */ -+#undef HAVE_STDINT_H]) -+m4trace:configure.in:1841: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the header file. */ -+#undef HAVE_UNISTD_H]) -+m4trace:configure.in:1841: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG_DOUBLE]) -+m4trace:configure.in:1841: -1- AH_OUTPUT([SIZEOF_LONG_DOUBLE], [/* The size of a `long double\', as computed by sizeof. */ -+#undef SIZEOF_LONG_DOUBLE]) -+m4trace:configure.in:1843: -1- AC_SUBST([sizeof_long_double]) -+m4trace:configure.in:1879: -1- AC_DEFINE_TRACE_LITERAL([EXPORT_UNWIND_FIND_FDE]) -+m4trace:configure.in:1881: -1- AC_SUBST([libc_cv_gcc_unwind_find_fde]) -+m4trace:configure.in:1934: -1- AC_SUBST([uname_sysname]) -+m4trace:configure.in:1934: -1- AC_SUBST([uname_release]) -+m4trace:configure.in:1934: -1- AC_SUBST([uname_version]) -+m4trace:configure.in:1942: -1- AC_DEFINE_TRACE_LITERAL([USE_IN_LIBIO]) -+m4trace:configure.in:1958: -1- AC_SUBST([old_glibc_headers]) -+m4trace:configure.in:1960: -1- AC_SUBST([libc_cv_slibdir]) -+m4trace:configure.in:1961: -1- AC_SUBST([libc_cv_localedir]) -+m4trace:configure.in:1962: -1- AC_SUBST([libc_cv_sysconfdir]) -+m4trace:configure.in:1963: -1- AC_SUBST([libc_cv_rootsbindir]) -+m4trace:configure.in:1964: -1- AC_SUBST([libc_cv_forced_unwind]) -+m4trace:configure.in:1966: -1- AC_SUBST([use_ldconfig]) -+m4trace:configure.in:1967: -1- AC_SUBST([ldd_rewrite_script]) -+m4trace:configure.in:1969: -1- AC_SUBST([gnu_ld]) -+m4trace:configure.in:1969: -1- AC_SUBST([gnu_as]) -+m4trace:configure.in:1969: -1- AC_SUBST([elf]) -+m4trace:configure.in:1969: -1- AC_SUBST([xcoff]) -+m4trace:configure.in:1971: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GNU_LD]) -+m4trace:configure.in:1974: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GNU_AS]) -+m4trace:configure.in:1977: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ELF]) -+m4trace:configure.in:1980: -1- AC_DEFINE_TRACE_LITERAL([HAVE_XCOFF]) -+m4trace:configure.in:1983: -1- AC_SUBST([static]) -+m4trace:configure.in:1984: -1- AC_SUBST([shared]) -+m4trace:configure.in:2006: -1- AC_SUBST([pic_default]) -+m4trace:configure.in:2008: -1- AC_SUBST([profile]) -+m4trace:configure.in:2009: -1- AC_SUBST([omitfp]) -+m4trace:configure.in:2010: -1- AC_SUBST([bounded]) -+m4trace:configure.in:2011: -1- AC_SUBST([static_nss]) -+m4trace:configure.in:2012: -1- AC_SUBST([nopic_initfini]) -+m4trace:configure.in:2014: -1- AC_SUBST([DEFINES]) -+m4trace:configure.in:2020: -1- AC_SUBST([linux_doors]) -+m4trace:configure.in:2023: -1- AC_SUBST([mach_interface_list]) -+m4trace:configure.in:2033: -1- AC_SUBST([VERSION]) -+m4trace:configure.in:2034: -1- AC_SUBST([RELEASE]) -+m4trace:configure.in:2036: -1- AC_CONFIG_FILES([config.make glibcbug ${config_makefile} ${config_uname}]) -+m4trace:configure.in:2042: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs]) -+m4trace:configure.in:2042: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs]) ---- glibc-2.3.2/catgets/gencat.c 2003-02-22 18:09:59.000000000 -0500 -+++ glibc-2.3.2/catgets/gencat.c 2003-04-12 11:39:42.000000000 -0400 -@@ -333,7 +333,7 @@ - /* There might be more than one backslash at the end of - the line. Only if there is an odd number of them is - the line continued. */ -- if (buf[act_len - 1] == '\\') -+ if (act_len > 0 && buf[act_len - 1] == '\\') - { - int temp_act_len = act_len; - -@@ -343,10 +343,10 @@ - continued = !continued; - } - while (temp_act_len > 0 && buf[temp_act_len - 1] == '\\'); -- } - -- if (continued) -- --act_len; -+ if (continued) -+ --act_len; -+ } - } - - /* Append to currently selected line. */ ---- glibc-2.3.2/catgets/nl_types.h 2001-07-07 15:20:51.000000000 -0400 -+++ glibc-2.3.2/catgets/nl_types.h 2003-04-24 20:05:56.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996, 1997, 1999 Free Software Foundation, Inc. -+/* Copyright (C) 1996, 1997, 1999, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -36,8 +36,11 @@ - /* Type used by `nl_langinfo'. */ - typedef int nl_item; - --/* Open message catalog for later use, returning descriptor. */ --extern nl_catd catopen (__const char *__cat_name, int __flag) __THROW; -+/* Open message catalog for later use, returning descriptor. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern nl_catd catopen (__const char *__cat_name, int __flag); - - /* Return translation with NUMBER in SET of CATALOG; if not found - return STRING. */ ---- glibc-2.3.2/catgets/open_catalog.c 2002-09-24 01:11:41.000000000 -0400 -+++ glibc-2.3.2/catgets/open_catalog.c 2003-08-21 08:36:58.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996-2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1996-2000, 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper, . - -@@ -30,6 +30,7 @@ - #include - - #include "catgetsinfo.h" -+#include - - - #define SWAPU32(w) bswap_32 (w) -@@ -49,7 +50,7 @@ - int result = -1; - - if (strchr (cat_name, '/') != NULL || nlspath == NULL) -- fd = __open (cat_name, O_RDONLY); -+ fd = open_not_cancel_2 (cat_name, O_RDONLY); - else - { - const char *run_nlspath = nlspath; -@@ -177,7 +178,7 @@ - - if (bufact != 0) - { -- fd = __open (buf, O_RDONLY); -+ fd = open_not_cancel_2 (buf, O_RDONLY); - if (fd >= 0) - break; - } -@@ -233,8 +234,8 @@ - /* Save read, handle partial reads. */ - do - { -- size_t now = __read (fd, (((char *) catalog->file_ptr) -- + (st.st_size - todo)), todo); -+ size_t now = read_not_cancel (fd, (((char *) catalog->file_ptr) -+ + (st.st_size - todo)), todo); - if (now == 0 || now == (size_t) -1) - { - #ifdef EINTR -@@ -324,7 +325,7 @@ - - /* Release the lock again. */ - close_unlock_return: -- __close (fd); -+ close_not_cancel_no_status (fd); - - return result; - } ---- glibc-2.3.2/config-name.in 1994-12-08 04:12:33.000000000 -0500 -+++ glibc-2.3.2/config-name.in 2002-11-16 08:53:56.000000000 -0500 -@@ -1,5 +1,5 @@ - /* @configure_input@ -*- C -*- -- Generated from $Id: config-name.in,v 1.1 1994/12/08 09:12:33 roland Exp $. -+ Generated from $Id$. - - This is used only by the generic `uname' function for systems with no real - `uname' call. If this data is not correct, it does not matter much. */ ---- glibc-2.3.2/config.h.in 2003-02-04 03:35:22.000000000 -0500 -+++ glibc-2.3.2/config.h.in 2003-05-24 14:06:21.000000000 -0400 -@@ -31,6 +31,9 @@ - /* Define if weak symbols are available via the `.weakext' directive. */ - #undef HAVE_ASM_WEAKEXT_DIRECTIVE - -+/* Define if CFI directives are available. */ -+#undef HAVE_ASM_CFI_DIRECTIVES -+ - /* Define to the assembler line separator character for multiple - assembler instructions per line. Default is `;' */ - #undef ASM_LINE_SEP -@@ -58,6 +61,9 @@ - /* Define a symbol_name as a global .symbol_name for ld. */ - #undef HAVE_ASM_GLOBAL_DOT_NAME - -+/* Define if the assembler generates debugging information directly. */ -+#undef HAVE_CPP_ASM_DEBUGINFO -+ - /* Define if _Unwind_Find_FDE should be exported from glibc. */ - #undef EXPORT_UNWIND_FIND_FDE - -@@ -95,6 +101,10 @@ - /* Define if the compiler supports __builtin_memset. */ - #undef HAVE_BUILTIN_MEMSET - -+/* Define if __asm () on built-in function's prototype causes redirection of -+ the builtin. */ -+#undef HAVE_BUILTIN_REDIRECTION -+ - /* Define if the __thread keyword is supported. */ - #undef HAVE___THREAD - -@@ -186,6 +196,9 @@ - /* Mach/i386 specific: define if the `i386_set_gdt' RPC is available. */ - #undef HAVE_I386_SET_GDT - -+/* Defined if forced unwind support is available. */ -+#undef HAVE_FORCED_UNWIND -+ - /* - */ - ---- glibc-2.3.2/config.make.in 2002-11-14 17:53:32.000000000 -0500 -+++ glibc-2.3.2/config.make.in 2003-08-21 08:36:58.000000000 -0400 -@@ -1,5 +1,5 @@ - # @configure_input@ --# From $Id: config.make.in,v 1.90 2002/11/14 03:59:36 roland Exp $. -+# From $Id: config.make.in,v 1.94 2003/06/04 21:40:22 drepper Exp $. - # Don't edit this file. Put configuration parameters in configparms instead. - - version = @VERSION@ -@@ -50,6 +50,9 @@ - old-glibc-headers = @old_glibc_headers@ - unwind-find-fde = @libc_cv_gcc_unwind_find_fde@ - have-initfini-array = @libc_cv_initfinit_array@ -+have-cpp-asm-debuginfo = @libc_cv_cpp_asm_debuginfo@ -+enable-check-abi = @enable_check_abi@ -+have-forced-unwind = @libc_cv_forced_unwind@ - - static-libgcc = @libc_cv_gcc_static_libgcc@ - -@@ -82,8 +85,10 @@ - - # Build tools. - CC = @CC@ -+CXX = @CXX@ - BUILD_CC = @BUILD_CC@ - CFLAGS = @CFLAGS@ -+ASFLAGS-config = @ASFLAGS_config@ - AR = @AR@ - RANLIB = @RANLIB@ - MAKEINFO = @MAKEINFO@ ---- glibc-2.3.2/configure 2003-02-26 04:20:48.000000000 -0500 -+++ glibc-2.3.2/configure 2003-08-21 08:36:58.000000000 -0400 -@@ -1,7 +1,7 @@ - #! /bin/sh - # From configure.in CVSid. - # Guess values for system-dependent variables and create Makefiles. --# Generated by GNU Autoconf 2.57 for GNU C Library (see version.h). -+# Generated by GNU Autoconf 2.54 for GNU C Library (see version.h). - # - # Report bugs to . - # -@@ -39,10 +39,7 @@ - PS4='+ ' - - # NLS nuisances. --for as_var in \ -- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ -- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ -- LC_TELEPHONE LC_TIME -+for as_var in LANG LANGUAGE LC_ALL LC_COLLATE LC_CTYPE LC_NUMERIC LC_MESSAGES LC_TIME - do - if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var -@@ -88,15 +85,15 @@ - - # The user is always right. - if test "${PATH_SEPARATOR+set}" != set; then -- echo "#! /bin/sh" >conf$$.sh -- echo "exit 0" >>conf$$.sh -- chmod +x conf$$.sh -- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then -+ echo "#! /bin/sh" >conftest.sh -+ echo "exit 0" >>conftest.sh -+ chmod +x conftest.sh -+ if (PATH="/nonexistent;."; conftest.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi -- rm -f conf$$.sh -+ rm -f conftest.sh - fi - - -@@ -312,7 +309,7 @@ - # include - #endif" - --ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS with_fp with_cvs oldest_abi subdirs force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os base_machine sysnames INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S PWD_P CC MAKE MSGFMT MAKEINFO SED AUTOCONF CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD CCVERSION SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO OLD_DEBIAN_INSTALL_INFO BISON VERSIONING libc_cv_asm_protected_directive libc_cv_initfinit_array libc_cv_z_nodelete libc_cv_z_nodlopen libc_cv_z_initfirst libc_cv_Bgroup libc_cv_z_combreloc libc_cv_have_initfini no_whole_archive exceptions LIBGD EGREP sizeof_long_double libc_cv_gcc_unwind_find_fde uname_sysname uname_release uname_version old_glibc_headers libc_cv_slibdir libc_cv_localedir libc_cv_sysconfdir libc_cv_rootsbindir use_ldconfig ldd_rewrite_script gnu_ld gnu_as elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES linux_doors mach_interface_list VERSION RELEASE LIBOBJS LTLIBOBJS' -+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS with_fp with_cvs enable_check_abi oldest_abi subdirs force_install all_warnings build build_cpu build_vendor build_os host host_cpu host_vendor host_os base_machine sysnames INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT BUILD_CC cross_compiling CPP CXX CXXFLAGS ac_ct_CXX AR OBJDUMP RANLIB ac_ct_RANLIB MIG AS LD PWD_P MAKE MSGFMT MAKEINFO SED AUTOCONF CCVERSION SYSINCLUDES libc_cv_gcc_static_libgcc BASH libc_cv_have_bash2 KSH libc_cv_have_ksh AWK PERL INSTALL_INFO OLD_DEBIAN_INSTALL_INFO BISON VERSIONING libc_cv_asm_protected_directive libc_cv_initfinit_array libc_cv_z_nodelete libc_cv_z_nodlopen libc_cv_z_initfirst libc_cv_Bgroup ASFLAGS_config libc_cv_z_combreloc libc_cv_have_initfini libc_cv_cpp_asm_debuginfo no_whole_archive exceptions LIBGD EGREP sizeof_long_double libc_cv_gcc_unwind_find_fde uname_sysname uname_release uname_version old_glibc_headers libc_cv_slibdir libc_cv_localedir libc_cv_sysconfdir libc_cv_rootsbindir libc_cv_forced_unwind use_ldconfig ldd_rewrite_script gnu_ld gnu_as elf xcoff static shared pic_default profile omitfp bounded static_nss nopic_initfini DEFINES linux_doors mach_interface_list VERSION RELEASE LIBOBJS LTLIBOBJS' - ac_subst_files='' - - # Initialize some variables set by options. -@@ -773,6 +770,14 @@ - ac_env_CPP_value=$CPP - ac_cv_env_CPP_set=${CPP+set} - ac_cv_env_CPP_value=$CPP -+ac_env_CXX_set=${CXX+set} -+ac_env_CXX_value=$CXX -+ac_cv_env_CXX_set=${CXX+set} -+ac_cv_env_CXX_value=$CXX -+ac_env_CXXFLAGS_set=${CXXFLAGS+set} -+ac_env_CXXFLAGS_value=$CXXFLAGS -+ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set} -+ac_cv_env_CXXFLAGS_value=$CXXFLAGS - - # - # Report the --help message. -@@ -851,6 +856,8 @@ - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --disable-sanity-checks really do not use threads (should not be used except - in special situations) [default=yes] -+ --enable-check-abi do "make check-abi" in "make check" (no/warn/yes) -+ [default=no] - --enable-shared build shared library [default=yes if GNU ld & - ELF] - --enable-profile build profiled library [default=yes] -@@ -899,6 +906,8 @@ - CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have - headers in a nonstandard directory - CPP C preprocessor -+ CXX C++ compiler command -+ CXXFLAGS C++ compiler flags - - Use these variables to override the choices made by `configure' or to help - it to find libraries and programs with nonstandard names/locations. -@@ -967,7 +976,7 @@ - if $ac_init_version; then - cat <<\_ACEOF - GNU C Library configure (see version.h) --generated by GNU Autoconf 2.57 -+generated by GNU Autoconf 2.54 - - Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 - Free Software Foundation, Inc. -@@ -982,7 +991,7 @@ - running configure, to aid debugging if configure makes a mistake. - - It was created by GNU C Library $as_me (see version.h), which was --generated by GNU Autoconf 2.57. Invocation command line was -+generated by GNU Autoconf 2.54. Invocation command line was - - $ $0 $@ - -@@ -1034,54 +1043,24 @@ - - # Keep a trace of the command line. - # Strip out --no-create and --no-recursion so they do not pile up. --# Strip out --silent because we don't want to record it for future runs. - # Also quote any args containing shell meta-characters. --# Make two passes to allow for proper duplicate-argument suppression. - ac_configure_args= --ac_configure_args0= --ac_configure_args1= - ac_sep= --ac_must_keep_next=false --for ac_pass in 1 2 -+for ac_arg - do -- for ac_arg -- do -- case $ac_arg in -- -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -- -q | -quiet | --quiet | --quie | --qui | --qu | --q \ -- | -silent | --silent | --silen | --sile | --sil) -- continue ;; -- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) -- ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; -- esac -- case $ac_pass in -- 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; -- 2) -- ac_configure_args1="$ac_configure_args1 '$ac_arg'" -- if test $ac_must_keep_next = true; then -- ac_must_keep_next=false # Got value, back to normal. -- else -- case $ac_arg in -- *=* | --config-cache | -C | -disable-* | --disable-* \ -- | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ -- | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ -- | -with-* | --with-* | -without-* | --without-* | --x) -- case "$ac_configure_args0 " in -- "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; -- esac -- ;; -- -* ) ac_must_keep_next=true ;; -- esac -- fi -- ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" -- # Get rid of the leading space. -- ac_sep=" " -- ;; -- esac -- done -+ case $ac_arg in -+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \ -+ | --no-cr | --no-c | -n ) continue ;; -+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \ -+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) -+ continue ;; -+ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) -+ ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; -+ esac -+ ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" -+ # Get rid of the leading space. -+ ac_sep=" " - done --$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } --$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } - - # When interrupted or exit'd, cleanup temporary files, and complete - # config.log. We remove comments because anyway the quotes in there -@@ -1479,6 +1458,15 @@ - enable_sanity=yes - fi; - -+ -+# Check whether --enable-check-abi or --disable-check-abi was given. -+if test "${enable_check_abi+set}" = set; then -+ enableval="$enable_check_abi" -+ enable_check_abi=$enableval -+else -+ enable_check_abi=no -+fi; -+ - static=yes - # Check whether --enable-shared or --disable-shared was given. - if test "${enable_shared+set}" = set; then -@@ -1822,8 +1810,33 @@ - m68k) base_machine=m68k machine=m68k/m68020 ;; - m88???) base_machine=m88k machine=m88k/$machine ;; - m88k) base_machine=m88k machine=m88k/m88100 ;; --mips64*) base_machine=mips64 machine=mips/mips64/$machine ;; --mips*) base_machine=mips machine=mips/$machine ;; -+mips64*) base_machine=mips64 -+ case "$CC $CFLAGS $CPPFLAGS " in -+ *" -mabi=n32 "*) mips_cc_abi=n32 ;; -+ *" -mabi=64 "*|*" -mabi=n64 "*) mips_cc_abi=64 ;; -+ *" -mabi=32 "*|*" -mabi=o32 "*) mips_cc_abi=32 ;; -+ *) mips_cc_abi=default ;; -+ esac -+ case $config_os in -+ *abin32*) mips_config_abi=n32 ;; -+ *abi64*|*abin64*) mips_config_abi=64 ;; -+ *abi32*|*abio32*) mips_config_abi=32 ;; -+ *) mips_config_abi=$mips_cc_abi ;; -+ esac -+ case $mips_config_abi in -+ default) machine=mips/mips64/n32 mips_config_abi=n32 ;; -+ n32) machine=mips/mips64/n32 ;; -+ 64) machine=mips/mips64/n64 ;; -+ 32) machine=mips/mips32/kern64 ;; -+ esac -+ machine=$machine/$config_machine -+ if test $mips_config_abi != $mips_cc_abi; then -+ # This won't make it to config.make, but we want to -+ # set this in case configure tests depend on it. -+ CPPFLAGS="$CPPFLAGS -mabi=$mips_config_abi" -+ fi -+ ;; -+mips*) base_machine=mips machine=mips/mips32/$machine ;; - powerpc) base_machine=powerpc machine=powerpc/powerpc32 ;; - powerpc64) base_machine=powerpc machine=powerpc/powerpc64 ;; - s390) base_machine=s390 machine=s390/s390-32 ;; -@@ -2170,70 +2183,59 @@ - fi - - --# We need the physical current working directory. We cannot use the --# "pwd -P" shell builtin since that's not portable. Instead we try to --# find a pwd binary. Note that assigning to the PWD environment --# variable might have some interesting side effects, so we don't do --# that. --# Extract the first word of "pwd", so it can be a program name with args. --set dummy pwd; ac_word=$2 -+ac_ext=c -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_c_compiler_gnu -+if test -n "$ac_tool_prefix"; then -+ # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -+set dummy ${ac_tool_prefix}gcc; ac_word=$2 - echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_path_PWD_P+set}" = set; then -+if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- case $PWD_P in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_PWD_P="$PWD_P" # Let the user override the test with a path. -- ;; -- *) -- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+ if test -n "$CC"; then -+ ac_cv_prog_CC="$CC" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR - for as_dir in $PATH - do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_path_PWD_P="$as_dir/$ac_word$ac_exec_ext" -+ ac_cv_prog_CC="${ac_tool_prefix}gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi - done - done - -- test -z "$ac_cv_path_PWD_P" && ac_cv_path_PWD_P="no" -- ;; --esac - fi --PWD_P=$ac_cv_path_PWD_P -- --if test -n "$PWD_P"; then -- echo "$as_me:$LINENO: result: $PWD_P" >&5 --echo "${ECHO_T}$PWD_P" >&6 -+fi -+CC=$ac_cv_prog_CC -+if test -n "$CC"; then -+ echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6 - else - echo "$as_me:$LINENO: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - --if test "$PWD_P" = no; then -- { { echo "$as_me:$LINENO: error: *** A pwd binary could not be found." >&5 --echo "$as_me: error: *** A pwd binary could not be found." >&2;} -- { (exit 1); exit 1; }; } - fi -- --# These programs are version sensitive. -- --for ac_prog in ${ac_tool_prefix}gcc ${ac_tool_prefix}cc --do -- # Extract the first word of "$ac_prog", so it can be a program name with args. --set dummy $ac_prog; ac_word=$2 -+if test -z "$ac_cv_prog_CC"; then -+ ac_ct_CC=$CC -+ # Extract the first word of "gcc", so it can be a program name with args. -+set dummy gcc; ac_word=$2 - echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- if test -n "$CC"; then -- ac_cv_prog_CC="$CC" # Let the user override the test. -+ if test -n "$ac_ct_CC"; then -+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. - else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR - for as_dir in $PATH -@@ -2242,7 +2244,7 @@ - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_CC="$ac_prog" -+ ac_cv_prog_ac_ct_CC="gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -@@ -2251,50 +2253,31 @@ - - fi - fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 -+ac_ct_CC=$ac_cv_prog_ac_ct_CC -+if test -n "$ac_ct_CC"; then -+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -+echo "${ECHO_T}$ac_ct_CC" >&6 - else - echo "$as_me:$LINENO: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -- test -n "$CC" && break --done -- --if test -z "$CC"; then -- ac_verc_fail=yes -+ CC=$ac_ct_CC - else -- # Found it, now check the version. -- echo "$as_me:$LINENO: checking version of $CC" >&5 --echo $ECHO_N "checking version of $CC... $ECHO_C" >&6 -- ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'` -- case $ac_prog_version in -- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.[2-9]*) -- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -- -- esac -- echo "$as_me:$LINENO: result: $ac_prog_version" >&5 --echo "${ECHO_T}$ac_prog_version" >&6 --fi --if test $ac_verc_fail = yes; then -- critic_missing="$critic_missing gcc" -+ CC="$ac_cv_prog_CC" - fi - --for ac_prog in gnumake gmake make --do -- # Extract the first word of "$ac_prog", so it can be a program name with args. --set dummy $ac_prog; ac_word=$2 -+if test -z "$CC"; then -+ if test -n "$ac_tool_prefix"; then -+ # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -+set dummy ${ac_tool_prefix}cc; ac_word=$2 - echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_MAKE+set}" = set; then -+if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- if test -n "$MAKE"; then -- ac_cv_prog_MAKE="$MAKE" # Let the user override the test. -+ if test -n "$CC"; then -+ ac_cv_prog_CC="$CC" # Let the user override the test. - else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR - for as_dir in $PATH -@@ -2303,7 +2286,7 @@ - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_MAKE="$ac_prog" -+ ac_cv_prog_CC="${ac_tool_prefix}cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -@@ -2312,63 +2295,27 @@ - - fi - fi --MAKE=$ac_cv_prog_MAKE --if test -n "$MAKE"; then -- echo "$as_me:$LINENO: result: $MAKE" >&5 --echo "${ECHO_T}$MAKE" >&6 -+CC=$ac_cv_prog_CC -+if test -n "$CC"; then -+ echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6 - else - echo "$as_me:$LINENO: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -- test -n "$MAKE" && break --done -- --if test -z "$MAKE"; then -- ac_verc_fail=yes --else -- # Found it, now check the version. -- echo "$as_me:$LINENO: checking version of $MAKE" >&5 --echo $ECHO_N "checking version of $MAKE... $ECHO_C" >&6 -- ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` -- case $ac_prog_version in -- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.79* | 3.[89]*) -- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -- -- esac -- echo "$as_me:$LINENO: result: $ac_prog_version" >&5 --echo "${ECHO_T}$ac_prog_version" >&6 --fi --if test $ac_verc_fail = yes; then -- critic_missing="$critic_missing make" --fi -- -- -- --if test -n "$critic_missing"; then --{ { echo "$as_me:$LINENO: error: --*** These critical programs are missing or too old:$critic_missing --*** Check the INSTALL file for required versions." >&5 --echo "$as_me: error: --*** These critical programs are missing or too old:$critic_missing --*** Check the INSTALL file for required versions." >&2;} -- { (exit 1); exit 1; }; } - fi -- -- --for ac_prog in gnumsgfmt gmsgfmt msgfmt --do -- # Extract the first word of "$ac_prog", so it can be a program name with args. --set dummy $ac_prog; ac_word=$2 -+if test -z "$ac_cv_prog_CC"; then -+ ac_ct_CC=$CC -+ # Extract the first word of "cc", so it can be a program name with args. -+set dummy cc; ac_word=$2 - echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_MSGFMT+set}" = set; then -+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- if test -n "$MSGFMT"; then -- ac_cv_prog_MSGFMT="$MSGFMT" # Let the user override the test. -+ if test -n "$ac_ct_CC"; then -+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. - else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR - for as_dir in $PATH -@@ -2377,7 +2324,7 @@ - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_MSGFMT="$ac_prog" -+ ac_cv_prog_ac_ct_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -@@ -2386,51 +2333,33 @@ - - fi - fi --MSGFMT=$ac_cv_prog_MSGFMT --if test -n "$MSGFMT"; then -- echo "$as_me:$LINENO: result: $MSGFMT" >&5 --echo "${ECHO_T}$MSGFMT" >&6 -+ac_ct_CC=$ac_cv_prog_ac_ct_CC -+if test -n "$ac_ct_CC"; then -+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -+echo "${ECHO_T}$ac_ct_CC" >&6 - else - echo "$as_me:$LINENO: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -- test -n "$MSGFMT" && break --done -- --if test -z "$MSGFMT"; then -- ac_verc_fail=yes -+ CC=$ac_ct_CC - else -- # Found it, now check the version. -- echo "$as_me:$LINENO: checking version of $MSGFMT" >&5 --echo $ECHO_N "checking version of $MSGFMT... $ECHO_C" >&6 -- ac_prog_version=`$MSGFMT --version 2>&1 | sed -n 's/^.*GNU gettext.* \([0-9]*\.[0-9.]*\).*$/\1/p'` -- case $ac_prog_version in -- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 0.10.3[6-9]* | 0.10.[4-9][0-9]* | 0.1[1-9]* | 0.[2-9][0-9]* | [1-9].*) -- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -- -- esac -- echo "$as_me:$LINENO: result: $ac_prog_version" >&5 --echo "${ECHO_T}$ac_prog_version" >&6 --fi --if test $ac_verc_fail = yes; then -- MSGFMT=: aux_missing="$aux_missing msgfmt" -+ CC="$ac_cv_prog_CC" - fi - --for ac_prog in makeinfo --do -- # Extract the first word of "$ac_prog", so it can be a program name with args. --set dummy $ac_prog; ac_word=$2 -+fi -+if test -z "$CC"; then -+ # Extract the first word of "cc", so it can be a program name with args. -+set dummy cc; ac_word=$2 - echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_MAKEINFO+set}" = set; then -+if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- if test -n "$MAKEINFO"; then -- ac_cv_prog_MAKEINFO="$MAKEINFO" # Let the user override the test. -+ if test -n "$CC"; then -+ ac_cv_prog_CC="$CC" # Let the user override the test. - else -+ ac_prog_rejected=no - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR - for as_dir in $PATH - do -@@ -2438,205 +2367,30 @@ - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_MAKEINFO="$ac_prog" -+ if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then -+ ac_prog_rejected=yes -+ continue -+ fi -+ ac_cv_prog_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi - done - done - -+if test $ac_prog_rejected = yes; then -+ # We found a bogon in the path, so make sure we never use it. -+ set dummy $ac_cv_prog_CC -+ shift -+ if test $# != 0; then -+ # We chose a different compiler from the bogus one. -+ # However, it has the same basename, so the bogon will be chosen -+ # first if we set CC to just the basename; use the full file name. -+ shift -+ ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" -+ fi - fi - fi --MAKEINFO=$ac_cv_prog_MAKEINFO --if test -n "$MAKEINFO"; then -- echo "$as_me:$LINENO: result: $MAKEINFO" >&5 --echo "${ECHO_T}$MAKEINFO" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$MAKEINFO" && break --done -- --if test -z "$MAKEINFO"; then -- ac_verc_fail=yes --else -- # Found it, now check the version. -- echo "$as_me:$LINENO: checking version of $MAKEINFO" >&5 --echo $ECHO_N "checking version of $MAKEINFO... $ECHO_C" >&6 -- ac_prog_version=`$MAKEINFO --version 2>&1 | sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'` -- case $ac_prog_version in -- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 4.*) -- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -- -- esac -- echo "$as_me:$LINENO: result: $ac_prog_version" >&5 --echo "${ECHO_T}$ac_prog_version" >&6 --fi --if test $ac_verc_fail = yes; then -- MAKEINFO=: aux_missing="$aux_missing makeinfo" --fi -- --for ac_prog in sed --do -- # Extract the first word of "$ac_prog", so it can be a program name with args. --set dummy $ac_prog; ac_word=$2 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_SED+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$SED"; then -- ac_cv_prog_SED="$SED" # Let the user override the test. --else --as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_SED="$ac_prog" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- --fi --fi --SED=$ac_cv_prog_SED --if test -n "$SED"; then -- echo "$as_me:$LINENO: result: $SED" >&5 --echo "${ECHO_T}$SED" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$SED" && break --done -- --if test -z "$SED"; then -- ac_verc_fail=yes --else -- # Found it, now check the version. -- echo "$as_me:$LINENO: checking version of $SED" >&5 --echo $ECHO_N "checking version of $SED... $ECHO_C" >&6 -- ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed version \([0-9]*\.[0-9.]*\).*$/\1/p'` -- case $ac_prog_version in -- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.0[2-9]*|3.[1-9]*|[4-9]*) -- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -- -- esac -- echo "$as_me:$LINENO: result: $ac_prog_version" >&5 --echo "${ECHO_T}$ac_prog_version" >&6 --fi --if test $ac_verc_fail = yes; then -- SED=: aux_missing="$aux_missing sed" --fi -- -- --if test "x$with_cvs" != xyes; then -- for ac_prog in autoconf --do -- # Extract the first word of "$ac_prog", so it can be a program name with args. --set dummy $ac_prog; ac_word=$2 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_AUTOCONF+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$AUTOCONF"; then -- ac_cv_prog_AUTOCONF="$AUTOCONF" # Let the user override the test. --else --as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_AUTOCONF="$ac_prog" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- --fi --fi --AUTOCONF=$ac_cv_prog_AUTOCONF --if test -n "$AUTOCONF"; then -- echo "$as_me:$LINENO: result: $AUTOCONF" >&5 --echo "${ECHO_T}$AUTOCONF" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$AUTOCONF" && break --done --test -n "$AUTOCONF" || AUTOCONF="no" -- -- case "x$AUTOCONF" in -- xno|x|x:) AUTOCONF=no ;; -- *) -- echo "$as_me:$LINENO: checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works" >&5 --echo $ECHO_N "checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works... $ECHO_C" >&6 --if test "${libc_cv_autoconf_works+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if (cd $srcdir; $AUTOCONF $ACFLAGS configure.in > /dev/null 2>&1); then -- libc_cv_autoconf_works=yes -- else -- libc_cv_autoconf_works=no -- fi --fi --echo "$as_me:$LINENO: result: $libc_cv_autoconf_works" >&5 --echo "${ECHO_T}$libc_cv_autoconf_works" >&6 -- test $libc_cv_autoconf_works = yes || AUTOCONF=no -- ;; -- esac -- test "x$AUTOCONF" != xno || aux_missing="$aux_missing autoconf" --fi -- --ac_ext=c --ac_cpp='$CPP $CPPFLAGS' --ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' --ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' --ac_compiler_gnu=$ac_cv_c_compiler_gnu --if test -n "$ac_tool_prefix"; then -- # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. --set dummy ${ac_tool_prefix}gcc; ac_word=$2 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$CC"; then -- ac_cv_prog_CC="$CC" # Let the user override the test. --else --as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_CC="${ac_tool_prefix}gcc" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- --fi - fi - CC=$ac_cv_prog_CC - if test -n "$CC"; then -@@ -2648,52 +2402,12 @@ - fi - - fi --if test -z "$ac_cv_prog_CC"; then -- ac_ct_CC=$CC -- # Extract the first word of "gcc", so it can be a program name with args. --set dummy gcc; ac_word=$2 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$ac_ct_CC"; then -- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. --else --as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_ac_ct_CC="gcc" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- --fi --fi --ac_ct_CC=$ac_cv_prog_ac_ct_CC --if test -n "$ac_ct_CC"; then -- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 --echo "${ECHO_T}$ac_ct_CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- CC=$ac_ct_CC --else -- CC="$ac_cv_prog_CC" --fi -- - if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then -- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. --set dummy ${ac_tool_prefix}cc; ac_word=$2 -+ for ac_prog in cl -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 - echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_CC+set}" = set; then -@@ -2709,7 +2423,7 @@ - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_CC="${ac_tool_prefix}cc" -+ ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -@@ -2727,11 +2441,15 @@ - echo "${ECHO_T}no" >&6 - fi - -+ test -n "$CC" && break -+ done - fi --if test -z "$ac_cv_prog_CC"; then -+if test -z "$CC"; then - ac_ct_CC=$CC -- # Extract the first word of "cc", so it can be a program name with args. --set dummy cc; ac_word=$2 -+ for ac_prog in cl -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 - echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -@@ -2747,7 +2465,7 @@ - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_ac_ct_CC="cc" -+ ac_cv_prog_ac_ct_CC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -@@ -2764,150 +2482,9 @@ - echo "$as_me:$LINENO: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi -- -- CC=$ac_ct_CC --else -- CC="$ac_cv_prog_CC" --fi -- --fi --if test -z "$CC"; then -- # Extract the first word of "cc", so it can be a program name with args. --set dummy cc; ac_word=$2 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$CC"; then -- ac_cv_prog_CC="$CC" # Let the user override the test. --else -- ac_prog_rejected=no --as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then -- ac_prog_rejected=yes -- continue -- fi -- ac_cv_prog_CC="cc" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- --if test $ac_prog_rejected = yes; then -- # We found a bogon in the path, so make sure we never use it. -- set dummy $ac_cv_prog_CC -- shift -- if test $# != 0; then -- # We chose a different compiler from the bogus one. -- # However, it has the same basename, so the bogon will be chosen -- # first if we set CC to just the basename; use the full file name. -- shift -- ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" -- fi --fi --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- --fi --if test -z "$CC"; then -- if test -n "$ac_tool_prefix"; then -- for ac_prog in cl -- do -- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. --set dummy $ac_tool_prefix$ac_prog; ac_word=$2 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$CC"; then -- ac_cv_prog_CC="$CC" # Let the user override the test. --else --as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_CC="$ac_tool_prefix$ac_prog" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$CC" && break -- done --fi --if test -z "$CC"; then -- ac_ct_CC=$CC -- for ac_prog in cl --do -- # Extract the first word of "$ac_prog", so it can be a program name with args. --set dummy $ac_prog; ac_word=$2 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$ac_ct_CC"; then -- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. --else --as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_ac_ct_CC="$ac_prog" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- --fi --fi --ac_ct_CC=$ac_cv_prog_ac_ct_CC --if test -n "$ac_ct_CC"; then -- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 --echo "${ECHO_T}$ac_ct_CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$ac_ct_CC" && break --done -+ -+ test -n "$ac_ct_CC" && break -+done - - CC=$ac_ct_CC - fi -@@ -2915,10 +2492,8 @@ - fi - - --test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH --See \`config.log' for more details." >&5 --echo "$as_me: error: no acceptable C compiler found in \$PATH --See \`config.log' for more details." >&2;} -+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH" >&5 -+echo "$as_me: error: no acceptable C compiler found in \$PATH" >&2;} - { (exit 1); exit 1; }; } - - # Provide some information about the compiler. -@@ -2949,11 +2524,7 @@ - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - - int - main () -@@ -2978,12 +2549,9 @@ - done - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile --See \`config.log' for more details." >&5 --echo "$as_me: error: cannot compute suffix of object files: cannot compile --See \`config.log' for more details." >&2;} -+cat conftest.$ac_ext >&5 -+{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile" >&5 -+echo "$as_me: error: cannot compute suffix of object files: cannot compile" >&2;} - { (exit 1); exit 1; }; } - fi - -@@ -3000,11 +2568,7 @@ - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - - int - main () -@@ -3032,8 +2596,7 @@ - ac_compiler_gnu=yes - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - ac_compiler_gnu=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext -@@ -3053,11 +2616,7 @@ - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - - int - main () -@@ -3082,8 +2641,7 @@ - ac_cv_prog_cc_g=yes - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - ac_cv_prog_cc_g=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext -@@ -3114,11 +2672,7 @@ - ac_save_CC=$CC - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - #include - #include - #include -@@ -3181,8 +2735,7 @@ - break - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - fi - rm -f conftest.$ac_objext - done -@@ -3233,11 +2786,7 @@ - do - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - #include - $ac_declaration - int -@@ -3263,18 +2812,13 @@ - : - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - continue - fi - rm -f conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - $ac_declaration - int - main () -@@ -3299,8 +2843,7 @@ - break - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - fi - rm -f conftest.$ac_objext conftest.$ac_ext - done -@@ -3313,8 +2856,7 @@ - - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - fi - rm -f conftest.$ac_objext conftest.$ac_ext - ac_ext=c -@@ -3389,22 +2931,12 @@ - do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. -- # Prefer to if __STDC__ is defined, since -- # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ --#ifdef __STDC__ --# include --#else --# include --#endif -+#include "confdefs.h" -+#include - Syntax error - _ACEOF - if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 -@@ -3427,8 +2959,7 @@ - : - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+ cat conftest.$ac_ext >&5 - # Broken: fails on valid input. - continue - fi -@@ -3438,11 +2969,7 @@ - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - #include - _ACEOF - if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 -@@ -3466,8 +2993,7 @@ - continue - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+ cat conftest.$ac_ext >&5 - # Passes both tests. - ac_preproc_ok=: - break -@@ -3496,22 +3022,12 @@ - do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. -- # Prefer to if __STDC__ is defined, since -- # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ --#ifdef __STDC__ --# include --#else --# include --#endif -+#include "confdefs.h" -+#include - Syntax error - _ACEOF - if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 -@@ -3534,8 +3050,7 @@ - : - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+ cat conftest.$ac_ext >&5 - # Broken: fails on valid input. - continue - fi -@@ -3545,11 +3060,7 @@ - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - #include - _ACEOF - if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 -@@ -3573,8 +3084,7 @@ - continue - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+ cat conftest.$ac_ext >&5 - # Passes both tests. - ac_preproc_ok=: - break -@@ -3587,10 +3097,8 @@ - if $ac_preproc_ok; then - : - else -- { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check --See \`config.log' for more details." >&5 --echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check --See \`config.log' for more details." >&2;} -+ { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check" >&5 -+echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;} - { (exit 1); exit 1; }; } - fi - -@@ -3600,34 +3108,698 @@ - ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' - ac_compiler_gnu=$ac_cv_c_compiler_gnu - --# Was a --with-binutils option given? --if test -n "$path_binutils"; then -- # Make absolute; ensure a single trailing slash. -- path_binutils=`(cd $path_binutils; pwd) | sed 's%/*$%/%'` -- CC="$CC -B$path_binutils" -+# We need the C++ compiler only for testing. -+ac_ext=cc -+ac_cpp='$CXXCPP $CPPFLAGS' -+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -+if test -n "$ac_tool_prefix"; then -+ for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_CXX+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$CXX"; then -+ ac_cv_prog_CXX="$CXX" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+CXX=$ac_cv_prog_CXX -+if test -n "$CXX"; then -+ echo "$as_me:$LINENO: result: $CXX" >&5 -+echo "${ECHO_T}$CXX" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 - fi --AS=`$CC -print-prog-name=as` --LD=`$CC -print-prog-name=ld` --AR=`$CC -print-prog-name=ar` - --OBJDUMP=`$CC -print-prog-name=objdump` -+ test -n "$CXX" && break -+ done -+fi -+if test -z "$CXX"; then -+ ac_ct_CXX=$CXX -+ for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_CXX"; then -+ ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_ac_ct_CXX="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done - -+fi -+fi -+ac_ct_CXX=$ac_cv_prog_ac_ct_CXX -+if test -n "$ac_ct_CXX"; then -+ echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 -+echo "${ECHO_T}$ac_ct_CXX" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi - --# ranlib has to be treated a bit differently since it might not exist at all. --ac_ranlib=`$CC -print-prog-name=ranlib` --if test "x$ac_ranlib" = xranlib; then --# This extra check has to happen since gcc simply echos the parameter in --# case it cannot find the value in its own directories. --if test -n "$ac_tool_prefix"; then -- # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. --set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -+ test -n "$ac_ct_CXX" && break -+done -+test -n "$ac_ct_CXX" || ac_ct_CXX="g++" -+ -+ CXX=$ac_ct_CXX -+fi -+ -+ -+# Provide some information about the compiler. -+echo "$as_me:$LINENO:" \ -+ "checking for C++ compiler version" >&5 -+ac_compiler=`set X $ac_compile; echo $2` -+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 -+ (eval $ac_compiler --version &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 -+ (eval $ac_compiler -v &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 -+ (eval $ac_compiler -V &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+ -+echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 -+echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6 -+if test "${ac_cv_cxx_compiler_gnu+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+#include "confdefs.h" -+ -+int -+main () -+{ -+#ifndef __GNUC__ -+ choke me -+#endif -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_compiler_gnu=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_compiler_gnu=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ac_cv_cxx_compiler_gnu=$ac_compiler_gnu -+ -+fi -+echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 -+echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6 -+GXX=`test $ac_compiler_gnu = yes && echo yes` -+ac_test_CXXFLAGS=${CXXFLAGS+set} -+ac_save_CXXFLAGS=$CXXFLAGS -+CXXFLAGS="-g" -+echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 -+echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6 -+if test "${ac_cv_prog_cxx_g+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+#include "confdefs.h" -+ -+int -+main () -+{ -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_prog_cxx_g=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_prog_cxx_g=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 -+echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6 -+if test "$ac_test_CXXFLAGS" = set; then -+ CXXFLAGS=$ac_save_CXXFLAGS -+elif test $ac_cv_prog_cxx_g = yes; then -+ if test "$GXX" = yes; then -+ CXXFLAGS="-g -O2" -+ else -+ CXXFLAGS="-g" -+ fi -+else -+ if test "$GXX" = yes; then -+ CXXFLAGS="-O2" -+ else -+ CXXFLAGS= -+ fi -+fi -+for ac_declaration in \ -+ ''\ -+ '#include ' \ -+ 'extern "C" void std::exit (int) throw (); using std::exit;' \ -+ 'extern "C" void std::exit (int); using std::exit;' \ -+ 'extern "C" void exit (int) throw ();' \ -+ 'extern "C" void exit (int);' \ -+ 'void exit (int);' -+do -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+#include "confdefs.h" -+#include -+$ac_declaration -+int -+main () -+{ -+exit (42); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ : -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+continue -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ cat >conftest.$ac_ext <<_ACEOF -+#line $LINENO "configure" -+#include "confdefs.h" -+$ac_declaration -+int -+main () -+{ -+exit (42); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ break -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+done -+rm -f conftest* -+if test -n "$ac_declaration"; then -+ echo '#ifdef __cplusplus' >>confdefs.h -+ echo $ac_declaration >>confdefs.h -+ echo '#endif' >>confdefs.h -+fi -+ -+ac_ext=c -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_c_compiler_gnu -+ -+# Was a --with-binutils option given? -+if test -n "$path_binutils"; then -+ # Make absolute; ensure a single trailing slash. -+ path_binutils=`(cd $path_binutils; pwd) | sed 's%/*$%/%'` -+ CC="$CC -B$path_binutils" -+fi -+AS=`$CC -print-prog-name=as` -+LD=`$CC -print-prog-name=ld` -+AR=`$CC -print-prog-name=ar` -+ -+OBJDUMP=`$CC -print-prog-name=objdump` -+ -+ -+# ranlib has to be treated a bit differently since it might not exist at all. -+ac_ranlib=`$CC -print-prog-name=ranlib` -+if test "x$ac_ranlib" = xranlib; then -+# This extra check has to happen since gcc simply echos the parameter in -+# case it cannot find the value in its own directories. -+if test -n "$ac_tool_prefix"; then -+ # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -+set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_RANLIB+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$RANLIB"; then -+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+RANLIB=$ac_cv_prog_RANLIB -+if test -n "$RANLIB"; then -+ echo "$as_me:$LINENO: result: $RANLIB" >&5 -+echo "${ECHO_T}$RANLIB" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+fi -+if test -z "$ac_cv_prog_RANLIB"; then -+ ac_ct_RANLIB=$RANLIB -+ # Extract the first word of "ranlib", so it can be a program name with args. -+set dummy ranlib; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_RANLIB"; then -+ ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_ac_ct_RANLIB="ranlib" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" -+fi -+fi -+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -+if test -n "$ac_ct_RANLIB"; then -+ echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 -+echo "${ECHO_T}$ac_ct_RANLIB" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ RANLIB=$ac_ct_RANLIB -+else -+ RANLIB="$ac_cv_prog_RANLIB" -+fi -+ -+else -+ RANLIB=$ac_ranlib -+fi -+ -+ -+# Determine whether we are using GNU binutils. -+echo "$as_me:$LINENO: checking whether $AS is GNU as" >&5 -+echo $ECHO_N "checking whether $AS is GNU as... $ECHO_C" >&6 -+if test "${libc_cv_prog_as_gnu+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ # Most GNU programs take a -v and spit out some text including -+# the word 'GNU'. Some try to read stdin, so give them /dev/null. -+if $AS -o conftest -v &1 | grep GNU > /dev/null 2>&1; then -+ libc_cv_prog_as_gnu=yes -+else -+ libc_cv_prog_as_gnu=no -+fi -+rm -fr contest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_prog_as_gnu" >&5 -+echo "${ECHO_T}$libc_cv_prog_as_gnu" >&6 -+rm -f a.out -+gnu_as=$libc_cv_prog_as_gnu -+ -+echo "$as_me:$LINENO: checking whether $LD is GNU ld" >&5 -+echo $ECHO_N "checking whether $LD is GNU ld... $ECHO_C" >&6 -+if test "${libc_cv_prog_ld_gnu+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ # Most GNU programs take a -v and spit out some text including -+# the word 'GNU'. Some try to read stdin, so give them /dev/null. -+if $LD -o conftest -v &1 | grep GNU > /dev/null 2>&1; then -+ libc_cv_prog_ld_gnu=yes -+else -+ libc_cv_prog_ld_gnu=no -+fi -+rm -fr contest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_prog_ld_gnu" >&5 -+echo "${ECHO_T}$libc_cv_prog_ld_gnu" >&6 -+gnu_ld=$libc_cv_prog_ld_gnu -+ -+ -+# Accept binutils 2.13 or newer. -+for ac_prog in $AS -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_AS+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$AS"; then -+ ac_cv_prog_AS="$AS" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_AS="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+AS=$ac_cv_prog_AS -+if test -n "$AS"; then -+ echo "$as_me:$LINENO: result: $AS" >&5 -+echo "${ECHO_T}$AS" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$AS" && break -+done -+ -+if test -z "$AS"; then -+ ac_verc_fail=yes -+else -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $AS" >&5 -+echo $ECHO_N "checking version of $AS... $ECHO_C" >&6 -+ ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 2.1[3-9]*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 -+fi -+if test $ac_verc_fail = yes; then -+ AS=: critic_missing="$critic_missing as" -+fi -+ -+for ac_prog in $LD -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_LD+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$LD"; then -+ ac_cv_prog_LD="$LD" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_LD="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+LD=$ac_cv_prog_LD -+if test -n "$LD"; then -+ echo "$as_me:$LINENO: result: $LD" >&5 -+echo "${ECHO_T}$LD" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$LD" && break -+done -+ -+if test -z "$LD"; then -+ ac_verc_fail=yes -+else -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $LD" >&5 -+echo $ECHO_N "checking version of $LD... $ECHO_C" >&6 -+ ac_prog_version=`$LD --version 2>&1 | sed -n 's/^.*GNU ld.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 2.1[3-9]*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 -+fi -+if test $ac_verc_fail = yes; then -+ LD=: critic_missing="$critic_missing ld" -+fi -+ -+ -+# We need the physical current working directory. We cannot use the -+# "pwd -P" shell builtin since that's not portable. Instead we try to -+# find a pwd binary. Note that assigning to the PWD environment -+# variable might have some interesting side effects, so we don't do -+# that. -+# Extract the first word of "pwd", so it can be a program name with args. -+set dummy pwd; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_path_PWD_P+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ case $PWD_P in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_PWD_P="$PWD_P" # Let the user override the test with a path. -+ ;; -+ *) -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_path_PWD_P="$as_dir/$ac_word$ac_exec_ext" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_path_PWD_P" && ac_cv_path_PWD_P="no" -+ ;; -+esac -+fi -+PWD_P=$ac_cv_path_PWD_P -+ -+if test -n "$PWD_P"; then -+ echo "$as_me:$LINENO: result: $PWD_P" >&5 -+echo "${ECHO_T}$PWD_P" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+if test "$PWD_P" = no; then -+ { { echo "$as_me:$LINENO: error: *** A pwd binary could not be found." >&5 -+echo "$as_me: error: *** A pwd binary could not be found." >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+# These programs are version sensitive. -+ -+for ac_prog in ${ac_tool_prefix}gcc ${ac_tool_prefix}cc -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$CC"; then -+ ac_cv_prog_CC="$CC" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_CC="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+CC=$ac_cv_prog_CC -+if test -n "$CC"; then -+ echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$CC" && break -+done -+ -+if test -z "$CC"; then -+ ac_verc_fail=yes -+else -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $CC" >&5 -+echo $ECHO_N "checking version of $CC... $ECHO_C" >&6 -+ ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 3.[2-9]*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 -+fi -+if test $ac_verc_fail = yes; then -+ critic_missing="$critic_missing gcc" -+fi -+ -+for ac_prog in gnumake gmake make -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 - echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_RANLIB+set}" = set; then -+if test "${ac_cv_prog_MAKE+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- if test -n "$RANLIB"; then -- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -+ if test -n "$MAKE"; then -+ ac_cv_prog_MAKE="$MAKE" # Let the user override the test. - else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR - for as_dir in $PATH -@@ -3636,7 +3808,7 @@ - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" -+ ac_cv_prog_MAKE="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -@@ -3645,27 +3817,51 @@ - - fi - fi --RANLIB=$ac_cv_prog_RANLIB --if test -n "$RANLIB"; then -- echo "$as_me:$LINENO: result: $RANLIB" >&5 --echo "${ECHO_T}$RANLIB" >&6 -+MAKE=$ac_cv_prog_MAKE -+if test -n "$MAKE"; then -+ echo "$as_me:$LINENO: result: $MAKE" >&5 -+echo "${ECHO_T}$MAKE" >&6 - else - echo "$as_me:$LINENO: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -+ test -n "$MAKE" && break -+done -+ -+if test -z "$MAKE"; then -+ ac_verc_fail=yes -+else -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $MAKE" >&5 -+echo $ECHO_N "checking version of $MAKE... $ECHO_C" >&6 -+ ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 3.79* | 3.[89]*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 - fi --if test -z "$ac_cv_prog_RANLIB"; then -- ac_ct_RANLIB=$RANLIB -- # Extract the first word of "ranlib", so it can be a program name with args. --set dummy ranlib; ac_word=$2 -+if test $ac_verc_fail = yes; then -+ critic_missing="$critic_missing make" -+fi -+ -+ -+for ac_prog in gnumsgfmt gmsgfmt msgfmt -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 - echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then -+if test "${ac_cv_prog_MSGFMT+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- if test -n "$ac_ct_RANLIB"; then -- ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -+ if test -n "$MSGFMT"; then -+ ac_cv_prog_MSGFMT="$MSGFMT" # Let the user override the test. - else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR - for as_dir in $PATH -@@ -3674,86 +3870,59 @@ - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_ac_ct_RANLIB="ranlib" -+ ac_cv_prog_MSGFMT="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi - done - done - -- test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" - fi - fi --ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB --if test -n "$ac_ct_RANLIB"; then -- echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 --echo "${ECHO_T}$ac_ct_RANLIB" >&6 -+MSGFMT=$ac_cv_prog_MSGFMT -+if test -n "$MSGFMT"; then -+ echo "$as_me:$LINENO: result: $MSGFMT" >&5 -+echo "${ECHO_T}$MSGFMT" >&6 - else - echo "$as_me:$LINENO: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -- RANLIB=$ac_ct_RANLIB --else -- RANLIB="$ac_cv_prog_RANLIB" --fi -- --else -- RANLIB=$ac_ranlib --fi -- -+ test -n "$MSGFMT" && break -+done - --# Determine whether we are using GNU binutils. --echo "$as_me:$LINENO: checking whether $AS is GNU as" >&5 --echo $ECHO_N "checking whether $AS is GNU as... $ECHO_C" >&6 --if test "${libc_cv_prog_as_gnu+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- # Most GNU programs take a -v and spit out some text including --# the word 'GNU'. Some try to read stdin, so give them /dev/null. --if $AS -o conftest -v &1 | grep GNU > /dev/null 2>&1; then -- libc_cv_prog_as_gnu=yes -+if test -z "$MSGFMT"; then -+ ac_verc_fail=yes - else -- libc_cv_prog_as_gnu=no --fi --rm -fr contest* --fi --echo "$as_me:$LINENO: result: $libc_cv_prog_as_gnu" >&5 --echo "${ECHO_T}$libc_cv_prog_as_gnu" >&6 --rm -f a.out --gnu_as=$libc_cv_prog_as_gnu -+ # Found it, now check the version. -+ echo "$as_me:$LINENO: checking version of $MSGFMT" >&5 -+echo $ECHO_N "checking version of $MSGFMT... $ECHO_C" >&6 -+ ac_prog_version=`$MSGFMT --version 2>&1 | sed -n 's/^.*GNU gettext.* \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 0.10.3[6-9]* | 0.10.[4-9][0-9]* | 0.1[1-9]* | 0.[2-9][0-9]* | [1-9].*) -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - --echo "$as_me:$LINENO: checking whether $LD is GNU ld" >&5 --echo $ECHO_N "checking whether $LD is GNU ld... $ECHO_C" >&6 --if test "${libc_cv_prog_ld_gnu+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- # Most GNU programs take a -v and spit out some text including --# the word 'GNU'. Some try to read stdin, so give them /dev/null. --if $LD -o conftest -v &1 | grep GNU > /dev/null 2>&1; then -- libc_cv_prog_ld_gnu=yes --else -- libc_cv_prog_ld_gnu=no -+ esac -+ echo "$as_me:$LINENO: result: $ac_prog_version" >&5 -+echo "${ECHO_T}$ac_prog_version" >&6 - fi --rm -fr contest* -+if test $ac_verc_fail = yes; then -+ MSGFMT=: aux_missing="$aux_missing msgfmt" - fi --echo "$as_me:$LINENO: result: $libc_cv_prog_ld_gnu" >&5 --echo "${ECHO_T}$libc_cv_prog_ld_gnu" >&6 --gnu_ld=$libc_cv_prog_ld_gnu - -- --# Accept binutils 2.13 or newer. --for ac_prog in $AS -+for ac_prog in makeinfo - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 - echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_AS+set}" = set; then -+if test "${ac_cv_prog_MAKEINFO+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- if test -n "$AS"; then -- ac_cv_prog_AS="$AS" # Let the user override the test. -+ if test -n "$MAKEINFO"; then -+ ac_cv_prog_MAKEINFO="$MAKEINFO" # Let the user override the test. - else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR - for as_dir in $PATH -@@ -3762,7 +3931,7 @@ - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_AS="$ac_prog" -+ ac_cv_prog_MAKEINFO="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -@@ -3771,28 +3940,28 @@ - - fi - fi --AS=$ac_cv_prog_AS --if test -n "$AS"; then -- echo "$as_me:$LINENO: result: $AS" >&5 --echo "${ECHO_T}$AS" >&6 -+MAKEINFO=$ac_cv_prog_MAKEINFO -+if test -n "$MAKEINFO"; then -+ echo "$as_me:$LINENO: result: $MAKEINFO" >&5 -+echo "${ECHO_T}$MAKEINFO" >&6 - else - echo "$as_me:$LINENO: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -- test -n "$AS" && break -+ test -n "$MAKEINFO" && break - done - --if test -z "$AS"; then -+if test -z "$MAKEINFO"; then - ac_verc_fail=yes - else - # Found it, now check the version. -- echo "$as_me:$LINENO: checking version of $AS" >&5 --echo $ECHO_N "checking version of $AS... $ECHO_C" >&6 -- ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ echo "$as_me:$LINENO: checking version of $MAKEINFO" >&5 -+echo $ECHO_N "checking version of $MAKEINFO... $ECHO_C" >&6 -+ ac_prog_version=`$MAKEINFO --version 2>&1 | sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 2.1[3-9]*) -+ 4.*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -3801,20 +3970,20 @@ - echo "${ECHO_T}$ac_prog_version" >&6 - fi - if test $ac_verc_fail = yes; then -- AS=: critic_missing=t -+ MAKEINFO=: aux_missing="$aux_missing makeinfo" - fi - --for ac_prog in $LD -+for ac_prog in sed - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 - echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_LD+set}" = set; then -+if test "${ac_cv_prog_SED+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- if test -n "$LD"; then -- ac_cv_prog_LD="$LD" # Let the user override the test. -+ if test -n "$SED"; then -+ ac_cv_prog_SED="$SED" # Let the user override the test. - else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR - for as_dir in $PATH -@@ -3823,7 +3992,7 @@ - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_LD="$ac_prog" -+ ac_cv_prog_SED="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -@@ -3832,28 +4001,28 @@ - - fi - fi --LD=$ac_cv_prog_LD --if test -n "$LD"; then -- echo "$as_me:$LINENO: result: $LD" >&5 --echo "${ECHO_T}$LD" >&6 -+SED=$ac_cv_prog_SED -+if test -n "$SED"; then -+ echo "$as_me:$LINENO: result: $SED" >&5 -+echo "${ECHO_T}$SED" >&6 - else - echo "$as_me:$LINENO: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -- test -n "$LD" && break -+ test -n "$SED" && break - done - --if test -z "$LD"; then -+if test -z "$SED"; then - ac_verc_fail=yes - else - # Found it, now check the version. -- echo "$as_me:$LINENO: checking version of $LD" >&5 --echo $ECHO_N "checking version of $LD... $ECHO_C" >&6 -- ac_prog_version=`$LD --version 2>&1 | sed -n 's/^.*GNU ld.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'` -+ echo "$as_me:$LINENO: checking version of $SED" >&5 -+echo $ECHO_N "checking version of $SED... $ECHO_C" >&6 -+ ac_prog_version=`$SED --version 2>&1 | sed -n 's/^.*GNU sed version \([0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 2.1[3-9]*) -+ 3.0[2-9]*|3.[1-9]*|[4-9]*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -3862,10 +4031,83 @@ - echo "${ECHO_T}$ac_prog_version" >&6 - fi - if test $ac_verc_fail = yes; then -- LD=: critic_missing=t -+ SED=: aux_missing="$aux_missing sed" - fi - - -+for ac_prog in autoconf -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_AUTOCONF+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$AUTOCONF"; then -+ ac_cv_prog_AUTOCONF="$AUTOCONF" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_AUTOCONF="$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+fi -+fi -+AUTOCONF=$ac_cv_prog_AUTOCONF -+if test -n "$AUTOCONF"; then -+ echo "$as_me:$LINENO: result: $AUTOCONF" >&5 -+echo "${ECHO_T}$AUTOCONF" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$AUTOCONF" && break -+done -+test -n "$AUTOCONF" || AUTOCONF="no" -+ -+case "x$AUTOCONF" in -+xno|x|x:) AUTOCONF=no ;; -+*) -+ echo "$as_me:$LINENO: checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works" >&5 -+echo $ECHO_N "checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works... $ECHO_C" >&6 -+if test "${libc_cv_autoconf_works+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if (cd $srcdir; $AUTOCONF $ACFLAGS configure.in > /dev/null 2>&1); then -+ libc_cv_autoconf_works=yes -+ else -+ libc_cv_autoconf_works=no -+ fi -+fi -+echo "$as_me:$LINENO: result: $libc_cv_autoconf_works" >&5 -+echo "${ECHO_T}$libc_cv_autoconf_works" >&6 -+ test $libc_cv_autoconf_works = yes || AUTOCONF=no -+ ;; -+esac -+if test "x$with_cvs" = xyes && test "x$AUTOCONF" = xno; then -+ # If --without-cvs they probably won't change configure.in, so no complaints. -+ aux_missing="$aux_missing autoconf" -+fi -+ -+test -n "$critic_missing" && { { echo "$as_me:$LINENO: error: -+*** These critical programs are missing or too old:$critic_missing -+*** Check the INSTALL file for required versions." >&5 -+echo "$as_me: error: -+*** These critical programs are missing or too old:$critic_missing -+*** Check the INSTALL file for required versions." >&2;} -+ { (exit 1); exit 1; }; } -+ - test -n "$aux_missing" && { echo "$as_me:$LINENO: WARNING: - *** These auxiliary programs are missing or incompatible versions:$aux_missing - *** some features will be disabled. -@@ -3899,7 +4141,7 @@ - char b; - void c(void) {} - EOF --$CC $CFLAGS -c conftest.c -+$CC $CFLAGS $CPPFLAGS -c conftest.c - $AR cr conftest.a conftest.o - cp conftest.a conftest2.a - $RANLIB conftest.a -@@ -4298,11 +4540,7 @@ - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - #define __need_size_t - #define __need_wchar_t - #include -@@ -4335,8 +4573,7 @@ - libc_cv_friendly_stddef=yes - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - libc_cv_friendly_stddef=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext -@@ -4357,7 +4594,12 @@ - #include "confdefs.h" - /* Nothing whatsoever. */ - EOF --if ${CC-cc} $CFLAGS -c conftest.S 2>/dev/null; then -+if { ac_try='${CC-cc} $CPPFLAGS $ASFLAGS -c conftest.S 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - libc_cv_need_minus_P=no - else - libc_cv_need_minus_P=yes -@@ -4380,7 +4622,12 @@ - .text - EOF - libc_cv_dot_text= --if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then -+if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - libc_cv_dot_text=.text - fi - rm -f conftest* -@@ -4406,7 +4653,12 @@ - ${ac_globl} foo - foo: - EOF -- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then -+ if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - libc_cv_asm_global_directive=${ac_globl} - fi - rm -f conftest* -@@ -4441,9 +4693,10 @@ - # (but it doesn't work), so we must do a linking check to be sure. - cat > conftest1.c <<\EOF - extern int glibc_conftest_frobozz; --main () { printf ("%d\n", glibc_conftest_frobozz); } -+void _start() { glibc_conftest_frobozz = 1; } - EOF - if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \ -+ -nostartfiles -nostdlib \ - -o conftest conftest.s conftest1.c 1>&5 2>&5; then - libc_cv_asm_set_directive=yes - else -@@ -4475,7 +4728,12 @@ - foo: - .byte 1 - EOF -- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then -+ if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - libc_cv_asm_type_prefix=${ac_try_prefix} - fi - rm -f conftest* -@@ -4511,7 +4769,7 @@ - _sym: - .symver _sym,sym@VERS - EOF --if ${CC-cc} -c $CFLAGS $CPPFLAGS conftest.s 1>&5 2>&5; then -+if ${CC-cc} -c $ASFLAGS conftest.s 1>&5 2>&5; then - libc_cv_asm_symver_directive=yes - else - libc_cv_asm_symver_directive=no -@@ -4540,10 +4798,11 @@ - global: sym; - } VERS_1; - EOF -- if ${CC-cc} -c $CFLAGS $CPPFLAGS conftest.s 1>&5 2>&5; then -- if { ac_try='${CC-cc} $CFLAGS -shared -o conftest.so conftest.o -- -nostartfiles -nostdlib -- -Wl,--version-script,conftest.map -+ if ${CC-cc} -c $ASFLAGS conftest.s 1>&5 2>&5; then -+ if { ac_try='${CC-cc} $CFLAGS $LDFLAGS -shared -+ -o conftest.so conftest.o -+ -nostartfiles -nostdlib -+ -Wl,--version-script,conftest.map - 1>&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 -@@ -4596,7 +4855,7 @@ - .section foo_section - .previous - EOF -- if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5' -+ if { ac_try='${CC-cc} -c $ASFLAGS conftest.s 1>&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -@@ -4625,7 +4884,7 @@ - .pushsection foo_section - .popsection - EOF -- if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5' -+ if { ac_try='${CC-cc} -c $ASFLAGS conftest.s 1>&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -@@ -4657,7 +4916,7 @@ - .hidden bar - bar: - EOF -- if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5' -+ if { ac_try='${CC-cc} -c $ASFLAGS conftest.s 1>&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -@@ -4692,7 +4951,12 @@ - int bar __attribute__ ((visibility ("protected"))) = 1; - EOF - libc_cv_visibility_attribute=no -- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -+ if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - if grep '\.hidden.*foo' conftest.s >/dev/null; then - if grep '\.protected.*bar' conftest.s >/dev/null; then - libc_cv_visibility_attribute=yes -@@ -4724,7 +4988,12 @@ - int bar (int x) { return x; } - EOF - libc_cv_broken_visibility_attribute=yes -- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -+ if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - if grep '\.hidden[ _]foo' conftest.s >/dev/null; then - libc_cv_broken_visibility_attribute=no - fi -@@ -4756,7 +5025,12 @@ - int dfoo = 1; - EOF - libc_cv_broken_alias_attribute=yes -- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -+ if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - if grep 'xyzzy' conftest.s >/dev/null && - grep 'abccb' conftest.s >/dev/null; then - libc_cv_broken_alias_attribute=no -@@ -4782,7 +5056,7 @@ - else - echo "int i;" > conftest.c - libc_cv_have_sdata_section=no -- if ${CC-cc} -shared -Wl,--verbose conftest.c -o conftest.so 2>&1 \ -+ if ${CC-cc} $LDFLAGS -shared -Wl,--verbose conftest.c -o conftest.so 2>&1 \ - | grep '\.sdata' >/dev/null; then - libc_cv_have_sdata_section=yes - fi -@@ -4810,7 +5084,7 @@ - int foo (void) { return 1; } - int (*fp) (void) __attribute__ ((section (".init_array"))) = foo; - EOF -- if { ac_try='${CC-cc} -o conftest conftest.c -+ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -o conftest conftest.c - -static -nostartfiles -nostdlib 1>&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 -@@ -4846,7 +5120,8 @@ - cat > conftest.c <&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -@@ -4873,7 +5148,8 @@ - cat > conftest.c <&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -@@ -4900,7 +5176,8 @@ - cat > conftest.c <&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -@@ -4927,7 +5204,9 @@ - cat > conftest.c <&5 - (eval $ac_try) 2>&5 - ac_status=$? -@@ -4944,6 +5223,43 @@ - echo "${ECHO_T}$libc_cv_Bgroup" >&6 - - -+ ASFLAGS_config= -+ echo "$as_me:$LINENO: checking whether --noexecstack is desirable for .S files" >&5 -+echo $ECHO_N "checking whether --noexecstack is desirable for .S files... $ECHO_C" >&6 -+if test "${libc_cv_as_noexecstack+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } \ -+ && grep -q .note.GNU-stack conftest.s \ -+ && { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -Wa,--noexecstack -+ -c -o conftest.o conftest.s 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } -+ then -+ libc_cv_as_noexecstack=yes -+ else -+ libc_cv_as_noexecstack=no -+ fi -+ rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_as_noexecstack" >&5 -+echo "${ECHO_T}$libc_cv_as_noexecstack" >&6 -+ if test $libc_cv_as_noexecstack = yes; then -+ ASFLAGS_config="$ASFLAGS_config -Wa,--noexecstack" -+ fi -+ - echo "$as_me:$LINENO: checking for -z combreloc" >&5 - echo $ECHO_N "checking for -z combreloc... $ECHO_C" >&6 - if test "${libc_cv_z_combreloc+set}" = set; then -@@ -4954,7 +5270,8 @@ - extern int mumble; - int foo (void) { return bar (mumble); } - EOF -- if { ac_try='${CC-cc} -shared -o conftest.so conftest.c -+ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -+ -shared -o conftest.so conftest.c - -nostdlib -nostartfiles - -Wl,-z,combreloc 1>&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -@@ -4992,11 +5309,7 @@ - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - - int - main () -@@ -5023,8 +5336,7 @@ - libc_cv_have_initfini=yes - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - libc_cv_have_initfini=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext -@@ -5084,11 +5396,7 @@ - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - asm ("_glibc_foobar:"); - int - main () -@@ -5113,8 +5421,7 @@ - libc_cv_asm_underscores=yes - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - libc_cv_asm_underscores=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -@@ -5128,7 +5435,7 @@ - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat > conftest.$ac_ext </dev/null; then -+if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - libc_cv_asm_weak_directive=yes - else - libc_cv_asm_weak_directive=no -@@ -5205,7 +5517,12 @@ - ${libc_cv_asm_global_directive} baz - baz: - EOF -- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then -+ if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - libc_cv_asm_weakext_directive=yes - else - libc_cv_asm_weakext_directive=no -@@ -5246,7 +5563,7 @@ - cat > conftest.s <&5 - (eval $ac_try) 2>&5 - ac_status=$? -@@ -5272,6 +5589,92 @@ - ;; - esac - -+echo "$as_me:$LINENO: checking whether CFI directives are supported" >&5 -+echo $ECHO_N "checking whether CFI directives are supported... $ECHO_C" >&6 -+if test "${libc_cv_asm_cfi_directives+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.s <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_asm_cfi_directives=yes -+else -+ libc_cv_asm_cfi_directives=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_asm_cfi_directives" >&5 -+echo "${ECHO_T}$libc_cv_asm_cfi_directives" >&6 -+if test $libc_cv_asm_cfi_directives = yes; then -+ cat >>confdefs.h <<\_ACEOF -+#define HAVE_ASM_CFI_DIRECTIVES 1 -+_ACEOF -+ -+fi -+ -+echo "$as_me:$LINENO: checking if -g produces usable source locations for assembler-with-cpp" >&5 -+echo $ECHO_N "checking if -g produces usable source locations for assembler-with-cpp... $ECHO_C" >&6 -+if test "${libc_cv_cpp_asm_debuginfo+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.S <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } && -+ ac_pattern='conftest\.S' -+ { ac_try='readelf --debug-dump=line conftest.o | -+ grep $ac_pattern 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ libc_cv_cpp_asm_debuginfo=yes -+else -+ libc_cv_cpp_asm_debuginfo=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_cpp_asm_debuginfo" >&5 -+echo "${ECHO_T}$libc_cv_cpp_asm_debuginfo" >&6 -+if test $libc_cv_cpp_asm_debuginfo = yes; then -+ cat >>confdefs.h <<\_ACEOF -+#define HAVE_CPP_ASM_DEBUGINFO 1 -+_ACEOF -+ -+fi -+ - echo "$as_me:$LINENO: checking for ld --no-whole-archive" >&5 - echo $ECHO_N "checking for ld --no-whole-archive... $ECHO_C" >&6 - if test "${libc_cv_ld_no_whole_archive+set}" = set; then -@@ -5282,7 +5685,7 @@ - int __eh_pc; - __throw () {} - EOF --if { ac_try='${CC-cc} $CFLAGS -+if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS - -nostdlib -nostartfiles -Wl,--no-whole-archive - -o conftest conftest.c 1>&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -@@ -5312,7 +5715,7 @@ - int __eh_pc; - __throw () {} - EOF --if { ac_try='${CC-cc} $CFLAGS -+if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS - -nostdlib -nostartfiles -fexceptions - -o conftest conftest.c 1>&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -@@ -5342,11 +5745,7 @@ - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - int tester(int x) { asm ("" : : : "cc"); return x & 123; } - int - main () -@@ -5371,8 +5770,7 @@ - libc_cv_c_asmcr0_bug='no' - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - libc_cv_c_asmcr0_bug='yes' - fi - rm -f conftest.$ac_objext conftest.$ac_ext -@@ -5393,7 +5791,7 @@ - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat > conftest.c <&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- libc_cv_gcc_dwarf2_unwind_info=static --else -- libc_cv_gcc_dwarf2_unwind_info=no --fi --# Some platforms' specs put -lgcc first. The second one doesn't hurt. --libc_unwind_check="${CC-cc} $CFLAGS -DCHECK__register_frame_info \ -- -nostdlib -nostartfiles -o conftest conftest.c \ -- -lgcc -lgcc_eh -lgcc" --if { ac_try='$libc_unwind_check >&5' -+ (exit $ac_status); }; } || -+ { ac_try='$libc_unwind_check -lgcc_eh -lgcc >&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -+ (exit $ac_status); }; } -+then - if $libc_unwind_check -v 2>&1 >/dev/null \ - | grep -q -- --eh-frame-hdr; then - libc_cv_gcc_dwarf2_unwind_info=no_registry_needed -@@ -5451,8 +5845,8 @@ - libc_cv_gcc_dwarf2_unwind_info=no - fi - if test $libc_cv_gcc_dwarf2_unwind_info = no; then -- if { ac_try='${CC-cc} $CFLAGS -DCHECK__register_frame -- -nostdlib -nostartfiles -+ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -DCHECK__register_frame -+ $LDFLAGS -nostdlib -nostartfiles - -o conftest conftest.c -lgcc >&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 -@@ -5493,14 +5887,14 @@ - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat > conftest.c <&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 -@@ -5555,13 +5949,47 @@ - - fi - -+echo "$as_me:$LINENO: checking for redirection of built-in functions" >&5 -+echo $ECHO_N "checking for redirection of built-in functions... $ECHO_C" >&6 -+if test "${libc_cv_gcc_builtin_redirection+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat > conftest.c <<\EOF -+extern char *strstr (const char *, const char *) __asm ("my_strstr"); -+char *foo (const char *a, const char *b) -+{ -+ return __builtin_strstr (a, b); -+} -+EOF -+if { ac_try='${CC-cc} -O3 -S conftest.c -o - | fgrep "my_strstr" > /dev/null' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; -+then -+ libc_cv_gcc_builtin_redirection=yes -+else -+ libc_cv_gcc_builtin_redirection=no -+fi -+rm -f conftest* -+fi -+echo "$as_me:$LINENO: result: $libc_cv_gcc_builtin_redirection" >&5 -+echo "${ECHO_T}$libc_cv_gcc_builtin_redirection" >&6 -+if test "$libc_cv_gcc_builtin_redirection" = yes ; then -+ cat >>confdefs.h <<\_ACEOF -+#define HAVE_BUILTIN_REDIRECTION 1 -+_ACEOF -+ -+fi -+ - echo "$as_me:$LINENO: checking for local label subtraction" >&5 - echo $ECHO_N "checking for local label subtraction... $ECHO_C" >&6 - if test "${libc_cv_gcc_subtract_local_labels+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat > conftest.c <&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 -@@ -5604,7 +6032,7 @@ - cat > conftest.c <<\EOF - __thread int a = 42; - EOF -- if { ac_try='${CC-cc} $CFLAGS -c conftest.c >&5' -+ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c >&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -@@ -5637,7 +6065,7 @@ - cat > conftest.c <<\EOF - extern __thread int a __attribute__((tls_model ("initial-exec"))); - EOF -- if { ac_try='${CC-cc} $CFLAGS -S -Werror conftest.c >&5' -+ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -S -Werror conftest.c >&5' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -@@ -5670,11 +6098,7 @@ - LIBS="$LIBS -lgd -lpng -lz -lm" - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - #include - int - main () -@@ -5699,8 +6123,7 @@ - LIBGD=yes - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - LIBGD=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -@@ -5737,54 +6160,43 @@ - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - #include - #include - #include - #include - --int --main () --{ -- -- ; -- return 0; --} - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? -+ grep -v '^ *+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then - ac_cv_header_stdc=yes - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_header_stdc=no -+ cat conftest.$ac_ext >&5 -+ ac_cv_header_stdc=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -+rm -f conftest.err conftest.$ac_ext - - if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - #include - - _ACEOF -@@ -5802,11 +6214,7 @@ - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - #include - - _ACEOF -@@ -5827,18 +6235,13 @@ - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - #include - #if ((' ' & 0x0FF) == 0x020) - # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') - # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) - #else --# define ISLOWER(c) \ -- (('a' <= (c) && (c) <= 'i') \ -+# define ISLOWER(c) (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) - # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -@@ -5871,8 +6274,7 @@ - else - echo "$as_me: program exited with status $ac_status" >&5 - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - ( exit $ac_status ) - ac_cv_header_stdc=no - fi -@@ -5911,11 +6313,7 @@ - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - $ac_includes_default - - #include <$ac_header> -@@ -5935,8 +6333,7 @@ - eval "$as_ac_Header=yes" - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - eval "$as_ac_Header=no" - fi - rm -f conftest.$ac_objext conftest.$ac_ext -@@ -5960,11 +6357,7 @@ - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - $ac_includes_default - int - main () -@@ -5992,8 +6385,7 @@ - ac_cv_type_long_double=yes - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - ac_cv_type_long_double=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext -@@ -6015,11 +6407,7 @@ - # Depending upon the size, compute the lo and hi bounds. - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - $ac_includes_default - int - main () -@@ -6047,11 +6435,7 @@ - while :; do - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - $ac_includes_default - int - main () -@@ -6078,8 +6462,7 @@ - ac_hi=$ac_mid; break - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - ac_lo=`expr $ac_mid + 1` - if test $ac_lo -le $ac_mid; then - ac_lo= ac_hi= -@@ -6091,15 +6474,10 @@ - done - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - $ac_includes_default - int - main () -@@ -6127,11 +6505,7 @@ - while :; do - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - $ac_includes_default - int - main () -@@ -6158,8 +6532,7 @@ - ac_lo=$ac_mid; break - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - ac_hi=`expr '(' $ac_mid ')' - 1` - if test $ac_mid -le $ac_hi; then - ac_lo= ac_hi= -@@ -6171,8 +6544,7 @@ - done - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - ac_lo= ac_hi= - fi - rm -f conftest.$ac_objext conftest.$ac_ext -@@ -6183,11 +6555,7 @@ - ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - $ac_includes_default - int - main () -@@ -6214,35 +6582,26 @@ - ac_hi=$ac_mid - else - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - ac_lo=`expr '(' $ac_mid ')' + 1` - fi - rm -f conftest.$ac_objext conftest.$ac_ext - done - case $ac_lo in - ?*) ac_cv_sizeof_long_double=$ac_lo;; --'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long double), 77 --See \`config.log' for more details." >&5 --echo "$as_me: error: cannot compute sizeof (long double), 77 --See \`config.log' for more details." >&2;} -+'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long double), 77" >&5 -+echo "$as_me: error: cannot compute sizeof (long double), 77" >&2;} - { (exit 1); exit 1; }; } ;; - esac - else - if test "$cross_compiling" = yes; then -- { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling --See \`config.log' for more details." >&5 --echo "$as_me: error: cannot run test program while cross compiling --See \`config.log' for more details." >&2;} -+ { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling" >&5 -+echo "$as_me: error: cannot run test program while cross compiling" >&2;} - { (exit 1); exit 1; }; } - else - cat >conftest.$ac_ext <<_ACEOF - #line $LINENO "configure" --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -+#include "confdefs.h" - $ac_includes_default - long longval () { return (long) (sizeof (long double)); } - unsigned long ulongval () { return (long) (sizeof (long double)); } -@@ -6290,13 +6649,10 @@ - else - echo "$as_me: program exited with status $ac_status" >&5 - echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -+cat conftest.$ac_ext >&5 - ( exit $ac_status ) --{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long double), 77 --See \`config.log' for more details." >&5 --echo "$as_me: error: cannot compute sizeof (long double), 77 --See \`config.log' for more details." >&2;} -+{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long double), 77" >&5 -+echo "$as_me: error: cannot compute sizeof (long double), 77" >&2;} - { (exit 1); exit 1; }; } - fi - rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -@@ -6335,8 +6691,8 @@ - *) dest=$srcdir/$dir ;; - esac - if test -r $dest/configure; then -- echo "$as_me:$LINENO: result: running configure fragment for $dest" >&5 --echo "${ECHO_T}running configure fragment for $dest" >&6 -+ echo "$as_me:$LINENO: result: running configure fragment for $dir" >&5 -+echo "${ECHO_T}running configure fragment for $dir" >&6 - . $dest/configure - fi - -@@ -6461,6 +6817,7 @@ - - - -+ - if test $gnu_ld = yes; then - cat >>confdefs.h <<\_ACEOF - #define HAVE_GNU_LD 1 -@@ -6594,7 +6951,7 @@ - t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache --if diff $cache_file confcache >/dev/null 2>&1; then :; else -+if cmp -s $cache_file confcache; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file -@@ -6654,8 +7011,6 @@ - # configure, is in config.log if it exists. - - debug=false --ac_cs_recheck=false --ac_cs_silent=false - SHELL=\${CONFIG_SHELL-$SHELL} - _ACEOF - -@@ -6690,10 +7045,7 @@ - PS4='+ ' - - # NLS nuisances. --for as_var in \ -- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ -- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ -- LC_TELEPHONE LC_TIME -+for as_var in LANG LANGUAGE LC_ALL LC_COLLATE LC_CTYPE LC_NUMERIC LC_MESSAGES LC_TIME - do - if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var -@@ -6739,15 +7091,15 @@ - - # The user is always right. - if test "${PATH_SEPARATOR+set}" != set; then -- echo "#! /bin/sh" >conf$$.sh -- echo "exit 0" >>conf$$.sh -- chmod +x conf$$.sh -- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then -+ echo "#! /bin/sh" >conftest.sh -+ echo "exit 0" >>conftest.sh -+ chmod +x conftest.sh -+ if (PATH="/nonexistent;."; conftest.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi -- rm -f conf$$.sh -+ rm -f conftest.sh - fi - - -@@ -6910,7 +7262,7 @@ - cat >&5 <<_CSEOF - - This file was extended by GNU C Library $as_me (see version.h), which was --generated by GNU Autoconf 2.57. Invocation command line was -+generated by GNU Autoconf 2.54. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS -@@ -6950,7 +7302,6 @@ - - -h, --help print this help, then exit - -V, --version print version number, then exit -- -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] -@@ -6973,7 +7324,7 @@ - cat >>$CONFIG_STATUS <<_ACEOF - ac_cs_version="\\ - GNU C Library config.status (see version.h) --configured by $0, generated by GNU Autoconf 2.57, -+configured by $0, generated by GNU Autoconf 2.54, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - - Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 -@@ -7010,9 +7361,12 @@ - case $ac_option in - # Handling of the options. - _ACEOF --cat >>$CONFIG_STATUS <<\_ACEOF -+cat >>$CONFIG_STATUS <<_ACEOF - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) -- ac_cs_recheck=: ;; -+ echo "running $SHELL $0 " $ac_configure_args " --no-create --no-recursion" -+ exec $SHELL $0 $ac_configure_args --no-create --no-recursion ;; -+_ACEOF -+cat >>$CONFIG_STATUS <<\_ACEOF - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) -@@ -7034,9 +7388,6 @@ - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; -- -q | -quiet | --quiet | --quie | --qui | --qu | --q \ -- | -silent | --silent | --silen | --sile | --sil | --si | --s) -- ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -@@ -7051,20 +7402,6 @@ - shift - done - --ac_configure_extra_args= -- --if $ac_cs_silent; then -- exec 6>/dev/null -- ac_configure_extra_args="$ac_configure_extra_args --silent" --fi -- --_ACEOF --cat >>$CONFIG_STATUS <<_ACEOF --if \$ac_cs_recheck; then -- echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 -- exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion --fi -- - _ACEOF - - cat >>$CONFIG_STATUS <<_ACEOF -@@ -7105,9 +7442,6 @@ - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands - fi - --# Have a temporary directory for convenience. Make it in the build tree --# simply because there is no reason to put it here, and in addition, --# creating and moving files from /tmp can sometimes cause problems. - # Create a temporary directory, and hook for its removal unless debugging. - $debug || - { -@@ -7116,17 +7450,17 @@ - } - - # Create a (secure) tmp directory for tmp files. -- -+: ${TMPDIR=/tmp} - { -- tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && -+ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/csXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" - } || - { -- tmp=./confstat$$-$RANDOM -+ tmp=$TMPDIR/cs$$-$RANDOM - (umask 077 && mkdir $tmp) - } || - { -- echo "$me: cannot create a temporary directory in ." >&2 -+ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 - { (exit 1); exit 1; } - } - -@@ -7176,6 +7510,7 @@ - s,@LIBS@,$LIBS,;t t - s,@with_fp@,$with_fp,;t t - s,@with_cvs@,$with_cvs,;t t -+s,@enable_check_abi@,$enable_check_abi,;t t - s,@oldest_abi@,$oldest_abi,;t t - s,@subdirs@,$subdirs,;t t - s,@force_install@,$force_install,;t t -@@ -7194,13 +7529,7 @@ - s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t - s,@INSTALL_DATA@,$INSTALL_DATA,;t t - s,@LN_S@,$LN_S,;t t --s,@PWD_P@,$PWD_P,;t t - s,@CC@,$CC,;t t --s,@MAKE@,$MAKE,;t t --s,@MSGFMT@,$MSGFMT,;t t --s,@MAKEINFO@,$MAKEINFO,;t t --s,@SED@,$SED,;t t --s,@AUTOCONF@,$AUTOCONF,;t t - s,@CFLAGS@,$CFLAGS,;t t - s,@LDFLAGS@,$LDFLAGS,;t t - s,@CPPFLAGS@,$CPPFLAGS,;t t -@@ -7209,6 +7538,9 @@ - s,@BUILD_CC@,$BUILD_CC,;t t - s,@cross_compiling@,$cross_compiling,;t t - s,@CPP@,$CPP,;t t -+s,@CXX@,$CXX,;t t -+s,@CXXFLAGS@,$CXXFLAGS,;t t -+s,@ac_ct_CXX@,$ac_ct_CXX,;t t - s,@AR@,$AR,;t t - s,@OBJDUMP@,$OBJDUMP,;t t - s,@RANLIB@,$RANLIB,;t t -@@ -7216,6 +7548,12 @@ - s,@MIG@,$MIG,;t t - s,@AS@,$AS,;t t - s,@LD@,$LD,;t t -+s,@PWD_P@,$PWD_P,;t t -+s,@MAKE@,$MAKE,;t t -+s,@MSGFMT@,$MSGFMT,;t t -+s,@MAKEINFO@,$MAKEINFO,;t t -+s,@SED@,$SED,;t t -+s,@AUTOCONF@,$AUTOCONF,;t t - s,@CCVERSION@,$CCVERSION,;t t - s,@SYSINCLUDES@,$SYSINCLUDES,;t t - s,@libc_cv_gcc_static_libgcc@,$libc_cv_gcc_static_libgcc,;t t -@@ -7235,8 +7573,10 @@ - s,@libc_cv_z_nodlopen@,$libc_cv_z_nodlopen,;t t - s,@libc_cv_z_initfirst@,$libc_cv_z_initfirst,;t t - s,@libc_cv_Bgroup@,$libc_cv_Bgroup,;t t -+s,@ASFLAGS_config@,$ASFLAGS_config,;t t - s,@libc_cv_z_combreloc@,$libc_cv_z_combreloc,;t t - s,@libc_cv_have_initfini@,$libc_cv_have_initfini,;t t -+s,@libc_cv_cpp_asm_debuginfo@,$libc_cv_cpp_asm_debuginfo,;t t - s,@no_whole_archive@,$no_whole_archive,;t t - s,@exceptions@,$exceptions,;t t - s,@LIBGD@,$LIBGD,;t t -@@ -7251,6 +7591,7 @@ - s,@libc_cv_localedir@,$libc_cv_localedir,;t t - s,@libc_cv_sysconfdir@,$libc_cv_sysconfdir,;t t - s,@libc_cv_rootsbindir@,$libc_cv_rootsbindir,;t t -+s,@libc_cv_forced_unwind@,$libc_cv_forced_unwind,;t t - s,@use_ldconfig@,$use_ldconfig,;t t - s,@ldd_rewrite_script@,$ldd_rewrite_script,;t t - s,@gnu_ld@,$gnu_ld,;t t -@@ -7649,7 +7990,7 @@ - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then -- if diff $ac_file $tmp/config.h >/dev/null 2>&1; then -+ if cmp -s $ac_file $tmp/config.h 2>/dev/null; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 - echo "$as_me: $ac_file is unchanged" >&6;} - else -@@ -7782,11 +8123,8 @@ - # need to make the FD available again. - if test "$no_create" != yes; then - ac_cs_success=: -- ac_config_status_args= -- test "$silent" = yes && -- ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null -- $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false -+ $SHELL $CONFIG_STATUS || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. ---- glibc-2.3.2/configure.in 2003-02-25 19:46:31.000000000 -0500 -+++ glibc-2.3.2/configure.in 2003-08-21 08:36:58.000000000 -0400 -@@ -113,6 +113,14 @@ - [enable_sanity=$enableval], - [enable_sanity=yes]) - -+AC_SUBST(enable_check_abi) -+AC_ARG_ENABLE([check-abi], -+ AC_HELP_STRING([--enable-check-abi], -+ [do "make check-abi" in "make check" (no/warn/yes) -+ @<:@default=no@:>@]), -+ [enable_check_abi=$enableval], -+ [enable_check_abi=no]) -+ - dnl Arguments to enable or disable building the static, shared, profiled, - dnl and -fomit-frame-pointer libraries. - dnl I've disabled this for now since we cannot build glibc without static -@@ -378,8 +386,33 @@ - m68k) base_machine=m68k machine=m68k/m68020 ;; - m88???) base_machine=m88k machine=m88k/$machine ;; - m88k) base_machine=m88k machine=m88k/m88100 ;; --mips64*) base_machine=mips64 machine=mips/mips64/$machine ;; --mips*) base_machine=mips machine=mips/$machine ;; -+mips64*) base_machine=mips64 -+ case "$CC $CFLAGS $CPPFLAGS " in -+ *" -mabi=n32 "*) mips_cc_abi=n32 ;; -+ *" -mabi=64 "*|*" -mabi=n64 "*) mips_cc_abi=64 ;; -+ *" -mabi=32 "*|*" -mabi=o32 "*) mips_cc_abi=32 ;; -+ *) mips_cc_abi=default ;; -+ esac -+ case $config_os in -+ *abin32*) mips_config_abi=n32 ;; -+ *abi64*|*abin64*) mips_config_abi=64 ;; -+ *abi32*|*abio32*) mips_config_abi=32 ;; -+ *) mips_config_abi=$mips_cc_abi ;; -+ esac -+ case $mips_config_abi in -+ default) machine=mips/mips64/n32 mips_config_abi=n32 ;; -+ n32) machine=mips/mips64/n32 ;; -+ 64) machine=mips/mips64/n64 ;; -+ 32) machine=mips/mips32/kern64 ;; -+ esac -+ machine=$machine/$config_machine -+ if test $mips_config_abi != $mips_cc_abi; then -+ # This won't make it to config.make, but we want to -+ # set this in case configure tests depend on it. -+ CPPFLAGS="$CPPFLAGS -mabi=$mips_config_abi" -+ fi -+ ;; -+mips*) base_machine=mips machine=mips/mips32/$machine ;; - powerpc) base_machine=powerpc machine=powerpc/powerpc32 ;; - powerpc64) base_machine=powerpc machine=powerpc/powerpc64 ;; - s390) base_machine=s390 machine=s390/s390-32 ;; -@@ -637,6 +670,25 @@ - fi - AC_PROG_LN_S - -+AC_PROG_CC -+if test $host != $build; then -+ AC_CHECK_PROGS(BUILD_CC, gcc cc) -+fi -+AC_SUBST(cross_compiling) -+AC_PROG_CPP -+# We need the C++ compiler only for testing. -+AC_PROG_CXX -+LIBC_PROG_BINUTILS -+AC_SUBST(MIG)dnl Needed by sysdeps/mach/configure.in -+ -+# Accept binutils 2.13 or newer. -+AC_CHECK_PROG_VER(AS, $AS, --version, -+ [GNU assembler.* \([0-9]*\.[0-9.]*\)], -+ [2.1[3-9]*], AS=: critic_missing="$critic_missing as") -+AC_CHECK_PROG_VER(LD, $LD, --version, -+ [GNU ld.* \([0-9][0-9]*\.[0-9.]*\)], -+ [2.1[3-9]*], LD=: critic_missing="$critic_missing ld") -+ - # We need the physical current working directory. We cannot use the - # "pwd -P" shell builtin since that's not portable. Instead we try to - # find a pwd binary. Note that assigning to the PWD environment -@@ -656,14 +708,6 @@ - [GNU Make[^0-9]*\([0-9][0-9.]*\)], - [3.79* | 3.[89]*], critic_missing="$critic_missing make") - -- --if test -n "$critic_missing"; then --AC_MSG_ERROR([ --*** These critical programs are missing or too old:$critic_missing --*** Check the INSTALL file for required versions.]) --fi -- -- - AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version, - [GNU gettext.* \([0-9]*\.[0-9.]*\)], - [0.10.3[6-9]* | 0.10.[4-9][0-9]* | 0.1[1-9]* | 0.[2-9][0-9]* | [1-9].*], -@@ -677,40 +721,28 @@ - [3.0[2-9]*|3.[1-9]*|[4-9]*], - SED=: aux_missing="$aux_missing sed") - --if test "x$with_cvs" != xyes; then -- AC_CHECK_PROGS(AUTOCONF, autoconf, no) -- case "x$AUTOCONF" in -- xno|x|x:) AUTOCONF=no ;; -- *) -- AC_CACHE_CHECK(dnl -+AC_CHECK_PROGS(AUTOCONF, autoconf, no) -+case "x$AUTOCONF" in -+xno|x|x:) AUTOCONF=no ;; -+*) -+ AC_CACHE_CHECK(dnl - whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works, libc_cv_autoconf_works, [dnl -- if (cd $srcdir; $AUTOCONF $ACFLAGS configure.in > /dev/null 2>&1); then -- libc_cv_autoconf_works=yes -- else -- libc_cv_autoconf_works=no -- fi]) -- test $libc_cv_autoconf_works = yes || AUTOCONF=no -- ;; -- esac -- test "x$AUTOCONF" != xno || aux_missing="$aux_missing autoconf" --fi -- --AC_PROG_CC --if test $host != $build; then -- AC_CHECK_PROGS(BUILD_CC, gcc cc) -+ if (cd $srcdir; $AUTOCONF $ACFLAGS configure.in > /dev/null 2>&1); then -+ libc_cv_autoconf_works=yes -+ else -+ libc_cv_autoconf_works=no -+ fi]) -+ test $libc_cv_autoconf_works = yes || AUTOCONF=no -+ ;; -+esac -+if test "x$with_cvs" = xyes && test "x$AUTOCONF" = xno; then -+ # If --without-cvs they probably won't change configure.in, so no complaints. -+ aux_missing="$aux_missing autoconf" - fi --AC_SUBST(cross_compiling) --AC_PROG_CPP --LIBC_PROG_BINUTILS --AC_SUBST(MIG)dnl Needed by sysdeps/mach/configure.in - --# Accept binutils 2.13 or newer. --AC_CHECK_PROG_VER(AS, $AS, --version, -- [GNU assembler.* \([0-9]*\.[0-9.]*\)], -- [2.1[3-9]*], AS=: critic_missing=t) --AC_CHECK_PROG_VER(LD, $LD, --version, -- [GNU ld.* \([0-9][0-9]*\.[0-9.]*\)], -- [2.1[3-9]*], LD=: critic_missing=t) -+test -n "$critic_missing" && AC_MSG_ERROR([ -+*** These critical programs are missing or too old:$critic_missing -+*** Check the INSTALL file for required versions.]) - - test -n "$aux_missing" && AC_MSG_WARN([ - *** These auxiliary programs are missing or incompatible versions:$aux_missing -@@ -737,7 +769,7 @@ - char b; - void c(void) {} - EOF --$CC $CFLAGS -c conftest.c -+$CC $CFLAGS $CPPFLAGS -c conftest.c - $AR cr conftest.a conftest.o - cp conftest.a conftest2.a - $RANLIB conftest.a -@@ -889,7 +921,7 @@ - #include "confdefs.h" - /* Nothing whatsoever. */ - EOF --if ${CC-cc} $CFLAGS -c conftest.S 2>/dev/null; then -+if AC_TRY_COMMAND(${CC-cc} $CPPFLAGS $ASFLAGS -c conftest.S 1>&AS_MESSAGE_LOG_FD); then - libc_cv_need_minus_P=no - else - libc_cv_need_minus_P=yes -@@ -906,7 +938,7 @@ - .text - EOF - libc_cv_dot_text= --if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then -+if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then - libc_cv_dot_text=.text - fi - rm -f conftest*]) -@@ -925,7 +957,7 @@ - ${ac_globl} foo - foo: - EOF -- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then -+ if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then - libc_cv_asm_global_directive=${ac_globl} - fi - rm -f conftest* -@@ -948,9 +980,10 @@ - # (but it doesn't work), so we must do a linking check to be sure. - cat > conftest1.c <<\EOF - extern int glibc_conftest_frobozz; --main () { printf ("%d\n", glibc_conftest_frobozz); } -+void _start() { glibc_conftest_frobozz = 1; } - EOF - if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \ -+ -nostartfiles -nostdlib \ - -o conftest conftest.s conftest1.c 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then - libc_cv_asm_set_directive=yes - else -@@ -973,7 +1006,7 @@ - foo: - .byte 1 - EOF -- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then -+ if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then - libc_cv_asm_type_prefix=${ac_try_prefix} - fi - rm -f conftest* -@@ -996,7 +1029,7 @@ - _sym: - .symver _sym,sym@VERS - EOF --if ${CC-cc} -c $CFLAGS $CPPFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then -+if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then - libc_cv_asm_symver_directive=yes - else - libc_cv_asm_symver_directive=no -@@ -1018,10 +1051,11 @@ - global: sym; - } VERS_1; - EOF -- if ${CC-cc} -c $CFLAGS $CPPFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then -- if AC_TRY_COMMAND([${CC-cc} $CFLAGS -shared -o conftest.so conftest.o -- -nostartfiles -nostdlib -- -Wl,--version-script,conftest.map -+ if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then -+ if AC_TRY_COMMAND([${CC-cc} $CFLAGS $LDFLAGS -shared -+ -o conftest.so conftest.o -+ -nostartfiles -nostdlib -+ -Wl,--version-script,conftest.map - 1>&AS_MESSAGE_LOG_FD]); - then - libc_cv_ld_version_script_option=yes -@@ -1060,7 +1094,7 @@ - .section foo_section - .previous - EOF -- if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then -+ if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then - libc_cv_asm_previous_directive=yes - else - libc_cv_asm_previous_directive=no -@@ -1075,7 +1109,7 @@ - .pushsection foo_section - .popsection - EOF -- if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then -+ if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then - libc_cv_asm_popsection_directive=yes - else - libc_cv_asm_popsection_directive=no -@@ -1093,7 +1127,7 @@ - .hidden bar - bar: - EOF -- if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then -+ if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then - libc_cv_asm_protected_directive=yes - else - libc_cv_asm_protected_directive=no -@@ -1111,7 +1145,7 @@ - int bar __attribute__ ((visibility ("protected"))) = 1; - EOF - libc_cv_visibility_attribute=no -- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -+ if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD); then - if grep '\.hidden.*foo' conftest.s >/dev/null; then - if grep '\.protected.*bar' conftest.s >/dev/null; then - libc_cv_visibility_attribute=yes -@@ -1134,7 +1168,7 @@ - int bar (int x) { return x; } - EOF - libc_cv_broken_visibility_attribute=yes -- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -+ if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s1>&AS_MESSAGE_LOG_FD); then - changequote(,)dnl - if grep '\.hidden[ _]foo' conftest.s >/dev/null; then - changequote([,])dnl -@@ -1159,7 +1193,7 @@ - int dfoo = 1; - EOF - libc_cv_broken_alias_attribute=yes -- if ${CC-cc} -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then -+ if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD); then - if grep 'xyzzy' conftest.s >/dev/null && - grep 'abccb' conftest.s >/dev/null; then - libc_cv_broken_alias_attribute=no -@@ -1176,7 +1210,7 @@ - libc_cv_have_sdata_section, - [echo "int i;" > conftest.c - libc_cv_have_sdata_section=no -- if ${CC-cc} -shared -Wl,--verbose conftest.c -o conftest.so 2>&1 \ -+ if ${CC-cc} $LDFLAGS -shared -Wl,--verbose conftest.c -o conftest.so 2>&1 \ - | grep '\.sdata' >/dev/null; then - libc_cv_have_sdata_section=yes - fi -@@ -1195,7 +1229,7 @@ - int foo (void) { return 1; } - int (*fp) (void) __attribute__ ((section (".init_array"))) = foo; - EOF -- if AC_TRY_COMMAND([${CC-cc} -o conftest conftest.c -+ if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -o conftest conftest.c - -static -nostartfiles -nostdlib 1>&AS_MESSAGE_LOG_FD]) - then - if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then -@@ -1217,7 +1251,8 @@ - cat > conftest.c <&AS_MESSAGE_LOG_FD]) - then -@@ -1233,7 +1268,8 @@ - cat > conftest.c <&AS_MESSAGE_LOG_FD]) - then -@@ -1249,7 +1285,8 @@ - cat > conftest.c <&AS_MESSAGE_LOG_FD]) - then -@@ -1265,7 +1302,9 @@ - cat > conftest.c <&AS_MESSAGE_LOG_FD]) -+ if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -+ -shared -o conftest.so conftest.c -+ -Wl,-Bgroup -nostdlib 1>&AS_MESSAGE_LOG_FD]) - then - libc_cv_Bgroup=yes - else -@@ -1274,6 +1313,27 @@ - rm -f conftest*]) - AC_SUBST(libc_cv_Bgroup) - -+ ASFLAGS_config= -+ AC_CACHE_CHECK(whether --noexecstack is desirable for .S files, -+ libc_cv_as_noexecstack, [dnl -+ cat > conftest.c <&AS_MESSAGE_LOG_FD]) \ -+ && grep -q .note.GNU-stack conftest.s \ -+ && AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -Wa,--noexecstack -+ -c -o conftest.o conftest.s 1>&AS_MESSAGE_LOG_FD]) -+ then -+ libc_cv_as_noexecstack=yes -+ else -+ libc_cv_as_noexecstack=no -+ fi -+ rm -f conftest*]) -+ if test $libc_cv_as_noexecstack = yes; then -+ ASFLAGS_config="$ASFLAGS_config -Wa,--noexecstack" -+ fi -+ AC_SUBST(ASFLAGS_config) - AC_CACHE_CHECK(for -z combreloc, - libc_cv_z_combreloc, [dnl - cat > conftest.c <&AS_MESSAGE_LOG_FD]) - then -@@ -1345,8 +1406,8 @@ - AC_DEFUN(AC_CHECK_ASM_UNDERSCORE, - [cat > conftest.$ac_ext </dev/null; then -+if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then - libc_cv_asm_weak_directive=yes - else - libc_cv_asm_weak_directive=no -@@ -1418,7 +1479,7 @@ - ${libc_cv_asm_global_directive} baz - baz: - EOF -- if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then -+ if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then - libc_cv_asm_weakext_directive=yes - else - libc_cv_asm_weakext_directive=no -@@ -1447,7 +1508,7 @@ - cat > conftest.s <&AS_MESSAGE_LOG_FD); then -+ if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then - libc_cv_asm_line_sep='!' - else - if test -z "$enable_hacker_mode"; then -@@ -1462,6 +1523,58 @@ - ;; - esac - -+AC_CACHE_CHECK(whether CFI directives are supported, libc_cv_asm_cfi_directives, [dnl -+cat > conftest.s <&AS_MESSAGE_LOG_FD); then -+ libc_cv_asm_cfi_directives=yes -+else -+ libc_cv_asm_cfi_directives=no -+fi -+rm -f conftest*]) -+if test $libc_cv_asm_cfi_directives = yes; then -+ AC_DEFINE(HAVE_ASM_CFI_DIRECTIVES) -+fi -+ -+AC_CACHE_CHECK(if -g produces usable source locations for assembler-with-cpp, -+ libc_cv_cpp_asm_debuginfo, [dnl -+cat > conftest.S <&AS_MESSAGE_LOG_FD]) && -+ ac_pattern='conftest\.S' -+ AC_TRY_COMMAND([readelf --debug-dump=line conftest.o | -+ grep $ac_pattern 1>&AS_MESSAGE_LOG_FD]); then -+ libc_cv_cpp_asm_debuginfo=yes -+else -+ libc_cv_cpp_asm_debuginfo=no -+fi -+rm -f conftest*])AC_SUBST(libc_cv_cpp_asm_debuginfo) -+if test $libc_cv_cpp_asm_debuginfo = yes; then -+ AC_DEFINE(HAVE_CPP_ASM_DEBUGINFO) -+fi -+ - AC_CACHE_CHECK(for ld --no-whole-archive, libc_cv_ld_no_whole_archive, [dnl - cat > conftest.c <<\EOF - _start () {} -@@ -1469,7 +1582,7 @@ - __throw () {} - EOF - dnl No \ in command here because it ends up inside ''. --if AC_TRY_COMMAND([${CC-cc} $CFLAGS -+if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS - -nostdlib -nostartfiles -Wl,--no-whole-archive - -o conftest conftest.c 1>&AS_MESSAGE_LOG_FD]); then - libc_cv_ld_no_whole_archive=yes -@@ -1489,7 +1602,7 @@ - __throw () {} - EOF - dnl No \ in command here because it ends up inside ''. --if AC_TRY_COMMAND([${CC-cc} $CFLAGS -+if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS - -nostdlib -nostartfiles -fexceptions - -o conftest conftest.c 1>&AS_MESSAGE_LOG_FD]); then - libc_cv_gcc_exceptions=yes -@@ -1516,7 +1629,7 @@ - - AC_CACHE_CHECK(for DWARF2 unwind info support, libc_cv_gcc_dwarf2_unwind_info, - [cat > conftest.c <&AS_MESSAGE_LOG_FD]); then -- libc_cv_gcc_dwarf2_unwind_info=static --else -- libc_cv_gcc_dwarf2_unwind_info=no --fi -+libc_unwind_check="${CC-cc} $CFLAGS $CPPFLAGS -DCHECK__register_frame_info \ -+ $LDFLAGS \ -+ -nostdlib -nostartfiles -o conftest conftest.c \ -+ -lgcc" - # Some platforms' specs put -lgcc first. The second one doesn't hurt. --libc_unwind_check="${CC-cc} $CFLAGS -DCHECK__register_frame_info \ -- -nostdlib -nostartfiles -o conftest conftest.c \ -- -lgcc -lgcc_eh -lgcc" --if AC_TRY_COMMAND([$libc_unwind_check >&AS_MESSAGE_LOG_FD]); then -+if AC_TRY_COMMAND([$libc_unwind_check >&AS_MESSAGE_LOG_FD]) || -+ AC_TRY_COMMAND([$libc_unwind_check -lgcc_eh -lgcc >&AS_MESSAGE_LOG_FD]) -+then - if $libc_unwind_check -v 2>&1 >/dev/null \ - | grep -q -- --eh-frame-hdr; then - libc_cv_gcc_dwarf2_unwind_info=no_registry_needed -@@ -1565,8 +1673,8 @@ - libc_cv_gcc_dwarf2_unwind_info=no - fi - if test $libc_cv_gcc_dwarf2_unwind_info = no; then -- if AC_TRY_COMMAND([${CC-cc} $CFLAGS -DCHECK__register_frame -- -nostdlib -nostartfiles -+ if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -DCHECK__register_frame -+ $LDFLAGS -nostdlib -nostartfiles - -o conftest conftest.c -lgcc >&AS_MESSAGE_LOG_FD]); then - libc_cv_gcc_dwarf2_unwind_info=yes - else -@@ -1587,7 +1695,7 @@ - dnl Check whether compiler understands __builtin_expect. - AC_CACHE_CHECK(for __builtin_expect, libc_cv_gcc_builtin_expect, - [cat > conftest.c <&AS_MESSAGE_LOG_FD]); then - libc_cv_gcc_builtin_expect=yes - else -@@ -1625,11 +1733,31 @@ - AC_DEFINE(HAVE_BUILTIN_MEMSET) - fi - -+AC_CACHE_CHECK(for redirection of built-in functions, libc_cv_gcc_builtin_redirection, [dnl -+cat > conftest.c <<\EOF -+extern char *strstr (const char *, const char *) __asm ("my_strstr"); -+char *foo (const char *a, const char *b) -+{ -+ return __builtin_strstr (a, b); -+} -+EOF -+dnl -+if AC_TRY_COMMAND([${CC-cc} -O3 -S conftest.c -o - | fgrep "my_strstr" > /dev/null]); -+then -+ libc_cv_gcc_builtin_redirection=yes -+else -+ libc_cv_gcc_builtin_redirection=no -+fi -+rm -f conftest* ]) -+if test "$libc_cv_gcc_builtin_redirection" = yes ; then -+ AC_DEFINE(HAVE_BUILTIN_REDIRECTION) -+fi -+ - dnl Check whether the compiler supports subtraction of local labels. - AC_CACHE_CHECK(for local label subtraction, libc_cv_gcc_subtract_local_labels, - [cat > conftest.c <&AS_MESSAGE_LOG_FD]); then - libc_cv_gcc_subtract_local_labels=yes - else -@@ -1660,7 +1788,7 @@ - [cat > conftest.c <<\EOF - __thread int a = 42; - EOF -- if AC_TRY_COMMAND([${CC-cc} $CFLAGS -c conftest.c >&AS_MESSAGE_LOG_FD]); then -+ if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c >&AS_MESSAGE_LOG_FD]); then - libc_cv_gcc___thread=yes - else - libc_cv_gcc___thread=no -@@ -1679,7 +1807,7 @@ - cat > conftest.c <<\EOF - extern __thread int a __attribute__((tls_model ("initial-exec"))); - EOF -- if AC_TRY_COMMAND([${CC-cc} $CFLAGS -S -Werror conftest.c >&AS_MESSAGE_LOG_FD]); then -+ if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -S -Werror conftest.c >&AS_MESSAGE_LOG_FD]); then - libc_cv_gcc_tls_model_attr=yes - else - libc_cv_gcc_tls_model_attr=no -@@ -1732,7 +1860,7 @@ - *) dest=$srcdir/$dir ;; - esac - if test -r $dest/configure; then -- AC_MSG_RESULT(running configure fragment for $dest) -+ AC_MSG_RESULT(running configure fragment for $dir) - . $dest/configure - fi - [ -@@ -1833,6 +1961,7 @@ - AC_SUBST(libc_cv_localedir) - AC_SUBST(libc_cv_sysconfdir) - AC_SUBST(libc_cv_rootsbindir) -+AC_SUBST(libc_cv_forced_unwind) - - AC_SUBST(use_ldconfig) - AC_SUBST(ldd_rewrite_script) ---- glibc-2.3.2/csu/Makefile 2002-12-31 17:24:37.000000000 -0500 -+++ glibc-2.3.2/csu/Makefile 2003-08-21 08:36:58.000000000 -0400 -@@ -1,5 +1,5 @@ - # Makefile for csu code for GNU C library. --# Copyright (C) 1995,96,97,98,99,2000,01,2002 Free Software Foundation, Inc. -+# Copyright (C) 1995,96,97,98,99,2000,01,02,2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -33,19 +33,29 @@ - static-only-routines = elf-init - csu-dummies = $(filter-out $(start-installed-name),crt1.o Mcrt1.o) - extra-objs = start.o gmon-start.o \ -- $(start-installed-name) g$(start-installed-name) $(csu-dummies) -+ $(start-installed-name) g$(start-installed-name) $(csu-dummies) \ -+ S$(start-installed-name) - omit-deps = $(patsubst %.o,%,$(start-installed-name) g$(start-installed-name) \ -- b$(start-installed-name) $(csu-dummies)) -+ b$(start-installed-name) $(csu-dummies) \ -+ S$(start-installed-name)) - install-lib = $(start-installed-name) g$(start-installed-name) $(csu-dummies) - distribute = initfini.c gmon-start.c start.c defs.awk munch.awk \ -- abi-note.S init.c munch-tmpl.c -+ abi-note.S init.c munch-tmpl.c not-cancel.h - generated = version-info.h - before-compile = $(objpfx)version-info.h - -+tests := tst-empty tst-atomic tst-atomic-long -+tests-static := tst-empty -+ - all: # Make this the default target; it will be defined in Rules. - - include ../Makeconfig - -+ifeq (yes,$(build-shared)) -+extra-objs += S$(start-installed-name) -+install-lib += S$(start-installed-name) -+endif -+ - ifeq (yes,$(build-bounded)) - extra-objs += b$(start-installed-name) - install-lib += b$(start-installed-name) -@@ -80,11 +90,6 @@ - - CPPFLAGS += -DHAVE_INITFINI - --# We don't want this compiled with PIC. --# It's never included in shared libraries, unlike the rest of libc_nonshared.a. --CPPFLAGS-elf-init.oS = $(patsubst %,-UPIC,$(pic-ccflag)) --CFLAGS-elf-init.oS = $(patsubst -f%,-fno-%,$(pic-ccflag)) -- - # These are the special initializer/finalizer files. They are always the - # first and last file in the link. crti.o ... crtn.o define the global - # "functions" _init and _fini to run the .init and .fini sections. -@@ -96,14 +101,14 @@ - omit-deps += $(crtstuff) - - # Special rules for the building of crti.o and crtn.o --$(objpfx)crt%.o: $(objpfx)crt%.S $(objpfx)defs.h -+$(crtstuff:%=$(objpfx)%.o): %.o: %.S $(objpfx)defs.h - $(compile.S) -g0 $(ASFLAGS-.os) -o $@ - - CFLAGS-initfini.s = -g0 -fPIC -fno-inline-functions - - vpath initfini.c $(full_config_sysdirs) - --$(objpfx)initfini.s: initfini.c -+$(objpfx)initfini.s: initfini.c $(before-compile) - $(compile.c) -S $(CFLAGS-initfini.s) -finhibit-size-directive \ - $(patsubst -f%,-fno-%,$(exceptions)) -o $@ - -@@ -151,6 +156,9 @@ - $(objpfx)$(start-installed-name): $(objpfx)start.o $(objpfx)abi-note.o \ - $(objpfx)init.o - $(link-relocatable) -+$(objpfx)S$(start-installed-name): $(objpfx)start.os $(objpfx)abi-note.o \ -+ $(objpfx)init.o -+ $(link-relocatable) - $(objpfx)b$(start-installed-name): $(objpfx)start.ob $(objpfx)abi-note.ob \ - $(objpfx)init.ob - $(link-relocatable) -@@ -160,6 +168,9 @@ - $(objpfx)$(start-installed-name): $(objpfx)start.o - rm -f $@ - ln $< $@ -+$(objpfx)S$(start-installed-name): $(objpfx)start.os -+ rm -f $@ -+ ln $< $@ - $(objpfx)b$(start-installed-name): $(objpfx)start.ob - rm -f $@ - ln $< $@ -@@ -176,11 +187,9 @@ - - # These extra files are sometimes expected by system standard linking - # procedures, but we have nothing for them to do. So compile empty files. --$(addprefix $(objpfx),$(filter-out $(start-installed-name),$(csu-dummies))): -- @-rm -f $(@:.o=.c) -- echo > $(@:.o=.c) -- $(COMPILE.c) $(@:.o=.c) $(OUTPUT_OPTION) -- rm -f $(@:.o=.c) -+$(addprefix $(objpfx),$(filter-out $(start-installed-name), $(csu-dummies))):\ -+ $(before-compile) -+ $(COMPILE.c) -o $@ -x c /dev/null - - # These headers are used by the startup code. - $(objpfx)abi-tag.h: $(..)abi-tags -@@ -208,7 +217,7 @@ - $(make-target-directory) - (case $(config-os) in \ - linux*) version=`(echo -e "#include \nUTS_RELEASE"\ -- | $(CC) -E -P - | \ -+ | $(CC) $(CPPFLAGS) -E -P - | \ - sed -e 's/"\([^"]*\)".*/\1/p' -e d) 2>/dev/null`;\ - if [ -z "$$version" ]; then \ - if [ -r /proc/version ]; then \ ---- glibc-2.3.2/csu/elf-init.c 2002-12-31 18:41:32.000000000 -0500 -+++ glibc-2.3.2/csu/elf-init.c 2003-05-24 14:06:21.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Startup support for ELF initializers/finalizers in the main executable. -- Copyright (C) 2002 Free Software Foundation, Inc. -+ Copyright (C) 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -21,12 +21,12 @@ - - #ifdef HAVE_INITFINI_ARRAY - /* These magic symbols are provided by the linker. */ --extern void (*__preinit_array_start []) (void); --extern void (*__preinit_array_end []) (void); --extern void (*__init_array_start []) (void); --extern void (*__init_array_end []) (void); --extern void (*__fini_array_start []) (void); --extern void (*__fini_array_end []) (void); -+extern void (*__preinit_array_start []) (void) attribute_hidden; -+extern void (*__preinit_array_end []) (void) attribute_hidden; -+extern void (*__init_array_start []) (void) attribute_hidden; -+extern void (*__init_array_end []) (void) attribute_hidden; -+extern void (*__fini_array_start []) (void) attribute_hidden; -+extern void (*__fini_array_end []) (void) attribute_hidden; - #endif - - /* These function symbols are provided for the .init/.fini section entry ---- glibc-2.3.2/csu/tst-atomic-long.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/csu/tst-atomic-long.c 2003-03-22 18:00:17.000000000 -0500 -@@ -0,0 +1,28 @@ -+/* Tests for atomic.h macros. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Jakub Jelinek , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+ -+#define atomic_t long -+#if __WORDSIZE == 64 -+# define TEST_ATOMIC64 1 -+#endif -+ -+#include "tst-atomic.c" ---- glibc-2.3.2/csu/tst-atomic.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/csu/tst-atomic.c 2003-05-12 12:13:03.000000000 -0400 -@@ -0,0 +1,373 @@ -+/* Tests for atomic.h macros. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Jakub Jelinek , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+ -+#ifndef atomic_t -+# define atomic_t int -+#endif -+ -+/* Test various atomic.h macros. */ -+static int -+do_test (void) -+{ -+ atomic_t mem; -+ int ret = 0; -+ -+#ifdef atomic_compare_and_exchange_val_acq -+ mem = 24; -+ if (atomic_compare_and_exchange_val_acq (&mem, 35, 24) != 24 -+ || mem != 35) -+ { -+ puts ("atomic_compare_and_exchange_val_acq test 1 failed"); -+ ret = 1; -+ } -+ -+ mem = 12; -+ if (atomic_compare_and_exchange_val_acq (&mem, 10, 15) != 12 -+ || mem != 12) -+ { -+ puts ("atomic_compare_and_exchange_val_acq test 2 failed"); -+ ret = 1; -+ } -+ -+ mem = -15; -+ if (atomic_compare_and_exchange_val_acq (&mem, -56, -15) != -15 -+ || mem != -56) -+ { -+ puts ("atomic_compare_and_exchange_val_acq test 3 failed"); -+ ret = 1; -+ } -+ -+ mem = -1; -+ if (atomic_compare_and_exchange_val_acq (&mem, 17, 0) != -1 -+ || mem != -1) -+ { -+ puts ("atomic_compare_and_exchange_val_acq test 4 failed"); -+ ret = 1; -+ } -+#endif -+ -+ mem = 24; -+ if (atomic_compare_and_exchange_bool_acq (&mem, 35, 24) -+ || mem != 35) -+ { -+ puts ("atomic_compare_and_exchange_bool_acq test 1 failed"); -+ ret = 1; -+ } -+ -+ mem = 12; -+ if (! atomic_compare_and_exchange_bool_acq (&mem, 10, 15) -+ || mem != 12) -+ { -+ puts ("atomic_compare_and_exchange_bool_acq test 2 failed"); -+ ret = 1; -+ } -+ -+ mem = -15; -+ if (atomic_compare_and_exchange_bool_acq (&mem, -56, -15) -+ || mem != -56) -+ { -+ puts ("atomic_compare_and_exchange_bool_acq test 3 failed"); -+ ret = 1; -+ } -+ -+ mem = -1; -+ if (! atomic_compare_and_exchange_bool_acq (&mem, 17, 0) -+ || mem != -1) -+ { -+ puts ("atomic_compare_and_exchange_bool_acq test 4 failed"); -+ ret = 1; -+ } -+ -+ mem = 64; -+ if (atomic_exchange_acq (&mem, 31) != 64 -+ || mem != 31) -+ { -+ puts ("atomic_exchange_acq test failed"); -+ ret = 1; -+ } -+ -+ mem = 2; -+ if (atomic_exchange_and_add (&mem, 11) != 2 -+ || mem != 13) -+ { -+ puts ("atomic_exchange_and_add test failed"); -+ ret = 1; -+ } -+ -+ mem = -21; -+ atomic_add (&mem, 22); -+ if (mem != 1) -+ { -+ puts ("atomic_add test failed"); -+ ret = 1; -+ } -+ -+ mem = -1; -+ atomic_increment (&mem); -+ if (mem != 0) -+ { -+ puts ("atomic_increment test failed"); -+ ret = 1; -+ } -+ -+ mem = 0; -+ if (atomic_increment_and_test (&mem) -+ || mem != 1) -+ { -+ puts ("atomic_increment_and_test test 1 failed"); -+ ret = 1; -+ } -+ -+ mem = 35; -+ if (atomic_increment_and_test (&mem) -+ || mem != 36) -+ { -+ puts ("atomic_increment_and_test test 2 failed"); -+ ret = 1; -+ } -+ -+ mem = -1; -+ if (! atomic_increment_and_test (&mem) -+ || mem != 0) -+ { -+ puts ("atomic_increment_and_test test 3 failed"); -+ ret = 1; -+ } -+ -+ mem = 17; -+ atomic_decrement (&mem); -+ if (mem != 16) -+ { -+ puts ("atomic_decrement test failed"); -+ ret = 1; -+ } -+ -+ mem = 0; -+ if (atomic_decrement_and_test (&mem) -+ || mem != -1) -+ { -+ puts ("atomic_decrement_and_test test 1 failed"); -+ ret = 1; -+ } -+ -+ mem = 15; -+ if (atomic_decrement_and_test (&mem) -+ || mem != 14) -+ { -+ puts ("atomic_decrement_and_test test 2 failed"); -+ ret = 1; -+ } -+ -+ mem = 1; -+ if (! atomic_decrement_and_test (&mem) -+ || mem != 0) -+ { -+ puts ("atomic_decrement_and_test test 3 failed"); -+ ret = 1; -+ } -+ -+ mem = 1; -+ if (atomic_decrement_if_positive (&mem) != 1 -+ || mem != 0) -+ { -+ puts ("atomic_decrement_if_positive test 1 failed"); -+ ret = 1; -+ } -+ -+ mem = 0; -+ if (atomic_decrement_if_positive (&mem) != 0 -+ || mem != 0) -+ { -+ puts ("atomic_decrement_if_positive test 2 failed"); -+ ret = 1; -+ } -+ -+ mem = -1; -+ if (atomic_decrement_if_positive (&mem) != -1 -+ || mem != -1) -+ { -+ puts ("atomic_decrement_if_positive test 3 failed"); -+ ret = 1; -+ } -+ -+ mem = -12; -+ if (! atomic_add_negative (&mem, 10) -+ || mem != -2) -+ { -+ puts ("atomic_add_negative test 1 failed"); -+ ret = 1; -+ } -+ -+ mem = 0; -+ if (atomic_add_negative (&mem, 100) -+ || mem != 100) -+ { -+ puts ("atomic_add_negative test 2 failed"); -+ ret = 1; -+ } -+ -+ mem = 15; -+ if (atomic_add_negative (&mem, -10) -+ || mem != 5) -+ { -+ puts ("atomic_add_negative test 3 failed"); -+ ret = 1; -+ } -+ -+ mem = -12; -+ if (atomic_add_negative (&mem, 14) -+ || mem != 2) -+ { -+ puts ("atomic_add_negative test 4 failed"); -+ ret = 1; -+ } -+ -+ mem = 0; -+ if (! atomic_add_negative (&mem, -1) -+ || mem != -1) -+ { -+ puts ("atomic_add_negative test 5 failed"); -+ ret = 1; -+ } -+ -+ mem = -31; -+ if (atomic_add_negative (&mem, 31) -+ || mem != 0) -+ { -+ puts ("atomic_add_negative test 6 failed"); -+ ret = 1; -+ } -+ -+ mem = -34; -+ if (atomic_add_zero (&mem, 31) -+ || mem != -3) -+ { -+ puts ("atomic_add_zero test 1 failed"); -+ ret = 1; -+ } -+ -+ mem = -36; -+ if (! atomic_add_zero (&mem, 36) -+ || mem != 0) -+ { -+ puts ("atomic_add_zero test 2 failed"); -+ ret = 1; -+ } -+ -+ mem = 113; -+ if (atomic_add_zero (&mem, -13) -+ || mem != 100) -+ { -+ puts ("atomic_add_zero test 3 failed"); -+ ret = 1; -+ } -+ -+ mem = -18; -+ if (atomic_add_zero (&mem, 20) -+ || mem != 2) -+ { -+ puts ("atomic_add_zero test 4 failed"); -+ ret = 1; -+ } -+ -+ mem = 10; -+ if (atomic_add_zero (&mem, -20) -+ || mem != -10) -+ { -+ puts ("atomic_add_zero test 5 failed"); -+ ret = 1; -+ } -+ -+ mem = 10; -+ if (! atomic_add_zero (&mem, -10) -+ || mem != 0) -+ { -+ puts ("atomic_add_zero test 6 failed"); -+ ret = 1; -+ } -+ -+ mem = 0; -+ atomic_bit_set (&mem, 1); -+ if (mem != 2) -+ { -+ puts ("atomic_bit_set test 1 failed"); -+ ret = 1; -+ } -+ -+ mem = 8; -+ atomic_bit_set (&mem, 3); -+ if (mem != 8) -+ { -+ puts ("atomic_bit_set test 2 failed"); -+ ret = 1; -+ } -+ -+#ifdef TEST_ATOMIC64 -+ mem = 16; -+ atomic_bit_set (&mem, 35); -+ if (mem != 0x800000010LL) -+ { -+ puts ("atomic_bit_set test 3 failed"); -+ ret = 1; -+ } -+#endif -+ -+ mem = 0; -+ if (atomic_bit_test_set (&mem, 1) -+ || mem != 2) -+ { -+ puts ("atomic_bit_test_set test 1 failed"); -+ ret = 1; -+ } -+ -+ mem = 8; -+ if (! atomic_bit_test_set (&mem, 3) -+ || mem != 8) -+ { -+ puts ("atomic_bit_test_set test 2 failed"); -+ ret = 1; -+ } -+ -+#ifdef TEST_ATOMIC64 -+ mem = 16; -+ if (atomic_bit_test_set (&mem, 35) -+ || mem != 0x800000010LL) -+ { -+ puts ("atomic_bit_test_set test 3 failed"); -+ ret = 1; -+ } -+ -+ mem = 0x100000000LL; -+ if (! atomic_bit_test_set (&mem, 32) -+ || mem != 0x100000000LL) -+ { -+ puts ("atomic_bit_test_set test 4 failed"); -+ ret = 1; -+ } -+#endif -+ -+ return ret; -+} -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" ---- glibc-2.3.2/csu/tst-empty.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/csu/tst-empty.c 2003-04-11 20:16:59.000000000 -0400 -@@ -0,0 +1,6 @@ -+/* The most useful C program known to man. */ -+int -+main (void) -+{ -+ return 0; -+} ---- glibc-2.3.2/dirent/Makefile 2002-06-22 01:46:07.000000000 -0400 -+++ glibc-2.3.2/dirent/Makefile 2003-09-19 22:37:01.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1991-2000, 2002 Free Software Foundation, Inc. -+# Copyright (C) 1991-2000, 2002, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -30,6 +30,9 @@ - - tests := list tst-seekdir opendir-tst1 bug-readdir1 - -+CFLAGS-scandir.c = $(uses-callbacks) -+CFLAGS-scandir64.c = $(uses-callbacks) -+ - include ../Rules - - opendir-tst1-ARGS = --test-dir=${common-objpfx}dirent ---- glibc-2.3.2/dirent/dirent.h 2001-07-07 15:20:52.000000000 -0400 -+++ glibc-2.3.2/dirent/dirent.h 2003-09-19 22:37:01.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991-1999, 2000 Free Software Foundation, Inc. -+/* Copyright (C) 1991-1999, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -128,12 +128,18 @@ - typedef struct __dirstream DIR; - - /* Open a directory stream on NAME. -- Return a DIR stream on the directory, or NULL if it could not be opened. */ --extern DIR *opendir (__const char *__name) __THROW; -+ Return a DIR stream on the directory, or NULL if it could not be opened. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern DIR *opendir (__const char *__name); - - /* Close the directory stream DIRP. -- Return 0 if successful, -1 if not. */ --extern int closedir (DIR *__dirp) __THROW; -+ Return 0 if successful, -1 if not. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int closedir (DIR *__dirp); - - /* Read a directory entry from DIRP. Return a pointer to a `struct - dirent' describing the entry, or NULL for EOF or error. The -@@ -141,34 +147,40 @@ - same DIR stream. - - If the Large File Support API is selected we have to use the -- appropriate interface. */ -+ appropriate interface. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - #ifndef __USE_FILE_OFFSET64 --extern struct dirent *readdir (DIR *__dirp) __THROW; -+extern struct dirent *readdir (DIR *__dirp); - #else - # ifdef __REDIRECT --extern struct dirent *__REDIRECT (readdir, (DIR *__dirp) __THROW, readdir64); -+extern struct dirent *__REDIRECT (readdir, (DIR *__dirp), readdir64); - # else - # define readdir readdir64 - # endif - #endif - - #ifdef __USE_LARGEFILE64 --extern struct dirent64 *readdir64 (DIR *__dirp) __THROW; -+extern struct dirent64 *readdir64 (DIR *__dirp); - #endif - - #if defined __USE_POSIX || defined __USE_MISC - /* Reentrant version of `readdir'. Return in RESULT a pointer to the -- next entry. */ -+ next entry. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - # ifndef __USE_FILE_OFFSET64 - extern int readdir_r (DIR *__restrict __dirp, - struct dirent *__restrict __entry, -- struct dirent **__restrict __result) __THROW; -+ struct dirent **__restrict __result); - # else - # ifdef __REDIRECT - extern int __REDIRECT (readdir_r, - (DIR *__restrict __dirp, - struct dirent *__restrict __entry, -- struct dirent **__restrict __result) __THROW, -+ struct dirent **__restrict __result), - readdir64_r); - # else - # define readdir_r readdir64_r -@@ -178,7 +190,7 @@ - # ifdef __USE_LARGEFILE64 - extern int readdir64_r (DIR *__restrict __dirp, - struct dirent64 *__restrict __entry, -- struct dirent64 **__restrict __result) __THROW; -+ struct dirent64 **__restrict __result); - # endif - #endif /* POSIX or misc */ - -@@ -227,14 +239,14 @@ - extern int scandir (__const char *__restrict __dir, - struct dirent ***__restrict __namelist, - int (*__selector) (__const struct dirent *), -- int (*__cmp) (__const void *, __const void *)) __THROW; -+ int (*__cmp) (__const void *, __const void *)); - # else - # ifdef __REDIRECT - extern int __REDIRECT (scandir, - (__const char *__restrict __dir, - struct dirent ***__restrict __namelist, - int (*__selector) (__const struct dirent *), -- int (*__cmp) (__const void *, __const void *)) __THROW, -+ int (*__cmp) (__const void *, __const void *)), - scandir64); - # else - # define scandir scandir64 -@@ -247,7 +259,7 @@ - extern int scandir64 (__const char *__restrict __dir, - struct dirent64 ***__restrict __namelist, - int (*__selector) (__const struct dirent64 *), -- int (*__cmp) (__const void *, __const void *)) __THROW; -+ int (*__cmp) (__const void *, __const void *)); - # endif - - /* Function to compare two `struct dirent's alphabetically. */ -@@ -257,8 +269,7 @@ - # else - # ifdef __REDIRECT - extern int __REDIRECT (alphasort, -- (__const void *__e1, __const void *__e2) -- __THROW, -+ (__const void *__e1, __const void *__e2) __THROW, - alphasort64) __attribute_pure__; - # else - # define alphasort alphasort64 -@@ -278,8 +289,7 @@ - # else - # ifdef __REDIRECT - extern int __REDIRECT (versionsort, -- (__const void *__e1, __const void *__e2) -- __THROW, -+ (__const void *__e1, __const void *__e2) __THROW, - versionsort64) __attribute_pure__; - # else - # define versionsort versionsort64 ---- glibc-2.3.2/dirent/scandir.c 2002-10-14 13:41:01.000000000 -0400 -+++ glibc-2.3.2/dirent/scandir.c 2003-09-19 22:37:01.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1992-1998, 2000, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1992-1998, 2000, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - - #ifndef SCANDIR - #define SCANDIR scandir -@@ -27,6 +28,30 @@ - #define DIRENT_TYPE struct dirent - #endif - -+#ifndef SCANDIR_CANCEL -+#define SCANDIR_CANCEL -+struct scandir_cancel_struct -+{ -+ DIR *dp; -+ void *v; -+ size_t cnt; -+}; -+ -+static void -+cancel_handler (void *arg) -+{ -+ struct scandir_cancel_struct *cp = arg; -+ size_t i; -+ void **v = cp->v; -+ -+ for (i = 0; i < cp->cnt; ++i) -+ free (v[i]); -+ free (v); -+ (void) __closedir (cp->dp); -+} -+#endif -+ -+ - int - SCANDIR (dir, namelist, select, cmp) - const char *dir; -@@ -36,7 +61,8 @@ - { - DIR *dp = __opendir (dir); - DIRENT_TYPE **v = NULL; -- size_t vsize = 0, i; -+ size_t vsize = 0; -+ struct scandir_cancel_struct c; - DIRENT_TYPE *d; - int save; - -@@ -46,58 +72,77 @@ - save = errno; - __set_errno (0); - -- i = 0; -+ c.dp = dp; -+ c.v = NULL; -+ c.cnt = 0; -+ __libc_cleanup_push (cancel_handler, &c); -+ - while ((d = READDIR (dp)) != NULL) -- if (select == NULL || (*select) (d)) -- { -- DIRENT_TYPE *vnew; -- size_t dsize; -- -- /* Ignore errors from select or readdir */ -- __set_errno (0); -- -- if (__builtin_expect (i == vsize, 0)) -- { -- DIRENT_TYPE **new; -- if (vsize == 0) -- vsize = 10; -- else -- vsize *= 2; -- new = (DIRENT_TYPE **) realloc (v, vsize * sizeof (*v)); -- if (new == NULL) -- break; -- v = new; -- } -- -- dsize = &d->d_name[_D_ALLOC_NAMLEN (d)] - (char *) d; -- vnew = (DIRENT_TYPE *) malloc (dsize); -- if (vnew == NULL) -- break; -+ { -+ int use_it = select == NULL; -+ -+ if (! use_it) -+ { -+ use_it = select (d); -+ /* The select function might have changed errno. It was -+ zero before and it need to be again to make the latter -+ tests work. */ -+ __set_errno (0); -+ } -+ -+ if (use_it) -+ { -+ DIRENT_TYPE *vnew; -+ size_t dsize; -+ -+ /* Ignore errors from select or readdir */ -+ __set_errno (0); -+ -+ if (__builtin_expect (c.cnt == vsize, 0)) -+ { -+ DIRENT_TYPE **new; -+ if (vsize == 0) -+ vsize = 10; -+ else -+ vsize *= 2; -+ new = (DIRENT_TYPE **) realloc (v, vsize * sizeof (*v)); -+ if (new == NULL) -+ break; -+ v = new; -+ c.v = (void *) v; -+ } -+ -+ dsize = &d->d_name[_D_ALLOC_NAMLEN (d)] - (char *) d; -+ vnew = (DIRENT_TYPE *) malloc (dsize); -+ if (vnew == NULL) -+ break; - -- v[i++] = (DIRENT_TYPE *) memcpy (vnew, d, dsize); -- } -+ v[c.cnt++] = (DIRENT_TYPE *) memcpy (vnew, d, dsize); -+ } -+ } - - if (__builtin_expect (errno, 0) != 0) - { - save = errno; - -- while (i > 0) -- free (v[--i]); -+ while (c.cnt > 0) -+ free (v[--c.cnt]); - free (v); -- -- i = -1; -+ c.cnt = -1; - } - else - { - /* Sort the list if we have a comparison function to sort with. */ - if (cmp != NULL) -- qsort (v, i, sizeof (*v), cmp); -+ qsort (v, c.cnt, sizeof (*v), cmp); - - *namelist = v; - } - -+ __libc_cleanup_pop (0); -+ - (void) __closedir (dp); - __set_errno (save); - -- return i; -+ return c.cnt; - } ---- glibc-2.3.2/dlfcn/Makefile 2003-02-25 19:46:32.000000000 -0500 -+++ glibc-2.3.2/dlfcn/Makefile 2003-08-21 08:36:59.000000000 -0400 -@@ -19,7 +19,8 @@ - subdir := dlfcn - headers := bits/dlfcn.h dlfcn.h - extra-libs := libdl --libdl-routines := dlopen dlclose dlsym dlvsym dlerror dladdr eval -+libdl-routines := dlopen dlclose dlsym dlvsym dlerror dladdr dladdr1 dlinfo \ -+ eval - distribute := dlopenold.c glreflib1.c glreflib2.c failtestmod.c eval.c \ - defaultmod1.c defaultmod2.c errmsg1mod.c modatexit.c \ - modcxaatexit.c modstatic.c \ -@@ -37,7 +38,7 @@ - - ifeq (yes,$(build-shared)) - tests = glrefmain failtest tst-dladdr default errmsg1 tstcxaatexit \ -- bug-dlopen1 bug-dlsym1 -+ bug-dlopen1 bug-dlsym1 tst-dlinfo - ifeq (yes,$(have-protected)) - tests += tstatexit - endif -@@ -46,6 +47,10 @@ - errmsg1mod modatexit modcxaatexit \ - bug-dlsym1-lib1 bug-dlsym1-lib2 - -+failtestmod.so-no-z-defs = yes -+glreflib2.so-no-z-defs = yes -+errmsg1mod.so-no-z-defs = yes -+ - ifeq (yesyesyes,$(build-static)$(build-shared)$(elf)) - tests += tststatic - tests-static += tststatic -@@ -61,9 +66,14 @@ - LDFLAGS-dl.so = -Wl,-dynamic-linker,$(slibdir)/$(rtld-installed-name) - - test-modules = $(addprefix $(objpfx),$(addsuffix .so,$(modules-names))) --$(test-modules): $(objpfx)%.so: $(objpfx)%.os -+$(test-modules): $(objpfx)%.so: $(objpfx)%.os $(common-objpfx)shlib.lds - $(build-module) - -+ifeq ($(build-shared),yes) -+# Build all the modules even when not actually running test programs. -+tests: $(test-modules) -+endif -+ - $(objpfx)glrefmain: $(libdl) - $(objpfx)glrefmain.out: $(objpfx)glrefmain \ - $(objpfx)glreflib1.so $(objpfx)glreflib2.so -@@ -74,6 +84,9 @@ - $(objpfx)tst-dladdr: $(libdl) - $(objpfx)tst-dladdr.out: $(objpfx)glreflib1.so - -+$(objpfx)tst-dlinfo: $(libdl) -+$(objpfx)tst-dlinfo.out: $(objpfx)glreflib1.so -+ - LDFLAGS-default = $(LDFLAGS-rdynamic) - $(objpfx)default: $(libdl) $(objpfx)defaultmod1.so $(objpfx)defaultmod2.so - $(objpfx)defaultmod1.so: $(libdl) $(common-objpfx)libc_nonshared.a ---- glibc-2.3.2/dlfcn/Versions 1999-07-07 14:25:24.000000000 -0400 -+++ glibc-2.3.2/dlfcn/Versions 2003-03-18 16:46:07.000000000 -0500 -@@ -5,4 +5,7 @@ - GLIBC_2.1 { - dlopen; dlvsym; - } -+ GLIBC_2.3.3 { -+ dladdr1; dlinfo; -+ } - } ---- glibc-2.3.2/dlfcn/default.c 2000-11-15 21:12:28.000000000 -0500 -+++ glibc-2.3.2/dlfcn/default.c 2003-08-21 08:36:59.000000000 -0400 -@@ -36,7 +36,7 @@ - printf ("%s: main not found\n", __FILE__); - result = 1; - } -- else if (p != (void *) &main) -+ else if ((int (*)(int, char **))p != main) - { - printf ("%s: wrong address returned for main\n", __FILE__); - result = 1; -@@ -72,9 +72,9 @@ - else - printf ("%s: found_in_mod2 correctly found\n", __FILE__); - -- result |= test_in_mod1 ((void *) &main); -+ result |= test_in_mod1 (main); - -- result |= test_in_mod2 ((void *) &main); -+ result |= test_in_mod2 (main); - - return result; - } ---- glibc-2.3.2/dlfcn/defaultmod1.c 2000-11-28 18:56:29.000000000 -0500 -+++ glibc-2.3.2/dlfcn/defaultmod1.c 2003-08-21 08:36:59.000000000 -0400 -@@ -9,9 +9,9 @@ - } - - --extern int test_in_mod1 (void *mainp); -+extern int test_in_mod1 (int (*mainp)(int, char **)); - int --test_in_mod1 (void *mainp) -+test_in_mod1 (int (*mainp)(int, char **)) - { - int (*ifp) (void); - void *p; -@@ -24,7 +24,7 @@ - printf ("%s: main not found\n", __FILE__); - result = 1; - } -- else if (p != mainp) -+ else if ((int (*)(int, char **))p != mainp) - { - printf ("%s: wrong address returned for main\n", __FILE__); - result = 1; ---- glibc-2.3.2/dlfcn/defaultmod2.c 2000-11-28 18:57:02.000000000 -0500 -+++ glibc-2.3.2/dlfcn/defaultmod2.c 2003-08-21 08:36:59.000000000 -0400 -@@ -16,9 +16,9 @@ - } - - --extern int test_in_mod2 (void *mainp); -+extern int test_in_mod2 (int (*mainp)(int, char **)); - int --test_in_mod2 (void *mainp) -+test_in_mod2 (int (*mainp)(int, char **)) - { - int (*ifp) (void); - void *p; -@@ -31,7 +31,7 @@ - printf ("%s: main not found\n", __FILE__); - result = 1; - } -- else if (p != mainp) -+ else if ((int (*)(int, char **))p != mainp) - { - printf ("%s: wrong address returned for main\n", __FILE__); - result = 1; ---- glibc-2.3.2/dlfcn/dladdr.c 2001-07-07 15:20:52.000000000 -0400 -+++ glibc-2.3.2/dlfcn/dladdr.c 2003-03-15 15:02:08.000000000 -0500 -@@ -1,5 +1,5 @@ - /* Locate the shared object symbol nearest a given address. -- Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc. -+ Copyright (C) 1996, 1997, 1998, 1999, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -22,5 +22,5 @@ - int - dladdr (const void *address, Dl_info *info) - { -- return _dl_addr (address, info); -+ return _dl_addr (address, info, NULL, NULL); - } ---- glibc-2.3.2/dlfcn/dladdr1.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/dlfcn/dladdr1.c 2003-03-10 04:12:11.000000000 -0500 -@@ -0,0 +1,35 @@ -+/* Locate the shared object symbol nearest a given address. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+ -+int -+dladdr1 (const void *address, Dl_info *info, void **extra, int flags) -+{ -+ switch (flags) -+ { -+ default: /* Make this an error? */ -+ case 0: -+ return _dl_addr (address, info, NULL, NULL); -+ case RTLD_DL_SYMENT: -+ return _dl_addr (address, info, NULL, (const ElfW(Sym) **) extra); -+ case RTLD_DL_LINKMAP: -+ return _dl_addr (address, info, (struct link_map **) extra, NULL); -+ } -+} ---- glibc-2.3.2/dlfcn/dlerror.c 2002-11-19 01:51:37.000000000 -0500 -+++ glibc-2.3.2/dlfcn/dlerror.c 2003-08-21 08:36:59.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Return error detail for failing functions. -- Copyright (C) 1995,1996,1997,1998,1999,2000,2002 -+ Copyright (C) 1995,1996,1997,1998,1999,2000,2002,2003 - Free Software Foundation, Inc. - This file is part of the GNU C Library. - -@@ -38,6 +38,7 @@ - - /* This is the key for the thread specific memory. */ - static __libc_key_t key; -+__libc_once_define (static, once); - - /* Destructor for the thread-specific data. */ - static void init (void); -@@ -50,6 +51,9 @@ - char *buf = NULL; - struct dl_action_result *result; - -+ /* If we have not yet initialized the buffer do it now. */ -+ __libc_once (once, init); -+ - /* Get error string. */ - result = (struct dl_action_result *) __libc_getspecific (key); - if (result == NULL) -@@ -69,9 +73,19 @@ - else if (result->errstring != NULL) - { - buf = (char *) result->errstring; -- if (__asprintf (&buf, result->errcode != 0 ? "%s: %s: %s" : "%s: %s", -- result->objname, _(result->errstring), -- strerror (result->errcode)) != -1) -+ int n; -+ if (result->errcode == 0) -+ n = __asprintf (&buf, "%s%s%s", -+ result->objname, -+ result->objname[0] == '\0' ? "" : ": ", -+ _(result->errstring)); -+ else -+ n = __asprintf (&buf, "%s%s%s: %s", -+ result->objname, -+ result->objname[0] == '\0' ? "" : ": ", -+ _(result->errstring), -+ strerror (result->errcode)); -+ if (n != -1) - { - /* We don't need the error string anymore. */ - if (strcmp (result->errstring, "out of memory") != 0) -@@ -90,7 +104,6 @@ - internal_function - _dlerror_run (void (*operate) (void *), void *args) - { -- __libc_once_define (static, once); - struct dl_action_result *result; - - /* If we have not yet initialized the buffer do it now. */ ---- glibc-2.3.2/dlfcn/dlfcn.h 2001-10-26 19:58:28.000000000 -0400 -+++ glibc-2.3.2/dlfcn/dlfcn.h 2003-08-21 08:36:59.000000000 -0400 -@@ -1,5 +1,5 @@ - /* User functions for run-time dynamic loading. -- Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc. -+ Copyright (C) 1995-1999,2000,2001,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -21,6 +21,8 @@ - #define _DLFCN_H 1 - - #include -+#define __need_size_t -+#include - - /* Collect various system dependent definitions and declarations. */ - #include -@@ -83,7 +85,74 @@ - /* Fill in *INFO with the following information about ADDRESS. - Returns 0 iff no shared object's segments contain that address. */ - extern int dladdr (__const void *__address, Dl_info *__info) __THROW; --#endif -+ -+/* Same as `dladdr', but additionally sets *EXTRA_INFO according to FLAGS. */ -+extern int dladdr1 (__const void *__address, Dl_info *__info, -+ void **__extra_info, int __flags) __THROW; -+ -+/* These are the possible values for the FLAGS argument to `dladdr1'. -+ This indicates what extra information is stored at *EXTRA_INFO. -+ It may also be zero, in which case the EXTRA_INFO argument is not used. */ -+enum -+ { -+ /* Matching symbol table entry (const ElfNN_Sym *). */ -+ RTLD_DL_SYMENT = 1, -+ -+ /* The object containing the address (struct link_map *). */ -+ RTLD_DL_LINKMAP = 2 -+ }; -+ -+ -+/* Get information about the shared object HANDLE refers to. -+ REQUEST is from among the values below, and determines the use of ARG. -+ -+ On success, returns zero. On failure, returns -1 and records an error -+ message to be fetched with `dlerror'. */ -+extern int dlinfo (void *__restrict __handle, -+ int __request, void *__restrict __arg); -+ -+/* These are the possible values for the REQUEST argument to `dlinfo'. */ -+enum -+ { -+ /* Treat ARG as `struct link_map **'; -+ store the `struct link_map *' for HANDLE there. */ -+ RTLD_DI_LINKMAP = 2, -+ -+ /* Treat ARG as `Dl_serinfo *' (see below), and fill in to describe the -+ directories that will be searched for dependencies of this object. -+ RTLD_DI_SERINFOSIZE fills in just the `dls_cnt' and `dls_size' -+ entries to indicate the size of the buffer that must be passed to -+ RTLD_DI_SERINFO to fill in the full information. */ -+ RTLD_DI_SERINFO = 4, -+ RTLD_DI_SERINFOSIZE = 5, -+ -+ /* Treat ARG as `char *', and store there the directory name used to -+ expand $ORIGIN in this shared object's dependency file names. */ -+ RTLD_DI_ORIGIN = 6, -+ -+ RTLD_DI_LMID = 1, /* Unsupported, defined by Solaris. */ -+ RTLD_DI_CONFIGADDR = 3 /* Unsupported, defined by Solaris. */ -+ }; -+ -+ -+/* This is the type of elements in `Dl_serinfo', below. -+ The `dls_name' member points to space in the buffer passed to `dlinfo'. */ -+typedef struct -+{ -+ char *dls_name; /* Name of library search path directory. */ -+ unsigned int dls_flags; /* Indicates where this directory came from. */ -+} Dl_serpath; -+ -+/* This is the structure that must be passed (by reference) to `dlinfo' for -+ the RTLD_DI_SERINFO and RTLD_DI_SERINFOSIZE requests. */ -+typedef struct -+{ -+ size_t dls_size; /* Size in bytes of the whole buffer. */ -+ unsigned int dls_cnt; /* Number of elements in `dls_serpath'. */ -+ Dl_serpath dls_serpath[1]; /* Actually longer, dls_cnt elements. */ -+} Dl_serinfo; -+#endif /* __USE_GNU */ -+ - - __END_DECLS - ---- glibc-2.3.2/dlfcn/dlinfo.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/dlfcn/dlinfo.c 2003-03-15 18:14:44.000000000 -0500 -@@ -0,0 +1,87 @@ -+/* dlinfo -- Get information from the dynamic linker. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+#include -+ -+struct dlinfo_args -+{ -+ ElfW(Addr) caller; -+ void *handle; -+ int request; -+ void *arg; -+}; -+ -+static void -+dlinfo_doit (void *argsblock) -+{ -+ struct dlinfo_args *const args = argsblock; -+ struct link_map *l = args->handle; -+ -+#if 0 -+ if (args->handle == RTLD_SELF) -+ { -+ -+ /* Find the highest-addressed object that CALLER is not below. */ -+ for (l = GL(dl_loaded); l != NULL; l = l->l_next) -+ if (caller >= l->l_map_start && caller < l->l_map_end) -+ /* There must be exactly one DSO for the range of the virtual -+ memory. Otherwise something is really broken. */ -+ break; -+ -+ if (l == NULL) -+ _dl_signal_error (0, NULL, NULL, N_("\ -+RTLD_SELF used in code not dynamically loaded")); -+ } -+#endif -+ -+ switch (args->request) -+ { -+ case RTLD_DI_LMID: -+ case RTLD_DI_CONFIGADDR: -+ default: -+ _dl_signal_error (0, NULL, NULL, N_("unsupported dlinfo request")); -+ break; -+ -+ case RTLD_DI_LINKMAP: -+ *(struct link_map **) args->arg = l; -+ break; -+ -+ case RTLD_DI_SERINFO: -+ _dl_rtld_di_serinfo (l, args->arg, false); -+ break; -+ case RTLD_DI_SERINFOSIZE: -+ _dl_rtld_di_serinfo (l, args->arg, true); -+ break; -+ -+ case RTLD_DI_ORIGIN: -+ strcpy (args->arg, l->l_origin); -+ break; -+ } -+} -+ -+int -+dlinfo (void *handle, int request, void *arg) -+{ -+ struct dlinfo_args args = { (ElfW(Addr)) RETURN_ADDRESS (0), -+ handle, request, arg }; -+ return _dlerror_run (&dlinfo_doit, &args) ? -1 : 0; -+} ---- glibc-2.3.2/dlfcn/dlopen.c 2001-07-07 15:20:52.000000000 -0400 -+++ glibc-2.3.2/dlfcn/dlopen.c 2003-09-19 22:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Load a shared object at run time. -- Copyright (C) 1995,96,97,98,99,2000 Free Software Foundation, Inc. -+ Copyright (C) 1995,96,97,98,99,2000,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -54,3 +54,4 @@ - } - #include - versioned_symbol (libdl, __dlopen_check, dlopen, GLIBC_2_1); -+static_link_warning (dlopen) ---- glibc-2.3.2/dlfcn/eval.c 2001-07-07 15:20:52.000000000 -0400 -+++ glibc-2.3.2/dlfcn/eval.c 2003-08-21 08:36:59.000000000 -0400 -@@ -27,7 +27,7 @@ - #include - #include - --static void *funcall (char **stringp); -+static void *funcall (char **stringp) __attribute_noinline__; - static void *eval (char **stringp); - - ---- glibc-2.3.2/dlfcn/tst-dlinfo.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/dlfcn/tst-dlinfo.c 2003-03-15 18:14:48.000000000 -0500 -@@ -0,0 +1,96 @@ -+/* Test for dlinfo. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+#include -+ -+#define TEST_FUNCTION do_test () -+ -+static int -+do_test (void) -+{ -+ int status = 0; -+ -+ void *handle = dlopen ("glreflib1.so", RTLD_NOW); -+ if (handle == NULL) -+ error (EXIT_FAILURE, 0, "cannot load: glreflib1.so: %s", dlerror ()); -+ -+#define TRY(req, arg) \ -+ if (dlinfo (handle, req, arg) != 0) \ -+ { \ -+ printf ("dlinfo failed for %s: %s\n", #req, dlerror ()); \ -+ status = 1; \ -+ } \ -+ else -+ -+ struct link_map *l; -+ TRY (RTLD_DI_LINKMAP, &l) -+ { -+ if (l != handle) -+ { -+ printf ("bogus link_map? %p != %p\n", l, handle); -+ status = 1; -+ } -+ } -+ -+ char origin[8192]; /* >= PATH_MAX, in theory */ -+ TRY (RTLD_DI_ORIGIN, origin) -+ { -+ printf ("origin: %s\n", origin); -+ } -+ -+ Dl_serinfo counts; -+ TRY (RTLD_DI_SERINFOSIZE, &counts) -+ { -+ Dl_serinfo *buf = alloca (counts.dls_size); -+ buf->dls_cnt = counts.dls_cnt; -+ buf->dls_size = counts.dls_size; -+ printf ("%u library directories\n", buf->dls_cnt); -+ TRY (RTLD_DI_SERINFO, buf) -+ { -+ if (counts.dls_cnt != buf->dls_cnt) -+ { -+ printf ("??? became %u library directories\n", buf->dls_cnt); -+ status = 1; -+ } -+ for (unsigned int i = 0; i < buf->dls_cnt; ++i) -+ printf ("\t%#02x\t%s\n", -+ buf->dls_serpath[i].dls_flags, -+ buf->dls_serpath[i].dls_name); -+ } -+ } -+ -+ unsigned long int lmid = 0xdeadbeefUL; -+ if (dlinfo (handle, RTLD_DI_LMID, &lmid) != 0) -+ printf ("dlinfo refuses RTLD_DI_LMID: %s\n", dlerror ()); -+ else -+ { -+ printf ("dlinfo RTLD_DI_LMID worked? %#lx\n", lmid); -+ status = lmid == 0xdeadbeefUL; -+ } -+ -+#undef TRY -+ dlclose (handle); -+ -+ return status; -+} -+ -+#include "../test-skeleton.c" ---- glibc-2.3.2/elf/Makefile 2003-02-21 01:28:09.000000000 -0500 -+++ glibc-2.3.2/elf/Makefile 2003-09-20 09:54:37.000000000 -0400 -@@ -69,7 +69,9 @@ - unwind-dw2.c unwind-dw2-fde.c unwind.h unwind-pe.h \ - unwind-dw2-fde.h dwarf2.h dl-procinfo.c tls.h dl-tls.h \ - tst-tlsmod1.c tst-tlsmod2.c tst-tlsmod3.c tst-tlsmod4.c \ -- tst-tlsmod5.c tst-tlsmod6.c \ -+ tst-tlsmod5.c tst-tlsmod6.c tst-tlsmod7.c tst-tlsmod8.c \ -+ tst-tlsmod9.c tst-tlsmod10.c tst-tlsmod11.c \ -+ tst-tlsmod12.c tst-tls10.h tst-alignmod.c \ - circlemod1.c circlemod1a.c circlemod2.c circlemod2a.c \ - circlemod3.c circlemod3a.c nodlopenmod2.c \ - tls-macros.h \ -@@ -80,6 +82,11 @@ - tst-array2dep.c \ - check-textrel.c dl-sysdep.h - -+CFLAGS-dl-runtime.c = -fexceptions -fasynchronous-unwind-tables -+CFLAGS-dl-lookup.c = -fexceptions -fasynchronous-unwind-tables -+CFLAGS-dl-iterate-phdr.c = $(uses-callbacks) -+CFLAGS-dl-iterate-phdr-static.c = $(uses-callbacks) -+ - include ../Makeconfig - - ifeq ($(unwind-find-fde),yes) -@@ -142,7 +149,8 @@ - $(tests-nodlopen-$(have-z-nodlopen)) neededtest neededtest2 \ - neededtest3 neededtest4 unload2 lateglobal initfirst global \ - restest2 next dblload dblunload reldep5 reldep6 reldep7 reldep8 \ -- circleload1 tst-tls3 tst-tls4 tst-tls5 tst-tls6 tst-tls7 tst-tls8 -+ circleload1 tst-tls3 tst-tls4 tst-tls5 tst-tls6 tst-tls7 tst-tls8 \ -+ tst-tls10 tst-tls11 tst-tls12 tst-tls13 tst-tls14 tst-align - # reldep9 - test-srcs = tst-pathopt - tests-vis-yes = vismain -@@ -163,11 +171,14 @@ - reldep6mod0 reldep6mod1 reldep6mod2 reldep6mod3 reldep6mod4 \ - reldep7mod1 reldep7mod2 \ - tst-tlsmod1 tst-tlsmod2 tst-tlsmod3 tst-tlsmod4 \ -- tst-tlsmod5 tst-tlsmod6 \ -+ tst-tlsmod5 tst-tlsmod6 tst-tlsmod7 tst-tlsmod8 \ -+ tst-tlsmod9 tst-tlsmod10 tst-tlsmod11 tst-tlsmod12 \ -+ tst-tlsmod13 tst-tlsmod13a tst-tlsmod14a tst-tlsmod14b \ - circlemod1 circlemod1a circlemod2 circlemod2a \ - circlemod3 circlemod3a \ - reldep8mod1 reldep8mod2 reldep8mod3 \ -- reldep9mod1 reldep9mod2 reldep9mod3 -+ reldep9mod1 reldep9mod2 reldep9mod3 \ -+ tst-alignmod - ifeq (yes,$(have-initfini-array)) - modules-names += tst-array2dep - endif -@@ -181,6 +192,9 @@ - - include ../Rules - -+check-abi: check-abi-ld -+update-abi: update-abi-ld -+ - ifeq (yes,$(build-shared)) - # Make sure these things are built in the `make lib' pass so they can be used - # to run programs during the `make others' pass. -@@ -210,12 +224,15 @@ - mv -f $@T $@ - - $(objpfx)librtld.mk: $(objpfx)librtld.map Makefile -- sed -n 's@^$(common-objpfx)\([^(]*\)(\([^)]*\.os\))$$@\1 \2@p' $< | \ -+ LC_ALL=C \ -+ sed -n 's@^$(common-objpfx)\([^(]*\)(\([^)]*\.os\)) *.*$$@\1 \2@p' \ -+ $< | \ - while read lib file; do \ - case $$lib in \ - libc_pic.a) \ -- fgrep -l /$$file \ -+ LC_ALL=C fgrep -l /$$file \ - $(common-objpfx)stamp.os $(common-objpfx)*/stamp.os | \ -+ LC_ALL=C \ - sed 's@^$(common-objpfx)\([^/]*\)/stamp\.os$$@rtld-\1'" +=$$file@"\ - ;; \ - */*.a) \ -@@ -223,22 +240,24 @@ - *) echo "Wasn't expecting $$lib($$file)" >&2; exit 1 ;; \ - esac; \ - done > $@T -- echo rtld-subdirs = `sed 's/^rtld-\([^ ]*\).*$$/\1/' $@T \ -- | sort -u` >> $@T -+ echo rtld-subdirs = `LC_ALL=C sed 's/^rtld-\([^ ]*\).*$$/\1/' $@T \ -+ | LC_ALL=C sort -u` >> $@T - mv -f $@T $@ - - $(objpfx)rtld-libc.a: $(objpfx)librtld.mk FORCE - $(MAKE) -f $< -f rtld-Rules - --generated += librtld.map librtld.mk rtld-libc.a -- - $(objpfx)librtld.os: $(objpfx)dl-allobjs.os $(objpfx)rtld-libc.a -- $(LINK.o) -nostdlib -nostartfiles -r -o $@ '-Wl,-(' $^ -lgcc '-Wl,-)' -+ $(LINK.o) -nostdlib -nostartfiles -r -o $@ '-Wl,-(' $^ -lgcc '-Wl,-)' \ -+ -Wl,-Map,$@.map -+ -+generated += librtld.map librtld.mk rtld-libc.a librtld.os.map - - $(objpfx)ld.so: $(objpfx)librtld.os $(ld-map) - @rm -f $@.lds - $(LINK.o) -nostdlib -nostartfiles -shared \ - $(LDFLAGS-rtld) -Wl,-z,defs -Wl,--verbose 2>&1 | \ -+ LC_ALL=C \ - sed -e '/^=========/,/^=========/!d;/^=========/d' \ - -e 's/\. = 0 + SIZEOF_HEADERS;/& _begin = . - SIZEOF_HEADERS;/' \ - > $@.lds -@@ -305,11 +324,11 @@ - - ifeq ($(ldd-rewrite-script),no) - define gen-ldd --sed $($(ldd-shell)-ldd-rewrite) < $< > $@.new -+LC_ALL=C sed $($(ldd-shell)-ldd-rewrite) < $< > $@.new - endef - else - define gen-ldd --sed $($(ldd-shell)-ldd-rewrite) < $< | sed -f $(ldd-rewrite-script) > $@.new -+LC_ALL=C sed $($(ldd-shell)-ldd-rewrite) < $< | LC_ALL=C sed -f $(ldd-rewrite-script) > $@.new - endef - endif - -@@ -323,7 +342,8 @@ - - $(objpfx)ldconfig: $(ldconfig-modules:%=$(objpfx)%.o) - SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"' --CFLAGS-ldconfig.c = $(SYSCONF-FLAGS) -D'LIBDIR="$(libdir)"' -D'SLIBDIR="$(slibdir)"' -+CFLAGS-ldconfig.c = $(SYSCONF-FLAGS) -D'LIBDIR="$(libdir)"' \ -+ -D'SLIBDIR="$(slibdir)"' -DIS_IN_ldconfig=1 - CFLAGS-dl-cache.c = $(SYSCONF-FLAGS) - CFLAGS-cache.c = $(SYSCONF-FLAGS) - -@@ -372,6 +392,10 @@ - $(objpfx)reldep6mod3.so: $(objpfx)reldep6mod2.so - $(objpfx)reldep6mod4.so: $(objpfx)reldep6mod1.so - $(objpfx)tst-tlsmod3.so: $(objpfx)tst-tlsmod2.so -+$(objpfx)tst-tlsmod8.so: $(objpfx)tst-tlsmod7.so -+$(objpfx)tst-tlsmod10.so: $(objpfx)tst-tlsmod9.so -+$(objpfx)tst-tlsmod12.so: $(objpfx)tst-tlsmod11.so -+$(objpfx)tst-tlsmod13a.so: $(objpfx)tst-tlsmod13.so - # For tst-tls9-static, make sure the modules it dlopens have libc.so in DT_NEEDED - $(objpfx)tst-tlsmod5.so: $(common-objpfx)libc.so - $(objpfx)tst-tlsmod6.so: $(common-objpfx)libc.so -@@ -383,10 +407,51 @@ - LDFLAGS-tst-tlsmod5.so = -nostdlib - LDFLAGS-tst-tlsmod6.so = -nostdlib - -+testobj1.so-no-z-defs = yes -+testobj3.so-no-z-defs = yes -+testobj4.so-no-z-defs = yes -+testobj5.so-no-z-defs = yes -+testobj6.so-no-z-defs = yes -+failobj.so-no-z-defs = yes -+constload2.so-no-z-defs = yes -+constload3.so-no-z-defs = yes -+nodelmod1.so-no-z-defs = yes -+nodelmod2.so-no-z-defs = yes -+nodelmod4.so-no-z-defs = yes -+nodel2mod2.so-no-z-defs = yes -+reldepmod2.so-no-z-defs = yes -+reldepmod3.so-no-z-defs = yes -+reldepmod4.so-no-z-defs = yes -+reldep4mod4.so-no-z-defs = yes -+reldep4mod2.so-no-z-defs = yes -+ltglobmod2.so-no-z-defs = yes -+dblloadmod3.so-no-z-defs = yes -+tst-tlsmod1.so-no-z-defs = yes -+tst-tlsmod2.so-no-z-defs = yes -+tst-tlsmod3.so-no-z-defs = yes -+tst-tlsmod4.so-no-z-defs = yes -+tst-tlsmod7.so-no-z-defs = yes -+tst-tlsmod8.so-no-z-defs = yes -+tst-tlsmod9.so-no-z-defs = yes -+tst-tlsmod10.so-no-z-defs = yes -+tst-tlsmod12.so-no-z-defs = yes -+tst-tlsmod14a.so-no-z-defs = yes -+tst-tlsmod14b.so-no-z-defs = yes -+circlemod2.so-no-z-defs = yes -+circlemod3.so-no-z-defs = yes -+circlemod3a.so-no-z-defs = yes -+reldep8mod2.so-no-z-defs = yes -+reldep9mod1.so-no-z-defs = yes -+ - # filtmod1.so has a special rule - $(filter-out $(objpfx)filtmod1.so, $(test-modules)): $(objpfx)%.so: $(objpfx)%.os - $(build-module) - -+ifeq ($(build-shared),yes) -+# Build all the modules even when not actually running test programs. -+tests: $(test-modules) -+endif -+ - $(objpfx)loadtest: $(libdl) - LDFLAGS-loadtest = -rdynamic - -@@ -573,6 +638,23 @@ - $(objpfx)tst-tls9: $(libdl) - $(objpfx)tst-tls9.out: $(objpfx)tst-tlsmod5.so $(objpfx)tst-tlsmod6.so - -+$(objpfx)tst-tls10: $(objpfx)tst-tlsmod8.so -+ -+$(objpfx)tst-tls11: $(objpfx)tst-tlsmod10.so -+ -+$(objpfx)tst-tls12: $(objpfx)tst-tlsmod12.so -+ -+$(objpfx)tst-tls13: $(libdl) -+$(objpfx)tst-tls13.out: $(objpfx)tst-tlsmod13a.so -+ -+$(objpfx)tst-tls14: $(objpfx)tst-tlsmod14a.so $(libdl) -+$(objpfx)tst-tls14.out:$(objpfx)tst-tlsmod14b.so -+ -+CFLAGS-tst-align.c = $(stack-align-test-flags) -+CFLAGS-tst-alignmod.c = $(stack-align-test-flags) -+$(objpfx)tst-align: $(libdl) -+$(objpfx)tst-align.out: $(objpfx)tst-alignmod.so -+ - ifdef libdl - $(objpfx)tst-tls9-static: $(common-objpfx)dlfcn/libdl.a - $(objpfx)tst-tls9-static.out: $(objpfx)tst-tlsmod5.so $(objpfx)tst-tlsmod6.so ---- glibc-2.3.2/elf/Versions 2002-12-04 13:22:02.000000000 -0500 -+++ glibc-2.3.2/elf/Versions 2003-08-21 08:36:59.000000000 -0400 -@@ -21,6 +21,8 @@ - # functions used in other libraries - _dl_open; _dl_close; _dl_addr; - _dl_sym; _dl_vsym; -+ _dl_open_hook; -+ __libc_dlopen_mode; __libc_dlsym; __libc_dlclose; - } - } - -@@ -51,6 +53,6 @@ - _dl_unload_cache; - _rtld_global; _dl_tls_symaddr; _dl_allocate_tls; _dl_deallocate_tls; - _dl_get_tls_static_info; _dl_allocate_tls_init; -- _dl_get_origin; _dl_tls_setup; -+ _dl_get_origin; _dl_tls_setup; _dl_rtld_di_serinfo; - } - } ---- glibc-2.3.2/elf/cache.c 2002-12-29 14:14:59.000000000 -0500 -+++ glibc-2.3.2/elf/cache.c 2003-09-19 22:37:01.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1999, 2000, 2001, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Jaeger , 1999. - -@@ -86,6 +87,11 @@ - case FLAG_POWERPC_LIB64: - fputs(",64bit", stdout); - break; -+ case FLAG_MIPS64_LIBN32: -+ fputs(",N32", stdout); -+ break; -+ case FLAG_MIPS64_LIBN64: -+ fputs(",64bit", stdout); - case 0: - break; - default: -@@ -299,6 +305,13 @@ - - if (opt_format != 2) - { -+ /* struct cache_file_new is 64-bit aligned on some arches while -+ only 32-bit aligned on other arches. Duplicate last old -+ cache entry so that new cache in ld.so.cache can be used by -+ both. */ -+ if (opt_format != 0) -+ cache_entry_old_count = (cache_entry_old_count + 1) & ~1; -+ - /* And the list of all entries in the old format. */ - file_entries_size = sizeof (struct cache_file) - + cache_entry_old_count * sizeof (struct file_entry); -@@ -345,7 +358,7 @@ - entry = entry->next, ++idx_new) - { - /* First the library. */ -- if (opt_format != 2) -+ if (opt_format != 2 && entry->hwcap == 0) - { - file_entries->libs[idx_old].flags = entry->flags; - /* XXX: Actually we can optimize here and remove duplicates. */ -@@ -368,7 +381,7 @@ - ++str; - str_offset += len + 1; - /* Then the path. */ -- if (opt_format != 2) -+ if (opt_format != 2 && entry->hwcap == 0) - file_entries->libs[idx_old].value = str_offset + pad; - if (opt_format != 0) - file_entries_new->libs[idx_new].value = str_offset; -@@ -382,6 +395,11 @@ - ++idx_old; - } - -+ /* Duplicate last old cache entry if needed. */ -+ if (opt_format != 2 -+ && idx_old < cache_entry_old_count) -+ file_entries->libs[idx_old] = file_entries->libs[idx_old - 1]; -+ - /* Write out the cache. */ - - /* Write cache first to a temporary file and rename it later. */ -@@ -458,7 +476,7 @@ - { - struct cache_entry *new_entry, *ptr, *prev; - char *full_path; -- int len, i; -+ size_t len, i; - - new_entry = (struct cache_entry *) xmalloc (sizeof (struct cache_entry)); - ---- glibc-2.3.2/elf/dl-addr.c 2002-09-27 23:35:22.000000000 -0400 -+++ glibc-2.3.2/elf/dl-addr.c 2003-03-15 15:02:08.000000000 -0500 -@@ -1,5 +1,5 @@ - /* Locate the shared object symbol nearest a given address. -- Copyright (C) 1996-2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996-2000,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -24,7 +24,8 @@ - - int - internal_function --_dl_addr (const void *address, Dl_info *info) -+_dl_addr (const void *address, Dl_info *info, -+ struct link_map **mapp, const ElfW(Sym) **symbolp) - { - const ElfW(Addr) addr = DL_LOOKUP_ADDRESS (address); - struct link_map *l, *match; -@@ -93,6 +94,11 @@ - || ELFW(ST_BIND) (symtab->st_info) == STB_WEAK)) - matchsym = (ElfW(Sym) *) symtab; - -+ if (mapp) -+ *mapp = match; -+ if (symbolp) -+ *symbolp = matchsym; -+ - if (matchsym) - { - /* We found a symbol close by. Fill in its name and exact address. */ ---- glibc-2.3.2/elf/dl-close.c 2003-01-27 15:44:03.000000000 -0500 -+++ glibc-2.3.2/elf/dl-close.c 2003-04-28 08:20:35.000000000 -0400 -@@ -80,7 +80,7 @@ - return true; - } - -- while (idx - disp > disp == 0 ? 1 + GL(dl_tls_static_nelem) : 0) -+ while (idx - disp > (disp == 0 ? 1 + GL(dl_tls_static_nelem) : 0)) - { - --idx; - -@@ -321,8 +321,9 @@ - _dl_debug_state (); - - #ifdef USE_TLS -- size_t tls_free_start, tls_free_end; -- tls_free_start = tls_free_end = GL(dl_tls_static_used); -+ size_t tls_free_start; -+ size_t tls_free_end; -+ tls_free_start = tls_free_end = NO_TLS_OFFSET; - #endif - - /* Check each element of the search list to see if all references to -@@ -365,15 +366,56 @@ - /* All dynamically loaded modules with TLS are unloaded. */ - GL(dl_tls_max_dtv_idx) = GL(dl_tls_static_nelem); - -- if (imap->l_tls_offset != 0) -+ if (imap->l_tls_offset != NO_TLS_OFFSET) - { - /* Collect a contiguous chunk built from the objects in - this search list, going in either direction. When the - whole chunk is at the end of the used area then we can - reclaim it. */ -- if (imap->l_tls_offset == tls_free_end) -+# if TLS_TCB_AT_TP -+ if (tls_free_start == NO_TLS_OFFSET -+ || (size_t) imap->l_tls_offset == tls_free_start) -+ { -+ /* Extend the contiguous chunk being reclaimed. */ -+ tls_free_start -+ = imap->l_tls_offset - imap->l_tls_blocksize; -+ -+ if (tls_free_end == NO_TLS_OFFSET) -+ tls_free_end = imap->l_tls_offset; -+ } -+ else if (imap->l_tls_offset - imap->l_tls_blocksize -+ == tls_free_end) -+ /* Extend the chunk backwards. */ -+ tls_free_end = imap->l_tls_offset; -+ else -+ { -+ /* This isn't contiguous with the last chunk freed. -+ One of them will be leaked unless we can free -+ one block right away. */ -+ if (tls_free_end == GL(dl_tls_static_used)) -+ { -+ GL(dl_tls_static_used) = tls_free_start; -+ tls_free_end = imap->l_tls_offset; -+ tls_free_start -+ = tls_free_end - imap->l_tls_blocksize; -+ } -+ else if ((size_t) imap->l_tls_offset -+ == GL(dl_tls_static_used)) -+ GL(dl_tls_static_used) -+ = imap->l_tls_offset - imap->l_tls_blocksize; -+ else if (tls_free_end < (size_t) imap->l_tls_offset) -+ { -+ /* We pick the later block. It has a chance to -+ be freed. */ -+ tls_free_end = imap->l_tls_offset; -+ tls_free_start -+ = tls_free_end - imap->l_tls_blocksize; -+ } -+ } -+# elif TLS_DTV_AT_TP -+ if ((size_t) imap->l_tls_offset == tls_free_end) - /* Extend the contiguous chunk being reclaimed. */ -- tls_free_end += imap->l_tls_blocksize; -+ tls_free_end -= imap->l_tls_blocksize; - else if (imap->l_tls_offset + imap->l_tls_blocksize - == tls_free_start) - /* Extend the chunk backwards. */ -@@ -387,6 +429,9 @@ - tls_free_start = imap->l_tls_offset; - tls_free_end = tls_free_start + imap->l_tls_blocksize; - } -+# else -+# error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined" -+# endif - } - } - #endif ---- glibc-2.3.2/elf/dl-conflict.c 2002-10-17 13:05:51.000000000 -0400 -+++ glibc-2.3.2/elf/dl-conflict.c 2003-04-12 11:39:42.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Resolve conflicts against already prelinked libraries. -- Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek , 2001. - -@@ -28,11 +28,11 @@ - #include - #include "dynamic-link.h" - -- - void - _dl_resolve_conflicts (struct link_map *l, ElfW(Rela) *conflict, - ElfW(Rela) *conflictend) - { -+#if ! ELF_MACHINE_NO_RELA - if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_RELOC, 0)) - _dl_printf ("\nconflict processing: %s\n", - l->l_name[0] ? l->l_name : rtld_progname); -@@ -64,4 +64,5 @@ - for (; conflict < conflictend; ++conflict) - elf_machine_rela (l, conflict, NULL, NULL, (void *) conflict->r_offset); - } -+#endif - } ---- glibc-2.3.2/elf/dl-iteratephdr.c 2002-12-06 01:42:30.000000000 -0500 -+++ glibc-2.3.2/elf/dl-iteratephdr.c 2003-09-19 22:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Get loaded objects program headers. -- Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek , 2001. - -@@ -23,6 +23,12 @@ - #include - #include - -+static void -+cancel_handler (void *arg __attribute__((unused))) -+{ -+ __rtld_lock_unlock_recursive (GL(dl_load_lock)); -+} -+ - int - __dl_iterate_phdr (int (*callback) (struct dl_phdr_info *info, - size_t size, void *data), void *data) -@@ -33,12 +39,10 @@ - - /* Make sure we are alone. */ - __rtld_lock_lock_recursive (GL(dl_load_lock)); -+ __libc_cleanup_push (cancel_handler, 0); - - for (l = GL(dl_loaded); l != NULL; l = l->l_next) - { -- /* Skip the dynamic linker. */ -- if (l->l_phdr == NULL) -- continue; - info.dlpi_addr = l->l_addr; - info.dlpi_name = l->l_name; - info.dlpi_phdr = l->l_phdr; -@@ -49,6 +53,7 @@ - } - - /* Release the lock. */ -+ __libc_cleanup_pop (0); - __rtld_lock_unlock_recursive (GL(dl_load_lock)); - - return ret; ---- glibc-2.3.2/elf/dl-libc.c 2002-11-19 03:38:32.000000000 -0500 -+++ glibc-2.3.2/elf/dl-libc.c 2003-08-21 08:36:59.000000000 -0400 -@@ -96,6 +96,50 @@ - _dl_close ((struct link_map *) ptr); - } - -+/* This code is to support __libc_dlopen from __libc_dlopen'ed shared -+ libraries. We need to ensure the statically linked __libc_dlopen -+ etc. functions are used instead of the dynamically loaded. */ -+struct dl_open_hook -+{ -+ void *(*dlopen_mode) (const char *name, int mode); -+ void *(*dlsym) (void *map, const char *name); -+ int (*dlclose) (void *map); -+}; -+ -+#ifdef SHARED -+extern struct dl_open_hook *_dl_open_hook; -+libc_hidden_proto (_dl_open_hook); -+struct dl_open_hook *_dl_open_hook __attribute__((nocommon)); -+libc_hidden_data_def (_dl_open_hook); -+#else -+static void -+do_dlsym_private (void *ptr) -+{ -+ lookup_t l; -+ struct r_found_version vers; -+ vers.name = "GLIBC_PRIVATE"; -+ vers.hidden = 1; -+ /* vers.hash = _dl_elf_hash (version); */ -+ vers.hash = 0x0963cf85; -+ /* FIXME: Shouldn't we use libc.so.6* here? */ -+ vers.filename = NULL; -+ -+ struct do_dlsym_args *args = (struct do_dlsym_args *) ptr; -+ args->ref = NULL; -+ l = _dl_lookup_versioned_symbol (args->name, args->map, -+ &args->ref, args->map->l_scope, -+ &vers, 0, 0); -+ args->loadbase = l; -+} -+ -+static struct dl_open_hook _dl_open_hook = -+ { -+ .dlopen_mode = __libc_dlopen_mode, -+ .dlsym = __libc_dlsym, -+ .dlclose = __libc_dlclose -+ }; -+#endif -+ - /* ... and these functions call dlerror_run. */ - - void * -@@ -105,8 +149,31 @@ - args.name = name; - args.mode = mode; - -+#ifdef SHARED -+ if (__builtin_expect (_dl_open_hook != NULL, 0)) -+ return _dl_open_hook->dlopen_mode (name, mode); - return (dlerror_run (do_dlopen, &args) ? NULL : (void *) args.map); -+#else -+ if (dlerror_run (do_dlopen, &args)) -+ return NULL; -+ -+ struct do_dlsym_args sargs; -+ sargs.map = args.map; -+ sargs.name = "_dl_open_hook"; -+ -+ if (! dlerror_run (do_dlsym_private, &sargs)) -+ { -+ struct dl_open_hook **hook -+ = (struct dl_open_hook **) -+ (DL_SYMBOL_ADDRESS (sargs.loadbase, sargs.ref)); -+ if (hook != NULL) -+ *hook = &_dl_open_hook; -+ } -+ -+ return (void *) args.map; -+#endif - } -+libc_hidden_def (__libc_dlopen_mode) - - void * - __libc_dlsym (void *map, const char *name) -@@ -115,15 +182,25 @@ - args.map = map; - args.name = name; - -+#ifdef SHARED -+ if (__builtin_expect (_dl_open_hook != NULL, 0)) -+ return _dl_open_hook->dlsym (map, name); -+#endif - return (dlerror_run (do_dlsym, &args) ? NULL - : (void *) (DL_SYMBOL_ADDRESS (args.loadbase, args.ref))); - } -+libc_hidden_def (__libc_dlsym) - - int - __libc_dlclose (void *map) - { -+#ifdef SHARED -+ if (__builtin_expect (_dl_open_hook != NULL, 0)) -+ return _dl_open_hook->dlclose (map); -+#endif - return dlerror_run (do_dlclose, map); - } -+libc_hidden_def (__libc_dlclose) - - - libc_freeres_fn (free_mem) ---- glibc-2.3.2/elf/dl-load.c 2003-01-16 13:14:41.000000000 -0500 -+++ glibc-2.3.2/elf/dl-load.c 2003-08-21 08:36:59.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Map in a shared object's segments from the file. -- Copyright (C) 1995,96,97,98,99,2000,2001,2002 Free Software Foundation, Inc. -+ Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -26,6 +26,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -97,19 +98,26 @@ - /* Type for the buffer we put the ELF header and hopefully the program - header. This buffer does not really have to be too large. In most - cases the program header follows the ELF header directly. If this -- is not the case all bets are off and we can make the header arbitrarily -- large and still won't get it read. This means the only question is -- how large are the ELF and program header combined. The ELF header -- in 64-bit files is 56 bytes long. Each program header entry is again -- 56 bytes long. I.e., even with a file which has 17 program header -- entries we only have to read 1kB. And 17 program header entries is -- plenty, normal files have < 10. If this heuristic should really fail -- for some file the code in `_dl_map_object_from_fd' knows how to -- recover. */ -+ is not the case all bets are off and we can make the header -+ arbitrarily large and still won't get it read. This means the only -+ question is how large are the ELF and program header combined. The -+ ELF header 32-bit files is 52 bytes long and in 64-bit files is 64 -+ bytes long. Each program header entry is again 32 and 56 bytes -+ long respectively. I.e., even with a file which has 7 program -+ header entries we only have to read 512B. Add to this a bit of -+ margin for program notes and reading 512B and 640B for 32-bit and -+ 64-bit files respecitvely is enough. If this heuristic should -+ really fail for some file the code in `_dl_map_object_from_fd' -+ knows how to recover. */ - struct filebuf - { - ssize_t len; -- char buf[1024] __attribute__ ((aligned (__alignof (ElfW(Ehdr))))); -+#if __WORDSIZE == 32 -+# define FILEBUF_SIZE 512 -+#else -+# define FILEBUF_SIZE 640 -+#endif -+ char buf[FILEBUF_SIZE] __attribute__ ((aligned (__alignof (ElfW(Ehdr))))); - }; - - /* This is the decomposed LD_LIBRARY_PATH search path. */ -@@ -353,7 +361,7 @@ - - static size_t max_dirnamelen; - --static inline struct r_search_path_elem ** -+static struct r_search_path_elem ** - fillin_rpath (char *rpath, struct r_search_path_elem **result, const char *sep, - int check_trusted, const char *what, const char *where) - { -@@ -568,6 +576,34 @@ - sps->malloced = 1; - } - -+/* Make sure cached path information is stored in *SP -+ and return true if there are any paths to search there. */ -+static bool -+cache_rpath (struct link_map *l, -+ struct r_search_path_struct *sp, -+ int tag, -+ const char *what) -+{ -+ if (sp->dirs == (void *) -1) -+ return false; -+ -+ if (sp->dirs != NULL) -+ return true; -+ -+ if (l->l_info[tag] == NULL) -+ { -+ /* There is no path. */ -+ sp->dirs = (void *) -1; -+ return false; -+ } -+ -+ /* Make sure the cache information is available. */ -+ decompose_rpath (sp, (const char *) (D_PTR (l, l_info[DT_STRTAB]) -+ + l->l_info[tag]->d_un.d_val), -+ l, what); -+ return true; -+} -+ - - void - internal_function -@@ -877,6 +913,7 @@ - int prot; - } loadcmds[l->l_phnum], *c; - size_t nloadcmds = 0; -+ bool has_holes = false; - - /* The struct is initialized to zero so this is not necessary: - l->l_ld = 0; -@@ -922,6 +959,11 @@ - c->allocend = ph->p_vaddr + ph->p_memsz; - c->mapoff = ph->p_offset & ~(ph->p_align - 1); - -+ /* Determine whether there is a gap between the last segment -+ and this one. */ -+ if (nloadcmds > 1 && c[-1].mapend != c->mapstart) -+ has_holes = true; -+ - /* Optimize a common case. */ - #if (PF_R | PF_W | PF_X) == 7 && (PROT_READ | PROT_WRITE | PROT_EXEC) == 7 - c->prot = (PF_TO_PROT -@@ -945,6 +987,10 @@ - - l->l_tls_blocksize = ph->p_memsz; - l->l_tls_align = ph->p_align; -+ if (ph->p_align == 0) -+ l->l_tls_firstbyte_offset = 0; -+ else -+ l->l_tls_firstbyte_offset = ph->p_vaddr & (ph->p_align - 1); - l->l_tls_initimage_size = ph->p_filesz; - /* Since we don't know the load address yet only store the - offset. We will adjust it later. */ -@@ -1014,6 +1060,15 @@ - break; - } - -+ if (__builtin_expect (nloadcmds == 0, 0)) -+ { -+ /* This only happens for a bogus object that will be caught with -+ another error below. But we don't want to go through the -+ calculations below using NLOADCMDS - 1. */ -+ errstring = N_("object file has no loadable segments"); -+ goto call_lose; -+ } -+ - /* Now process the load commands and map segments into memory. */ - c = loadcmds; - -@@ -1051,14 +1106,15 @@ - l->l_map_end = l->l_map_start + maplength; - l->l_addr = l->l_map_start - c->mapstart; - -- /* Change protection on the excess portion to disallow all access; -- the portions we do not remap later will be inaccessible as if -- unallocated. Then jump into the normal segment-mapping loop to -- handle the portion of the segment past the end of the file -- mapping. */ -- __mprotect ((caddr_t) (l->l_addr + c->mapend), -- loadcmds[nloadcmds - 1].allocend - c->mapend, -- PROT_NONE); -+ if (has_holes) -+ /* Change protection on the excess portion to disallow all access; -+ the portions we do not remap later will be inaccessible as if -+ unallocated. Then jump into the normal segment-mapping loop to -+ handle the portion of the segment past the end of the file -+ mapping. */ -+ __mprotect ((caddr_t) (l->l_addr + c->mapend), -+ loadcmds[nloadcmds - 1].allocend - c->mapend, -+ PROT_NONE); - - goto postmap; - } -@@ -1118,23 +1174,18 @@ - if (zeropage > zero) - { - /* Zero the final part of the last page of the segment. */ -- if ((c->prot & PROT_WRITE) == 0) -+ if (__builtin_expect ((c->prot & PROT_WRITE) == 0, 0)) - { - /* Dag nab it. */ -- if (__builtin_expect (__mprotect ((caddr_t) -- (zero -- & ~(GL(dl_pagesize) -- - 1)), -- GL(dl_pagesize), -- c->prot|PROT_WRITE) < 0, -- 0)) -+ if (__mprotect ((caddr_t) (zero & ~(GL(dl_pagesize) - 1)), -+ GL(dl_pagesize), c->prot|PROT_WRITE) < 0) - { - errstring = N_("cannot change memory protections"); - goto call_lose_errno; - } - } - memset ((void *) zero, '\0', zeropage - zero); -- if ((c->prot & PROT_WRITE) == 0) -+ if (__builtin_expect ((c->prot & PROT_WRITE) == 0, 0)) - __mprotect ((caddr_t) (zero & ~(GL(dl_pagesize) - 1)), - GL(dl_pagesize), c->prot); - } -@@ -1221,7 +1272,7 @@ - (unsigned long int) l->l_phdr, - (int) sizeof (void *) * 2, l->l_phnum); - -- elf_get_dynamic_info (l); -+ elf_get_dynamic_info (l, NULL); - - /* Make sure we are not dlopen'ing an object - that has the DF_1_NOOPEN flag set. */ -@@ -1728,29 +1779,9 @@ - /* First try the DT_RPATH of the dependent object that caused NAME - to be loaded. Then that object's dependent, and on up. */ - for (l = loader; fd == -1 && l; l = l->l_loader) -- { -- if (l->l_rpath_dirs.dirs == NULL) -- { -- if (l->l_info[DT_RPATH] == NULL) -- { -- /* There is no path. */ -- l->l_rpath_dirs.dirs = (void *) -1; -- continue; -- } -- else -- { -- /* Make sure the cache information is available. */ -- size_t ptrval = (D_PTR (l, l_info[DT_STRTAB]) -- + l->l_info[DT_RPATH]->d_un.d_val); -- decompose_rpath (&l->l_rpath_dirs, -- (const char *) ptrval, l, "RPATH"); -- } -- } -- -- if (l->l_rpath_dirs.dirs != (void *) -1) -- fd = open_path (name, namelen, preloaded, &l->l_rpath_dirs, -- &realname, &fb); -- } -+ if (cache_rpath (l, &l->l_rpath_dirs, DT_RPATH, "RPATH")) -+ fd = open_path (name, namelen, preloaded, &l->l_rpath_dirs, -+ &realname, &fb); - - /* If dynamically linked, try the DT_RPATH of the executable - itself. */ -@@ -1766,37 +1797,12 @@ - fd = open_path (name, namelen, preloaded, &env_path_list, - &realname, &fb); - -- /* Look at the RUNPATH information for this binary. -- -- Note that this is no real loop. 'while' is used only to enable -- us to use 'break' instead of a 'goto' to jump to the end. The -- loop is always left after the first round. */ -- while (fd == -1 && loader != NULL -- && loader->l_runpath_dirs.dirs != (void *) -1) -- { -- if (loader->l_runpath_dirs.dirs == NULL) -- { -- if (loader->l_info[DT_RUNPATH] == NULL) -- { -- /* No RUNPATH. */ -- loader->l_runpath_dirs.dirs = (void *) -1; -- break; -- } -- else -- { -- /* Make sure the cache information is available. */ -- size_t ptrval = (D_PTR (loader, l_info[DT_STRTAB]) -- + loader->l_info[DT_RUNPATH]->d_un.d_val); -- decompose_rpath (&loader->l_runpath_dirs, -- (const char *) ptrval, loader, "RUNPATH"); -- } -- } -- -- if (loader->l_runpath_dirs.dirs != (void *) -1) -- fd = open_path (name, namelen, preloaded, -- &loader->l_runpath_dirs, &realname, &fb); -- break; -- } -+ /* Look at the RUNPATH information for this binary. */ -+ if (fd == -1 && loader != NULL -+ && cache_rpath (loader, &loader->l_runpath_dirs, -+ DT_RUNPATH, "RUNPATH")) -+ fd = open_path (name, namelen, preloaded, -+ &loader->l_runpath_dirs, &realname, &fb); - - if (fd == -1 - && (__builtin_expect (! preloaded, 1) -@@ -1920,3 +1926,86 @@ - return _dl_map_object_from_fd (name, fd, &fb, realname, loader, type, mode); - } - INTDEF (_dl_map_object) -+ -+void -+internal_function -+_dl_rtld_di_serinfo (struct link_map *loader, Dl_serinfo *si, bool counting) -+{ -+ if (counting) -+ { -+ si->dls_cnt = 0; -+ si->dls_size = 0; -+ } -+ -+ unsigned int idx = 0; -+ char *allocptr = (char *) &si->dls_serpath[si->dls_cnt]; -+ void add_path (const struct r_search_path_struct *sps, unsigned int flags) -+# define add_path(sps, flags) add_path(sps, 0) /* XXX */ -+ { -+ if (sps->dirs != (void *) -1) -+ { -+ struct r_search_path_elem **dirs = sps->dirs; -+ do -+ { -+ const struct r_search_path_elem *const r = *dirs++; -+ if (counting) -+ { -+ si->dls_cnt++; -+ si->dls_size += r->dirnamelen; -+ } -+ else -+ { -+ Dl_serpath *const sp = &si->dls_serpath[idx++]; -+ sp->dls_name = allocptr; -+ allocptr = __mempcpy (allocptr, -+ r->dirname, r->dirnamelen - 1); -+ *allocptr++ = '\0'; -+ sp->dls_flags = flags; -+ } -+ } -+ while (*dirs != NULL); -+ } -+ } -+ -+ /* When the object has the RUNPATH information we don't use any RPATHs. */ -+ if (loader->l_info[DT_RUNPATH] == NULL) -+ { -+ /* First try the DT_RPATH of the dependent object that caused NAME -+ to be loaded. Then that object's dependent, and on up. */ -+ -+ struct link_map *l = loader; -+ do -+ { -+ if (cache_rpath (l, &l->l_rpath_dirs, DT_RPATH, "RPATH")) -+ add_path (&l->l_rpath_dirs, XXX_RPATH); -+ l = l->l_loader; -+ } -+ while (l != NULL); -+ -+ /* If dynamically linked, try the DT_RPATH of the executable itself. */ -+ l = GL(dl_loaded); -+ if (l != NULL && l->l_type != lt_loaded && l != loader) -+ if (cache_rpath (l, &l->l_rpath_dirs, DT_RPATH, "RPATH")) -+ add_path (&l->l_rpath_dirs, XXX_RPATH); -+ } -+ -+ /* Try the LD_LIBRARY_PATH environment variable. */ -+ add_path (&env_path_list, XXX_ENV); -+ -+ /* Look at the RUNPATH information for this binary. */ -+ if (cache_rpath (loader, &loader->l_runpath_dirs, DT_RUNPATH, "RUNPATH")) -+ add_path (&loader->l_runpath_dirs, XXX_RUNPATH); -+ -+ /* XXX -+ Here is where ld.so.cache gets checked, but we don't have -+ a way to indicate that in the results for Dl_serinfo. */ -+ -+ /* Finally, try the default path. */ -+ if (!(loader->l_flags_1 & DF_1_NODEFLIB)) -+ add_path (&rtld_search_dirs, XXX_default); -+ -+ if (counting) -+ /* Count the struct size before the string area, which we didn't -+ know before we completed dls_cnt. */ -+ si->dls_size += (char *) &si->dls_serpath[si->dls_cnt] - (char *) si; -+} ---- glibc-2.3.2/elf/dl-lookup.c 2003-01-11 04:51:49.000000000 -0500 -+++ glibc-2.3.2/elf/dl-lookup.c 2003-08-21 08:36:59.000000000 -0400 -@@ -273,17 +273,30 @@ - { - /* It is very tricky. We need to figure out what value to - return for the protected symbol. */ -- struct sym_val protected_value = { NULL, NULL }; -- -- for (scope = symbol_scope; *scope; ++scope) -- if (_dl_do_lookup (undef_name, hash, *ref, &protected_value, *scope, -- 0, flags, NULL, ELF_RTYPE_CLASS_PLT)) -- break; -- -- if (protected_value.s != NULL && protected_value.m != undef_map) -+ if (type_class == ELF_RTYPE_CLASS_PLT) - { -- current_value.s = *ref; -- current_value.m = undef_map; -+ if (current_value.s != NULL && current_value.m != undef_map) -+ { -+ current_value.s = *ref; -+ current_value.m = undef_map; -+ } -+ } -+ else -+ { -+ struct sym_val protected_value = { NULL, NULL }; -+ -+ for (scope = symbol_scope; *scope; ++scope) -+ if (_dl_do_lookup (undef_name, hash, *ref, -+ &protected_value, *scope, 0, flags, -+ NULL, ELF_RTYPE_CLASS_PLT)) -+ break; -+ -+ if (protected_value.s != NULL -+ && protected_value.m != undef_map) -+ { -+ current_value.s = *ref; -+ current_value.m = undef_map; -+ } - } - } - -@@ -465,18 +478,31 @@ - { - /* It is very tricky. We need to figure out what value to - return for the protected symbol. */ -- struct sym_val protected_value = { NULL, NULL }; -- -- for (scope = symbol_scope; *scope; ++scope) -- if (_dl_do_lookup_versioned (undef_name, hash, *ref, &protected_value, -- *scope, 0, version, NULL, -- ELF_RTYPE_CLASS_PLT)) -- break; -- -- if (protected_value.s != NULL && protected_value.m != undef_map) -+ if (type_class == ELF_RTYPE_CLASS_PLT) - { -- current_value.s = *ref; -- current_value.m = undef_map; -+ if (current_value.s != NULL && current_value.m != undef_map) -+ { -+ current_value.s = *ref; -+ current_value.m = undef_map; -+ } -+ } -+ else -+ { -+ struct sym_val protected_value = { NULL, NULL }; -+ -+ for (scope = symbol_scope; *scope; ++scope) -+ if (_dl_do_lookup_versioned (undef_name, hash, *ref, -+ &protected_value, -+ *scope, 0, version, NULL, -+ ELF_RTYPE_CLASS_PLT)) -+ break; -+ -+ if (protected_value.s != NULL -+ && protected_value.m != undef_map) -+ { -+ current_value.s = *ref; -+ current_value.m = undef_map; -+ } - } - } - -@@ -678,20 +704,21 @@ - { - _dl_printf ("%s 0x%0*Zx 0x%0*Zx -> 0x%0*Zx 0x%0*Zx ", - conflict ? "conflict" : "lookup", -- (int) sizeof (ElfW(Addr)) * 2, undef_map->l_map_start, - (int) sizeof (ElfW(Addr)) * 2, -- ((ElfW(Addr)) *ref) - undef_map->l_map_start, -+ (size_t) undef_map->l_map_start, -+ (int) sizeof (ElfW(Addr)) * 2, -+ (size_t) (((ElfW(Addr)) *ref) - undef_map->l_map_start), - (int) sizeof (ElfW(Addr)) * 2, -- (ElfW(Addr)) (value->s ? value->m->l_map_start : 0), -+ (size_t) (value->s ? value->m->l_map_start : 0), - (int) sizeof (ElfW(Addr)) * 2, -- (ElfW(Addr)) (value->s ? value->s->st_value : 0)); -+ (size_t) (value->s ? value->s->st_value : 0)); - - if (conflict) - _dl_printf ("x 0x%0*Zx 0x%0*Zx ", - (int) sizeof (ElfW(Addr)) * 2, -- (ElfW(Addr)) (val.s ? val.m->l_map_start : 0), -+ (size_t) (val.s ? val.m->l_map_start : 0), - (int) sizeof (ElfW(Addr)) * 2, -- (ElfW(Addr)) (val.s ? val.s->st_value : 0)); -+ (size_t) (val.s ? val.s->st_value : 0)); - - _dl_printf ("/%x %s\n", type_class, undef_name); - } ---- glibc-2.3.2/elf/dl-object.c 2003-01-10 03:23:58.000000000 -0500 -+++ glibc-2.3.2/elf/dl-object.c 2003-04-28 08:20:35.000000000 -0400 -@@ -53,6 +53,10 @@ - new->l_name = realname; - new->l_type = type; - new->l_loader = loader; -+#if defined USE_TLS && NO_TLS_OFFSET != 0 -+ new->l_tls_offset = NO_TLS_OFFSET; -+#endif -+ - /* new->l_global = 0; We use calloc therefore not necessary. */ - - /* Use the 'l_scope_mem' array by default for the the 'l_scope' ---- glibc-2.3.2/elf/dl-open.c 2003-01-27 19:47:52.000000000 -0500 -+++ glibc-2.3.2/elf/dl-open.c 2003-08-21 08:36:59.000000000 -0400 -@@ -303,6 +303,16 @@ - } - - #ifdef USE_TLS -+ /* Do static TLS initialization now if it has been delayed because -+ the TLS template might not be fully relocated at _dl_allocate_static_tls -+ time. */ -+ for (l = new; l; l = l->l_next) -+ if (l->l_need_tls_init) -+ { -+ l->l_need_tls_init = 0; -+ GL(dl_init_static_tls) (l); -+ } -+ - /* We normally don't bump the TLS generation counter. There must be - actually a need to do this. */ - any_tls = false; ---- glibc-2.3.2/elf/dl-profile.c 2002-08-02 17:46:57.000000000 -0400 -+++ glibc-2.3.2/elf/dl-profile.c 2003-04-12 11:39:42.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Profiling of shared libraries. -- Copyright (C) 1997,1998,1999,2000,2001,2002 Free Software Foundation, Inc. -+ Copyright (C) 1997-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1997. - Based on the BSD mcount implementation. -@@ -34,7 +34,7 @@ - #include - #include - #include --#include -+#include - - /* The LD_PROFILE feature has to be implemented different to the - normal profiling using the gmon/ functions. The problem is that an -@@ -516,24 +516,24 @@ - size_t newfromidx; - to_index = (data[narcs].self_pc - / (hashfraction * sizeof (*tos))); -- newfromidx = exchange_and_add (&fromidx, 1) + 1; -+ newfromidx = atomic_exchange_and_add (&fromidx, 1) + 1; - froms[newfromidx].here = &data[narcs]; - froms[newfromidx].link = tos[to_index]; - tos[to_index] = newfromidx; -- atomic_add (&narcs, 1); -+ atomic_increment (&narcs); - } - - /* If we still have no entry stop searching and insert. */ - if (*topcindex == 0) - { -- uint_fast32_t newarc = exchange_and_add (narcsp, 1); -+ uint_fast32_t newarc = atomic_exchange_and_add (narcsp, 1); - - /* In rare cases it could happen that all entries in FROMS are - occupied. So we cannot count this anymore. */ - if (newarc >= fromlimit) - goto done; - -- *topcindex = exchange_and_add (&fromidx, 1) + 1; -+ *topcindex = atomic_exchange_and_add (&fromidx, 1) + 1; - fromp = &froms[*topcindex]; - - fromp->here = &data[newarc]; -@@ -541,7 +541,7 @@ - data[newarc].self_pc = selfpc; - data[newarc].count = 0; - fromp->link = 0; -- atomic_add (&narcs, 1); -+ atomic_increment (&narcs); - - break; - } -@@ -554,7 +554,7 @@ - } - - /* Increment the counter. */ -- atomic_add (&fromp->here->count, 1); -+ atomic_increment (&fromp->here->count); - - done: - ; ---- glibc-2.3.2/elf/dl-reloc.c 2003-01-30 12:35:50.000000000 -0500 -+++ glibc-2.3.2/elf/dl-reloc.c 2003-08-21 08:36:59.000000000 -0400 -@@ -40,27 +40,83 @@ - dynamically loaded. This can only work if there is enough surplus in - the static TLS area already allocated for each running thread. If this - object's TLS segment is too big to fit, we fail. If it fits, -- we set MAP->l_tls_offset and return. */ --static void __attribute_noinline__ --allocate_static_tls (struct link_map *map) -+ we set MAP->l_tls_offset and return. -+ This function intentionally does not return any value but signals error -+ directly, as static TLS should be rare and code handling it should -+ not be inlined as much as possible. */ -+void -+internal_function __attribute_noinline__ -+_dl_allocate_static_tls (struct link_map *map) - { -- size_t offset = roundup (GL(dl_tls_static_used), map->l_tls_align); -- if (offset + map->l_tls_blocksize -+ size_t offset; -+ size_t used; -+ size_t check; -+ size_t freebytes; -+ size_t n; -+ size_t blsize; -+ -+ /* If the alignment requirements are too high fail. */ -+ if (map->l_tls_align > GL(dl_tls_static_align)) -+ { -+ fail: -+ INTUSE(_dl_signal_error) (0, map->l_name, NULL, N_("\ -+cannot allocate memory in static TLS block")); -+ } -+ - # if TLS_TCB_AT_TP -- + TLS_TCB_SIZE -+ freebytes = GL(dl_tls_static_size) - GL(dl_tls_static_used) - TLS_TCB_SIZE; -+ -+ blsize = map->l_tls_blocksize + map->l_tls_firstbyte_offset; -+ if (freebytes < blsize) -+ goto fail; -+ -+ n = (freebytes - blsize) / map->l_tls_align; -+ -+ offset = GL(dl_tls_static_used) + (freebytes - n * map->l_tls_align -+ - map->l_tls_firstbyte_offset); -+ -+ map->l_tls_offset = GL(dl_tls_static_used) = offset; - # elif TLS_DTV_AT_TP -+ offset = roundup (GL(dl_tls_static_used), map->l_tls_align); -+ used = offset + map->l_tls_blocksize; -+ check = used; - /* dl_tls_static_used includes the TCB at the beginning. */ -+ -+ if (check > GL(dl_tls_static_size)) -+ goto fail; -+ -+ map->l_tls_offset = offset; -+ GL(dl_tls_static_used) = used; - # else - # error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined" - # endif -- > GL(dl_tls_static_size)) -- { -- const char *errstring = N_("\ --shared object cannot be dlopen()ed: static TLS memory too small"); -- INTUSE(_dl_signal_error) (0, (map)->l_name, NULL, errstring); -- } -- map->l_tls_offset = offset; -- GL(dl_tls_static_used) = offset + map->l_tls_blocksize; -+ -+ if (map->l_relocated) -+ GL(dl_init_static_tls) (map); -+ else -+ map->l_need_tls_init = 1; -+} -+ -+/* Initialize static TLS area and DTV for current (only) thread. -+ libpthread implementations should provide their own hook -+ to handle all threads. */ -+void -+_dl_nothread_init_static_tls (struct link_map *map) -+{ -+# if TLS_TCB_AT_TP -+ void *dest = (char *) THREAD_SELF - map->l_tls_offset; -+# elif TLS_DTV_AT_TP -+ void *dest = (char *) THREAD_SELF + map->l_tls_offset + TLS_PRE_TCB_SIZE; -+# else -+# error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined" -+# endif -+ -+ /* Fill in the DTV slot so that a later LD/GD access will find it. */ -+ THREAD_DTV ()[map->l_tls_modid].pointer = dest; -+ -+ /* Initialize the memory. */ -+ memset (__mempcpy (dest, map->l_tls_initimage, map->l_tls_initimage_size), -+ '\0', map->l_tls_blocksize - map->l_tls_initimage_size); - } - #endif - -@@ -200,8 +256,8 @@ - intended to produce. */ - #define CHECK_STATIC_TLS(map, sym_map) \ - do { \ -- if (__builtin_expect ((sym_map)->l_tls_offset == 0, 0)) \ -- allocate_static_tls (sym_map); \ -+ if (__builtin_expect ((sym_map)->l_tls_offset == NO_TLS_OFFSET, 0)) \ -+ _dl_allocate_static_tls (sym_map); \ - } while (0) - - #include "dynamic-link.h" ---- glibc-2.3.2/elf/dl-support.c 2003-01-30 12:31:18.000000000 -0500 -+++ glibc-2.3.2/elf/dl-support.c 2003-08-21 08:36:59.000000000 -0400 -@@ -98,6 +98,10 @@ - hp_timing_t _dl_cpuclock_offset; - #endif - -+#ifdef USE_TLS -+void (*_dl_init_static_tls) (struct link_map *) = &_dl_nothread_init_static_tls; -+#endif -+ - /* This is zero at program start to signal that the global scope map is - allocated by rtld. Later it keeps the size of the map. It might be - reset if in _dl_close if the last global object is removed. */ -@@ -121,12 +125,15 @@ - - int _dl_correct_cache_id = _DL_CACHE_DEFAULT_ID; - --struct ElfW(Phdr) *_dl_phdr; -+ElfW(Phdr) *_dl_phdr; - size_t _dl_phnum; -+unsigned long int _dl_hwcap __attribute__ ((nocommon)); - - #ifdef NEED_DL_SYSINFO - /* Needed for improved syscall handling on at least x86/Linux. */ - uintptr_t _dl_sysinfo = DL_SYSINFO_DEFAULT; -+/* Address of the ELF headers in the vsyscall page. */ -+const ElfW(Ehdr) *_dl_sysinfo_dso; - #endif - - /* During the program run we must not modify the global data of -@@ -146,6 +153,10 @@ - internal_function - _dl_aux_init (ElfW(auxv_t) *av) - { -+ int seen = 0; -+ uid_t uid = 0; -+ gid_t gid = 0; -+ - for (; av->a_type != AT_NULL; ++av) - switch (av->a_type) - { -@@ -161,12 +172,41 @@ - case AT_PHNUM: - GL(dl_phnum) = av->a_un.a_val; - break; -+ case AT_HWCAP: -+ GL(dl_hwcap) = av->a_un.a_val; -+ break; - #ifdef NEED_DL_SYSINFO - case AT_SYSINFO: - GL(dl_sysinfo) = av->a_un.a_val; - break; - #endif -+ case AT_UID: -+ uid ^= av->a_un.a_val; -+ seen |= 1; -+ break; -+ case AT_EUID: -+ uid ^= av->a_un.a_val; -+ seen |= 2; -+ break; -+ case AT_GID: -+ gid ^= av->a_un.a_val; -+ seen |= 4; -+ break; -+ case AT_EGID: -+ gid ^= av->a_un.a_val; -+ seen |= 8; -+ break; -+ case AT_SECURE: -+ seen = -1; -+ __libc_enable_secure = av->a_un.a_val; -+ __libc_enable_secure_decided = 1; -+ break; - } -+ if (seen == 0xf) -+ { -+ __libc_enable_secure = uid != 0 || gid != 0; -+ __libc_enable_secure_decided = 1; -+ } - } - #endif - ---- glibc-2.3.2/elf/dl-version.c 2002-03-11 03:31:59.000000000 -0500 -+++ glibc-2.3.2/elf/dl-version.c 2003-08-21 08:36:59.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Handle symbol and library versioning. -- Copyright (C) 1997,1998,1999,2000,2001,2002 Free Software Foundation, Inc. -+ Copyright (C) 1997-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1997. - -@@ -53,6 +53,7 @@ - - - static inline struct link_map * -+__attribute ((always_inline)) - find_needed (const char *name, struct link_map *map) - { - struct link_map *tmap; ---- glibc-2.3.2/elf/do-lookup.h 2002-04-13 03:32:17.000000000 -0400 -+++ glibc-2.3.2/elf/do-lookup.h 2003-08-21 08:36:59.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Look up a symbol in the loaded objects. -- Copyright (C) 1995,96,97,98,99,2000,2001,2002 Free Software Foundation, Inc. -+ Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -28,7 +28,7 @@ - /* Inner part of the lookup functions. We return a value > 0 if we - found the symbol, the value 0 if nothing is found and < 0 if - something bad happened. */ --static inline int -+static int - FCT (const char *undef_name, unsigned long int hash, const ElfW(Sym) *ref, - struct sym_val *result, struct r_scope_elem *scope, size_t i, ARG, - struct link_map *skip, int type_class) ---- glibc-2.3.2/elf/dynamic-link.h 2003-01-30 12:35:50.000000000 -0500 -+++ glibc-2.3.2/elf/dynamic-link.h 2003-08-21 08:36:59.000000000 -0400 -@@ -21,20 +21,30 @@ - #include - - #ifdef RESOLVE -+/* We pass reloc_addr as a pointer to void, as opposed to a pointer to -+ ElfW(Addr), because not all architectures can assume that the -+ relocated address is properly aligned, whereas the compiler is -+ entitled to assume that a pointer to a type is properly aligned for -+ the type. Even if we cast the pointer back to some other type with -+ less strict alignment requirements, the compiler might still -+ remember that the pointer was originally more aligned, thereby -+ optimizing away alignment tests or using word instructions for -+ copying memory, breaking the very code written to handle the -+ unaligned cases. */ - auto void __attribute__((always_inline)) - elf_machine_rel (struct link_map *map, const ElfW(Rel) *reloc, - const ElfW(Sym) *sym, const struct r_found_version *version, -- ElfW(Addr) *const reloc_addr); -+ void *const reloc_addr); - auto void __attribute__((always_inline)) - elf_machine_rela (struct link_map *map, const ElfW(Rela) *reloc, - const ElfW(Sym) *sym, const struct r_found_version *version, -- ElfW(Addr) *const reloc_addr); -+ void *const reloc_addr); - auto void __attribute__((always_inline)) - elf_machine_rel_relative (ElfW(Addr) l_addr, const ElfW(Rel) *reloc, -- ElfW(Addr) *const reloc_addr); -+ void *const reloc_addr); - auto void __attribute__((always_inline)) - elf_machine_rela_relative (ElfW(Addr) l_addr, const ElfW(Rela) *reloc, -- ElfW(Addr) *const reloc_addr); -+ void *const reloc_addr); - # if ELF_MACHINE_NO_RELA || defined ELF_MACHINE_PLT_REL - auto void __attribute__((always_inline)) - elf_machine_lazy_rel (struct link_map *map, -@@ -56,7 +66,7 @@ - /* Read the dynamic section at DYN and fill in INFO with indices DT_*. */ - - static inline void __attribute__ ((unused, always_inline)) --elf_get_dynamic_info (struct link_map *l) -+elf_get_dynamic_info (struct link_map *l, ElfW(Dyn) *temp) - { - ElfW(Dyn) *dyn = l->l_ld; - ElfW(Dyn) **info; -@@ -88,32 +98,45 @@ - + DT_VERSIONTAGNUM + DT_EXTRANUM + DT_VALNUM] = dyn; - ++dyn; - } -+ -+#define DL_RO_DYN_TEMP_CNT 8 -+ - #ifndef DL_RO_DYN_SECTION - /* Don't adjust .dynamic unnecessarily. */ - if (l->l_addr != 0) - { - ElfW(Addr) l_addr = l->l_addr; -+ int cnt = 0; -+ -+# define ADJUST_DYN_INFO(tag) \ -+ do \ -+ if (info[tag] != NULL) \ -+ { \ -+ if (temp) \ -+ { \ -+ temp[cnt].d_tag = info[tag]->d_tag; \ -+ temp[cnt].d_un.d_ptr = info[tag]->d_un.d_ptr + l_addr; \ -+ info[tag] = temp + cnt++; \ -+ } \ -+ else \ -+ info[tag]->d_un.d_ptr += l_addr; \ -+ } \ -+ while (0) - -- if (info[DT_HASH] != NULL) -- info[DT_HASH]->d_un.d_ptr += l_addr; -- if (info[DT_PLTGOT] != NULL) -- info[DT_PLTGOT]->d_un.d_ptr += l_addr; -- if (info[DT_STRTAB] != NULL) -- info[DT_STRTAB]->d_un.d_ptr += l_addr; -- if (info[DT_SYMTAB] != NULL) -- info[DT_SYMTAB]->d_un.d_ptr += l_addr; -+ ADJUST_DYN_INFO (DT_HASH); -+ ADJUST_DYN_INFO (DT_PLTGOT); -+ ADJUST_DYN_INFO (DT_STRTAB); -+ ADJUST_DYN_INFO (DT_SYMTAB); - # if ! ELF_MACHINE_NO_RELA -- if (info[DT_RELA] != NULL) -- info[DT_RELA]->d_un.d_ptr += l_addr; -+ ADJUST_DYN_INFO (DT_RELA); - # endif - # if ! ELF_MACHINE_NO_REL -- if (info[DT_REL] != NULL) -- info[DT_REL]->d_un.d_ptr += l_addr; -+ ADJUST_DYN_INFO (DT_REL); - # endif -- if (info[DT_JMPREL] != NULL) -- info[DT_JMPREL]->d_un.d_ptr += l_addr; -- if (info[VERSYMIDX (DT_VERSYM)] != NULL) -- info[VERSYMIDX (DT_VERSYM)]->d_un.d_ptr += l_addr; -+ ADJUST_DYN_INFO (DT_JMPREL); -+ ADJUST_DYN_INFO (VERSYMIDX (DT_VERSYM)); -+# undef ADJUST_DYN_INFO -+ assert (cnt <= DL_RO_DYN_TEMP_CNT); - } - #endif - if (info[DT_PLTREL] != NULL) ---- glibc-2.3.2/elf/elf.h 2003-02-25 18:40:08.000000000 -0500 -+++ glibc-2.3.2/elf/elf.h 2003-08-21 08:36:59.000000000 -0400 -@@ -1,5 +1,5 @@ - /* This file defines standard ELF types, structures, and macros. -- Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1995-1999,2000,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -558,6 +558,7 @@ - #define PT_NUM 8 /* Number of defined types */ - #define PT_LOOS 0x60000000 /* Start of OS-specific */ - #define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */ -+#define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */ - #define PT_LOSUNW 0x6ffffffa - #define PT_SUNWBSS 0x6ffffffa /* Sun Specific segment */ - #define PT_SUNWSTACK 0x6ffffffb /* Stack segment */ -@@ -944,11 +945,14 @@ - - /* A special ignored value for PPC, used by the kernel to control the - interpretation of the AUXV. Must be > 16. */ --#define AT_IGNOREPPC 22 /* Entry should be ignored */ -+#define AT_IGNOREPPC 22 /* Entry should be ignored. */ -+ -+#define AT_SECURE 23 /* Boolean, was exec setuid-like? */ - - /* Pointer to the global system page used for system calls and other - nice things. */ - #define AT_SYSINFO 32 -+#define AT_SYSINFO_EHDR 33 - - - /* Note section contents. Each entry in the note section begins with -@@ -1881,122 +1885,39 @@ - #define R_PPC_SECTOFF_LO 34 - #define R_PPC_SECTOFF_HI 35 - #define R_PPC_SECTOFF_HA 36 --/* Keep this the last entry. */ --#define R_PPC_NUM 37 - --/* PowerPC64 relocations defined by the ABIs */ --#define R_PPC64_NONE R_PPC_NONE --#define R_PPC64_ADDR32 R_PPC_ADDR32 /* 32bit absolute address. */ --#define R_PPC64_ADDR24 R_PPC_ADDR24 /* 26bit address, word aligned. */ --#define R_PPC64_ADDR16 R_PPC_ADDR16 /* 16bit absolute address. */ --#define R_PPC64_ADDR16_LO R_PPC_ADDR16_LO /* lower 16bits of abs. address. */ --#define R_PPC64_ADDR16_HI R_PPC_ADDR16_HI /* high 16bits of abs. address. */ --#define R_PPC64_ADDR16_HA R_PPC_ADDR16_HA /* adjusted high 16bits. */ --#define R_PPC64_ADDR14 R_PPC_ADDR14 /* 16bit address, word aligned. */ --#define R_PPC64_ADDR14_BRTAKEN R_PPC_ADDR14_BRTAKEN --#define R_PPC64_ADDR14_BRNTAKEN R_PPC_ADDR14_BRNTAKEN --#define R_PPC64_REL24 R_PPC_REL24 /* PC relative 26 bit, word aligned. */ --#define R_PPC64_REL14 R_PPC_REL14 /* PC relative 16 bit. */ --#define R_PPC64_REL14_BRTAKEN R_PPC_REL14_BRTAKEN --#define R_PPC64_REL14_BRNTAKEN R_PPC_REL14_BRNTAKEN --#define R_PPC64_GOT16 R_PPC_GOT16 --#define R_PPC64_GOT16_LO R_PPC_GOT16_LO --#define R_PPC64_GOT16_HI R_PPC_GOT16_HI --#define R_PPC64_GOT16_HA R_PPC_GOT16_HA -- --#define R_PPC64_COPY R_PPC_COPY --#define R_PPC64_GLOB_DAT R_PPC_GLOB_DAT --#define R_PPC64_JMP_SLOT R_PPC_JMP_SLOT --#define R_PPC64_RELATIVE R_PPC_RELATIVE -- --#define R_PPC64_UADDR32 R_PPC_UADDR32 --#define R_PPC64_UADDR16 R_PPC_UADDR16 --#define R_PPC64_REL32 R_PPC_REL32 --#define R_PPC64_PLT32 R_PPC_PLT32 --#define R_PPC64_PLTREL32 R_PPC_PLTREL32 --#define R_PPC64_PLT16_LO R_PPC_PLT16_LO --#define R_PPC64_PLT16_HI R_PPC_PLT16_HI --#define R_PPC64_PLT16_HA R_PPC_PLT16_HA -- --#define R_PPC64_SECTOFF R_PPC_SECTOFF --#define R_PPC64_SECTOFF_LO R_PPC_SECTOFF_LO --#define R_PPC64_SECTOFF_HI R_PPC_SECTOFF_HI --#define R_PPC64_SECTOFF_HA R_PPC_SECTOFF_HA --#define R_PPC64_ADDR30 37 /* word30 (S + A - P) >> 2. */ --#define R_PPC64_ADDR64 38 /* doubleword64 S + A. */ --#define R_PPC64_ADDR16_HIGHER 39 /* half16 #higher(S + A). */ --#define R_PPC64_ADDR16_HIGHERA 40 /* half16 #highera(S + A). */ --#define R_PPC64_ADDR16_HIGHEST 41 /* half16 #highest(S + A). */ --#define R_PPC64_ADDR16_HIGHESTA 42 /* half16 #highesta(S + A). */ --#define R_PPC64_UADDR64 43 /* doubleword64 S + A. */ --#define R_PPC64_REL64 44 /* doubleword64 S + A - P. */ --#define R_PPC64_PLT64 45 /* doubleword64 L + A. */ --#define R_PPC64_PLTREL64 46 /* doubleword64 L + A - P. */ --#define R_PPC64_TOC16 47 /* half16* S + A - .TOC. */ --#define R_PPC64_TOC16_LO 48 /* half16 #lo(S + A - .TOC.). */ --#define R_PPC64_TOC16_HI 49 /* half16 #hi(S + A - .TOC.). */ --#define R_PPC64_TOC16_HA 50 /* half16 #ha(S + A - .TOC.). */ --#define R_PPC64_TOC 51 /* doubleword64 .TOC. */ --#define R_PPC64_PLTGOT16 52 /* half16* M + A. */ --#define R_PPC64_PLTGOT16_LO 53 /* half16 #lo(M + A). */ --#define R_PPC64_PLTGOT16_HI 54 /* half16 #hi(M + A). */ --#define R_PPC64_PLTGOT16_HA 55 /* half16 #ha(M + A). */ -- --#define R_PPC64_ADDR16_DS 56 /* half16ds* (S + A) >> 2. */ --#define R_PPC64_ADDR16_LO_DS 57 /* half16ds #lo(S + A) >> 2. */ --#define R_PPC64_GOT16_DS 58 /* half16ds* (G + A) >> 2. */ --#define R_PPC64_GOT16_LO_DS 59 /* half16ds #lo(G + A) >> 2. */ --#define R_PPC64_PLT16_LO_DS 60 /* half16ds #lo(L + A) >> 2. */ --#define R_PPC64_SECTOFF_DS 61 /* half16ds* (R + A) >> 2. */ --#define R_PPC64_SECTOFF_LO_DS 62 /* half16ds #lo(R + A) >> 2. */ --#define R_PPC64_TOC16_DS 63 /* half16ds* (S + A - .TOC.) >> 2. */ --#define R_PPC64_TOC16_LO_DS 64 /* half16ds #lo(S + A - .TOC.) >> 2. */ --#define R_PPC64_PLTGOT16_DS 65 /* half16ds* (M + A) >> 2. */ --#define R_PPC64_PLTGOT16_LO_DS 66 /* half16ds #lo(M + A) >> 2. */ -+/* PowerPC relocations defined for the TLS access ABI. */ -+#define R_PPC_TLS 67 /* none (sym+add)@tls */ -+#define R_PPC_DTPMOD32 68 /* word32 (sym+add)@dtpmod */ -+#define R_PPC_TPREL16 69 /* half16* (sym+add)@tprel */ -+#define R_PPC_TPREL16_LO 70 /* half16 (sym+add)@tprel@l */ -+#define R_PPC_TPREL16_HI 71 /* half16 (sym+add)@tprel@h */ -+#define R_PPC_TPREL16_HA 72 /* half16 (sym+add)@tprel@ha */ -+#define R_PPC_TPREL32 73 /* word32 (sym+add)@tprel */ -+#define R_PPC_DTPREL16 74 /* half16* (sym+add)@dtprel */ -+#define R_PPC_DTPREL16_LO 75 /* half16 (sym+add)@dtprel@l */ -+#define R_PPC_DTPREL16_HI 76 /* half16 (sym+add)@dtprel@h */ -+#define R_PPC_DTPREL16_HA 77 /* half16 (sym+add)@dtprel@ha */ -+#define R_PPC_DTPREL32 78 /* word32 (sym+add)@dtprel */ -+#define R_PPC_GOT_TLSGD16 79 /* half16* (sym+add)@got@tlsgd */ -+#define R_PPC_GOT_TLSGD16_LO 80 /* half16 (sym+add)@got@tlsgd@l */ -+#define R_PPC_GOT_TLSGD16_HI 81 /* half16 (sym+add)@got@tlsgd@h */ -+#define R_PPC_GOT_TLSGD16_HA 82 /* half16 (sym+add)@got@tlsgd@ha */ -+#define R_PPC_GOT_TLSLD16 83 /* half16* (sym+add)@got@tlsld */ -+#define R_PPC_GOT_TLSLD16_LO 84 /* half16 (sym+add)@got@tlsld@l */ -+#define R_PPC_GOT_TLSLD16_HI 85 /* half16 (sym+add)@got@tlsld@h */ -+#define R_PPC_GOT_TLSLD16_HA 86 /* half16 (sym+add)@got@tlsld@ha */ -+#define R_PPC_GOT_TPREL16 87 /* half16* (sym+add)@got@tprel */ -+#define R_PPC_GOT_TPREL16_LO 88 /* half16 (sym+add)@got@tprel@l */ -+#define R_PPC_GOT_TPREL16_HI 89 /* half16 (sym+add)@got@tprel@h */ -+#define R_PPC_GOT_TPREL16_HA 90 /* half16 (sym+add)@got@tprel@ha */ -+#define R_PPC_GOT_DTPREL16 91 /* half16* (sym+add)@got@dtprel */ -+#define R_PPC_GOT_DTPREL16_LO 92 /* half16* (sym+add)@got@dtprel@l */ -+#define R_PPC_GOT_DTPREL16_HI 93 /* half16* (sym+add)@got@dtprel@h */ -+#define R_PPC_GOT_DTPREL16_HA 94 /* half16* (sym+add)@got@dtprel@ha */ - --/* PowerPC64 relocations defined for the TLS access ABI. */ --#define R_PPC64_TLS 67 /* none (sym+add)@tls. */ --#define R_PPC64_DTPMOD64 68 /* doubleword64 (sym+add)@dtpmod. */ --#define R_PPC64_TPREL16 69 /* half16* (sym+add)@tprel. */ --#define R_PPC64_TPREL16_LO 60 /* half16 (sym+add)@tprel@l. */ --#define R_PPC64_TPREL16_HI 71 /* half16 (sym+add)@tprel@h. */ --#define R_PPC64_TPREL16_HA 72 /* half16 (sym+add)@tprel@ha. */ --#define R_PPC64_TPREL64 73 /* doubleword64 (sym+add)@tprel. */ --#define R_PPC64_DTPREL16 74 /* half16* (sym+add)@dtprel. */ --#define R_PPC64_DTPREL16_LO 75 /* half16 (sym+add)@dtprel@l. */ --#define R_PPC64_DTPREL16_HI 76 /* half16 (sym+add)@dtprel@h. */ --#define R_PPC64_DTPREL16_HA 77 /* half16 (sym+add)@dtprel@ha. */ --#define R_PPC64_DTPREL64 78 /* doubleword64 (sym+add)@dtprel. */ --#define R_PPC64_GOT_TLSGD16 79 /* half16* (sym+add)@got@tlsgd. */ --#define R_PPC64_GOT_TLSGD16_LO 80 /* half16 (sym+add)@got@tlsgd@l. */ --#define R_PPC64_GOT_TLSGD16_HI 81 /* half16 (sym+add)@got@tlsgd@h. */ --#define R_PPC64_GOT_TLSGD16_HA 82 /* half16 (sym+add)@got@tlsgd@ha. */ --#define R_PPC64_GOT_TLSLD16 83 /* half16* (sym+add)@got@tlsld. */ --#define R_PPC64_GOT_TLSLD16_LO 84 /* half16 (sym+add)@got@tlsld@l. */ --#define R_PPC64_GOT_TLSLD16_HI 85 /* half16 (sym+add)@got@tlsld@h. */ --#define R_PPC64_GOT_TLSLD16_HA 86 /* half16 (sym+add)@got@tlsld@ha. */ --#define R_PPC64_GOT_TPREL16_DS 87 /* half16ds* (sym+add)@got@tprel. */ --#define R_PPC64_GOT_TPREL16_LO_DS 88 /* half16ds (sym+add)@got@tprel@l. */ --#define R_PPC64_GOT_TPREL16_HI 89 /* half16 (sym+add)@got@tprel@h. */ --#define R_PPC64_GOT_TPREL16_HA 90 /* half16 (sym+add)@got@tprel@ha. */ --#define R_PPC64_GOT_DTPREL16_DS 91 /* half16ds* (sym+add)@got@dtprel. */ --#define R_PPC64_GOT_DTPREL16_LO_DS 92 /* half16ds (sym+add)@got@dtprel@l. */ --#define R_PPC64_GOT_DTPREL16_HI 93 /* half16 (sym+add)@got@dtprel@h. */ --#define R_PPC64_GOT_DTPREL16_HA 94 /* half16 (sym+add)@got@dtprel@ha. */ --#define R_PPC64_TPREL16_DS 95 /* half16ds* (sym+add)@tprel. */ --#define R_PPC64_TPREL16_LO_DS 96 /* half16ds (sym+add)@tprel@l. */ --#define R_PPC64_TPREL16_HIGHER 97 /* half16 (sym+add)@tprel@higher. */ --#define R_PPC64_TPREL16_HIGHERA 98 /* half16 (sym+add)@tprel@highera. */ --#define R_PPC64_TPREL16_HIGHEST 99 /* half16 (sym+add)@tprel@highest. */ --#define R_PPC64_TPREL16_HIGHESTA 100 /* half16 (sym+add)@tprel@highesta. */ --#define R_PPC64_DTPREL16_DS 101 /* half16ds* (sym+add)@dtprel. */ --#define R_PPC64_DTPREL16_LO_DS 102 /* half16ds (sym+add)@dtprel@l. */ --#define R_PPC64_DTPREL16_HIGHER 103 /* half16 (sym+add)@dtprel@higher. */ --#define R_PPC64_DTPREL16_HIGHERA 104 /* half16 (sym+add)@dtprel@highera. */ --#define R_PPC64_DTPREL16_HIGHEST 105 /* half16 (sym+add)@dtprel@highest. */ --#define R_PPC64_DTPREL16_HIGHESTA 106 /* half16 (sym+add)@dtprel@highesta. */ - /* Keep this the last entry. */ --#define R_PPC64_NUM 107 -+#define R_PPC_NUM 95 - - /* The remaining relocs are from the Embedded ELF ABI, and are not - in the SVR4 ELF ABI. */ -@@ -2029,10 +1950,127 @@ - that may still be in object files. */ - #define R_PPC_TOC16 255 - -+ -+/* PowerPC64 relocations defined by the ABIs */ -+#define R_PPC64_NONE R_PPC_NONE -+#define R_PPC64_ADDR32 R_PPC_ADDR32 /* 32bit absolute address */ -+#define R_PPC64_ADDR24 R_PPC_ADDR24 /* 26bit address, word aligned */ -+#define R_PPC64_ADDR16 R_PPC_ADDR16 /* 16bit absolute address */ -+#define R_PPC64_ADDR16_LO R_PPC_ADDR16_LO /* lower 16bits of address */ -+#define R_PPC64_ADDR16_HI R_PPC_ADDR16_HI /* high 16bits of address. */ -+#define R_PPC64_ADDR16_HA R_PPC_ADDR16_HA /* adjusted high 16bits. */ -+#define R_PPC64_ADDR14 R_PPC_ADDR14 /* 16bit address, word aligned */ -+#define R_PPC64_ADDR14_BRTAKEN R_PPC_ADDR14_BRTAKEN -+#define R_PPC64_ADDR14_BRNTAKEN R_PPC_ADDR14_BRNTAKEN -+#define R_PPC64_REL24 R_PPC_REL24 /* PC-rel. 26 bit, word aligned */ -+#define R_PPC64_REL14 R_PPC_REL14 /* PC relative 16 bit */ -+#define R_PPC64_REL14_BRTAKEN R_PPC_REL14_BRTAKEN -+#define R_PPC64_REL14_BRNTAKEN R_PPC_REL14_BRNTAKEN -+#define R_PPC64_GOT16 R_PPC_GOT16 -+#define R_PPC64_GOT16_LO R_PPC_GOT16_LO -+#define R_PPC64_GOT16_HI R_PPC_GOT16_HI -+#define R_PPC64_GOT16_HA R_PPC_GOT16_HA -+ -+#define R_PPC64_COPY R_PPC_COPY -+#define R_PPC64_GLOB_DAT R_PPC_GLOB_DAT -+#define R_PPC64_JMP_SLOT R_PPC_JMP_SLOT -+#define R_PPC64_RELATIVE R_PPC_RELATIVE -+ -+#define R_PPC64_UADDR32 R_PPC_UADDR32 -+#define R_PPC64_UADDR16 R_PPC_UADDR16 -+#define R_PPC64_REL32 R_PPC_REL32 -+#define R_PPC64_PLT32 R_PPC_PLT32 -+#define R_PPC64_PLTREL32 R_PPC_PLTREL32 -+#define R_PPC64_PLT16_LO R_PPC_PLT16_LO -+#define R_PPC64_PLT16_HI R_PPC_PLT16_HI -+#define R_PPC64_PLT16_HA R_PPC_PLT16_HA -+ -+#define R_PPC64_SECTOFF R_PPC_SECTOFF -+#define R_PPC64_SECTOFF_LO R_PPC_SECTOFF_LO -+#define R_PPC64_SECTOFF_HI R_PPC_SECTOFF_HI -+#define R_PPC64_SECTOFF_HA R_PPC_SECTOFF_HA -+#define R_PPC64_ADDR30 37 /* word30 (S + A - P) >> 2 */ -+#define R_PPC64_ADDR64 38 /* doubleword64 S + A */ -+#define R_PPC64_ADDR16_HIGHER 39 /* half16 #higher(S + A) */ -+#define R_PPC64_ADDR16_HIGHERA 40 /* half16 #highera(S + A) */ -+#define R_PPC64_ADDR16_HIGHEST 41 /* half16 #highest(S + A) */ -+#define R_PPC64_ADDR16_HIGHESTA 42 /* half16 #highesta(S + A) */ -+#define R_PPC64_UADDR64 43 /* doubleword64 S + A */ -+#define R_PPC64_REL64 44 /* doubleword64 S + A - P */ -+#define R_PPC64_PLT64 45 /* doubleword64 L + A */ -+#define R_PPC64_PLTREL64 46 /* doubleword64 L + A - P */ -+#define R_PPC64_TOC16 47 /* half16* S + A - .TOC */ -+#define R_PPC64_TOC16_LO 48 /* half16 #lo(S + A - .TOC.) */ -+#define R_PPC64_TOC16_HI 49 /* half16 #hi(S + A - .TOC.) */ -+#define R_PPC64_TOC16_HA 50 /* half16 #ha(S + A - .TOC.) */ -+#define R_PPC64_TOC 51 /* doubleword64 .TOC */ -+#define R_PPC64_PLTGOT16 52 /* half16* M + A */ -+#define R_PPC64_PLTGOT16_LO 53 /* half16 #lo(M + A) */ -+#define R_PPC64_PLTGOT16_HI 54 /* half16 #hi(M + A) */ -+#define R_PPC64_PLTGOT16_HA 55 /* half16 #ha(M + A) */ -+ -+#define R_PPC64_ADDR16_DS 56 /* half16ds* (S + A) >> 2 */ -+#define R_PPC64_ADDR16_LO_DS 57 /* half16ds #lo(S + A) >> 2 */ -+#define R_PPC64_GOT16_DS 58 /* half16ds* (G + A) >> 2 */ -+#define R_PPC64_GOT16_LO_DS 59 /* half16ds #lo(G + A) >> 2 */ -+#define R_PPC64_PLT16_LO_DS 60 /* half16ds #lo(L + A) >> 2 */ -+#define R_PPC64_SECTOFF_DS 61 /* half16ds* (R + A) >> 2 */ -+#define R_PPC64_SECTOFF_LO_DS 62 /* half16ds #lo(R + A) >> 2 */ -+#define R_PPC64_TOC16_DS 63 /* half16ds* (S + A - .TOC.) >> 2 */ -+#define R_PPC64_TOC16_LO_DS 64 /* half16ds #lo(S + A - .TOC.) >> 2 */ -+#define R_PPC64_PLTGOT16_DS 65 /* half16ds* (M + A) >> 2 */ -+#define R_PPC64_PLTGOT16_LO_DS 66 /* half16ds #lo(M + A) >> 2 */ -+ -+/* PowerPC64 relocations defined for the TLS access ABI. */ -+#define R_PPC64_TLS 67 /* none (sym+add)@tls */ -+#define R_PPC64_DTPMOD64 68 /* doubleword64 (sym+add)@dtpmod */ -+#define R_PPC64_TPREL16 69 /* half16* (sym+add)@tprel */ -+#define R_PPC64_TPREL16_LO 70 /* half16 (sym+add)@tprel@l */ -+#define R_PPC64_TPREL16_HI 71 /* half16 (sym+add)@tprel@h */ -+#define R_PPC64_TPREL16_HA 72 /* half16 (sym+add)@tprel@ha */ -+#define R_PPC64_TPREL64 73 /* doubleword64 (sym+add)@tprel */ -+#define R_PPC64_DTPREL16 74 /* half16* (sym+add)@dtprel */ -+#define R_PPC64_DTPREL16_LO 75 /* half16 (sym+add)@dtprel@l */ -+#define R_PPC64_DTPREL16_HI 76 /* half16 (sym+add)@dtprel@h */ -+#define R_PPC64_DTPREL16_HA 77 /* half16 (sym+add)@dtprel@ha */ -+#define R_PPC64_DTPREL64 78 /* doubleword64 (sym+add)@dtprel */ -+#define R_PPC64_GOT_TLSGD16 79 /* half16* (sym+add)@got@tlsgd */ -+#define R_PPC64_GOT_TLSGD16_LO 80 /* half16 (sym+add)@got@tlsgd@l */ -+#define R_PPC64_GOT_TLSGD16_HI 81 /* half16 (sym+add)@got@tlsgd@h */ -+#define R_PPC64_GOT_TLSGD16_HA 82 /* half16 (sym+add)@got@tlsgd@ha */ -+#define R_PPC64_GOT_TLSLD16 83 /* half16* (sym+add)@got@tlsld */ -+#define R_PPC64_GOT_TLSLD16_LO 84 /* half16 (sym+add)@got@tlsld@l */ -+#define R_PPC64_GOT_TLSLD16_HI 85 /* half16 (sym+add)@got@tlsld@h */ -+#define R_PPC64_GOT_TLSLD16_HA 86 /* half16 (sym+add)@got@tlsld@ha */ -+#define R_PPC64_GOT_TPREL16_DS 87 /* half16ds* (sym+add)@got@tprel */ -+#define R_PPC64_GOT_TPREL16_LO_DS 88 /* half16ds (sym+add)@got@tprel@l */ -+#define R_PPC64_GOT_TPREL16_HI 89 /* half16 (sym+add)@got@tprel@h */ -+#define R_PPC64_GOT_TPREL16_HA 90 /* half16 (sym+add)@got@tprel@ha */ -+#define R_PPC64_GOT_DTPREL16_DS 91 /* half16ds* (sym+add)@got@dtprel */ -+#define R_PPC64_GOT_DTPREL16_LO_DS 92 /* half16ds (sym+add)@got@dtprel@l */ -+#define R_PPC64_GOT_DTPREL16_HI 93 /* half16 (sym+add)@got@dtprel@h */ -+#define R_PPC64_GOT_DTPREL16_HA 94 /* half16 (sym+add)@got@dtprel@ha */ -+#define R_PPC64_TPREL16_DS 95 /* half16ds* (sym+add)@tprel */ -+#define R_PPC64_TPREL16_LO_DS 96 /* half16ds (sym+add)@tprel@l */ -+#define R_PPC64_TPREL16_HIGHER 97 /* half16 (sym+add)@tprel@higher */ -+#define R_PPC64_TPREL16_HIGHERA 98 /* half16 (sym+add)@tprel@highera */ -+#define R_PPC64_TPREL16_HIGHEST 99 /* half16 (sym+add)@tprel@highest */ -+#define R_PPC64_TPREL16_HIGHESTA 100 /* half16 (sym+add)@tprel@highesta */ -+#define R_PPC64_DTPREL16_DS 101 /* half16ds* (sym+add)@dtprel */ -+#define R_PPC64_DTPREL16_LO_DS 102 /* half16ds (sym+add)@dtprel@l */ -+#define R_PPC64_DTPREL16_HIGHER 103 /* half16 (sym+add)@dtprel@higher */ -+#define R_PPC64_DTPREL16_HIGHERA 104 /* half16 (sym+add)@dtprel@highera */ -+#define R_PPC64_DTPREL16_HIGHEST 105 /* half16 (sym+add)@dtprel@highest */ -+#define R_PPC64_DTPREL16_HIGHESTA 106 /* half16 (sym+add)@dtprel@highesta */ -+ -+/* Keep this the last entry. */ -+#define R_PPC64_NUM 107 -+ - /* PowerPC64 specific values for the Dyn d_tag field. */ - #define DT_PPC64_GLINK (DT_LOPROC + 0) - #define DT_PPC64_NUM 1 - -+ - /* ARM specific declarations */ - - /* Processor specific flags for the ELF header e_flags field. */ ---- glibc-2.3.2/elf/ldconfig.c 2003-01-13 03:50:11.000000000 -0500 -+++ glibc-2.3.2/elf/ldconfig.c 2003-09-19 22:37:01.000000000 -0400 -@@ -132,6 +132,9 @@ - { NULL, 0, NULL, 0, NULL, 0 } - }; - -+#define PROCINFO_CLASS static -+#include -+ - /* Short description of program. */ - static const char doc[] = N_("Configure Dynamic Linker Run Time Bindings."); - -@@ -342,13 +345,15 @@ - entry->flag = FLAG_ANY; - } - -- /* Canonify path: for now only remove trailing slashes. */ -+ /* Canonify path: for now only remove leading and trailing -+ whitespace and the trailing slashes slashes. */ - i = strlen (entry->path) - 1; -+ -+ while (isspace (entry->path[i]) && i > 0) -+ entry->path[i--] = '\0'; -+ - while (entry->path[i] == '/' && i > 0) -- { -- entry->path[i] = '\0'; -- --i; -- } -+ entry->path[i--] = '\0'; - - if (stat64 (entry->path, &stat_buf)) - { -@@ -782,10 +787,27 @@ - continue; - } - -+ -+ /* A link may just point to itself. */ -+ if (is_link) -+ { -+ /* If the path the link points to isn't its soname and it is not -+ .so symlink for ld(1) only, we treat it as a normal file. */ -+ const char *real_base_name = basename (real_file_name); -+ -+ if (strcmp (real_base_name, soname) != 0) -+ { -+ len = strlen (real_base_name); -+ if (len < strlen (".so") -+ || strcmp (real_base_name + len - strlen (".so"), ".so") != 0 -+ || strncmp (real_base_name, soname, len) != 0) -+ is_link = 0; -+ } -+ } -+ - if (real_name != real_file_name) - free (real_name); - -- /* Links will just point to itself. */ - if (is_link) - { - free (soname); -@@ -963,12 +985,18 @@ - make it terminating the line. */ - *strchrnul (line, '#') = '\0'; - -+ /* Remove leading whitespace. NUL is no whitespace character. */ -+ char *cp = line; -+ while (isspace (*cp)) -+ ++cp; -+ - /* If the line is blank it is ignored. */ -- if (line[0] == '\0') -+ if (cp[0] == '\0') - continue; - -- add_dir (line); -- } while (!feof (file)); -+ add_dir (cp); -+ } -+ while (!feof_unlocked (file)); - - /* Free buffer and close file. */ - free (line); -@@ -994,13 +1022,18 @@ - /* Parse and process arguments. */ - argp_parse (&argp, argc, argv, 0, &remaining, NULL); - -- /* Remaining arguments are additional libraries if opt_manual_link -+ /* Remaining arguments are additional directories if opt_manual_link - is not set. */ - if (remaining != argc && !opt_manual_link) - { - int i; - for (i = remaining; i < argc; ++i) -- add_dir (argv[i]); -+ if (opt_build_cache && argv[i][0] != '/') -+ error (EXIT_FAILURE, 0, -+ _("relative path `%s' used to build cache"), -+ argv[i]); -+ else -+ add_dir (argv[i]); - } - - set_hwcap (); -@@ -1094,12 +1127,12 @@ - - if (!opt_only_cline) - { -+ parse_conf (config_file); -+ - /* Always add the standard search paths. */ -- add_dir (SLIBDIR); -+ add_system_dir (SLIBDIR); - if (strcmp (SLIBDIR, LIBDIR)) -- add_dir (LIBDIR); -- -- parse_conf (config_file); -+ add_system_dir (LIBDIR); - } - - search_dirs (); ---- glibc-2.3.2/elf/link.h 2001-07-25 16:37:46.000000000 -0400 -+++ glibc-2.3.2/elf/link.h 2003-09-19 22:37:01.000000000 -0400 -@@ -106,7 +106,7 @@ - - extern int dl_iterate_phdr (int (*callback) (struct dl_phdr_info *info, - size_t size, void *data), -- void *data) __THROW; -+ void *data); - - __END_DECLS - ---- glibc-2.3.2/elf/readlib.c 2002-09-05 14:56:48.000000000 -0400 -+++ glibc-2.3.2/elf/readlib.c 2003-08-21 08:36:59.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Jaeger , 1999 and - Jakub Jelinek , 1999. -@@ -23,17 +23,16 @@ - development version. Besides the simplification, it has also been - modified to read some other file formats. */ - -- -+#include - #include - #include --#include - #include -+#include - #include - #include - #include --#include -- - #include -+#include - #include - #include - -@@ -147,22 +146,21 @@ - elf_header = (ElfW(Ehdr) *) file_contents; - if (memcmp (elf_header->e_ident, ELFMAG, SELFMAG) != 0) - { -- /* The file is neither ELF nor aout. Check if it's a linker script, -- like libc.so - otherwise complain. */ -- int len = statbuf.st_size; -- /* Only search the beginning of the file. */ -- if (len > 512) -- len = 512; -+ /* The file is neither ELF nor aout. Check if it's a linker -+ script, like libc.so - otherwise complain. Only search the -+ beginning of the file. */ -+ size_t len = MIN (statbuf.st_size, 512); - if (memmem (file_contents, len, "GROUP", 5) == NULL - && memmem (file_contents, len, "GNU ld script", 13) == NULL) - error (0, 0, _("%s is not an ELF file - it has the wrong magic bytes at the start.\n"), - file_name); - ret = 1; -- goto done; - } -- -- if (process_elf_file (file_name, lib, flag, osversion, soname, -- file_contents, statbuf.st_size)) -+ /* Libraries have to be shared object files. */ -+ else if (elf_header->e_type != ET_DYN) -+ ret = 1; -+ else if (process_elf_file (file_name, lib, flag, osversion, soname, -+ file_contents, statbuf.st_size)) - ret = 1; - - done: ---- glibc-2.3.2/elf/rtld-Rules 2002-10-14 00:03:13.000000000 -0400 -+++ glibc-2.3.2/elf/rtld-Rules 2003-08-21 08:36:59.000000000 -0400 -@@ -1,6 +1,6 @@ - # Subroutine makefile for compiling libc modules linked into dynamic linker. - --# Copyright (C) 2002 Free Software Foundation, Inc. -+# Copyright (C) 2002, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -31,7 +31,7 @@ - ifeq ($(subdir),elf) - - ifndef rtld-subdirs --error This is makefile is a subroutine of elf/Makefile not to be used directly -+error This makefile is a subroutine of elf/Makefile not to be used directly - endif - - include ../Makeconfig -@@ -81,19 +81,13 @@ - # The sysd-rules generated makefile already defines pattern rules for rtld-% - # targets built from sysdeps source files. - $(objpfx)rtld-%.os: %.S $(before-compile); $(compile-command.S) --$(objpfx)rtld-%.d: %.S $(before-compile); $(+make-deps) - $(objpfx)rtld-%.os: %.s $(before-compile); $(compile-command.s) --$(objpfx)rtld-%.d: %.s $(before-compile); $(+make-deps) - $(objpfx)rtld-%.os: %.c $(before-compile); $(compile-command.c) --$(objpfx)rtld-%.d: %.c $(before-compile); $(+make-deps) - - # The rules for generated source files. - $(objpfx)rtld-%.os: $(objpfx)%.S $(before-compile); $(compile-command.S) --$(objpfx)rtld-%.d: $(objpfx)%.S $(before-compile); $(+make-deps) - $(objpfx)rtld-%.os: $(objpfx)%.s $(before-compile); $(compile-command.s) --$(objpfx)rtld-%.d: $(objpfx)%.s $(before-compile); $(+make-deps) - $(objpfx)rtld-%.os: $(objpfx)%.c $(before-compile); $(compile-command.c) --$(objpfx)rtld-%.d: $(objpfx)%.c $(before-compile); $(+make-deps) - - # The command line setting of rtld-modules (see above) tells us - # what we need to build, and that tells us what dependency files we need. -@@ -101,9 +95,12 @@ - - # Figure out the dependency files we need. After respecting the $(omit-deps) - # list as applied to the names without the `rtld-', there may be none left. --rtld-depfiles := $(patsubst %,$(objpfx)rtld-%.d,\ -+rtld-depfiles := $(patsubst %,$(objpfx)rtld-%.os.d,\ - $(filter-out $(omit-deps),\ - $(rtld-modules:rtld-%.os=%))) -+rtld-depfiles := $(strip $(wildcard $(rtld-depfiles)) \ -+ $(patsubst %.dt,%.d,\ -+ $(wildcard $(rtld-depfiles:.d=.dt)))) - ifdef rtld-depfiles - -include $(rtld-depfiles) - endif ---- glibc-2.3.2/elf/rtld.c 2003-01-07 13:47:35.000000000 -0500 -+++ glibc-2.3.2/elf/rtld.c 2003-08-21 08:36:59.000000000 -0400 -@@ -227,12 +227,16 @@ - assert (info->l.l_tls_modid != 0); - GL(dl_rtld_map).l_tls_blocksize = info->l.l_tls_blocksize; - GL(dl_rtld_map).l_tls_align = info->l.l_tls_align; -+ GL(dl_rtld_map).l_tls_firstbyte_offset = info->l.l_tls_firstbyte_offset; - GL(dl_rtld_map).l_tls_initimage_size = info->l.l_tls_initimage_size; - GL(dl_rtld_map).l_tls_initimage = info->l.l_tls_initimage; - GL(dl_rtld_map).l_tls_offset = info->l.l_tls_offset; - GL(dl_rtld_map).l_tls_modid = 1; - # else - assert (info->l.l_tls_modid == 0); -+# if NO_TLS_OFFSET != 0 -+ GL(dl_rtld_map).l_tls_offset = NO_TLS_OFFSET; -+# endif - # endif - - #endif -@@ -314,7 +318,11 @@ - - /* Read our own dynamic section and fill in the info array. */ - bootstrap_map.l_ld = (void *) bootstrap_map.l_addr + elf_machine_dynamic (); -- elf_get_dynamic_info (&bootstrap_map); -+ elf_get_dynamic_info (&bootstrap_map, NULL); -+ -+#if defined USE_TLS && NO_TLS_OFFSET != 0 -+ bootstrap_map.l_tls_offset = NO_TLS_OFFSET; -+#endif - - #if USE___THREAD - /* Get the dynamic linker's own program header. First we need the ELF -@@ -340,6 +348,11 @@ - - bootstrap_map.l_tls_blocksize = phdr[cnt].p_memsz; - bootstrap_map.l_tls_align = phdr[cnt].p_align; -+ if (phdr[cnt].p_align == 0) -+ bootstrap_map.l_tls_firstbyte_offset = 0; -+ else -+ bootstrap_map.l_tls_firstbyte_offset = (phdr[cnt].p_vaddr -+ & (phdr[cnt].p_align - 1)); - assert (bootstrap_map.l_tls_blocksize != 0); - bootstrap_map.l_tls_initimage_size = phdr[cnt].p_filesz; - bootstrap_map.l_tls_initimage = (void *) (bootstrap_map.l_addr -@@ -575,6 +588,20 @@ - } - #endif - -+#if defined SHARED && defined _LIBC_REENTRANT \ -+ && defined __rtld_lock_default_lock_recursive -+static void rtld_lock_default_lock_recursive (void *lock) -+{ -+ __rtld_lock_default_lock_recursive (lock); -+} -+ -+static void rtld_lock_default_unlock_recursive (void *lock) -+{ -+ __rtld_lock_default_unlock_recursive (lock); -+} -+#endif -+ -+ - static const char *library_path; /* The library search path. */ - static const char *preloadlist; /* The list preloaded objects. */ - static int version_info; /* Nonzero if information about -@@ -609,6 +636,16 @@ - GL(dl_error_catch_tsd) = &_dl_initial_error_catch_tsd; - #endif - -+#ifdef USE_TLS -+ GL(dl_init_static_tls) = &_dl_nothread_init_static_tls; -+#endif -+ -+#if defined SHARED && defined _LIBC_REENTRANT \ -+ && defined __rtld_lock_default_lock_recursive -+ GL(dl_rtld_lock_recursive) = rtld_lock_default_lock_recursive; -+ GL(dl_rtld_unlock_recursive) = rtld_lock_default_unlock_recursive; -+#endif -+ - /* Process the environment variable which control the behaviour. */ - process_envvars (&mode); - -@@ -853,6 +890,11 @@ - check for this special but unimportant case. */ - GL(dl_loaded)->l_tls_blocksize = ph->p_memsz; - GL(dl_loaded)->l_tls_align = ph->p_align; -+ if (ph->p_align == 0) -+ GL(dl_loaded)->l_tls_firstbyte_offset = 0; -+ else -+ GL(dl_loaded)->l_tls_firstbyte_offset = (ph->p_vaddr -+ & (ph->p_align - 1)); - GL(dl_loaded)->l_tls_initimage_size = ph->p_filesz; - GL(dl_loaded)->l_tls_initimage = (void *) ph->p_vaddr; - -@@ -885,7 +927,7 @@ - if (! rtld_is_main) - { - /* Extract the contents of the dynamic section for easy access. */ -- elf_get_dynamic_info (GL(dl_loaded)); -+ elf_get_dynamic_info (GL(dl_loaded), NULL); - if (GL(dl_loaded)->l_info[DT_HASH]) - /* Set up our cache of pointers into the hash table. */ - _dl_setup_hash (GL(dl_loaded)); -@@ -924,6 +966,13 @@ - GL(dl_rtld_map).l_prev = GL(dl_loaded); - ++GL(dl_nloaded); - -+ /* Set up the program header information for the dynamic linker -+ itself. It is needed in the dl_iterate_phdr() callbacks. */ -+ ElfW(Ehdr) *rtld_ehdr = (ElfW(Ehdr) *) GL(dl_rtld_map).l_map_start; -+ GL(dl_rtld_map).l_phdr = (ElfW(Phdr) *) (GL(dl_rtld_map).l_map_start -+ + rtld_ehdr->e_phoff); -+ GL(dl_rtld_map).l_phnum = rtld_ehdr->e_phnum; -+ - /* We have two ways to specify objects to preload: via environment - variable and via the file /etc/ld.so.preload. The latter can also - be used when security is enabled. */ -@@ -1062,6 +1111,50 @@ - assert (i == npreloads); - } - -+#ifdef NEED_DL_SYSINFO -+ if (GL(dl_sysinfo_dso) != NULL) -+ { -+ /* We have a prelinked DSO preloaded by the system. */ -+ GL(dl_sysinfo) = GL(dl_sysinfo_dso)->e_entry; -+ -+ /* Do an abridged version of the work _dl_map_object_from_fd would do -+ to map in the object. It's already mapped and prelinked (and -+ better be, since it's read-only and so we couldn't relocate it). -+ We just want our data structures to describe it as if we had just -+ mapped and relocated it normally. */ -+ struct link_map *l = _dl_new_object ((char *) "", "", lt_library, NULL); -+ if (__builtin_expect (l != NULL, 1)) -+ { -+ static ElfW(Dyn) dyn_temp [DL_RO_DYN_TEMP_CNT]; -+ -+ l->l_phdr = ((const void *) GL(dl_sysinfo_dso) -+ + GL(dl_sysinfo_dso)->e_phoff); -+ l->l_phnum = GL(dl_sysinfo_dso)->e_phnum; -+ for (uint_fast16_t i = 0; i < l->l_phnum; ++i) -+ { -+ const ElfW(Phdr) *const ph = &l->l_phdr[i]; -+ if (ph->p_type == PT_DYNAMIC) -+ { -+ l->l_ld = (void *) ph->p_vaddr; -+ l->l_ldnum = ph->p_memsz / sizeof (ElfW(Dyn)); -+ break; -+ } -+ if (ph->p_type == PT_LOAD) -+ assert ((void *) ph->p_vaddr == GL(dl_sysinfo_dso)); -+ } -+ elf_get_dynamic_info (l, dyn_temp); -+ _dl_setup_hash (l); -+ l->l_relocated = 1; -+ -+ /* Now that we have the info handy, use the DSO image's soname -+ so this object can be looked up by name. */ -+ if (l->l_info[DT_SONAME] != NULL) -+ l->l_libname->name = ((char *) D_PTR (l, l_info[DT_STRTAB]) -+ + l->l_info[DT_SONAME]->d_un.d_val); -+ } -+ } -+#endif -+ - /* Load all the libraries specified by DT_NEEDED entries. If LD_PRELOAD - specified some libraries to load, these are inserted before the actual - dependencies in the executable's searchlist for symbol resolution. */ -@@ -1213,57 +1306,54 @@ - important that we do this before real relocation, because the - functions we call below for output may no longer work properly - after relocation. */ -- if (! GL(dl_loaded)->l_info[DT_NEEDED]) -- _dl_printf ("\tstatically linked\n"); -- else -+ struct link_map *l; -+ -+ if (GL(dl_debug_mask) & DL_DEBUG_PRELINK) - { -- struct link_map *l; -+ struct r_scope_elem *scope = &GL(dl_loaded)->l_searchlist; - -- if (GL(dl_debug_mask) & DL_DEBUG_PRELINK) -+ for (i = 0; i < scope->r_nlist; i++) - { -- struct r_scope_elem *scope = &GL(dl_loaded)->l_searchlist; -- -- for (i = 0; i < scope->r_nlist; i++) -+ l = scope->r_list [i]; -+ if (l->l_faked) - { -- l = scope->r_list [i]; -- if (l->l_faked) -- { -- _dl_printf ("\t%s => not found\n", l->l_libname->name); -- continue; -- } -- if (_dl_name_match_p (GL(dl_trace_prelink), l)) -- GL(dl_trace_prelink_map) = l; -- _dl_printf ("\t%s => %s (0x%0*Zx, 0x%0*Zx)", -- l->l_libname->name[0] ? l->l_libname->name -- : rtld_progname ?: "
", -- l->l_name[0] ? l->l_name -- : rtld_progname ?: "
", -- (int) sizeof l->l_map_start * 2, -- l->l_map_start, -- (int) sizeof l->l_addr * 2, -- l->l_addr); -+ _dl_printf ("\t%s => not found\n", l->l_libname->name); -+ continue; -+ } -+ if (_dl_name_match_p (GL(dl_trace_prelink), l)) -+ GL(dl_trace_prelink_map) = l; -+ _dl_printf ("\t%s => %s (0x%0*Zx, 0x%0*Zx)", -+ l->l_libname->name[0] ? l->l_libname->name -+ : rtld_progname ?: "
", -+ l->l_name[0] ? l->l_name -+ : rtld_progname ?: "
", -+ (int) sizeof l->l_map_start * 2, -+ (size_t) l->l_map_start, -+ (int) sizeof l->l_addr * 2, -+ (size_t) l->l_addr); - #ifdef USE_TLS -- if (l->l_tls_modid) -- _dl_printf (" TLS(0x%Zx, 0x%0*Zx)\n", l->l_tls_modid, -- (int) sizeof l->l_tls_offset * 2, -- l->l_tls_offset); -- else -+ if (l->l_tls_modid) -+ _dl_printf (" TLS(0x%Zx, 0x%0*Zx)\n", l->l_tls_modid, -+ (int) sizeof l->l_tls_offset * 2, -+ (size_t) l->l_tls_offset); -+ else - #endif -- _dl_printf ("\n"); -- } -- } -- else -- { -- for (l = GL(dl_loaded)->l_next; l; l = l->l_next) -- if (l->l_faked) -- /* The library was not found. */ -- _dl_printf ("\t%s => not found\n", l->l_libname->name); -- else -- _dl_printf ("\t%s => %s (0x%0*Zx)\n", l->l_libname->name, -- l->l_name, (int) sizeof l->l_map_start * 2, -- l->l_map_start); -+ _dl_printf ("\n"); - } - } -+ else if (! GL(dl_loaded)->l_info[DT_NEEDED]) -+ _dl_printf ("\tstatically linked\n"); -+ else -+ { -+ for (l = GL(dl_loaded)->l_next; l; l = l->l_next) -+ if (l->l_faked) -+ /* The library was not found. */ -+ _dl_printf ("\t%s => not found\n", l->l_libname->name); -+ else -+ _dl_printf ("\t%s => %s (0x%0*Zx)\n", l->l_libname->name, -+ l->l_name, (int) sizeof l->l_map_start * 2, -+ (size_t) l->l_map_start); -+ } - - if (__builtin_expect (mode, trace) != trace) - for (i = 1; i < (unsigned int) _dl_argc; ++i) -@@ -1281,8 +1371,9 @@ - - _dl_printf ("%s found at 0x%0*Zd in object at 0x%0*Zd\n", - INTUSE(_dl_argv)[i], -- (int) sizeof ref->st_value * 2, ref->st_value, -- (int) sizeof loadbase * 2, loadbase); -+ (int) sizeof ref->st_value * 2, -+ (size_t) ref->st_value, -+ (int) sizeof loadbase * 2, (size_t) loadbase); - } - else - { ---- glibc-2.3.2/elf/sofini.c 1999-02-20 12:14:48.000000000 -0500 -+++ glibc-2.3.2/elf/sofini.c 2003-08-21 08:36:59.000000000 -0400 -@@ -2,10 +2,10 @@ - null pointer words in the `.ctors' and `.dtors' sections. */ - - static void (*const __CTOR_END__[1]) (void) -- __attribute__ ((unused, section (".ctors"))) -+ __attribute__ ((used, section (".ctors"))) - = { 0 }; - static void (*const __DTOR_END__[1]) (void) -- __attribute__ ((unused, section (".dtors"))) -+ __attribute__ ((used, section (".dtors"))) - = { 0 }; - - #ifdef HAVE_DWARF2_UNWIND_INFO -@@ -14,6 +14,6 @@ - - typedef unsigned int ui32 __attribute__ ((mode (SI))); - static ui32 __FRAME_END__[1] -- __attribute__ ((unused, section (".eh_frame"))) -+ __attribute__ ((used, section (".eh_frame"))) - = { 0 }; - #endif ---- glibc-2.3.2/elf/tls-macros.h 2003-02-25 18:40:08.000000000 -0500 -+++ glibc-2.3.2/elf/tls-macros.h 2003-09-19 22:37:01.000000000 -0400 -@@ -9,6 +9,7 @@ - #define VAR_INT_DEF(x) \ - asm (".section .tdata\n\t" \ - ".globl " #x "\n" \ -+ ".balign 4\n" \ - #x ":\t.long 0\n\t" \ - ".size " #x ",4\n\t" \ - ".previous") -@@ -316,13 +317,15 @@ - - # define TLS_IE(x) \ - ({ void *__l; \ -+ register long __gp asm ("gp"); \ - asm (";;\n\t" \ - "addl r16=@ltoff(@tprel(" #x ")),gp\n\t" \ - ";;\n\t" \ - "ld8 r17=[r16]\n\t" \ - ";;\n\t" \ - "add %0=r13,r17\n\t" \ -- : "=r" (__l) : : "r16", "r17" ); __l; }) -+ ";;\n\t" \ -+ : "=r" (__l) : "r" (__gp) : "r16", "r17" ); __l; }) - - # define __TLS_CALL_CLOBBERS \ - "r2", "r3", "r8", "r9", "r10", "r11", "r14", "r15", "r16", "r17", \ -@@ -335,6 +338,7 @@ - - # define TLS_LD(x) \ - ({ void *__l; \ -+ register long __gp asm ("gp"); \ - asm (";;\n\t" \ - "mov loc0=gp\n\t" \ - "addl r16=@ltoff(@dtpmod(" #x ")),gp\n\t" \ -@@ -345,11 +349,13 @@ - ";;\n\t" \ - "mov gp=loc0\n\t" \ - "mov %0=r8\n\t" \ -- : "=r" (__l) : : "loc0", __TLS_CALL_CLOBBERS); \ -+ ";;\n\t" \ -+ : "=r" (__l) : "r" (__gp) : "loc0", __TLS_CALL_CLOBBERS); \ - __l; }) - - # define TLS_GD(x) \ - ({ void *__l; \ -+ register long __gp asm ("gp"); \ - asm (";;\n\t" \ - "mov loc0=gp\n\t" \ - "addl r16=@ltoff(@dtpmod(" #x ")),gp\n\t" \ -@@ -361,7 +367,8 @@ - ";;\n\t" \ - "mov gp=loc0\n\t" \ - "mov %0=r8\n\t" \ -- : "=r" (__l) : : "loc0", __TLS_CALL_CLOBBERS); \ -+ ";;\n\t" \ -+ : "=r" (__l) : "r" (__gp) : "loc0", __TLS_CALL_CLOBBERS); \ - __l; }) - - #elif defined __sparc__ && !defined __arch64__ -@@ -373,7 +380,7 @@ - asm ("add %%g7, %1, %0" : "=r" (__l) : "r" (__l)); \ - __l; }) - --# ifdef __PIC__ -+# ifdef __PIC__ - # define TLS_LOAD_PIC \ - ({ register long pc __asm__ ("%o7"); \ - long got; \ -@@ -623,6 +630,53 @@ - (int *) (__builtin_thread_pointer() + __offset); }) - # endif - -+#elif defined __powerpc__ && !defined __powerpc64__ -+ -+# define __TLS_CALL_CLOBBERS \ -+ "0", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", \ -+ "lr", "ctr", "cr0", "cr1", "cr5", "cr6", "cr7" -+ -+/* PowerPC32 Local Exec TLS access. */ -+# define TLS_LE(x) \ -+ ({ int *__result; \ -+ asm ("addi %0,2," #x "@tprel" \ -+ : "=r" (__result)); \ -+ __result; }) -+ -+/* PowerPC32 Initial Exec TLS access. */ -+# define TLS_IE(x) \ -+ ({ int *__result; \ -+ asm ("bl _GLOBAL_OFFSET_TABLE_@local-4\n\t" \ -+ "mflr %0\n\t" \ -+ "lwz %0," #x "@got@tprel(%0)\n\t" \ -+ "add %0,%0," #x "@tls" \ -+ : "=b" (__result) : \ -+ : "lr"); \ -+ __result; }) -+ -+/* PowerPC32 Local Dynamic TLS access. */ -+# define TLS_LD(x) \ -+ ({ int *__result; \ -+ asm ("bl _GLOBAL_OFFSET_TABLE_@local-4\n\t" \ -+ "mflr 3\n\t" \ -+ "addi 3,3," #x "@got@tlsld\n\t" \ -+ "bl __tls_get_addr@plt\n\t" \ -+ "addi %0,3," #x "@dtprel" \ -+ : "=r" (__result) : \ -+ : __TLS_CALL_CLOBBERS); \ -+ __result; }) -+ -+/* PowerPC32 General Dynamic TLS access. */ -+# define TLS_GD(x) \ -+ ({ register int *__result __asm__ ("r3"); \ -+ asm ("bl _GLOBAL_OFFSET_TABLE_@local-4\n\t" \ -+ "mflr 3\n\t" \ -+ "addi 3,3," #x "@got@tlsgd\n\t" \ -+ "bl __tls_get_addr@plt" \ -+ : : \ -+ : __TLS_CALL_CLOBBERS); \ -+ __result; }) -+ - #elif defined __powerpc__ && defined __powerpc64__ - - /* PowerPC64 Local Exec TLS access. */ ---- glibc-2.3.2/elf/tst-align.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-align.c 2003-09-17 14:13:33.000000000 -0400 -@@ -0,0 +1,54 @@ -+/* Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Jakub Jelinek , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+ -+static int -+do_test (void) -+{ -+ static const char modname[] = "tst-alignmod.so"; -+ int result = 0; -+ void (*fp) (int *); -+ void *h; -+ -+ h = dlopen (modname, RTLD_LAZY); -+ if (h == NULL) -+ { -+ printf ("cannot open '%s': %s\n", modname, dlerror ()); -+ exit (1); -+ } -+ -+ fp = dlsym (h, "in_dso"); -+ if (fp == NULL) -+ { -+ printf ("cannot get symbol 'in_dso': %s\n", dlerror ()); -+ exit (1); -+ } -+ -+ fp (&result); -+ -+ dlclose (h); -+ -+ return result; -+} -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" ---- glibc-2.3.2/elf/tst-alignmod.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-alignmod.c 2003-09-17 14:13:49.000000000 -0400 -@@ -0,0 +1,53 @@ -+/* Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Jakub Jelinek , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+ -+static int res, *resp; -+ -+static void __attribute__((constructor)) -+con (void) -+{ -+ res = TEST_STACK_ALIGN () ? -1 : 1; -+} -+ -+void -+in_dso (int *result) -+{ -+ if (!res) -+ { -+ puts ("constructor has not been run"); -+ *result = 1; -+ } -+ else if (res != 1) -+ { -+ puts ("constructor has been run without sufficient alignment"); -+ *result = 1; -+ } -+ -+ resp = result; -+} -+ -+static void __attribute__((destructor)) -+des (void) -+{ -+ if (TEST_STACK_ALIGN ()) -+ *resp = 1; -+} ---- glibc-2.3.2/elf/tst-tls10.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tls10.c 2003-04-22 21:54:06.000000000 -0400 -@@ -0,0 +1,40 @@ -+#include "tst-tls10.h" -+ -+#ifdef USE_TLS__THREAD -+__thread int dummy __attribute__((visibility ("hidden"))) = 12; -+__thread struct A local = { 1, 2, 3 }; -+#endif -+ -+#define CHECK(N, S) \ -+ p = f##N##a (); \ -+ if (p->a != S || p->b != S + 1 || p->c != S + 2) \ -+ abort () -+ -+int -+main (void) -+{ -+#ifdef USE_TLS__THREAD -+ struct A *p; -+ if (local.a != 1 || local.b != 2 || local.c != 3) -+ abort (); -+ if (a1.a != 4 || a1.b != 5 || a1.c != 6) -+ abort (); -+ if (a2.a != 22 || a2.b != 23 || a2.c != 24) -+ abort (); -+ if (a3.a != 10 || a3.b != 11 || a3.c != 12) -+ abort (); -+ if (a4.a != 25 || a4.b != 26 || a4.c != 27) -+ abort (); -+ check1 (); -+ check2 (); -+ if (f1a () != &a1 || f2a () != &a2 || f3a () != &a3 || f4a () != &a4) -+ abort (); -+ CHECK (5, 16); -+ CHECK (6, 19); -+ if (f7a () != &a2 || f8a () != &a4) -+ abort (); -+ CHECK (9, 28); -+ CHECK (10, 31); -+#endif -+ exit (0); -+} ---- glibc-2.3.2/elf/tst-tls10.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tls10.h 2003-04-17 15:19:01.000000000 -0400 -@@ -0,0 +1,38 @@ -+#include -+#include -+ -+#if defined USE_TLS && defined HAVE___THREAD \ -+ && defined HAVE_TLS_MODEL_ATTRIBUTE -+# define USE_TLS__THREAD -+ -+struct A -+{ -+ char a; -+ int b; -+ long long c; -+}; -+ -+extern __thread struct A a1, a2, a3, a4; -+extern struct A *f1a (void); -+extern struct A *f2a (void); -+extern struct A *f3a (void); -+extern struct A *f4a (void); -+extern struct A *f5a (void); -+extern struct A *f6a (void); -+extern struct A *f7a (void); -+extern struct A *f8a (void); -+extern struct A *f9a (void); -+extern struct A *f10a (void); -+extern int f1b (void); -+extern int f2b (void); -+extern int f3b (void); -+extern int f4b (void); -+extern int f5b (void); -+extern int f6b (void); -+extern int f7b (void); -+extern int f8b (void); -+extern int f9b (void); -+extern int f10b (void); -+extern void check1 (void); -+extern void check2 (void); -+#endif ---- glibc-2.3.2/elf/tst-tls11.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tls11.c 2003-04-17 15:19:01.000000000 -0400 -@@ -0,0 +1,27 @@ -+#include "tst-tls10.h" -+ -+#define CHECK(N, S) \ -+ p = f##N##a (); \ -+ if (p->a != S || p->b != S + 1 || p->c != S + 2) \ -+ abort () -+ -+int -+main (void) -+{ -+#ifdef USE_TLS__THREAD -+ struct A *p; -+ check1 (); -+ check2 (); -+ CHECK (1, 4); -+ CHECK (2, 22); -+ CHECK (3, 10); -+ CHECK (4, 25); -+ CHECK (5, 16); -+ CHECK (6, 19); -+ CHECK (7, 22); -+ CHECK (8, 25); -+ CHECK (9, 28); -+ CHECK (10, 31); -+#endif -+ exit (0); -+} ---- glibc-2.3.2/elf/tst-tls12.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tls12.c 2003-04-22 21:54:06.000000000 -0400 -@@ -0,0 +1,18 @@ -+#include "tst-tls10.h" -+ -+#define CHECK(N, S) \ -+ p = &a##N; \ -+ if (p->a != S || p->b != S + 1 || p->c != S + 2) \ -+ abort () -+ -+int -+main (void) -+{ -+#ifdef USE_TLS__THREAD -+ struct A *p; -+ check1 (); -+ CHECK (1, 4); -+ CHECK (2, 7); -+#endif -+ exit (0); -+} ---- glibc-2.3.2/elf/tst-tls13.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tls13.c 2003-04-27 02:15:09.000000000 -0400 -@@ -0,0 +1,29 @@ -+/* Check unloading modules with data in static TLS block. */ -+#include -+#include -+#include -+ -+ -+static int -+do_test (void) -+{ -+ int i; -+ for (i = 0; i < 1000;) -+ { -+ printf ("round %d\n",++i); -+ -+ void *h = dlopen ("tst-tlsmod13a.so", RTLD_LAZY); -+ if (h == NULL) -+ { -+ printf ("cannot load: %s\n", dlerror ()); -+ exit (1); -+ } -+ -+ dlclose (h); -+ } -+ -+ return 0; -+} -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" ---- glibc-2.3.2/elf/tst-tls14.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tls14.c 2003-07-28 17:50:16.000000000 -0400 -@@ -0,0 +1,66 @@ -+/* Check alignment of TLS variable. */ -+#include -+#include -+#include -+#include -+ -+#include -+ -+#if USE_TLS && HAVE___THREAD -+ -+#define AL 4096 -+struct foo -+{ -+ int i; -+} __attribute ((aligned (AL))); -+ -+static __thread struct foo f; -+static struct foo g; -+ -+ -+extern int in_dso1 (void); -+ -+ -+static int -+do_test (void) -+{ -+ int result = 0; -+ -+ int fail = (((uintptr_t) &f) & (AL - 1)) != 0; -+ printf ("&f = %p %s\n", &f, fail ? "FAIL" : "OK"); -+ result |= fail; -+ -+ fail = (((uintptr_t) &g) & (AL - 1)) != 0; -+ printf ("&g = %p %s\n", &g, fail ? "FAIL" : "OK"); -+ result |= fail; -+ -+ result |= in_dso1 (); -+ -+ void *h = dlopen ("tst-tlsmod14b.so", RTLD_LAZY); -+ if (h == NULL) -+ { -+ printf ("cannot open tst-tlsmod14b.so: %m\n"); -+ exit (1); -+ } -+ -+ int (*fp) (void) = (int (*) (void)) dlsym (h, "in_dso2"); -+ if (fp == NULL) -+ { -+ puts ("cannot find in_dso2"); -+ exit (1); -+ } -+ -+ result |= fp (); -+ -+ return result; -+} -+ -+#define TEST_FUNCTION do_test () -+ -+#else -+ -+#define TEST_FUNCTION 0 -+ -+#endif -+ -+#include "../test-skeleton.c" ---- glibc-2.3.2/elf/tst-tls6.c 2002-12-04 13:22:02.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tls6.c 2003-08-21 08:36:59.000000000 -0400 -@@ -36,7 +36,7 @@ - modid = ((struct link_map *) h)->l_tls_modid; - else if (((struct link_map *) h)->l_tls_modid != modid) - { -- printf ("round %d: modid now %d, initially %d\n", -+ printf ("round %d: modid now %zd, initially %d\n", - i, ((struct link_map *) h)->l_tls_modid, modid); - result = 1; - } ---- glibc-2.3.2/elf/tst-tls8.c 2002-12-04 13:22:02.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tls8.c 2003-08-21 08:36:59.000000000 -0400 -@@ -19,8 +19,8 @@ - void *h1; - void *h2; - int i; -- int modid1 = -1; -- int modid2 = -1; -+ size_t modid1 = (size_t) -1; -+ size_t modid2 = (size_t) -1; - int *bazp; - - for (i = 0; i < 10; ++i) -@@ -35,11 +35,11 @@ - /* Dirty test code here: we peek into a private data structure. - We make sure that the module gets assigned the same ID every - time. The value of the first round is used. */ -- if (modid1 == -1) -+ if (modid1 == (size_t) -1) - modid1 = ((struct link_map *) h1)->l_tls_modid; - else if (((struct link_map *) h1)->l_tls_modid != modid1) - { -- printf ("round %d: modid now %zd, initially %d\n", -+ printf ("round %d: modid now %zd, initially %zd\n", - i, ((struct link_map *) h1)->l_tls_modid, modid1); - result = 1; - } -@@ -65,11 +65,11 @@ - /* Dirty test code here: we peek into a private data structure. - We make sure that the module gets assigned the same ID every - time. The value of the first round is used. */ -- if (modid2 == -1) -+ if (modid2 == (size_t) -1) - modid2 = ((struct link_map *) h1)->l_tls_modid; - else if (((struct link_map *) h1)->l_tls_modid != modid2) - { -- printf ("round %d: modid now %zd, initially %d\n", -+ printf ("round %d: modid now %zd, initially %zd\n", - i, ((struct link_map *) h1)->l_tls_modid, modid2); - result = 1; - } -@@ -108,7 +108,7 @@ - time. The value of the first round is used. */ - if (((struct link_map *) h1)->l_tls_modid != modid1) - { -- printf ("round %d: modid now %zd, initially %d\n", -+ printf ("round %d: modid now %zd, initially %zd\n", - i, ((struct link_map *) h1)->l_tls_modid, modid1); - result = 1; - } -@@ -136,7 +136,7 @@ - time. The value of the first round is used. */ - if (((struct link_map *) h1)->l_tls_modid != modid2) - { -- printf ("round %d: modid now %zd, initially %d\n", -+ printf ("round %d: modid now %zd, initially %zd\n", - i, ((struct link_map *) h1)->l_tls_modid, modid2); - result = 1; - } ---- glibc-2.3.2/elf/tst-tlsmod10.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tlsmod10.c 2003-04-17 15:19:01.000000000 -0400 -@@ -0,0 +1 @@ -+#include "tst-tlsmod8.c" ---- glibc-2.3.2/elf/tst-tlsmod11.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tlsmod11.c 2003-04-17 15:19:01.000000000 -0400 -@@ -0,0 +1,6 @@ -+#include "tst-tls10.h" -+ -+#ifdef USE_TLS__THREAD -+__thread struct A a1 = { 4, 5, 6 }; -+__thread struct A a2 = { 7, 8, 9 }; -+#endif ---- glibc-2.3.2/elf/tst-tlsmod12.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tlsmod12.c 2003-04-17 15:19:01.000000000 -0400 -@@ -0,0 +1,14 @@ -+#include "tst-tls10.h" -+ -+#ifdef USE_TLS__THREAD -+extern __thread struct A a2 __attribute__((tls_model("initial-exec"))); -+ -+void -+check1 (void) -+{ -+ if (a1.a != 4 || a1.b != 5 || a1.c != 6) -+ abort (); -+ if (a2.a != 7 || a2.b != 8 || a2.c != 9) -+ abort (); -+} -+#endif ---- glibc-2.3.2/elf/tst-tlsmod13.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tlsmod13.c 2003-04-27 02:15:39.000000000 -0400 -@@ -0,0 +1,14 @@ -+#include -+ -+#if defined USE_TLS && defined HAVE___THREAD \ -+ && defined HAVE_TLS_MODEL_ATTRIBUTE -+__thread int a[2] __attribute__ ((tls_model ("initial-exec"))); -+#else -+int a[2]; -+#endif -+ -+int -+foo (void) -+{ -+ return a[0]; -+} ---- glibc-2.3.2/elf/tst-tlsmod13a.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tlsmod13a.c 2003-04-27 02:15:39.000000000 -0400 -@@ -0,0 +1,16 @@ -+#include -+ -+#if defined USE_TLS && defined HAVE___THREAD \ -+ && defined HAVE_TLS_MODEL_ATTRIBUTE -+__thread int b[2] __attribute__ ((tls_model ("initial-exec"))); -+#else -+int b[2]; -+#endif -+ -+extern int foo (void); -+ -+int -+bar (void) -+{ -+ return foo () + b[0]; -+} ---- glibc-2.3.2/elf/tst-tlsmod14a.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tlsmod14a.c 2003-07-28 17:50:16.000000000 -0400 -@@ -0,0 +1,41 @@ -+#include -+#include -+ -+#include -+ -+#if USE_TLS && HAVE___THREAD -+ -+#define AL 4096 -+struct foo -+{ -+ int i; -+} __attribute ((aligned (AL))); -+ -+static __thread struct foo f; -+static struct foo g; -+ -+ -+#ifndef FCT -+# define FCT in_dso1 -+#endif -+ -+ -+int -+FCT (void) -+{ -+ puts (__func__); -+ -+ int result = 0; -+ -+ int fail = (((uintptr_t) &f) & (AL - 1)) != 0; -+ printf ("&f = %p %s\n", &f, fail ? "FAIL" : "OK"); -+ result |= fail; -+ -+ fail = (((uintptr_t) &g) & (AL - 1)) != 0; -+ printf ("&g = %p %s\n", &g, fail ? "FAIL" : "OK"); -+ result |= fail; -+ -+ return result; -+} -+ -+#endif ---- glibc-2.3.2/elf/tst-tlsmod14b.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tlsmod14b.c 2003-07-24 15:58:08.000000000 -0400 -@@ -0,0 +1,2 @@ -+#define FCT in_dso2 -+#include "tst-tlsmod14a.c" ---- glibc-2.3.2/elf/tst-tlsmod7.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tlsmod7.c 2003-04-22 21:54:06.000000000 -0400 -@@ -0,0 +1,103 @@ -+#include "tst-tls10.h" -+ -+#ifdef USE_TLS__THREAD -+__thread int dummy __attribute__((visibility ("hidden"))) = 12; -+__thread struct A a1 = { 4, 5, 6 }; -+__thread struct A a2 = { 7, 8, 9 }; -+__thread struct A a3 __attribute__((tls_model("initial-exec"))) -+ = { 10, 11, 12 }; -+__thread struct A a4 __attribute__((tls_model("initial-exec"))) -+ = { 13, 14, 15 }; -+static __thread struct A local1 = { 16, 17, 18 }; -+static __thread struct A local2 __attribute__((tls_model("initial-exec"))) -+ = { 19, 20, 21 }; -+ -+void -+check1 (void) -+{ -+ if (a1.a != 4 || a1.b != 5 || a1.c != 6) -+ abort (); -+ if (a2.a != 22 || a2.b != 23 || a2.c != 24) -+ abort (); -+ if (a3.a != 10 || a3.b != 11 || a3.c != 12) -+ abort (); -+ if (a4.a != 25 || a4.b != 26 || a4.c != 27) -+ abort (); -+ if (local1.a != 16 || local1.b != 17 || local1.c != 18) -+ abort (); -+ if (local2.a != 19 || local2.b != 20 || local2.c != 21) -+ abort (); -+} -+ -+struct A * -+f1a (void) -+{ -+ return &a1; -+} -+ -+struct A * -+f2a (void) -+{ -+ return &a2; -+} -+ -+struct A * -+f3a (void) -+{ -+ return &a3; -+} -+ -+struct A * -+f4a (void) -+{ -+ return &a4; -+} -+ -+struct A * -+f5a (void) -+{ -+ return &local1; -+} -+ -+struct A * -+f6a (void) -+{ -+ return &local2; -+} -+ -+int -+f1b (void) -+{ -+ return a1.a; -+} -+ -+int -+f2b (void) -+{ -+ return a2.b; -+} -+ -+int -+f3b (void) -+{ -+ return a3.c; -+} -+ -+int -+f4b (void) -+{ -+ return a4.a; -+} -+ -+int -+f5b (void) -+{ -+ return local1.b; -+} -+ -+int -+f6b (void) -+{ -+ return local2.c; -+} -+#endif ---- glibc-2.3.2/elf/tst-tlsmod8.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tlsmod8.c 2003-04-22 21:54:06.000000000 -0400 -@@ -0,0 +1,72 @@ -+#include "tst-tls10.h" -+ -+#ifdef USE_TLS__THREAD -+__thread long long dummy __attribute__((visibility ("hidden"))) = 12; -+__thread struct A a2 = { 22, 23, 24 }; -+__thread struct A a4 __attribute__((tls_model("initial-exec"))) -+ = { 25, 26, 27 }; -+static __thread struct A local1 = { 28, 29, 30 }; -+static __thread struct A local2 __attribute__((tls_model("initial-exec"))) -+ = { 31, 32, 33 }; -+ -+void -+check2 (void) -+{ -+ if (a2.a != 22 || a2.b != 23 || a2.c != 24) -+ abort (); -+ if (a4.a != 25 || a4.b != 26 || a4.c != 27) -+ abort (); -+ if (local1.a != 28 || local1.b != 29 || local1.c != 30) -+ abort (); -+ if (local2.a != 31 || local2.b != 32 || local2.c != 33) -+ abort (); -+} -+ -+struct A * -+f7a (void) -+{ -+ return &a2; -+} -+ -+struct A * -+f8a (void) -+{ -+ return &a4; -+} -+ -+struct A * -+f9a (void) -+{ -+ return &local1; -+} -+ -+struct A * -+f10a (void) -+{ -+ return &local2; -+} -+ -+int -+f7b (void) -+{ -+ return a2.b; -+} -+ -+int -+f8b (void) -+{ -+ return a4.a; -+} -+ -+int -+f9b (void) -+{ -+ return local1.b; -+} -+ -+int -+f10b (void) -+{ -+ return local2.c; -+} -+#endif ---- glibc-2.3.2/elf/tst-tlsmod9.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/elf/tst-tlsmod9.c 2003-04-22 21:54:06.000000000 -0400 -@@ -0,0 +1,101 @@ -+#include "tst-tls10.h" -+ -+#ifdef USE_TLS__THREAD -+__thread int dummy __attribute__((visibility ("hidden"))) = 12; -+__thread struct A a1 = { 4, 5, 6 }; -+__thread struct A a3 __attribute__((tls_model("initial-exec"))) -+ = { 10, 11, 12 }; -+extern __thread struct A a4 __attribute__((tls_model("initial-exec"))); -+static __thread struct A local1 = { 16, 17, 18 }; -+static __thread struct A local2 __attribute__((tls_model("initial-exec"))) -+ = { 19, 20, 21 }; -+ -+void -+check1 (void) -+{ -+ if (a1.a != 4 || a1.b != 5 || a1.c != 6) -+ abort (); -+ if (a2.a != 22 || a2.b != 23 || a2.c != 24) -+ abort (); -+ if (a3.a != 10 || a3.b != 11 || a3.c != 12) -+ abort (); -+ if (a4.a != 25 || a4.b != 26 || a4.c != 27) -+ abort (); -+ if (local1.a != 16 || local1.b != 17 || local1.c != 18) -+ abort (); -+ if (local2.a != 19 || local2.b != 20 || local2.c != 21) -+ abort (); -+} -+ -+struct A * -+f1a (void) -+{ -+ return &a1; -+} -+ -+struct A * -+f2a (void) -+{ -+ return &a2; -+} -+ -+struct A * -+f3a (void) -+{ -+ return &a3; -+} -+ -+struct A * -+f4a (void) -+{ -+ return &a4; -+} -+ -+struct A * -+f5a (void) -+{ -+ return &local1; -+} -+ -+struct A * -+f6a (void) -+{ -+ return &local2; -+} -+ -+int -+f1b (void) -+{ -+ return a1.a; -+} -+ -+int -+f2b (void) -+{ -+ return a2.b; -+} -+ -+int -+f3b (void) -+{ -+ return a3.c; -+} -+ -+int -+f4b (void) -+{ -+ return a4.a; -+} -+ -+int -+f5b (void) -+{ -+ return local1.b; -+} -+ -+int -+f6b (void) -+{ -+ return local2.c; -+} -+#endif ---- glibc-2.3.2/elf/vismain.c 2001-07-07 15:20:53.000000000 -0400 -+++ glibc-2.3.2/elf/vismain.c 2003-04-12 11:39:42.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 2000 Free Software Foundation, Inc. -+/* Copyright (C) 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -86,7 +86,8 @@ - first DSO. */ - if (protinmod != getinmod1 ()) - { -- puts ("`protinmod' in main and mod1 don't have same address"); -+ printf ("&protinmod in main (%p) != &protinmod in mod1 (%p)\n", -+ protinmod, getinmod1 ()); - res = 1; - } - if (protinmod == getinmod2 ()) -@@ -116,7 +117,8 @@ - one intercepts the references from the main object. */ - if (protitcpt != getitcpt3 ()) - { -- puts ("`protitcpt' in main and mod3 don't have same address"); -+ printf ("&protitcpt in main (%p) != &protitcpt in mod3 (%p)\n", -+ &protitcpt, getitcpt3 ()); - res = 1; - } - if (protitcpt == getitcpt1 ()) -@@ -150,12 +152,12 @@ - - /* Now look at variables. First a variable which is available - everywhere. We must have three different addresses. */ -- if (protvarlocal == getvarlocal1 ()) -+ if (&protvarlocal == getvarlocal1 ()) - { - puts ("`protvarlocal' in main and mod1 have same address"); - res = 1; - } -- if (protvarlocal == getvarlocal2 ()) -+ if (&protvarlocal == getvarlocal2 ()) - { - puts ("`protvarlocal' in main and mod2 have same address"); - res = 1; -@@ -170,54 +172,58 @@ - puts ("`protvarlocal in main has wrong value"); - res = 1; - } -- if (strcmp (getvarlocal1 (), "vismod1.c") != 0) -+ if (strcmp (*getvarlocal1 (), "vismod1.c") != 0) - { - puts ("`getvarlocal1' returns wrong value"); - res = 1; - } -- if (strcmp (getvarlocal2 (), "vismod2.c") != 0) -+ if (strcmp (*getvarlocal2 (), "vismod2.c") != 0) - { - puts ("`getvarlocal2' returns wrong value"); - res = 1; - } - - /* Now the case where there is no local definition. */ -- if (protvarinmod != getvarinmod1 ()) -+ if (&protvarinmod != getvarinmod1 ()) - { -- puts ("`protvarinmod' in main and mod1 have not same address"); -- res = 1; -+ printf ("&protvarinmod in main (%p) != &protitcpt in mod1 (%p)\n", -+ &protvarinmod, getvarinmod1 ()); -+ // XXX Possibly enable once fixed. -+ // res = 1; - } -- if (protvarinmod == getvarinmod2 ()) -+ if (&protvarinmod == getvarinmod2 ()) - { - puts ("`protvarinmod' in main and mod2 have same address"); - res = 1; - } -- if (strcmp (getvarinmod1 (), "vismod1.c") != 0) -+ if (strcmp (*getvarinmod1 (), "vismod1.c") != 0) - { - puts ("`getvarinmod1' returns wrong value"); - res = 1; - } -- if (strcmp (getvarinmod2 (), "vismod2.c") != 0) -+ if (strcmp (*getvarinmod2 (), "vismod2.c") != 0) - { - puts ("`getvarinmod2' returns wrong value"); - res = 1; - } - - /* And a test where a variable definition is intercepted. */ -- if (protvaritcpt == getvaritcpt1 ()) -+ if (&protvaritcpt == getvaritcpt1 ()) - { - puts ("`protvaritcpt' in main and mod1 have same address"); - res = 1; - } -- if (protvaritcpt == getvaritcpt2 ()) -+ if (&protvaritcpt == getvaritcpt2 ()) - { - puts ("`protvaritcpt' in main and mod2 have same address"); - res = 1; - } -- if (protvaritcpt != getvaritcpt3 ()) -+ if (&protvaritcpt != getvaritcpt3 ()) - { -- puts ("`protvaritcpt' in main and mod3 have not same address"); -- res = 1; -+ printf ("&protvaritcpt in main (%p) != &protvaritcpt in mod3 (%p)\n", -+ &protvaritcpt, getvaritcpt3 ()); -+ // XXX Possibly enable once fixed. -+ // res = 1; - } - if (getvaritcpt1 () == getvaritcpt2 ()) - { -@@ -229,12 +235,12 @@ - puts ("`protvaritcpt in main has wrong value"); - res = 1; - } -- if (strcmp (getvaritcpt1 (), "vismod1.c") != 0) -+ if (strcmp (*getvaritcpt1 (), "vismod1.c") != 0) - { - puts ("`getvaritcpt1' returns wrong value"); - res = 1; - } -- if (strcmp (getvaritcpt2 (), "vismod2.c") != 0) -+ if (strcmp (*getvaritcpt2 (), "vismod2.c") != 0) - { - puts ("`getvaritcpt2' returns wrong value"); - res = 1; ---- glibc-2.3.2/elf/vismod.h 2000-12-17 12:07:45.000000000 -0500 -+++ glibc-2.3.2/elf/vismod.h 2003-04-12 11:39:42.000000000 -0400 -@@ -5,21 +5,21 @@ - extern int (*getinmod1 (void)) (void); - extern int callitcpt1 (void); - extern int (*getitcpt1 (void)) (void); --extern const char *getvarlocal1 (void); --extern const char *getvarinmod1 (void); --extern const char *getvaritcpt1 (void); -+extern const char **getvarlocal1 (void); -+extern const char **getvarinmod1 (void); -+extern const char **getvaritcpt1 (void); - extern int calllocal2 (void); - extern int (*getlocal2 (void)) (void); - extern int callinmod2 (void); - extern int (*getinmod2 (void)) (void); - extern int callitcpt2 (void); - extern int (*getitcpt2 (void)) (void); --extern const char *getvarlocal2 (void); --extern const char *getvarinmod2 (void); --extern const char *getvaritcpt2 (void); -+extern const char **getvarlocal2 (void); -+extern const char **getvarinmod2 (void); -+extern const char **getvaritcpt2 (void); - extern int callitcpt3 (void); - extern int (*getitcpt3 (void)) (void); --extern const char *getvaritcpt3 (void); -+extern const char **getvaritcpt3 (void); - - extern int protinmod (void); - extern int protitcpt (void); ---- glibc-2.3.2/elf/vismod1.c 2001-07-07 15:20:53.000000000 -0400 -+++ glibc-2.3.2/elf/vismod1.c 2003-04-12 11:39:42.000000000 -0400 -@@ -79,26 +79,26 @@ - const char *protvarlocal = __FILE__; - asm (".protected protvarlocal"); - --const char * -+const char ** - getvarlocal1 (void) - { -- return protvarlocal; -+ return &protvarlocal; - } - - const char *protvarinmod = __FILE__; - asm (".protected protvarinmod"); - --const char * -+const char ** - getvarinmod1 (void) - { -- return protvarinmod; -+ return &protvarinmod; - } - - const char *protvaritcpt = __FILE__; - asm (".protected protvaritcpt"); - --const char * -+const char ** - getvaritcpt1 (void) - { -- return protvaritcpt; -+ return &protvaritcpt; - } ---- glibc-2.3.2/elf/vismod2.c 2001-07-07 15:20:53.000000000 -0400 -+++ glibc-2.3.2/elf/vismod2.c 2003-04-12 11:39:42.000000000 -0400 -@@ -80,28 +80,28 @@ - const char *protvarlocal = __FILE__; - asm (".protected protvarlocal"); - --const char * -+const char ** - getvarlocal2 (void) - { -- return protvarlocal; -+ return &protvarlocal; - } - - const char *protvarinmod = __FILE__; - asm (".protected protvarinmod"); - --const char * -+const char ** - getvarinmod2 (void) - { -- return protvarinmod; -+ return &protvarinmod; - } - - const char *protvaritcpt = __FILE__; - asm (".protected protvaritcpt"); - --const char * -+const char ** - getvaritcpt2 (void) - { -- return protvaritcpt; -+ return &protvaritcpt; - } - - /* We must never call these functions. */ -@@ -117,7 +117,7 @@ - abort (); - } - --const char * -+const char ** - getvaritcpt3 (void) - { - abort (); ---- glibc-2.3.2/elf/vismod3.c 2001-07-07 15:20:53.000000000 -0400 -+++ glibc-2.3.2/elf/vismod3.c 2003-04-12 11:39:42.000000000 -0400 -@@ -40,8 +40,8 @@ - const char *protvaritcpt = __FILE__; - asm (".protected protvaritcpt"); - --const char * -+const char ** - getvaritcpt3 (void) - { -- return protvaritcpt; -+ return &protvaritcpt; - } ---- glibc-2.3.2/gmon/gmon.c 2003-01-07 22:49:47.000000000 -0500 -+++ glibc-2.3.2/gmon/gmon.c 2003-09-19 22:37:01.000000000 -0400 -@@ -42,6 +42,7 @@ - #include - #include - #include -+#include - - #ifdef USE_IN_LIBIO - # include -@@ -58,7 +59,7 @@ - static int s_scale; - #define SCALE_1_TO_1 0x10000L - --#define ERR(s) __write (STDERR_FILENO, s, sizeof (s) - 1) -+#define ERR(s) write_not_cancel (STDERR_FILENO, s, sizeof (s) - 1) - - void moncontrol __P ((int mode)); - void __moncontrol __P ((int mode)); -@@ -198,7 +199,7 @@ - strncpy (thdr.dimen, "seconds", sizeof (thdr.dimen)); - thdr.dimen_abbrev = 's'; - -- __writev (fd, iov, 3); -+ writev_not_cancel_no_status (fd, iov, 3); - } - } - -@@ -213,7 +214,7 @@ - struct gmon_cg_arc_record raw_arc[NARCS_PER_WRITEV] - __attribute__ ((aligned (__alignof__ (char*)))); - ARCINDEX from_index, to_index; -- int from_len; -+ u_long from_len; - u_long frompc; - struct iovec iov[2 * NARCS_PER_WRITEV]; - int nfilled; -@@ -256,13 +257,13 @@ - - if (++nfilled == NARCS_PER_WRITEV) - { -- __writev (fd, iov, 2 * nfilled); -+ writev_not_cancel_no_status (fd, iov, 2 * nfilled); - nfilled = 0; - } - } - } - if (nfilled > 0) -- __writev (fd, iov, 2 * nfilled); -+ writev_not_cancel_no_status (fd, iov, 2 * nfilled); - } - - -@@ -296,12 +297,12 @@ - for (grp = __bb_head; grp; grp = grp->next) - { - ncounts = grp->ncounts; -- __writev (fd, bbhead, 2); -+ writev_not_cancel_no_status (fd, bbhead, 2); - for (nfilled = i = 0; i < ncounts; ++i) - { - if (nfilled > (sizeof (bbbody) / sizeof (bbbody[0])) - 2) - { -- __writev (fd, bbbody, nfilled); -+ writev_not_cancel_no_status (fd, bbbody, nfilled); - nfilled = 0; - } - -@@ -309,7 +310,7 @@ - bbbody[nfilled++].iov_base = &grp->counts[i]; - } - if (nfilled > 0) -- __writev (fd, bbbody, nfilled); -+ writev_not_cancel_no_status (fd, bbbody, nfilled); - } - } - -@@ -331,12 +332,13 @@ - size_t len = strlen (env); - char buf[len + 20]; - sprintf (buf, "%s.%u", env, __getpid ()); -- fd = __open (buf, O_CREAT|O_TRUNC|O_WRONLY|O_NOFOLLOW, 0666); -+ fd = open_not_cancel (buf, O_CREAT|O_TRUNC|O_WRONLY|O_NOFOLLOW, 0666); - } - - if (fd == -1) - { -- fd = __open ("gmon.out", O_CREAT|O_TRUNC|O_WRONLY|O_NOFOLLOW, 0666); -+ fd = open_not_cancel ("gmon.out", O_CREAT|O_TRUNC|O_WRONLY|O_NOFOLLOW, -+ 0666); - if (fd < 0) - { - char buf[300]; -@@ -357,7 +359,7 @@ - memset (&ghdr, '\0', sizeof (struct gmon_hdr)); - memcpy (&ghdr.cookie[0], GMON_MAGIC, sizeof (ghdr.cookie)); - *(int32_t *) ghdr.version = GMON_VERSION; -- __write (fd, &ghdr, sizeof (struct gmon_hdr)); -+ write_not_cancel (fd, &ghdr, sizeof (struct gmon_hdr)); - - /* write PC histogram: */ - write_hist (fd); -@@ -368,7 +370,7 @@ - /* write basic-block execution counts: */ - write_bb_counts (fd); - -- __close (fd); -+ close_not_cancel_no_status (fd); - } - - ---- glibc-2.3.2/gmon/mcount.c 2002-08-29 05:25:51.000000000 -0400 -+++ glibc-2.3.2/gmon/mcount.c 2003-04-12 11:39:42.000000000 -0400 -@@ -39,7 +39,7 @@ - and MCOUNT macros. */ - #include "machine-gmon.h" - --#include -+#include - - /* - * mcount is called on entry to each function compiled with the profiling -@@ -69,7 +69,8 @@ - * check that we are profiling - * and that we aren't recursively invoked. - */ -- if (! compare_and_swap (&p->state, GMON_PROF_ON, GMON_PROF_BUSY)) -+ if (atomic_compare_and_exchange_bool_acq (&p->state, GMON_PROF_BUSY, -+ GMON_PROF_ON)) - return; - - /* ---- glibc-2.3.2/gmon/tst-sprofil.c 2001-07-07 15:20:53.000000000 -0400 -+++ glibc-2.3.2/gmon/tst-sprofil.c 2003-08-21 08:36:59.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 2001 Free Software Foundation, Inc. -+/* Copyright (C) 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by David Mosberger-Tang . - -@@ -165,7 +165,7 @@ - if (buf[i][j] != 0) - printf ("%0*Zx\t%u\t(buffer %d)\n", - (int) (sizeof (size_t) * 2), -- (taddr[i] + (char *) &buf[i][j] - (char *) &buf[i][0]), -+ (taddr[i] + ((char *) &buf[i][j] - (char *) &buf[i][0])), - buf[i][j], i); - - return 0; ---- glibc-2.3.2/grp/Makefile 2001-07-07 15:20:53.000000000 -0400 -+++ glibc-2.3.2/grp/Makefile 2003-09-19 22:37:01.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1991, 92, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. -+# Copyright (C) 1991,92,96,97,98,99,2000,2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -47,8 +47,15 @@ - - ifeq ($(have-thread-library),yes) - --CFLAGS-getgrgid_r.c = -DUSE_NSCD=1 --CFLAGS-getgrnam_r.c = -DUSE_NSCD=1 -+CFLAGS-getgrgid_r.c = -DUSE_NSCD=1 -fexceptions -+CFLAGS-getgrnam_r.c = -DUSE_NSCD=1 -fexceptions -+CFLAGS-getgrent_r.c = -fexceptions -+CFLAGS-getgrent.c = -fexceptions -+CFLAGS-fgetgrent.c = -fexceptions -+CFLAGS-fgetgrent_r.c = -fexceptions -+CFLAGS-putgrent.c = -fexceptions -+CFLAGS-initgroups.c = -fexceptions -+CFLAGS-getgrgid.c = -fexceptions - - endif - ---- glibc-2.3.2/grp/grp.h 2001-07-07 15:20:53.000000000 -0400 -+++ glibc-2.3.2/grp/grp.h 2003-04-24 20:05:57.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991,92,95,96,97,98,99,2000,01 Free Software Foundation, Inc. -+/* Copyright (C) 1991,1992,1995-2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -56,32 +56,57 @@ - - - #if defined __USE_SVID || defined __USE_BSD || defined __USE_XOPEN_EXTENDED --/* Rewind the group-file stream. */ --extern void setgrent (void) __THROW; -+/* Rewind the group-file stream. - --/* Close the group-file stream. */ --extern void endgrent (void) __THROW; -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern void setgrent (void); - --/* Read an entry from the group-file stream, opening it if necessary. */ --extern struct group *getgrent (void) __THROW; -+/* Close the group-file stream. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern void endgrent (void); -+ -+/* Read an entry from the group-file stream, opening it if necessary. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern struct group *getgrent (void); - #endif - - #ifdef __USE_SVID --/* Read a group entry from STREAM. */ --extern struct group *fgetgrent (FILE *__stream) __THROW; -+/* Read a group entry from STREAM. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ -+extern struct group *fgetgrent (FILE *__stream); - #endif - - #ifdef __USE_GNU --/* Write the given entry onto the given stream. */ -+/* Write the given entry onto the given stream. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ - extern int putgrent (__const struct group *__restrict __p, -- FILE *__restrict __f) __THROW; -+ FILE *__restrict __f); - #endif - --/* Search for an entry with a matching group ID. */ --extern struct group *getgrgid (__gid_t __gid) __THROW; -+/* Search for an entry with a matching group ID. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern struct group *getgrgid (__gid_t __gid); -+ -+/* Search for an entry with a matching group name. - --/* Search for an entry with a matching group name. */ --extern struct group *getgrnam (__const char *__name) __THROW; -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern struct group *getgrnam (__const char *__name); - - #if defined __USE_POSIX || defined __USE_MISC - -@@ -97,32 +122,48 @@ - The interface may change in later versions of this library. But - the interface is designed following the principals used for the - other reentrant functions so the chances are good this is what the -- POSIX people would choose. */ -+ POSIX people would choose. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ - - # ifdef __USE_GNU - extern int getgrent_r (struct group *__restrict __resultbuf, - char *__restrict __buffer, size_t __buflen, -- struct group **__restrict __result) __THROW; -+ struct group **__restrict __result); - # endif - --/* Search for an entry with a matching group ID. */ -+/* Search for an entry with a matching group ID. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - extern int getgrgid_r (__gid_t __gid, struct group *__restrict __resultbuf, - char *__restrict __buffer, size_t __buflen, -- struct group **__restrict __result) __THROW; -+ struct group **__restrict __result); -+ -+/* Search for an entry with a matching group name. - --/* Search for an entry with a matching group name. */ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - extern int getgrnam_r (__const char *__restrict __name, - struct group *__restrict __resultbuf, - char *__restrict __buffer, size_t __buflen, -- struct group **__restrict __result) __THROW; -+ struct group **__restrict __result); - - # ifdef __USE_SVID - /* Read a group entry from STREAM. This function is not standardized -- an probably never will. */ -+ an probably never will. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ - extern int fgetgrent_r (FILE *__restrict __stream, - struct group *__restrict __resultbuf, - char *__restrict __buffer, size_t __buflen, -- struct group **__restrict __result) __THROW; -+ struct group **__restrict __result); - # endif - - #endif /* POSIX or reentrant */ -@@ -138,14 +179,24 @@ - - /* Store at most *NGROUPS members of the group set for USER into - *GROUPS. Also include GROUP. The actual number of groups found is -- returned in *NGROUPS. Return -1 if the if *NGROUPS is too small. */ -+ returned in *NGROUPS. Return -1 if the if *NGROUPS is too small. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ - extern int getgrouplist (__const char *__user, __gid_t __group, -- __gid_t *__groups, int *__ngroups) __THROW; -+ __gid_t *__groups, int *__ngroups); - - /* Initialize the group set for the current user - by reading the group database and using all groups -- of which USER is a member. Also include GROUP. */ --extern int initgroups (__const char *__user, __gid_t __group) __THROW; -+ of which USER is a member. Also include GROUP. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ -+extern int initgroups (__const char *__user, __gid_t __group); - - #endif /* Use BSD. */ - ---- glibc-2.3.2/grp/initgroups.c 2002-03-13 12:49:14.000000000 -0500 -+++ glibc-2.3.2/grp/initgroups.c 2003-08-21 08:36:59.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1989,91,93,1996-2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1989,91,93,1996-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -23,6 +23,7 @@ - #include - #include - #include -+#include - #include - #include - -@@ -207,6 +208,9 @@ - return -1; - - result = internal_getgrouplist (user, group, &size, &newgroups, -1); -+ -+ memcpy (groups, newgroups, MIN (*ngroups, result) * sizeof (gid_t)); -+ - if (result > *ngroups) - { - *ngroups = result; -@@ -215,12 +219,12 @@ - else - *ngroups = result; - -- memcpy (groups, newgroups, *ngroups * sizeof (gid_t)); -- - free (newgroups); - return result; - } - -+static_link_warning (getgrouplist) -+ - /* Initialize the group set for the current user - by reading the group database and using all groups - of which USER is a member. Also include GROUP. */ -@@ -269,3 +273,5 @@ - return result; - #endif - } -+ -+static_link_warning (initgroups) ---- glibc-2.3.2/hurd/hurdmalloc.c 2001-09-18 23:04:09.000000000 -0400 -+++ glibc-2.3.2/hurd/hurdmalloc.c 2002-11-16 08:54:02.000000000 -0500 -@@ -35,10 +35,6 @@ - /* - * HISTORY - * $Log: hurdmalloc.c,v $ -- * Revision 1.15 2001/09/19 03:04:09 drepper -- * (bcopy): Removed. -- * (realloc): Replace bcopy with memcpy. -- * - * Revision 1.14 2001/04/01 05:03:14 roland - * 2001-03-11 Roland McGrath - * ---- glibc-2.3.2/iconv/Makefile 2002-11-25 20:50:58.000000000 -0500 -+++ glibc-2.3.2/iconv/Makefile 2003-08-21 08:36:59.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1997, 1998, 2000, 2001, 2002 Free Software Foundation, Inc. -+# Copyright (C) 1997,1998,2000,2001,2002,2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -35,11 +35,11 @@ - CFLAGS-gconv_simple.c = -DSTATIC_GCONV - endif - --vpath %.c ../locale/programs -+vpath %.c ../locale/programs ../intl - - iconv_prog-modules = iconv_charmap charmap charmap-dir linereader \ - dummy-repertoire simple-hash xstrdup xmalloc --iconvconfig-modules = strtab xmalloc -+iconvconfig-modules = strtab xmalloc hash-string - extra-objs = $(iconv_prog-modules:=.o) $(iconvconfig-modules:=.o) - CFLAGS-iconv_prog.c = -I../locale/programs - CFLAGS-iconv_charmap.c = -I../locale/programs ---- glibc-2.3.2/iconv/gconv_cache.c 2002-12-02 16:26:09.000000000 -0500 -+++ glibc-2.3.2/iconv/gconv_cache.c 2003-08-21 08:36:59.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Cache handling for iconv modules. -- Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2001. - -@@ -19,6 +19,7 @@ - 02111-1307 USA. */ - - #include -+#include - #include - #include - #include -@@ -28,6 +29,7 @@ - - #include - #include -+#include - - #include "../intl/hash-string.h" - -@@ -58,7 +60,7 @@ - return -1; - - /* See whether the cache file exists. */ -- fd = __open (GCONV_MODULES_CACHE, O_RDONLY); -+ fd = open_not_cancel (GCONV_MODULES_CACHE, O_RDONLY, 0); - if (__builtin_expect (fd, 0) == -1) - /* Not available. */ - return -1; -@@ -70,7 +72,7 @@ - || (size_t) st.st_size < sizeof (struct gconvcache_header)) - { - close_and_exit: -- __close (fd); -+ close_not_cancel_no_status (fd); - return -1; - } - -@@ -107,7 +109,7 @@ - } - - /* We don't need the file descriptor anymore. */ -- __close (fd); -+ close_not_cancel_no_status (fd); - - /* Check the consistency. */ - header = (struct gconvcache_header *) gconv_cache; -@@ -157,7 +159,7 @@ - hashtab = (struct hash_entry *) ((char *) gconv_cache - + header->hash_offset); - -- hval = hash_string (str); -+ hval = __hash_string (str); - idx = hval % header->hash_size; - hval2 = 1 + hval % (header->hash_size - 2); - ---- glibc-2.3.2/iconv/gconv_charset.h 2002-05-14 16:46:02.000000000 -0400 -+++ glibc-2.3.2/iconv/gconv_charset.h 2003-08-21 08:36:59.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Charset name normalization. -- Copyright (C) 2001,02 Free Software Foundation, Inc. -+ Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2001. - -@@ -22,7 +22,7 @@ - #include - - --static inline void -+static void - strip (char *wp, const char *s) - { - int slash_count = 0; -@@ -48,7 +48,7 @@ - } - - --static inline char * __attribute__ ((unused)) -+static inline char * __attribute__ ((unused, always_inline)) - upstr (char *dst, const char *str) - { - char *cp = dst; -@@ -56,8 +56,3 @@ - /* nothing */; - return dst; - } -- -- --/* If NAME is an codeset alias expand it. */ --extern int __gconv_compare_alias (const char *name1, const char *name2) -- internal_function; ---- glibc-2.3.2/iconv/gconv_conf.c 2002-12-15 23:26:02.000000000 -0500 -+++ glibc-2.3.2/iconv/gconv_conf.c 2003-09-19 22:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Handle configuration data. -- Copyright (C) 1997,98,99,2000,2001,2002 Free Software Foundation, Inc. -+ Copyright (C) 1997,98,99,2000,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1997. - -@@ -125,7 +125,7 @@ - - - /* Add new alias. */ --static inline void -+static void - add_alias (char *rp, void *modules) - { - /* We now expect two more string. The strings are normalized -@@ -178,7 +178,7 @@ - - - /* Insert a data structure for a new module in the search tree. */ --static inline void -+static void - internal_function - insert_module (struct gconv_module *newp, int tobefreed) - { -@@ -357,7 +357,9 @@ - read_conf_file (const char *filename, const char *directory, size_t dir_len, - void **modules, size_t *nmodules) - { -- FILE *fp = fopen (filename, "r"); -+ /* Note the file is opened with cancellation in the I/O functions -+ disabled. */ -+ FILE *fp = fopen (filename, "rc"); - char *line = NULL; - size_t line_len = 0; - static int modcounter; ---- glibc-2.3.2/iconv/gconv_db.c 2002-12-02 16:26:09.000000000 -0500 -+++ glibc-2.3.2/iconv/gconv_db.c 2003-08-21 08:36:59.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Provide access to the collection of available transformation modules. -- Copyright (C) 1997,98,99,2000,2001,2002 Free Software Foundation, Inc. -+ Copyright (C) 1997,98,99,2000,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1997. - -@@ -27,7 +27,6 @@ - - #include - #include --#include - - - /* Simple data structure for alias mapping. We have two names, `from' ---- glibc-2.3.2/iconv/gconv_int.h 2002-12-02 16:26:09.000000000 -0500 -+++ glibc-2.3.2/iconv/gconv_int.h 2003-08-21 08:36:59.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1997,1998,1999,2000,2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1997-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1997. - -@@ -262,6 +262,11 @@ - size_t *irreversible) attribute_hidden; - - -+/* If NAME is an codeset alias expand it. */ -+extern int __gconv_compare_alias (const char *name1, const char *name2) -+ internal_function; -+ -+ - /* Builtin transformations. */ - #ifdef _LIBC - # define __BUILTIN_TRANSFORM(Name) \ ---- glibc-2.3.2/iconv/gconv_simple.c 2003-01-16 01:31:35.000000000 -0500 -+++ glibc-2.3.2/iconv/gconv_simple.c 2003-08-21 08:36:59.000000000 -0400 -@@ -72,6 +72,7 @@ - - - static inline int -+__attribute ((always_inline)) - internal_ucs4_loop (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, const unsigned char *inend, -@@ -113,6 +114,7 @@ - - #ifndef _STRING_ARCH_unaligned - static inline int -+__attribute ((always_inline)) - internal_ucs4_loop_unaligned (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, -@@ -161,6 +163,7 @@ - - - static inline int -+__attribute ((always_inline)) - internal_ucs4_loop_single (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, -@@ -219,6 +222,7 @@ - - - static inline int -+__attribute ((always_inline)) - ucs4_internal_loop (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, const unsigned char *inend, -@@ -283,6 +287,7 @@ - - #ifndef _STRING_ARCH_unaligned - static inline int -+__attribute ((always_inline)) - ucs4_internal_loop_unaligned (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, -@@ -352,6 +357,7 @@ - - - static inline int -+__attribute ((always_inline)) - ucs4_internal_loop_single (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, -@@ -426,6 +432,7 @@ - - - static inline int -+__attribute ((always_inline)) - internal_ucs4le_loop (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, const unsigned char *inend, -@@ -467,6 +474,7 @@ - - #ifndef _STRING_ARCH_unaligned - static inline int -+__attribute ((always_inline)) - internal_ucs4le_loop_unaligned (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, -@@ -518,6 +526,7 @@ - - - static inline int -+__attribute ((always_inline)) - internal_ucs4le_loop_single (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, -@@ -573,6 +582,7 @@ - - - static inline int -+__attribute ((always_inline)) - ucs4le_internal_loop (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, const unsigned char *inend, -@@ -638,6 +648,7 @@ - - #ifndef _STRING_ARCH_unaligned - static inline int -+__attribute ((always_inline)) - ucs4le_internal_loop_unaligned (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, -@@ -711,6 +722,7 @@ - - - static inline int -+__attribute ((always_inline)) - ucs4le_internal_loop_single (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, ---- glibc-2.3.2/iconv/iconv.h 2001-07-07 15:20:58.000000000 -0400 -+++ glibc-2.3.2/iconv/iconv.h 2003-04-24 20:05:57.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc. -+/* Copyright (C) 1997, 1998, 1999, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -31,9 +31,11 @@ - - - /* Allocate descriptor for code conversion from codeset FROMCODE to -- codeset TOCODE. */ --extern iconv_t iconv_open (__const char *__tocode, __const char *__fromcode) -- __THROW; -+ codeset TOCODE. -+ -+ This function is a possible cancellation points and therefore not -+ marked with __THROW. */ -+extern iconv_t iconv_open (__const char *__tocode, __const char *__fromcode); - - /* Convert at most *INBYTESLEFT bytes from *INBUF according to the - code conversion algorithm specified by CD and place up to -@@ -43,8 +45,11 @@ - char **__restrict __outbuf, - size_t *__restrict __outbytesleft); - --/* Free resources allocated for descriptor CD for code conversion. */ --extern int iconv_close (iconv_t __cd) __THROW; -+/* Free resources allocated for descriptor CD for code conversion. -+ -+ This function is a possible cancellation points and therefore not -+ marked with __THROW. */ -+extern int iconv_close (iconv_t __cd); - - __END_DECLS - ---- glibc-2.3.2/iconv/iconv_prog.c 2003-02-22 14:20:07.000000000 -0500 -+++ glibc-2.3.2/iconv/iconv_prog.c 2003-04-12 11:39:42.000000000 -0400 -@@ -160,14 +160,16 @@ - if (*errhand == '/') - { - --nslash; -- ++errhand; -+ errhand = strchr (errhand, '\0'); - } - } - -- newp = (char *) alloca (errhand - to_code + nslash + 6 + 1); -+ newp = (char *) alloca (errhand - to_code + nslash + 7 + 1); - cp = mempcpy (newp, to_code, errhand - to_code); - while (nslash-- > 0) - *cp++ = '/'; -+ if (cp[-1] != '/') -+ *cp++ = ','; - memcpy (cp, "IGNORE", sizeof ("IGNORE")); - - to_code = newp; -@@ -496,8 +498,9 @@ - switch (errno) - { - case EILSEQ: -- error (0, 0, _("illegal input sequence at position %ld"), -- (long) (addr - start)); -+ if (! omit_invalid) -+ error (0, 0, _("illegal input sequence at position %ld"), -+ (long int) (addr - start)); - break; - case EINVAL: - error (0, 0, _("\ ---- glibc-2.3.2/iconv/iconvconfig.c 2003-01-02 14:59:10.000000000 -0500 -+++ glibc-2.3.2/iconv/iconvconfig.c 2003-08-21 08:36:59.000000000 -0400 -@@ -784,7 +784,7 @@ - newp->name = str; - newp->strent = strent; - newp->module_idx = -1; -- newp->hashval = hash_string (str); -+ newp->hashval = __hash_string (str); - - ++nnames; - ---- glibc-2.3.2/iconv/loop.c 2003-01-16 01:30:13.000000000 -0500 -+++ glibc-2.3.2/iconv/loop.c 2003-08-21 08:36:59.000000000 -0400 -@@ -257,6 +257,7 @@ - - /* The function returns the status, as defined in gconv.h. */ - static inline int -+__attribute ((always_inline)) - FCTNAME (LOOPFCT) (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, const unsigned char *inend, -@@ -342,6 +343,7 @@ - # define SINGLE(fct) SINGLE2 (fct) - # define SINGLE2(fct) fct##_single - static inline int -+__attribute ((always_inline)) - SINGLE(LOOPFCT) (struct __gconv_step *step, - struct __gconv_step_data *step_data, - const unsigned char **inptrp, const unsigned char *inend, ---- glibc-2.3.2/iconv/tst-iconv3.c 2002-03-28 18:41:38.000000000 -0500 -+++ glibc-2.3.2/iconv/tst-iconv3.c 2003-08-21 08:36:59.000000000 -0400 -@@ -42,7 +42,7 @@ - - printf ("inptr change: %td\n", inptr - inbuf); - printf ("inlen change: %zd\n", BUFSIZE - inbytes_left); -- printf ("outptr change: %zd\n", outptr - (char *) outbuf); -+ printf ("outptr change: %td\n", outptr - (char *) outbuf); - printf ("outlen change: %zd\n", BUFSIZE * 4 - outbytes_left); - result = 1; - } ---- glibc-2.3.2/iconvdata/CP932.irreversible 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/iconvdata/CP932.irreversible 2003-08-14 04:45:33.000000000 -0400 -@@ -0,0 +1,407 @@ -+0x5C 0x00A5 -+0x7E 0x203E -+0x815C 0x2014 -+0x8160 0x301C -+0x8161 0x2016 -+0x817C 0x2212 -+0x8191 0x00A2 -+0x8192 0x00A3 -+0x81CA 0x00AC -+0x8790 0x2252 -+0x8791 0x2261 -+0x8792 0x222B -+0x8795 0x221A -+0x8796 0x22A5 -+0x8797 0x2220 -+0x879A 0x2235 -+0x879B 0x2229 -+0x879C 0x222A -+0xED40 0x7E8A -+0xED41 0x891C -+0xED42 0x9348 -+0xED43 0x9288 -+0xED44 0x84DC -+0xED45 0x4FC9 -+0xED46 0x70BB -+0xED47 0x6631 -+0xED48 0x68C8 -+0xED49 0x92F9 -+0xED4A 0x66FB -+0xED4B 0x5F45 -+0xED4C 0x4E28 -+0xED4D 0x4EE1 -+0xED4E 0x4EFC -+0xED4F 0x4F00 -+0xED50 0x4F03 -+0xED51 0x4F39 -+0xED52 0x4F56 -+0xED53 0x4F92 -+0xED54 0x4F8A -+0xED55 0x4F9A -+0xED56 0x4F94 -+0xED57 0x4FCD -+0xED58 0x5040 -+0xED59 0x5022 -+0xED5A 0x4FFF -+0xED5B 0x501E -+0xED5C 0x5046 -+0xED5D 0x5070 -+0xED5E 0x5042 -+0xED5F 0x5094 -+0xED60 0x50F4 -+0xED61 0x50D8 -+0xED62 0x514A -+0xED63 0x5164 -+0xED64 0x519D -+0xED65 0x51BE -+0xED66 0x51EC -+0xED67 0x5215 -+0xED68 0x529C -+0xED69 0x52A6 -+0xED6A 0x52C0 -+0xED6B 0x52DB -+0xED6C 0x5300 -+0xED6D 0x5307 -+0xED6E 0x5324 -+0xED6F 0x5372 -+0xED70 0x5393 -+0xED71 0x53B2 -+0xED72 0x53DD -+0xED73 0xFA0E -+0xED74 0x549C -+0xED75 0x548A -+0xED76 0x54A9 -+0xED77 0x54FF -+0xED78 0x5586 -+0xED79 0x5759 -+0xED7A 0x5765 -+0xED7B 0x57AC -+0xED7C 0x57C8 -+0xED7D 0x57C7 -+0xED7E 0xFA0F -+0xED80 0xFA10 -+0xED81 0x589E -+0xED82 0x58B2 -+0xED83 0x590B -+0xED84 0x5953 -+0xED85 0x595B -+0xED86 0x595D -+0xED87 0x5963 -+0xED88 0x59A4 -+0xED89 0x59BA -+0xED8A 0x5B56 -+0xED8B 0x5BC0 -+0xED8C 0x752F -+0xED8D 0x5BD8 -+0xED8E 0x5BEC -+0xED8F 0x5C1E -+0xED90 0x5CA6 -+0xED91 0x5CBA -+0xED92 0x5CF5 -+0xED93 0x5D27 -+0xED94 0x5D53 -+0xED95 0xFA11 -+0xED96 0x5D42 -+0xED97 0x5D6D -+0xED98 0x5DB8 -+0xED99 0x5DB9 -+0xED9A 0x5DD0 -+0xED9B 0x5F21 -+0xED9C 0x5F34 -+0xED9D 0x5F67 -+0xED9E 0x5FB7 -+0xED9F 0x5FDE -+0xEDA0 0x605D -+0xEDA1 0x6085 -+0xEDA2 0x608A -+0xEDA3 0x60DE -+0xEDA4 0x60D5 -+0xEDA5 0x6120 -+0xEDA6 0x60F2 -+0xEDA7 0x6111 -+0xEDA8 0x6137 -+0xEDA9 0x6130 -+0xEDAA 0x6198 -+0xEDAB 0x6213 -+0xEDAC 0x62A6 -+0xEDAD 0x63F5 -+0xEDAE 0x6460 -+0xEDAF 0x649D -+0xEDB0 0x64CE -+0xEDB1 0x654E -+0xEDB2 0x6600 -+0xEDB3 0x6615 -+0xEDB4 0x663B -+0xEDB5 0x6609 -+0xEDB6 0x662E -+0xEDB7 0x661E -+0xEDB8 0x6624 -+0xEDB9 0x6665 -+0xEDBA 0x6657 -+0xEDBB 0x6659 -+0xEDBC 0xFA12 -+0xEDBD 0x6673 -+0xEDBE 0x6699 -+0xEDBF 0x66A0 -+0xEDC0 0x66B2 -+0xEDC1 0x66BF -+0xEDC2 0x66FA -+0xEDC3 0x670E -+0xEDC4 0xF929 -+0xEDC5 0x6766 -+0xEDC6 0x67BB -+0xEDC7 0x6852 -+0xEDC8 0x67C0 -+0xEDC9 0x6801 -+0xEDCA 0x6844 -+0xEDCB 0x68CF -+0xEDCC 0xFA13 -+0xEDCD 0x6968 -+0xEDCE 0xFA14 -+0xEDCF 0x6998 -+0xEDD0 0x69E2 -+0xEDD1 0x6A30 -+0xEDD2 0x6A6B -+0xEDD3 0x6A46 -+0xEDD4 0x6A73 -+0xEDD5 0x6A7E -+0xEDD6 0x6AE2 -+0xEDD7 0x6AE4 -+0xEDD8 0x6BD6 -+0xEDD9 0x6C3F -+0xEDDA 0x6C5C -+0xEDDB 0x6C86 -+0xEDDC 0x6C6F -+0xEDDD 0x6CDA -+0xEDDE 0x6D04 -+0xEDDF 0x6D87 -+0xEDE0 0x6D6F -+0xEDE1 0x6D96 -+0xEDE2 0x6DAC -+0xEDE3 0x6DCF -+0xEDE4 0x6DF8 -+0xEDE5 0x6DF2 -+0xEDE6 0x6DFC -+0xEDE7 0x6E39 -+0xEDE8 0x6E5C -+0xEDE9 0x6E27 -+0xEDEA 0x6E3C -+0xEDEB 0x6EBF -+0xEDEC 0x6F88 -+0xEDED 0x6FB5 -+0xEDEE 0x6FF5 -+0xEDEF 0x7005 -+0xEDF0 0x7007 -+0xEDF1 0x7028 -+0xEDF2 0x7085 -+0xEDF3 0x70AB -+0xEDF4 0x710F -+0xEDF5 0x7104 -+0xEDF6 0x715C -+0xEDF7 0x7146 -+0xEDF8 0x7147 -+0xEDF9 0xFA15 -+0xEDFA 0x71C1 -+0xEDFB 0x71FE -+0xEDFC 0x72B1 -+0xEE40 0x72BE -+0xEE41 0x7324 -+0xEE42 0xFA16 -+0xEE43 0x7377 -+0xEE44 0x73BD -+0xEE45 0x73C9 -+0xEE46 0x73D6 -+0xEE47 0x73E3 -+0xEE48 0x73D2 -+0xEE49 0x7407 -+0xEE4A 0x73F5 -+0xEE4B 0x7426 -+0xEE4C 0x742A -+0xEE4D 0x7429 -+0xEE4E 0x742E -+0xEE4F 0x7462 -+0xEE50 0x7489 -+0xEE51 0x749F -+0xEE52 0x7501 -+0xEE53 0x756F -+0xEE54 0x7682 -+0xEE55 0x769C -+0xEE56 0x769E -+0xEE57 0x769B -+0xEE58 0x76A6 -+0xEE59 0xFA17 -+0xEE5A 0x7746 -+0xEE5B 0x52AF -+0xEE5C 0x7821 -+0xEE5D 0x784E -+0xEE5E 0x7864 -+0xEE5F 0x787A -+0xEE60 0x7930 -+0xEE61 0xFA18 -+0xEE62 0xFA19 -+0xEE63 0xFA1A -+0xEE64 0x7994 -+0xEE65 0xFA1B -+0xEE66 0x799B -+0xEE67 0x7AD1 -+0xEE68 0x7AE7 -+0xEE69 0xFA1C -+0xEE6A 0x7AEB -+0xEE6B 0x7B9E -+0xEE6C 0xFA1D -+0xEE6D 0x7D48 -+0xEE6E 0x7D5C -+0xEE6F 0x7DB7 -+0xEE70 0x7DA0 -+0xEE71 0x7DD6 -+0xEE72 0x7E52 -+0xEE73 0x7F47 -+0xEE74 0x7FA1 -+0xEE75 0xFA1E -+0xEE76 0x8301 -+0xEE77 0x8362 -+0xEE78 0x837F -+0xEE79 0x83C7 -+0xEE7A 0x83F6 -+0xEE7B 0x8448 -+0xEE7C 0x84B4 -+0xEE7D 0x8553 -+0xEE7E 0x8559 -+0xEE80 0x856B -+0xEE81 0xFA1F -+0xEE82 0x85B0 -+0xEE83 0xFA20 -+0xEE84 0xFA21 -+0xEE85 0x8807 -+0xEE86 0x88F5 -+0xEE87 0x8A12 -+0xEE88 0x8A37 -+0xEE89 0x8A79 -+0xEE8A 0x8AA7 -+0xEE8B 0x8ABE -+0xEE8C 0x8ADF -+0xEE8D 0xFA22 -+0xEE8E 0x8AF6 -+0xEE8F 0x8B53 -+0xEE90 0x8B7F -+0xEE91 0x8CF0 -+0xEE92 0x8CF4 -+0xEE93 0x8D12 -+0xEE94 0x8D76 -+0xEE95 0xFA23 -+0xEE96 0x8ECF -+0xEE97 0xFA24 -+0xEE98 0xFA25 -+0xEE99 0x9067 -+0xEE9A 0x90DE -+0xEE9B 0xFA26 -+0xEE9C 0x9115 -+0xEE9D 0x9127 -+0xEE9E 0x91DA -+0xEE9F 0x91D7 -+0xEEA0 0x91DE -+0xEEA1 0x91ED -+0xEEA2 0x91EE -+0xEEA3 0x91E4 -+0xEEA4 0x91E5 -+0xEEA5 0x9206 -+0xEEA6 0x9210 -+0xEEA7 0x920A -+0xEEA8 0x923A -+0xEEA9 0x9240 -+0xEEAA 0x923C -+0xEEAB 0x924E -+0xEEAC 0x9259 -+0xEEAD 0x9251 -+0xEEAE 0x9239 -+0xEEAF 0x9267 -+0xEEB0 0x92A7 -+0xEEB1 0x9277 -+0xEEB2 0x9278 -+0xEEB3 0x92E7 -+0xEEB4 0x92D7 -+0xEEB5 0x92D9 -+0xEEB6 0x92D0 -+0xEEB7 0xFA27 -+0xEEB8 0x92D5 -+0xEEB9 0x92E0 -+0xEEBA 0x92D3 -+0xEEBB 0x9325 -+0xEEBC 0x9321 -+0xEEBD 0x92FB -+0xEEBE 0xFA28 -+0xEEBF 0x931E -+0xEEC0 0x92FF -+0xEEC1 0x931D -+0xEEC2 0x9302 -+0xEEC3 0x9370 -+0xEEC4 0x9357 -+0xEEC5 0x93A4 -+0xEEC6 0x93C6 -+0xEEC7 0x93DE -+0xEEC8 0x93F8 -+0xEEC9 0x9431 -+0xEECA 0x9445 -+0xEECB 0x9448 -+0xEECC 0x9592 -+0xEECD 0xF9DC -+0xEECE 0xFA29 -+0xEECF 0x969D -+0xEED0 0x96AF -+0xEED1 0x9733 -+0xEED2 0x973B -+0xEED3 0x9743 -+0xEED4 0x974D -+0xEED5 0x974F -+0xEED6 0x9751 -+0xEED7 0x9755 -+0xEED8 0x9857 -+0xEED9 0x9865 -+0xEEDA 0xFA2A -+0xEEDB 0xFA2B -+0xEEDC 0x9927 -+0xEEDD 0xFA2C -+0xEEDE 0x999E -+0xEEDF 0x9A4E -+0xEEE0 0x9AD9 -+0xEEE1 0x9ADC -+0xEEE2 0x9B75 -+0xEEE3 0x9B72 -+0xEEE4 0x9B8F -+0xEEE5 0x9BB1 -+0xEEE6 0x9BBB -+0xEEE7 0x9C00 -+0xEEE8 0x9D70 -+0xEEE9 0x9D6B -+0xEEEA 0xFA2D -+0xEEEB 0x9E19 -+0xEEEC 0x9ED1 -+0xEEEF 0x2170 -+0xEEF0 0x2171 -+0xEEF1 0x2172 -+0xEEF2 0x2173 -+0xEEF3 0x2174 -+0xEEF4 0x2175 -+0xEEF5 0x2176 -+0xEEF6 0x2177 -+0xEEF7 0x2178 -+0xEEF8 0x2179 -+0xEEF9 0xFFE2 -+0xEEFA 0xFFE4 -+0xEEFB 0xFF07 -+0xEEFC 0xFF02 -+0xFA4A 0x2160 -+0xFA4B 0x2161 -+0xFA4C 0x2162 -+0xFA4D 0x2163 -+0xFA4E 0x2164 -+0xFA4F 0x2165 -+0xFA50 0x2166 -+0xFA51 0x2167 -+0xFA52 0x2168 -+0xFA53 0x2169 -+0xFA54 0xFFE2 -+0xFA58 0x3231 -+0xFA59 0x2116 -+0xFA5A 0x2121 -+0xFA5B 0x2235 ---- glibc-2.3.2/iconvdata/EUC-JP-MS.irreversible 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/iconvdata/EUC-JP-MS.irreversible 2003-08-14 04:45:33.000000000 -0400 -@@ -0,0 +1,34 @@ -+0x5C 0x00A5 -+0x7E 0x203E -+0x8FA2B7 0xFF5E -+0x8FA2C3 0x00A6 -+0x8FA2F1 0x2116 -+0x8FF3FD 0x2160 -+0x8FF3FE 0x2161 -+0x8FF4A1 0x2162 -+0x8FF4A2 0x2163 -+0x8FF4A3 0x2164 -+0x8FF4A4 0x2165 -+0x8FF4A5 0x2166 -+0x8FF4A6 0x2167 -+0x8FF4A7 0x2168 -+0x8FF4A8 0x2169 -+0x8FF4AB 0x3231 -+0x8FF4AC 0x2116 -+0x8FF4AD 0x2121 -+0xA1BD 0x2014 -+0xA1C1 0x301C -+0xA1C2 0x2016 -+0xA1DD 0x2212 -+0xA1F1 0x00A2 -+0xA1F2 0x00A3 -+0xA2CC 0x00AC -+0xADF0 0x2252 -+0xADF1 0x2261 -+0xADF2 0x222B -+0xADF5 0x221A -+0xADF6 0x22A5 -+0xADF7 0x2220 -+0xADFA 0x2235 -+0xADFB 0x2229 -+0xADFC 0x222A ---- glibc-2.3.2/iconvdata/Makefile 2003-02-21 20:01:16.000000000 -0500 -+++ glibc-2.3.2/iconvdata/Makefile 2003-08-21 08:36:59.000000000 -0400 -@@ -51,14 +51,14 @@ - GB18030 ISO-2022-CN-EXT VISCII GBBIG5 CP10007 KOI8-T \ - GEORGIAN-PS GEORGIAN-ACADEMY ISO-IR-209 MAC-SAMI ARMSCII-8 \ - TCVN5712-1 libJISX0213 EUC-JISX0213 SHIFT_JISX0213 \ -- ISO-2022-JP-3 TSCII IBM866NAV -+ ISO-2022-JP-3 TSCII IBM866NAV CP932 EUC-JP-MS - - modules.so := $(addsuffix .so, $(modules)) - - include ../Makeconfig - - ifeq (yes,$(build-shared)) --tests = bug-iconv1 bug-iconv2 tst-loading tst-e2big tst-iconv4 -+tests = bug-iconv1 bug-iconv2 tst-loading tst-e2big tst-iconv4 bug-iconv4 - ifeq ($(have-thread-library),yes) - tests += bug-iconv3 - endif -@@ -84,6 +84,8 @@ - $(objpfx)UHC.so: $(objpfx)libKSC.so - LDFLAGS-EUC-JP.so = $(LDFLAGS-rpath-ORIGIN) - $(objpfx)EUC-JP.so: $(objpfx)libJIS.so -+LDFLAGS-EUC-JP-MS.so = $(LDFLAGS-rpath-ORIGIN) -+$(objpfx)EUC-JP-MS.so: $(objpfx)libJIS.so - LDFLAGS-EUC-CN.so = $(LDFLAGS-rpath-ORIGIN) - $(objpfx)EUC-CN.so: $(objpfx)libGB.so - LDFLAGS-EUC-TW.so = $(LDFLAGS-rpath-ORIGIN) ---- glibc-2.3.2/iconvdata/bug-iconv4.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/iconvdata/bug-iconv4.c 2003-03-26 03:10:58.000000000 -0500 -@@ -0,0 +1,78 @@ -+/* Contributed by Jiro SEKIBA . */ -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#define UCS_STR "\x4e\x8c" /* EUC-TW 0xa2a2, EUC-JP 0x */ -+ -+static const char *to_code; -+ -+static bool -+xiconv (iconv_t cd, int out_size) -+{ -+ unsigned char euc[4]; -+ char *inp = (char *) UCS_STR; -+ char *outp = euc; -+ size_t inbytesleft = strlen (UCS_STR); -+ size_t outbytesleft = out_size; -+ size_t ret; -+ bool fail = false; -+ -+ errno = 0; -+ ret = iconv (cd, &inp, &inbytesleft, &outp, &outbytesleft); -+ if (errno || ret == (size_t) -1) -+ { -+ fail = out_size == 4 || errno != E2BIG; -+ printf ("expected %d (E2BIG), got %d (%m)\n", E2BIG, errno); -+ } -+ else -+ { -+ printf ("%s: 0x%02x%02x\n", to_code, euc[0], euc[1]); -+ if (out_size == 1) -+ fail = true; -+ } -+ -+ return fail; -+} -+ -+ -+static iconv_t -+xiconv_open (const char *code) -+{ -+ iconv_t cd; -+ to_code = code; -+ errno = 0; -+ if (errno || (cd = iconv_open (to_code, "UCS-2BE")) == (iconv_t) -1) -+ { -+ puts ("Can't open converter"); -+ exit (1); -+ } -+ return cd; -+} -+ -+ -+int -+main (void) -+{ -+ iconv_t cd; -+ int result = 0; -+ -+ cd = xiconv_open ("EUC-TW"); -+ result |= xiconv (cd, 4) == true; -+ puts ("---"); -+ result |= xiconv (cd, 1) == true; -+ puts ("---"); -+ iconv_close (cd); -+ -+ cd = xiconv_open ("EUC-JP"); -+ result |= xiconv (cd, 4) == true; -+ puts ("---"); -+ result |= xiconv (cd, 1) == true; -+ puts ("---"); -+ iconv_close (cd); -+ -+ return result; -+} ---- glibc-2.3.2/iconvdata/cns11643.h 2002-04-20 03:31:30.000000000 -0400 -+++ glibc-2.3.2/iconvdata/cns11643.h 2003-08-21 08:37:00.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Access functions for CNS 11643 handling. -- Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1998,1999,2000,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1998. - -@@ -40,6 +40,7 @@ - - - static inline uint32_t -+__attribute ((always_inline)) - cns11643_to_ucs4 (const char **s, size_t avail, unsigned char offset) - { - unsigned char ch = *(*s); -@@ -140,6 +141,7 @@ - - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_cns11643 (uint32_t wch, char *s, size_t avail) - { - unsigned int ch = (unsigned int) wch; ---- glibc-2.3.2/iconvdata/cns11643l1.h 2001-07-07 15:20:59.000000000 -0400 -+++ glibc-2.3.2/iconvdata/cns11643l1.h 2003-08-21 08:37:00.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Access functions for CNS 11643, plane 1 handling. -- Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1998, 1999, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1998. - -@@ -26,6 +26,7 @@ - - - static inline uint32_t -+__attribute ((always_inline)) - cns11643l1_to_ucs4 (const unsigned char **s, size_t avail, - unsigned char offset) - { -@@ -71,6 +72,7 @@ - - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_cns11643l1 (uint32_t wch, unsigned char *s, size_t avail) - { - unsigned int ch = (unsigned int) wch; ---- glibc-2.3.2/iconvdata/cns11643l2.h 2001-07-07 15:20:59.000000000 -0400 -+++ glibc-2.3.2/iconvdata/cns11643l2.h 2003-08-21 08:37:00.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Access functions for CNS 11643, plane 2 handling. -- Copyright (C) 1998, 1999, 2001 Free Software Foundation, Inc. -+ Copyright (C) 1998, 1999, 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1998. - -@@ -26,6 +26,7 @@ - - - static inline uint32_t -+__attribute ((always_inline)) - cns11643l2_to_ucs4 (const unsigned char **s, size_t avail, - unsigned char offset) - { -@@ -58,6 +59,7 @@ - - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_cns11643l2 (uint32_t wch, unsigned char *s, size_t avail) - { - unsigned int ch = (unsigned int) wch; ---- glibc-2.3.2/iconvdata/cp932.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/iconvdata/cp932.c 2003-08-14 04:34:48.000000000 -0400 -@@ -0,0 +1,4728 @@ -+/* Mapping tables for CP932 handling. -+ Copyright (C) 1997,1998,1999,2000,2001,2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by MORIYAMA Masayuki , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+ -+static const uint16_t cjk_block1[703] = -+{ -+ /* start = 0x8140, end = 0x84be */ -+ [ 0] = 0x3000, [ 1] = 0x3001, [ 2] = 0x3002, [ 3] = 0xff0c, -+ [ 4] = 0xff0e, [ 5] = 0x30fb, [ 6] = 0xff1a, [ 7] = 0xff1b, -+ [ 8] = 0xff1f, [ 9] = 0xff01, [ 10] = 0x309b, [ 11] = 0x309c, -+ [ 12] = 0x00b4, [ 13] = 0xff40, [ 14] = 0x00a8, [ 15] = 0xff3e, -+ [ 16] = 0xffe3, [ 17] = 0xff3f, [ 18] = 0x30fd, [ 19] = 0x30fe, -+ [ 20] = 0x309d, [ 21] = 0x309e, [ 22] = 0x3003, [ 23] = 0x4edd, -+ [ 24] = 0x3005, [ 25] = 0x3006, [ 26] = 0x3007, [ 27] = 0x30fc, -+ [ 28] = 0x2015, [ 29] = 0x2010, [ 30] = 0xff0f, [ 31] = 0xff3c, -+ [ 32] = 0xff5e, [ 33] = 0x2225, [ 34] = 0xff5c, [ 35] = 0x2026, -+ [ 36] = 0x2025, [ 37] = 0x2018, [ 38] = 0x2019, [ 39] = 0x201c, -+ [ 40] = 0x201d, [ 41] = 0xff08, [ 42] = 0xff09, [ 43] = 0x3014, -+ [ 44] = 0x3015, [ 45] = 0xff3b, [ 46] = 0xff3d, [ 47] = 0xff5b, -+ [ 48] = 0xff5d, [ 49] = 0x3008, [ 50] = 0x3009, [ 51] = 0x300a, -+ [ 52] = 0x300b, [ 53] = 0x300c, [ 54] = 0x300d, [ 55] = 0x300e, -+ [ 56] = 0x300f, [ 57] = 0x3010, [ 58] = 0x3011, [ 59] = 0xff0b, -+ [ 60] = 0xff0d, [ 61] = 0x00b1, [ 62] = 0x00d7, [ 64] = 0x00f7, -+ [ 65] = 0xff1d, [ 66] = 0x2260, [ 67] = 0xff1c, [ 68] = 0xff1e, -+ [ 69] = 0x2266, [ 70] = 0x2267, [ 71] = 0x221e, [ 72] = 0x2234, -+ [ 73] = 0x2642, [ 74] = 0x2640, [ 75] = 0x00b0, [ 76] = 0x2032, -+ [ 77] = 0x2033, [ 78] = 0x2103, [ 79] = 0xffe5, [ 80] = 0xff04, -+ [ 81] = 0xffe0, [ 82] = 0xffe1, [ 83] = 0xff05, [ 84] = 0xff03, -+ [ 85] = 0xff06, [ 86] = 0xff0a, [ 87] = 0xff20, [ 88] = 0x00a7, -+ [ 89] = 0x2606, [ 90] = 0x2605, [ 91] = 0x25cb, [ 92] = 0x25cf, -+ [ 93] = 0x25ce, [ 94] = 0x25c7, [ 95] = 0x25c6, [ 96] = 0x25a1, -+ [ 97] = 0x25a0, [ 98] = 0x25b3, [ 99] = 0x25b2, [ 100] = 0x25bd, -+ [ 101] = 0x25bc, [ 102] = 0x203b, [ 103] = 0x3012, [ 104] = 0x2192, -+ [ 105] = 0x2190, [ 106] = 0x2191, [ 107] = 0x2193, [ 108] = 0x3013, -+ [ 120] = 0x2208, [ 121] = 0x220b, [ 122] = 0x2286, [ 123] = 0x2287, -+ [ 124] = 0x2282, [ 125] = 0x2283, [ 126] = 0x222a, [ 127] = 0x2229, -+ [ 136] = 0x2227, [ 137] = 0x2228, [ 138] = 0xffe2, [ 139] = 0x21d2, -+ [ 140] = 0x21d4, [ 141] = 0x2200, [ 142] = 0x2203, [ 154] = 0x2220, -+ [ 155] = 0x22a5, [ 156] = 0x2312, [ 157] = 0x2202, [ 158] = 0x2207, -+ [ 159] = 0x2261, [ 160] = 0x2252, [ 161] = 0x226a, [ 162] = 0x226b, -+ [ 163] = 0x221a, [ 164] = 0x223d, [ 165] = 0x221d, [ 166] = 0x2235, -+ [ 167] = 0x222b, [ 168] = 0x222c, [ 176] = 0x212b, [ 177] = 0x2030, -+ [ 178] = 0x266f, [ 179] = 0x266d, [ 180] = 0x266a, [ 181] = 0x2020, -+ [ 182] = 0x2021, [ 183] = 0x00b6, [ 188] = 0x25ef, [ 207] = 0xff10, -+ [ 208] = 0xff11, [ 209] = 0xff12, [ 210] = 0xff13, [ 211] = 0xff14, -+ [ 212] = 0xff15, [ 213] = 0xff16, [ 214] = 0xff17, [ 215] = 0xff18, -+ [ 216] = 0xff19, [ 224] = 0xff21, [ 225] = 0xff22, [ 226] = 0xff23, -+ [ 227] = 0xff24, [ 228] = 0xff25, [ 229] = 0xff26, [ 230] = 0xff27, -+ [ 231] = 0xff28, [ 232] = 0xff29, [ 233] = 0xff2a, [ 234] = 0xff2b, -+ [ 235] = 0xff2c, [ 236] = 0xff2d, [ 237] = 0xff2e, [ 238] = 0xff2f, -+ [ 239] = 0xff30, [ 240] = 0xff31, [ 241] = 0xff32, [ 242] = 0xff33, -+ [ 243] = 0xff34, [ 244] = 0xff35, [ 245] = 0xff36, [ 246] = 0xff37, -+ [ 247] = 0xff38, [ 248] = 0xff39, [ 249] = 0xff3a, [ 257] = 0xff41, -+ [ 258] = 0xff42, [ 259] = 0xff43, [ 260] = 0xff44, [ 261] = 0xff45, -+ [ 262] = 0xff46, [ 263] = 0xff47, [ 264] = 0xff48, [ 265] = 0xff49, -+ [ 266] = 0xff4a, [ 267] = 0xff4b, [ 268] = 0xff4c, [ 269] = 0xff4d, -+ [ 270] = 0xff4e, [ 271] = 0xff4f, [ 272] = 0xff50, [ 273] = 0xff51, -+ [ 274] = 0xff52, [ 275] = 0xff53, [ 276] = 0xff54, [ 277] = 0xff55, -+ [ 278] = 0xff56, [ 279] = 0xff57, [ 280] = 0xff58, [ 281] = 0xff59, -+ [ 282] = 0xff5a, [ 287] = 0x3041, [ 288] = 0x3042, [ 289] = 0x3043, -+ [ 290] = 0x3044, [ 291] = 0x3045, [ 292] = 0x3046, [ 293] = 0x3047, -+ [ 294] = 0x3048, [ 295] = 0x3049, [ 296] = 0x304a, [ 297] = 0x304b, -+ [ 298] = 0x304c, [ 299] = 0x304d, [ 300] = 0x304e, [ 301] = 0x304f, -+ [ 302] = 0x3050, [ 303] = 0x3051, [ 304] = 0x3052, [ 305] = 0x3053, -+ [ 306] = 0x3054, [ 307] = 0x3055, [ 308] = 0x3056, [ 309] = 0x3057, -+ [ 310] = 0x3058, [ 311] = 0x3059, [ 312] = 0x305a, [ 313] = 0x305b, -+ [ 314] = 0x305c, [ 315] = 0x305d, [ 316] = 0x305e, [ 317] = 0x305f, -+ [ 318] = 0x3060, [ 319] = 0x3061, [ 320] = 0x3062, [ 321] = 0x3063, -+ [ 322] = 0x3064, [ 323] = 0x3065, [ 324] = 0x3066, [ 325] = 0x3067, -+ [ 326] = 0x3068, [ 327] = 0x3069, [ 328] = 0x306a, [ 329] = 0x306b, -+ [ 330] = 0x306c, [ 331] = 0x306d, [ 332] = 0x306e, [ 333] = 0x306f, -+ [ 334] = 0x3070, [ 335] = 0x3071, [ 336] = 0x3072, [ 337] = 0x3073, -+ [ 338] = 0x3074, [ 339] = 0x3075, [ 340] = 0x3076, [ 341] = 0x3077, -+ [ 342] = 0x3078, [ 343] = 0x3079, [ 344] = 0x307a, [ 345] = 0x307b, -+ [ 346] = 0x307c, [ 347] = 0x307d, [ 348] = 0x307e, [ 349] = 0x307f, -+ [ 350] = 0x3080, [ 351] = 0x3081, [ 352] = 0x3082, [ 353] = 0x3083, -+ [ 354] = 0x3084, [ 355] = 0x3085, [ 356] = 0x3086, [ 357] = 0x3087, -+ [ 358] = 0x3088, [ 359] = 0x3089, [ 360] = 0x308a, [ 361] = 0x308b, -+ [ 362] = 0x308c, [ 363] = 0x308d, [ 364] = 0x308e, [ 365] = 0x308f, -+ [ 366] = 0x3090, [ 367] = 0x3091, [ 368] = 0x3092, [ 369] = 0x3093, -+ [ 384] = 0x30a1, [ 385] = 0x30a2, [ 386] = 0x30a3, [ 387] = 0x30a4, -+ [ 388] = 0x30a5, [ 389] = 0x30a6, [ 390] = 0x30a7, [ 391] = 0x30a8, -+ [ 392] = 0x30a9, [ 393] = 0x30aa, [ 394] = 0x30ab, [ 395] = 0x30ac, -+ [ 396] = 0x30ad, [ 397] = 0x30ae, [ 398] = 0x30af, [ 399] = 0x30b0, -+ [ 400] = 0x30b1, [ 401] = 0x30b2, [ 402] = 0x30b3, [ 403] = 0x30b4, -+ [ 404] = 0x30b5, [ 405] = 0x30b6, [ 406] = 0x30b7, [ 407] = 0x30b8, -+ [ 408] = 0x30b9, [ 409] = 0x30ba, [ 410] = 0x30bb, [ 411] = 0x30bc, -+ [ 412] = 0x30bd, [ 413] = 0x30be, [ 414] = 0x30bf, [ 415] = 0x30c0, -+ [ 416] = 0x30c1, [ 417] = 0x30c2, [ 418] = 0x30c3, [ 419] = 0x30c4, -+ [ 420] = 0x30c5, [ 421] = 0x30c6, [ 422] = 0x30c7, [ 423] = 0x30c8, -+ [ 424] = 0x30c9, [ 425] = 0x30ca, [ 426] = 0x30cb, [ 427] = 0x30cc, -+ [ 428] = 0x30cd, [ 429] = 0x30ce, [ 430] = 0x30cf, [ 431] = 0x30d0, -+ [ 432] = 0x30d1, [ 433] = 0x30d2, [ 434] = 0x30d3, [ 435] = 0x30d4, -+ [ 436] = 0x30d5, [ 437] = 0x30d6, [ 438] = 0x30d7, [ 439] = 0x30d8, -+ [ 440] = 0x30d9, [ 441] = 0x30da, [ 442] = 0x30db, [ 443] = 0x30dc, -+ [ 444] = 0x30dd, [ 445] = 0x30de, [ 446] = 0x30df, [ 448] = 0x30e0, -+ [ 449] = 0x30e1, [ 450] = 0x30e2, [ 451] = 0x30e3, [ 452] = 0x30e4, -+ [ 453] = 0x30e5, [ 454] = 0x30e6, [ 455] = 0x30e7, [ 456] = 0x30e8, -+ [ 457] = 0x30e9, [ 458] = 0x30ea, [ 459] = 0x30eb, [ 460] = 0x30ec, -+ [ 461] = 0x30ed, [ 462] = 0x30ee, [ 463] = 0x30ef, [ 464] = 0x30f0, -+ [ 465] = 0x30f1, [ 466] = 0x30f2, [ 467] = 0x30f3, [ 468] = 0x30f4, -+ [ 469] = 0x30f5, [ 470] = 0x30f6, [ 479] = 0x0391, [ 480] = 0x0392, -+ [ 481] = 0x0393, [ 482] = 0x0394, [ 483] = 0x0395, [ 484] = 0x0396, -+ [ 485] = 0x0397, [ 486] = 0x0398, [ 487] = 0x0399, [ 488] = 0x039a, -+ [ 489] = 0x039b, [ 490] = 0x039c, [ 491] = 0x039d, [ 492] = 0x039e, -+ [ 493] = 0x039f, [ 494] = 0x03a0, [ 495] = 0x03a1, [ 496] = 0x03a3, -+ [ 497] = 0x03a4, [ 498] = 0x03a5, [ 499] = 0x03a6, [ 500] = 0x03a7, -+ [ 501] = 0x03a8, [ 502] = 0x03a9, [ 511] = 0x03b1, [ 512] = 0x03b2, -+ [ 513] = 0x03b3, [ 514] = 0x03b4, [ 515] = 0x03b5, [ 516] = 0x03b6, -+ [ 517] = 0x03b7, [ 518] = 0x03b8, [ 519] = 0x03b9, [ 520] = 0x03ba, -+ [ 521] = 0x03bb, [ 522] = 0x03bc, [ 523] = 0x03bd, [ 524] = 0x03be, -+ [ 525] = 0x03bf, [ 526] = 0x03c0, [ 527] = 0x03c1, [ 528] = 0x03c3, -+ [ 529] = 0x03c4, [ 530] = 0x03c5, [ 531] = 0x03c6, [ 532] = 0x03c7, -+ [ 533] = 0x03c8, [ 534] = 0x03c9, [ 576] = 0x0410, [ 577] = 0x0411, -+ [ 578] = 0x0412, [ 579] = 0x0413, [ 580] = 0x0414, [ 581] = 0x0415, -+ [ 582] = 0x0401, [ 583] = 0x0416, [ 584] = 0x0417, [ 585] = 0x0418, -+ [ 586] = 0x0419, [ 587] = 0x041a, [ 588] = 0x041b, [ 589] = 0x041c, -+ [ 590] = 0x041d, [ 591] = 0x041e, [ 592] = 0x041f, [ 593] = 0x0420, -+ [ 594] = 0x0421, [ 595] = 0x0422, [ 596] = 0x0423, [ 597] = 0x0424, -+ [ 598] = 0x0425, [ 599] = 0x0426, [ 600] = 0x0427, [ 601] = 0x0428, -+ [ 602] = 0x0429, [ 603] = 0x042a, [ 604] = 0x042b, [ 605] = 0x042c, -+ [ 606] = 0x042d, [ 607] = 0x042e, [ 608] = 0x042f, [ 624] = 0x0430, -+ [ 625] = 0x0431, [ 626] = 0x0432, [ 627] = 0x0433, [ 628] = 0x0434, -+ [ 629] = 0x0435, [ 630] = 0x0451, [ 631] = 0x0436, [ 632] = 0x0437, -+ [ 633] = 0x0438, [ 634] = 0x0439, [ 635] = 0x043a, [ 636] = 0x043b, -+ [ 637] = 0x043c, [ 638] = 0x043d, [ 640] = 0x043e, [ 641] = 0x043f, -+ [ 642] = 0x0440, [ 643] = 0x0441, [ 644] = 0x0442, [ 645] = 0x0443, -+ [ 646] = 0x0444, [ 647] = 0x0445, [ 648] = 0x0446, [ 649] = 0x0447, -+ [ 650] = 0x0448, [ 651] = 0x0449, [ 652] = 0x044a, [ 653] = 0x044b, -+ [ 654] = 0x044c, [ 655] = 0x044d, [ 656] = 0x044e, [ 657] = 0x044f, -+ [ 671] = 0x2500, [ 672] = 0x2502, [ 673] = 0x250c, [ 674] = 0x2510, -+ [ 675] = 0x2518, [ 676] = 0x2514, [ 677] = 0x251c, [ 678] = 0x252c, -+ [ 679] = 0x2524, [ 680] = 0x2534, [ 681] = 0x253c, [ 682] = 0x2501, -+ [ 683] = 0x2503, [ 684] = 0x250f, [ 685] = 0x2513, [ 686] = 0x251b, -+ [ 687] = 0x2517, [ 688] = 0x2523, [ 689] = 0x2533, [ 690] = 0x252b, -+ [ 691] = 0x253b, [ 692] = 0x254b, [ 693] = 0x2520, [ 694] = 0x252f, -+ [ 695] = 0x2528, [ 696] = 0x2537, [ 697] = 0x253f, [ 698] = 0x251d, -+ [ 699] = 0x2530, [ 700] = 0x2525, [ 701] = 0x2538, [ 702] = 0x2542 -+}; -+ -+static const uint16_t cjk_block2[93] = -+{ -+ /* start = 0x8740, end = 0x879c */ -+ [ 0] = 0x2460, [ 1] = 0x2461, [ 2] = 0x2462, [ 3] = 0x2463, -+ [ 4] = 0x2464, [ 5] = 0x2465, [ 6] = 0x2466, [ 7] = 0x2467, -+ [ 8] = 0x2468, [ 9] = 0x2469, [ 10] = 0x246a, [ 11] = 0x246b, -+ [ 12] = 0x246c, [ 13] = 0x246d, [ 14] = 0x246e, [ 15] = 0x246f, -+ [ 16] = 0x2470, [ 17] = 0x2471, [ 18] = 0x2472, [ 19] = 0x2473, -+ [ 20] = 0x2160, [ 21] = 0x2161, [ 22] = 0x2162, [ 23] = 0x2163, -+ [ 24] = 0x2164, [ 25] = 0x2165, [ 26] = 0x2166, [ 27] = 0x2167, -+ [ 28] = 0x2168, [ 29] = 0x2169, [ 31] = 0x3349, [ 32] = 0x3314, -+ [ 33] = 0x3322, [ 34] = 0x334d, [ 35] = 0x3318, [ 36] = 0x3327, -+ [ 37] = 0x3303, [ 38] = 0x3336, [ 39] = 0x3351, [ 40] = 0x3357, -+ [ 41] = 0x330d, [ 42] = 0x3326, [ 43] = 0x3323, [ 44] = 0x332b, -+ [ 45] = 0x334a, [ 46] = 0x333b, [ 47] = 0x339c, [ 48] = 0x339d, -+ [ 49] = 0x339e, [ 50] = 0x338e, [ 51] = 0x338f, [ 52] = 0x33c4, -+ [ 53] = 0x33a1, [ 62] = 0x337b, [ 64] = 0x301d, [ 65] = 0x301f, -+ [ 66] = 0x2116, [ 67] = 0x33cd, [ 68] = 0x2121, [ 69] = 0x32a4, -+ [ 70] = 0x32a5, [ 71] = 0x32a6, [ 72] = 0x32a7, [ 73] = 0x32a8, -+ [ 74] = 0x3231, [ 75] = 0x3232, [ 76] = 0x3239, [ 77] = 0x337e, -+ [ 78] = 0x337d, [ 79] = 0x337c, [ 80] = 0x2252, [ 81] = 0x2261, -+ [ 82] = 0x222b, [ 83] = 0x222e, [ 84] = 0x2211, [ 85] = 0x221a, -+ [ 86] = 0x22a5, [ 87] = 0x2220, [ 88] = 0x221f, [ 89] = 0x22bf, -+ [ 90] = 0x2235, [ 91] = 0x2229, [ 92] = 0x222a -+}; -+ -+static const uint16_t cjk_block3[94] = -+{ -+ /* start = 0x889f, end = 0x88fc */ -+ [ 0] = 0x4e9c, [ 1] = 0x5516, [ 2] = 0x5a03, [ 3] = 0x963f, -+ [ 4] = 0x54c0, [ 5] = 0x611b, [ 6] = 0x6328, [ 7] = 0x59f6, -+ [ 8] = 0x9022, [ 9] = 0x8475, [ 10] = 0x831c, [ 11] = 0x7a50, -+ [ 12] = 0x60aa, [ 13] = 0x63e1, [ 14] = 0x6e25, [ 15] = 0x65ed, -+ [ 16] = 0x8466, [ 17] = 0x82a6, [ 18] = 0x9bf5, [ 19] = 0x6893, -+ [ 20] = 0x5727, [ 21] = 0x65a1, [ 22] = 0x6271, [ 23] = 0x5b9b, -+ [ 24] = 0x59d0, [ 25] = 0x867b, [ 26] = 0x98f4, [ 27] = 0x7d62, -+ [ 28] = 0x7dbe, [ 29] = 0x9b8e, [ 30] = 0x6216, [ 31] = 0x7c9f, -+ [ 32] = 0x88b7, [ 33] = 0x5b89, [ 34] = 0x5eb5, [ 35] = 0x6309, -+ [ 36] = 0x6697, [ 37] = 0x6848, [ 38] = 0x95c7, [ 39] = 0x978d, -+ [ 40] = 0x674f, [ 41] = 0x4ee5, [ 42] = 0x4f0a, [ 43] = 0x4f4d, -+ [ 44] = 0x4f9d, [ 45] = 0x5049, [ 46] = 0x56f2, [ 47] = 0x5937, -+ [ 48] = 0x59d4, [ 49] = 0x5a01, [ 50] = 0x5c09, [ 51] = 0x60df, -+ [ 52] = 0x610f, [ 53] = 0x6170, [ 54] = 0x6613, [ 55] = 0x6905, -+ [ 56] = 0x70ba, [ 57] = 0x754f, [ 58] = 0x7570, [ 59] = 0x79fb, -+ [ 60] = 0x7dad, [ 61] = 0x7def, [ 62] = 0x80c3, [ 63] = 0x840e, -+ [ 64] = 0x8863, [ 65] = 0x8b02, [ 66] = 0x9055, [ 67] = 0x907a, -+ [ 68] = 0x533b, [ 69] = 0x4e95, [ 70] = 0x4ea5, [ 71] = 0x57df, -+ [ 72] = 0x80b2, [ 73] = 0x90c1, [ 74] = 0x78ef, [ 75] = 0x4e00, -+ [ 76] = 0x58f1, [ 77] = 0x6ea2, [ 78] = 0x9038, [ 79] = 0x7a32, -+ [ 80] = 0x8328, [ 81] = 0x828b, [ 82] = 0x9c2f, [ 83] = 0x5141, -+ [ 84] = 0x5370, [ 85] = 0x54bd, [ 86] = 0x54e1, [ 87] = 0x56e0, -+ [ 88] = 0x59fb, [ 89] = 0x5f15, [ 90] = 0x98f2, [ 91] = 0x6deb, -+ [ 92] = 0x80e4, [ 93] = 0x852d -+}; -+ -+static const uint16_t cjk_block4[4413] = -+{ -+ /* start = 0x8940, end = 0x9ffc */ -+ [ 0] = 0x9662, [ 1] = 0x9670, [ 2] = 0x96a0, [ 3] = 0x97fb, -+ [ 4] = 0x540b, [ 5] = 0x53f3, [ 6] = 0x5b87, [ 7] = 0x70cf, -+ [ 8] = 0x7fbd, [ 9] = 0x8fc2, [ 10] = 0x96e8, [ 11] = 0x536f, -+ [ 12] = 0x9d5c, [ 13] = 0x7aba, [ 14] = 0x4e11, [ 15] = 0x7893, -+ [ 16] = 0x81fc, [ 17] = 0x6e26, [ 18] = 0x5618, [ 19] = 0x5504, -+ [ 20] = 0x6b1d, [ 21] = 0x851a, [ 22] = 0x9c3b, [ 23] = 0x59e5, -+ [ 24] = 0x53a9, [ 25] = 0x6d66, [ 26] = 0x74dc, [ 27] = 0x958f, -+ [ 28] = 0x5642, [ 29] = 0x4e91, [ 30] = 0x904b, [ 31] = 0x96f2, -+ [ 32] = 0x834f, [ 33] = 0x990c, [ 34] = 0x53e1, [ 35] = 0x55b6, -+ [ 36] = 0x5b30, [ 37] = 0x5f71, [ 38] = 0x6620, [ 39] = 0x66f3, -+ [ 40] = 0x6804, [ 41] = 0x6c38, [ 42] = 0x6cf3, [ 43] = 0x6d29, -+ [ 44] = 0x745b, [ 45] = 0x76c8, [ 46] = 0x7a4e, [ 47] = 0x9834, -+ [ 48] = 0x82f1, [ 49] = 0x885b, [ 50] = 0x8a60, [ 51] = 0x92ed, -+ [ 52] = 0x6db2, [ 53] = 0x75ab, [ 54] = 0x76ca, [ 55] = 0x99c5, -+ [ 56] = 0x60a6, [ 57] = 0x8b01, [ 58] = 0x8d8a, [ 59] = 0x95b2, -+ [ 60] = 0x698e, [ 61] = 0x53ad, [ 62] = 0x5186, [ 64] = 0x5712, -+ [ 65] = 0x5830, [ 66] = 0x5944, [ 67] = 0x5bb4, [ 68] = 0x5ef6, -+ [ 69] = 0x6028, [ 70] = 0x63a9, [ 71] = 0x63f4, [ 72] = 0x6cbf, -+ [ 73] = 0x6f14, [ 74] = 0x708e, [ 75] = 0x7114, [ 76] = 0x7159, -+ [ 77] = 0x71d5, [ 78] = 0x733f, [ 79] = 0x7e01, [ 80] = 0x8276, -+ [ 81] = 0x82d1, [ 82] = 0x8597, [ 83] = 0x9060, [ 84] = 0x925b, -+ [ 85] = 0x9d1b, [ 86] = 0x5869, [ 87] = 0x65bc, [ 88] = 0x6c5a, -+ [ 89] = 0x7525, [ 90] = 0x51f9, [ 91] = 0x592e, [ 92] = 0x5965, -+ [ 93] = 0x5f80, [ 94] = 0x5fdc, [ 95] = 0x62bc, [ 96] = 0x65fa, -+ [ 97] = 0x6a2a, [ 98] = 0x6b27, [ 99] = 0x6bb4, [ 100] = 0x738b, -+ [ 101] = 0x7fc1, [ 102] = 0x8956, [ 103] = 0x9d2c, [ 104] = 0x9d0e, -+ [ 105] = 0x9ec4, [ 106] = 0x5ca1, [ 107] = 0x6c96, [ 108] = 0x837b, -+ [ 109] = 0x5104, [ 110] = 0x5c4b, [ 111] = 0x61b6, [ 112] = 0x81c6, -+ [ 113] = 0x6876, [ 114] = 0x7261, [ 115] = 0x4e59, [ 116] = 0x4ffa, -+ [ 117] = 0x5378, [ 118] = 0x6069, [ 119] = 0x6e29, [ 120] = 0x7a4f, -+ [ 121] = 0x97f3, [ 122] = 0x4e0b, [ 123] = 0x5316, [ 124] = 0x4eee, -+ [ 125] = 0x4f55, [ 126] = 0x4f3d, [ 127] = 0x4fa1, [ 128] = 0x4f73, -+ [ 129] = 0x52a0, [ 130] = 0x53ef, [ 131] = 0x5609, [ 132] = 0x590f, -+ [ 133] = 0x5ac1, [ 134] = 0x5bb6, [ 135] = 0x5be1, [ 136] = 0x79d1, -+ [ 137] = 0x6687, [ 138] = 0x679c, [ 139] = 0x67b6, [ 140] = 0x6b4c, -+ [ 141] = 0x6cb3, [ 142] = 0x706b, [ 143] = 0x73c2, [ 144] = 0x798d, -+ [ 145] = 0x79be, [ 146] = 0x7a3c, [ 147] = 0x7b87, [ 148] = 0x82b1, -+ [ 149] = 0x82db, [ 150] = 0x8304, [ 151] = 0x8377, [ 152] = 0x83ef, -+ [ 153] = 0x83d3, [ 154] = 0x8766, [ 155] = 0x8ab2, [ 156] = 0x5629, -+ [ 157] = 0x8ca8, [ 158] = 0x8fe6, [ 159] = 0x904e, [ 160] = 0x971e, -+ [ 161] = 0x868a, [ 162] = 0x4fc4, [ 163] = 0x5ce8, [ 164] = 0x6211, -+ [ 165] = 0x7259, [ 166] = 0x753b, [ 167] = 0x81e5, [ 168] = 0x82bd, -+ [ 169] = 0x86fe, [ 170] = 0x8cc0, [ 171] = 0x96c5, [ 172] = 0x9913, -+ [ 173] = 0x99d5, [ 174] = 0x4ecb, [ 175] = 0x4f1a, [ 176] = 0x89e3, -+ [ 177] = 0x56de, [ 178] = 0x584a, [ 179] = 0x58ca, [ 180] = 0x5efb, -+ [ 181] = 0x5feb, [ 182] = 0x602a, [ 183] = 0x6094, [ 184] = 0x6062, -+ [ 185] = 0x61d0, [ 186] = 0x6212, [ 187] = 0x62d0, [ 188] = 0x6539, -+ [ 192] = 0x9b41, [ 193] = 0x6666, [ 194] = 0x68b0, [ 195] = 0x6d77, -+ [ 196] = 0x7070, [ 197] = 0x754c, [ 198] = 0x7686, [ 199] = 0x7d75, -+ [ 200] = 0x82a5, [ 201] = 0x87f9, [ 202] = 0x958b, [ 203] = 0x968e, -+ [ 204] = 0x8c9d, [ 205] = 0x51f1, [ 206] = 0x52be, [ 207] = 0x5916, -+ [ 208] = 0x54b3, [ 209] = 0x5bb3, [ 210] = 0x5d16, [ 211] = 0x6168, -+ [ 212] = 0x6982, [ 213] = 0x6daf, [ 214] = 0x788d, [ 215] = 0x84cb, -+ [ 216] = 0x8857, [ 217] = 0x8a72, [ 218] = 0x93a7, [ 219] = 0x9ab8, -+ [ 220] = 0x6d6c, [ 221] = 0x99a8, [ 222] = 0x86d9, [ 223] = 0x57a3, -+ [ 224] = 0x67ff, [ 225] = 0x86ce, [ 226] = 0x920e, [ 227] = 0x5283, -+ [ 228] = 0x5687, [ 229] = 0x5404, [ 230] = 0x5ed3, [ 231] = 0x62e1, -+ [ 232] = 0x64b9, [ 233] = 0x683c, [ 234] = 0x6838, [ 235] = 0x6bbb, -+ [ 236] = 0x7372, [ 237] = 0x78ba, [ 238] = 0x7a6b, [ 239] = 0x899a, -+ [ 240] = 0x89d2, [ 241] = 0x8d6b, [ 242] = 0x8f03, [ 243] = 0x90ed, -+ [ 244] = 0x95a3, [ 245] = 0x9694, [ 246] = 0x9769, [ 247] = 0x5b66, -+ [ 248] = 0x5cb3, [ 249] = 0x697d, [ 250] = 0x984d, [ 251] = 0x984e, -+ [ 252] = 0x639b, [ 253] = 0x7b20, [ 254] = 0x6a2b, [ 256] = 0x6a7f, -+ [ 257] = 0x68b6, [ 258] = 0x9c0d, [ 259] = 0x6f5f, [ 260] = 0x5272, -+ [ 261] = 0x559d, [ 262] = 0x6070, [ 263] = 0x62ec, [ 264] = 0x6d3b, -+ [ 265] = 0x6e07, [ 266] = 0x6ed1, [ 267] = 0x845b, [ 268] = 0x8910, -+ [ 269] = 0x8f44, [ 270] = 0x4e14, [ 271] = 0x9c39, [ 272] = 0x53f6, -+ [ 273] = 0x691b, [ 274] = 0x6a3a, [ 275] = 0x9784, [ 276] = 0x682a, -+ [ 277] = 0x515c, [ 278] = 0x7ac3, [ 279] = 0x84b2, [ 280] = 0x91dc, -+ [ 281] = 0x938c, [ 282] = 0x565b, [ 283] = 0x9d28, [ 284] = 0x6822, -+ [ 285] = 0x8305, [ 286] = 0x8431, [ 287] = 0x7ca5, [ 288] = 0x5208, -+ [ 289] = 0x82c5, [ 290] = 0x74e6, [ 291] = 0x4e7e, [ 292] = 0x4f83, -+ [ 293] = 0x51a0, [ 294] = 0x5bd2, [ 295] = 0x520a, [ 296] = 0x52d8, -+ [ 297] = 0x52e7, [ 298] = 0x5dfb, [ 299] = 0x559a, [ 300] = 0x582a, -+ [ 301] = 0x59e6, [ 302] = 0x5b8c, [ 303] = 0x5b98, [ 304] = 0x5bdb, -+ [ 305] = 0x5e72, [ 306] = 0x5e79, [ 307] = 0x60a3, [ 308] = 0x611f, -+ [ 309] = 0x6163, [ 310] = 0x61be, [ 311] = 0x63db, [ 312] = 0x6562, -+ [ 313] = 0x67d1, [ 314] = 0x6853, [ 315] = 0x68fa, [ 316] = 0x6b3e, -+ [ 317] = 0x6b53, [ 318] = 0x6c57, [ 319] = 0x6f22, [ 320] = 0x6f97, -+ [ 321] = 0x6f45, [ 322] = 0x74b0, [ 323] = 0x7518, [ 324] = 0x76e3, -+ [ 325] = 0x770b, [ 326] = 0x7aff, [ 327] = 0x7ba1, [ 328] = 0x7c21, -+ [ 329] = 0x7de9, [ 330] = 0x7f36, [ 331] = 0x7ff0, [ 332] = 0x809d, -+ [ 333] = 0x8266, [ 334] = 0x839e, [ 335] = 0x89b3, [ 336] = 0x8acc, -+ [ 337] = 0x8cab, [ 338] = 0x9084, [ 339] = 0x9451, [ 340] = 0x9593, -+ [ 341] = 0x9591, [ 342] = 0x95a2, [ 343] = 0x9665, [ 344] = 0x97d3, -+ [ 345] = 0x9928, [ 346] = 0x8218, [ 347] = 0x4e38, [ 348] = 0x542b, -+ [ 349] = 0x5cb8, [ 350] = 0x5dcc, [ 351] = 0x73a9, [ 352] = 0x764c, -+ [ 353] = 0x773c, [ 354] = 0x5ca9, [ 355] = 0x7feb, [ 356] = 0x8d0b, -+ [ 357] = 0x96c1, [ 358] = 0x9811, [ 359] = 0x9854, [ 360] = 0x9858, -+ [ 361] = 0x4f01, [ 362] = 0x4f0e, [ 363] = 0x5371, [ 364] = 0x559c, -+ [ 365] = 0x5668, [ 366] = 0x57fa, [ 367] = 0x5947, [ 368] = 0x5b09, -+ [ 369] = 0x5bc4, [ 370] = 0x5c90, [ 371] = 0x5e0c, [ 372] = 0x5e7e, -+ [ 373] = 0x5fcc, [ 374] = 0x63ee, [ 375] = 0x673a, [ 376] = 0x65d7, -+ [ 377] = 0x65e2, [ 378] = 0x671f, [ 379] = 0x68cb, [ 380] = 0x68c4, -+ [ 384] = 0x6a5f, [ 385] = 0x5e30, [ 386] = 0x6bc5, [ 387] = 0x6c17, -+ [ 388] = 0x6c7d, [ 389] = 0x757f, [ 390] = 0x7948, [ 391] = 0x5b63, -+ [ 392] = 0x7a00, [ 393] = 0x7d00, [ 394] = 0x5fbd, [ 395] = 0x898f, -+ [ 396] = 0x8a18, [ 397] = 0x8cb4, [ 398] = 0x8d77, [ 399] = 0x8ecc, -+ [ 400] = 0x8f1d, [ 401] = 0x98e2, [ 402] = 0x9a0e, [ 403] = 0x9b3c, -+ [ 404] = 0x4e80, [ 405] = 0x507d, [ 406] = 0x5100, [ 407] = 0x5993, -+ [ 408] = 0x5b9c, [ 409] = 0x622f, [ 410] = 0x6280, [ 411] = 0x64ec, -+ [ 412] = 0x6b3a, [ 413] = 0x72a0, [ 414] = 0x7591, [ 415] = 0x7947, -+ [ 416] = 0x7fa9, [ 417] = 0x87fb, [ 418] = 0x8abc, [ 419] = 0x8b70, -+ [ 420] = 0x63ac, [ 421] = 0x83ca, [ 422] = 0x97a0, [ 423] = 0x5409, -+ [ 424] = 0x5403, [ 425] = 0x55ab, [ 426] = 0x6854, [ 427] = 0x6a58, -+ [ 428] = 0x8a70, [ 429] = 0x7827, [ 430] = 0x6775, [ 431] = 0x9ecd, -+ [ 432] = 0x5374, [ 433] = 0x5ba2, [ 434] = 0x811a, [ 435] = 0x8650, -+ [ 436] = 0x9006, [ 437] = 0x4e18, [ 438] = 0x4e45, [ 439] = 0x4ec7, -+ [ 440] = 0x4f11, [ 441] = 0x53ca, [ 442] = 0x5438, [ 443] = 0x5bae, -+ [ 444] = 0x5f13, [ 445] = 0x6025, [ 446] = 0x6551, [ 448] = 0x673d, -+ [ 449] = 0x6c42, [ 450] = 0x6c72, [ 451] = 0x6ce3, [ 452] = 0x7078, -+ [ 453] = 0x7403, [ 454] = 0x7a76, [ 455] = 0x7aae, [ 456] = 0x7b08, -+ [ 457] = 0x7d1a, [ 458] = 0x7cfe, [ 459] = 0x7d66, [ 460] = 0x65e7, -+ [ 461] = 0x725b, [ 462] = 0x53bb, [ 463] = 0x5c45, [ 464] = 0x5de8, -+ [ 465] = 0x62d2, [ 466] = 0x62e0, [ 467] = 0x6319, [ 468] = 0x6e20, -+ [ 469] = 0x865a, [ 470] = 0x8a31, [ 471] = 0x8ddd, [ 472] = 0x92f8, -+ [ 473] = 0x6f01, [ 474] = 0x79a6, [ 475] = 0x9b5a, [ 476] = 0x4ea8, -+ [ 477] = 0x4eab, [ 478] = 0x4eac, [ 479] = 0x4f9b, [ 480] = 0x4fa0, -+ [ 481] = 0x50d1, [ 482] = 0x5147, [ 483] = 0x7af6, [ 484] = 0x5171, -+ [ 485] = 0x51f6, [ 486] = 0x5354, [ 487] = 0x5321, [ 488] = 0x537f, -+ [ 489] = 0x53eb, [ 490] = 0x55ac, [ 491] = 0x5883, [ 492] = 0x5ce1, -+ [ 493] = 0x5f37, [ 494] = 0x5f4a, [ 495] = 0x602f, [ 496] = 0x6050, -+ [ 497] = 0x606d, [ 498] = 0x631f, [ 499] = 0x6559, [ 500] = 0x6a4b, -+ [ 501] = 0x6cc1, [ 502] = 0x72c2, [ 503] = 0x72ed, [ 504] = 0x77ef, -+ [ 505] = 0x80f8, [ 506] = 0x8105, [ 507] = 0x8208, [ 508] = 0x854e, -+ [ 509] = 0x90f7, [ 510] = 0x93e1, [ 511] = 0x97ff, [ 512] = 0x9957, -+ [ 513] = 0x9a5a, [ 514] = 0x4ef0, [ 515] = 0x51dd, [ 516] = 0x5c2d, -+ [ 517] = 0x6681, [ 518] = 0x696d, [ 519] = 0x5c40, [ 520] = 0x66f2, -+ [ 521] = 0x6975, [ 522] = 0x7389, [ 523] = 0x6850, [ 524] = 0x7c81, -+ [ 525] = 0x50c5, [ 526] = 0x52e4, [ 527] = 0x5747, [ 528] = 0x5dfe, -+ [ 529] = 0x9326, [ 530] = 0x65a4, [ 531] = 0x6b23, [ 532] = 0x6b3d, -+ [ 533] = 0x7434, [ 534] = 0x7981, [ 535] = 0x79bd, [ 536] = 0x7b4b, -+ [ 537] = 0x7dca, [ 538] = 0x82b9, [ 539] = 0x83cc, [ 540] = 0x887f, -+ [ 541] = 0x895f, [ 542] = 0x8b39, [ 543] = 0x8fd1, [ 544] = 0x91d1, -+ [ 545] = 0x541f, [ 546] = 0x9280, [ 547] = 0x4e5d, [ 548] = 0x5036, -+ [ 549] = 0x53e5, [ 550] = 0x533a, [ 551] = 0x72d7, [ 552] = 0x7396, -+ [ 553] = 0x77e9, [ 554] = 0x82e6, [ 555] = 0x8eaf, [ 556] = 0x99c6, -+ [ 557] = 0x99c8, [ 558] = 0x99d2, [ 559] = 0x5177, [ 560] = 0x611a, -+ [ 561] = 0x865e, [ 562] = 0x55b0, [ 563] = 0x7a7a, [ 564] = 0x5076, -+ [ 565] = 0x5bd3, [ 566] = 0x9047, [ 567] = 0x9685, [ 568] = 0x4e32, -+ [ 569] = 0x6adb, [ 570] = 0x91e7, [ 571] = 0x5c51, [ 572] = 0x5c48, -+ [ 576] = 0x6398, [ 577] = 0x7a9f, [ 578] = 0x6c93, [ 579] = 0x9774, -+ [ 580] = 0x8f61, [ 581] = 0x7aaa, [ 582] = 0x718a, [ 583] = 0x9688, -+ [ 584] = 0x7c82, [ 585] = 0x6817, [ 586] = 0x7e70, [ 587] = 0x6851, -+ [ 588] = 0x936c, [ 589] = 0x52f2, [ 590] = 0x541b, [ 591] = 0x85ab, -+ [ 592] = 0x8a13, [ 593] = 0x7fa4, [ 594] = 0x8ecd, [ 595] = 0x90e1, -+ [ 596] = 0x5366, [ 597] = 0x8888, [ 598] = 0x7941, [ 599] = 0x4fc2, -+ [ 600] = 0x50be, [ 601] = 0x5211, [ 602] = 0x5144, [ 603] = 0x5553, -+ [ 604] = 0x572d, [ 605] = 0x73ea, [ 606] = 0x578b, [ 607] = 0x5951, -+ [ 608] = 0x5f62, [ 609] = 0x5f84, [ 610] = 0x6075, [ 611] = 0x6176, -+ [ 612] = 0x6167, [ 613] = 0x61a9, [ 614] = 0x63b2, [ 615] = 0x643a, -+ [ 616] = 0x656c, [ 617] = 0x666f, [ 618] = 0x6842, [ 619] = 0x6e13, -+ [ 620] = 0x7566, [ 621] = 0x7a3d, [ 622] = 0x7cfb, [ 623] = 0x7d4c, -+ [ 624] = 0x7d99, [ 625] = 0x7e4b, [ 626] = 0x7f6b, [ 627] = 0x830e, -+ [ 628] = 0x834a, [ 629] = 0x86cd, [ 630] = 0x8a08, [ 631] = 0x8a63, -+ [ 632] = 0x8b66, [ 633] = 0x8efd, [ 634] = 0x981a, [ 635] = 0x9d8f, -+ [ 636] = 0x82b8, [ 637] = 0x8fce, [ 638] = 0x9be8, [ 640] = 0x5287, -+ [ 641] = 0x621f, [ 642] = 0x6483, [ 643] = 0x6fc0, [ 644] = 0x9699, -+ [ 645] = 0x6841, [ 646] = 0x5091, [ 647] = 0x6b20, [ 648] = 0x6c7a, -+ [ 649] = 0x6f54, [ 650] = 0x7a74, [ 651] = 0x7d50, [ 652] = 0x8840, -+ [ 653] = 0x8a23, [ 654] = 0x6708, [ 655] = 0x4ef6, [ 656] = 0x5039, -+ [ 657] = 0x5026, [ 658] = 0x5065, [ 659] = 0x517c, [ 660] = 0x5238, -+ [ 661] = 0x5263, [ 662] = 0x55a7, [ 663] = 0x570f, [ 664] = 0x5805, -+ [ 665] = 0x5acc, [ 666] = 0x5efa, [ 667] = 0x61b2, [ 668] = 0x61f8, -+ [ 669] = 0x62f3, [ 670] = 0x6372, [ 671] = 0x691c, [ 672] = 0x6a29, -+ [ 673] = 0x727d, [ 674] = 0x72ac, [ 675] = 0x732e, [ 676] = 0x7814, -+ [ 677] = 0x786f, [ 678] = 0x7d79, [ 679] = 0x770c, [ 680] = 0x80a9, -+ [ 681] = 0x898b, [ 682] = 0x8b19, [ 683] = 0x8ce2, [ 684] = 0x8ed2, -+ [ 685] = 0x9063, [ 686] = 0x9375, [ 687] = 0x967a, [ 688] = 0x9855, -+ [ 689] = 0x9a13, [ 690] = 0x9e78, [ 691] = 0x5143, [ 692] = 0x539f, -+ [ 693] = 0x53b3, [ 694] = 0x5e7b, [ 695] = 0x5f26, [ 696] = 0x6e1b, -+ [ 697] = 0x6e90, [ 698] = 0x7384, [ 699] = 0x73fe, [ 700] = 0x7d43, -+ [ 701] = 0x8237, [ 702] = 0x8a00, [ 703] = 0x8afa, [ 704] = 0x9650, -+ [ 705] = 0x4e4e, [ 706] = 0x500b, [ 707] = 0x53e4, [ 708] = 0x547c, -+ [ 709] = 0x56fa, [ 710] = 0x59d1, [ 711] = 0x5b64, [ 712] = 0x5df1, -+ [ 713] = 0x5eab, [ 714] = 0x5f27, [ 715] = 0x6238, [ 716] = 0x6545, -+ [ 717] = 0x67af, [ 718] = 0x6e56, [ 719] = 0x72d0, [ 720] = 0x7cca, -+ [ 721] = 0x88b4, [ 722] = 0x80a1, [ 723] = 0x80e1, [ 724] = 0x83f0, -+ [ 725] = 0x864e, [ 726] = 0x8a87, [ 727] = 0x8de8, [ 728] = 0x9237, -+ [ 729] = 0x96c7, [ 730] = 0x9867, [ 731] = 0x9f13, [ 732] = 0x4e94, -+ [ 733] = 0x4e92, [ 734] = 0x4f0d, [ 735] = 0x5348, [ 736] = 0x5449, -+ [ 737] = 0x543e, [ 738] = 0x5a2f, [ 739] = 0x5f8c, [ 740] = 0x5fa1, -+ [ 741] = 0x609f, [ 742] = 0x68a7, [ 743] = 0x6a8e, [ 744] = 0x745a, -+ [ 745] = 0x7881, [ 746] = 0x8a9e, [ 747] = 0x8aa4, [ 748] = 0x8b77, -+ [ 749] = 0x9190, [ 750] = 0x4e5e, [ 751] = 0x9bc9, [ 752] = 0x4ea4, -+ [ 753] = 0x4f7c, [ 754] = 0x4faf, [ 755] = 0x5019, [ 756] = 0x5016, -+ [ 757] = 0x5149, [ 758] = 0x516c, [ 759] = 0x529f, [ 760] = 0x52b9, -+ [ 761] = 0x52fe, [ 762] = 0x539a, [ 763] = 0x53e3, [ 764] = 0x5411, -+ [ 768] = 0x540e, [ 769] = 0x5589, [ 770] = 0x5751, [ 771] = 0x57a2, -+ [ 772] = 0x597d, [ 773] = 0x5b54, [ 774] = 0x5b5d, [ 775] = 0x5b8f, -+ [ 776] = 0x5de5, [ 777] = 0x5de7, [ 778] = 0x5df7, [ 779] = 0x5e78, -+ [ 780] = 0x5e83, [ 781] = 0x5e9a, [ 782] = 0x5eb7, [ 783] = 0x5f18, -+ [ 784] = 0x6052, [ 785] = 0x614c, [ 786] = 0x6297, [ 787] = 0x62d8, -+ [ 788] = 0x63a7, [ 789] = 0x653b, [ 790] = 0x6602, [ 791] = 0x6643, -+ [ 792] = 0x66f4, [ 793] = 0x676d, [ 794] = 0x6821, [ 795] = 0x6897, -+ [ 796] = 0x69cb, [ 797] = 0x6c5f, [ 798] = 0x6d2a, [ 799] = 0x6d69, -+ [ 800] = 0x6e2f, [ 801] = 0x6e9d, [ 802] = 0x7532, [ 803] = 0x7687, -+ [ 804] = 0x786c, [ 805] = 0x7a3f, [ 806] = 0x7ce0, [ 807] = 0x7d05, -+ [ 808] = 0x7d18, [ 809] = 0x7d5e, [ 810] = 0x7db1, [ 811] = 0x8015, -+ [ 812] = 0x8003, [ 813] = 0x80af, [ 814] = 0x80b1, [ 815] = 0x8154, -+ [ 816] = 0x818f, [ 817] = 0x822a, [ 818] = 0x8352, [ 819] = 0x884c, -+ [ 820] = 0x8861, [ 821] = 0x8b1b, [ 822] = 0x8ca2, [ 823] = 0x8cfc, -+ [ 824] = 0x90ca, [ 825] = 0x9175, [ 826] = 0x9271, [ 827] = 0x783f, -+ [ 828] = 0x92fc, [ 829] = 0x95a4, [ 830] = 0x964d, [ 832] = 0x9805, -+ [ 833] = 0x9999, [ 834] = 0x9ad8, [ 835] = 0x9d3b, [ 836] = 0x525b, -+ [ 837] = 0x52ab, [ 838] = 0x53f7, [ 839] = 0x5408, [ 840] = 0x58d5, -+ [ 841] = 0x62f7, [ 842] = 0x6fe0, [ 843] = 0x8c6a, [ 844] = 0x8f5f, -+ [ 845] = 0x9eb9, [ 846] = 0x514b, [ 847] = 0x523b, [ 848] = 0x544a, -+ [ 849] = 0x56fd, [ 850] = 0x7a40, [ 851] = 0x9177, [ 852] = 0x9d60, -+ [ 853] = 0x9ed2, [ 854] = 0x7344, [ 855] = 0x6f09, [ 856] = 0x8170, -+ [ 857] = 0x7511, [ 858] = 0x5ffd, [ 859] = 0x60da, [ 860] = 0x9aa8, -+ [ 861] = 0x72db, [ 862] = 0x8fbc, [ 863] = 0x6b64, [ 864] = 0x9803, -+ [ 865] = 0x4eca, [ 866] = 0x56f0, [ 867] = 0x5764, [ 868] = 0x58be, -+ [ 869] = 0x5a5a, [ 870] = 0x6068, [ 871] = 0x61c7, [ 872] = 0x660f, -+ [ 873] = 0x6606, [ 874] = 0x6839, [ 875] = 0x68b1, [ 876] = 0x6df7, -+ [ 877] = 0x75d5, [ 878] = 0x7d3a, [ 879] = 0x826e, [ 880] = 0x9b42, -+ [ 881] = 0x4e9b, [ 882] = 0x4f50, [ 883] = 0x53c9, [ 884] = 0x5506, -+ [ 885] = 0x5d6f, [ 886] = 0x5de6, [ 887] = 0x5dee, [ 888] = 0x67fb, -+ [ 889] = 0x6c99, [ 890] = 0x7473, [ 891] = 0x7802, [ 892] = 0x8a50, -+ [ 893] = 0x9396, [ 894] = 0x88df, [ 895] = 0x5750, [ 896] = 0x5ea7, -+ [ 897] = 0x632b, [ 898] = 0x50b5, [ 899] = 0x50ac, [ 900] = 0x518d, -+ [ 901] = 0x6700, [ 902] = 0x54c9, [ 903] = 0x585e, [ 904] = 0x59bb, -+ [ 905] = 0x5bb0, [ 906] = 0x5f69, [ 907] = 0x624d, [ 908] = 0x63a1, -+ [ 909] = 0x683d, [ 910] = 0x6b73, [ 911] = 0x6e08, [ 912] = 0x707d, -+ [ 913] = 0x91c7, [ 914] = 0x7280, [ 915] = 0x7815, [ 916] = 0x7826, -+ [ 917] = 0x796d, [ 918] = 0x658e, [ 919] = 0x7d30, [ 920] = 0x83dc, -+ [ 921] = 0x88c1, [ 922] = 0x8f09, [ 923] = 0x969b, [ 924] = 0x5264, -+ [ 925] = 0x5728, [ 926] = 0x6750, [ 927] = 0x7f6a, [ 928] = 0x8ca1, -+ [ 929] = 0x51b4, [ 930] = 0x5742, [ 931] = 0x962a, [ 932] = 0x583a, -+ [ 933] = 0x698a, [ 934] = 0x80b4, [ 935] = 0x54b2, [ 936] = 0x5d0e, -+ [ 937] = 0x57fc, [ 938] = 0x7895, [ 939] = 0x9dfa, [ 940] = 0x4f5c, -+ [ 941] = 0x524a, [ 942] = 0x548b, [ 943] = 0x643e, [ 944] = 0x6628, -+ [ 945] = 0x6714, [ 946] = 0x67f5, [ 947] = 0x7a84, [ 948] = 0x7b56, -+ [ 949] = 0x7d22, [ 950] = 0x932f, [ 951] = 0x685c, [ 952] = 0x9bad, -+ [ 953] = 0x7b39, [ 954] = 0x5319, [ 955] = 0x518a, [ 956] = 0x5237, -+ [ 960] = 0x5bdf, [ 961] = 0x62f6, [ 962] = 0x64ae, [ 963] = 0x64e6, -+ [ 964] = 0x672d, [ 965] = 0x6bba, [ 966] = 0x85a9, [ 967] = 0x96d1, -+ [ 968] = 0x7690, [ 969] = 0x9bd6, [ 970] = 0x634c, [ 971] = 0x9306, -+ [ 972] = 0x9bab, [ 973] = 0x76bf, [ 974] = 0x6652, [ 975] = 0x4e09, -+ [ 976] = 0x5098, [ 977] = 0x53c2, [ 978] = 0x5c71, [ 979] = 0x60e8, -+ [ 980] = 0x6492, [ 981] = 0x6563, [ 982] = 0x685f, [ 983] = 0x71e6, -+ [ 984] = 0x73ca, [ 985] = 0x7523, [ 986] = 0x7b97, [ 987] = 0x7e82, -+ [ 988] = 0x8695, [ 989] = 0x8b83, [ 990] = 0x8cdb, [ 991] = 0x9178, -+ [ 992] = 0x9910, [ 993] = 0x65ac, [ 994] = 0x66ab, [ 995] = 0x6b8b, -+ [ 996] = 0x4ed5, [ 997] = 0x4ed4, [ 998] = 0x4f3a, [ 999] = 0x4f7f, -+ [1000] = 0x523a, [1001] = 0x53f8, [1002] = 0x53f2, [1003] = 0x55e3, -+ [1004] = 0x56db, [1005] = 0x58eb, [1006] = 0x59cb, [1007] = 0x59c9, -+ [1008] = 0x59ff, [1009] = 0x5b50, [1010] = 0x5c4d, [1011] = 0x5e02, -+ [1012] = 0x5e2b, [1013] = 0x5fd7, [1014] = 0x601d, [1015] = 0x6307, -+ [1016] = 0x652f, [1017] = 0x5b5c, [1018] = 0x65af, [1019] = 0x65bd, -+ [1020] = 0x65e8, [1021] = 0x679d, [1022] = 0x6b62, [1024] = 0x6b7b, -+ [1025] = 0x6c0f, [1026] = 0x7345, [1027] = 0x7949, [1028] = 0x79c1, -+ [1029] = 0x7cf8, [1030] = 0x7d19, [1031] = 0x7d2b, [1032] = 0x80a2, -+ [1033] = 0x8102, [1034] = 0x81f3, [1035] = 0x8996, [1036] = 0x8a5e, -+ [1037] = 0x8a69, [1038] = 0x8a66, [1039] = 0x8a8c, [1040] = 0x8aee, -+ [1041] = 0x8cc7, [1042] = 0x8cdc, [1043] = 0x96cc, [1044] = 0x98fc, -+ [1045] = 0x6b6f, [1046] = 0x4e8b, [1047] = 0x4f3c, [1048] = 0x4f8d, -+ [1049] = 0x5150, [1050] = 0x5b57, [1051] = 0x5bfa, [1052] = 0x6148, -+ [1053] = 0x6301, [1054] = 0x6642, [1055] = 0x6b21, [1056] = 0x6ecb, -+ [1057] = 0x6cbb, [1058] = 0x723e, [1059] = 0x74bd, [1060] = 0x75d4, -+ [1061] = 0x78c1, [1062] = 0x793a, [1063] = 0x800c, [1064] = 0x8033, -+ [1065] = 0x81ea, [1066] = 0x8494, [1067] = 0x8f9e, [1068] = 0x6c50, -+ [1069] = 0x9e7f, [1070] = 0x5f0f, [1071] = 0x8b58, [1072] = 0x9d2b, -+ [1073] = 0x7afa, [1074] = 0x8ef8, [1075] = 0x5b8d, [1076] = 0x96eb, -+ [1077] = 0x4e03, [1078] = 0x53f1, [1079] = 0x57f7, [1080] = 0x5931, -+ [1081] = 0x5ac9, [1082] = 0x5ba4, [1083] = 0x6089, [1084] = 0x6e7f, -+ [1085] = 0x6f06, [1086] = 0x75be, [1087] = 0x8cea, [1088] = 0x5b9f, -+ [1089] = 0x8500, [1090] = 0x7be0, [1091] = 0x5072, [1092] = 0x67f4, -+ [1093] = 0x829d, [1094] = 0x5c61, [1095] = 0x854a, [1096] = 0x7e1e, -+ [1097] = 0x820e, [1098] = 0x5199, [1099] = 0x5c04, [1100] = 0x6368, -+ [1101] = 0x8d66, [1102] = 0x659c, [1103] = 0x716e, [1104] = 0x793e, -+ [1105] = 0x7d17, [1106] = 0x8005, [1107] = 0x8b1d, [1108] = 0x8eca, -+ [1109] = 0x906e, [1110] = 0x86c7, [1111] = 0x90aa, [1112] = 0x501f, -+ [1113] = 0x52fa, [1114] = 0x5c3a, [1115] = 0x6753, [1116] = 0x707c, -+ [1117] = 0x7235, [1118] = 0x914c, [1119] = 0x91c8, [1120] = 0x932b, -+ [1121] = 0x82e5, [1122] = 0x5bc2, [1123] = 0x5f31, [1124] = 0x60f9, -+ [1125] = 0x4e3b, [1126] = 0x53d6, [1127] = 0x5b88, [1128] = 0x624b, -+ [1129] = 0x6731, [1130] = 0x6b8a, [1131] = 0x72e9, [1132] = 0x73e0, -+ [1133] = 0x7a2e, [1134] = 0x816b, [1135] = 0x8da3, [1136] = 0x9152, -+ [1137] = 0x9996, [1138] = 0x5112, [1139] = 0x53d7, [1140] = 0x546a, -+ [1141] = 0x5bff, [1142] = 0x6388, [1143] = 0x6a39, [1144] = 0x7dac, -+ [1145] = 0x9700, [1146] = 0x56da, [1147] = 0x53ce, [1148] = 0x5468, -+ [1152] = 0x5b97, [1153] = 0x5c31, [1154] = 0x5dde, [1155] = 0x4fee, -+ [1156] = 0x6101, [1157] = 0x62fe, [1158] = 0x6d32, [1159] = 0x79c0, -+ [1160] = 0x79cb, [1161] = 0x7d42, [1162] = 0x7e4d, [1163] = 0x7fd2, -+ [1164] = 0x81ed, [1165] = 0x821f, [1166] = 0x8490, [1167] = 0x8846, -+ [1168] = 0x8972, [1169] = 0x8b90, [1170] = 0x8e74, [1171] = 0x8f2f, -+ [1172] = 0x9031, [1173] = 0x914b, [1174] = 0x916c, [1175] = 0x96c6, -+ [1176] = 0x919c, [1177] = 0x4ec0, [1178] = 0x4f4f, [1179] = 0x5145, -+ [1180] = 0x5341, [1181] = 0x5f93, [1182] = 0x620e, [1183] = 0x67d4, -+ [1184] = 0x6c41, [1185] = 0x6e0b, [1186] = 0x7363, [1187] = 0x7e26, -+ [1188] = 0x91cd, [1189] = 0x9283, [1190] = 0x53d4, [1191] = 0x5919, -+ [1192] = 0x5bbf, [1193] = 0x6dd1, [1194] = 0x795d, [1195] = 0x7e2e, -+ [1196] = 0x7c9b, [1197] = 0x587e, [1198] = 0x719f, [1199] = 0x51fa, -+ [1200] = 0x8853, [1201] = 0x8ff0, [1202] = 0x4fca, [1203] = 0x5cfb, -+ [1204] = 0x6625, [1205] = 0x77ac, [1206] = 0x7ae3, [1207] = 0x821c, -+ [1208] = 0x99ff, [1209] = 0x51c6, [1210] = 0x5faa, [1211] = 0x65ec, -+ [1212] = 0x696f, [1213] = 0x6b89, [1214] = 0x6df3, [1216] = 0x6e96, -+ [1217] = 0x6f64, [1218] = 0x76fe, [1219] = 0x7d14, [1220] = 0x5de1, -+ [1221] = 0x9075, [1222] = 0x9187, [1223] = 0x9806, [1224] = 0x51e6, -+ [1225] = 0x521d, [1226] = 0x6240, [1227] = 0x6691, [1228] = 0x66d9, -+ [1229] = 0x6e1a, [1230] = 0x5eb6, [1231] = 0x7dd2, [1232] = 0x7f72, -+ [1233] = 0x66f8, [1234] = 0x85af, [1235] = 0x85f7, [1236] = 0x8af8, -+ [1237] = 0x52a9, [1238] = 0x53d9, [1239] = 0x5973, [1240] = 0x5e8f, -+ [1241] = 0x5f90, [1242] = 0x6055, [1243] = 0x92e4, [1244] = 0x9664, -+ [1245] = 0x50b7, [1246] = 0x511f, [1247] = 0x52dd, [1248] = 0x5320, -+ [1249] = 0x5347, [1250] = 0x53ec, [1251] = 0x54e8, [1252] = 0x5546, -+ [1253] = 0x5531, [1254] = 0x5617, [1255] = 0x5968, [1256] = 0x59be, -+ [1257] = 0x5a3c, [1258] = 0x5bb5, [1259] = 0x5c06, [1260] = 0x5c0f, -+ [1261] = 0x5c11, [1262] = 0x5c1a, [1263] = 0x5e84, [1264] = 0x5e8a, -+ [1265] = 0x5ee0, [1266] = 0x5f70, [1267] = 0x627f, [1268] = 0x6284, -+ [1269] = 0x62db, [1270] = 0x638c, [1271] = 0x6377, [1272] = 0x6607, -+ [1273] = 0x660c, [1274] = 0x662d, [1275] = 0x6676, [1276] = 0x677e, -+ [1277] = 0x68a2, [1278] = 0x6a1f, [1279] = 0x6a35, [1280] = 0x6cbc, -+ [1281] = 0x6d88, [1282] = 0x6e09, [1283] = 0x6e58, [1284] = 0x713c, -+ [1285] = 0x7126, [1286] = 0x7167, [1287] = 0x75c7, [1288] = 0x7701, -+ [1289] = 0x785d, [1290] = 0x7901, [1291] = 0x7965, [1292] = 0x79f0, -+ [1293] = 0x7ae0, [1294] = 0x7b11, [1295] = 0x7ca7, [1296] = 0x7d39, -+ [1297] = 0x8096, [1298] = 0x83d6, [1299] = 0x848b, [1300] = 0x8549, -+ [1301] = 0x885d, [1302] = 0x88f3, [1303] = 0x8a1f, [1304] = 0x8a3c, -+ [1305] = 0x8a54, [1306] = 0x8a73, [1307] = 0x8c61, [1308] = 0x8cde, -+ [1309] = 0x91a4, [1310] = 0x9266, [1311] = 0x937e, [1312] = 0x9418, -+ [1313] = 0x969c, [1314] = 0x9798, [1315] = 0x4e0a, [1316] = 0x4e08, -+ [1317] = 0x4e1e, [1318] = 0x4e57, [1319] = 0x5197, [1320] = 0x5270, -+ [1321] = 0x57ce, [1322] = 0x5834, [1323] = 0x58cc, [1324] = 0x5b22, -+ [1325] = 0x5e38, [1326] = 0x60c5, [1327] = 0x64fe, [1328] = 0x6761, -+ [1329] = 0x6756, [1330] = 0x6d44, [1331] = 0x72b6, [1332] = 0x7573, -+ [1333] = 0x7a63, [1334] = 0x84b8, [1335] = 0x8b72, [1336] = 0x91b8, -+ [1337] = 0x9320, [1338] = 0x5631, [1339] = 0x57f4, [1340] = 0x98fe, -+ [1344] = 0x62ed, [1345] = 0x690d, [1346] = 0x6b96, [1347] = 0x71ed, -+ [1348] = 0x7e54, [1349] = 0x8077, [1350] = 0x8272, [1351] = 0x89e6, -+ [1352] = 0x98df, [1353] = 0x8755, [1354] = 0x8fb1, [1355] = 0x5c3b, -+ [1356] = 0x4f38, [1357] = 0x4fe1, [1358] = 0x4fb5, [1359] = 0x5507, -+ [1360] = 0x5a20, [1361] = 0x5bdd, [1362] = 0x5be9, [1363] = 0x5fc3, -+ [1364] = 0x614e, [1365] = 0x632f, [1366] = 0x65b0, [1367] = 0x664b, -+ [1368] = 0x68ee, [1369] = 0x699b, [1370] = 0x6d78, [1371] = 0x6df1, -+ [1372] = 0x7533, [1373] = 0x75b9, [1374] = 0x771f, [1375] = 0x795e, -+ [1376] = 0x79e6, [1377] = 0x7d33, [1378] = 0x81e3, [1379] = 0x82af, -+ [1380] = 0x85aa, [1381] = 0x89aa, [1382] = 0x8a3a, [1383] = 0x8eab, -+ [1384] = 0x8f9b, [1385] = 0x9032, [1386] = 0x91dd, [1387] = 0x9707, -+ [1388] = 0x4eba, [1389] = 0x4ec1, [1390] = 0x5203, [1391] = 0x5875, -+ [1392] = 0x58ec, [1393] = 0x5c0b, [1394] = 0x751a, [1395] = 0x5c3d, -+ [1396] = 0x814e, [1397] = 0x8a0a, [1398] = 0x8fc5, [1399] = 0x9663, -+ [1400] = 0x976d, [1401] = 0x7b25, [1402] = 0x8acf, [1403] = 0x9808, -+ [1404] = 0x9162, [1405] = 0x56f3, [1406] = 0x53a8, [1408] = 0x9017, -+ [1409] = 0x5439, [1410] = 0x5782, [1411] = 0x5e25, [1412] = 0x63a8, -+ [1413] = 0x6c34, [1414] = 0x708a, [1415] = 0x7761, [1416] = 0x7c8b, -+ [1417] = 0x7fe0, [1418] = 0x8870, [1419] = 0x9042, [1420] = 0x9154, -+ [1421] = 0x9310, [1422] = 0x9318, [1423] = 0x968f, [1424] = 0x745e, -+ [1425] = 0x9ac4, [1426] = 0x5d07, [1427] = 0x5d69, [1428] = 0x6570, -+ [1429] = 0x67a2, [1430] = 0x8da8, [1431] = 0x96db, [1432] = 0x636e, -+ [1433] = 0x6749, [1434] = 0x6919, [1435] = 0x83c5, [1436] = 0x9817, -+ [1437] = 0x96c0, [1438] = 0x88fe, [1439] = 0x6f84, [1440] = 0x647a, -+ [1441] = 0x5bf8, [1442] = 0x4e16, [1443] = 0x702c, [1444] = 0x755d, -+ [1445] = 0x662f, [1446] = 0x51c4, [1447] = 0x5236, [1448] = 0x52e2, -+ [1449] = 0x59d3, [1450] = 0x5f81, [1451] = 0x6027, [1452] = 0x6210, -+ [1453] = 0x653f, [1454] = 0x6574, [1455] = 0x661f, [1456] = 0x6674, -+ [1457] = 0x68f2, [1458] = 0x6816, [1459] = 0x6b63, [1460] = 0x6e05, -+ [1461] = 0x7272, [1462] = 0x751f, [1463] = 0x76db, [1464] = 0x7cbe, -+ [1465] = 0x8056, [1466] = 0x58f0, [1467] = 0x88fd, [1468] = 0x897f, -+ [1469] = 0x8aa0, [1470] = 0x8a93, [1471] = 0x8acb, [1472] = 0x901d, -+ [1473] = 0x9192, [1474] = 0x9752, [1475] = 0x9759, [1476] = 0x6589, -+ [1477] = 0x7a0e, [1478] = 0x8106, [1479] = 0x96bb, [1480] = 0x5e2d, -+ [1481] = 0x60dc, [1482] = 0x621a, [1483] = 0x65a5, [1484] = 0x6614, -+ [1485] = 0x6790, [1486] = 0x77f3, [1487] = 0x7a4d, [1488] = 0x7c4d, -+ [1489] = 0x7e3e, [1490] = 0x810a, [1491] = 0x8cac, [1492] = 0x8d64, -+ [1493] = 0x8de1, [1494] = 0x8e5f, [1495] = 0x78a9, [1496] = 0x5207, -+ [1497] = 0x62d9, [1498] = 0x63a5, [1499] = 0x6442, [1500] = 0x6298, -+ [1501] = 0x8a2d, [1502] = 0x7a83, [1503] = 0x7bc0, [1504] = 0x8aac, -+ [1505] = 0x96ea, [1506] = 0x7d76, [1507] = 0x820c, [1508] = 0x8749, -+ [1509] = 0x4ed9, [1510] = 0x5148, [1511] = 0x5343, [1512] = 0x5360, -+ [1513] = 0x5ba3, [1514] = 0x5c02, [1515] = 0x5c16, [1516] = 0x5ddd, -+ [1517] = 0x6226, [1518] = 0x6247, [1519] = 0x64b0, [1520] = 0x6813, -+ [1521] = 0x6834, [1522] = 0x6cc9, [1523] = 0x6d45, [1524] = 0x6d17, -+ [1525] = 0x67d3, [1526] = 0x6f5c, [1527] = 0x714e, [1528] = 0x717d, -+ [1529] = 0x65cb, [1530] = 0x7a7f, [1531] = 0x7bad, [1532] = 0x7dda, -+ [1536] = 0x7e4a, [1537] = 0x7fa8, [1538] = 0x817a, [1539] = 0x821b, -+ [1540] = 0x8239, [1541] = 0x85a6, [1542] = 0x8a6e, [1543] = 0x8cce, -+ [1544] = 0x8df5, [1545] = 0x9078, [1546] = 0x9077, [1547] = 0x92ad, -+ [1548] = 0x9291, [1549] = 0x9583, [1550] = 0x9bae, [1551] = 0x524d, -+ [1552] = 0x5584, [1553] = 0x6f38, [1554] = 0x7136, [1555] = 0x5168, -+ [1556] = 0x7985, [1557] = 0x7e55, [1558] = 0x81b3, [1559] = 0x7cce, -+ [1560] = 0x564c, [1561] = 0x5851, [1562] = 0x5ca8, [1563] = 0x63aa, -+ [1564] = 0x66fe, [1565] = 0x66fd, [1566] = 0x695a, [1567] = 0x72d9, -+ [1568] = 0x758f, [1569] = 0x758e, [1570] = 0x790e, [1571] = 0x7956, -+ [1572] = 0x79df, [1573] = 0x7c97, [1574] = 0x7d20, [1575] = 0x7d44, -+ [1576] = 0x8607, [1577] = 0x8a34, [1578] = 0x963b, [1579] = 0x9061, -+ [1580] = 0x9f20, [1581] = 0x50e7, [1582] = 0x5275, [1583] = 0x53cc, -+ [1584] = 0x53e2, [1585] = 0x5009, [1586] = 0x55aa, [1587] = 0x58ee, -+ [1588] = 0x594f, [1589] = 0x723d, [1590] = 0x5b8b, [1591] = 0x5c64, -+ [1592] = 0x531d, [1593] = 0x60e3, [1594] = 0x60f3, [1595] = 0x635c, -+ [1596] = 0x6383, [1597] = 0x633f, [1598] = 0x63bb, [1600] = 0x64cd, -+ [1601] = 0x65e9, [1602] = 0x66f9, [1603] = 0x5de3, [1604] = 0x69cd, -+ [1605] = 0x69fd, [1606] = 0x6f15, [1607] = 0x71e5, [1608] = 0x4e89, -+ [1609] = 0x75e9, [1610] = 0x76f8, [1611] = 0x7a93, [1612] = 0x7cdf, -+ [1613] = 0x7dcf, [1614] = 0x7d9c, [1615] = 0x8061, [1616] = 0x8349, -+ [1617] = 0x8358, [1618] = 0x846c, [1619] = 0x84bc, [1620] = 0x85fb, -+ [1621] = 0x88c5, [1622] = 0x8d70, [1623] = 0x9001, [1624] = 0x906d, -+ [1625] = 0x9397, [1626] = 0x971c, [1627] = 0x9a12, [1628] = 0x50cf, -+ [1629] = 0x5897, [1630] = 0x618e, [1631] = 0x81d3, [1632] = 0x8535, -+ [1633] = 0x8d08, [1634] = 0x9020, [1635] = 0x4fc3, [1636] = 0x5074, -+ [1637] = 0x5247, [1638] = 0x5373, [1639] = 0x606f, [1640] = 0x6349, -+ [1641] = 0x675f, [1642] = 0x6e2c, [1643] = 0x8db3, [1644] = 0x901f, -+ [1645] = 0x4fd7, [1646] = 0x5c5e, [1647] = 0x8cca, [1648] = 0x65cf, -+ [1649] = 0x7d9a, [1650] = 0x5352, [1651] = 0x8896, [1652] = 0x5176, -+ [1653] = 0x63c3, [1654] = 0x5b58, [1655] = 0x5b6b, [1656] = 0x5c0a, -+ [1657] = 0x640d, [1658] = 0x6751, [1659] = 0x905c, [1660] = 0x4ed6, -+ [1661] = 0x591a, [1662] = 0x592a, [1663] = 0x6c70, [1664] = 0x8a51, -+ [1665] = 0x553e, [1666] = 0x5815, [1667] = 0x59a5, [1668] = 0x60f0, -+ [1669] = 0x6253, [1670] = 0x67c1, [1671] = 0x8235, [1672] = 0x6955, -+ [1673] = 0x9640, [1674] = 0x99c4, [1675] = 0x9a28, [1676] = 0x4f53, -+ [1677] = 0x5806, [1678] = 0x5bfe, [1679] = 0x8010, [1680] = 0x5cb1, -+ [1681] = 0x5e2f, [1682] = 0x5f85, [1683] = 0x6020, [1684] = 0x614b, -+ [1685] = 0x6234, [1686] = 0x66ff, [1687] = 0x6cf0, [1688] = 0x6ede, -+ [1689] = 0x80ce, [1690] = 0x817f, [1691] = 0x82d4, [1692] = 0x888b, -+ [1693] = 0x8cb8, [1694] = 0x9000, [1695] = 0x902e, [1696] = 0x968a, -+ [1697] = 0x9edb, [1698] = 0x9bdb, [1699] = 0x4ee3, [1700] = 0x53f0, -+ [1701] = 0x5927, [1702] = 0x7b2c, [1703] = 0x918d, [1704] = 0x984c, -+ [1705] = 0x9df9, [1706] = 0x6edd, [1707] = 0x7027, [1708] = 0x5353, -+ [1709] = 0x5544, [1710] = 0x5b85, [1711] = 0x6258, [1712] = 0x629e, -+ [1713] = 0x62d3, [1714] = 0x6ca2, [1715] = 0x6fef, [1716] = 0x7422, -+ [1717] = 0x8a17, [1718] = 0x9438, [1719] = 0x6fc1, [1720] = 0x8afe, -+ [1721] = 0x8338, [1722] = 0x51e7, [1723] = 0x86f8, [1724] = 0x53ea, -+ [1728] = 0x53e9, [1729] = 0x4f46, [1730] = 0x9054, [1731] = 0x8fb0, -+ [1732] = 0x596a, [1733] = 0x8131, [1734] = 0x5dfd, [1735] = 0x7aea, -+ [1736] = 0x8fbf, [1737] = 0x68da, [1738] = 0x8c37, [1739] = 0x72f8, -+ [1740] = 0x9c48, [1741] = 0x6a3d, [1742] = 0x8ab0, [1743] = 0x4e39, -+ [1744] = 0x5358, [1745] = 0x5606, [1746] = 0x5766, [1747] = 0x62c5, -+ [1748] = 0x63a2, [1749] = 0x65e6, [1750] = 0x6b4e, [1751] = 0x6de1, -+ [1752] = 0x6e5b, [1753] = 0x70ad, [1754] = 0x77ed, [1755] = 0x7aef, -+ [1756] = 0x7baa, [1757] = 0x7dbb, [1758] = 0x803d, [1759] = 0x80c6, -+ [1760] = 0x86cb, [1761] = 0x8a95, [1762] = 0x935b, [1763] = 0x56e3, -+ [1764] = 0x58c7, [1765] = 0x5f3e, [1766] = 0x65ad, [1767] = 0x6696, -+ [1768] = 0x6a80, [1769] = 0x6bb5, [1770] = 0x7537, [1771] = 0x8ac7, -+ [1772] = 0x5024, [1773] = 0x77e5, [1774] = 0x5730, [1775] = 0x5f1b, -+ [1776] = 0x6065, [1777] = 0x667a, [1778] = 0x6c60, [1779] = 0x75f4, -+ [1780] = 0x7a1a, [1781] = 0x7f6e, [1782] = 0x81f4, [1783] = 0x8718, -+ [1784] = 0x9045, [1785] = 0x99b3, [1786] = 0x7bc9, [1787] = 0x755c, -+ [1788] = 0x7af9, [1789] = 0x7b51, [1790] = 0x84c4, [1792] = 0x9010, -+ [1793] = 0x79e9, [1794] = 0x7a92, [1795] = 0x8336, [1796] = 0x5ae1, -+ [1797] = 0x7740, [1798] = 0x4e2d, [1799] = 0x4ef2, [1800] = 0x5b99, -+ [1801] = 0x5fe0, [1802] = 0x62bd, [1803] = 0x663c, [1804] = 0x67f1, -+ [1805] = 0x6ce8, [1806] = 0x866b, [1807] = 0x8877, [1808] = 0x8a3b, -+ [1809] = 0x914e, [1810] = 0x92f3, [1811] = 0x99d0, [1812] = 0x6a17, -+ [1813] = 0x7026, [1814] = 0x732a, [1815] = 0x82e7, [1816] = 0x8457, -+ [1817] = 0x8caf, [1818] = 0x4e01, [1819] = 0x5146, [1820] = 0x51cb, -+ [1821] = 0x558b, [1822] = 0x5bf5, [1823] = 0x5e16, [1824] = 0x5e33, -+ [1825] = 0x5e81, [1826] = 0x5f14, [1827] = 0x5f35, [1828] = 0x5f6b, -+ [1829] = 0x5fb4, [1830] = 0x61f2, [1831] = 0x6311, [1832] = 0x66a2, -+ [1833] = 0x671d, [1834] = 0x6f6e, [1835] = 0x7252, [1836] = 0x753a, -+ [1837] = 0x773a, [1838] = 0x8074, [1839] = 0x8139, [1840] = 0x8178, -+ [1841] = 0x8776, [1842] = 0x8abf, [1843] = 0x8adc, [1844] = 0x8d85, -+ [1845] = 0x8df3, [1846] = 0x929a, [1847] = 0x9577, [1848] = 0x9802, -+ [1849] = 0x9ce5, [1850] = 0x52c5, [1851] = 0x6357, [1852] = 0x76f4, -+ [1853] = 0x6715, [1854] = 0x6c88, [1855] = 0x73cd, [1856] = 0x8cc3, -+ [1857] = 0x93ae, [1858] = 0x9673, [1859] = 0x6d25, [1860] = 0x589c, -+ [1861] = 0x690e, [1862] = 0x69cc, [1863] = 0x8ffd, [1864] = 0x939a, -+ [1865] = 0x75db, [1866] = 0x901a, [1867] = 0x585a, [1868] = 0x6802, -+ [1869] = 0x63b4, [1870] = 0x69fb, [1871] = 0x4f43, [1872] = 0x6f2c, -+ [1873] = 0x67d8, [1874] = 0x8fbb, [1875] = 0x8526, [1876] = 0x7db4, -+ [1877] = 0x9354, [1878] = 0x693f, [1879] = 0x6f70, [1880] = 0x576a, -+ [1881] = 0x58f7, [1882] = 0x5b2c, [1883] = 0x7d2c, [1884] = 0x722a, -+ [1885] = 0x540a, [1886] = 0x91e3, [1887] = 0x9db4, [1888] = 0x4ead, -+ [1889] = 0x4f4e, [1890] = 0x505c, [1891] = 0x5075, [1892] = 0x5243, -+ [1893] = 0x8c9e, [1894] = 0x5448, [1895] = 0x5824, [1896] = 0x5b9a, -+ [1897] = 0x5e1d, [1898] = 0x5e95, [1899] = 0x5ead, [1900] = 0x5ef7, -+ [1901] = 0x5f1f, [1902] = 0x608c, [1903] = 0x62b5, [1904] = 0x633a, -+ [1905] = 0x63d0, [1906] = 0x68af, [1907] = 0x6c40, [1908] = 0x7887, -+ [1909] = 0x798e, [1910] = 0x7a0b, [1911] = 0x7de0, [1912] = 0x8247, -+ [1913] = 0x8a02, [1914] = 0x8ae6, [1915] = 0x8e44, [1916] = 0x9013, -+ [1920] = 0x90b8, [1921] = 0x912d, [1922] = 0x91d8, [1923] = 0x9f0e, -+ [1924] = 0x6ce5, [1925] = 0x6458, [1926] = 0x64e2, [1927] = 0x6575, -+ [1928] = 0x6ef4, [1929] = 0x7684, [1930] = 0x7b1b, [1931] = 0x9069, -+ [1932] = 0x93d1, [1933] = 0x6eba, [1934] = 0x54f2, [1935] = 0x5fb9, -+ [1936] = 0x64a4, [1937] = 0x8f4d, [1938] = 0x8fed, [1939] = 0x9244, -+ [1940] = 0x5178, [1941] = 0x586b, [1942] = 0x5929, [1943] = 0x5c55, -+ [1944] = 0x5e97, [1945] = 0x6dfb, [1946] = 0x7e8f, [1947] = 0x751c, -+ [1948] = 0x8cbc, [1949] = 0x8ee2, [1950] = 0x985b, [1951] = 0x70b9, -+ [1952] = 0x4f1d, [1953] = 0x6bbf, [1954] = 0x6fb1, [1955] = 0x7530, -+ [1956] = 0x96fb, [1957] = 0x514e, [1958] = 0x5410, [1959] = 0x5835, -+ [1960] = 0x5857, [1961] = 0x59ac, [1962] = 0x5c60, [1963] = 0x5f92, -+ [1964] = 0x6597, [1965] = 0x675c, [1966] = 0x6e21, [1967] = 0x767b, -+ [1968] = 0x83df, [1969] = 0x8ced, [1970] = 0x9014, [1971] = 0x90fd, -+ [1972] = 0x934d, [1973] = 0x7825, [1974] = 0x783a, [1975] = 0x52aa, -+ [1976] = 0x5ea6, [1977] = 0x571f, [1978] = 0x5974, [1979] = 0x6012, -+ [1980] = 0x5012, [1981] = 0x515a, [1982] = 0x51ac, [1984] = 0x51cd, -+ [1985] = 0x5200, [1986] = 0x5510, [1987] = 0x5854, [1988] = 0x5858, -+ [1989] = 0x5957, [1990] = 0x5b95, [1991] = 0x5cf6, [1992] = 0x5d8b, -+ [1993] = 0x60bc, [1994] = 0x6295, [1995] = 0x642d, [1996] = 0x6771, -+ [1997] = 0x6843, [1998] = 0x68bc, [1999] = 0x68df, [2000] = 0x76d7, -+ [2001] = 0x6dd8, [2002] = 0x6e6f, [2003] = 0x6d9b, [2004] = 0x706f, -+ [2005] = 0x71c8, [2006] = 0x5f53, [2007] = 0x75d8, [2008] = 0x7977, -+ [2009] = 0x7b49, [2010] = 0x7b54, [2011] = 0x7b52, [2012] = 0x7cd6, -+ [2013] = 0x7d71, [2014] = 0x5230, [2015] = 0x8463, [2016] = 0x8569, -+ [2017] = 0x85e4, [2018] = 0x8a0e, [2019] = 0x8b04, [2020] = 0x8c46, -+ [2021] = 0x8e0f, [2022] = 0x9003, [2023] = 0x900f, [2024] = 0x9419, -+ [2025] = 0x9676, [2026] = 0x982d, [2027] = 0x9a30, [2028] = 0x95d8, -+ [2029] = 0x50cd, [2030] = 0x52d5, [2031] = 0x540c, [2032] = 0x5802, -+ [2033] = 0x5c0e, [2034] = 0x61a7, [2035] = 0x649e, [2036] = 0x6d1e, -+ [2037] = 0x77b3, [2038] = 0x7ae5, [2039] = 0x80f4, [2040] = 0x8404, -+ [2041] = 0x9053, [2042] = 0x9285, [2043] = 0x5ce0, [2044] = 0x9d07, -+ [2045] = 0x533f, [2046] = 0x5f97, [2047] = 0x5fb3, [2048] = 0x6d9c, -+ [2049] = 0x7279, [2050] = 0x7763, [2051] = 0x79bf, [2052] = 0x7be4, -+ [2053] = 0x6bd2, [2054] = 0x72ec, [2055] = 0x8aad, [2056] = 0x6803, -+ [2057] = 0x6a61, [2058] = 0x51f8, [2059] = 0x7a81, [2060] = 0x6934, -+ [2061] = 0x5c4a, [2062] = 0x9cf6, [2063] = 0x82eb, [2064] = 0x5bc5, -+ [2065] = 0x9149, [2066] = 0x701e, [2067] = 0x5678, [2068] = 0x5c6f, -+ [2069] = 0x60c7, [2070] = 0x6566, [2071] = 0x6c8c, [2072] = 0x8c5a, -+ [2073] = 0x9041, [2074] = 0x9813, [2075] = 0x5451, [2076] = 0x66c7, -+ [2077] = 0x920d, [2078] = 0x5948, [2079] = 0x90a3, [2080] = 0x5185, -+ [2081] = 0x4e4d, [2082] = 0x51ea, [2083] = 0x8599, [2084] = 0x8b0e, -+ [2085] = 0x7058, [2086] = 0x637a, [2087] = 0x934b, [2088] = 0x6962, -+ [2089] = 0x99b4, [2090] = 0x7e04, [2091] = 0x7577, [2092] = 0x5357, -+ [2093] = 0x6960, [2094] = 0x8edf, [2095] = 0x96e3, [2096] = 0x6c5d, -+ [2097] = 0x4e8c, [2098] = 0x5c3c, [2099] = 0x5f10, [2100] = 0x8fe9, -+ [2101] = 0x5302, [2102] = 0x8cd1, [2103] = 0x8089, [2104] = 0x8679, -+ [2105] = 0x5eff, [2106] = 0x65e5, [2107] = 0x4e73, [2108] = 0x5165, -+ [2112] = 0x5982, [2113] = 0x5c3f, [2114] = 0x97ee, [2115] = 0x4efb, -+ [2116] = 0x598a, [2117] = 0x5fcd, [2118] = 0x8a8d, [2119] = 0x6fe1, -+ [2120] = 0x79b0, [2121] = 0x7962, [2122] = 0x5be7, [2123] = 0x8471, -+ [2124] = 0x732b, [2125] = 0x71b1, [2126] = 0x5e74, [2127] = 0x5ff5, -+ [2128] = 0x637b, [2129] = 0x649a, [2130] = 0x71c3, [2131] = 0x7c98, -+ [2132] = 0x4e43, [2133] = 0x5efc, [2134] = 0x4e4b, [2135] = 0x57dc, -+ [2136] = 0x56a2, [2137] = 0x60a9, [2138] = 0x6fc3, [2139] = 0x7d0d, -+ [2140] = 0x80fd, [2141] = 0x8133, [2142] = 0x81bf, [2143] = 0x8fb2, -+ [2144] = 0x8997, [2145] = 0x86a4, [2146] = 0x5df4, [2147] = 0x628a, -+ [2148] = 0x64ad, [2149] = 0x8987, [2150] = 0x6777, [2151] = 0x6ce2, -+ [2152] = 0x6d3e, [2153] = 0x7436, [2154] = 0x7834, [2155] = 0x5a46, -+ [2156] = 0x7f75, [2157] = 0x82ad, [2158] = 0x99ac, [2159] = 0x4ff3, -+ [2160] = 0x5ec3, [2161] = 0x62dd, [2162] = 0x6392, [2163] = 0x6557, -+ [2164] = 0x676f, [2165] = 0x76c3, [2166] = 0x724c, [2167] = 0x80cc, -+ [2168] = 0x80ba, [2169] = 0x8f29, [2170] = 0x914d, [2171] = 0x500d, -+ [2172] = 0x57f9, [2173] = 0x5a92, [2174] = 0x6885, [2176] = 0x6973, -+ [2177] = 0x7164, [2178] = 0x72fd, [2179] = 0x8cb7, [2180] = 0x58f2, -+ [2181] = 0x8ce0, [2182] = 0x966a, [2183] = 0x9019, [2184] = 0x877f, -+ [2185] = 0x79e4, [2186] = 0x77e7, [2187] = 0x8429, [2188] = 0x4f2f, -+ [2189] = 0x5265, [2190] = 0x535a, [2191] = 0x62cd, [2192] = 0x67cf, -+ [2193] = 0x6cca, [2194] = 0x767d, [2195] = 0x7b94, [2196] = 0x7c95, -+ [2197] = 0x8236, [2198] = 0x8584, [2199] = 0x8feb, [2200] = 0x66dd, -+ [2201] = 0x6f20, [2202] = 0x7206, [2203] = 0x7e1b, [2204] = 0x83ab, -+ [2205] = 0x99c1, [2206] = 0x9ea6, [2207] = 0x51fd, [2208] = 0x7bb1, -+ [2209] = 0x7872, [2210] = 0x7bb8, [2211] = 0x8087, [2212] = 0x7b48, -+ [2213] = 0x6ae8, [2214] = 0x5e61, [2215] = 0x808c, [2216] = 0x7551, -+ [2217] = 0x7560, [2218] = 0x516b, [2219] = 0x9262, [2220] = 0x6e8c, -+ [2221] = 0x767a, [2222] = 0x9197, [2223] = 0x9aea, [2224] = 0x4f10, -+ [2225] = 0x7f70, [2226] = 0x629c, [2227] = 0x7b4f, [2228] = 0x95a5, -+ [2229] = 0x9ce9, [2230] = 0x567a, [2231] = 0x5859, [2232] = 0x86e4, -+ [2233] = 0x96bc, [2234] = 0x4f34, [2235] = 0x5224, [2236] = 0x534a, -+ [2237] = 0x53cd, [2238] = 0x53db, [2239] = 0x5e06, [2240] = 0x642c, -+ [2241] = 0x6591, [2242] = 0x677f, [2243] = 0x6c3e, [2244] = 0x6c4e, -+ [2245] = 0x7248, [2246] = 0x72af, [2247] = 0x73ed, [2248] = 0x7554, -+ [2249] = 0x7e41, [2250] = 0x822c, [2251] = 0x85e9, [2252] = 0x8ca9, -+ [2253] = 0x7bc4, [2254] = 0x91c6, [2255] = 0x7169, [2256] = 0x9812, -+ [2257] = 0x98ef, [2258] = 0x633d, [2259] = 0x6669, [2260] = 0x756a, -+ [2261] = 0x76e4, [2262] = 0x78d0, [2263] = 0x8543, [2264] = 0x86ee, -+ [2265] = 0x532a, [2266] = 0x5351, [2267] = 0x5426, [2268] = 0x5983, -+ [2269] = 0x5e87, [2270] = 0x5f7c, [2271] = 0x60b2, [2272] = 0x6249, -+ [2273] = 0x6279, [2274] = 0x62ab, [2275] = 0x6590, [2276] = 0x6bd4, -+ [2277] = 0x6ccc, [2278] = 0x75b2, [2279] = 0x76ae, [2280] = 0x7891, -+ [2281] = 0x79d8, [2282] = 0x7dcb, [2283] = 0x7f77, [2284] = 0x80a5, -+ [2285] = 0x88ab, [2286] = 0x8ab9, [2287] = 0x8cbb, [2288] = 0x907f, -+ [2289] = 0x975e, [2290] = 0x98db, [2291] = 0x6a0b, [2292] = 0x7c38, -+ [2293] = 0x5099, [2294] = 0x5c3e, [2295] = 0x5fae, [2296] = 0x6787, -+ [2297] = 0x6bd8, [2298] = 0x7435, [2299] = 0x7709, [2300] = 0x7f8e, -+ [2304] = 0x9f3b, [2305] = 0x67ca, [2306] = 0x7a17, [2307] = 0x5339, -+ [2308] = 0x758b, [2309] = 0x9aed, [2310] = 0x5f66, [2311] = 0x819d, -+ [2312] = 0x83f1, [2313] = 0x8098, [2314] = 0x5f3c, [2315] = 0x5fc5, -+ [2316] = 0x7562, [2317] = 0x7b46, [2318] = 0x903c, [2319] = 0x6867, -+ [2320] = 0x59eb, [2321] = 0x5a9b, [2322] = 0x7d10, [2323] = 0x767e, -+ [2324] = 0x8b2c, [2325] = 0x4ff5, [2326] = 0x5f6a, [2327] = 0x6a19, -+ [2328] = 0x6c37, [2329] = 0x6f02, [2330] = 0x74e2, [2331] = 0x7968, -+ [2332] = 0x8868, [2333] = 0x8a55, [2334] = 0x8c79, [2335] = 0x5edf, -+ [2336] = 0x63cf, [2337] = 0x75c5, [2338] = 0x79d2, [2339] = 0x82d7, -+ [2340] = 0x9328, [2341] = 0x92f2, [2342] = 0x849c, [2343] = 0x86ed, -+ [2344] = 0x9c2d, [2345] = 0x54c1, [2346] = 0x5f6c, [2347] = 0x658c, -+ [2348] = 0x6d5c, [2349] = 0x7015, [2350] = 0x8ca7, [2351] = 0x8cd3, -+ [2352] = 0x983b, [2353] = 0x654f, [2354] = 0x74f6, [2355] = 0x4e0d, -+ [2356] = 0x4ed8, [2357] = 0x57e0, [2358] = 0x592b, [2359] = 0x5a66, -+ [2360] = 0x5bcc, [2361] = 0x51a8, [2362] = 0x5e03, [2363] = 0x5e9c, -+ [2364] = 0x6016, [2365] = 0x6276, [2366] = 0x6577, [2368] = 0x65a7, -+ [2369] = 0x666e, [2370] = 0x6d6e, [2371] = 0x7236, [2372] = 0x7b26, -+ [2373] = 0x8150, [2374] = 0x819a, [2375] = 0x8299, [2376] = 0x8b5c, -+ [2377] = 0x8ca0, [2378] = 0x8ce6, [2379] = 0x8d74, [2380] = 0x961c, -+ [2381] = 0x9644, [2382] = 0x4fae, [2383] = 0x64ab, [2384] = 0x6b66, -+ [2385] = 0x821e, [2386] = 0x8461, [2387] = 0x856a, [2388] = 0x90e8, -+ [2389] = 0x5c01, [2390] = 0x6953, [2391] = 0x98a8, [2392] = 0x847a, -+ [2393] = 0x8557, [2394] = 0x4f0f, [2395] = 0x526f, [2396] = 0x5fa9, -+ [2397] = 0x5e45, [2398] = 0x670d, [2399] = 0x798f, [2400] = 0x8179, -+ [2401] = 0x8907, [2402] = 0x8986, [2403] = 0x6df5, [2404] = 0x5f17, -+ [2405] = 0x6255, [2406] = 0x6cb8, [2407] = 0x4ecf, [2408] = 0x7269, -+ [2409] = 0x9b92, [2410] = 0x5206, [2411] = 0x543b, [2412] = 0x5674, -+ [2413] = 0x58b3, [2414] = 0x61a4, [2415] = 0x626e, [2416] = 0x711a, -+ [2417] = 0x596e, [2418] = 0x7c89, [2419] = 0x7cde, [2420] = 0x7d1b, -+ [2421] = 0x96f0, [2422] = 0x6587, [2423] = 0x805e, [2424] = 0x4e19, -+ [2425] = 0x4f75, [2426] = 0x5175, [2427] = 0x5840, [2428] = 0x5e63, -+ [2429] = 0x5e73, [2430] = 0x5f0a, [2431] = 0x67c4, [2432] = 0x4e26, -+ [2433] = 0x853d, [2434] = 0x9589, [2435] = 0x965b, [2436] = 0x7c73, -+ [2437] = 0x9801, [2438] = 0x50fb, [2439] = 0x58c1, [2440] = 0x7656, -+ [2441] = 0x78a7, [2442] = 0x5225, [2443] = 0x77a5, [2444] = 0x8511, -+ [2445] = 0x7b86, [2446] = 0x504f, [2447] = 0x5909, [2448] = 0x7247, -+ [2449] = 0x7bc7, [2450] = 0x7de8, [2451] = 0x8fba, [2452] = 0x8fd4, -+ [2453] = 0x904d, [2454] = 0x4fbf, [2455] = 0x52c9, [2456] = 0x5a29, -+ [2457] = 0x5f01, [2458] = 0x97ad, [2459] = 0x4fdd, [2460] = 0x8217, -+ [2461] = 0x92ea, [2462] = 0x5703, [2463] = 0x6355, [2464] = 0x6b69, -+ [2465] = 0x752b, [2466] = 0x88dc, [2467] = 0x8f14, [2468] = 0x7a42, -+ [2469] = 0x52df, [2470] = 0x5893, [2471] = 0x6155, [2472] = 0x620a, -+ [2473] = 0x66ae, [2474] = 0x6bcd, [2475] = 0x7c3f, [2476] = 0x83e9, -+ [2477] = 0x5023, [2478] = 0x4ff8, [2479] = 0x5305, [2480] = 0x5446, -+ [2481] = 0x5831, [2482] = 0x5949, [2483] = 0x5b9d, [2484] = 0x5cf0, -+ [2485] = 0x5cef, [2486] = 0x5d29, [2487] = 0x5e96, [2488] = 0x62b1, -+ [2489] = 0x6367, [2490] = 0x653e, [2491] = 0x65b9, [2492] = 0x670b, -+ [2496] = 0x6cd5, [2497] = 0x6ce1, [2498] = 0x70f9, [2499] = 0x7832, -+ [2500] = 0x7e2b, [2501] = 0x80de, [2502] = 0x82b3, [2503] = 0x840c, -+ [2504] = 0x84ec, [2505] = 0x8702, [2506] = 0x8912, [2507] = 0x8a2a, -+ [2508] = 0x8c4a, [2509] = 0x90a6, [2510] = 0x92d2, [2511] = 0x98fd, -+ [2512] = 0x9cf3, [2513] = 0x9d6c, [2514] = 0x4e4f, [2515] = 0x4ea1, -+ [2516] = 0x508d, [2517] = 0x5256, [2518] = 0x574a, [2519] = 0x59a8, -+ [2520] = 0x5e3d, [2521] = 0x5fd8, [2522] = 0x5fd9, [2523] = 0x623f, -+ [2524] = 0x66b4, [2525] = 0x671b, [2526] = 0x67d0, [2527] = 0x68d2, -+ [2528] = 0x5192, [2529] = 0x7d21, [2530] = 0x80aa, [2531] = 0x81a8, -+ [2532] = 0x8b00, [2533] = 0x8c8c, [2534] = 0x8cbf, [2535] = 0x927e, -+ [2536] = 0x9632, [2537] = 0x5420, [2538] = 0x982c, [2539] = 0x5317, -+ [2540] = 0x50d5, [2541] = 0x535c, [2542] = 0x58a8, [2543] = 0x64b2, -+ [2544] = 0x6734, [2545] = 0x7267, [2546] = 0x7766, [2547] = 0x7a46, -+ [2548] = 0x91e6, [2549] = 0x52c3, [2550] = 0x6ca1, [2551] = 0x6b86, -+ [2552] = 0x5800, [2553] = 0x5e4c, [2554] = 0x5954, [2555] = 0x672c, -+ [2556] = 0x7ffb, [2557] = 0x51e1, [2558] = 0x76c6, [2560] = 0x6469, -+ [2561] = 0x78e8, [2562] = 0x9b54, [2563] = 0x9ebb, [2564] = 0x57cb, -+ [2565] = 0x59b9, [2566] = 0x6627, [2567] = 0x679a, [2568] = 0x6bce, -+ [2569] = 0x54e9, [2570] = 0x69d9, [2571] = 0x5e55, [2572] = 0x819c, -+ [2573] = 0x6795, [2574] = 0x9baa, [2575] = 0x67fe, [2576] = 0x9c52, -+ [2577] = 0x685d, [2578] = 0x4ea6, [2579] = 0x4fe3, [2580] = 0x53c8, -+ [2581] = 0x62b9, [2582] = 0x672b, [2583] = 0x6cab, [2584] = 0x8fc4, -+ [2585] = 0x4fad, [2586] = 0x7e6d, [2587] = 0x9ebf, [2588] = 0x4e07, -+ [2589] = 0x6162, [2590] = 0x6e80, [2591] = 0x6f2b, [2592] = 0x8513, -+ [2593] = 0x5473, [2594] = 0x672a, [2595] = 0x9b45, [2596] = 0x5df3, -+ [2597] = 0x7b95, [2598] = 0x5cac, [2599] = 0x5bc6, [2600] = 0x871c, -+ [2601] = 0x6e4a, [2602] = 0x84d1, [2603] = 0x7a14, [2604] = 0x8108, -+ [2605] = 0x5999, [2606] = 0x7c8d, [2607] = 0x6c11, [2608] = 0x7720, -+ [2609] = 0x52d9, [2610] = 0x5922, [2611] = 0x7121, [2612] = 0x725f, -+ [2613] = 0x77db, [2614] = 0x9727, [2615] = 0x9d61, [2616] = 0x690b, -+ [2617] = 0x5a7f, [2618] = 0x5a18, [2619] = 0x51a5, [2620] = 0x540d, -+ [2621] = 0x547d, [2622] = 0x660e, [2623] = 0x76df, [2624] = 0x8ff7, -+ [2625] = 0x9298, [2626] = 0x9cf4, [2627] = 0x59ea, [2628] = 0x725d, -+ [2629] = 0x6ec5, [2630] = 0x514d, [2631] = 0x68c9, [2632] = 0x7dbf, -+ [2633] = 0x7dec, [2634] = 0x9762, [2635] = 0x9eba, [2636] = 0x6478, -+ [2637] = 0x6a21, [2638] = 0x8302, [2639] = 0x5984, [2640] = 0x5b5f, -+ [2641] = 0x6bdb, [2642] = 0x731b, [2643] = 0x76f2, [2644] = 0x7db2, -+ [2645] = 0x8017, [2646] = 0x8499, [2647] = 0x5132, [2648] = 0x6728, -+ [2649] = 0x9ed9, [2650] = 0x76ee, [2651] = 0x6762, [2652] = 0x52ff, -+ [2653] = 0x9905, [2654] = 0x5c24, [2655] = 0x623b, [2656] = 0x7c7e, -+ [2657] = 0x8cb0, [2658] = 0x554f, [2659] = 0x60b6, [2660] = 0x7d0b, -+ [2661] = 0x9580, [2662] = 0x5301, [2663] = 0x4e5f, [2664] = 0x51b6, -+ [2665] = 0x591c, [2666] = 0x723a, [2667] = 0x8036, [2668] = 0x91ce, -+ [2669] = 0x5f25, [2670] = 0x77e2, [2671] = 0x5384, [2672] = 0x5f79, -+ [2673] = 0x7d04, [2674] = 0x85ac, [2675] = 0x8a33, [2676] = 0x8e8d, -+ [2677] = 0x9756, [2678] = 0x67f3, [2679] = 0x85ae, [2680] = 0x9453, -+ [2681] = 0x6109, [2682] = 0x6108, [2683] = 0x6cb9, [2684] = 0x7652, -+ [2688] = 0x8aed, [2689] = 0x8f38, [2690] = 0x552f, [2691] = 0x4f51, -+ [2692] = 0x512a, [2693] = 0x52c7, [2694] = 0x53cb, [2695] = 0x5ba5, -+ [2696] = 0x5e7d, [2697] = 0x60a0, [2698] = 0x6182, [2699] = 0x63d6, -+ [2700] = 0x6709, [2701] = 0x67da, [2702] = 0x6e67, [2703] = 0x6d8c, -+ [2704] = 0x7336, [2705] = 0x7337, [2706] = 0x7531, [2707] = 0x7950, -+ [2708] = 0x88d5, [2709] = 0x8a98, [2710] = 0x904a, [2711] = 0x9091, -+ [2712] = 0x90f5, [2713] = 0x96c4, [2714] = 0x878d, [2715] = 0x5915, -+ [2716] = 0x4e88, [2717] = 0x4f59, [2718] = 0x4e0e, [2719] = 0x8a89, -+ [2720] = 0x8f3f, [2721] = 0x9810, [2722] = 0x50ad, [2723] = 0x5e7c, -+ [2724] = 0x5996, [2725] = 0x5bb9, [2726] = 0x5eb8, [2727] = 0x63da, -+ [2728] = 0x63fa, [2729] = 0x64c1, [2730] = 0x66dc, [2731] = 0x694a, -+ [2732] = 0x69d8, [2733] = 0x6d0b, [2734] = 0x6eb6, [2735] = 0x7194, -+ [2736] = 0x7528, [2737] = 0x7aaf, [2738] = 0x7f8a, [2739] = 0x8000, -+ [2740] = 0x8449, [2741] = 0x84c9, [2742] = 0x8981, [2743] = 0x8b21, -+ [2744] = 0x8e0a, [2745] = 0x9065, [2746] = 0x967d, [2747] = 0x990a, -+ [2748] = 0x617e, [2749] = 0x6291, [2750] = 0x6b32, [2752] = 0x6c83, -+ [2753] = 0x6d74, [2754] = 0x7fcc, [2755] = 0x7ffc, [2756] = 0x6dc0, -+ [2757] = 0x7f85, [2758] = 0x87ba, [2759] = 0x88f8, [2760] = 0x6765, -+ [2761] = 0x83b1, [2762] = 0x983c, [2763] = 0x96f7, [2764] = 0x6d1b, -+ [2765] = 0x7d61, [2766] = 0x843d, [2767] = 0x916a, [2768] = 0x4e71, -+ [2769] = 0x5375, [2770] = 0x5d50, [2771] = 0x6b04, [2772] = 0x6feb, -+ [2773] = 0x85cd, [2774] = 0x862d, [2775] = 0x89a7, [2776] = 0x5229, -+ [2777] = 0x540f, [2778] = 0x5c65, [2779] = 0x674e, [2780] = 0x68a8, -+ [2781] = 0x7406, [2782] = 0x7483, [2783] = 0x75e2, [2784] = 0x88cf, -+ [2785] = 0x88e1, [2786] = 0x91cc, [2787] = 0x96e2, [2788] = 0x9678, -+ [2789] = 0x5f8b, [2790] = 0x7387, [2791] = 0x7acb, [2792] = 0x844e, -+ [2793] = 0x63a0, [2794] = 0x7565, [2795] = 0x5289, [2796] = 0x6d41, -+ [2797] = 0x6e9c, [2798] = 0x7409, [2799] = 0x7559, [2800] = 0x786b, -+ [2801] = 0x7c92, [2802] = 0x9686, [2803] = 0x7adc, [2804] = 0x9f8d, -+ [2805] = 0x4fb6, [2806] = 0x616e, [2807] = 0x65c5, [2808] = 0x865c, -+ [2809] = 0x4e86, [2810] = 0x4eae, [2811] = 0x50da, [2812] = 0x4e21, -+ [2813] = 0x51cc, [2814] = 0x5bee, [2815] = 0x6599, [2816] = 0x6881, -+ [2817] = 0x6dbc, [2818] = 0x731f, [2819] = 0x7642, [2820] = 0x77ad, -+ [2821] = 0x7a1c, [2822] = 0x7ce7, [2823] = 0x826f, [2824] = 0x8ad2, -+ [2825] = 0x907c, [2826] = 0x91cf, [2827] = 0x9675, [2828] = 0x9818, -+ [2829] = 0x529b, [2830] = 0x7dd1, [2831] = 0x502b, [2832] = 0x5398, -+ [2833] = 0x6797, [2834] = 0x6dcb, [2835] = 0x71d0, [2836] = 0x7433, -+ [2837] = 0x81e8, [2838] = 0x8f2a, [2839] = 0x96a3, [2840] = 0x9c57, -+ [2841] = 0x9e9f, [2842] = 0x7460, [2843] = 0x5841, [2844] = 0x6d99, -+ [2845] = 0x7d2f, [2846] = 0x985e, [2847] = 0x4ee4, [2848] = 0x4f36, -+ [2849] = 0x4f8b, [2850] = 0x51b7, [2851] = 0x52b1, [2852] = 0x5dba, -+ [2853] = 0x601c, [2854] = 0x73b2, [2855] = 0x793c, [2856] = 0x82d3, -+ [2857] = 0x9234, [2858] = 0x96b7, [2859] = 0x96f6, [2860] = 0x970a, -+ [2861] = 0x9e97, [2862] = 0x9f62, [2863] = 0x66a6, [2864] = 0x6b74, -+ [2865] = 0x5217, [2866] = 0x52a3, [2867] = 0x70c8, [2868] = 0x88c2, -+ [2869] = 0x5ec9, [2870] = 0x604b, [2871] = 0x6190, [2872] = 0x6f23, -+ [2873] = 0x7149, [2874] = 0x7c3e, [2875] = 0x7df4, [2876] = 0x806f, -+ [2880] = 0x84ee, [2881] = 0x9023, [2882] = 0x932c, [2883] = 0x5442, -+ [2884] = 0x9b6f, [2885] = 0x6ad3, [2886] = 0x7089, [2887] = 0x8cc2, -+ [2888] = 0x8def, [2889] = 0x9732, [2890] = 0x52b4, [2891] = 0x5a41, -+ [2892] = 0x5eca, [2893] = 0x5f04, [2894] = 0x6717, [2895] = 0x697c, -+ [2896] = 0x6994, [2897] = 0x6d6a, [2898] = 0x6f0f, [2899] = 0x7262, -+ [2900] = 0x72fc, [2901] = 0x7bed, [2902] = 0x8001, [2903] = 0x807e, -+ [2904] = 0x874b, [2905] = 0x90ce, [2906] = 0x516d, [2907] = 0x9e93, -+ [2908] = 0x7984, [2909] = 0x808b, [2910] = 0x9332, [2911] = 0x8ad6, -+ [2912] = 0x502d, [2913] = 0x548c, [2914] = 0x8a71, [2915] = 0x6b6a, -+ [2916] = 0x8cc4, [2917] = 0x8107, [2918] = 0x60d1, [2919] = 0x67a0, -+ [2920] = 0x9df2, [2921] = 0x4e99, [2922] = 0x4e98, [2923] = 0x9c10, -+ [2924] = 0x8a6b, [2925] = 0x85c1, [2926] = 0x8568, [2927] = 0x6900, -+ [2928] = 0x6e7e, [2929] = 0x7897, [2930] = 0x8155, [2975] = 0x5f0c, -+ [2976] = 0x4e10, [2977] = 0x4e15, [2978] = 0x4e2a, [2979] = 0x4e31, -+ [2980] = 0x4e36, [2981] = 0x4e3c, [2982] = 0x4e3f, [2983] = 0x4e42, -+ [2984] = 0x4e56, [2985] = 0x4e58, [2986] = 0x4e82, [2987] = 0x4e85, -+ [2988] = 0x8c6b, [2989] = 0x4e8a, [2990] = 0x8212, [2991] = 0x5f0d, -+ [2992] = 0x4e8e, [2993] = 0x4e9e, [2994] = 0x4e9f, [2995] = 0x4ea0, -+ [2996] = 0x4ea2, [2997] = 0x4eb0, [2998] = 0x4eb3, [2999] = 0x4eb6, -+ [3000] = 0x4ece, [3001] = 0x4ecd, [3002] = 0x4ec4, [3003] = 0x4ec6, -+ [3004] = 0x4ec2, [3005] = 0x4ed7, [3006] = 0x4ede, [3007] = 0x4eed, -+ [3008] = 0x4edf, [3009] = 0x4ef7, [3010] = 0x4f09, [3011] = 0x4f5a, -+ [3012] = 0x4f30, [3013] = 0x4f5b, [3014] = 0x4f5d, [3015] = 0x4f57, -+ [3016] = 0x4f47, [3017] = 0x4f76, [3018] = 0x4f88, [3019] = 0x4f8f, -+ [3020] = 0x4f98, [3021] = 0x4f7b, [3022] = 0x4f69, [3023] = 0x4f70, -+ [3024] = 0x4f91, [3025] = 0x4f6f, [3026] = 0x4f86, [3027] = 0x4f96, -+ [3028] = 0x5118, [3029] = 0x4fd4, [3030] = 0x4fdf, [3031] = 0x4fce, -+ [3032] = 0x4fd8, [3033] = 0x4fdb, [3034] = 0x4fd1, [3035] = 0x4fda, -+ [3036] = 0x4fd0, [3037] = 0x4fe4, [3038] = 0x4fe5, [3039] = 0x501a, -+ [3040] = 0x5028, [3041] = 0x5014, [3042] = 0x502a, [3043] = 0x5025, -+ [3044] = 0x5005, [3045] = 0x4f1c, [3046] = 0x4ff6, [3047] = 0x5021, -+ [3048] = 0x5029, [3049] = 0x502c, [3050] = 0x4ffe, [3051] = 0x4fef, -+ [3052] = 0x5011, [3053] = 0x5006, [3054] = 0x5043, [3055] = 0x5047, -+ [3056] = 0x6703, [3057] = 0x5055, [3058] = 0x5050, [3059] = 0x5048, -+ [3060] = 0x505a, [3061] = 0x5056, [3062] = 0x506c, [3063] = 0x5078, -+ [3064] = 0x5080, [3065] = 0x509a, [3066] = 0x5085, [3067] = 0x50b4, -+ [3068] = 0x50b2, [3072] = 0x50c9, [3073] = 0x50ca, [3074] = 0x50b3, -+ [3075] = 0x50c2, [3076] = 0x50d6, [3077] = 0x50de, [3078] = 0x50e5, -+ [3079] = 0x50ed, [3080] = 0x50e3, [3081] = 0x50ee, [3082] = 0x50f9, -+ [3083] = 0x50f5, [3084] = 0x5109, [3085] = 0x5101, [3086] = 0x5102, -+ [3087] = 0x5116, [3088] = 0x5115, [3089] = 0x5114, [3090] = 0x511a, -+ [3091] = 0x5121, [3092] = 0x513a, [3093] = 0x5137, [3094] = 0x513c, -+ [3095] = 0x513b, [3096] = 0x513f, [3097] = 0x5140, [3098] = 0x5152, -+ [3099] = 0x514c, [3100] = 0x5154, [3101] = 0x5162, [3102] = 0x7af8, -+ [3103] = 0x5169, [3104] = 0x516a, [3105] = 0x516e, [3106] = 0x5180, -+ [3107] = 0x5182, [3108] = 0x56d8, [3109] = 0x518c, [3110] = 0x5189, -+ [3111] = 0x518f, [3112] = 0x5191, [3113] = 0x5193, [3114] = 0x5195, -+ [3115] = 0x5196, [3116] = 0x51a4, [3117] = 0x51a6, [3118] = 0x51a2, -+ [3119] = 0x51a9, [3120] = 0x51aa, [3121] = 0x51ab, [3122] = 0x51b3, -+ [3123] = 0x51b1, [3124] = 0x51b2, [3125] = 0x51b0, [3126] = 0x51b5, -+ [3127] = 0x51bd, [3128] = 0x51c5, [3129] = 0x51c9, [3130] = 0x51db, -+ [3131] = 0x51e0, [3132] = 0x8655, [3133] = 0x51e9, [3134] = 0x51ed, -+ [3136] = 0x51f0, [3137] = 0x51f5, [3138] = 0x51fe, [3139] = 0x5204, -+ [3140] = 0x520b, [3141] = 0x5214, [3142] = 0x520e, [3143] = 0x5227, -+ [3144] = 0x522a, [3145] = 0x522e, [3146] = 0x5233, [3147] = 0x5239, -+ [3148] = 0x524f, [3149] = 0x5244, [3150] = 0x524b, [3151] = 0x524c, -+ [3152] = 0x525e, [3153] = 0x5254, [3154] = 0x526a, [3155] = 0x5274, -+ [3156] = 0x5269, [3157] = 0x5273, [3158] = 0x527f, [3159] = 0x527d, -+ [3160] = 0x528d, [3161] = 0x5294, [3162] = 0x5292, [3163] = 0x5271, -+ [3164] = 0x5288, [3165] = 0x5291, [3166] = 0x8fa8, [3167] = 0x8fa7, -+ [3168] = 0x52ac, [3169] = 0x52ad, [3170] = 0x52bc, [3171] = 0x52b5, -+ [3172] = 0x52c1, [3173] = 0x52cd, [3174] = 0x52d7, [3175] = 0x52de, -+ [3176] = 0x52e3, [3177] = 0x52e6, [3178] = 0x98ed, [3179] = 0x52e0, -+ [3180] = 0x52f3, [3181] = 0x52f5, [3182] = 0x52f8, [3183] = 0x52f9, -+ [3184] = 0x5306, [3185] = 0x5308, [3186] = 0x7538, [3187] = 0x530d, -+ [3188] = 0x5310, [3189] = 0x530f, [3190] = 0x5315, [3191] = 0x531a, -+ [3192] = 0x5323, [3193] = 0x532f, [3194] = 0x5331, [3195] = 0x5333, -+ [3196] = 0x5338, [3197] = 0x5340, [3198] = 0x5346, [3199] = 0x5345, -+ [3200] = 0x4e17, [3201] = 0x5349, [3202] = 0x534d, [3203] = 0x51d6, -+ [3204] = 0x535e, [3205] = 0x5369, [3206] = 0x536e, [3207] = 0x5918, -+ [3208] = 0x537b, [3209] = 0x5377, [3210] = 0x5382, [3211] = 0x5396, -+ [3212] = 0x53a0, [3213] = 0x53a6, [3214] = 0x53a5, [3215] = 0x53ae, -+ [3216] = 0x53b0, [3217] = 0x53b6, [3218] = 0x53c3, [3219] = 0x7c12, -+ [3220] = 0x96d9, [3221] = 0x53df, [3222] = 0x66fc, [3223] = 0x71ee, -+ [3224] = 0x53ee, [3225] = 0x53e8, [3226] = 0x53ed, [3227] = 0x53fa, -+ [3228] = 0x5401, [3229] = 0x543d, [3230] = 0x5440, [3231] = 0x542c, -+ [3232] = 0x542d, [3233] = 0x543c, [3234] = 0x542e, [3235] = 0x5436, -+ [3236] = 0x5429, [3237] = 0x541d, [3238] = 0x544e, [3239] = 0x548f, -+ [3240] = 0x5475, [3241] = 0x548e, [3242] = 0x545f, [3243] = 0x5471, -+ [3244] = 0x5477, [3245] = 0x5470, [3246] = 0x5492, [3247] = 0x547b, -+ [3248] = 0x5480, [3249] = 0x5476, [3250] = 0x5484, [3251] = 0x5490, -+ [3252] = 0x5486, [3253] = 0x54c7, [3254] = 0x54a2, [3255] = 0x54b8, -+ [3256] = 0x54a5, [3257] = 0x54ac, [3258] = 0x54c4, [3259] = 0x54c8, -+ [3260] = 0x54a8, [3264] = 0x54ab, [3265] = 0x54c2, [3266] = 0x54a4, -+ [3267] = 0x54be, [3268] = 0x54bc, [3269] = 0x54d8, [3270] = 0x54e5, -+ [3271] = 0x54e6, [3272] = 0x550f, [3273] = 0x5514, [3274] = 0x54fd, -+ [3275] = 0x54ee, [3276] = 0x54ed, [3277] = 0x54fa, [3278] = 0x54e2, -+ [3279] = 0x5539, [3280] = 0x5540, [3281] = 0x5563, [3282] = 0x554c, -+ [3283] = 0x552e, [3284] = 0x555c, [3285] = 0x5545, [3286] = 0x5556, -+ [3287] = 0x5557, [3288] = 0x5538, [3289] = 0x5533, [3290] = 0x555d, -+ [3291] = 0x5599, [3292] = 0x5580, [3293] = 0x54af, [3294] = 0x558a, -+ [3295] = 0x559f, [3296] = 0x557b, [3297] = 0x557e, [3298] = 0x5598, -+ [3299] = 0x559e, [3300] = 0x55ae, [3301] = 0x557c, [3302] = 0x5583, -+ [3303] = 0x55a9, [3304] = 0x5587, [3305] = 0x55a8, [3306] = 0x55da, -+ [3307] = 0x55c5, [3308] = 0x55df, [3309] = 0x55c4, [3310] = 0x55dc, -+ [3311] = 0x55e4, [3312] = 0x55d4, [3313] = 0x5614, [3314] = 0x55f7, -+ [3315] = 0x5616, [3316] = 0x55fe, [3317] = 0x55fd, [3318] = 0x561b, -+ [3319] = 0x55f9, [3320] = 0x564e, [3321] = 0x5650, [3322] = 0x71df, -+ [3323] = 0x5634, [3324] = 0x5636, [3325] = 0x5632, [3326] = 0x5638, -+ [3328] = 0x566b, [3329] = 0x5664, [3330] = 0x562f, [3331] = 0x566c, -+ [3332] = 0x566a, [3333] = 0x5686, [3334] = 0x5680, [3335] = 0x568a, -+ [3336] = 0x56a0, [3337] = 0x5694, [3338] = 0x568f, [3339] = 0x56a5, -+ [3340] = 0x56ae, [3341] = 0x56b6, [3342] = 0x56b4, [3343] = 0x56c2, -+ [3344] = 0x56bc, [3345] = 0x56c1, [3346] = 0x56c3, [3347] = 0x56c0, -+ [3348] = 0x56c8, [3349] = 0x56ce, [3350] = 0x56d1, [3351] = 0x56d3, -+ [3352] = 0x56d7, [3353] = 0x56ee, [3354] = 0x56f9, [3355] = 0x5700, -+ [3356] = 0x56ff, [3357] = 0x5704, [3358] = 0x5709, [3359] = 0x5708, -+ [3360] = 0x570b, [3361] = 0x570d, [3362] = 0x5713, [3363] = 0x5718, -+ [3364] = 0x5716, [3365] = 0x55c7, [3366] = 0x571c, [3367] = 0x5726, -+ [3368] = 0x5737, [3369] = 0x5738, [3370] = 0x574e, [3371] = 0x573b, -+ [3372] = 0x5740, [3373] = 0x574f, [3374] = 0x5769, [3375] = 0x57c0, -+ [3376] = 0x5788, [3377] = 0x5761, [3378] = 0x577f, [3379] = 0x5789, -+ [3380] = 0x5793, [3381] = 0x57a0, [3382] = 0x57b3, [3383] = 0x57a4, -+ [3384] = 0x57aa, [3385] = 0x57b0, [3386] = 0x57c3, [3387] = 0x57c6, -+ [3388] = 0x57d4, [3389] = 0x57d2, [3390] = 0x57d3, [3391] = 0x580a, -+ [3392] = 0x57d6, [3393] = 0x57e3, [3394] = 0x580b, [3395] = 0x5819, -+ [3396] = 0x581d, [3397] = 0x5872, [3398] = 0x5821, [3399] = 0x5862, -+ [3400] = 0x584b, [3401] = 0x5870, [3402] = 0x6bc0, [3403] = 0x5852, -+ [3404] = 0x583d, [3405] = 0x5879, [3406] = 0x5885, [3407] = 0x58b9, -+ [3408] = 0x589f, [3409] = 0x58ab, [3410] = 0x58ba, [3411] = 0x58de, -+ [3412] = 0x58bb, [3413] = 0x58b8, [3414] = 0x58ae, [3415] = 0x58c5, -+ [3416] = 0x58d3, [3417] = 0x58d1, [3418] = 0x58d7, [3419] = 0x58d9, -+ [3420] = 0x58d8, [3421] = 0x58e5, [3422] = 0x58dc, [3423] = 0x58e4, -+ [3424] = 0x58df, [3425] = 0x58ef, [3426] = 0x58fa, [3427] = 0x58f9, -+ [3428] = 0x58fb, [3429] = 0x58fc, [3430] = 0x58fd, [3431] = 0x5902, -+ [3432] = 0x590a, [3433] = 0x5910, [3434] = 0x591b, [3435] = 0x68a6, -+ [3436] = 0x5925, [3437] = 0x592c, [3438] = 0x592d, [3439] = 0x5932, -+ [3440] = 0x5938, [3441] = 0x593e, [3442] = 0x7ad2, [3443] = 0x5955, -+ [3444] = 0x5950, [3445] = 0x594e, [3446] = 0x595a, [3447] = 0x5958, -+ [3448] = 0x5962, [3449] = 0x5960, [3450] = 0x5967, [3451] = 0x596c, -+ [3452] = 0x5969, [3456] = 0x5978, [3457] = 0x5981, [3458] = 0x599d, -+ [3459] = 0x4f5e, [3460] = 0x4fab, [3461] = 0x59a3, [3462] = 0x59b2, -+ [3463] = 0x59c6, [3464] = 0x59e8, [3465] = 0x59dc, [3466] = 0x598d, -+ [3467] = 0x59d9, [3468] = 0x59da, [3469] = 0x5a25, [3470] = 0x5a1f, -+ [3471] = 0x5a11, [3472] = 0x5a1c, [3473] = 0x5a09, [3474] = 0x5a1a, -+ [3475] = 0x5a40, [3476] = 0x5a6c, [3477] = 0x5a49, [3478] = 0x5a35, -+ [3479] = 0x5a36, [3480] = 0x5a62, [3481] = 0x5a6a, [3482] = 0x5a9a, -+ [3483] = 0x5abc, [3484] = 0x5abe, [3485] = 0x5acb, [3486] = 0x5ac2, -+ [3487] = 0x5abd, [3488] = 0x5ae3, [3489] = 0x5ad7, [3490] = 0x5ae6, -+ [3491] = 0x5ae9, [3492] = 0x5ad6, [3493] = 0x5afa, [3494] = 0x5afb, -+ [3495] = 0x5b0c, [3496] = 0x5b0b, [3497] = 0x5b16, [3498] = 0x5b32, -+ [3499] = 0x5ad0, [3500] = 0x5b2a, [3501] = 0x5b36, [3502] = 0x5b3e, -+ [3503] = 0x5b43, [3504] = 0x5b45, [3505] = 0x5b40, [3506] = 0x5b51, -+ [3507] = 0x5b55, [3508] = 0x5b5a, [3509] = 0x5b5b, [3510] = 0x5b65, -+ [3511] = 0x5b69, [3512] = 0x5b70, [3513] = 0x5b73, [3514] = 0x5b75, -+ [3515] = 0x5b78, [3516] = 0x6588, [3517] = 0x5b7a, [3518] = 0x5b80, -+ [3520] = 0x5b83, [3521] = 0x5ba6, [3522] = 0x5bb8, [3523] = 0x5bc3, -+ [3524] = 0x5bc7, [3525] = 0x5bc9, [3526] = 0x5bd4, [3527] = 0x5bd0, -+ [3528] = 0x5be4, [3529] = 0x5be6, [3530] = 0x5be2, [3531] = 0x5bde, -+ [3532] = 0x5be5, [3533] = 0x5beb, [3534] = 0x5bf0, [3535] = 0x5bf6, -+ [3536] = 0x5bf3, [3537] = 0x5c05, [3538] = 0x5c07, [3539] = 0x5c08, -+ [3540] = 0x5c0d, [3541] = 0x5c13, [3542] = 0x5c20, [3543] = 0x5c22, -+ [3544] = 0x5c28, [3545] = 0x5c38, [3546] = 0x5c39, [3547] = 0x5c41, -+ [3548] = 0x5c46, [3549] = 0x5c4e, [3550] = 0x5c53, [3551] = 0x5c50, -+ [3552] = 0x5c4f, [3553] = 0x5b71, [3554] = 0x5c6c, [3555] = 0x5c6e, -+ [3556] = 0x4e62, [3557] = 0x5c76, [3558] = 0x5c79, [3559] = 0x5c8c, -+ [3560] = 0x5c91, [3561] = 0x5c94, [3562] = 0x599b, [3563] = 0x5cab, -+ [3564] = 0x5cbb, [3565] = 0x5cb6, [3566] = 0x5cbc, [3567] = 0x5cb7, -+ [3568] = 0x5cc5, [3569] = 0x5cbe, [3570] = 0x5cc7, [3571] = 0x5cd9, -+ [3572] = 0x5ce9, [3573] = 0x5cfd, [3574] = 0x5cfa, [3575] = 0x5ced, -+ [3576] = 0x5d8c, [3577] = 0x5cea, [3578] = 0x5d0b, [3579] = 0x5d15, -+ [3580] = 0x5d17, [3581] = 0x5d5c, [3582] = 0x5d1f, [3583] = 0x5d1b, -+ [3584] = 0x5d11, [3585] = 0x5d14, [3586] = 0x5d22, [3587] = 0x5d1a, -+ [3588] = 0x5d19, [3589] = 0x5d18, [3590] = 0x5d4c, [3591] = 0x5d52, -+ [3592] = 0x5d4e, [3593] = 0x5d4b, [3594] = 0x5d6c, [3595] = 0x5d73, -+ [3596] = 0x5d76, [3597] = 0x5d87, [3598] = 0x5d84, [3599] = 0x5d82, -+ [3600] = 0x5da2, [3601] = 0x5d9d, [3602] = 0x5dac, [3603] = 0x5dae, -+ [3604] = 0x5dbd, [3605] = 0x5d90, [3606] = 0x5db7, [3607] = 0x5dbc, -+ [3608] = 0x5dc9, [3609] = 0x5dcd, [3610] = 0x5dd3, [3611] = 0x5dd2, -+ [3612] = 0x5dd6, [3613] = 0x5ddb, [3614] = 0x5deb, [3615] = 0x5df2, -+ [3616] = 0x5df5, [3617] = 0x5e0b, [3618] = 0x5e1a, [3619] = 0x5e19, -+ [3620] = 0x5e11, [3621] = 0x5e1b, [3622] = 0x5e36, [3623] = 0x5e37, -+ [3624] = 0x5e44, [3625] = 0x5e43, [3626] = 0x5e40, [3627] = 0x5e4e, -+ [3628] = 0x5e57, [3629] = 0x5e54, [3630] = 0x5e5f, [3631] = 0x5e62, -+ [3632] = 0x5e64, [3633] = 0x5e47, [3634] = 0x5e75, [3635] = 0x5e76, -+ [3636] = 0x5e7a, [3637] = 0x9ebc, [3638] = 0x5e7f, [3639] = 0x5ea0, -+ [3640] = 0x5ec1, [3641] = 0x5ec2, [3642] = 0x5ec8, [3643] = 0x5ed0, -+ [3644] = 0x5ecf, [3648] = 0x5ed6, [3649] = 0x5ee3, [3650] = 0x5edd, -+ [3651] = 0x5eda, [3652] = 0x5edb, [3653] = 0x5ee2, [3654] = 0x5ee1, -+ [3655] = 0x5ee8, [3656] = 0x5ee9, [3657] = 0x5eec, [3658] = 0x5ef1, -+ [3659] = 0x5ef3, [3660] = 0x5ef0, [3661] = 0x5ef4, [3662] = 0x5ef8, -+ [3663] = 0x5efe, [3664] = 0x5f03, [3665] = 0x5f09, [3666] = 0x5f5d, -+ [3667] = 0x5f5c, [3668] = 0x5f0b, [3669] = 0x5f11, [3670] = 0x5f16, -+ [3671] = 0x5f29, [3672] = 0x5f2d, [3673] = 0x5f38, [3674] = 0x5f41, -+ [3675] = 0x5f48, [3676] = 0x5f4c, [3677] = 0x5f4e, [3678] = 0x5f2f, -+ [3679] = 0x5f51, [3680] = 0x5f56, [3681] = 0x5f57, [3682] = 0x5f59, -+ [3683] = 0x5f61, [3684] = 0x5f6d, [3685] = 0x5f73, [3686] = 0x5f77, -+ [3687] = 0x5f83, [3688] = 0x5f82, [3689] = 0x5f7f, [3690] = 0x5f8a, -+ [3691] = 0x5f88, [3692] = 0x5f91, [3693] = 0x5f87, [3694] = 0x5f9e, -+ [3695] = 0x5f99, [3696] = 0x5f98, [3697] = 0x5fa0, [3698] = 0x5fa8, -+ [3699] = 0x5fad, [3700] = 0x5fbc, [3701] = 0x5fd6, [3702] = 0x5ffb, -+ [3703] = 0x5fe4, [3704] = 0x5ff8, [3705] = 0x5ff1, [3706] = 0x5fdd, -+ [3707] = 0x60b3, [3708] = 0x5fff, [3709] = 0x6021, [3710] = 0x6060, -+ [3712] = 0x6019, [3713] = 0x6010, [3714] = 0x6029, [3715] = 0x600e, -+ [3716] = 0x6031, [3717] = 0x601b, [3718] = 0x6015, [3719] = 0x602b, -+ [3720] = 0x6026, [3721] = 0x600f, [3722] = 0x603a, [3723] = 0x605a, -+ [3724] = 0x6041, [3725] = 0x606a, [3726] = 0x6077, [3727] = 0x605f, -+ [3728] = 0x604a, [3729] = 0x6046, [3730] = 0x604d, [3731] = 0x6063, -+ [3732] = 0x6043, [3733] = 0x6064, [3734] = 0x6042, [3735] = 0x606c, -+ [3736] = 0x606b, [3737] = 0x6059, [3738] = 0x6081, [3739] = 0x608d, -+ [3740] = 0x60e7, [3741] = 0x6083, [3742] = 0x609a, [3743] = 0x6084, -+ [3744] = 0x609b, [3745] = 0x6096, [3746] = 0x6097, [3747] = 0x6092, -+ [3748] = 0x60a7, [3749] = 0x608b, [3750] = 0x60e1, [3751] = 0x60b8, -+ [3752] = 0x60e0, [3753] = 0x60d3, [3754] = 0x60b4, [3755] = 0x5ff0, -+ [3756] = 0x60bd, [3757] = 0x60c6, [3758] = 0x60b5, [3759] = 0x60d8, -+ [3760] = 0x614d, [3761] = 0x6115, [3762] = 0x6106, [3763] = 0x60f6, -+ [3764] = 0x60f7, [3765] = 0x6100, [3766] = 0x60f4, [3767] = 0x60fa, -+ [3768] = 0x6103, [3769] = 0x6121, [3770] = 0x60fb, [3771] = 0x60f1, -+ [3772] = 0x610d, [3773] = 0x610e, [3774] = 0x6147, [3775] = 0x613e, -+ [3776] = 0x6128, [3777] = 0x6127, [3778] = 0x614a, [3779] = 0x613f, -+ [3780] = 0x613c, [3781] = 0x612c, [3782] = 0x6134, [3783] = 0x613d, -+ [3784] = 0x6142, [3785] = 0x6144, [3786] = 0x6173, [3787] = 0x6177, -+ [3788] = 0x6158, [3789] = 0x6159, [3790] = 0x615a, [3791] = 0x616b, -+ [3792] = 0x6174, [3793] = 0x616f, [3794] = 0x6165, [3795] = 0x6171, -+ [3796] = 0x615f, [3797] = 0x615d, [3798] = 0x6153, [3799] = 0x6175, -+ [3800] = 0x6199, [3801] = 0x6196, [3802] = 0x6187, [3803] = 0x61ac, -+ [3804] = 0x6194, [3805] = 0x619a, [3806] = 0x618a, [3807] = 0x6191, -+ [3808] = 0x61ab, [3809] = 0x61ae, [3810] = 0x61cc, [3811] = 0x61ca, -+ [3812] = 0x61c9, [3813] = 0x61f7, [3814] = 0x61c8, [3815] = 0x61c3, -+ [3816] = 0x61c6, [3817] = 0x61ba, [3818] = 0x61cb, [3819] = 0x7f79, -+ [3820] = 0x61cd, [3821] = 0x61e6, [3822] = 0x61e3, [3823] = 0x61f6, -+ [3824] = 0x61fa, [3825] = 0x61f4, [3826] = 0x61ff, [3827] = 0x61fd, -+ [3828] = 0x61fc, [3829] = 0x61fe, [3830] = 0x6200, [3831] = 0x6208, -+ [3832] = 0x6209, [3833] = 0x620d, [3834] = 0x620c, [3835] = 0x6214, -+ [3836] = 0x621b, [3840] = 0x621e, [3841] = 0x6221, [3842] = 0x622a, -+ [3843] = 0x622e, [3844] = 0x6230, [3845] = 0x6232, [3846] = 0x6233, -+ [3847] = 0x6241, [3848] = 0x624e, [3849] = 0x625e, [3850] = 0x6263, -+ [3851] = 0x625b, [3852] = 0x6260, [3853] = 0x6268, [3854] = 0x627c, -+ [3855] = 0x6282, [3856] = 0x6289, [3857] = 0x627e, [3858] = 0x6292, -+ [3859] = 0x6293, [3860] = 0x6296, [3861] = 0x62d4, [3862] = 0x6283, -+ [3863] = 0x6294, [3864] = 0x62d7, [3865] = 0x62d1, [3866] = 0x62bb, -+ [3867] = 0x62cf, [3868] = 0x62ff, [3869] = 0x62c6, [3870] = 0x64d4, -+ [3871] = 0x62c8, [3872] = 0x62dc, [3873] = 0x62cc, [3874] = 0x62ca, -+ [3875] = 0x62c2, [3876] = 0x62c7, [3877] = 0x629b, [3878] = 0x62c9, -+ [3879] = 0x630c, [3880] = 0x62ee, [3881] = 0x62f1, [3882] = 0x6327, -+ [3883] = 0x6302, [3884] = 0x6308, [3885] = 0x62ef, [3886] = 0x62f5, -+ [3887] = 0x6350, [3888] = 0x633e, [3889] = 0x634d, [3890] = 0x641c, -+ [3891] = 0x634f, [3892] = 0x6396, [3893] = 0x638e, [3894] = 0x6380, -+ [3895] = 0x63ab, [3896] = 0x6376, [3897] = 0x63a3, [3898] = 0x638f, -+ [3899] = 0x6389, [3900] = 0x639f, [3901] = 0x63b5, [3902] = 0x636b, -+ [3904] = 0x6369, [3905] = 0x63be, [3906] = 0x63e9, [3907] = 0x63c0, -+ [3908] = 0x63c6, [3909] = 0x63e3, [3910] = 0x63c9, [3911] = 0x63d2, -+ [3912] = 0x63f6, [3913] = 0x63c4, [3914] = 0x6416, [3915] = 0x6434, -+ [3916] = 0x6406, [3917] = 0x6413, [3918] = 0x6426, [3919] = 0x6436, -+ [3920] = 0x651d, [3921] = 0x6417, [3922] = 0x6428, [3923] = 0x640f, -+ [3924] = 0x6467, [3925] = 0x646f, [3926] = 0x6476, [3927] = 0x644e, -+ [3928] = 0x652a, [3929] = 0x6495, [3930] = 0x6493, [3931] = 0x64a5, -+ [3932] = 0x64a9, [3933] = 0x6488, [3934] = 0x64bc, [3935] = 0x64da, -+ [3936] = 0x64d2, [3937] = 0x64c5, [3938] = 0x64c7, [3939] = 0x64bb, -+ [3940] = 0x64d8, [3941] = 0x64c2, [3942] = 0x64f1, [3943] = 0x64e7, -+ [3944] = 0x8209, [3945] = 0x64e0, [3946] = 0x64e1, [3947] = 0x62ac, -+ [3948] = 0x64e3, [3949] = 0x64ef, [3950] = 0x652c, [3951] = 0x64f6, -+ [3952] = 0x64f4, [3953] = 0x64f2, [3954] = 0x64fa, [3955] = 0x6500, -+ [3956] = 0x64fd, [3957] = 0x6518, [3958] = 0x651c, [3959] = 0x6505, -+ [3960] = 0x6524, [3961] = 0x6523, [3962] = 0x652b, [3963] = 0x6534, -+ [3964] = 0x6535, [3965] = 0x6537, [3966] = 0x6536, [3967] = 0x6538, -+ [3968] = 0x754b, [3969] = 0x6548, [3970] = 0x6556, [3971] = 0x6555, -+ [3972] = 0x654d, [3973] = 0x6558, [3974] = 0x655e, [3975] = 0x655d, -+ [3976] = 0x6572, [3977] = 0x6578, [3978] = 0x6582, [3979] = 0x6583, -+ [3980] = 0x8b8a, [3981] = 0x659b, [3982] = 0x659f, [3983] = 0x65ab, -+ [3984] = 0x65b7, [3985] = 0x65c3, [3986] = 0x65c6, [3987] = 0x65c1, -+ [3988] = 0x65c4, [3989] = 0x65cc, [3990] = 0x65d2, [3991] = 0x65db, -+ [3992] = 0x65d9, [3993] = 0x65e0, [3994] = 0x65e1, [3995] = 0x65f1, -+ [3996] = 0x6772, [3997] = 0x660a, [3998] = 0x6603, [3999] = 0x65fb, -+ [4000] = 0x6773, [4001] = 0x6635, [4002] = 0x6636, [4003] = 0x6634, -+ [4004] = 0x661c, [4005] = 0x664f, [4006] = 0x6644, [4007] = 0x6649, -+ [4008] = 0x6641, [4009] = 0x665e, [4010] = 0x665d, [4011] = 0x6664, -+ [4012] = 0x6667, [4013] = 0x6668, [4014] = 0x665f, [4015] = 0x6662, -+ [4016] = 0x6670, [4017] = 0x6683, [4018] = 0x6688, [4019] = 0x668e, -+ [4020] = 0x6689, [4021] = 0x6684, [4022] = 0x6698, [4023] = 0x669d, -+ [4024] = 0x66c1, [4025] = 0x66b9, [4026] = 0x66c9, [4027] = 0x66be, -+ [4028] = 0x66bc, [4032] = 0x66c4, [4033] = 0x66b8, [4034] = 0x66d6, -+ [4035] = 0x66da, [4036] = 0x66e0, [4037] = 0x663f, [4038] = 0x66e6, -+ [4039] = 0x66e9, [4040] = 0x66f0, [4041] = 0x66f5, [4042] = 0x66f7, -+ [4043] = 0x670f, [4044] = 0x6716, [4045] = 0x671e, [4046] = 0x6726, -+ [4047] = 0x6727, [4048] = 0x9738, [4049] = 0x672e, [4050] = 0x673f, -+ [4051] = 0x6736, [4052] = 0x6741, [4053] = 0x6738, [4054] = 0x6737, -+ [4055] = 0x6746, [4056] = 0x675e, [4057] = 0x6760, [4058] = 0x6759, -+ [4059] = 0x6763, [4060] = 0x6764, [4061] = 0x6789, [4062] = 0x6770, -+ [4063] = 0x67a9, [4064] = 0x677c, [4065] = 0x676a, [4066] = 0x678c, -+ [4067] = 0x678b, [4068] = 0x67a6, [4069] = 0x67a1, [4070] = 0x6785, -+ [4071] = 0x67b7, [4072] = 0x67ef, [4073] = 0x67b4, [4074] = 0x67ec, -+ [4075] = 0x67b3, [4076] = 0x67e9, [4077] = 0x67b8, [4078] = 0x67e4, -+ [4079] = 0x67de, [4080] = 0x67dd, [4081] = 0x67e2, [4082] = 0x67ee, -+ [4083] = 0x67b9, [4084] = 0x67ce, [4085] = 0x67c6, [4086] = 0x67e7, -+ [4087] = 0x6a9c, [4088] = 0x681e, [4089] = 0x6846, [4090] = 0x6829, -+ [4091] = 0x6840, [4092] = 0x684d, [4093] = 0x6832, [4094] = 0x684e, -+ [4096] = 0x68b3, [4097] = 0x682b, [4098] = 0x6859, [4099] = 0x6863, -+ [4100] = 0x6877, [4101] = 0x687f, [4102] = 0x689f, [4103] = 0x688f, -+ [4104] = 0x68ad, [4105] = 0x6894, [4106] = 0x689d, [4107] = 0x689b, -+ [4108] = 0x6883, [4109] = 0x6aae, [4110] = 0x68b9, [4111] = 0x6874, -+ [4112] = 0x68b5, [4113] = 0x68a0, [4114] = 0x68ba, [4115] = 0x690f, -+ [4116] = 0x688d, [4117] = 0x687e, [4118] = 0x6901, [4119] = 0x68ca, -+ [4120] = 0x6908, [4121] = 0x68d8, [4122] = 0x6922, [4123] = 0x6926, -+ [4124] = 0x68e1, [4125] = 0x690c, [4126] = 0x68cd, [4127] = 0x68d4, -+ [4128] = 0x68e7, [4129] = 0x68d5, [4130] = 0x6936, [4131] = 0x6912, -+ [4132] = 0x6904, [4133] = 0x68d7, [4134] = 0x68e3, [4135] = 0x6925, -+ [4136] = 0x68f9, [4137] = 0x68e0, [4138] = 0x68ef, [4139] = 0x6928, -+ [4140] = 0x692a, [4141] = 0x691a, [4142] = 0x6923, [4143] = 0x6921, -+ [4144] = 0x68c6, [4145] = 0x6979, [4146] = 0x6977, [4147] = 0x695c, -+ [4148] = 0x6978, [4149] = 0x696b, [4150] = 0x6954, [4151] = 0x697e, -+ [4152] = 0x696e, [4153] = 0x6939, [4154] = 0x6974, [4155] = 0x693d, -+ [4156] = 0x6959, [4157] = 0x6930, [4158] = 0x6961, [4159] = 0x695e, -+ [4160] = 0x695d, [4161] = 0x6981, [4162] = 0x696a, [4163] = 0x69b2, -+ [4164] = 0x69ae, [4165] = 0x69d0, [4166] = 0x69bf, [4167] = 0x69c1, -+ [4168] = 0x69d3, [4169] = 0x69be, [4170] = 0x69ce, [4171] = 0x5be8, -+ [4172] = 0x69ca, [4173] = 0x69dd, [4174] = 0x69bb, [4175] = 0x69c3, -+ [4176] = 0x69a7, [4177] = 0x6a2e, [4178] = 0x6991, [4179] = 0x69a0, -+ [4180] = 0x699c, [4181] = 0x6995, [4182] = 0x69b4, [4183] = 0x69de, -+ [4184] = 0x69e8, [4185] = 0x6a02, [4186] = 0x6a1b, [4187] = 0x69ff, -+ [4188] = 0x6b0a, [4189] = 0x69f9, [4190] = 0x69f2, [4191] = 0x69e7, -+ [4192] = 0x6a05, [4193] = 0x69b1, [4194] = 0x6a1e, [4195] = 0x69ed, -+ [4196] = 0x6a14, [4197] = 0x69eb, [4198] = 0x6a0a, [4199] = 0x6a12, -+ [4200] = 0x6ac1, [4201] = 0x6a23, [4202] = 0x6a13, [4203] = 0x6a44, -+ [4204] = 0x6a0c, [4205] = 0x6a72, [4206] = 0x6a36, [4207] = 0x6a78, -+ [4208] = 0x6a47, [4209] = 0x6a62, [4210] = 0x6a59, [4211] = 0x6a66, -+ [4212] = 0x6a48, [4213] = 0x6a38, [4214] = 0x6a22, [4215] = 0x6a90, -+ [4216] = 0x6a8d, [4217] = 0x6aa0, [4218] = 0x6a84, [4219] = 0x6aa2, -+ [4220] = 0x6aa3, [4224] = 0x6a97, [4225] = 0x8617, [4226] = 0x6abb, -+ [4227] = 0x6ac3, [4228] = 0x6ac2, [4229] = 0x6ab8, [4230] = 0x6ab3, -+ [4231] = 0x6aac, [4232] = 0x6ade, [4233] = 0x6ad1, [4234] = 0x6adf, -+ [4235] = 0x6aaa, [4236] = 0x6ada, [4237] = 0x6aea, [4238] = 0x6afb, -+ [4239] = 0x6b05, [4240] = 0x8616, [4241] = 0x6afa, [4242] = 0x6b12, -+ [4243] = 0x6b16, [4244] = 0x9b31, [4245] = 0x6b1f, [4246] = 0x6b38, -+ [4247] = 0x6b37, [4248] = 0x76dc, [4249] = 0x6b39, [4250] = 0x98ee, -+ [4251] = 0x6b47, [4252] = 0x6b43, [4253] = 0x6b49, [4254] = 0x6b50, -+ [4255] = 0x6b59, [4256] = 0x6b54, [4257] = 0x6b5b, [4258] = 0x6b5f, -+ [4259] = 0x6b61, [4260] = 0x6b78, [4261] = 0x6b79, [4262] = 0x6b7f, -+ [4263] = 0x6b80, [4264] = 0x6b84, [4265] = 0x6b83, [4266] = 0x6b8d, -+ [4267] = 0x6b98, [4268] = 0x6b95, [4269] = 0x6b9e, [4270] = 0x6ba4, -+ [4271] = 0x6baa, [4272] = 0x6bab, [4273] = 0x6baf, [4274] = 0x6bb2, -+ [4275] = 0x6bb1, [4276] = 0x6bb3, [4277] = 0x6bb7, [4278] = 0x6bbc, -+ [4279] = 0x6bc6, [4280] = 0x6bcb, [4281] = 0x6bd3, [4282] = 0x6bdf, -+ [4283] = 0x6bec, [4284] = 0x6beb, [4285] = 0x6bf3, [4286] = 0x6bef, -+ [4288] = 0x9ebe, [4289] = 0x6c08, [4290] = 0x6c13, [4291] = 0x6c14, -+ [4292] = 0x6c1b, [4293] = 0x6c24, [4294] = 0x6c23, [4295] = 0x6c5e, -+ [4296] = 0x6c55, [4297] = 0x6c62, [4298] = 0x6c6a, [4299] = 0x6c82, -+ [4300] = 0x6c8d, [4301] = 0x6c9a, [4302] = 0x6c81, [4303] = 0x6c9b, -+ [4304] = 0x6c7e, [4305] = 0x6c68, [4306] = 0x6c73, [4307] = 0x6c92, -+ [4308] = 0x6c90, [4309] = 0x6cc4, [4310] = 0x6cf1, [4311] = 0x6cd3, -+ [4312] = 0x6cbd, [4313] = 0x6cd7, [4314] = 0x6cc5, [4315] = 0x6cdd, -+ [4316] = 0x6cae, [4317] = 0x6cb1, [4318] = 0x6cbe, [4319] = 0x6cba, -+ [4320] = 0x6cdb, [4321] = 0x6cef, [4322] = 0x6cd9, [4323] = 0x6cea, -+ [4324] = 0x6d1f, [4325] = 0x884d, [4326] = 0x6d36, [4327] = 0x6d2b, -+ [4328] = 0x6d3d, [4329] = 0x6d38, [4330] = 0x6d19, [4331] = 0x6d35, -+ [4332] = 0x6d33, [4333] = 0x6d12, [4334] = 0x6d0c, [4335] = 0x6d63, -+ [4336] = 0x6d93, [4337] = 0x6d64, [4338] = 0x6d5a, [4339] = 0x6d79, -+ [4340] = 0x6d59, [4341] = 0x6d8e, [4342] = 0x6d95, [4343] = 0x6fe4, -+ [4344] = 0x6d85, [4345] = 0x6df9, [4346] = 0x6e15, [4347] = 0x6e0a, -+ [4348] = 0x6db5, [4349] = 0x6dc7, [4350] = 0x6de6, [4351] = 0x6db8, -+ [4352] = 0x6dc6, [4353] = 0x6dec, [4354] = 0x6dde, [4355] = 0x6dcc, -+ [4356] = 0x6de8, [4357] = 0x6dd2, [4358] = 0x6dc5, [4359] = 0x6dfa, -+ [4360] = 0x6dd9, [4361] = 0x6de4, [4362] = 0x6dd5, [4363] = 0x6dea, -+ [4364] = 0x6dee, [4365] = 0x6e2d, [4366] = 0x6e6e, [4367] = 0x6e2e, -+ [4368] = 0x6e19, [4369] = 0x6e72, [4370] = 0x6e5f, [4371] = 0x6e3e, -+ [4372] = 0x6e23, [4373] = 0x6e6b, [4374] = 0x6e2b, [4375] = 0x6e76, -+ [4376] = 0x6e4d, [4377] = 0x6e1f, [4378] = 0x6e43, [4379] = 0x6e3a, -+ [4380] = 0x6e4e, [4381] = 0x6e24, [4382] = 0x6eff, [4383] = 0x6e1d, -+ [4384] = 0x6e38, [4385] = 0x6e82, [4386] = 0x6eaa, [4387] = 0x6e98, -+ [4388] = 0x6ec9, [4389] = 0x6eb7, [4390] = 0x6ed3, [4391] = 0x6ebd, -+ [4392] = 0x6eaf, [4393] = 0x6ec4, [4394] = 0x6eb2, [4395] = 0x6ed4, -+ [4396] = 0x6ed5, [4397] = 0x6e8f, [4398] = 0x6ea5, [4399] = 0x6ec2, -+ [4400] = 0x6e9f, [4401] = 0x6f41, [4402] = 0x6f11, [4403] = 0x704c, -+ [4404] = 0x6eec, [4405] = 0x6ef8, [4406] = 0x6efe, [4407] = 0x6f3f, -+ [4408] = 0x6ef2, [4409] = 0x6f31, [4410] = 0x6eef, [4411] = 0x6f32, -+ [4412] = 0x6ecc -+}; -+ -+static const uint16_t cjk_block5[2021] = -+{ -+ /* start = 0xe040, end = 0xeaa4 */ -+ [ 0] = 0x6f3e, [ 1] = 0x6f13, [ 2] = 0x6ef7, [ 3] = 0x6f86, -+ [ 4] = 0x6f7a, [ 5] = 0x6f78, [ 6] = 0x6f81, [ 7] = 0x6f80, -+ [ 8] = 0x6f6f, [ 9] = 0x6f5b, [ 10] = 0x6ff3, [ 11] = 0x6f6d, -+ [ 12] = 0x6f82, [ 13] = 0x6f7c, [ 14] = 0x6f58, [ 15] = 0x6f8e, -+ [ 16] = 0x6f91, [ 17] = 0x6fc2, [ 18] = 0x6f66, [ 19] = 0x6fb3, -+ [ 20] = 0x6fa3, [ 21] = 0x6fa1, [ 22] = 0x6fa4, [ 23] = 0x6fb9, -+ [ 24] = 0x6fc6, [ 25] = 0x6faa, [ 26] = 0x6fdf, [ 27] = 0x6fd5, -+ [ 28] = 0x6fec, [ 29] = 0x6fd4, [ 30] = 0x6fd8, [ 31] = 0x6ff1, -+ [ 32] = 0x6fee, [ 33] = 0x6fdb, [ 34] = 0x7009, [ 35] = 0x700b, -+ [ 36] = 0x6ffa, [ 37] = 0x7011, [ 38] = 0x7001, [ 39] = 0x700f, -+ [ 40] = 0x6ffe, [ 41] = 0x701b, [ 42] = 0x701a, [ 43] = 0x6f74, -+ [ 44] = 0x701d, [ 45] = 0x7018, [ 46] = 0x701f, [ 47] = 0x7030, -+ [ 48] = 0x703e, [ 49] = 0x7032, [ 50] = 0x7051, [ 51] = 0x7063, -+ [ 52] = 0x7099, [ 53] = 0x7092, [ 54] = 0x70af, [ 55] = 0x70f1, -+ [ 56] = 0x70ac, [ 57] = 0x70b8, [ 58] = 0x70b3, [ 59] = 0x70ae, -+ [ 60] = 0x70df, [ 61] = 0x70cb, [ 62] = 0x70dd, [ 64] = 0x70d9, -+ [ 65] = 0x7109, [ 66] = 0x70fd, [ 67] = 0x711c, [ 68] = 0x7119, -+ [ 69] = 0x7165, [ 70] = 0x7155, [ 71] = 0x7188, [ 72] = 0x7166, -+ [ 73] = 0x7162, [ 74] = 0x714c, [ 75] = 0x7156, [ 76] = 0x716c, -+ [ 77] = 0x718f, [ 78] = 0x71fb, [ 79] = 0x7184, [ 80] = 0x7195, -+ [ 81] = 0x71a8, [ 82] = 0x71ac, [ 83] = 0x71d7, [ 84] = 0x71b9, -+ [ 85] = 0x71be, [ 86] = 0x71d2, [ 87] = 0x71c9, [ 88] = 0x71d4, -+ [ 89] = 0x71ce, [ 90] = 0x71e0, [ 91] = 0x71ec, [ 92] = 0x71e7, -+ [ 93] = 0x71f5, [ 94] = 0x71fc, [ 95] = 0x71f9, [ 96] = 0x71ff, -+ [ 97] = 0x720d, [ 98] = 0x7210, [ 99] = 0x721b, [ 100] = 0x7228, -+ [ 101] = 0x722d, [ 102] = 0x722c, [ 103] = 0x7230, [ 104] = 0x7232, -+ [ 105] = 0x723b, [ 106] = 0x723c, [ 107] = 0x723f, [ 108] = 0x7240, -+ [ 109] = 0x7246, [ 110] = 0x724b, [ 111] = 0x7258, [ 112] = 0x7274, -+ [ 113] = 0x727e, [ 114] = 0x7282, [ 115] = 0x7281, [ 116] = 0x7287, -+ [ 117] = 0x7292, [ 118] = 0x7296, [ 119] = 0x72a2, [ 120] = 0x72a7, -+ [ 121] = 0x72b9, [ 122] = 0x72b2, [ 123] = 0x72c3, [ 124] = 0x72c6, -+ [ 125] = 0x72c4, [ 126] = 0x72ce, [ 127] = 0x72d2, [ 128] = 0x72e2, -+ [ 129] = 0x72e0, [ 130] = 0x72e1, [ 131] = 0x72f9, [ 132] = 0x72f7, -+ [ 133] = 0x500f, [ 134] = 0x7317, [ 135] = 0x730a, [ 136] = 0x731c, -+ [ 137] = 0x7316, [ 138] = 0x731d, [ 139] = 0x7334, [ 140] = 0x732f, -+ [ 141] = 0x7329, [ 142] = 0x7325, [ 143] = 0x733e, [ 144] = 0x734e, -+ [ 145] = 0x734f, [ 146] = 0x9ed8, [ 147] = 0x7357, [ 148] = 0x736a, -+ [ 149] = 0x7368, [ 150] = 0x7370, [ 151] = 0x7378, [ 152] = 0x7375, -+ [ 153] = 0x737b, [ 154] = 0x737a, [ 155] = 0x73c8, [ 156] = 0x73b3, -+ [ 157] = 0x73ce, [ 158] = 0x73bb, [ 159] = 0x73c0, [ 160] = 0x73e5, -+ [ 161] = 0x73ee, [ 162] = 0x73de, [ 163] = 0x74a2, [ 164] = 0x7405, -+ [ 165] = 0x746f, [ 166] = 0x7425, [ 167] = 0x73f8, [ 168] = 0x7432, -+ [ 169] = 0x743a, [ 170] = 0x7455, [ 171] = 0x743f, [ 172] = 0x745f, -+ [ 173] = 0x7459, [ 174] = 0x7441, [ 175] = 0x745c, [ 176] = 0x7469, -+ [ 177] = 0x7470, [ 178] = 0x7463, [ 179] = 0x746a, [ 180] = 0x7476, -+ [ 181] = 0x747e, [ 182] = 0x748b, [ 183] = 0x749e, [ 184] = 0x74a7, -+ [ 185] = 0x74ca, [ 186] = 0x74cf, [ 187] = 0x74d4, [ 188] = 0x73f1, -+ [ 192] = 0x74e0, [ 193] = 0x74e3, [ 194] = 0x74e7, [ 195] = 0x74e9, -+ [ 196] = 0x74ee, [ 197] = 0x74f2, [ 198] = 0x74f0, [ 199] = 0x74f1, -+ [ 200] = 0x74f8, [ 201] = 0x74f7, [ 202] = 0x7504, [ 203] = 0x7503, -+ [ 204] = 0x7505, [ 205] = 0x750c, [ 206] = 0x750e, [ 207] = 0x750d, -+ [ 208] = 0x7515, [ 209] = 0x7513, [ 210] = 0x751e, [ 211] = 0x7526, -+ [ 212] = 0x752c, [ 213] = 0x753c, [ 214] = 0x7544, [ 215] = 0x754d, -+ [ 216] = 0x754a, [ 217] = 0x7549, [ 218] = 0x755b, [ 219] = 0x7546, -+ [ 220] = 0x755a, [ 221] = 0x7569, [ 222] = 0x7564, [ 223] = 0x7567, -+ [ 224] = 0x756b, [ 225] = 0x756d, [ 226] = 0x7578, [ 227] = 0x7576, -+ [ 228] = 0x7586, [ 229] = 0x7587, [ 230] = 0x7574, [ 231] = 0x758a, -+ [ 232] = 0x7589, [ 233] = 0x7582, [ 234] = 0x7594, [ 235] = 0x759a, -+ [ 236] = 0x759d, [ 237] = 0x75a5, [ 238] = 0x75a3, [ 239] = 0x75c2, -+ [ 240] = 0x75b3, [ 241] = 0x75c3, [ 242] = 0x75b5, [ 243] = 0x75bd, -+ [ 244] = 0x75b8, [ 245] = 0x75bc, [ 246] = 0x75b1, [ 247] = 0x75cd, -+ [ 248] = 0x75ca, [ 249] = 0x75d2, [ 250] = 0x75d9, [ 251] = 0x75e3, -+ [ 252] = 0x75de, [ 253] = 0x75fe, [ 254] = 0x75ff, [ 256] = 0x75fc, -+ [ 257] = 0x7601, [ 258] = 0x75f0, [ 259] = 0x75fa, [ 260] = 0x75f2, -+ [ 261] = 0x75f3, [ 262] = 0x760b, [ 263] = 0x760d, [ 264] = 0x7609, -+ [ 265] = 0x761f, [ 266] = 0x7627, [ 267] = 0x7620, [ 268] = 0x7621, -+ [ 269] = 0x7622, [ 270] = 0x7624, [ 271] = 0x7634, [ 272] = 0x7630, -+ [ 273] = 0x763b, [ 274] = 0x7647, [ 275] = 0x7648, [ 276] = 0x7646, -+ [ 277] = 0x765c, [ 278] = 0x7658, [ 279] = 0x7661, [ 280] = 0x7662, -+ [ 281] = 0x7668, [ 282] = 0x7669, [ 283] = 0x766a, [ 284] = 0x7667, -+ [ 285] = 0x766c, [ 286] = 0x7670, [ 287] = 0x7672, [ 288] = 0x7676, -+ [ 289] = 0x7678, [ 290] = 0x767c, [ 291] = 0x7680, [ 292] = 0x7683, -+ [ 293] = 0x7688, [ 294] = 0x768b, [ 295] = 0x768e, [ 296] = 0x7696, -+ [ 297] = 0x7693, [ 298] = 0x7699, [ 299] = 0x769a, [ 300] = 0x76b0, -+ [ 301] = 0x76b4, [ 302] = 0x76b8, [ 303] = 0x76b9, [ 304] = 0x76ba, -+ [ 305] = 0x76c2, [ 306] = 0x76cd, [ 307] = 0x76d6, [ 308] = 0x76d2, -+ [ 309] = 0x76de, [ 310] = 0x76e1, [ 311] = 0x76e5, [ 312] = 0x76e7, -+ [ 313] = 0x76ea, [ 314] = 0x862f, [ 315] = 0x76fb, [ 316] = 0x7708, -+ [ 317] = 0x7707, [ 318] = 0x7704, [ 319] = 0x7729, [ 320] = 0x7724, -+ [ 321] = 0x771e, [ 322] = 0x7725, [ 323] = 0x7726, [ 324] = 0x771b, -+ [ 325] = 0x7737, [ 326] = 0x7738, [ 327] = 0x7747, [ 328] = 0x775a, -+ [ 329] = 0x7768, [ 330] = 0x776b, [ 331] = 0x775b, [ 332] = 0x7765, -+ [ 333] = 0x777f, [ 334] = 0x777e, [ 335] = 0x7779, [ 336] = 0x778e, -+ [ 337] = 0x778b, [ 338] = 0x7791, [ 339] = 0x77a0, [ 340] = 0x779e, -+ [ 341] = 0x77b0, [ 342] = 0x77b6, [ 343] = 0x77b9, [ 344] = 0x77bf, -+ [ 345] = 0x77bc, [ 346] = 0x77bd, [ 347] = 0x77bb, [ 348] = 0x77c7, -+ [ 349] = 0x77cd, [ 350] = 0x77d7, [ 351] = 0x77da, [ 352] = 0x77dc, -+ [ 353] = 0x77e3, [ 354] = 0x77ee, [ 355] = 0x77fc, [ 356] = 0x780c, -+ [ 357] = 0x7812, [ 358] = 0x7926, [ 359] = 0x7820, [ 360] = 0x792a, -+ [ 361] = 0x7845, [ 362] = 0x788e, [ 363] = 0x7874, [ 364] = 0x7886, -+ [ 365] = 0x787c, [ 366] = 0x789a, [ 367] = 0x788c, [ 368] = 0x78a3, -+ [ 369] = 0x78b5, [ 370] = 0x78aa, [ 371] = 0x78af, [ 372] = 0x78d1, -+ [ 373] = 0x78c6, [ 374] = 0x78cb, [ 375] = 0x78d4, [ 376] = 0x78be, -+ [ 377] = 0x78bc, [ 378] = 0x78c5, [ 379] = 0x78ca, [ 380] = 0x78ec, -+ [ 384] = 0x78e7, [ 385] = 0x78da, [ 386] = 0x78fd, [ 387] = 0x78f4, -+ [ 388] = 0x7907, [ 389] = 0x7912, [ 390] = 0x7911, [ 391] = 0x7919, -+ [ 392] = 0x792c, [ 393] = 0x792b, [ 394] = 0x7940, [ 395] = 0x7960, -+ [ 396] = 0x7957, [ 397] = 0x795f, [ 398] = 0x795a, [ 399] = 0x7955, -+ [ 400] = 0x7953, [ 401] = 0x797a, [ 402] = 0x797f, [ 403] = 0x798a, -+ [ 404] = 0x799d, [ 405] = 0x79a7, [ 406] = 0x9f4b, [ 407] = 0x79aa, -+ [ 408] = 0x79ae, [ 409] = 0x79b3, [ 410] = 0x79b9, [ 411] = 0x79ba, -+ [ 412] = 0x79c9, [ 413] = 0x79d5, [ 414] = 0x79e7, [ 415] = 0x79ec, -+ [ 416] = 0x79e1, [ 417] = 0x79e3, [ 418] = 0x7a08, [ 419] = 0x7a0d, -+ [ 420] = 0x7a18, [ 421] = 0x7a19, [ 422] = 0x7a20, [ 423] = 0x7a1f, -+ [ 424] = 0x7980, [ 425] = 0x7a31, [ 426] = 0x7a3b, [ 427] = 0x7a3e, -+ [ 428] = 0x7a37, [ 429] = 0x7a43, [ 430] = 0x7a57, [ 431] = 0x7a49, -+ [ 432] = 0x7a61, [ 433] = 0x7a62, [ 434] = 0x7a69, [ 435] = 0x9f9d, -+ [ 436] = 0x7a70, [ 437] = 0x7a79, [ 438] = 0x7a7d, [ 439] = 0x7a88, -+ [ 440] = 0x7a97, [ 441] = 0x7a95, [ 442] = 0x7a98, [ 443] = 0x7a96, -+ [ 444] = 0x7aa9, [ 445] = 0x7ac8, [ 446] = 0x7ab0, [ 448] = 0x7ab6, -+ [ 449] = 0x7ac5, [ 450] = 0x7ac4, [ 451] = 0x7abf, [ 452] = 0x9083, -+ [ 453] = 0x7ac7, [ 454] = 0x7aca, [ 455] = 0x7acd, [ 456] = 0x7acf, -+ [ 457] = 0x7ad5, [ 458] = 0x7ad3, [ 459] = 0x7ad9, [ 460] = 0x7ada, -+ [ 461] = 0x7add, [ 462] = 0x7ae1, [ 463] = 0x7ae2, [ 464] = 0x7ae6, -+ [ 465] = 0x7aed, [ 466] = 0x7af0, [ 467] = 0x7b02, [ 468] = 0x7b0f, -+ [ 469] = 0x7b0a, [ 470] = 0x7b06, [ 471] = 0x7b33, [ 472] = 0x7b18, -+ [ 473] = 0x7b19, [ 474] = 0x7b1e, [ 475] = 0x7b35, [ 476] = 0x7b28, -+ [ 477] = 0x7b36, [ 478] = 0x7b50, [ 479] = 0x7b7a, [ 480] = 0x7b04, -+ [ 481] = 0x7b4d, [ 482] = 0x7b0b, [ 483] = 0x7b4c, [ 484] = 0x7b45, -+ [ 485] = 0x7b75, [ 486] = 0x7b65, [ 487] = 0x7b74, [ 488] = 0x7b67, -+ [ 489] = 0x7b70, [ 490] = 0x7b71, [ 491] = 0x7b6c, [ 492] = 0x7b6e, -+ [ 493] = 0x7b9d, [ 494] = 0x7b98, [ 495] = 0x7b9f, [ 496] = 0x7b8d, -+ [ 497] = 0x7b9c, [ 498] = 0x7b9a, [ 499] = 0x7b8b, [ 500] = 0x7b92, -+ [ 501] = 0x7b8f, [ 502] = 0x7b5d, [ 503] = 0x7b99, [ 504] = 0x7bcb, -+ [ 505] = 0x7bc1, [ 506] = 0x7bcc, [ 507] = 0x7bcf, [ 508] = 0x7bb4, -+ [ 509] = 0x7bc6, [ 510] = 0x7bdd, [ 511] = 0x7be9, [ 512] = 0x7c11, -+ [ 513] = 0x7c14, [ 514] = 0x7be6, [ 515] = 0x7be5, [ 516] = 0x7c60, -+ [ 517] = 0x7c00, [ 518] = 0x7c07, [ 519] = 0x7c13, [ 520] = 0x7bf3, -+ [ 521] = 0x7bf7, [ 522] = 0x7c17, [ 523] = 0x7c0d, [ 524] = 0x7bf6, -+ [ 525] = 0x7c23, [ 526] = 0x7c27, [ 527] = 0x7c2a, [ 528] = 0x7c1f, -+ [ 529] = 0x7c37, [ 530] = 0x7c2b, [ 531] = 0x7c3d, [ 532] = 0x7c4c, -+ [ 533] = 0x7c43, [ 534] = 0x7c54, [ 535] = 0x7c4f, [ 536] = 0x7c40, -+ [ 537] = 0x7c50, [ 538] = 0x7c58, [ 539] = 0x7c5f, [ 540] = 0x7c64, -+ [ 541] = 0x7c56, [ 542] = 0x7c65, [ 543] = 0x7c6c, [ 544] = 0x7c75, -+ [ 545] = 0x7c83, [ 546] = 0x7c90, [ 547] = 0x7ca4, [ 548] = 0x7cad, -+ [ 549] = 0x7ca2, [ 550] = 0x7cab, [ 551] = 0x7ca1, [ 552] = 0x7ca8, -+ [ 553] = 0x7cb3, [ 554] = 0x7cb2, [ 555] = 0x7cb1, [ 556] = 0x7cae, -+ [ 557] = 0x7cb9, [ 558] = 0x7cbd, [ 559] = 0x7cc0, [ 560] = 0x7cc5, -+ [ 561] = 0x7cc2, [ 562] = 0x7cd8, [ 563] = 0x7cd2, [ 564] = 0x7cdc, -+ [ 565] = 0x7ce2, [ 566] = 0x9b3b, [ 567] = 0x7cef, [ 568] = 0x7cf2, -+ [ 569] = 0x7cf4, [ 570] = 0x7cf6, [ 571] = 0x7cfa, [ 572] = 0x7d06, -+ [ 576] = 0x7d02, [ 577] = 0x7d1c, [ 578] = 0x7d15, [ 579] = 0x7d0a, -+ [ 580] = 0x7d45, [ 581] = 0x7d4b, [ 582] = 0x7d2e, [ 583] = 0x7d32, -+ [ 584] = 0x7d3f, [ 585] = 0x7d35, [ 586] = 0x7d46, [ 587] = 0x7d73, -+ [ 588] = 0x7d56, [ 589] = 0x7d4e, [ 590] = 0x7d72, [ 591] = 0x7d68, -+ [ 592] = 0x7d6e, [ 593] = 0x7d4f, [ 594] = 0x7d63, [ 595] = 0x7d93, -+ [ 596] = 0x7d89, [ 597] = 0x7d5b, [ 598] = 0x7d8f, [ 599] = 0x7d7d, -+ [ 600] = 0x7d9b, [ 601] = 0x7dba, [ 602] = 0x7dae, [ 603] = 0x7da3, -+ [ 604] = 0x7db5, [ 605] = 0x7dc7, [ 606] = 0x7dbd, [ 607] = 0x7dab, -+ [ 608] = 0x7e3d, [ 609] = 0x7da2, [ 610] = 0x7daf, [ 611] = 0x7ddc, -+ [ 612] = 0x7db8, [ 613] = 0x7d9f, [ 614] = 0x7db0, [ 615] = 0x7dd8, -+ [ 616] = 0x7ddd, [ 617] = 0x7de4, [ 618] = 0x7dde, [ 619] = 0x7dfb, -+ [ 620] = 0x7df2, [ 621] = 0x7de1, [ 622] = 0x7e05, [ 623] = 0x7e0a, -+ [ 624] = 0x7e23, [ 625] = 0x7e21, [ 626] = 0x7e12, [ 627] = 0x7e31, -+ [ 628] = 0x7e1f, [ 629] = 0x7e09, [ 630] = 0x7e0b, [ 631] = 0x7e22, -+ [ 632] = 0x7e46, [ 633] = 0x7e66, [ 634] = 0x7e3b, [ 635] = 0x7e35, -+ [ 636] = 0x7e39, [ 637] = 0x7e43, [ 638] = 0x7e37, [ 640] = 0x7e32, -+ [ 641] = 0x7e3a, [ 642] = 0x7e67, [ 643] = 0x7e5d, [ 644] = 0x7e56, -+ [ 645] = 0x7e5e, [ 646] = 0x7e59, [ 647] = 0x7e5a, [ 648] = 0x7e79, -+ [ 649] = 0x7e6a, [ 650] = 0x7e69, [ 651] = 0x7e7c, [ 652] = 0x7e7b, -+ [ 653] = 0x7e83, [ 654] = 0x7dd5, [ 655] = 0x7e7d, [ 656] = 0x8fae, -+ [ 657] = 0x7e7f, [ 658] = 0x7e88, [ 659] = 0x7e89, [ 660] = 0x7e8c, -+ [ 661] = 0x7e92, [ 662] = 0x7e90, [ 663] = 0x7e93, [ 664] = 0x7e94, -+ [ 665] = 0x7e96, [ 666] = 0x7e8e, [ 667] = 0x7e9b, [ 668] = 0x7e9c, -+ [ 669] = 0x7f38, [ 670] = 0x7f3a, [ 671] = 0x7f45, [ 672] = 0x7f4c, -+ [ 673] = 0x7f4d, [ 674] = 0x7f4e, [ 675] = 0x7f50, [ 676] = 0x7f51, -+ [ 677] = 0x7f55, [ 678] = 0x7f54, [ 679] = 0x7f58, [ 680] = 0x7f5f, -+ [ 681] = 0x7f60, [ 682] = 0x7f68, [ 683] = 0x7f69, [ 684] = 0x7f67, -+ [ 685] = 0x7f78, [ 686] = 0x7f82, [ 687] = 0x7f86, [ 688] = 0x7f83, -+ [ 689] = 0x7f88, [ 690] = 0x7f87, [ 691] = 0x7f8c, [ 692] = 0x7f94, -+ [ 693] = 0x7f9e, [ 694] = 0x7f9d, [ 695] = 0x7f9a, [ 696] = 0x7fa3, -+ [ 697] = 0x7faf, [ 698] = 0x7fb2, [ 699] = 0x7fb9, [ 700] = 0x7fae, -+ [ 701] = 0x7fb6, [ 702] = 0x7fb8, [ 703] = 0x8b71, [ 704] = 0x7fc5, -+ [ 705] = 0x7fc6, [ 706] = 0x7fca, [ 707] = 0x7fd5, [ 708] = 0x7fd4, -+ [ 709] = 0x7fe1, [ 710] = 0x7fe6, [ 711] = 0x7fe9, [ 712] = 0x7ff3, -+ [ 713] = 0x7ff9, [ 714] = 0x98dc, [ 715] = 0x8006, [ 716] = 0x8004, -+ [ 717] = 0x800b, [ 718] = 0x8012, [ 719] = 0x8018, [ 720] = 0x8019, -+ [ 721] = 0x801c, [ 722] = 0x8021, [ 723] = 0x8028, [ 724] = 0x803f, -+ [ 725] = 0x803b, [ 726] = 0x804a, [ 727] = 0x8046, [ 728] = 0x8052, -+ [ 729] = 0x8058, [ 730] = 0x805a, [ 731] = 0x805f, [ 732] = 0x8062, -+ [ 733] = 0x8068, [ 734] = 0x8073, [ 735] = 0x8072, [ 736] = 0x8070, -+ [ 737] = 0x8076, [ 738] = 0x8079, [ 739] = 0x807d, [ 740] = 0x807f, -+ [ 741] = 0x8084, [ 742] = 0x8086, [ 743] = 0x8085, [ 744] = 0x809b, -+ [ 745] = 0x8093, [ 746] = 0x809a, [ 747] = 0x80ad, [ 748] = 0x5190, -+ [ 749] = 0x80ac, [ 750] = 0x80db, [ 751] = 0x80e5, [ 752] = 0x80d9, -+ [ 753] = 0x80dd, [ 754] = 0x80c4, [ 755] = 0x80da, [ 756] = 0x80d6, -+ [ 757] = 0x8109, [ 758] = 0x80ef, [ 759] = 0x80f1, [ 760] = 0x811b, -+ [ 761] = 0x8129, [ 762] = 0x8123, [ 763] = 0x812f, [ 764] = 0x814b, -+ [ 768] = 0x968b, [ 769] = 0x8146, [ 770] = 0x813e, [ 771] = 0x8153, -+ [ 772] = 0x8151, [ 773] = 0x80fc, [ 774] = 0x8171, [ 775] = 0x816e, -+ [ 776] = 0x8165, [ 777] = 0x8166, [ 778] = 0x8174, [ 779] = 0x8183, -+ [ 780] = 0x8188, [ 781] = 0x818a, [ 782] = 0x8180, [ 783] = 0x8182, -+ [ 784] = 0x81a0, [ 785] = 0x8195, [ 786] = 0x81a4, [ 787] = 0x81a3, -+ [ 788] = 0x815f, [ 789] = 0x8193, [ 790] = 0x81a9, [ 791] = 0x81b0, -+ [ 792] = 0x81b5, [ 793] = 0x81be, [ 794] = 0x81b8, [ 795] = 0x81bd, -+ [ 796] = 0x81c0, [ 797] = 0x81c2, [ 798] = 0x81ba, [ 799] = 0x81c9, -+ [ 800] = 0x81cd, [ 801] = 0x81d1, [ 802] = 0x81d9, [ 803] = 0x81d8, -+ [ 804] = 0x81c8, [ 805] = 0x81da, [ 806] = 0x81df, [ 807] = 0x81e0, -+ [ 808] = 0x81e7, [ 809] = 0x81fa, [ 810] = 0x81fb, [ 811] = 0x81fe, -+ [ 812] = 0x8201, [ 813] = 0x8202, [ 814] = 0x8205, [ 815] = 0x8207, -+ [ 816] = 0x820a, [ 817] = 0x820d, [ 818] = 0x8210, [ 819] = 0x8216, -+ [ 820] = 0x8229, [ 821] = 0x822b, [ 822] = 0x8238, [ 823] = 0x8233, -+ [ 824] = 0x8240, [ 825] = 0x8259, [ 826] = 0x8258, [ 827] = 0x825d, -+ [ 828] = 0x825a, [ 829] = 0x825f, [ 830] = 0x8264, [ 832] = 0x8262, -+ [ 833] = 0x8268, [ 834] = 0x826a, [ 835] = 0x826b, [ 836] = 0x822e, -+ [ 837] = 0x8271, [ 838] = 0x8277, [ 839] = 0x8278, [ 840] = 0x827e, -+ [ 841] = 0x828d, [ 842] = 0x8292, [ 843] = 0x82ab, [ 844] = 0x829f, -+ [ 845] = 0x82bb, [ 846] = 0x82ac, [ 847] = 0x82e1, [ 848] = 0x82e3, -+ [ 849] = 0x82df, [ 850] = 0x82d2, [ 851] = 0x82f4, [ 852] = 0x82f3, -+ [ 853] = 0x82fa, [ 854] = 0x8393, [ 855] = 0x8303, [ 856] = 0x82fb, -+ [ 857] = 0x82f9, [ 858] = 0x82de, [ 859] = 0x8306, [ 860] = 0x82dc, -+ [ 861] = 0x8309, [ 862] = 0x82d9, [ 863] = 0x8335, [ 864] = 0x8334, -+ [ 865] = 0x8316, [ 866] = 0x8332, [ 867] = 0x8331, [ 868] = 0x8340, -+ [ 869] = 0x8339, [ 870] = 0x8350, [ 871] = 0x8345, [ 872] = 0x832f, -+ [ 873] = 0x832b, [ 874] = 0x8317, [ 875] = 0x8318, [ 876] = 0x8385, -+ [ 877] = 0x839a, [ 878] = 0x83aa, [ 879] = 0x839f, [ 880] = 0x83a2, -+ [ 881] = 0x8396, [ 882] = 0x8323, [ 883] = 0x838e, [ 884] = 0x8387, -+ [ 885] = 0x838a, [ 886] = 0x837c, [ 887] = 0x83b5, [ 888] = 0x8373, -+ [ 889] = 0x8375, [ 890] = 0x83a0, [ 891] = 0x8389, [ 892] = 0x83a8, -+ [ 893] = 0x83f4, [ 894] = 0x8413, [ 895] = 0x83eb, [ 896] = 0x83ce, -+ [ 897] = 0x83fd, [ 898] = 0x8403, [ 899] = 0x83d8, [ 900] = 0x840b, -+ [ 901] = 0x83c1, [ 902] = 0x83f7, [ 903] = 0x8407, [ 904] = 0x83e0, -+ [ 905] = 0x83f2, [ 906] = 0x840d, [ 907] = 0x8422, [ 908] = 0x8420, -+ [ 909] = 0x83bd, [ 910] = 0x8438, [ 911] = 0x8506, [ 912] = 0x83fb, -+ [ 913] = 0x846d, [ 914] = 0x842a, [ 915] = 0x843c, [ 916] = 0x855a, -+ [ 917] = 0x8484, [ 918] = 0x8477, [ 919] = 0x846b, [ 920] = 0x84ad, -+ [ 921] = 0x846e, [ 922] = 0x8482, [ 923] = 0x8469, [ 924] = 0x8446, -+ [ 925] = 0x842c, [ 926] = 0x846f, [ 927] = 0x8479, [ 928] = 0x8435, -+ [ 929] = 0x84ca, [ 930] = 0x8462, [ 931] = 0x84b9, [ 932] = 0x84bf, -+ [ 933] = 0x849f, [ 934] = 0x84d9, [ 935] = 0x84cd, [ 936] = 0x84bb, -+ [ 937] = 0x84da, [ 938] = 0x84d0, [ 939] = 0x84c1, [ 940] = 0x84c6, -+ [ 941] = 0x84d6, [ 942] = 0x84a1, [ 943] = 0x8521, [ 944] = 0x84ff, -+ [ 945] = 0x84f4, [ 946] = 0x8517, [ 947] = 0x8518, [ 948] = 0x852c, -+ [ 949] = 0x851f, [ 950] = 0x8515, [ 951] = 0x8514, [ 952] = 0x84fc, -+ [ 953] = 0x8540, [ 954] = 0x8563, [ 955] = 0x8558, [ 956] = 0x8548, -+ [ 960] = 0x8541, [ 961] = 0x8602, [ 962] = 0x854b, [ 963] = 0x8555, -+ [ 964] = 0x8580, [ 965] = 0x85a4, [ 966] = 0x8588, [ 967] = 0x8591, -+ [ 968] = 0x858a, [ 969] = 0x85a8, [ 970] = 0x856d, [ 971] = 0x8594, -+ [ 972] = 0x859b, [ 973] = 0x85ea, [ 974] = 0x8587, [ 975] = 0x859c, -+ [ 976] = 0x8577, [ 977] = 0x857e, [ 978] = 0x8590, [ 979] = 0x85c9, -+ [ 980] = 0x85ba, [ 981] = 0x85cf, [ 982] = 0x85b9, [ 983] = 0x85d0, -+ [ 984] = 0x85d5, [ 985] = 0x85dd, [ 986] = 0x85e5, [ 987] = 0x85dc, -+ [ 988] = 0x85f9, [ 989] = 0x860a, [ 990] = 0x8613, [ 991] = 0x860b, -+ [ 992] = 0x85fe, [ 993] = 0x85fa, [ 994] = 0x8606, [ 995] = 0x8622, -+ [ 996] = 0x861a, [ 997] = 0x8630, [ 998] = 0x863f, [ 999] = 0x864d, -+ [1000] = 0x4e55, [1001] = 0x8654, [1002] = 0x865f, [1003] = 0x8667, -+ [1004] = 0x8671, [1005] = 0x8693, [1006] = 0x86a3, [1007] = 0x86a9, -+ [1008] = 0x86aa, [1009] = 0x868b, [1010] = 0x868c, [1011] = 0x86b6, -+ [1012] = 0x86af, [1013] = 0x86c4, [1014] = 0x86c6, [1015] = 0x86b0, -+ [1016] = 0x86c9, [1017] = 0x8823, [1018] = 0x86ab, [1019] = 0x86d4, -+ [1020] = 0x86de, [1021] = 0x86e9, [1022] = 0x86ec, [1024] = 0x86df, -+ [1025] = 0x86db, [1026] = 0x86ef, [1027] = 0x8712, [1028] = 0x8706, -+ [1029] = 0x8708, [1030] = 0x8700, [1031] = 0x8703, [1032] = 0x86fb, -+ [1033] = 0x8711, [1034] = 0x8709, [1035] = 0x870d, [1036] = 0x86f9, -+ [1037] = 0x870a, [1038] = 0x8734, [1039] = 0x873f, [1040] = 0x8737, -+ [1041] = 0x873b, [1042] = 0x8725, [1043] = 0x8729, [1044] = 0x871a, -+ [1045] = 0x8760, [1046] = 0x875f, [1047] = 0x8778, [1048] = 0x874c, -+ [1049] = 0x874e, [1050] = 0x8774, [1051] = 0x8757, [1052] = 0x8768, -+ [1053] = 0x876e, [1054] = 0x8759, [1055] = 0x8753, [1056] = 0x8763, -+ [1057] = 0x876a, [1058] = 0x8805, [1059] = 0x87a2, [1060] = 0x879f, -+ [1061] = 0x8782, [1062] = 0x87af, [1063] = 0x87cb, [1064] = 0x87bd, -+ [1065] = 0x87c0, [1066] = 0x87d0, [1067] = 0x96d6, [1068] = 0x87ab, -+ [1069] = 0x87c4, [1070] = 0x87b3, [1071] = 0x87c7, [1072] = 0x87c6, -+ [1073] = 0x87bb, [1074] = 0x87ef, [1075] = 0x87f2, [1076] = 0x87e0, -+ [1077] = 0x880f, [1078] = 0x880d, [1079] = 0x87fe, [1080] = 0x87f6, -+ [1081] = 0x87f7, [1082] = 0x880e, [1083] = 0x87d2, [1084] = 0x8811, -+ [1085] = 0x8816, [1086] = 0x8815, [1087] = 0x8822, [1088] = 0x8821, -+ [1089] = 0x8831, [1090] = 0x8836, [1091] = 0x8839, [1092] = 0x8827, -+ [1093] = 0x883b, [1094] = 0x8844, [1095] = 0x8842, [1096] = 0x8852, -+ [1097] = 0x8859, [1098] = 0x885e, [1099] = 0x8862, [1100] = 0x886b, -+ [1101] = 0x8881, [1102] = 0x887e, [1103] = 0x889e, [1104] = 0x8875, -+ [1105] = 0x887d, [1106] = 0x88b5, [1107] = 0x8872, [1108] = 0x8882, -+ [1109] = 0x8897, [1110] = 0x8892, [1111] = 0x88ae, [1112] = 0x8899, -+ [1113] = 0x88a2, [1114] = 0x888d, [1115] = 0x88a4, [1116] = 0x88b0, -+ [1117] = 0x88bf, [1118] = 0x88b1, [1119] = 0x88c3, [1120] = 0x88c4, -+ [1121] = 0x88d4, [1122] = 0x88d8, [1123] = 0x88d9, [1124] = 0x88dd, -+ [1125] = 0x88f9, [1126] = 0x8902, [1127] = 0x88fc, [1128] = 0x88f4, -+ [1129] = 0x88e8, [1130] = 0x88f2, [1131] = 0x8904, [1132] = 0x890c, -+ [1133] = 0x890a, [1134] = 0x8913, [1135] = 0x8943, [1136] = 0x891e, -+ [1137] = 0x8925, [1138] = 0x892a, [1139] = 0x892b, [1140] = 0x8941, -+ [1141] = 0x8944, [1142] = 0x893b, [1143] = 0x8936, [1144] = 0x8938, -+ [1145] = 0x894c, [1146] = 0x891d, [1147] = 0x8960, [1148] = 0x895e, -+ [1152] = 0x8966, [1153] = 0x8964, [1154] = 0x896d, [1155] = 0x896a, -+ [1156] = 0x896f, [1157] = 0x8974, [1158] = 0x8977, [1159] = 0x897e, -+ [1160] = 0x8983, [1161] = 0x8988, [1162] = 0x898a, [1163] = 0x8993, -+ [1164] = 0x8998, [1165] = 0x89a1, [1166] = 0x89a9, [1167] = 0x89a6, -+ [1168] = 0x89ac, [1169] = 0x89af, [1170] = 0x89b2, [1171] = 0x89ba, -+ [1172] = 0x89bd, [1173] = 0x89bf, [1174] = 0x89c0, [1175] = 0x89da, -+ [1176] = 0x89dc, [1177] = 0x89dd, [1178] = 0x89e7, [1179] = 0x89f4, -+ [1180] = 0x89f8, [1181] = 0x8a03, [1182] = 0x8a16, [1183] = 0x8a10, -+ [1184] = 0x8a0c, [1185] = 0x8a1b, [1186] = 0x8a1d, [1187] = 0x8a25, -+ [1188] = 0x8a36, [1189] = 0x8a41, [1190] = 0x8a5b, [1191] = 0x8a52, -+ [1192] = 0x8a46, [1193] = 0x8a48, [1194] = 0x8a7c, [1195] = 0x8a6d, -+ [1196] = 0x8a6c, [1197] = 0x8a62, [1198] = 0x8a85, [1199] = 0x8a82, -+ [1200] = 0x8a84, [1201] = 0x8aa8, [1202] = 0x8aa1, [1203] = 0x8a91, -+ [1204] = 0x8aa5, [1205] = 0x8aa6, [1206] = 0x8a9a, [1207] = 0x8aa3, -+ [1208] = 0x8ac4, [1209] = 0x8acd, [1210] = 0x8ac2, [1211] = 0x8ada, -+ [1212] = 0x8aeb, [1213] = 0x8af3, [1214] = 0x8ae7, [1216] = 0x8ae4, -+ [1217] = 0x8af1, [1218] = 0x8b14, [1219] = 0x8ae0, [1220] = 0x8ae2, -+ [1221] = 0x8af7, [1222] = 0x8ade, [1223] = 0x8adb, [1224] = 0x8b0c, -+ [1225] = 0x8b07, [1226] = 0x8b1a, [1227] = 0x8ae1, [1228] = 0x8b16, -+ [1229] = 0x8b10, [1230] = 0x8b17, [1231] = 0x8b20, [1232] = 0x8b33, -+ [1233] = 0x97ab, [1234] = 0x8b26, [1235] = 0x8b2b, [1236] = 0x8b3e, -+ [1237] = 0x8b28, [1238] = 0x8b41, [1239] = 0x8b4c, [1240] = 0x8b4f, -+ [1241] = 0x8b4e, [1242] = 0x8b49, [1243] = 0x8b56, [1244] = 0x8b5b, -+ [1245] = 0x8b5a, [1246] = 0x8b6b, [1247] = 0x8b5f, [1248] = 0x8b6c, -+ [1249] = 0x8b6f, [1250] = 0x8b74, [1251] = 0x8b7d, [1252] = 0x8b80, -+ [1253] = 0x8b8c, [1254] = 0x8b8e, [1255] = 0x8b92, [1256] = 0x8b93, -+ [1257] = 0x8b96, [1258] = 0x8b99, [1259] = 0x8b9a, [1260] = 0x8c3a, -+ [1261] = 0x8c41, [1262] = 0x8c3f, [1263] = 0x8c48, [1264] = 0x8c4c, -+ [1265] = 0x8c4e, [1266] = 0x8c50, [1267] = 0x8c55, [1268] = 0x8c62, -+ [1269] = 0x8c6c, [1270] = 0x8c78, [1271] = 0x8c7a, [1272] = 0x8c82, -+ [1273] = 0x8c89, [1274] = 0x8c85, [1275] = 0x8c8a, [1276] = 0x8c8d, -+ [1277] = 0x8c8e, [1278] = 0x8c94, [1279] = 0x8c7c, [1280] = 0x8c98, -+ [1281] = 0x621d, [1282] = 0x8cad, [1283] = 0x8caa, [1284] = 0x8cbd, -+ [1285] = 0x8cb2, [1286] = 0x8cb3, [1287] = 0x8cae, [1288] = 0x8cb6, -+ [1289] = 0x8cc8, [1290] = 0x8cc1, [1291] = 0x8ce4, [1292] = 0x8ce3, -+ [1293] = 0x8cda, [1294] = 0x8cfd, [1295] = 0x8cfa, [1296] = 0x8cfb, -+ [1297] = 0x8d04, [1298] = 0x8d05, [1299] = 0x8d0a, [1300] = 0x8d07, -+ [1301] = 0x8d0f, [1302] = 0x8d0d, [1303] = 0x8d10, [1304] = 0x9f4e, -+ [1305] = 0x8d13, [1306] = 0x8ccd, [1307] = 0x8d14, [1308] = 0x8d16, -+ [1309] = 0x8d67, [1310] = 0x8d6d, [1311] = 0x8d71, [1312] = 0x8d73, -+ [1313] = 0x8d81, [1314] = 0x8d99, [1315] = 0x8dc2, [1316] = 0x8dbe, -+ [1317] = 0x8dba, [1318] = 0x8dcf, [1319] = 0x8dda, [1320] = 0x8dd6, -+ [1321] = 0x8dcc, [1322] = 0x8ddb, [1323] = 0x8dcb, [1324] = 0x8dea, -+ [1325] = 0x8deb, [1326] = 0x8ddf, [1327] = 0x8de3, [1328] = 0x8dfc, -+ [1329] = 0x8e08, [1330] = 0x8e09, [1331] = 0x8dff, [1332] = 0x8e1d, -+ [1333] = 0x8e1e, [1334] = 0x8e10, [1335] = 0x8e1f, [1336] = 0x8e42, -+ [1337] = 0x8e35, [1338] = 0x8e30, [1339] = 0x8e34, [1340] = 0x8e4a, -+ [1344] = 0x8e47, [1345] = 0x8e49, [1346] = 0x8e4c, [1347] = 0x8e50, -+ [1348] = 0x8e48, [1349] = 0x8e59, [1350] = 0x8e64, [1351] = 0x8e60, -+ [1352] = 0x8e2a, [1353] = 0x8e63, [1354] = 0x8e55, [1355] = 0x8e76, -+ [1356] = 0x8e72, [1357] = 0x8e7c, [1358] = 0x8e81, [1359] = 0x8e87, -+ [1360] = 0x8e85, [1361] = 0x8e84, [1362] = 0x8e8b, [1363] = 0x8e8a, -+ [1364] = 0x8e93, [1365] = 0x8e91, [1366] = 0x8e94, [1367] = 0x8e99, -+ [1368] = 0x8eaa, [1369] = 0x8ea1, [1370] = 0x8eac, [1371] = 0x8eb0, -+ [1372] = 0x8ec6, [1373] = 0x8eb1, [1374] = 0x8ebe, [1375] = 0x8ec5, -+ [1376] = 0x8ec8, [1377] = 0x8ecb, [1378] = 0x8edb, [1379] = 0x8ee3, -+ [1380] = 0x8efc, [1381] = 0x8efb, [1382] = 0x8eeb, [1383] = 0x8efe, -+ [1384] = 0x8f0a, [1385] = 0x8f05, [1386] = 0x8f15, [1387] = 0x8f12, -+ [1388] = 0x8f19, [1389] = 0x8f13, [1390] = 0x8f1c, [1391] = 0x8f1f, -+ [1392] = 0x8f1b, [1393] = 0x8f0c, [1394] = 0x8f26, [1395] = 0x8f33, -+ [1396] = 0x8f3b, [1397] = 0x8f39, [1398] = 0x8f45, [1399] = 0x8f42, -+ [1400] = 0x8f3e, [1401] = 0x8f4c, [1402] = 0x8f49, [1403] = 0x8f46, -+ [1404] = 0x8f4e, [1405] = 0x8f57, [1406] = 0x8f5c, [1408] = 0x8f62, -+ [1409] = 0x8f63, [1410] = 0x8f64, [1411] = 0x8f9c, [1412] = 0x8f9f, -+ [1413] = 0x8fa3, [1414] = 0x8fad, [1415] = 0x8faf, [1416] = 0x8fb7, -+ [1417] = 0x8fda, [1418] = 0x8fe5, [1419] = 0x8fe2, [1420] = 0x8fea, -+ [1421] = 0x8fef, [1422] = 0x9087, [1423] = 0x8ff4, [1424] = 0x9005, -+ [1425] = 0x8ff9, [1426] = 0x8ffa, [1427] = 0x9011, [1428] = 0x9015, -+ [1429] = 0x9021, [1430] = 0x900d, [1431] = 0x901e, [1432] = 0x9016, -+ [1433] = 0x900b, [1434] = 0x9027, [1435] = 0x9036, [1436] = 0x9035, -+ [1437] = 0x9039, [1438] = 0x8ff8, [1439] = 0x904f, [1440] = 0x9050, -+ [1441] = 0x9051, [1442] = 0x9052, [1443] = 0x900e, [1444] = 0x9049, -+ [1445] = 0x903e, [1446] = 0x9056, [1447] = 0x9058, [1448] = 0x905e, -+ [1449] = 0x9068, [1450] = 0x906f, [1451] = 0x9076, [1452] = 0x96a8, -+ [1453] = 0x9072, [1454] = 0x9082, [1455] = 0x907d, [1456] = 0x9081, -+ [1457] = 0x9080, [1458] = 0x908a, [1459] = 0x9089, [1460] = 0x908f, -+ [1461] = 0x90a8, [1462] = 0x90af, [1463] = 0x90b1, [1464] = 0x90b5, -+ [1465] = 0x90e2, [1466] = 0x90e4, [1467] = 0x6248, [1468] = 0x90db, -+ [1469] = 0x9102, [1470] = 0x9112, [1471] = 0x9119, [1472] = 0x9132, -+ [1473] = 0x9130, [1474] = 0x914a, [1475] = 0x9156, [1476] = 0x9158, -+ [1477] = 0x9163, [1478] = 0x9165, [1479] = 0x9169, [1480] = 0x9173, -+ [1481] = 0x9172, [1482] = 0x918b, [1483] = 0x9189, [1484] = 0x9182, -+ [1485] = 0x91a2, [1486] = 0x91ab, [1487] = 0x91af, [1488] = 0x91aa, -+ [1489] = 0x91b5, [1490] = 0x91b4, [1491] = 0x91ba, [1492] = 0x91c0, -+ [1493] = 0x91c1, [1494] = 0x91c9, [1495] = 0x91cb, [1496] = 0x91d0, -+ [1497] = 0x91d6, [1498] = 0x91df, [1499] = 0x91e1, [1500] = 0x91db, -+ [1501] = 0x91fc, [1502] = 0x91f5, [1503] = 0x91f6, [1504] = 0x921e, -+ [1505] = 0x91ff, [1506] = 0x9214, [1507] = 0x922c, [1508] = 0x9215, -+ [1509] = 0x9211, [1510] = 0x925e, [1511] = 0x9257, [1512] = 0x9245, -+ [1513] = 0x9249, [1514] = 0x9264, [1515] = 0x9248, [1516] = 0x9295, -+ [1517] = 0x923f, [1518] = 0x924b, [1519] = 0x9250, [1520] = 0x929c, -+ [1521] = 0x9296, [1522] = 0x9293, [1523] = 0x929b, [1524] = 0x925a, -+ [1525] = 0x92cf, [1526] = 0x92b9, [1527] = 0x92b7, [1528] = 0x92e9, -+ [1529] = 0x930f, [1530] = 0x92fa, [1531] = 0x9344, [1532] = 0x932e, -+ [1536] = 0x9319, [1537] = 0x9322, [1538] = 0x931a, [1539] = 0x9323, -+ [1540] = 0x933a, [1541] = 0x9335, [1542] = 0x933b, [1543] = 0x935c, -+ [1544] = 0x9360, [1545] = 0x937c, [1546] = 0x936e, [1547] = 0x9356, -+ [1548] = 0x93b0, [1549] = 0x93ac, [1550] = 0x93ad, [1551] = 0x9394, -+ [1552] = 0x93b9, [1553] = 0x93d6, [1554] = 0x93d7, [1555] = 0x93e8, -+ [1556] = 0x93e5, [1557] = 0x93d8, [1558] = 0x93c3, [1559] = 0x93dd, -+ [1560] = 0x93d0, [1561] = 0x93c8, [1562] = 0x93e4, [1563] = 0x941a, -+ [1564] = 0x9414, [1565] = 0x9413, [1566] = 0x9403, [1567] = 0x9407, -+ [1568] = 0x9410, [1569] = 0x9436, [1570] = 0x942b, [1571] = 0x9435, -+ [1572] = 0x9421, [1573] = 0x943a, [1574] = 0x9441, [1575] = 0x9452, -+ [1576] = 0x9444, [1577] = 0x945b, [1578] = 0x9460, [1579] = 0x9462, -+ [1580] = 0x945e, [1581] = 0x946a, [1582] = 0x9229, [1583] = 0x9470, -+ [1584] = 0x9475, [1585] = 0x9477, [1586] = 0x947d, [1587] = 0x945a, -+ [1588] = 0x947c, [1589] = 0x947e, [1590] = 0x9481, [1591] = 0x947f, -+ [1592] = 0x9582, [1593] = 0x9587, [1594] = 0x958a, [1595] = 0x9594, -+ [1596] = 0x9596, [1597] = 0x9598, [1598] = 0x9599, [1600] = 0x95a0, -+ [1601] = 0x95a8, [1602] = 0x95a7, [1603] = 0x95ad, [1604] = 0x95bc, -+ [1605] = 0x95bb, [1606] = 0x95b9, [1607] = 0x95be, [1608] = 0x95ca, -+ [1609] = 0x6ff6, [1610] = 0x95c3, [1611] = 0x95cd, [1612] = 0x95cc, -+ [1613] = 0x95d5, [1614] = 0x95d4, [1615] = 0x95d6, [1616] = 0x95dc, -+ [1617] = 0x95e1, [1618] = 0x95e5, [1619] = 0x95e2, [1620] = 0x9621, -+ [1621] = 0x9628, [1622] = 0x962e, [1623] = 0x962f, [1624] = 0x9642, -+ [1625] = 0x964c, [1626] = 0x964f, [1627] = 0x964b, [1628] = 0x9677, -+ [1629] = 0x965c, [1630] = 0x965e, [1631] = 0x965d, [1632] = 0x965f, -+ [1633] = 0x9666, [1634] = 0x9672, [1635] = 0x966c, [1636] = 0x968d, -+ [1637] = 0x9698, [1638] = 0x9695, [1639] = 0x9697, [1640] = 0x96aa, -+ [1641] = 0x96a7, [1642] = 0x96b1, [1643] = 0x96b2, [1644] = 0x96b0, -+ [1645] = 0x96b4, [1646] = 0x96b6, [1647] = 0x96b8, [1648] = 0x96b9, -+ [1649] = 0x96ce, [1650] = 0x96cb, [1651] = 0x96c9, [1652] = 0x96cd, -+ [1653] = 0x894d, [1654] = 0x96dc, [1655] = 0x970d, [1656] = 0x96d5, -+ [1657] = 0x96f9, [1658] = 0x9704, [1659] = 0x9706, [1660] = 0x9708, -+ [1661] = 0x9713, [1662] = 0x970e, [1663] = 0x9711, [1664] = 0x970f, -+ [1665] = 0x9716, [1666] = 0x9719, [1667] = 0x9724, [1668] = 0x972a, -+ [1669] = 0x9730, [1670] = 0x9739, [1671] = 0x973d, [1672] = 0x973e, -+ [1673] = 0x9744, [1674] = 0x9746, [1675] = 0x9748, [1676] = 0x9742, -+ [1677] = 0x9749, [1678] = 0x975c, [1679] = 0x9760, [1680] = 0x9764, -+ [1681] = 0x9766, [1682] = 0x9768, [1683] = 0x52d2, [1684] = 0x976b, -+ [1685] = 0x9771, [1686] = 0x9779, [1687] = 0x9785, [1688] = 0x977c, -+ [1689] = 0x9781, [1690] = 0x977a, [1691] = 0x9786, [1692] = 0x978b, -+ [1693] = 0x978f, [1694] = 0x9790, [1695] = 0x979c, [1696] = 0x97a8, -+ [1697] = 0x97a6, [1698] = 0x97a3, [1699] = 0x97b3, [1700] = 0x97b4, -+ [1701] = 0x97c3, [1702] = 0x97c6, [1703] = 0x97c8, [1704] = 0x97cb, -+ [1705] = 0x97dc, [1706] = 0x97ed, [1707] = 0x9f4f, [1708] = 0x97f2, -+ [1709] = 0x7adf, [1710] = 0x97f6, [1711] = 0x97f5, [1712] = 0x980f, -+ [1713] = 0x980c, [1714] = 0x9838, [1715] = 0x9824, [1716] = 0x9821, -+ [1717] = 0x9837, [1718] = 0x983d, [1719] = 0x9846, [1720] = 0x984f, -+ [1721] = 0x984b, [1722] = 0x986b, [1723] = 0x986f, [1724] = 0x9870, -+ [1728] = 0x9871, [1729] = 0x9874, [1730] = 0x9873, [1731] = 0x98aa, -+ [1732] = 0x98af, [1733] = 0x98b1, [1734] = 0x98b6, [1735] = 0x98c4, -+ [1736] = 0x98c3, [1737] = 0x98c6, [1738] = 0x98e9, [1739] = 0x98eb, -+ [1740] = 0x9903, [1741] = 0x9909, [1742] = 0x9912, [1743] = 0x9914, -+ [1744] = 0x9918, [1745] = 0x9921, [1746] = 0x991d, [1747] = 0x991e, -+ [1748] = 0x9924, [1749] = 0x9920, [1750] = 0x992c, [1751] = 0x992e, -+ [1752] = 0x993d, [1753] = 0x993e, [1754] = 0x9942, [1755] = 0x9949, -+ [1756] = 0x9945, [1757] = 0x9950, [1758] = 0x994b, [1759] = 0x9951, -+ [1760] = 0x9952, [1761] = 0x994c, [1762] = 0x9955, [1763] = 0x9997, -+ [1764] = 0x9998, [1765] = 0x99a5, [1766] = 0x99ad, [1767] = 0x99ae, -+ [1768] = 0x99bc, [1769] = 0x99df, [1770] = 0x99db, [1771] = 0x99dd, -+ [1772] = 0x99d8, [1773] = 0x99d1, [1774] = 0x99ed, [1775] = 0x99ee, -+ [1776] = 0x99f1, [1777] = 0x99f2, [1778] = 0x99fb, [1779] = 0x99f8, -+ [1780] = 0x9a01, [1781] = 0x9a0f, [1782] = 0x9a05, [1783] = 0x99e2, -+ [1784] = 0x9a19, [1785] = 0x9a2b, [1786] = 0x9a37, [1787] = 0x9a45, -+ [1788] = 0x9a42, [1789] = 0x9a40, [1790] = 0x9a43, [1792] = 0x9a3e, -+ [1793] = 0x9a55, [1794] = 0x9a4d, [1795] = 0x9a5b, [1796] = 0x9a57, -+ [1797] = 0x9a5f, [1798] = 0x9a62, [1799] = 0x9a65, [1800] = 0x9a64, -+ [1801] = 0x9a69, [1802] = 0x9a6b, [1803] = 0x9a6a, [1804] = 0x9aad, -+ [1805] = 0x9ab0, [1806] = 0x9abc, [1807] = 0x9ac0, [1808] = 0x9acf, -+ [1809] = 0x9ad1, [1810] = 0x9ad3, [1811] = 0x9ad4, [1812] = 0x9ade, -+ [1813] = 0x9adf, [1814] = 0x9ae2, [1815] = 0x9ae3, [1816] = 0x9ae6, -+ [1817] = 0x9aef, [1818] = 0x9aeb, [1819] = 0x9aee, [1820] = 0x9af4, -+ [1821] = 0x9af1, [1822] = 0x9af7, [1823] = 0x9afb, [1824] = 0x9b06, -+ [1825] = 0x9b18, [1826] = 0x9b1a, [1827] = 0x9b1f, [1828] = 0x9b22, -+ [1829] = 0x9b23, [1830] = 0x9b25, [1831] = 0x9b27, [1832] = 0x9b28, -+ [1833] = 0x9b29, [1834] = 0x9b2a, [1835] = 0x9b2e, [1836] = 0x9b2f, -+ [1837] = 0x9b32, [1838] = 0x9b44, [1839] = 0x9b43, [1840] = 0x9b4f, -+ [1841] = 0x9b4d, [1842] = 0x9b4e, [1843] = 0x9b51, [1844] = 0x9b58, -+ [1845] = 0x9b74, [1846] = 0x9b93, [1847] = 0x9b83, [1848] = 0x9b91, -+ [1849] = 0x9b96, [1850] = 0x9b97, [1851] = 0x9b9f, [1852] = 0x9ba0, -+ [1853] = 0x9ba8, [1854] = 0x9bb4, [1855] = 0x9bc0, [1856] = 0x9bca, -+ [1857] = 0x9bb9, [1858] = 0x9bc6, [1859] = 0x9bcf, [1860] = 0x9bd1, -+ [1861] = 0x9bd2, [1862] = 0x9be3, [1863] = 0x9be2, [1864] = 0x9be4, -+ [1865] = 0x9bd4, [1866] = 0x9be1, [1867] = 0x9c3a, [1868] = 0x9bf2, -+ [1869] = 0x9bf1, [1870] = 0x9bf0, [1871] = 0x9c15, [1872] = 0x9c14, -+ [1873] = 0x9c09, [1874] = 0x9c13, [1875] = 0x9c0c, [1876] = 0x9c06, -+ [1877] = 0x9c08, [1878] = 0x9c12, [1879] = 0x9c0a, [1880] = 0x9c04, -+ [1881] = 0x9c2e, [1882] = 0x9c1b, [1883] = 0x9c25, [1884] = 0x9c24, -+ [1885] = 0x9c21, [1886] = 0x9c30, [1887] = 0x9c47, [1888] = 0x9c32, -+ [1889] = 0x9c46, [1890] = 0x9c3e, [1891] = 0x9c5a, [1892] = 0x9c60, -+ [1893] = 0x9c67, [1894] = 0x9c76, [1895] = 0x9c78, [1896] = 0x9ce7, -+ [1897] = 0x9cec, [1898] = 0x9cf0, [1899] = 0x9d09, [1900] = 0x9d08, -+ [1901] = 0x9ceb, [1902] = 0x9d03, [1903] = 0x9d06, [1904] = 0x9d2a, -+ [1905] = 0x9d26, [1906] = 0x9daf, [1907] = 0x9d23, [1908] = 0x9d1f, -+ [1909] = 0x9d44, [1910] = 0x9d15, [1911] = 0x9d12, [1912] = 0x9d41, -+ [1913] = 0x9d3f, [1914] = 0x9d3e, [1915] = 0x9d46, [1916] = 0x9d48, -+ [1920] = 0x9d5d, [1921] = 0x9d5e, [1922] = 0x9d64, [1923] = 0x9d51, -+ [1924] = 0x9d50, [1925] = 0x9d59, [1926] = 0x9d72, [1927] = 0x9d89, -+ [1928] = 0x9d87, [1929] = 0x9dab, [1930] = 0x9d6f, [1931] = 0x9d7a, -+ [1932] = 0x9d9a, [1933] = 0x9da4, [1934] = 0x9da9, [1935] = 0x9db2, -+ [1936] = 0x9dc4, [1937] = 0x9dc1, [1938] = 0x9dbb, [1939] = 0x9db8, -+ [1940] = 0x9dba, [1941] = 0x9dc6, [1942] = 0x9dcf, [1943] = 0x9dc2, -+ [1944] = 0x9dd9, [1945] = 0x9dd3, [1946] = 0x9df8, [1947] = 0x9de6, -+ [1948] = 0x9ded, [1949] = 0x9def, [1950] = 0x9dfd, [1951] = 0x9e1a, -+ [1952] = 0x9e1b, [1953] = 0x9e1e, [1954] = 0x9e75, [1955] = 0x9e79, -+ [1956] = 0x9e7d, [1957] = 0x9e81, [1958] = 0x9e88, [1959] = 0x9e8b, -+ [1960] = 0x9e8c, [1961] = 0x9e92, [1962] = 0x9e95, [1963] = 0x9e91, -+ [1964] = 0x9e9d, [1965] = 0x9ea5, [1966] = 0x9ea9, [1967] = 0x9eb8, -+ [1968] = 0x9eaa, [1969] = 0x9ead, [1970] = 0x9761, [1971] = 0x9ecc, -+ [1972] = 0x9ece, [1973] = 0x9ecf, [1974] = 0x9ed0, [1975] = 0x9ed4, -+ [1976] = 0x9edc, [1977] = 0x9ede, [1978] = 0x9edd, [1979] = 0x9ee0, -+ [1980] = 0x9ee5, [1981] = 0x9ee8, [1982] = 0x9eef, [1984] = 0x9ef4, -+ [1985] = 0x9ef6, [1986] = 0x9ef7, [1987] = 0x9ef9, [1988] = 0x9efb, -+ [1989] = 0x9efc, [1990] = 0x9efd, [1991] = 0x9f07, [1992] = 0x9f08, -+ [1993] = 0x76b7, [1994] = 0x9f15, [1995] = 0x9f21, [1996] = 0x9f2c, -+ [1997] = 0x9f3e, [1998] = 0x9f4a, [1999] = 0x9f52, [2000] = 0x9f54, -+ [2001] = 0x9f63, [2002] = 0x9f5f, [2003] = 0x9f60, [2004] = 0x9f61, -+ [2005] = 0x9f66, [2006] = 0x9f67, [2007] = 0x9f6c, [2008] = 0x9f6a, -+ [2009] = 0x9f77, [2010] = 0x9f72, [2011] = 0x9f76, [2012] = 0x9f95, -+ [2013] = 0x9f9c, [2014] = 0x9fa0, [2015] = 0x582f, [2016] = 0x69c7, -+ [2017] = 0x9059, [2018] = 0x7464, [2019] = 0x51dc, [2020] = 0x7199 -+}; -+ -+static const uint16_t cjk_block6[381] = -+{ -+ /* start = 0xed40, end = 0xeefc */ -+ [ 0] = 0x7e8a, [ 1] = 0x891c, [ 2] = 0x9348, [ 3] = 0x9288, -+ [ 4] = 0x84dc, [ 5] = 0x4fc9, [ 6] = 0x70bb, [ 7] = 0x6631, -+ [ 8] = 0x68c8, [ 9] = 0x92f9, [ 10] = 0x66fb, [ 11] = 0x5f45, -+ [ 12] = 0x4e28, [ 13] = 0x4ee1, [ 14] = 0x4efc, [ 15] = 0x4f00, -+ [ 16] = 0x4f03, [ 17] = 0x4f39, [ 18] = 0x4f56, [ 19] = 0x4f92, -+ [ 20] = 0x4f8a, [ 21] = 0x4f9a, [ 22] = 0x4f94, [ 23] = 0x4fcd, -+ [ 24] = 0x5040, [ 25] = 0x5022, [ 26] = 0x4fff, [ 27] = 0x501e, -+ [ 28] = 0x5046, [ 29] = 0x5070, [ 30] = 0x5042, [ 31] = 0x5094, -+ [ 32] = 0x50f4, [ 33] = 0x50d8, [ 34] = 0x514a, [ 35] = 0x5164, -+ [ 36] = 0x519d, [ 37] = 0x51be, [ 38] = 0x51ec, [ 39] = 0x5215, -+ [ 40] = 0x529c, [ 41] = 0x52a6, [ 42] = 0x52c0, [ 43] = 0x52db, -+ [ 44] = 0x5300, [ 45] = 0x5307, [ 46] = 0x5324, [ 47] = 0x5372, -+ [ 48] = 0x5393, [ 49] = 0x53b2, [ 50] = 0x53dd, [ 51] = 0xfa0e, -+ [ 52] = 0x549c, [ 53] = 0x548a, [ 54] = 0x54a9, [ 55] = 0x54ff, -+ [ 56] = 0x5586, [ 57] = 0x5759, [ 58] = 0x5765, [ 59] = 0x57ac, -+ [ 60] = 0x57c8, [ 61] = 0x57c7, [ 62] = 0xfa0f, [ 64] = 0xfa10, -+ [ 65] = 0x589e, [ 66] = 0x58b2, [ 67] = 0x590b, [ 68] = 0x5953, -+ [ 69] = 0x595b, [ 70] = 0x595d, [ 71] = 0x5963, [ 72] = 0x59a4, -+ [ 73] = 0x59ba, [ 74] = 0x5b56, [ 75] = 0x5bc0, [ 76] = 0x752f, -+ [ 77] = 0x5bd8, [ 78] = 0x5bec, [ 79] = 0x5c1e, [ 80] = 0x5ca6, -+ [ 81] = 0x5cba, [ 82] = 0x5cf5, [ 83] = 0x5d27, [ 84] = 0x5d53, -+ [ 85] = 0xfa11, [ 86] = 0x5d42, [ 87] = 0x5d6d, [ 88] = 0x5db8, -+ [ 89] = 0x5db9, [ 90] = 0x5dd0, [ 91] = 0x5f21, [ 92] = 0x5f34, -+ [ 93] = 0x5f67, [ 94] = 0x5fb7, [ 95] = 0x5fde, [ 96] = 0x605d, -+ [ 97] = 0x6085, [ 98] = 0x608a, [ 99] = 0x60de, [ 100] = 0x60d5, -+ [ 101] = 0x6120, [ 102] = 0x60f2, [ 103] = 0x6111, [ 104] = 0x6137, -+ [ 105] = 0x6130, [ 106] = 0x6198, [ 107] = 0x6213, [ 108] = 0x62a6, -+ [ 109] = 0x63f5, [ 110] = 0x6460, [ 111] = 0x649d, [ 112] = 0x64ce, -+ [ 113] = 0x654e, [ 114] = 0x6600, [ 115] = 0x6615, [ 116] = 0x663b, -+ [ 117] = 0x6609, [ 118] = 0x662e, [ 119] = 0x661e, [ 120] = 0x6624, -+ [ 121] = 0x6665, [ 122] = 0x6657, [ 123] = 0x6659, [ 124] = 0xfa12, -+ [ 125] = 0x6673, [ 126] = 0x6699, [ 127] = 0x66a0, [ 128] = 0x66b2, -+ [ 129] = 0x66bf, [ 130] = 0x66fa, [ 131] = 0x670e, [ 132] = 0xf929, -+ [ 133] = 0x6766, [ 134] = 0x67bb, [ 135] = 0x6852, [ 136] = 0x67c0, -+ [ 137] = 0x6801, [ 138] = 0x6844, [ 139] = 0x68cf, [ 140] = 0xfa13, -+ [ 141] = 0x6968, [ 142] = 0xfa14, [ 143] = 0x6998, [ 144] = 0x69e2, -+ [ 145] = 0x6a30, [ 146] = 0x6a6b, [ 147] = 0x6a46, [ 148] = 0x6a73, -+ [ 149] = 0x6a7e, [ 150] = 0x6ae2, [ 151] = 0x6ae4, [ 152] = 0x6bd6, -+ [ 153] = 0x6c3f, [ 154] = 0x6c5c, [ 155] = 0x6c86, [ 156] = 0x6c6f, -+ [ 157] = 0x6cda, [ 158] = 0x6d04, [ 159] = 0x6d87, [ 160] = 0x6d6f, -+ [ 161] = 0x6d96, [ 162] = 0x6dac, [ 163] = 0x6dcf, [ 164] = 0x6df8, -+ [ 165] = 0x6df2, [ 166] = 0x6dfc, [ 167] = 0x6e39, [ 168] = 0x6e5c, -+ [ 169] = 0x6e27, [ 170] = 0x6e3c, [ 171] = 0x6ebf, [ 172] = 0x6f88, -+ [ 173] = 0x6fb5, [ 174] = 0x6ff5, [ 175] = 0x7005, [ 176] = 0x7007, -+ [ 177] = 0x7028, [ 178] = 0x7085, [ 179] = 0x70ab, [ 180] = 0x710f, -+ [ 181] = 0x7104, [ 182] = 0x715c, [ 183] = 0x7146, [ 184] = 0x7147, -+ [ 185] = 0xfa15, [ 186] = 0x71c1, [ 187] = 0x71fe, [ 188] = 0x72b1, -+ [ 192] = 0x72be, [ 193] = 0x7324, [ 194] = 0xfa16, [ 195] = 0x7377, -+ [ 196] = 0x73bd, [ 197] = 0x73c9, [ 198] = 0x73d6, [ 199] = 0x73e3, -+ [ 200] = 0x73d2, [ 201] = 0x7407, [ 202] = 0x73f5, [ 203] = 0x7426, -+ [ 204] = 0x742a, [ 205] = 0x7429, [ 206] = 0x742e, [ 207] = 0x7462, -+ [ 208] = 0x7489, [ 209] = 0x749f, [ 210] = 0x7501, [ 211] = 0x756f, -+ [ 212] = 0x7682, [ 213] = 0x769c, [ 214] = 0x769e, [ 215] = 0x769b, -+ [ 216] = 0x76a6, [ 217] = 0xfa17, [ 218] = 0x7746, [ 219] = 0x52af, -+ [ 220] = 0x7821, [ 221] = 0x784e, [ 222] = 0x7864, [ 223] = 0x787a, -+ [ 224] = 0x7930, [ 225] = 0xfa18, [ 226] = 0xfa19, [ 227] = 0xfa1a, -+ [ 228] = 0x7994, [ 229] = 0xfa1b, [ 230] = 0x799b, [ 231] = 0x7ad1, -+ [ 232] = 0x7ae7, [ 233] = 0xfa1c, [ 234] = 0x7aeb, [ 235] = 0x7b9e, -+ [ 236] = 0xfa1d, [ 237] = 0x7d48, [ 238] = 0x7d5c, [ 239] = 0x7db7, -+ [ 240] = 0x7da0, [ 241] = 0x7dd6, [ 242] = 0x7e52, [ 243] = 0x7f47, -+ [ 244] = 0x7fa1, [ 245] = 0xfa1e, [ 246] = 0x8301, [ 247] = 0x8362, -+ [ 248] = 0x837f, [ 249] = 0x83c7, [ 250] = 0x83f6, [ 251] = 0x8448, -+ [ 252] = 0x84b4, [ 253] = 0x8553, [ 254] = 0x8559, [ 256] = 0x856b, -+ [ 257] = 0xfa1f, [ 258] = 0x85b0, [ 259] = 0xfa20, [ 260] = 0xfa21, -+ [ 261] = 0x8807, [ 262] = 0x88f5, [ 263] = 0x8a12, [ 264] = 0x8a37, -+ [ 265] = 0x8a79, [ 266] = 0x8aa7, [ 267] = 0x8abe, [ 268] = 0x8adf, -+ [ 269] = 0xfa22, [ 270] = 0x8af6, [ 271] = 0x8b53, [ 272] = 0x8b7f, -+ [ 273] = 0x8cf0, [ 274] = 0x8cf4, [ 275] = 0x8d12, [ 276] = 0x8d76, -+ [ 277] = 0xfa23, [ 278] = 0x8ecf, [ 279] = 0xfa24, [ 280] = 0xfa25, -+ [ 281] = 0x9067, [ 282] = 0x90de, [ 283] = 0xfa26, [ 284] = 0x9115, -+ [ 285] = 0x9127, [ 286] = 0x91da, [ 287] = 0x91d7, [ 288] = 0x91de, -+ [ 289] = 0x91ed, [ 290] = 0x91ee, [ 291] = 0x91e4, [ 292] = 0x91e5, -+ [ 293] = 0x9206, [ 294] = 0x9210, [ 295] = 0x920a, [ 296] = 0x923a, -+ [ 297] = 0x9240, [ 298] = 0x923c, [ 299] = 0x924e, [ 300] = 0x9259, -+ [ 301] = 0x9251, [ 302] = 0x9239, [ 303] = 0x9267, [ 304] = 0x92a7, -+ [ 305] = 0x9277, [ 306] = 0x9278, [ 307] = 0x92e7, [ 308] = 0x92d7, -+ [ 309] = 0x92d9, [ 310] = 0x92d0, [ 311] = 0xfa27, [ 312] = 0x92d5, -+ [ 313] = 0x92e0, [ 314] = 0x92d3, [ 315] = 0x9325, [ 316] = 0x9321, -+ [ 317] = 0x92fb, [ 318] = 0xfa28, [ 319] = 0x931e, [ 320] = 0x92ff, -+ [ 321] = 0x931d, [ 322] = 0x9302, [ 323] = 0x9370, [ 324] = 0x9357, -+ [ 325] = 0x93a4, [ 326] = 0x93c6, [ 327] = 0x93de, [ 328] = 0x93f8, -+ [ 329] = 0x9431, [ 330] = 0x9445, [ 331] = 0x9448, [ 332] = 0x9592, -+ [ 333] = 0xf9dc, [ 334] = 0xfa29, [ 335] = 0x969d, [ 336] = 0x96af, -+ [ 337] = 0x9733, [ 338] = 0x973b, [ 339] = 0x9743, [ 340] = 0x974d, -+ [ 341] = 0x974f, [ 342] = 0x9751, [ 343] = 0x9755, [ 344] = 0x9857, -+ [ 345] = 0x9865, [ 346] = 0xfa2a, [ 347] = 0xfa2b, [ 348] = 0x9927, -+ [ 349] = 0xfa2c, [ 350] = 0x999e, [ 351] = 0x9a4e, [ 352] = 0x9ad9, -+ [ 353] = 0x9adc, [ 354] = 0x9b75, [ 355] = 0x9b72, [ 356] = 0x9b8f, -+ [ 357] = 0x9bb1, [ 358] = 0x9bbb, [ 359] = 0x9c00, [ 360] = 0x9d70, -+ [ 361] = 0x9d6b, [ 362] = 0xfa2d, [ 363] = 0x9e19, [ 364] = 0x9ed1, -+ [ 367] = 0x2170, [ 368] = 0x2171, [ 369] = 0x2172, [ 370] = 0x2173, -+ [ 371] = 0x2174, [ 372] = 0x2175, [ 373] = 0x2176, [ 374] = 0x2177, -+ [ 375] = 0x2178, [ 376] = 0x2179, [ 377] = 0xffe2, [ 378] = 0xffe4, -+ [ 379] = 0xff07, [ 380] = 0xff02 -+}; -+ -+static const uint16_t cjk_block7[396] = -+{ -+ /* start = 0xfa40, end = 0xfc4b */ -+ [ 0] = 0x2170, [ 1] = 0x2171, [ 2] = 0x2172, [ 3] = 0x2173, -+ [ 4] = 0x2174, [ 5] = 0x2175, [ 6] = 0x2176, [ 7] = 0x2177, -+ [ 8] = 0x2178, [ 9] = 0x2179, [ 10] = 0x2160, [ 11] = 0x2161, -+ [ 12] = 0x2162, [ 13] = 0x2163, [ 14] = 0x2164, [ 15] = 0x2165, -+ [ 16] = 0x2166, [ 17] = 0x2167, [ 18] = 0x2168, [ 19] = 0x2169, -+ [ 20] = 0xffe2, [ 21] = 0xffe4, [ 22] = 0xff07, [ 23] = 0xff02, -+ [ 24] = 0x3231, [ 25] = 0x2116, [ 26] = 0x2121, [ 27] = 0x2235, -+ [ 28] = 0x7e8a, [ 29] = 0x891c, [ 30] = 0x9348, [ 31] = 0x9288, -+ [ 32] = 0x84dc, [ 33] = 0x4fc9, [ 34] = 0x70bb, [ 35] = 0x6631, -+ [ 36] = 0x68c8, [ 37] = 0x92f9, [ 38] = 0x66fb, [ 39] = 0x5f45, -+ [ 40] = 0x4e28, [ 41] = 0x4ee1, [ 42] = 0x4efc, [ 43] = 0x4f00, -+ [ 44] = 0x4f03, [ 45] = 0x4f39, [ 46] = 0x4f56, [ 47] = 0x4f92, -+ [ 48] = 0x4f8a, [ 49] = 0x4f9a, [ 50] = 0x4f94, [ 51] = 0x4fcd, -+ [ 52] = 0x5040, [ 53] = 0x5022, [ 54] = 0x4fff, [ 55] = 0x501e, -+ [ 56] = 0x5046, [ 57] = 0x5070, [ 58] = 0x5042, [ 59] = 0x5094, -+ [ 60] = 0x50f4, [ 61] = 0x50d8, [ 62] = 0x514a, [ 64] = 0x5164, -+ [ 65] = 0x519d, [ 66] = 0x51be, [ 67] = 0x51ec, [ 68] = 0x5215, -+ [ 69] = 0x529c, [ 70] = 0x52a6, [ 71] = 0x52c0, [ 72] = 0x52db, -+ [ 73] = 0x5300, [ 74] = 0x5307, [ 75] = 0x5324, [ 76] = 0x5372, -+ [ 77] = 0x5393, [ 78] = 0x53b2, [ 79] = 0x53dd, [ 80] = 0xfa0e, -+ [ 81] = 0x549c, [ 82] = 0x548a, [ 83] = 0x54a9, [ 84] = 0x54ff, -+ [ 85] = 0x5586, [ 86] = 0x5759, [ 87] = 0x5765, [ 88] = 0x57ac, -+ [ 89] = 0x57c8, [ 90] = 0x57c7, [ 91] = 0xfa0f, [ 92] = 0xfa10, -+ [ 93] = 0x589e, [ 94] = 0x58b2, [ 95] = 0x590b, [ 96] = 0x5953, -+ [ 97] = 0x595b, [ 98] = 0x595d, [ 99] = 0x5963, [ 100] = 0x59a4, -+ [ 101] = 0x59ba, [ 102] = 0x5b56, [ 103] = 0x5bc0, [ 104] = 0x752f, -+ [ 105] = 0x5bd8, [ 106] = 0x5bec, [ 107] = 0x5c1e, [ 108] = 0x5ca6, -+ [ 109] = 0x5cba, [ 110] = 0x5cf5, [ 111] = 0x5d27, [ 112] = 0x5d53, -+ [ 113] = 0xfa11, [ 114] = 0x5d42, [ 115] = 0x5d6d, [ 116] = 0x5db8, -+ [ 117] = 0x5db9, [ 118] = 0x5dd0, [ 119] = 0x5f21, [ 120] = 0x5f34, -+ [ 121] = 0x5f67, [ 122] = 0x5fb7, [ 123] = 0x5fde, [ 124] = 0x605d, -+ [ 125] = 0x6085, [ 126] = 0x608a, [ 127] = 0x60de, [ 128] = 0x60d5, -+ [ 129] = 0x6120, [ 130] = 0x60f2, [ 131] = 0x6111, [ 132] = 0x6137, -+ [ 133] = 0x6130, [ 134] = 0x6198, [ 135] = 0x6213, [ 136] = 0x62a6, -+ [ 137] = 0x63f5, [ 138] = 0x6460, [ 139] = 0x649d, [ 140] = 0x64ce, -+ [ 141] = 0x654e, [ 142] = 0x6600, [ 143] = 0x6615, [ 144] = 0x663b, -+ [ 145] = 0x6609, [ 146] = 0x662e, [ 147] = 0x661e, [ 148] = 0x6624, -+ [ 149] = 0x6665, [ 150] = 0x6657, [ 151] = 0x6659, [ 152] = 0xfa12, -+ [ 153] = 0x6673, [ 154] = 0x6699, [ 155] = 0x66a0, [ 156] = 0x66b2, -+ [ 157] = 0x66bf, [ 158] = 0x66fa, [ 159] = 0x670e, [ 160] = 0xf929, -+ [ 161] = 0x6766, [ 162] = 0x67bb, [ 163] = 0x6852, [ 164] = 0x67c0, -+ [ 165] = 0x6801, [ 166] = 0x6844, [ 167] = 0x68cf, [ 168] = 0xfa13, -+ [ 169] = 0x6968, [ 170] = 0xfa14, [ 171] = 0x6998, [ 172] = 0x69e2, -+ [ 173] = 0x6a30, [ 174] = 0x6a6b, [ 175] = 0x6a46, [ 176] = 0x6a73, -+ [ 177] = 0x6a7e, [ 178] = 0x6ae2, [ 179] = 0x6ae4, [ 180] = 0x6bd6, -+ [ 181] = 0x6c3f, [ 182] = 0x6c5c, [ 183] = 0x6c86, [ 184] = 0x6c6f, -+ [ 185] = 0x6cda, [ 186] = 0x6d04, [ 187] = 0x6d87, [ 188] = 0x6d6f, -+ [ 192] = 0x6d96, [ 193] = 0x6dac, [ 194] = 0x6dcf, [ 195] = 0x6df8, -+ [ 196] = 0x6df2, [ 197] = 0x6dfc, [ 198] = 0x6e39, [ 199] = 0x6e5c, -+ [ 200] = 0x6e27, [ 201] = 0x6e3c, [ 202] = 0x6ebf, [ 203] = 0x6f88, -+ [ 204] = 0x6fb5, [ 205] = 0x6ff5, [ 206] = 0x7005, [ 207] = 0x7007, -+ [ 208] = 0x7028, [ 209] = 0x7085, [ 210] = 0x70ab, [ 211] = 0x710f, -+ [ 212] = 0x7104, [ 213] = 0x715c, [ 214] = 0x7146, [ 215] = 0x7147, -+ [ 216] = 0xfa15, [ 217] = 0x71c1, [ 218] = 0x71fe, [ 219] = 0x72b1, -+ [ 220] = 0x72be, [ 221] = 0x7324, [ 222] = 0xfa16, [ 223] = 0x7377, -+ [ 224] = 0x73bd, [ 225] = 0x73c9, [ 226] = 0x73d6, [ 227] = 0x73e3, -+ [ 228] = 0x73d2, [ 229] = 0x7407, [ 230] = 0x73f5, [ 231] = 0x7426, -+ [ 232] = 0x742a, [ 233] = 0x7429, [ 234] = 0x742e, [ 235] = 0x7462, -+ [ 236] = 0x7489, [ 237] = 0x749f, [ 238] = 0x7501, [ 239] = 0x756f, -+ [ 240] = 0x7682, [ 241] = 0x769c, [ 242] = 0x769e, [ 243] = 0x769b, -+ [ 244] = 0x76a6, [ 245] = 0xfa17, [ 246] = 0x7746, [ 247] = 0x52af, -+ [ 248] = 0x7821, [ 249] = 0x784e, [ 250] = 0x7864, [ 251] = 0x787a, -+ [ 252] = 0x7930, [ 253] = 0xfa18, [ 254] = 0xfa19, [ 256] = 0xfa1a, -+ [ 257] = 0x7994, [ 258] = 0xfa1b, [ 259] = 0x799b, [ 260] = 0x7ad1, -+ [ 261] = 0x7ae7, [ 262] = 0xfa1c, [ 263] = 0x7aeb, [ 264] = 0x7b9e, -+ [ 265] = 0xfa1d, [ 266] = 0x7d48, [ 267] = 0x7d5c, [ 268] = 0x7db7, -+ [ 269] = 0x7da0, [ 270] = 0x7dd6, [ 271] = 0x7e52, [ 272] = 0x7f47, -+ [ 273] = 0x7fa1, [ 274] = 0xfa1e, [ 275] = 0x8301, [ 276] = 0x8362, -+ [ 277] = 0x837f, [ 278] = 0x83c7, [ 279] = 0x83f6, [ 280] = 0x8448, -+ [ 281] = 0x84b4, [ 282] = 0x8553, [ 283] = 0x8559, [ 284] = 0x856b, -+ [ 285] = 0xfa1f, [ 286] = 0x85b0, [ 287] = 0xfa20, [ 288] = 0xfa21, -+ [ 289] = 0x8807, [ 290] = 0x88f5, [ 291] = 0x8a12, [ 292] = 0x8a37, -+ [ 293] = 0x8a79, [ 294] = 0x8aa7, [ 295] = 0x8abe, [ 296] = 0x8adf, -+ [ 297] = 0xfa22, [ 298] = 0x8af6, [ 299] = 0x8b53, [ 300] = 0x8b7f, -+ [ 301] = 0x8cf0, [ 302] = 0x8cf4, [ 303] = 0x8d12, [ 304] = 0x8d76, -+ [ 305] = 0xfa23, [ 306] = 0x8ecf, [ 307] = 0xfa24, [ 308] = 0xfa25, -+ [ 309] = 0x9067, [ 310] = 0x90de, [ 311] = 0xfa26, [ 312] = 0x9115, -+ [ 313] = 0x9127, [ 314] = 0x91da, [ 315] = 0x91d7, [ 316] = 0x91de, -+ [ 317] = 0x91ed, [ 318] = 0x91ee, [ 319] = 0x91e4, [ 320] = 0x91e5, -+ [ 321] = 0x9206, [ 322] = 0x9210, [ 323] = 0x920a, [ 324] = 0x923a, -+ [ 325] = 0x9240, [ 326] = 0x923c, [ 327] = 0x924e, [ 328] = 0x9259, -+ [ 329] = 0x9251, [ 330] = 0x9239, [ 331] = 0x9267, [ 332] = 0x92a7, -+ [ 333] = 0x9277, [ 334] = 0x9278, [ 335] = 0x92e7, [ 336] = 0x92d7, -+ [ 337] = 0x92d9, [ 338] = 0x92d0, [ 339] = 0xfa27, [ 340] = 0x92d5, -+ [ 341] = 0x92e0, [ 342] = 0x92d3, [ 343] = 0x9325, [ 344] = 0x9321, -+ [ 345] = 0x92fb, [ 346] = 0xfa28, [ 347] = 0x931e, [ 348] = 0x92ff, -+ [ 349] = 0x931d, [ 350] = 0x9302, [ 351] = 0x9370, [ 352] = 0x9357, -+ [ 353] = 0x93a4, [ 354] = 0x93c6, [ 355] = 0x93de, [ 356] = 0x93f8, -+ [ 357] = 0x9431, [ 358] = 0x9445, [ 359] = 0x9448, [ 360] = 0x9592, -+ [ 361] = 0xf9dc, [ 362] = 0xfa29, [ 363] = 0x969d, [ 364] = 0x96af, -+ [ 365] = 0x9733, [ 366] = 0x973b, [ 367] = 0x9743, [ 368] = 0x974d, -+ [ 369] = 0x974f, [ 370] = 0x9751, [ 371] = 0x9755, [ 372] = 0x9857, -+ [ 373] = 0x9865, [ 374] = 0xfa2a, [ 375] = 0xfa2b, [ 376] = 0x9927, -+ [ 377] = 0xfa2c, [ 378] = 0x999e, [ 379] = 0x9a4e, [ 380] = 0x9ad9, -+ [ 384] = 0x9adc, [ 385] = 0x9b75, [ 386] = 0x9b72, [ 387] = 0x9b8f, -+ [ 388] = 0x9bb1, [ 389] = 0x9bbb, [ 390] = 0x9c00, [ 391] = 0x9d70, -+ [ 392] = 0x9d6b, [ 393] = 0xfa2d, [ 394] = 0x9e19, [ 395] = 0x9ed1 -+}; -+ -+static const char from_ucs4_lat1[248][2] = -+{ -+ /* start = 0x0000, end = 0x00f7 */ -+ [ 0] = "\x00\x00", [ 1] = "\x01\x00", [ 2] = "\x02\x00", -+ [ 3] = "\x03\x00", [ 4] = "\x04\x00", [ 5] = "\x05\x00", -+ [ 6] = "\x06\x00", [ 7] = "\x07\x00", [ 8] = "\x08\x00", -+ [ 9] = "\x09\x00", [ 10] = "\x0a\x00", [ 11] = "\x0b\x00", -+ [ 12] = "\x0c\x00", [ 13] = "\x0d\x00", [ 14] = "\x0e\x00", -+ [ 15] = "\x0f\x00", [ 16] = "\x10\x00", [ 17] = "\x11\x00", -+ [ 18] = "\x12\x00", [ 19] = "\x13\x00", [ 20] = "\x14\x00", -+ [ 21] = "\x15\x00", [ 22] = "\x16\x00", [ 23] = "\x17\x00", -+ [ 24] = "\x18\x00", [ 25] = "\x19\x00", [ 26] = "\x1a\x00", -+ [ 27] = "\x1b\x00", [ 28] = "\x1c\x00", [ 29] = "\x1d\x00", -+ [ 30] = "\x1e\x00", [ 31] = "\x1f\x00", [ 32] = "\x20\x00", -+ [ 33] = "\x21\x00", [ 34] = "\x22\x00", [ 35] = "\x23\x00", -+ [ 36] = "\x24\x00", [ 37] = "\x25\x00", [ 38] = "\x26\x00", -+ [ 39] = "\x27\x00", [ 40] = "\x28\x00", [ 41] = "\x29\x00", -+ [ 42] = "\x2a\x00", [ 43] = "\x2b\x00", [ 44] = "\x2c\x00", -+ [ 45] = "\x2d\x00", [ 46] = "\x2e\x00", [ 47] = "\x2f\x00", -+ [ 48] = "\x30\x00", [ 49] = "\x31\x00", [ 50] = "\x32\x00", -+ [ 51] = "\x33\x00", [ 52] = "\x34\x00", [ 53] = "\x35\x00", -+ [ 54] = "\x36\x00", [ 55] = "\x37\x00", [ 56] = "\x38\x00", -+ [ 57] = "\x39\x00", [ 58] = "\x3a\x00", [ 59] = "\x3b\x00", -+ [ 60] = "\x3c\x00", [ 61] = "\x3d\x00", [ 62] = "\x3e\x00", -+ [ 63] = "\x3f\x00", [ 64] = "\x40\x00", [ 65] = "\x41\x00", -+ [ 66] = "\x42\x00", [ 67] = "\x43\x00", [ 68] = "\x44\x00", -+ [ 69] = "\x45\x00", [ 70] = "\x46\x00", [ 71] = "\x47\x00", -+ [ 72] = "\x48\x00", [ 73] = "\x49\x00", [ 74] = "\x4a\x00", -+ [ 75] = "\x4b\x00", [ 76] = "\x4c\x00", [ 77] = "\x4d\x00", -+ [ 78] = "\x4e\x00", [ 79] = "\x4f\x00", [ 80] = "\x50\x00", -+ [ 81] = "\x51\x00", [ 82] = "\x52\x00", [ 83] = "\x53\x00", -+ [ 84] = "\x54\x00", [ 85] = "\x55\x00", [ 86] = "\x56\x00", -+ [ 87] = "\x57\x00", [ 88] = "\x58\x00", [ 89] = "\x59\x00", -+ [ 90] = "\x5a\x00", [ 91] = "\x5b\x00", [ 92] = "\x5c\x00", -+ [ 93] = "\x5d\x00", [ 94] = "\x5e\x00", [ 95] = "\x5f\x00", -+ [ 96] = "\x60\x00", [ 97] = "\x61\x00", [ 98] = "\x62\x00", -+ [ 99] = "\x63\x00", [ 100] = "\x64\x00", [ 101] = "\x65\x00", -+ [ 102] = "\x66\x00", [ 103] = "\x67\x00", [ 104] = "\x68\x00", -+ [ 105] = "\x69\x00", [ 106] = "\x6a\x00", [ 107] = "\x6b\x00", -+ [ 108] = "\x6c\x00", [ 109] = "\x6d\x00", [ 110] = "\x6e\x00", -+ [ 111] = "\x6f\x00", [ 112] = "\x70\x00", [ 113] = "\x71\x00", -+ [ 114] = "\x72\x00", [ 115] = "\x73\x00", [ 116] = "\x74\x00", -+ [ 117] = "\x75\x00", [ 118] = "\x76\x00", [ 119] = "\x77\x00", -+ [ 120] = "\x78\x00", [ 121] = "\x79\x00", [ 122] = "\x7a\x00", -+ [ 123] = "\x7b\x00", [ 124] = "\x7c\x00", [ 125] = "\x7d\x00", -+ [ 126] = "\x7e\x00", [ 127] = "\x7f\x00", [ 162] = "\x81\x91", -+ [ 163] = "\x81\x92", [ 165] = "\x5c\x00", [ 167] = "\x81\x98", -+ [ 168] = "\x81\x4e", [ 172] = "\x81\xca", [ 176] = "\x81\x8b", -+ [ 177] = "\x81\x7d", [ 180] = "\x81\x4c", [ 182] = "\x81\xf7", -+ [ 215] = "\x81\x7e", [ 247] = "\x81\x80" -+}; -+ -+static const char from_ucs4_greek[193][2] = -+{ -+ /* start = 0x0391, end = 0x0451 */ -+ [ 0] = "\x83\x9f", [ 1] = "\x83\xa0", [ 2] = "\x83\xa1", -+ [ 3] = "\x83\xa2", [ 4] = "\x83\xa3", [ 5] = "\x83\xa4", -+ [ 6] = "\x83\xa5", [ 7] = "\x83\xa6", [ 8] = "\x83\xa7", -+ [ 9] = "\x83\xa8", [ 10] = "\x83\xa9", [ 11] = "\x83\xaa", -+ [ 12] = "\x83\xab", [ 13] = "\x83\xac", [ 14] = "\x83\xad", -+ [ 15] = "\x83\xae", [ 16] = "\x83\xaf", [ 18] = "\x83\xb0", -+ [ 19] = "\x83\xb1", [ 20] = "\x83\xb2", [ 21] = "\x83\xb3", -+ [ 22] = "\x83\xb4", [ 23] = "\x83\xb5", [ 24] = "\x83\xb6", -+ [ 32] = "\x83\xbf", [ 33] = "\x83\xc0", [ 34] = "\x83\xc1", -+ [ 35] = "\x83\xc2", [ 36] = "\x83\xc3", [ 37] = "\x83\xc4", -+ [ 38] = "\x83\xc5", [ 39] = "\x83\xc6", [ 40] = "\x83\xc7", -+ [ 41] = "\x83\xc8", [ 42] = "\x83\xc9", [ 43] = "\x83\xca", -+ [ 44] = "\x83\xcb", [ 45] = "\x83\xcc", [ 46] = "\x83\xcd", -+ [ 47] = "\x83\xce", [ 48] = "\x83\xcf", [ 50] = "\x83\xd0", -+ [ 51] = "\x83\xd1", [ 52] = "\x83\xd2", [ 53] = "\x83\xd3", -+ [ 54] = "\x83\xd4", [ 55] = "\x83\xd5", [ 56] = "\x83\xd6", -+ [ 112] = "\x84\x46", [ 127] = "\x84\x40", [ 128] = "\x84\x41", -+ [ 129] = "\x84\x42", [ 130] = "\x84\x43", [ 131] = "\x84\x44", -+ [ 132] = "\x84\x45", [ 133] = "\x84\x47", [ 134] = "\x84\x48", -+ [ 135] = "\x84\x49", [ 136] = "\x84\x4a", [ 137] = "\x84\x4b", -+ [ 138] = "\x84\x4c", [ 139] = "\x84\x4d", [ 140] = "\x84\x4e", -+ [ 141] = "\x84\x4f", [ 142] = "\x84\x50", [ 143] = "\x84\x51", -+ [ 144] = "\x84\x52", [ 145] = "\x84\x53", [ 146] = "\x84\x54", -+ [ 147] = "\x84\x55", [ 148] = "\x84\x56", [ 149] = "\x84\x57", -+ [ 150] = "\x84\x58", [ 151] = "\x84\x59", [ 152] = "\x84\x5a", -+ [ 153] = "\x84\x5b", [ 154] = "\x84\x5c", [ 155] = "\x84\x5d", -+ [ 156] = "\x84\x5e", [ 157] = "\x84\x5f", [ 158] = "\x84\x60", -+ [ 159] = "\x84\x70", [ 160] = "\x84\x71", [ 161] = "\x84\x72", -+ [ 162] = "\x84\x73", [ 163] = "\x84\x74", [ 164] = "\x84\x75", -+ [ 165] = "\x84\x77", [ 166] = "\x84\x78", [ 167] = "\x84\x79", -+ [ 168] = "\x84\x7a", [ 169] = "\x84\x7b", [ 170] = "\x84\x7c", -+ [ 171] = "\x84\x7d", [ 172] = "\x84\x7e", [ 173] = "\x84\x80", -+ [ 174] = "\x84\x81", [ 175] = "\x84\x82", [ 176] = "\x84\x83", -+ [ 177] = "\x84\x84", [ 178] = "\x84\x85", [ 179] = "\x84\x86", -+ [ 180] = "\x84\x87", [ 181] = "\x84\x88", [ 182] = "\x84\x89", -+ [ 183] = "\x84\x8a", [ 184] = "\x84\x8b", [ 185] = "\x84\x8c", -+ [ 186] = "\x84\x8d", [ 187] = "\x84\x8e", [ 188] = "\x84\x8f", -+ [ 189] = "\x84\x90", [ 190] = "\x84\x91", [ 192] = "\x84\x76" -+}; -+ -+static const char from_ucs4_cjk[32657][2] = -+{ -+ /* start = 0x2010, end = 0x9fa0 */ -+ [ 0] = "\x81\x5d", [ 4] = "\x81\x5c", [ 5] = "\x81\x5c", -+ [ 6] = "\x81\x61", [ 8] = "\x81\x65", [ 9] = "\x81\x66", -+ [ 12] = "\x81\x67", [ 13] = "\x81\x68", [ 16] = "\x81\xf5", -+ [ 17] = "\x81\xf6", [ 21] = "\x81\x64", [ 22] = "\x81\x63", -+ [ 32] = "\x81\xf1", [ 34] = "\x81\x8c", [ 35] = "\x81\x8d", -+ [ 43] = "\x81\xa6", [ 46] = "\x7e\x00", [ 243] = "\x81\x8e", -+ [ 262] = "\x87\x82", [ 273] = "\x87\x84", [ 283] = "\x81\xf0", -+ [ 336] = "\x87\x54", [ 337] = "\x87\x55", [ 338] = "\x87\x56", -+ [ 339] = "\x87\x57", [ 340] = "\x87\x58", [ 341] = "\x87\x59", -+ [ 342] = "\x87\x5a", [ 343] = "\x87\x5b", [ 344] = "\x87\x5c", -+ [ 345] = "\x87\x5d", [ 352] = "\xfa\x40", [ 353] = "\xfa\x41", -+ [ 354] = "\xfa\x42", [ 355] = "\xfa\x43", [ 356] = "\xfa\x44", -+ [ 357] = "\xfa\x45", [ 358] = "\xfa\x46", [ 359] = "\xfa\x47", -+ [ 360] = "\xfa\x48", [ 361] = "\xfa\x49", [ 384] = "\x81\xa9", -+ [ 385] = "\x81\xaa", [ 386] = "\x81\xa8", [ 387] = "\x81\xab", -+ [ 450] = "\x81\xcb", [ 452] = "\x81\xcc", [ 496] = "\x81\xcd", -+ [ 498] = "\x81\xdd", [ 499] = "\x81\xce", [ 503] = "\x81\xde", -+ [ 504] = "\x81\xb8", [ 507] = "\x81\xb9", [ 513] = "\x87\x94", -+ [ 514] = "\x81\x7c", [ 522] = "\x81\xe3", [ 525] = "\x81\xe5", -+ [ 526] = "\x81\x87", [ 527] = "\x87\x98", [ 528] = "\x81\xda", -+ [ 533] = "\x81\x61", [ 535] = "\x81\xc8", [ 536] = "\x81\xc9", -+ [ 537] = "\x81\xbf", [ 538] = "\x81\xbe", [ 539] = "\x81\xe7", -+ [ 540] = "\x81\xe8", [ 542] = "\x87\x93", [ 548] = "\x81\x88", -+ [ 549] = "\x81\xe6", [ 557] = "\x81\xe4", [ 578] = "\x81\xe0", -+ [ 592] = "\x81\x82", [ 593] = "\x81\xdf", [ 598] = "\x81\x85", -+ [ 599] = "\x81\x86", [ 602] = "\x81\xe1", [ 603] = "\x81\xe2", -+ [ 626] = "\x81\xbc", [ 627] = "\x81\xbd", [ 630] = "\x81\xba", -+ [ 631] = "\x81\xbb", [ 661] = "\x81\xdb", [ 687] = "\x87\x99", -+ [ 770] = "\x81\xdc", [ 1104] = "\x87\x40", [ 1105] = "\x87\x41", -+ [ 1106] = "\x87\x42", [ 1107] = "\x87\x43", [ 1108] = "\x87\x44", -+ [ 1109] = "\x87\x45", [ 1110] = "\x87\x46", [ 1111] = "\x87\x47", -+ [ 1112] = "\x87\x48", [ 1113] = "\x87\x49", [ 1114] = "\x87\x4a", -+ [ 1115] = "\x87\x4b", [ 1116] = "\x87\x4c", [ 1117] = "\x87\x4d", -+ [ 1118] = "\x87\x4e", [ 1119] = "\x87\x4f", [ 1120] = "\x87\x50", -+ [ 1121] = "\x87\x51", [ 1122] = "\x87\x52", [ 1123] = "\x87\x53", -+ [ 1264] = "\x84\x9f", [ 1265] = "\x84\xaa", [ 1266] = "\x84\xa0", -+ [ 1267] = "\x84\xab", [ 1276] = "\x84\xa1", [ 1279] = "\x84\xac", -+ [ 1280] = "\x84\xa2", [ 1283] = "\x84\xad", [ 1284] = "\x84\xa4", -+ [ 1287] = "\x84\xaf", [ 1288] = "\x84\xa3", [ 1291] = "\x84\xae", -+ [ 1292] = "\x84\xa5", [ 1293] = "\x84\xba", [ 1296] = "\x84\xb5", -+ [ 1299] = "\x84\xb0", [ 1300] = "\x84\xa7", [ 1301] = "\x84\xbc", -+ [ 1304] = "\x84\xb7", [ 1307] = "\x84\xb2", [ 1308] = "\x84\xa6", -+ [ 1311] = "\x84\xb6", [ 1312] = "\x84\xbb", [ 1315] = "\x84\xb1", -+ [ 1316] = "\x84\xa8", [ 1319] = "\x84\xb8", [ 1320] = "\x84\xbd", -+ [ 1323] = "\x84\xb3", [ 1324] = "\x84\xa9", [ 1327] = "\x84\xb9", -+ [ 1330] = "\x84\xbe", [ 1339] = "\x84\xb4", [ 1424] = "\x81\xa1", -+ [ 1425] = "\x81\xa0", [ 1442] = "\x81\xa3", [ 1443] = "\x81\xa2", -+ [ 1452] = "\x81\xa5", [ 1453] = "\x81\xa4", [ 1462] = "\x81\x9f", -+ [ 1463] = "\x81\x9e", [ 1467] = "\x81\x9b", [ 1470] = "\x81\x9d", -+ [ 1471] = "\x81\x9c", [ 1503] = "\x81\xfc", [ 1525] = "\x81\x9a", -+ [ 1526] = "\x81\x99", [ 1584] = "\x81\x8a", [ 1586] = "\x81\x89", -+ [ 1626] = "\x81\xf4", [ 1629] = "\x81\xf3", [ 1631] = "\x81\xf2", -+ [ 4080] = "\x81\x40", [ 4081] = "\x81\x41", [ 4082] = "\x81\x42", -+ [ 4083] = "\x81\x56", [ 4085] = "\x81\x58", [ 4086] = "\x81\x59", -+ [ 4087] = "\x81\x5a", [ 4088] = "\x81\x71", [ 4089] = "\x81\x72", -+ [ 4090] = "\x81\x73", [ 4091] = "\x81\x74", [ 4092] = "\x81\x75", -+ [ 4093] = "\x81\x76", [ 4094] = "\x81\x77", [ 4095] = "\x81\x78", -+ [ 4096] = "\x81\x79", [ 4097] = "\x81\x7a", [ 4098] = "\x81\xa7", -+ [ 4099] = "\x81\xac", [ 4100] = "\x81\x6b", [ 4101] = "\x81\x6c", -+ [ 4108] = "\x81\x60", [ 4109] = "\x87\x80", [ 4111] = "\x87\x81", -+ [ 4145] = "\x82\x9f", [ 4146] = "\x82\xa0", [ 4147] = "\x82\xa1", -+ [ 4148] = "\x82\xa2", [ 4149] = "\x82\xa3", [ 4150] = "\x82\xa4", -+ [ 4151] = "\x82\xa5", [ 4152] = "\x82\xa6", [ 4153] = "\x82\xa7", -+ [ 4154] = "\x82\xa8", [ 4155] = "\x82\xa9", [ 4156] = "\x82\xaa", -+ [ 4157] = "\x82\xab", [ 4158] = "\x82\xac", [ 4159] = "\x82\xad", -+ [ 4160] = "\x82\xae", [ 4161] = "\x82\xaf", [ 4162] = "\x82\xb0", -+ [ 4163] = "\x82\xb1", [ 4164] = "\x82\xb2", [ 4165] = "\x82\xb3", -+ [ 4166] = "\x82\xb4", [ 4167] = "\x82\xb5", [ 4168] = "\x82\xb6", -+ [ 4169] = "\x82\xb7", [ 4170] = "\x82\xb8", [ 4171] = "\x82\xb9", -+ [ 4172] = "\x82\xba", [ 4173] = "\x82\xbb", [ 4174] = "\x82\xbc", -+ [ 4175] = "\x82\xbd", [ 4176] = "\x82\xbe", [ 4177] = "\x82\xbf", -+ [ 4178] = "\x82\xc0", [ 4179] = "\x82\xc1", [ 4180] = "\x82\xc2", -+ [ 4181] = "\x82\xc3", [ 4182] = "\x82\xc4", [ 4183] = "\x82\xc5", -+ [ 4184] = "\x82\xc6", [ 4185] = "\x82\xc7", [ 4186] = "\x82\xc8", -+ [ 4187] = "\x82\xc9", [ 4188] = "\x82\xca", [ 4189] = "\x82\xcb", -+ [ 4190] = "\x82\xcc", [ 4191] = "\x82\xcd", [ 4192] = "\x82\xce", -+ [ 4193] = "\x82\xcf", [ 4194] = "\x82\xd0", [ 4195] = "\x82\xd1", -+ [ 4196] = "\x82\xd2", [ 4197] = "\x82\xd3", [ 4198] = "\x82\xd4", -+ [ 4199] = "\x82\xd5", [ 4200] = "\x82\xd6", [ 4201] = "\x82\xd7", -+ [ 4202] = "\x82\xd8", [ 4203] = "\x82\xd9", [ 4204] = "\x82\xda", -+ [ 4205] = "\x82\xdb", [ 4206] = "\x82\xdc", [ 4207] = "\x82\xdd", -+ [ 4208] = "\x82\xde", [ 4209] = "\x82\xdf", [ 4210] = "\x82\xe0", -+ [ 4211] = "\x82\xe1", [ 4212] = "\x82\xe2", [ 4213] = "\x82\xe3", -+ [ 4214] = "\x82\xe4", [ 4215] = "\x82\xe5", [ 4216] = "\x82\xe6", -+ [ 4217] = "\x82\xe7", [ 4218] = "\x82\xe8", [ 4219] = "\x82\xe9", -+ [ 4220] = "\x82\xea", [ 4221] = "\x82\xeb", [ 4222] = "\x82\xec", -+ [ 4223] = "\x82\xed", [ 4224] = "\x82\xee", [ 4225] = "\x82\xef", -+ [ 4226] = "\x82\xf0", [ 4227] = "\x82\xf1", [ 4235] = "\x81\x4a", -+ [ 4236] = "\x81\x4b", [ 4237] = "\x81\x54", [ 4238] = "\x81\x55", -+ [ 4241] = "\x83\x40", [ 4242] = "\x83\x41", [ 4243] = "\x83\x42", -+ [ 4244] = "\x83\x43", [ 4245] = "\x83\x44", [ 4246] = "\x83\x45", -+ [ 4247] = "\x83\x46", [ 4248] = "\x83\x47", [ 4249] = "\x83\x48", -+ [ 4250] = "\x83\x49", [ 4251] = "\x83\x4a", [ 4252] = "\x83\x4b", -+ [ 4253] = "\x83\x4c", [ 4254] = "\x83\x4d", [ 4255] = "\x83\x4e", -+ [ 4256] = "\x83\x4f", [ 4257] = "\x83\x50", [ 4258] = "\x83\x51", -+ [ 4259] = "\x83\x52", [ 4260] = "\x83\x53", [ 4261] = "\x83\x54", -+ [ 4262] = "\x83\x55", [ 4263] = "\x83\x56", [ 4264] = "\x83\x57", -+ [ 4265] = "\x83\x58", [ 4266] = "\x83\x59", [ 4267] = "\x83\x5a", -+ [ 4268] = "\x83\x5b", [ 4269] = "\x83\x5c", [ 4270] = "\x83\x5d", -+ [ 4271] = "\x83\x5e", [ 4272] = "\x83\x5f", [ 4273] = "\x83\x60", -+ [ 4274] = "\x83\x61", [ 4275] = "\x83\x62", [ 4276] = "\x83\x63", -+ [ 4277] = "\x83\x64", [ 4278] = "\x83\x65", [ 4279] = "\x83\x66", -+ [ 4280] = "\x83\x67", [ 4281] = "\x83\x68", [ 4282] = "\x83\x69", -+ [ 4283] = "\x83\x6a", [ 4284] = "\x83\x6b", [ 4285] = "\x83\x6c", -+ [ 4286] = "\x83\x6d", [ 4287] = "\x83\x6e", [ 4288] = "\x83\x6f", -+ [ 4289] = "\x83\x70", [ 4290] = "\x83\x71", [ 4291] = "\x83\x72", -+ [ 4292] = "\x83\x73", [ 4293] = "\x83\x74", [ 4294] = "\x83\x75", -+ [ 4295] = "\x83\x76", [ 4296] = "\x83\x77", [ 4297] = "\x83\x78", -+ [ 4298] = "\x83\x79", [ 4299] = "\x83\x7a", [ 4300] = "\x83\x7b", -+ [ 4301] = "\x83\x7c", [ 4302] = "\x83\x7d", [ 4303] = "\x83\x7e", -+ [ 4304] = "\x83\x80", [ 4305] = "\x83\x81", [ 4306] = "\x83\x82", -+ [ 4307] = "\x83\x83", [ 4308] = "\x83\x84", [ 4309] = "\x83\x85", -+ [ 4310] = "\x83\x86", [ 4311] = "\x83\x87", [ 4312] = "\x83\x88", -+ [ 4313] = "\x83\x89", [ 4314] = "\x83\x8a", [ 4315] = "\x83\x8b", -+ [ 4316] = "\x83\x8c", [ 4317] = "\x83\x8d", [ 4318] = "\x83\x8e", -+ [ 4319] = "\x83\x8f", [ 4320] = "\x83\x90", [ 4321] = "\x83\x91", -+ [ 4322] = "\x83\x92", [ 4323] = "\x83\x93", [ 4324] = "\x83\x94", -+ [ 4325] = "\x83\x95", [ 4326] = "\x83\x96", [ 4331] = "\x81\x45", -+ [ 4332] = "\x81\x5b", [ 4333] = "\x81\x52", [ 4334] = "\x81\x53", -+ [ 4641] = "\x87\x8a", [ 4642] = "\x87\x8b", [ 4649] = "\x87\x8c", -+ [ 4756] = "\x87\x85", [ 4757] = "\x87\x86", [ 4758] = "\x87\x87", -+ [ 4759] = "\x87\x88", [ 4760] = "\x87\x89", [ 4851] = "\x87\x65", -+ [ 4861] = "\x87\x69", [ 4868] = "\x87\x60", [ 4872] = "\x87\x63", -+ [ 4882] = "\x87\x61", [ 4883] = "\x87\x6b", [ 4886] = "\x87\x6a", -+ [ 4887] = "\x87\x64", [ 4891] = "\x87\x6c", [ 4902] = "\x87\x66", -+ [ 4907] = "\x87\x6e", [ 4921] = "\x87\x5f", [ 4922] = "\x87\x6d", -+ [ 4925] = "\x87\x62", [ 4929] = "\x87\x67", [ 4935] = "\x87\x68", -+ [ 4971] = "\x87\x7e", [ 4972] = "\x87\x8f", [ 4973] = "\x87\x8e", -+ [ 4974] = "\x87\x8d", [ 4990] = "\x87\x72", [ 4991] = "\x87\x73", -+ [ 5004] = "\x87\x6f", [ 5005] = "\x87\x70", [ 5006] = "\x87\x71", -+ [ 5009] = "\x87\x75", [ 5044] = "\x87\x74", [ 5053] = "\x87\x83", -+ [11760] = "\x88\xea", [11761] = "\x92\x9a", [11763] = "\x8e\xb5", -+ [11767] = "\x96\x9c", [11768] = "\x8f\xe4", [11769] = "\x8e\x4f", -+ [11770] = "\x8f\xe3", [11771] = "\x89\xba", [11773] = "\x95\x73", -+ [11774] = "\x97\x5e", [11776] = "\x98\xa0", [11777] = "\x89\x4e", -+ [11780] = "\x8a\x8e", [11781] = "\x98\xa1", [11782] = "\x90\xa2", -+ [11783] = "\x99\xc0", [11784] = "\x8b\x75", [11785] = "\x95\xb8", -+ [11790] = "\x8f\xe5", [11793] = "\x97\xbc", [11798] = "\x95\xc0", -+ [11800] = "\xfa\x68", [11802] = "\x98\xa2", [11805] = "\x92\x86", -+ [11809] = "\x98\xa3", [11810] = "\x8b\xf8", [11814] = "\x98\xa4", -+ [11816] = "\x8a\xdb", [11817] = "\x92\x4f", [11819] = "\x8e\xe5", -+ [11820] = "\x98\xa5", [11823] = "\x98\xa6", [11826] = "\x98\xa7", -+ [11827] = "\x94\x54", [11829] = "\x8b\x76", [11835] = "\x94\x56", -+ [11837] = "\x93\xe1", [11838] = "\x8c\xc1", [11839] = "\x96\x52", -+ [11845] = "\xe5\x68", [11846] = "\x98\xa8", [11847] = "\x8f\xe6", -+ [11848] = "\x98\xa9", [11849] = "\x89\xb3", [11853] = "\x8b\xe3", -+ [11854] = "\x8c\xee", [11855] = "\x96\xe7", [11858] = "\x9b\xa4", -+ [11873] = "\x97\x90", [11875] = "\x93\xfb", [11886] = "\x8a\xa3", -+ [11888] = "\x8b\x54", [11890] = "\x98\xaa", [11893] = "\x98\xab", -+ [11894] = "\x97\xb9", [11896] = "\x97\x5c", [11897] = "\x91\x88", -+ [11898] = "\x98\xad", [11899] = "\x8e\x96", [11900] = "\x93\xf1", -+ [11902] = "\x98\xb0", [11905] = "\x89\x5d", [11906] = "\x8c\xdd", -+ [11908] = "\x8c\xdc", [11909] = "\x88\xe4", [11912] = "\x98\x6a", -+ [11913] = "\x98\x69", [11915] = "\x8d\xb1", [11916] = "\x88\x9f", -+ [11918] = "\x98\xb1", [11919] = "\x98\xb2", [11920] = "\x98\xb3", -+ [11921] = "\x96\x53", [11922] = "\x98\xb4", [11924] = "\x8c\xf0", -+ [11925] = "\x88\xe5", [11926] = "\x96\x92", [11928] = "\x8b\x9c", -+ [11931] = "\x8b\x9d", [11932] = "\x8b\x9e", [11933] = "\x92\xe0", -+ [11934] = "\x97\xba", [11936] = "\x98\xb5", [11939] = "\x98\xb6", -+ [11942] = "\x98\xb7", [11946] = "\x90\x6c", [11952] = "\x8f\x59", -+ [11953] = "\x90\x6d", [11954] = "\x98\xbc", [11956] = "\x98\xba", -+ [11958] = "\x98\xbb", [11959] = "\x8b\x77", [11962] = "\x8d\xa1", -+ [11963] = "\x89\xee", [11965] = "\x98\xb9", [11966] = "\x98\xb8", -+ [11967] = "\x95\xa7", [11972] = "\x8e\x65", [11973] = "\x8e\x64", -+ [11974] = "\x91\xbc", [11975] = "\x98\xbd", [11976] = "\x95\x74", -+ [11977] = "\x90\xe5", [11981] = "\x81\x57", [11982] = "\x98\xbe", -+ [11983] = "\x98\xc0", [11985] = "\xfa\x69", [11987] = "\x91\xe3", -+ [11988] = "\x97\xdf", [11989] = "\x88\xc8", [11997] = "\x98\xbf", -+ [11998] = "\x89\xbc", [12000] = "\x8b\xc2", [12002] = "\x92\x87", -+ [12006] = "\x8c\x8f", [12007] = "\x98\xc1", [12011] = "\x94\x43", -+ [12012] = "\xfa\x6a", [12016] = "\xfa\x6b", [12017] = "\x8a\xe9", -+ [12019] = "\xfa\x6c", [12025] = "\x98\xc2", [12026] = "\x88\xc9", -+ [12029] = "\x8c\xde", [12030] = "\x8a\xea", [12031] = "\x95\x9a", -+ [12032] = "\x94\xb0", [12033] = "\x8b\x78", [12042] = "\x89\xef", -+ [12044] = "\x98\xe5", [12045] = "\x93\x60", [12063] = "\x94\x8c", -+ [12064] = "\x98\xc4", [12068] = "\x94\xba", [12070] = "\x97\xe0", -+ [12072] = "\x90\x4c", [12073] = "\xfa\x6d", [12074] = "\x8e\x66", -+ [12076] = "\x8e\x97", [12077] = "\x89\xbe", [12083] = "\x92\xcf", -+ [12086] = "\x92\x41", [12087] = "\x98\xc8", [12093] = "\x88\xca", -+ [12094] = "\x92\xe1", [12095] = "\x8f\x5a", [12096] = "\x8d\xb2", -+ [12097] = "\x97\x43", [12099] = "\x91\xcc", [12101] = "\x89\xbd", -+ [12102] = "\xfa\x6e", [12103] = "\x98\xc7", [12105] = "\x97\x5d", -+ [12106] = "\x98\xc3", [12107] = "\x98\xc5", [12108] = "\x8d\xec", -+ [12109] = "\x98\xc6", [12110] = "\x9b\x43", [12121] = "\x98\xce", -+ [12127] = "\x98\xd1", [12128] = "\x98\xcf", [12131] = "\x89\xc0", -+ [12133] = "\x95\xb9", [12134] = "\x98\xc9", [12139] = "\x98\xcd", -+ [12140] = "\x8c\xf1", [12143] = "\x8e\x67", [12147] = "\x8a\xa4", -+ [12150] = "\x98\xd2", [12152] = "\x98\xca", [12154] = "\xfa\x70", -+ [12155] = "\x97\xe1", [12157] = "\x8e\x98", [12159] = "\x98\xcb", -+ [12161] = "\x98\xd0", [12162] = "\xfa\x6f", [12164] = "\xfa\x72", -+ [12166] = "\x98\xd3", [12168] = "\x98\xcc", [12170] = "\xfa\x71", -+ [12171] = "\x8b\x9f", [12173] = "\x88\xcb", [12176] = "\x8b\xa0", -+ [12177] = "\x89\xbf", [12187] = "\x9b\x44", [12189] = "\x96\x99", -+ [12190] = "\x95\x8e", [12191] = "\x8c\xf2", [12197] = "\x90\x4e", -+ [12198] = "\x97\xb5", [12207] = "\x95\xd6", [12210] = "\x8c\x57", -+ [12211] = "\x91\xa3", [12212] = "\x89\xe2", [12217] = "\xfa\x61", -+ [12218] = "\x8f\x72", [12221] = "\xfa\x73", [12222] = "\x98\xd7", -+ [12224] = "\x98\xdc", [12225] = "\x98\xda", [12228] = "\x98\xd5", -+ [12231] = "\x91\xad", [12232] = "\x98\xd8", [12234] = "\x98\xdb", -+ [12235] = "\x98\xd9", [12237] = "\x95\xdb", [12239] = "\x98\xd6", -+ [12241] = "\x90\x4d", [12243] = "\x96\x93", [12244] = "\x98\xdd", -+ [12245] = "\x98\xde", [12254] = "\x8f\x43", [12255] = "\x98\xeb", -+ [12259] = "\x94\x6f", [12261] = "\x95\x55", [12262] = "\x98\xe6", -+ [12264] = "\x95\xee", [12266] = "\x89\xb4", [12270] = "\x98\xea", -+ [12271] = "\xfa\x76", [12277] = "\x98\xe4", [12278] = "\x98\xed", -+ [12281] = "\x91\x71", [12283] = "\x8c\xc2", [12285] = "\x94\x7b", -+ [12287] = "\xe0\xc5", [12289] = "\x98\xec", [12290] = "\x93\x7c", -+ [12292] = "\x98\xe1", [12294] = "\x8c\xf4", [12297] = "\x8c\xf3", -+ [12298] = "\x98\xdf", [12302] = "\xfa\x77", [12303] = "\x8e\xd8", -+ [12305] = "\x98\xe7", [12306] = "\xfa\x75", [12307] = "\x95\xed", -+ [12308] = "\x92\x6c", [12309] = "\x98\xe3", [12310] = "\x8c\x91", -+ [12312] = "\x98\xe0", [12313] = "\x98\xe8", [12314] = "\x98\xe2", -+ [12315] = "\x97\xcf", [12316] = "\x98\xe9", [12317] = "\x98\x60", -+ [12326] = "\x8b\xe4", [12329] = "\x8c\x90", [12336] = "\xfa\x74", -+ [12338] = "\xfa\x7a", [12339] = "\x98\xee", [12342] = "\xfa\x78", -+ [12343] = "\x98\xef", [12344] = "\x98\xf3", [12345] = "\x88\xcc", -+ [12351] = "\x95\xce", [12352] = "\x98\xf2", [12357] = "\x98\xf1", -+ [12358] = "\x98\xf5", [12362] = "\x98\xf4", [12364] = "\x92\xe2", -+ [12373] = "\x8c\x92", [12380] = "\x98\xf6", [12384] = "\xfa\x79", -+ [12386] = "\x8e\xc3", [12388] = "\x91\xa4", [12389] = "\x92\xe3", -+ [12390] = "\x8b\xf4", [12392] = "\x98\xf7", [12397] = "\x8b\x55", -+ [12400] = "\x98\xf8", [12405] = "\x98\xfa", [12413] = "\x96\x54", -+ [12417] = "\x8c\x86", [12420] = "\xfa\x7b", [12424] = "\x8e\x50", -+ [12425] = "\x94\xf5", [12426] = "\x98\xf9", [12444] = "\x8d\xc3", -+ [12445] = "\x97\x62", [12450] = "\x98\xfc", [12451] = "\x99\x42", -+ [12452] = "\x98\xfb", [12453] = "\x8d\xc2", [12455] = "\x8f\x9d", -+ [12462] = "\x8c\x58", [12466] = "\x99\x43", [12469] = "\x8b\xcd", -+ [12473] = "\x99\x40", [12474] = "\x99\x41", [12477] = "\x93\xad", -+ [12479] = "\x91\x9c", [12481] = "\x8b\xa1", [12485] = "\x96\x6c", -+ [12486] = "\x99\x44", [12488] = "\xfa\x7d", [12490] = "\x97\xbb", -+ [12494] = "\x99\x45", [12499] = "\x99\x48", [12501] = "\x99\x46", -+ [12503] = "\x91\x6d", [12509] = "\x99\x47", [12510] = "\x99\x49", -+ [12516] = "\xfa\x7c", [12517] = "\x99\x4b", [12521] = "\x99\x4a", -+ [12523] = "\x95\xc6", [12528] = "\x8b\x56", [12529] = "\x99\x4d", -+ [12530] = "\x99\x4e", [12532] = "\x89\xad", [12537] = "\x99\x4c", -+ [12546] = "\x8e\xf2", [12548] = "\x99\x51", [12549] = "\x99\x50", -+ [12550] = "\x99\x4f", [12552] = "\x98\xd4", [12554] = "\x99\x52", -+ [12559] = "\x8f\x9e", [12561] = "\x99\x53", [12570] = "\x97\x44", -+ [12578] = "\x96\xd7", [12583] = "\x99\x55", [12586] = "\x99\x54", -+ [12587] = "\x99\x57", [12588] = "\x99\x56", [12591] = "\x99\x58", -+ [12592] = "\x99\x59", [12593] = "\x88\xf2", [12595] = "\x8c\xb3", -+ [12596] = "\x8c\x5a", [12597] = "\x8f\x5b", [12598] = "\x92\x9b", -+ [12599] = "\x8b\xa2", [12600] = "\x90\xe6", [12601] = "\x8c\xf5", -+ [12602] = "\xfa\x7e", [12603] = "\x8d\x8e", [12604] = "\x99\x5b", -+ [12605] = "\x96\xc6", [12606] = "\x93\x65", [12608] = "\x8e\x99", -+ [12610] = "\x99\x5a", [12612] = "\x99\x5c", [12618] = "\x93\x7d", -+ [12620] = "\x8a\x95", [12626] = "\x99\x5d", [12628] = "\xfa\x80", -+ [12629] = "\x93\xfc", [12632] = "\x91\x53", [12633] = "\x99\x5f", -+ [12634] = "\x99\x60", [12635] = "\x94\xaa", [12636] = "\x8c\xf6", -+ [12637] = "\x98\x5a", [12638] = "\x99\x61", [12641] = "\x8b\xa4", -+ [12645] = "\x95\xba", [12646] = "\x91\xb4", [12647] = "\x8b\xef", -+ [12648] = "\x93\x54", [12652] = "\x8c\x93", [12656] = "\x99\x62", -+ [12658] = "\x99\x63", [12661] = "\x93\xe0", [12662] = "\x89\x7e", -+ [12665] = "\x99\x66", [12666] = "\x8d\xfb", [12668] = "\x99\x65", -+ [12669] = "\x8d\xc4", [12671] = "\x99\x67", [12672] = "\xe3\xec", -+ [12673] = "\x99\x68", [12674] = "\x96\x60", [12675] = "\x99\x69", -+ [12677] = "\x99\x6a", [12678] = "\x99\x6b", [12679] = "\x8f\xe7", -+ [12681] = "\x8e\xca", [12685] = "\xfa\x81", [12688] = "\x8a\xa5", -+ [12690] = "\x99\x6e", [12692] = "\x99\x6c", [12693] = "\x96\xbb", -+ [12694] = "\x99\x6d", [12696] = "\x95\x79", [12697] = "\x99\x6f", -+ [12698] = "\x99\x70", [12699] = "\x99\x71", [12700] = "\x93\x7e", -+ [12704] = "\x99\x75", [12705] = "\x99\x73", [12706] = "\x99\x74", -+ [12707] = "\x99\x72", [12708] = "\x8d\xe1", [12709] = "\x99\x76", -+ [12710] = "\x96\xe8", [12711] = "\x97\xe2", [12717] = "\x99\x77", -+ [12718] = "\xfa\x82", [12724] = "\x90\xa6", [12725] = "\x99\x78", -+ [12726] = "\x8f\x79", [12729] = "\x99\x79", [12731] = "\x92\x9c", -+ [12732] = "\x97\xbd", [12733] = "\x93\x80", [12742] = "\x99\xc3", -+ [12747] = "\x99\x7a", [12748] = "\xea\xa3", [12749] = "\x8b\xc3", -+ [12752] = "\x99\x7b", [12753] = "\x96\x7d", [12758] = "\x8f\x88", -+ [12759] = "\x91\xfa", [12761] = "\x99\x7d", [12762] = "\x93\xe2", -+ [12764] = "\xfa\x83", [12765] = "\x99\x7e", [12768] = "\x99\x80", -+ [12769] = "\x8a\x4d", [12773] = "\x99\x81", [12774] = "\x8b\xa5", -+ [12776] = "\x93\xca", [12777] = "\x89\x9a", [12778] = "\x8f\x6f", -+ [12781] = "\x94\x9f", [12782] = "\x99\x82", [12784] = "\x93\x81", -+ [12787] = "\x90\x6e", [12788] = "\x99\x83", [12790] = "\x95\xaa", -+ [12791] = "\x90\xd8", [12792] = "\x8a\xa0", [12794] = "\x8a\xa7", -+ [12795] = "\x99\x84", [12798] = "\x99\x86", [12801] = "\x8c\x59", -+ [12804] = "\x99\x85", [12805] = "\xfa\x84", [12807] = "\x97\xf1", -+ [12813] = "\x8f\x89", [12820] = "\x94\xbb", [12821] = "\x95\xca", -+ [12823] = "\x99\x87", [12825] = "\x97\x98", [12826] = "\x99\x88", -+ [12830] = "\x99\x89", [12832] = "\x93\x9e", [12835] = "\x99\x8a", -+ [12838] = "\x90\xa7", [12839] = "\x8d\xfc", [12840] = "\x8c\x94", -+ [12841] = "\x99\x8b", [12842] = "\x8e\x68", [12843] = "\x8d\x8f", -+ [12851] = "\x92\xe4", [12852] = "\x99\x8d", [12855] = "\x91\xa5", -+ [12858] = "\x8d\xed", [12859] = "\x99\x8e", [12860] = "\x99\x8f", -+ [12861] = "\x91\x4f", [12863] = "\x99\x8c", [12868] = "\x99\x91", -+ [12870] = "\x96\x55", [12875] = "\x8d\x84", [12878] = "\x99\x90", -+ [12883] = "\x8c\x95", [12884] = "\x8d\xdc", [12885] = "\x94\x8d", -+ [12889] = "\x99\x94", [12890] = "\x99\x92", [12895] = "\x95\x9b", -+ [12896] = "\x8f\xe8", [12897] = "\x99\x9b", [12898] = "\x8a\x84", -+ [12899] = "\x99\x95", [12900] = "\x99\x93", [12901] = "\x91\x6e", -+ [12909] = "\x99\x97", [12911] = "\x99\x96", [12915] = "\x8a\x63", -+ [12919] = "\x8c\x80", [12920] = "\x99\x9c", [12921] = "\x97\xab", -+ [12925] = "\x99\x98", [12929] = "\x99\x9d", [12930] = "\x99\x9a", -+ [12932] = "\x99\x99", [12939] = "\x97\xcd", [12940] = "\xfa\x85", -+ [12943] = "\x8c\xf7", [12944] = "\x89\xc1", [12947] = "\x97\xf2", -+ [12950] = "\xfa\x86", [12953] = "\x8f\x95", [12954] = "\x93\x77", -+ [12955] = "\x8d\x85", [12956] = "\x99\xa0", [12957] = "\x99\xa1", -+ [12959] = "\xfb\x77", [12961] = "\x97\xe3", [12964] = "\x98\x4a", -+ [12965] = "\x99\xa3", [12969] = "\x8c\xf8", [12972] = "\x99\xa2", -+ [12974] = "\x8a\x4e", [12976] = "\xfa\x87", [12977] = "\x99\xa4", -+ [12979] = "\x96\x75", [12981] = "\x92\xba", [12983] = "\x97\x45", -+ [12985] = "\x95\xd7", [12989] = "\x99\xa5", [12994] = "\xe8\xd3", -+ [12997] = "\x93\xae", [12999] = "\x99\xa6", [13000] = "\x8a\xa8", -+ [13001] = "\x96\xb1", [13003] = "\xfa\x88", [13005] = "\x8f\x9f", -+ [13006] = "\x99\xa7", [13007] = "\x95\xe5", [13008] = "\x99\xab", -+ [13010] = "\x90\xa8", [13011] = "\x99\xa8", [13012] = "\x8b\xce", -+ [13014] = "\x99\xa9", [13015] = "\x8a\xa9", [13026] = "\x8c\x4d", -+ [13027] = "\x99\xac", [13029] = "\x99\xad", [13032] = "\x99\xae", -+ [13033] = "\x99\xaf", [13034] = "\x8e\xd9", [13038] = "\x8c\xf9", -+ [13039] = "\x96\xdc", [13040] = "\xfa\x89", [13041] = "\x96\xe6", -+ [13042] = "\x93\xf5", [13045] = "\x95\xef", [13046] = "\x99\xb0", -+ [13047] = "\xfa\x8a", [13048] = "\x99\xb1", [13053] = "\x99\xb3", -+ [13055] = "\x99\xb5", [13056] = "\x99\xb4", [13061] = "\x99\xb6", -+ [13062] = "\x89\xbb", [13063] = "\x96\x6b", [13065] = "\x8d\xfa", -+ [13066] = "\x99\xb7", [13069] = "\x91\x78", [13072] = "\x8f\xa0", -+ [13073] = "\x8b\xa7", [13075] = "\x99\xb8", [13076] = "\xfa\x8b", -+ [13082] = "\x94\xd9", [13087] = "\x99\xb9", [13089] = "\x99\xba", -+ [13091] = "\x99\xbb", [13096] = "\x99\xbc", [13097] = "\x95\x43", -+ [13098] = "\x8b\xe6", [13099] = "\x88\xe3", [13103] = "\x93\xbd", -+ [13104] = "\x99\xbd", [13105] = "\x8f\x5c", [13107] = "\x90\xe7", -+ [13109] = "\x99\xbf", [13110] = "\x99\xbe", [13111] = "\x8f\xa1", -+ [13112] = "\x8c\xdf", [13113] = "\x99\xc1", [13114] = "\x94\xbc", -+ [13117] = "\x99\xc2", [13121] = "\x94\xda", [13122] = "\x91\xb2", -+ [13123] = "\x91\xec", [13124] = "\x8b\xa6", [13127] = "\x93\xec", -+ [13128] = "\x92\x50", [13130] = "\x94\x8e", [13132] = "\x96\x6d", -+ [13134] = "\x99\xc4", [13136] = "\x90\xe8", [13142] = "\x8c\x54", -+ [13145] = "\x99\xc5", [13150] = "\x99\xc6", [13151] = "\x89\x4b", -+ [13152] = "\x88\xf3", [13153] = "\x8a\xeb", [13154] = "\xfa\x8c", -+ [13155] = "\x91\xa6", [13156] = "\x8b\x70", [13157] = "\x97\x91", -+ [13159] = "\x99\xc9", [13160] = "\x89\xb5", [13163] = "\x99\xc8", -+ [13167] = "\x8b\xa8", [13170] = "\x99\xca", [13172] = "\x96\xef", -+ [13187] = "\xfa\x8d", [13190] = "\x99\xcb", [13192] = "\x97\xd0", -+ [13194] = "\x8c\xfa", [13199] = "\x8c\xb4", [13200] = "\x99\xcc", -+ [13205] = "\x99\xce", [13206] = "\x99\xcd", [13208] = "\x90\x7e", -+ [13209] = "\x89\x58", [13213] = "\x89\x7d", [13214] = "\x99\xcf", -+ [13216] = "\x99\xd0", [13218] = "\xfa\x8e", [13219] = "\x8c\xb5", -+ [13222] = "\x99\xd1", [13227] = "\x8b\x8e", [13234] = "\x8e\x51", -+ [13235] = "\x99\xd2", [13240] = "\x96\x94", [13241] = "\x8d\xb3", -+ [13242] = "\x8b\x79", [13243] = "\x97\x46", [13244] = "\x91\x6f", -+ [13245] = "\x94\xbd", [13246] = "\x8e\xfb", [13252] = "\x8f\x66", -+ [13254] = "\x8e\xe6", [13255] = "\x8e\xf3", [13257] = "\x8f\x96", -+ [13259] = "\x94\xbe", [13261] = "\xfa\x8f", [13263] = "\x99\xd5", -+ [13265] = "\x89\x62", [13266] = "\x91\x70", [13267] = "\x8c\xfb", -+ [13268] = "\x8c\xc3", [13269] = "\x8b\xe5", [13272] = "\x99\xd9", -+ [13273] = "\x92\x40", [13274] = "\x91\xfc", [13275] = "\x8b\xa9", -+ [13276] = "\x8f\xa2", [13277] = "\x99\xda", [13278] = "\x99\xd8", -+ [13279] = "\x89\xc2", [13280] = "\x91\xe4", [13281] = "\x8e\xb6", -+ [13282] = "\x8e\x6a", [13283] = "\x89\x45", [13286] = "\x8a\x90", -+ [13287] = "\x8d\x86", [13288] = "\x8e\x69", [13290] = "\x99\xdb", -+ [13297] = "\x99\xdc", [13299] = "\x8b\x68", [13300] = "\x8a\x65", -+ [13304] = "\x8d\x87", [13305] = "\x8b\x67", [13306] = "\x92\xdd", -+ [13307] = "\x89\x44", [13308] = "\x93\xaf", [13309] = "\x96\xbc", -+ [13310] = "\x8d\x40", [13311] = "\x97\x99", [13312] = "\x93\x66", -+ [13313] = "\x8c\xfc", [13323] = "\x8c\x4e", [13325] = "\x99\xe5", -+ [13327] = "\x8b\xe1", [13328] = "\x96\x69", [13334] = "\x94\xdb", -+ [13337] = "\x99\xe4", [13339] = "\x8a\xdc", [13340] = "\x99\xdf", -+ [13341] = "\x99\xe0", [13342] = "\x99\xe2", [13350] = "\x99\xe3", -+ [13352] = "\x8b\x7a", [13353] = "\x90\x81", [13355] = "\x95\xab", -+ [13356] = "\x99\xe1", [13357] = "\x99\xdd", [13358] = "\x8c\xe1", -+ [13360] = "\x99\xde", [13362] = "\x98\x43", [13366] = "\x95\xf0", -+ [13368] = "\x92\xe6", [13369] = "\x8c\xe0", [13370] = "\x8d\x90", -+ [13374] = "\x99\xe6", [13377] = "\x93\xdb", [13391] = "\x99\xea", -+ [13400] = "\x8e\xfc", [13402] = "\x8e\xf4", [13408] = "\x99\xed", -+ [13409] = "\x99\xeb", [13411] = "\x96\xa1", [13413] = "\x99\xe8", -+ [13414] = "\x99\xf1", [13415] = "\x99\xec", [13419] = "\x99\xef", -+ [13420] = "\x8c\xc4", [13421] = "\x96\xbd", [13424] = "\x99\xf0", -+ [13428] = "\x99\xf2", [13430] = "\x99\xf4", [13434] = "\xfa\x92", -+ [13435] = "\x8d\xee", [13436] = "\x98\x61", [13438] = "\x99\xe9", -+ [13439] = "\x99\xe7", [13440] = "\x99\xf3", [13442] = "\x99\xee", -+ [13452] = "\xfa\x91", [13458] = "\x99\xf6", [13460] = "\x9a\x42", -+ [13461] = "\x99\xf8", [13464] = "\x99\xfc", [13465] = "\xfa\x93", -+ [13467] = "\x9a\x40", [13468] = "\x99\xf9", [13471] = "\x9a\x5d", -+ [13474] = "\x8d\xe7", [13475] = "\x8a\x50", [13480] = "\x99\xf7", -+ [13484] = "\x9a\x44", [13485] = "\x88\xf4", [13486] = "\x9a\x43", -+ [13488] = "\x88\xa3", [13489] = "\x95\x69", [13490] = "\x9a\x41", -+ [13492] = "\x99\xfa", [13495] = "\x99\xf5", [13496] = "\x99\xfb", -+ [13497] = "\x8d\xc6", [13512] = "\x9a\x45", [13521] = "\x88\xf5", -+ [13522] = "\x9a\x4e", [13525] = "\x9a\x46", [13526] = "\x9a\x47", -+ [13528] = "\x8f\xa3", [13529] = "\x96\x89", [13533] = "\x9a\x4c", -+ [13534] = "\x9a\x4b", [13538] = "\x93\x4e", [13546] = "\x9a\x4d", -+ [13549] = "\x9a\x4a", [13551] = "\xfa\x94", [13556] = "\x89\x53", -+ [13558] = "\x8d\xb4", [13559] = "\x90\x4f", [13567] = "\x9a\x48", -+ [13568] = "\x93\x82", [13572] = "\x9a\x49", [13574] = "\x88\xa0", -+ [13598] = "\x9a\x53", [13599] = "\x97\x42", [13601] = "\x8f\xa5", -+ [13603] = "\x9a\x59", [13608] = "\x9a\x58", [13609] = "\x9a\x4f", -+ [13614] = "\x91\xc1", [13616] = "\x9a\x50", [13620] = "\x91\xed", -+ [13621] = "\x9a\x55", [13622] = "\x8f\xa4", [13628] = "\x9a\x52", -+ [13631] = "\x96\xe2", [13635] = "\x8c\x5b", [13638] = "\x9a\x56", -+ [13639] = "\x9a\x57", [13644] = "\x9a\x54", [13645] = "\x9a\x5a", -+ [13651] = "\x9a\x51", [13675] = "\x9a\x60", [13676] = "\x9a\x65", -+ [13678] = "\x9a\x61", [13680] = "\x9a\x5c", [13683] = "\x9a\x66", -+ [13684] = "\x91\x50", [13686] = "\xfa\x95", [13687] = "\x9a\x68", -+ [13689] = "\x8d\x41", [13690] = "\x9a\x5e", [13691] = "\x92\x9d", -+ [13704] = "\x9a\x62", [13705] = "\x9a\x5b", [13706] = "\x8a\xab", -+ [13708] = "\x8a\xec", [13709] = "\x8a\x85", [13710] = "\x9a\x63", -+ [13711] = "\x9a\x5f", [13719] = "\x8c\x96", [13720] = "\x9a\x69", -+ [13721] = "\x9a\x67", [13722] = "\x91\x72", [13723] = "\x8b\x69", -+ [13724] = "\x8b\xaa", [13726] = "\x9a\x64", [13728] = "\x8b\xf2", -+ [13734] = "\x89\x63", [13748] = "\x9a\x6d", [13749] = "\x9a\x6b", -+ [13751] = "\x9a\xa5", [13764] = "\x9a\x70", [13770] = "\x9a\x6a", -+ [13772] = "\x9a\x6e", [13775] = "\x9a\x6c", [13779] = "\x8e\x6b", -+ [13780] = "\x9a\x6f", [13799] = "\x9a\x72", [13801] = "\x9a\x77", -+ [13805] = "\x9a\x75", [13806] = "\x9a\x74", [13814] = "\x92\x51", -+ [13817] = "\x89\xc3", [13828] = "\x9a\x71", [13830] = "\x9a\x73", -+ [13831] = "\x8f\xa6", [13832] = "\x89\x52", [13835] = "\x9a\x76", -+ [13849] = "\x89\xdc", [13855] = "\x9a\x82", [13857] = "\x8f\xfa", -+ [13858] = "\x9a\x7d", [13860] = "\x9a\x7b", [13862] = "\x9a\x7c", -+ [13864] = "\x9a\x7e", [13874] = "\x89\x5c", [13884] = "\x91\x58", -+ [13886] = "\x9a\x78", [13888] = "\x9a\x79", [13899] = "\x8a\x9a", -+ [13908] = "\x9a\x81", [13912] = "\x8a\xed", [13914] = "\x9a\x84", -+ [13915] = "\x9a\x80", [13916] = "\x9a\x83", [13924] = "\x95\xac", -+ [13928] = "\x93\xd3", [13930] = "\x94\xb6", [13936] = "\x9a\x86", -+ [13942] = "\x9a\x85", [13943] = "\x8a\x64", [13946] = "\x9a\x87", -+ [13951] = "\x9a\x8a", [13956] = "\x9a\x89", [13968] = "\x9a\x88", -+ [13970] = "\x94\x58", [13973] = "\x9a\x8b", [13982] = "\x9a\x8c", -+ [13988] = "\x9a\x8e", [13990] = "\x9a\x8d", [13996] = "\x9a\x90", -+ [14000] = "\x9a\x93", [14001] = "\x9a\x91", [14002] = "\x9a\x8f", -+ [14003] = "\x9a\x92", [14008] = "\x9a\x94", [14014] = "\x9a\x95", -+ [14017] = "\x9a\x96", [14019] = "\x9a\x97", [14023] = "\x9a\x98", -+ [14024] = "\x99\x64", [14026] = "\x8e\xfa", [14027] = "\x8e\x6c", -+ [14030] = "\x89\xf1", [14032] = "\x88\xf6", [14035] = "\x92\x63", -+ [14046] = "\x9a\x99", [14048] = "\x8d\xa2", [14050] = "\x88\xcd", -+ [14051] = "\x90\x7d", [14057] = "\x9a\x9a", [14058] = "\x8c\xc5", -+ [14061] = "\x8d\x91", [14063] = "\x9a\x9c", [14064] = "\x9a\x9b", -+ [14067] = "\x95\xde", [14068] = "\x9a\x9d", [14072] = "\x9a\x9f", -+ [14073] = "\x9a\x9e", [14075] = "\x9a\xa0", [14077] = "\x9a\xa1", -+ [14079] = "\x8c\x97", [14082] = "\x89\x80", [14083] = "\x9a\xa2", -+ [14086] = "\x9a\xa4", [14088] = "\x9a\xa3", [14092] = "\x9a\xa6", -+ [14095] = "\x93\x79", [14102] = "\x9a\xa7", [14103] = "\x88\xb3", -+ [14104] = "\x8d\xdd", [14109] = "\x8c\x5c", [14112] = "\x92\x6e", -+ [14119] = "\x9a\xa8", [14120] = "\x9a\xa9", [14123] = "\x9a\xab", -+ [14128] = "\x9a\xac", [14130] = "\x8d\xe2", [14135] = "\x8b\xcf", -+ [14138] = "\x96\x56", [14142] = "\x9a\xaa", [14143] = "\x9a\xad", -+ [14144] = "\x8d\xbf", [14145] = "\x8d\x42", [14153] = "\xfa\x96", -+ [14161] = "\x9a\xb1", [14164] = "\x8d\xa3", [14165] = "\xfa\x97", -+ [14166] = "\x92\x52", [14169] = "\x9a\xae", [14170] = "\x92\xd8", -+ [14191] = "\x9a\xb2", [14194] = "\x90\x82", [14200] = "\x9a\xb0", -+ [14201] = "\x9a\xb3", [14203] = "\x8c\x5e", [14211] = "\x9a\xb4", -+ [14224] = "\x9a\xb5", [14226] = "\x8d\x43", [14227] = "\x8a\x5f", -+ [14228] = "\x9a\xb7", [14234] = "\x9a\xb8", [14236] = "\xfa\x98", -+ [14240] = "\x9a\xb9", [14243] = "\x9a\xb6", [14256] = "\x9a\xaf", -+ [14259] = "\x9a\xba", [14262] = "\x9a\xbb", [14263] = "\xfa\x9a", -+ [14264] = "\xfa\x99", [14267] = "\x96\x84", [14270] = "\x8f\xe9", -+ [14274] = "\x9a\xbd", [14275] = "\x9a\xbe", [14276] = "\x9a\xbc", -+ [14278] = "\x9a\xc0", [14284] = "\x94\x57", [14287] = "\x88\xe6", -+ [14288] = "\x95\x75", [14291] = "\x9a\xc1", [14308] = "\x8f\xfb", -+ [14311] = "\x8e\xb7", [14313] = "\x94\x7c", [14314] = "\x8a\xee", -+ [14316] = "\x8d\xe9", [14320] = "\x96\x78", [14322] = "\x93\xb0", -+ [14325] = "\x8c\x98", [14326] = "\x91\xcd", [14330] = "\x9a\xbf", -+ [14331] = "\x9a\xc2", [14341] = "\x91\xc2", [14345] = "\x9a\xc3", -+ [14349] = "\x9a\xc4", [14353] = "\x9a\xc6", [14356] = "\x92\xe7", -+ [14362] = "\x8a\xac", [14367] = "\xea\x9f", [14368] = "\x89\x81", -+ [14369] = "\x95\xf1", [14372] = "\x8f\xea", [14373] = "\x93\x67", -+ [14378] = "\x8d\xe4", [14381] = "\x9a\xcc", [14384] = "\x95\xbb", -+ [14385] = "\x97\xdb", [14394] = "\x89\xf2", [14395] = "\x9a\xc8", -+ [14401] = "\x91\x59", [14402] = "\x9a\xcb", [14404] = "\x93\x83", -+ [14407] = "\x93\x68", [14408] = "\x93\x84", [14409] = "\x94\xb7", -+ [14410] = "\x92\xcb", [14414] = "\x8d\xc7", [14418] = "\x9a\xc7", -+ [14425] = "\x89\x96", [14427] = "\x93\x55", [14432] = "\x9a\xc9", -+ [14434] = "\x9a\xc5", [14437] = "\x90\x6f", [14441] = "\x9a\xcd", -+ [14446] = "\x8f\x6d", [14451] = "\x8b\xab", [14453] = "\x9a\xce", -+ [14467] = "\x95\xe6", [14471] = "\x91\x9d", [14476] = "\x92\xc4", -+ [14478] = "\xfa\x9d", [14479] = "\x9a\xd0", [14488] = "\x96\x6e", -+ [14491] = "\x9a\xd1", [14494] = "\x9a\xd6", [14498] = "\xfa\x9e", -+ [14499] = "\x95\xad", [14504] = "\x9a\xd5", [14505] = "\x9a\xcf", -+ [14506] = "\x9a\xd2", [14507] = "\x9a\xd4", [14510] = "\x8d\xa4", -+ [14513] = "\x95\xc7", [14517] = "\x9a\xd7", [14519] = "\x92\x64", -+ [14522] = "\x89\xf3", [14524] = "\x8f\xeb", [14529] = "\x9a\xd9", -+ [14531] = "\x9a\xd8", [14533] = "\x8d\x88", [14535] = "\x9a\xda", -+ [14536] = "\x9a\xdc", [14537] = "\x9a\xdb", [14540] = "\x9a\xde", -+ [14542] = "\x9a\xd3", [14543] = "\x9a\xe0", [14548] = "\x9a\xdf", -+ [14549] = "\x9a\xdd", [14555] = "\x8e\x6d", [14556] = "\x90\x70", -+ [14558] = "\x91\x73", [14559] = "\x9a\xe1", [14560] = "\x90\xba", -+ [14561] = "\x88\xeb", [14562] = "\x94\x84", [14567] = "\x92\xd9", -+ [14569] = "\x9a\xe3", [14570] = "\x9a\xe2", [14571] = "\x9a\xe4", -+ [14572] = "\x9a\xe5", [14573] = "\x9a\xe6", [14578] = "\x9a\xe7", -+ [14585] = "\x95\xcf", [14586] = "\x9a\xe8", [14587] = "\xfa\x9f", -+ [14591] = "\x89\xc4", [14592] = "\x9a\xe9", [14597] = "\x97\x5b", -+ [14598] = "\x8a\x4f", [14600] = "\x99\xc7", [14601] = "\x8f\x67", -+ [14602] = "\x91\xbd", [14603] = "\x9a\xea", [14604] = "\x96\xe9", -+ [14610] = "\x96\xb2", [14613] = "\x9a\xec", [14615] = "\x91\xe5", -+ [14617] = "\x93\x56", [14618] = "\x91\xbe", [14619] = "\x95\x76", -+ [14620] = "\x9a\xed", [14621] = "\x9a\xee", [14622] = "\x89\x9b", -+ [14625] = "\x8e\xb8", [14626] = "\x9a\xef", [14631] = "\x88\xce", -+ [14632] = "\x9a\xf0", [14638] = "\x9a\xf1", [14644] = "\x89\x82", -+ [14647] = "\x8a\xef", [14648] = "\x93\xde", [14649] = "\x95\xf2", -+ [14654] = "\x9a\xf5", [14655] = "\x91\x74", [14656] = "\x9a\xf4", -+ [14657] = "\x8c\x5f", [14659] = "\xfa\xa0", [14660] = "\x96\x7a", -+ [14661] = "\x9a\xf3", [14663] = "\x93\x85", [14664] = "\x9a\xf7", -+ [14666] = "\x9a\xf6", [14667] = "\xfa\xa1", [14669] = "\xfa\xa2", -+ [14672] = "\x9a\xf9", [14674] = "\x9a\xf8", [14675] = "\xfa\xa3", -+ [14677] = "\x89\x9c", [14679] = "\x9a\xfa", [14680] = "\x8f\xa7", -+ [14681] = "\x9a\xfc", [14682] = "\x92\x44", [14684] = "\x9a\xfb", -+ [14686] = "\x95\xb1", [14691] = "\x8f\x97", [14692] = "\x93\x7a", -+ [14696] = "\x9b\x40", [14701] = "\x8d\x44", [14705] = "\x9b\x41", -+ [14706] = "\x94\x40", [14707] = "\x94\xdc", [14708] = "\x96\xcf", -+ [14714] = "\x94\x44", [14717] = "\x9b\x4a", [14723] = "\x8b\x57", -+ [14726] = "\x97\x64", [14729] = "\x96\xad", [14731] = "\x9b\xaa", -+ [14733] = "\x9b\x42", [14739] = "\x9b\x45", [14740] = "\xfa\xa4", -+ [14741] = "\x91\xc3", [14744] = "\x96\x57", [14748] = "\x93\x69", -+ [14754] = "\x9b\x46", [14761] = "\x96\x85", [14762] = "\xfa\xa5", -+ [14763] = "\x8d\xc8", [14766] = "\x8f\xa8", [14774] = "\x9b\x47", -+ [14777] = "\x8e\x6f", [14779] = "\x8e\x6e", [14784] = "\x88\xb7", -+ [14785] = "\x8c\xc6", [14787] = "\x90\xa9", [14788] = "\x88\xcf", -+ [14793] = "\x9b\x4b", [14794] = "\x9b\x4c", [14796] = "\x9b\x49", -+ [14805] = "\x89\x57", [14806] = "\x8a\xad", [14808] = "\x9b\x48", -+ [14810] = "\x96\xc3", [14811] = "\x95\x50", [14822] = "\x88\xa6", -+ [14827] = "\x88\xf7", [14831] = "\x8e\x70", [14833] = "\x88\xd0", -+ [14835] = "\x88\xa1", [14841] = "\x9b\x51", [14849] = "\x9b\x4f", -+ [14856] = "\x96\xba", [14858] = "\x9b\x52", [14860] = "\x9b\x50", -+ [14863] = "\x9b\x4e", [14864] = "\x90\x50", [14869] = "\x9b\x4d", -+ [14873] = "\x95\xd8", [14879] = "\x8c\xe2", [14885] = "\x9b\x56", -+ [14886] = "\x9b\x57", [14892] = "\x8f\xa9", [14896] = "\x9b\x53", -+ [14897] = "\x98\x4b", [14902] = "\x94\x6b", [14905] = "\x9b\x55", -+ [14922] = "\x8d\xa5", [14930] = "\x9b\x58", [14934] = "\x95\x77", -+ [14938] = "\x9b\x59", [14940] = "\x9b\x54", [14959] = "\x96\xb9", -+ [14978] = "\x94\x7d", [14986] = "\x9b\x5a", [14987] = "\x95\x51", -+ [15020] = "\x9b\x5b", [15021] = "\x9b\x5f", [15022] = "\x9b\x5c", -+ [15025] = "\x89\xc5", [15026] = "\x9b\x5e", [15033] = "\x8e\xb9", -+ [15035] = "\x9b\x5d", [15036] = "\x8c\x99", [15040] = "\x9b\x6b", -+ [15046] = "\x9b\x64", [15047] = "\x9b\x61", [15057] = "\x92\x84", -+ [15059] = "\x9b\x60", [15062] = "\x9b\x62", [15065] = "\x9b\x63", -+ [15082] = "\x9b\x65", [15083] = "\x9b\x66", [15097] = "\x8a\xf0", -+ [15099] = "\x9b\x68", [15100] = "\x9b\x67", [15110] = "\x9b\x69", -+ [15122] = "\x8f\xec", [15130] = "\x9b\x6c", [15132] = "\x92\xda", -+ [15136] = "\x89\x64", [15138] = "\x9b\x6a", [15142] = "\x9b\x6d", -+ [15150] = "\x9b\x6e", [15152] = "\x9b\x71", [15155] = "\x9b\x6f", -+ [15157] = "\x9b\x70", [15168] = "\x8e\x71", [15169] = "\x9b\x72", -+ [15172] = "\x8d\x45", [15173] = "\x9b\x73", [15174] = "\xfa\xa6", -+ [15175] = "\x8e\x9a", [15176] = "\x91\xb6", [15178] = "\x9b\x74", -+ [15179] = "\x9b\x75", [15180] = "\x8e\x79", [15181] = "\x8d\x46", -+ [15183] = "\x96\xd0", [15187] = "\x8b\x47", [15188] = "\x8c\xc7", -+ [15189] = "\x9b\x76", [15190] = "\x8a\x77", [15193] = "\x9b\x77", -+ [15195] = "\x91\xb7", [15200] = "\x9b\x78", [15201] = "\x9b\xa1", -+ [15203] = "\x9b\x79", [15205] = "\x9b\x7a", [15208] = "\x9b\x7b", -+ [15210] = "\x9b\x7d", [15216] = "\x9b\x7e", [15219] = "\x9b\x80", -+ [15221] = "\x91\xee", [15223] = "\x89\x46", [15224] = "\x8e\xe7", -+ [15225] = "\x88\xc0", [15227] = "\x91\x76", [15228] = "\x8a\xae", -+ [15229] = "\x8e\xb3", [15231] = "\x8d\x47", [15237] = "\x93\x86", -+ [15239] = "\x8f\x40", [15240] = "\x8a\xaf", [15241] = "\x92\x88", -+ [15242] = "\x92\xe8", [15243] = "\x88\xb6", [15244] = "\x8b\x58", -+ [15245] = "\x95\xf3", [15247] = "\x8e\xc0", [15250] = "\x8b\x71", -+ [15251] = "\x90\xe9", [15252] = "\x8e\xba", [15253] = "\x97\x47", -+ [15254] = "\x9b\x81", [15262] = "\x8b\x7b", [15264] = "\x8d\xc9", -+ [15267] = "\x8a\x51", [15268] = "\x89\x83", [15269] = "\x8f\xaa", -+ [15270] = "\x89\xc6", [15272] = "\x9b\x82", [15273] = "\x97\x65", -+ [15279] = "\x8f\x68", [15280] = "\xfa\xa7", [15282] = "\x8e\xe2", -+ [15283] = "\x9b\x83", [15284] = "\x8a\xf1", [15285] = "\x93\xd0", -+ [15286] = "\x96\xa7", [15287] = "\x9b\x84", [15289] = "\x9b\x85", -+ [15292] = "\x95\x78", [15296] = "\x9b\x87", [15298] = "\x8a\xa6", -+ [15299] = "\x8b\xf5", [15300] = "\x9b\x86", [15304] = "\xfa\xa9", -+ [15307] = "\x8a\xb0", [15309] = "\x90\x51", [15310] = "\x9b\x8b", -+ [15311] = "\x8e\x40", [15313] = "\x89\xc7", [15314] = "\x9b\x8a", -+ [15316] = "\x9b\x88", [15317] = "\x9b\x8c", [15318] = "\x9b\x89", -+ [15319] = "\x94\x4a", [15320] = "\x9e\xcb", [15321] = "\x90\x52", -+ [15323] = "\x9b\x8d", [15324] = "\xfa\xaa", [15326] = "\x97\xbe", -+ [15328] = "\x9b\x8e", [15331] = "\x9b\x90", [15333] = "\x92\x9e", -+ [15334] = "\x9b\x8f", [15336] = "\x90\xa1", [15338] = "\x8e\x9b", -+ [15342] = "\x91\xce", [15343] = "\x8e\xf5", [15345] = "\x95\x95", -+ [15346] = "\x90\xea", [15348] = "\x8e\xcb", [15349] = "\x9b\x91", -+ [15350] = "\x8f\xab", [15351] = "\x9b\x92", [15352] = "\x9b\x93", -+ [15353] = "\x88\xd1", [15354] = "\x91\xb8", [15355] = "\x90\x71", -+ [15357] = "\x9b\x94", [15358] = "\x93\xb1", [15359] = "\x8f\xac", -+ [15361] = "\x8f\xad", [15363] = "\x9b\x95", [15366] = "\x90\xeb", -+ [15370] = "\x8f\xae", [15374] = "\xfa\xab", [15376] = "\x9b\x96", -+ [15378] = "\x9b\x97", [15380] = "\x96\xde", [15384] = "\x9b\x98", -+ [15389] = "\x8b\xc4", [15393] = "\x8f\x41", [15400] = "\x9b\x99", -+ [15401] = "\x9b\x9a", [15402] = "\x8e\xda", [15403] = "\x90\x4b", -+ [15404] = "\x93\xf2", [15405] = "\x90\x73", [15406] = "\x94\xf6", -+ [15407] = "\x94\x41", [15408] = "\x8b\xc7", [15409] = "\x9b\x9b", -+ [15413] = "\x8b\x8f", [15414] = "\x9b\x9c", [15416] = "\x8b\xfc", -+ [15418] = "\x93\xcd", [15419] = "\x89\xae", [15421] = "\x8e\x72", -+ [15422] = "\x9b\x9d", [15423] = "\x9b\xa0", [15424] = "\x9b\x9f", -+ [15425] = "\x8b\xfb", [15427] = "\x9b\x9e", [15429] = "\x93\x57", -+ [15438] = "\x91\xae", [15440] = "\x93\x6a", [15441] = "\x8e\xc6", -+ [15444] = "\x91\x77", [15445] = "\x97\x9a", [15452] = "\x9b\xa2", -+ [15454] = "\x9b\xa3", [15455] = "\x93\xd4", [15457] = "\x8e\x52", -+ [15462] = "\x9b\xa5", [15465] = "\x9b\xa6", [15484] = "\x9b\xa7", -+ [15488] = "\x8a\xf2", [15489] = "\x9b\xa8", [15492] = "\x9b\xa9", -+ [15505] = "\x89\xaa", [15510] = "\xfa\xac", [15512] = "\x91\x5a", -+ [15513] = "\x8a\xe2", [15515] = "\x9b\xab", [15516] = "\x96\xa6", -+ [15521] = "\x91\xd0", [15523] = "\x8a\x78", [15526] = "\x9b\xad", -+ [15527] = "\x9b\xaf", [15528] = "\x8a\xdd", [15530] = "\xfa\xad", -+ [15531] = "\x9b\xac", [15532] = "\x9b\xae", [15534] = "\x9b\xb1", -+ [15541] = "\x9b\xb0", [15543] = "\x9b\xb2", [15561] = "\x9b\xb3", -+ [15568] = "\x93\xbb", [15569] = "\x8b\xac", [15576] = "\x89\xe3", -+ [15577] = "\x9b\xb4", [15578] = "\x9b\xb9", [15581] = "\x9b\xb7", -+ [15583] = "\x95\xf5", [15584] = "\x95\xf4", [15589] = "\xfa\xae", -+ [15590] = "\x93\x87", [15594] = "\x9b\xb6", [15595] = "\x8f\x73", -+ [15597] = "\x9b\xb5", [15607] = "\x90\x92", [15611] = "\x9b\xba", -+ [15614] = "\x8d\xe8", [15617] = "\x9b\xc0", [15620] = "\x9b\xc1", -+ [15621] = "\x9b\xbb", [15622] = "\x8a\x52", [15623] = "\x9b\xbc", -+ [15624] = "\x9b\xc5", [15625] = "\x9b\xc4", [15626] = "\x9b\xc3", -+ [15627] = "\x9b\xbf", [15631] = "\x9b\xbe", [15634] = "\x9b\xc2", -+ [15639] = "\xfa\xaf", [15641] = "\x95\xf6", [15666] = "\xfa\xb2", -+ [15675] = "\x9b\xc9", [15676] = "\x9b\xc6", [15678] = "\x9b\xc8", -+ [15680] = "\x97\x92", [15682] = "\x9b\xc7", [15683] = "\xfa\xb0", -+ [15692] = "\x9b\xbd", [15705] = "\x90\x93", [15708] = "\x9b\xca", -+ [15709] = "\xfa\xb3", [15711] = "\x8d\xb5", [15715] = "\x9b\xcb", -+ [15718] = "\x9b\xcc", [15730] = "\x9b\xcf", [15732] = "\x9b\xce", -+ [15735] = "\x9b\xcd", [15739] = "\x93\x88", [15740] = "\x9b\xb8", -+ [15744] = "\x9b\xd5", [15757] = "\x9b\xd1", [15762] = "\x9b\xd0", -+ [15772] = "\x9b\xd2", [15774] = "\x9b\xd3", [15783] = "\x9b\xd6", -+ [15784] = "\xfa\xb4", [15785] = "\xfa\xb5", [15786] = "\x97\xe4", -+ [15788] = "\x9b\xd7", [15789] = "\x9b\xd4", [15801] = "\x9b\xd8", -+ [15804] = "\x8a\xde", [15805] = "\x9b\xd9", [15808] = "\xfa\xb6", -+ [15810] = "\x9b\xdb", [15811] = "\x9b\xda", [15814] = "\x9b\xdc", -+ [15819] = "\x9b\xdd", [15821] = "\x90\xec", [15822] = "\x8f\x42", -+ [15825] = "\x8f\x84", [15827] = "\x91\x83", [15829] = "\x8d\x48", -+ [15830] = "\x8d\xb6", [15831] = "\x8d\x49", [15832] = "\x8b\x90", -+ [15835] = "\x9b\xde", [15838] = "\x8d\xb7", [15841] = "\x8c\xc8", -+ [15842] = "\x9b\xdf", [15843] = "\x96\xa4", [15844] = "\x94\x62", -+ [15845] = "\x9b\xe0", [15847] = "\x8d\x4a", [15851] = "\x8a\xaa", -+ [15853] = "\x92\x46", [15854] = "\x8b\xd0", [15858] = "\x8e\x73", -+ [15859] = "\x95\x7a", [15862] = "\x94\xbf", [15867] = "\x9b\xe1", -+ [15868] = "\x8a\xf3", [15873] = "\x9b\xe4", [15878] = "\x92\x9f", -+ [15881] = "\x9b\xe3", [15882] = "\x9b\xe2", [15883] = "\x9b\xe5", -+ [15885] = "\x92\xe9", [15893] = "\x90\x83", [15899] = "\x8e\x74", -+ [15901] = "\x90\xc8", [15903] = "\x91\xd1", [15904] = "\x8b\x41", -+ [15907] = "\x92\xa0", [15910] = "\x9b\xe6", [15911] = "\x9b\xe7", -+ [15912] = "\x8f\xed", [15917] = "\x96\x58", [15920] = "\x9b\xea", -+ [15923] = "\x9b\xe9", [15924] = "\x9b\xe8", [15925] = "\x95\x9d", -+ [15927] = "\x9b\xf1", [15932] = "\x96\x79", [15934] = "\x9b\xeb", -+ [15940] = "\x9b\xed", [15941] = "\x96\x8b", [15943] = "\x9b\xec", -+ [15951] = "\x9b\xee", [15953] = "\x94\xa6", [15954] = "\x9b\xef", -+ [15955] = "\x95\xbc", [15956] = "\x9b\xf0", [15970] = "\x8a\xb1", -+ [15971] = "\x95\xbd", [15972] = "\x94\x4e", [15973] = "\x9b\xf2", -+ [15974] = "\x9b\xf3", [15976] = "\x8d\x4b", [15977] = "\x8a\xb2", -+ [15978] = "\x9b\xf4", [15979] = "\x8c\xb6", [15980] = "\x97\x63", -+ [15981] = "\x97\x48", [15982] = "\x8a\xf4", [15983] = "\x9b\xf6", -+ [15985] = "\x92\xa1", [15987] = "\x8d\x4c", [15988] = "\x8f\xaf", -+ [15991] = "\x94\xdd", [15994] = "\x8f\xb0", [15999] = "\x8f\x98", -+ [16005] = "\x92\xea", [16006] = "\x95\xf7", [16007] = "\x93\x58", -+ [16010] = "\x8d\x4d", [16012] = "\x95\x7b", [16016] = "\x9b\xf7", -+ [16022] = "\x93\x78", [16023] = "\x8d\xc0", [16027] = "\x8c\xc9", -+ [16029] = "\x92\xeb", [16037] = "\x88\xc1", [16038] = "\x8f\x8e", -+ [16039] = "\x8d\x4e", [16040] = "\x97\x66", [16049] = "\x9b\xf8", -+ [16050] = "\x9b\xf9", [16051] = "\x94\x70", [16056] = "\x9b\xfa", -+ [16057] = "\x97\xf5", [16058] = "\x98\x4c", [16063] = "\x9b\xfc", -+ [16064] = "\x9b\xfb", [16067] = "\x8a\x66", [16070] = "\x9c\x40", -+ [16074] = "\x9c\x43", [16075] = "\x9c\x44", [16077] = "\x9c\x42", -+ [16079] = "\x95\x5f", [16080] = "\x8f\xb1", [16081] = "\x9c\x46", -+ [16082] = "\x9c\x45", [16083] = "\x9c\x41", [16088] = "\x9c\x47", -+ [16089] = "\x9c\x48", [16092] = "\x9c\x49", [16096] = "\x9c\x4c", -+ [16097] = "\x9c\x4a", [16099] = "\x9c\x4b", [16100] = "\x9c\x4d", -+ [16102] = "\x89\x84", [16103] = "\x92\xec", [16104] = "\x9c\x4e", -+ [16106] = "\x8c\x9a", [16107] = "\x89\xf4", [16108] = "\x94\x55", -+ [16110] = "\x9c\x4f", [16111] = "\x93\xf9", [16113] = "\x95\xd9", -+ [16115] = "\x9c\x50", [16116] = "\x98\x4d", [16121] = "\x9c\x51", -+ [16122] = "\x95\xbe", [16123] = "\x9c\x54", [16124] = "\x98\x9f", -+ [16125] = "\x98\xaf", [16127] = "\x8e\xae", [16128] = "\x93\xf3", -+ [16129] = "\x9c\x55", [16131] = "\x8b\x7c", [16132] = "\x92\xa2", -+ [16133] = "\x88\xf8", [16134] = "\x9c\x56", [16135] = "\x95\xa4", -+ [16136] = "\x8d\x4f", [16139] = "\x92\x6f", [16143] = "\x92\xed", -+ [16145] = "\xfa\xb7", [16149] = "\x96\xed", [16150] = "\x8c\xb7", -+ [16151] = "\x8c\xca", [16153] = "\x9c\x57", [16157] = "\x9c\x58", -+ [16159] = "\x9c\x5e", [16161] = "\x8e\xe3", [16164] = "\xfa\xb8", -+ [16165] = "\x92\xa3", [16167] = "\x8b\xad", [16168] = "\x9c\x59", -+ [16172] = "\x95\x4a", [16174] = "\x92\x65", [16177] = "\x9c\x5a", -+ [16181] = "\xfa\x67", [16184] = "\x9c\x5b", [16186] = "\x8b\xae", -+ [16188] = "\x9c\x5c", [16190] = "\x9c\x5d", [16193] = "\x9c\x5f", -+ [16195] = "\x93\x96", [16198] = "\x9c\x60", [16199] = "\x9c\x61", -+ [16201] = "\x9c\x62", [16204] = "\x9c\x53", [16205] = "\x9c\x52", -+ [16209] = "\x9c\x63", [16210] = "\x8c\x60", [16214] = "\x95\x46", -+ [16215] = "\xfa\xb9", [16217] = "\x8d\xca", [16218] = "\x95\x56", -+ [16219] = "\x92\xa4", [16220] = "\x95\x6a", [16221] = "\x9c\x64", -+ [16224] = "\x8f\xb2", [16225] = "\x89\x65", [16227] = "\x9c\x65", -+ [16231] = "\x9c\x66", [16233] = "\x96\xf0", [16236] = "\x94\xde", -+ [16239] = "\x9c\x69", [16240] = "\x89\x9d", [16241] = "\x90\xaa", -+ [16242] = "\x9c\x68", [16243] = "\x9c\x67", [16244] = "\x8c\x61", -+ [16245] = "\x91\xd2", [16247] = "\x9c\x6d", [16248] = "\x9c\x6b", -+ [16250] = "\x9c\x6a", [16251] = "\x97\xa5", [16252] = "\x8c\xe3", -+ [16256] = "\x8f\x99", [16257] = "\x9c\x6c", [16258] = "\x93\x6b", -+ [16259] = "\x8f\x5d", [16263] = "\x93\xbe", [16264] = "\x9c\x70", -+ [16265] = "\x9c\x6f", [16270] = "\x9c\x6e", [16272] = "\x9c\x71", -+ [16273] = "\x8c\xe4", [16280] = "\x9c\x72", [16281] = "\x95\x9c", -+ [16282] = "\x8f\x7a", [16285] = "\x9c\x73", [16286] = "\x94\xf7", -+ [16291] = "\x93\xbf", [16292] = "\x92\xa5", [16295] = "\xfa\xba", -+ [16297] = "\x93\x4f", [16300] = "\x9c\x74", [16301] = "\x8b\x4a", -+ [16307] = "\x90\x53", [16309] = "\x95\x4b", [16316] = "\x8a\xf5", -+ [16317] = "\x94\x45", [16326] = "\x9c\x75", [16327] = "\x8e\x75", -+ [16328] = "\x96\x59", [16329] = "\x96\x5a", [16332] = "\x89\x9e", -+ [16333] = "\x9c\x7a", [16334] = "\xfa\xbb", [16336] = "\x92\x89", -+ [16340] = "\x9c\x77", [16347] = "\x89\xf5", [16352] = "\x9c\xab", -+ [16353] = "\x9c\x79", [16357] = "\x94\x4f", [16360] = "\x9c\x78", -+ [16363] = "\x9c\x76", [16365] = "\x8d\x9a", [16367] = "\x9c\x7c", -+ [16382] = "\x9c\x83", [16383] = "\x9c\x89", [16384] = "\x9c\x81", -+ [16386] = "\x93\x7b", [16389] = "\x9c\x86", [16390] = "\x95\x7c", -+ [16393] = "\x9c\x80", [16395] = "\x9c\x85", [16396] = "\x97\xe5", -+ [16397] = "\x8e\x76", [16400] = "\x91\xd3", [16401] = "\x9c\x7d", -+ [16405] = "\x8b\x7d", [16406] = "\x9c\x88", [16407] = "\x90\xab", -+ [16408] = "\x89\x85", [16409] = "\x9c\x82", [16410] = "\x89\xf6", -+ [16411] = "\x9c\x87", [16415] = "\x8b\xaf", [16417] = "\x9c\x84", -+ [16426] = "\x9c\x8a", [16433] = "\x9c\x8c", [16434] = "\x9c\x96", -+ [16435] = "\x9c\x94", [16438] = "\x9c\x91", [16442] = "\x9c\x90", -+ [16443] = "\x97\xf6", [16445] = "\x9c\x92", [16448] = "\x8b\xb0", -+ [16450] = "\x8d\x50", [16453] = "\x8f\x9a", [16457] = "\x9c\x99", -+ [16458] = "\x9c\x8b", [16461] = "\xfa\xbc", [16463] = "\x9c\x8f", -+ [16464] = "\x9c\x7e", [16466] = "\x89\xf8", [16467] = "\x9c\x93", -+ [16468] = "\x9c\x95", [16469] = "\x92\x70", [16472] = "\x8d\xa6", -+ [16473] = "\x89\xb6", [16474] = "\x9c\x8d", [16475] = "\x9c\x98", -+ [16476] = "\x9c\x97", [16477] = "\x8b\xb1", [16479] = "\x91\xa7", -+ [16480] = "\x8a\x86", [16485] = "\x8c\x62", [16487] = "\x9c\x8e", -+ [16497] = "\x9c\x9a", [16499] = "\x9c\x9d", [16500] = "\x9c\x9f", -+ [16501] = "\xfa\xbd", [16505] = "\x8e\xbb", [16506] = "\xfa\xbe", -+ [16507] = "\x9c\xa5", [16508] = "\x92\xee", [16509] = "\x9c\x9b", -+ [16514] = "\x9c\xa3", [16516] = "\x89\xf7", [16518] = "\x9c\xa1", -+ [16519] = "\x9c\xa2", [16522] = "\x9c\x9e", [16523] = "\x9c\xa0", -+ [16527] = "\x8c\xe5", [16528] = "\x97\x49", [16531] = "\x8a\xb3", -+ [16534] = "\x89\x78", [16535] = "\x9c\xa4", [16537] = "\x94\x59", -+ [16538] = "\x88\xab", [16546] = "\x94\xdf", [16547] = "\x9c\x7b", -+ [16548] = "\x9c\xaa", [16549] = "\x9c\xae", [16550] = "\x96\xe3", -+ [16552] = "\x9c\xa7", [16556] = "\x93\x89", [16557] = "\x9c\xac", -+ [16565] = "\x8f\xee", [16566] = "\x9c\xad", [16567] = "\x93\xd5", -+ [16577] = "\x98\x66", [16579] = "\x9c\xa9", [16581] = "\xfa\xc0", -+ [16584] = "\x9c\xaf", [16586] = "\x8d\x9b", [16588] = "\x90\xc9", -+ [16590] = "\xfa\xbf", [16591] = "\x88\xd2", [16592] = "\x9c\xa8", -+ [16593] = "\x9c\xa6", [16595] = "\x91\x79", [16599] = "\x9c\x9c", -+ [16600] = "\x8e\x53", [16608] = "\x91\xc4", [16609] = "\x9c\xbb", -+ [16610] = "\xfa\xc2", [16611] = "\x91\x7a", [16612] = "\x9c\xb6", -+ [16614] = "\x9c\xb3", [16615] = "\x9c\xb4", [16617] = "\x8e\xe4", -+ [16618] = "\x9c\xb7", [16619] = "\x9c\xba", [16624] = "\x9c\xb5", -+ [16625] = "\x8f\x44", [16627] = "\x9c\xb8", [16630] = "\x9c\xb2", -+ [16632] = "\x96\xfa", [16633] = "\x96\xf9", [16637] = "\x9c\xbc", -+ [16638] = "\x9c\xbd", [16639] = "\x88\xd3", [16641] = "\xfa\xc3", -+ [16645] = "\x9c\xb1", [16650] = "\x8b\xf0", [16651] = "\x88\xa4", -+ [16655] = "\x8a\xb4", [16656] = "\xfa\xc1", [16657] = "\x9c\xb9", -+ [16663] = "\x9c\xc1", [16664] = "\x9c\xc0", [16668] = "\x9c\xc5", -+ [16672] = "\xfa\xc5", [16676] = "\x9c\xc6", [16679] = "\xfa\xc4", -+ [16684] = "\x9c\xc4", [16685] = "\x9c\xc7", [16686] = "\x9c\xbf", -+ [16687] = "\x9c\xc3", [16690] = "\x9c\xc8", [16692] = "\x9c\xc9", -+ [16695] = "\x9c\xbe", [16696] = "\x8e\x9c", [16698] = "\x9c\xc2", -+ [16699] = "\x91\xd4", [16700] = "\x8d\x51", [16701] = "\x9c\xb0", -+ [16702] = "\x90\x54", [16707] = "\x9c\xd6", [16709] = "\x95\xe7", -+ [16712] = "\x9c\xcc", [16713] = "\x9c\xcd", [16714] = "\x9c\xce", -+ [16717] = "\x9c\xd5", [16719] = "\x9c\xd4", [16722] = "\x96\x9d", -+ [16723] = "\x8a\xb5", [16725] = "\x9c\xd2", [16727] = "\x8c\x64", -+ [16728] = "\x8a\x53", [16731] = "\x9c\xcf", [16734] = "\x97\xb6", -+ [16735] = "\x9c\xd1", [16736] = "\x88\xd4", [16737] = "\x9c\xd3", -+ [16739] = "\x9c\xca", [16740] = "\x9c\xd0", [16741] = "\x9c\xd7", -+ [16742] = "\x8c\x63", [16743] = "\x9c\xcb", [16750] = "\x97\x7c", -+ [16754] = "\x97\x4a", [16759] = "\x9c\xda", [16762] = "\x9c\xde", -+ [16766] = "\x91\x9e", [16768] = "\x97\xf7", [16769] = "\x9c\xdf", -+ [16772] = "\x9c\xdc", [16774] = "\x9c\xd9", [16776] = "\xfa\xc6", -+ [16777] = "\x9c\xd8", [16778] = "\x9c\xdd", [16788] = "\x95\xae", -+ [16791] = "\x93\xb2", [16793] = "\x8c\x65", [16795] = "\x9c\xe0", -+ [16796] = "\x9c\xdb", [16798] = "\x9c\xe1", [16802] = "\x8c\x9b", -+ [16806] = "\x89\xaf", [16810] = "\x9c\xe9", [16814] = "\x8a\xb6", -+ [16819] = "\x9c\xe7", [16822] = "\x9c\xe8", [16823] = "\x8d\xa7", -+ [16824] = "\x9c\xe6", [16825] = "\x9c\xe4", [16826] = "\x9c\xe3", -+ [16827] = "\x9c\xea", [16828] = "\x9c\xe2", [16829] = "\x9c\xec", -+ [16832] = "\x89\xf9", [16851] = "\x9c\xee", [16854] = "\x9c\xed", -+ [16866] = "\x92\xa6", [16868] = "\x9c\xf1", [16870] = "\x9c\xef", -+ [16871] = "\x9c\xe5", [16872] = "\x8c\x9c", [16874] = "\x9c\xf0", -+ [16876] = "\x9c\xf4", [16877] = "\x9c\xf3", [16878] = "\x9c\xf5", -+ [16879] = "\x9c\xf2", [16880] = "\x9c\xf6", [16888] = "\x9c\xf7", -+ [16889] = "\x9c\xf8", [16890] = "\x95\xe8", [16892] = "\x9c\xfa", -+ [16893] = "\x9c\xf9", [16894] = "\x8f\x5e", [16896] = "\x90\xac", -+ [16897] = "\x89\xe4", [16898] = "\x89\xfa", [16899] = "\xfa\xc7", -+ [16900] = "\x9c\xfb", [16902] = "\x88\xbd", [16906] = "\x90\xca", -+ [16907] = "\x9c\xfc", [16909] = "\xe6\xc1", [16910] = "\x9d\x40", -+ [16911] = "\x8c\x81", [16913] = "\x9d\x41", [16918] = "\x90\xed", -+ [16922] = "\x9d\x42", [16926] = "\x9d\x43", [16927] = "\x8b\x59", -+ [16928] = "\x9d\x44", [16930] = "\x9d\x45", [16931] = "\x9d\x46", -+ [16932] = "\x91\xd5", [16936] = "\x8c\xcb", [16939] = "\x96\xdf", -+ [16943] = "\x96\x5b", [16944] = "\x8f\x8a", [16945] = "\x9d\x47", -+ [16951] = "\x90\xee", [16952] = "\xe7\xbb", [16953] = "\x94\xe0", -+ [16955] = "\x8e\xe8", [16957] = "\x8d\xcb", [16958] = "\x9d\x48", -+ [16963] = "\x91\xc5", [16965] = "\x95\xa5", [16968] = "\x91\xef", -+ [16971] = "\x9d\x4b", [16974] = "\x9d\x49", [16976] = "\x9d\x4c", -+ [16979] = "\x9d\x4a", [16984] = "\x9d\x4d", [16990] = "\x95\xaf", -+ [16993] = "\x88\xb5", [16998] = "\x95\x7d", [17001] = "\x94\xe1", -+ [17004] = "\x9d\x4e", [17006] = "\x9d\x51", [17007] = "\x8f\xb3", -+ [17008] = "\x8b\x5a", [17010] = "\x9d\x4f", [17011] = "\x9d\x56", -+ [17012] = "\x8f\xb4", [17017] = "\x9d\x50", [17018] = "\x94\x63", -+ [17025] = "\x97\x7d", [17026] = "\x9d\x52", [17027] = "\x9d\x53", -+ [17028] = "\x9d\x57", [17029] = "\x93\x8a", [17030] = "\x9d\x54", -+ [17031] = "\x8d\x52", [17032] = "\x90\xdc", [17035] = "\x9d\x65", -+ [17036] = "\x94\xb2", [17038] = "\x91\xf0", [17046] = "\xfa\xc8", -+ [17051] = "\x94\xe2", [17052] = "\x9d\xab", [17057] = "\x95\xf8", -+ [17061] = "\x92\xef", [17065] = "\x96\x95", [17067] = "\x9d\x5a", -+ [17068] = "\x89\x9f", [17069] = "\x92\x8a", [17074] = "\x9d\x63", -+ [17077] = "\x92\x53", [17078] = "\x9d\x5d", [17079] = "\x9d\x64", -+ [17080] = "\x9d\x5f", [17081] = "\x9d\x66", [17082] = "\x9d\x62", -+ [17084] = "\x9d\x61", [17085] = "\x94\x8f", [17087] = "\x9d\x5b", -+ [17088] = "\x89\xfb", [17089] = "\x9d\x59", [17090] = "\x8b\x91", -+ [17091] = "\x91\xf1", [17092] = "\x9d\x55", [17095] = "\x9d\x58", -+ [17096] = "\x8d\x53", [17097] = "\x90\xd9", [17099] = "\x8f\xb5", -+ [17100] = "\x9d\x60", [17101] = "\x94\x71", [17104] = "\x8b\x92", -+ [17105] = "\x8a\x67", [17116] = "\x8a\x87", [17117] = "\x90\x40", -+ [17118] = "\x9d\x68", [17119] = "\x9d\x6d", [17121] = "\x9d\x69", -+ [17123] = "\x8c\x9d", [17125] = "\x9d\x6e", [17126] = "\x8e\x41", -+ [17127] = "\x8d\x89", [17134] = "\x8f\x45", [17135] = "\x9d\x5c", -+ [17137] = "\x8e\x9d", [17138] = "\x9d\x6b", [17143] = "\x8e\x77", -+ [17144] = "\x9d\x6c", [17145] = "\x88\xc2", [17148] = "\x9d\x67", -+ [17153] = "\x92\xa7", [17161] = "\x8b\x93", [17167] = "\x8b\xb2", -+ [17175] = "\x9d\x6a", [17176] = "\x88\xa5", [17179] = "\x8d\xc1", -+ [17183] = "\x90\x55", [17194] = "\x92\xf0", [17197] = "\x94\xd2", -+ [17198] = "\x9d\x70", [17199] = "\x91\x7d", [17209] = "\x91\xa8", -+ [17212] = "\x8e\x4a", [17213] = "\x9d\x71", [17215] = "\x9d\x73", -+ [17216] = "\x9d\x6f", [17221] = "\x95\xdf", [17223] = "\x92\xbb", -+ [17228] = "\x91\x7b", [17239] = "\x95\xf9", [17240] = "\x8e\xcc", -+ [17241] = "\x9d\x80", [17243] = "\x9d\x7e", [17246] = "\x90\x98", -+ [17250] = "\x8c\x9e", [17254] = "\x9d\x78", [17255] = "\x8f\xb7", -+ [17258] = "\x93\xe6", [17259] = "\x94\x50", [17264] = "\x9d\x76", -+ [17267] = "\x91\x7c", [17272] = "\x8e\xf6", [17273] = "\x9d\x7b", -+ [17276] = "\x8f\xb6", [17278] = "\x9d\x75", [17279] = "\x9d\x7a", -+ [17282] = "\x94\x72", [17286] = "\x9d\x74", [17288] = "\x8c\x40", -+ [17291] = "\x8a\x7c", [17295] = "\x9d\x7c", [17296] = "\x97\xa9", -+ [17297] = "\x8d\xcc", [17298] = "\x92\x54", [17299] = "\x9d\x79", -+ [17301] = "\x90\xda", [17303] = "\x8d\x54", [17304] = "\x90\x84", -+ [17305] = "\x89\x86", [17306] = "\x91\x5b", [17307] = "\x9d\x77", -+ [17308] = "\x8b\x64", [17314] = "\x8c\x66", [17316] = "\x92\xcd", -+ [17317] = "\x9d\x7d", [17323] = "\x91\x7e", [17326] = "\x9d\x81", -+ [17328] = "\x9d\x83", [17331] = "\x91\xb5", [17332] = "\x9d\x89", -+ [17334] = "\x9d\x84", [17337] = "\x9d\x86", [17343] = "\x95\x60", -+ [17344] = "\x92\xf1", [17346] = "\x9d\x87", [17350] = "\x97\x4b", -+ [17354] = "\x97\x67", [17355] = "\x8a\xb7", [17361] = "\x88\xac", -+ [17363] = "\x9d\x85", [17369] = "\x9d\x82", [17374] = "\x8a\xf6", -+ [17380] = "\x89\x87", [17381] = "\xfa\xc9", [17382] = "\x9d\x88", -+ [17386] = "\x97\x68", [17398] = "\x9d\x8c", [17405] = "\x91\xb9", -+ [17407] = "\x9d\x93", [17411] = "\x9d\x8d", [17414] = "\x9d\x8a", -+ [17415] = "\x9d\x91", [17420] = "\x9d\x72", [17430] = "\x9d\x8e", -+ [17432] = "\x9d\x92", [17436] = "\x94\xc0", [17437] = "\x93\x8b", -+ [17444] = "\x9d\x8b", [17446] = "\x9d\x8f", [17450] = "\x8c\x67", -+ [17454] = "\x8d\xef", [17458] = "\x90\xdb", [17470] = "\x9d\x97", -+ [17480] = "\x93\x45", [17488] = "\xfa\xca", [17495] = "\x9d\x94", -+ [17497] = "\x96\x80", [17503] = "\x9d\x95", [17510] = "\x9d\x96", -+ [17512] = "\x96\xcc", [17514] = "\x90\xa0", [17523] = "\x8c\x82", -+ [17528] = "\x9d\x9d", [17538] = "\x8e\x54", [17539] = "\x9d\x9a", -+ [17541] = "\x9d\x99", [17546] = "\x94\x51", [17549] = "\xfa\xcb", -+ [17550] = "\x93\xb3", [17556] = "\x93\x50", [17557] = "\x9d\x9b", -+ [17561] = "\x9d\x9c", [17563] = "\x95\x8f", [17565] = "\x94\x64", -+ [17566] = "\x8e\x42", [17568] = "\x90\xef", [17570] = "\x96\x6f", -+ [17577] = "\x8a\x68", [17579] = "\x9d\xa3", [17580] = "\x9d\x9e", -+ [17585] = "\x97\x69", [17586] = "\x9d\xa5", [17589] = "\x9d\xa1", -+ [17591] = "\x9d\xa2", [17597] = "\x91\x80", [17598] = "\xfa\xcc", -+ [17602] = "\x9d\xa0", [17604] = "\x9d\x5e", [17608] = "\x9d\xa4", -+ [17610] = "\x9d\x9f", [17616] = "\x9d\xa9", [17617] = "\x9d\xaa", -+ [17618] = "\x93\x46", [17619] = "\x9d\xac", [17622] = "\x8e\x43", -+ [17623] = "\x9d\xa7", [17628] = "\x8b\x5b", [17631] = "\x9d\xad", -+ [17633] = "\x9d\xa6", [17634] = "\x9d\xb1", [17636] = "\x9d\xb0", -+ [17638] = "\x9d\xaf", [17642] = "\x9d\xb2", [17645] = "\x9d\xb4", -+ [17646] = "\x8f\xef", [17648] = "\x9d\xb3", [17653] = "\x9d\xb7", -+ [17672] = "\x9d\xb5", [17676] = "\x9d\xb6", [17677] = "\x9d\x90", -+ [17683] = "\x9d\xb9", [17684] = "\x9d\xb8", [17690] = "\x9d\x98", -+ [17691] = "\x9d\xba", [17692] = "\x9d\xae", [17695] = "\x8e\x78", -+ [17700] = "\x9d\xbb", [17701] = "\x9d\xbc", [17702] = "\x9d\xbe", -+ [17703] = "\x9d\xbd", [17704] = "\x9d\xbf", [17705] = "\x89\xfc", -+ [17707] = "\x8d\x55", [17710] = "\x95\xfa", [17711] = "\x90\xad", -+ [17717] = "\x8c\xcc", [17720] = "\x9d\xc1", [17725] = "\x9d\xc4", -+ [17726] = "\xfa\xcd", [17727] = "\x95\x71", [17729] = "\x8b\x7e", -+ [17733] = "\x9d\xc3", [17734] = "\x9d\xc2", [17735] = "\x94\x73", -+ [17736] = "\x9d\xc5", [17737] = "\x8b\xb3", [17741] = "\x9d\xc7", -+ [17742] = "\x9d\xc6", [17746] = "\x8a\xb8", [17747] = "\x8e\x55", -+ [17750] = "\x93\xd6", [17756] = "\x8c\x68", [17760] = "\x90\x94", -+ [17762] = "\x9d\xc8", [17764] = "\x90\xae", [17765] = "\x93\x47", -+ [17767] = "\x95\x7e", [17768] = "\x9d\xc9", [17778] = "\x9d\xca", -+ [17779] = "\x9d\xcb", [17783] = "\x95\xb6", [17784] = "\x9b\x7c", -+ [17785] = "\x90\xc4", [17788] = "\x95\x6b", [17790] = "\x8d\xd6", -+ [17792] = "\x94\xe3", [17793] = "\x94\xc1", [17799] = "\x93\x6c", -+ [17801] = "\x97\xbf", [17803] = "\x9d\xcd", [17804] = "\x8e\xce", -+ [17807] = "\x9d\xce", [17809] = "\x88\xb4", [17812] = "\x8b\xd2", -+ [17813] = "\x90\xcb", [17815] = "\x95\x80", [17819] = "\x9d\xcf", -+ [17820] = "\x8e\x61", [17821] = "\x92\x66", [17823] = "\x8e\x7a", -+ [17824] = "\x90\x56", [17831] = "\x9d\xd0", [17833] = "\x95\xfb", -+ [17836] = "\x89\x97", [17837] = "\x8e\x7b", [17841] = "\x9d\xd3", -+ [17843] = "\x9d\xd1", [17844] = "\x9d\xd4", [17845] = "\x97\xb7", -+ [17846] = "\x9d\xd2", [17851] = "\x90\xf9", [17852] = "\x9d\xd5", -+ [17855] = "\x91\xb0", [17858] = "\x9d\xd6", [17863] = "\x8a\xf8", -+ [17865] = "\x9d\xd8", [17867] = "\x9d\xd7", [17872] = "\x9d\xd9", -+ [17873] = "\x9d\xda", [17874] = "\x8a\xf9", [17877] = "\x93\xfa", -+ [17878] = "\x92\x55", [17879] = "\x8b\x8c", [17880] = "\x8e\x7c", -+ [17881] = "\x91\x81", [17884] = "\x8f\x7b", [17885] = "\x88\xae", -+ [17889] = "\x9d\xdb", [17898] = "\x89\xa0", [17899] = "\x9d\xdf", -+ [17904] = "\xfa\xce", [17906] = "\x8d\x56", [17907] = "\x9d\xde", -+ [17910] = "\x8d\xa9", [17911] = "\x8f\xb8", [17913] = "\xfa\xd1", -+ [17914] = "\x9d\xdd", [17916] = "\x8f\xb9", [17918] = "\x96\xbe", -+ [17919] = "\x8d\xa8", [17923] = "\x88\xd5", [17924] = "\x90\xcc", -+ [17925] = "\xfa\xcf", [17932] = "\x9d\xe4", [17934] = "\xfa\xd3", -+ [17935] = "\x90\xaf", [17936] = "\x89\x66", [17940] = "\xfa\xd4", -+ [17941] = "\x8f\x74", [17943] = "\x96\x86", [17944] = "\x8d\xf0", -+ [17949] = "\x8f\xba", [17950] = "\xfa\xd2", [17951] = "\x90\xa5", -+ [17953] = "\xfa\x63", [17956] = "\x9d\xe3", [17957] = "\x9d\xe1", -+ [17958] = "\x9d\xe2", [17963] = "\xfa\xd0", [17964] = "\x92\x8b", -+ [17967] = "\x9e\x45", [17969] = "\x9d\xe8", [17970] = "\x8e\x9e", -+ [17971] = "\x8d\x57", [17972] = "\x9d\xe6", [17977] = "\x9d\xe7", -+ [17979] = "\x90\x57", [17983] = "\x9d\xe5", [17986] = "\x8e\x4e", -+ [17991] = "\xfa\xd6", [17993] = "\xfa\xd7", [17997] = "\x9d\xea", -+ [17998] = "\x9d\xe9", [17999] = "\x9d\xee", [18002] = "\x9d\xef", -+ [18004] = "\x9d\xeb", [18005] = "\xfa\xd5", [18006] = "\x8a\x41", -+ [18007] = "\x9d\xec", [18008] = "\x9d\xed", [18009] = "\x94\xd3", -+ [18014] = "\x95\x81", [18015] = "\x8c\x69", [18016] = "\x9d\xf0", -+ [18019] = "\xfa\xd9", [18020] = "\x90\xb0", [18022] = "\x8f\xbb", -+ [18026] = "\x92\x71", [18033] = "\x8b\xc5", [18035] = "\x9d\xf1", -+ [18036] = "\x9d\xf5", [18039] = "\x89\xc9", [18040] = "\x9d\xf2", -+ [18041] = "\x9d\xf4", [18046] = "\x9d\xf3", [18049] = "\x8f\x8b", -+ [18054] = "\x92\x67", [18055] = "\x88\xc3", [18056] = "\x9d\xf6", -+ [18057] = "\xfa\xda", [18061] = "\x9d\xf7", [18064] = "\xfa\xdb", -+ [18066] = "\x92\xa8", [18070] = "\x97\xef", [18075] = "\x8e\x62", -+ [18078] = "\x95\xe9", [18082] = "\xfa\xdc", [18084] = "\x96\x5c", -+ [18088] = "\x9e\x41", [18089] = "\x9d\xf9", [18092] = "\x9d\xfc", -+ [18094] = "\x9d\xfb", [18095] = "\xfa\xdd", [18097] = "\x9d\xf8", -+ [18100] = "\x9e\x40", [18103] = "\x93\xdc", [18105] = "\x9d\xfa", -+ [18118] = "\x9e\x42", [18121] = "\x8f\x8c", [18122] = "\x9e\x43", -+ [18124] = "\x97\x6a", [18125] = "\x94\x98", [18128] = "\x9e\x44", -+ [18134] = "\x9e\x46", [18137] = "\x9e\x47", [18144] = "\x9e\x48", -+ [18146] = "\x8b\xc8", [18147] = "\x89\x67", [18148] = "\x8d\x58", -+ [18149] = "\x9e\x49", [18151] = "\x9e\x4a", [18152] = "\x8f\x91", -+ [18153] = "\x91\x82", [18154] = "\xfa\xde", [18155] = "\xfa\x66", -+ [18156] = "\x99\xd6", [18157] = "\x91\x5d", [18158] = "\x91\x5c", -+ [18159] = "\x91\xd6", [18160] = "\x8d\xc5", [18163] = "\x98\xf0", -+ [18168] = "\x8c\x8e", [18169] = "\x97\x4c", [18171] = "\x95\xfc", -+ [18173] = "\x95\x9e", [18174] = "\xfa\xdf", [18175] = "\x9e\x4b", -+ [18180] = "\x8d\xf1", [18181] = "\x92\xbd", [18182] = "\x9e\x4c", -+ [18183] = "\x98\x4e", [18187] = "\x96\x5d", [18189] = "\x92\xa9", -+ [18190] = "\x9e\x4d", [18191] = "\x8a\xfa", [18198] = "\x9e\x4e", -+ [18199] = "\x9e\x4f", [18200] = "\x96\xd8", [18202] = "\x96\xa2", -+ [18203] = "\x96\x96", [18204] = "\x96\x7b", [18205] = "\x8e\x44", -+ [18206] = "\x9e\x51", [18209] = "\x8e\xe9", [18212] = "\x96\x70", -+ [18214] = "\x9e\x53", [18215] = "\x9e\x56", [18216] = "\x9e\x55", -+ [18218] = "\x8a\xf7", [18221] = "\x8b\x80", [18223] = "\x9e\x52", -+ [18225] = "\x9e\x54", [18230] = "\x9e\x57", [18233] = "\x90\x99", -+ [18238] = "\x97\x9b", [18239] = "\x88\xc7", [18240] = "\x8d\xde", -+ [18241] = "\x91\xba", [18243] = "\x8e\xdb", [18246] = "\x8f\xf1", -+ [18249] = "\x9e\x5a", [18252] = "\x93\x6d", [18254] = "\x9e\x58", -+ [18255] = "\x91\xa9", [18256] = "\x9e\x59", [18257] = "\x8f\xf0", -+ [18258] = "\x96\xdb", [18259] = "\x9e\x5b", [18260] = "\x9e\x5c", -+ [18261] = "\x97\x88", [18262] = "\xfa\xe1", [18266] = "\x9e\x61", -+ [18269] = "\x8d\x59", [18271] = "\x94\x74", [18272] = "\x9e\x5e", -+ [18273] = "\x93\x8c", [18274] = "\x9d\xdc", [18275] = "\x9d\xe0", -+ [18277] = "\x8b\x6e", [18279] = "\x94\x66", [18284] = "\x9e\x60", -+ [18286] = "\x8f\xbc", [18287] = "\x94\xc2", [18293] = "\x9e\x66", -+ [18295] = "\x94\xf8", [18297] = "\x9e\x5d", [18299] = "\x9e\x63", -+ [18300] = "\x9e\x62", [18304] = "\x90\xcd", [18309] = "\x96\x8d", -+ [18311] = "\x97\xd1", [18314] = "\x96\x87", [18316] = "\x89\xca", -+ [18317] = "\x8e\x7d", [18320] = "\x98\x67", [18321] = "\x9e\x65", -+ [18322] = "\x90\x95", [18326] = "\x9e\x64", [18329] = "\x9e\x5f", -+ [18335] = "\x8c\xcd", [18339] = "\x9e\x6b", [18340] = "\x9e\x69", -+ [18342] = "\x89\xcb", [18343] = "\x9e\x67", [18344] = "\x9e\x6d", -+ [18345] = "\x9e\x73", [18347] = "\xfa\xe2", [18352] = "\xfa\xe4", -+ [18353] = "\x91\xc6", [18356] = "\x95\xbf", [18358] = "\x9e\x75", -+ [18362] = "\x95\x41", [18366] = "\x9e\x74", [18367] = "\x94\x90", -+ [18368] = "\x96\x5e", [18369] = "\x8a\xb9", [18371] = "\x90\xf5", -+ [18372] = "\x8f\x5f", [18376] = "\x92\xd1", [18378] = "\x97\x4d", -+ [18381] = "\x9e\x70", [18382] = "\x9e\x6f", [18386] = "\x9e\x71", -+ [18388] = "\x9e\x6e", [18391] = "\x9e\x76", [18393] = "\x9e\x6c", -+ [18396] = "\x9e\x6a", [18398] = "\x9e\x72", [18399] = "\x9e\x68", -+ [18401] = "\x92\x8c", [18403] = "\x96\xf6", [18404] = "\x8e\xc4", -+ [18405] = "\x8d\xf2", [18411] = "\x8d\xb8", [18414] = "\x96\x8f", -+ [18415] = "\x8a\x60", [18417] = "\xfa\xe5", [18418] = "\x92\xcc", -+ [18419] = "\x93\xc8", [18420] = "\x89\x68", [18435] = "\x90\xf0", -+ [18438] = "\x90\xb2", [18439] = "\x8c\x49", [18446] = "\x9e\x78", -+ [18449] = "\x8d\x5a", [18450] = "\x8a\x9c", [18457] = "\x9e\x7a", -+ [18458] = "\x8a\x94", [18459] = "\x9e\x81", [18466] = "\x9e\x7d", -+ [18468] = "\x90\xf1", [18472] = "\x8a\x6a", [18473] = "\x8d\xaa", -+ [18476] = "\x8a\x69", [18477] = "\x8d\xcd", [18480] = "\x9e\x7b", -+ [18481] = "\x8c\x85", [18482] = "\x8c\x6a", [18483] = "\x93\x8d", -+ [18484] = "\xfa\xe6", [18486] = "\x9e\x79", [18488] = "\x88\xc4", -+ [18493] = "\x9e\x7c", [18494] = "\x9e\x7e", [18496] = "\x8b\xcb", -+ [18497] = "\x8c\x4b", [18498] = "\xfa\xe3", [18499] = "\x8a\xba", -+ [18500] = "\x8b\x6a", [18505] = "\x9e\x82", [18508] = "\x8d\xf7", -+ [18509] = "\x96\x91", [18511] = "\x8e\x56", [18515] = "\x9e\x83", -+ [18519] = "\x95\x4f", [18532] = "\x9e\x8f", [18534] = "\x89\xb1", -+ [18535] = "\x9e\x84", [18542] = "\x9e\x95", [18543] = "\x9e\x85", -+ [18545] = "\x97\xc0", [18547] = "\x9e\x8c", [18549] = "\x94\x7e", -+ [18557] = "\x9e\x94", [18559] = "\x9e\x87", [18563] = "\x88\xb2", -+ [18564] = "\x9e\x89", [18567] = "\x8d\x5b", [18571] = "\x9e\x8b", -+ [18573] = "\x9e\x8a", [18575] = "\x9e\x86", [18576] = "\x9e\x91", -+ [18578] = "\x8f\xbd", [18582] = "\x9a\xeb", [18583] = "\x8c\xe6", -+ [18584] = "\x97\x9c", [18589] = "\x9e\x88", [18591] = "\x92\xf2", -+ [18592] = "\x8a\x42", [18593] = "\x8d\xab", [18595] = "\x9e\x80", -+ [18597] = "\x9e\x90", [18598] = "\x8a\x81", [18601] = "\x9e\x8e", -+ [18602] = "\x9e\x92", [18604] = "\x93\x8e", [18612] = "\x8a\xfc", -+ [18614] = "\x9e\xb0", [18616] = "\xfa\x64", [18617] = "\x96\xc7", -+ [18618] = "\x9e\x97", [18619] = "\x8a\xfb", [18621] = "\x9e\x9e", -+ [18623] = "\xfa\xe7", [18626] = "\x96\x5f", [18628] = "\x9e\x9f", -+ [18629] = "\x9e\xa1", [18631] = "\x9e\xa5", [18632] = "\x9e\x99", -+ [18634] = "\x92\x49", [18639] = "\x93\x8f", [18640] = "\x9e\xa9", -+ [18641] = "\x9e\x9c", [18643] = "\x9e\xa6", [18647] = "\x9e\xa0", -+ [18654] = "\x90\x58", [18655] = "\x9e\xaa", [18658] = "\x90\xb1", -+ [18665] = "\x9e\xa8", [18666] = "\x8a\xbb", [18672] = "\x98\x6f", -+ [18673] = "\x9e\x96", [18676] = "\x9e\xa4", [18677] = "\x88\xd6", -+ [18680] = "\x9e\x98", [18683] = "\x96\xb8", [18684] = "\x9e\x9d", -+ [18685] = "\x90\x41", [18686] = "\x92\xc5", [18687] = "\x9e\x93", -+ [18690] = "\x9e\xa3", [18697] = "\x90\x9a", [18698] = "\x9e\xad", -+ [18699] = "\x8a\x91", [18700] = "\x8c\x9f", [18705] = "\x9e\xaf", -+ [18706] = "\x9e\x9a", [18707] = "\x9e\xae", [18709] = "\x9e\xa7", -+ [18710] = "\x9e\x9b", [18712] = "\x9e\xab", [18714] = "\x9e\xac", -+ [18720] = "\x9e\xbd", [18724] = "\x93\xcc", [18726] = "\x9e\xa2", -+ [18729] = "\x9e\xb9", [18733] = "\x9e\xbb", [18735] = "\x92\xd6", -+ [18746] = "\x97\x6b", [18755] = "\x95\x96", [18756] = "\x9e\xb6", -+ [18757] = "\x91\xc8", [18761] = "\x9e\xbc", [18762] = "\x91\x5e", -+ [18764] = "\x9e\xb3", [18765] = "\x9e\xc0", [18766] = "\x9e\xbf", -+ [18768] = "\x93\xed", [18769] = "\x9e\xbe", [18770] = "\x93\xe8", -+ [18776] = "\xfa\xe9", [18778] = "\x9e\xc2", [18779] = "\x9e\xb5", -+ [18781] = "\x8b\xc6", [18782] = "\x9e\xb8", [18783] = "\x8f\x7c", -+ [18787] = "\x94\x80", [18788] = "\x9e\xba", [18789] = "\x8b\xc9", -+ [18791] = "\x9e\xb2", [18792] = "\x9e\xb4", [18793] = "\x9e\xb1", -+ [18796] = "\x98\x4f", [18797] = "\x8a\x79", [18798] = "\x9e\xb7", -+ [18801] = "\x9e\xc1", [18802] = "\x8a\x54", [18810] = "\x8d\xe5", -+ [18814] = "\x89\x7c", [18817] = "\x9e\xd2", [18820] = "\x98\x50", -+ [18821] = "\x9e\xd5", [18824] = "\xfa\xeb", [18827] = "\x90\x59", -+ [18828] = "\x9e\xd4", [18832] = "\x9e\xd3", [18839] = "\x9e\xd0", -+ [18846] = "\x9e\xc4", [18849] = "\x9e\xe1", [18850] = "\x9e\xc3", -+ [18852] = "\x9e\xd6", [18859] = "\x9e\xce", [18862] = "\x9e\xc9", -+ [18863] = "\x9e\xc6", [18865] = "\x9e\xc7", [18867] = "\x9e\xcf", -+ [18871] = "\xea\xa0", [18874] = "\x9e\xcc", [18875] = "\x8d\x5c", -+ [18876] = "\x92\xc6", [18877] = "\x91\x84", [18878] = "\x9e\xca", -+ [18880] = "\x9e\xc5", [18883] = "\x9e\xc8", [18888] = "\x97\x6c", -+ [18889] = "\x96\x8a", [18893] = "\x9e\xcd", [18894] = "\x9e\xd7", -+ [18898] = "\xfa\xec", [18903] = "\x9e\xdf", [18904] = "\x9e\xd8", -+ [18907] = "\x9e\xe5", [18909] = "\x9e\xe3", [18914] = "\x9e\xde", -+ [18921] = "\x9e\xdd", [18923] = "\x92\xce", [18925] = "\x91\x85", -+ [18927] = "\x9e\xdb", [18930] = "\x9e\xd9", [18933] = "\x9e\xe0", -+ [18938] = "\x9e\xe6", [18939] = "\x94\xf3", [18940] = "\x9e\xec", -+ [18946] = "\x9e\xe7", [18947] = "\x9e\xea", [18948] = "\x9e\xe4", -+ [18951] = "\x92\x94", [18953] = "\x95\x57", [18955] = "\x9e\xda", -+ [18958] = "\x9e\xe2", [18959] = "\x8f\xbe", [18961] = "\x96\xcd", -+ [18962] = "\x9e\xf6", [18963] = "\x9e\xe9", [18969] = "\x8c\xa0", -+ [18970] = "\x89\xa1", [18971] = "\x8a\x7e", [18974] = "\x9e\xd1", -+ [18976] = "\xfa\xed", [18981] = "\x8f\xbf", [18982] = "\x9e\xee", -+ [18984] = "\x9e\xf5", [18985] = "\x8e\xf7", [18986] = "\x8a\x92", -+ [18989] = "\x92\x4d", [18996] = "\x9e\xeb", [18998] = "\xfa\xef", -+ [18999] = "\x9e\xf0", [19000] = "\x9e\xf4", [19003] = "\x8b\xb4", -+ [19016] = "\x8b\x6b", [19017] = "\x9e\xf2", [19023] = "\x8b\x40", -+ [19025] = "\x93\xc9", [19026] = "\x9e\xf1", [19030] = "\x9e\xf3", -+ [19035] = "\xfa\xee", [19042] = "\x9e\xed", [19043] = "\xfa\xf0", -+ [19048] = "\x9e\xef", [19054] = "\xfa\xf1", [19055] = "\x8a\x80", -+ [19056] = "\x92\x68", [19060] = "\x9e\xfa", [19069] = "\x9e\xf8", -+ [19070] = "\x8c\xe7", [19072] = "\x9e\xf7", [19079] = "\x9f\x40", -+ [19084] = "\x9e\x77", [19088] = "\x9e\xf9", [19090] = "\x9e\xfb", -+ [19091] = "\x9e\xfc", [19098] = "\x9f\x4b", [19100] = "\x9f\x47", -+ [19102] = "\x9e\x8d", [19107] = "\x9f\x46", [19112] = "\x9f\x45", -+ [19115] = "\x9f\x42", [19121] = "\x9e\xe8", [19122] = "\x9f\x44", -+ [19123] = "\x9f\x43", [19137] = "\x9f\x49", [19139] = "\x98\x45", -+ [19146] = "\x9f\x4c", [19147] = "\x8b\xf9", [19150] = "\x9f\x48", -+ [19151] = "\x9f\x4a", [19154] = "\xfa\xf2", [19156] = "\xfa\xf3", -+ [19160] = "\x94\xa5", [19162] = "\x9f\x4d", [19178] = "\x9f\x51", -+ [19179] = "\x9f\x4e", [19188] = "\x97\x93", [19189] = "\x9f\x4f", -+ [19194] = "\x9e\xdc", [19202] = "\x9f\x52", [19206] = "\x9f\x53", -+ [19213] = "\x89\x54", [19215] = "\x9f\x55", [19216] = "\x8c\x87", -+ [19217] = "\x8e\x9f", [19219] = "\x8b\xd3", [19223] = "\x89\xa2", -+ [19234] = "\x97\x7e", [19239] = "\x9f\x57", [19240] = "\x9f\x56", -+ [19241] = "\x9f\x59", [19242] = "\x8b\x5c", [19245] = "\x8b\xd4", -+ [19246] = "\x8a\xbc", [19251] = "\x9f\x5c", [19255] = "\x9f\x5b", -+ [19257] = "\x9f\x5d", [19260] = "\x89\xcc", [19262] = "\x92\x56", -+ [19264] = "\x9f\x5e", [19267] = "\x8a\xbd", [19268] = "\x9f\x60", -+ [19273] = "\x9f\x5f", [19275] = "\x9f\x61", [19279] = "\x9f\x62", -+ [19281] = "\x9f\x63", [19282] = "\x8e\x7e", [19283] = "\x90\xb3", -+ [19284] = "\x8d\x9f", [19286] = "\x95\x90", [19289] = "\x95\xe0", -+ [19290] = "\x98\x63", [19295] = "\x8e\x95", [19299] = "\x8d\xce", -+ [19300] = "\x97\xf0", [19304] = "\x9f\x64", [19305] = "\x9f\x65", -+ [19307] = "\x8e\x80", [19311] = "\x9f\x66", [19312] = "\x9f\x67", -+ [19315] = "\x9f\x69", [19316] = "\x9f\x68", [19318] = "\x96\x77", -+ [19321] = "\x8f\x7d", [19322] = "\x8e\xea", [19323] = "\x8e\x63", -+ [19325] = "\x9f\x6a", [19333] = "\x9f\x6c", [19334] = "\x90\x42", -+ [19336] = "\x9f\x6b", [19342] = "\x9f\x6d", [19348] = "\x9f\x6e", -+ [19354] = "\x9f\x6f", [19355] = "\x9f\x70", [19359] = "\x9f\x71", -+ [19361] = "\x9f\x73", [19362] = "\x9f\x72", [19363] = "\x9f\x74", -+ [19364] = "\x89\xa3", [19365] = "\x92\x69", [19367] = "\x9f\x75", -+ [19370] = "\x8e\x45", [19371] = "\x8a\x6b", [19372] = "\x9f\x76", -+ [19375] = "\x93\x61", [19376] = "\x9a\xca", [19381] = "\x8b\x42", -+ [19382] = "\x9f\x77", [19387] = "\x9f\x78", [19389] = "\x95\xea", -+ [19390] = "\x96\x88", [19394] = "\x93\xc5", [19395] = "\x9f\x79", -+ [19396] = "\x94\xe4", [19398] = "\xfa\xf4", [19400] = "\x94\xf9", -+ [19403] = "\x96\xd1", [19407] = "\x9f\x7a", [19419] = "\x9f\x7c", -+ [19420] = "\x9f\x7b", [19423] = "\x9f\x7e", [19427] = "\x9f\x7d", -+ [19448] = "\x9f\x81", [19455] = "\x8e\x81", [19457] = "\x96\xaf", -+ [19459] = "\x9f\x82", [19460] = "\x9f\x83", [19463] = "\x8b\x43", -+ [19467] = "\x9f\x84", [19475] = "\x9f\x86", [19476] = "\x9f\x85", -+ [19492] = "\x90\x85", [19495] = "\x95\x58", [19496] = "\x89\x69", -+ [19502] = "\x94\xc3", [19503] = "\xfa\xf5", [19504] = "\x92\xf3", -+ [19505] = "\x8f\x60", [19506] = "\x8b\x81", [19518] = "\x94\xc4", -+ [19520] = "\x8e\xac", [19525] = "\x9f\x88", [19527] = "\x8a\xbe", -+ [19530] = "\x89\x98", [19532] = "\xfa\xf6", [19533] = "\x93\xf0", -+ [19534] = "\x9f\x87", [19535] = "\x8d\x5d", [19536] = "\x92\x72", -+ [19538] = "\x9f\x89", [19544] = "\x9f\x91", [19546] = "\x9f\x8a", -+ [19551] = "\xfa\xf8", [19552] = "\x91\xbf", [19554] = "\x8b\x82", -+ [19555] = "\x9f\x92", [19562] = "\x8c\x88", [19565] = "\x8b\x44", -+ [19566] = "\x9f\x90", [19569] = "\x9f\x8e", [19570] = "\x9f\x8b", -+ [19571] = "\x97\x80", [19574] = "\xfa\xf7", [19576] = "\x92\xbe", -+ [19580] = "\x93\xd7", [19581] = "\x9f\x8c", [19584] = "\x9f\x94", -+ [19586] = "\x9f\x93", [19587] = "\x8c\x42", [19590] = "\x89\xab", -+ [19593] = "\x8d\xb9", [19594] = "\x9f\x8d", [19595] = "\x9f\x8f", -+ [19601] = "\x96\x76", [19602] = "\x91\xf2", [19611] = "\x96\x97", -+ [19614] = "\x9f\x9c", [19617] = "\x9f\x9d", [19619] = "\x89\xcd", -+ [19624] = "\x95\xa6", [19625] = "\x96\xfb", [19626] = "\x9f\x9f", -+ [19627] = "\x8e\xa1", [19628] = "\x8f\xc0", [19629] = "\x9f\x98", -+ [19630] = "\x9f\x9e", [19631] = "\x89\x88", [19633] = "\x8b\xb5", -+ [19636] = "\x9f\x95", [19637] = "\x9f\x9a", [19641] = "\x90\xf2", -+ [19642] = "\x94\x91", [19644] = "\x94\xe5", [19651] = "\x9f\x97", -+ [19653] = "\x96\x40", [19655] = "\x9f\x99", [19657] = "\x9f\xa2", -+ [19658] = "\xfa\xf9", [19659] = "\x9f\xa0", [19661] = "\x9f\x9b", -+ [19665] = "\x96\x41", [19666] = "\x94\x67", [19667] = "\x8b\x83", -+ [19669] = "\x93\x44", [19672] = "\x92\x8d", [19674] = "\x9f\xa3", -+ [19679] = "\x9f\xa1", [19680] = "\x91\xd7", [19681] = "\x9f\x96", -+ [19683] = "\x89\x6a", [19700] = "\xfa\xfa", [19707] = "\x97\x6d", -+ [19708] = "\x9f\xae", [19714] = "\x9f\xad", [19719] = "\x90\xf4", -+ [19721] = "\x9f\xaa", [19723] = "\x97\x8c", [19726] = "\x93\xb4", -+ [19727] = "\x9f\xa4", [19733] = "\x92\xc3", [19737] = "\x89\x6b", -+ [19738] = "\x8d\x5e", [19739] = "\x9f\xa7", [19746] = "\x8f\x46", -+ [19747] = "\x9f\xac", [19749] = "\x9f\xab", [19750] = "\x9f\xa6", -+ [19752] = "\x9f\xa9", [19755] = "\x8a\x88", [19757] = "\x9f\xa8", -+ [19758] = "\x94\x68", [19761] = "\x97\xac", [19764] = "\x8f\xf2", -+ [19765] = "\x90\xf3", [19785] = "\x9f\xb4", [19786] = "\x9f\xb2", -+ [19788] = "\x95\x6c", [19795] = "\x9f\xaf", [19796] = "\x9f\xb1", -+ [19798] = "\x89\x59", [19801] = "\x8d\x5f", [19802] = "\x98\x51", -+ [19804] = "\x8a\x5c", [19806] = "\x95\x82", [19807] = "\xfa\xfc", -+ [19812] = "\x97\x81", [19815] = "\x8a\x43", [19816] = "\x90\x5a", -+ [19817] = "\x9f\xb3", [19829] = "\x9f\xb8", [19831] = "\xfa\xfb", -+ [19832] = "\x8f\xc1", [19836] = "\x97\x4f", [19838] = "\x9f\xb5", -+ [19843] = "\x9f\xb0", [19845] = "\x9f\xb6", [19846] = "\xfb\x40", -+ [19849] = "\x97\xdc", [19851] = "\x93\x93", [19852] = "\x93\xc0", -+ [19868] = "\xfb\x41", [19871] = "\x8a\x55", [19874] = "\x89\x74", -+ [19877] = "\x9f\xbc", [19880] = "\x9f\xbf", [19884] = "\x97\xc1", -+ [19888] = "\x97\x84", [19893] = "\x9f\xc6", [19894] = "\x9f\xc0", -+ [19895] = "\x9f\xbd", [19899] = "\x97\xd2", [19900] = "\x9f\xc3", -+ [19903] = "\xfb\x42", [19905] = "\x8f\x69", [19906] = "\x9f\xc5", -+ [19909] = "\x9f\xca", [19912] = "\x93\x91", [19913] = "\x9f\xc8", -+ [19918] = "\x9f\xc2", [19921] = "\x92\x57", [19924] = "\x9f\xc9", -+ [19926] = "\x9f\xbe", [19928] = "\x9f\xc4", [19930] = "\x9f\xcb", -+ [19931] = "\x88\xfa", [19932] = "\x9f\xc1", [19934] = "\x9f\xcc", -+ [19937] = "\x90\x5b", [19938] = "\xfb\x44", [19939] = "\x8f\x7e", -+ [19941] = "\x95\xa3", [19943] = "\x8d\xac", [19944] = "\xfb\x43", -+ [19945] = "\x9f\xb9", [19946] = "\x9f\xc7", [19947] = "\x93\x59", -+ [19948] = "\xfb\x45", [19957] = "\x90\xb4", [19959] = "\x8a\x89", -+ [19960] = "\x8d\xcf", [19961] = "\x8f\xc2", [19962] = "\x9f\xbb", -+ [19963] = "\x8f\x61", [19971] = "\x8c\x6b", [19973] = "\x9f\xba", -+ [19977] = "\x9f\xd0", [19978] = "\x8f\x8d", [19979] = "\x8c\xb8", -+ [19981] = "\x9f\xdf", [19983] = "\x9f\xd9", [19984] = "\x8b\x94", -+ [19985] = "\x93\x6e", [19987] = "\x9f\xd4", [19988] = "\x9f\xdd", -+ [19989] = "\x88\xad", [19990] = "\x89\x51", [19991] = "\xfb\x48", -+ [19993] = "\x89\xb7", [19995] = "\x9f\xd6", [19996] = "\x91\xaa", -+ [19997] = "\x9f\xcd", [19998] = "\x9f\xcf", [19999] = "\x8d\x60", -+ [20008] = "\x9f\xe0", [20009] = "\xfb\x46", [20010] = "\x9f\xdb", -+ [20012] = "\xfb\x49", [20014] = "\x9f\xd3", [20019] = "\x9f\xda", -+ [20026] = "\x96\xa9", [20029] = "\x9f\xd8", [20030] = "\x9f\xdc", -+ [20038] = "\x8c\xce", [20040] = "\x8f\xc3", [20043] = "\x92\x58", -+ [20044] = "\xfb\x47", [20047] = "\x9f\xd2", [20055] = "\x97\x4e", -+ [20059] = "\x9f\xd5", [20062] = "\x9f\xce", [20063] = "\x93\x92", -+ [20066] = "\x9f\xd1", [20070] = "\x9f\xd7", [20078] = "\x98\x70", -+ [20079] = "\x8e\xbc", [20080] = "\x96\x9e", [20082] = "\x9f\xe1", -+ [20092] = "\x94\xac", [20095] = "\x9f\xed", [20096] = "\x8c\xb9", -+ [20102] = "\x8f\x80", [20104] = "\x9f\xe3", [20108] = "\x97\xad", -+ [20109] = "\x8d\x61", [20111] = "\x9f\xf0", [20114] = "\x88\xec", -+ [20117] = "\x9f\xee", [20122] = "\x9f\xe2", [20127] = "\x9f\xe8", -+ [20130] = "\x9f\xea", [20134] = "\x97\x6e", [20135] = "\x9f\xe5", -+ [20138] = "\x93\x4d", [20141] = "\x9f\xe7", [20143] = "\xfb\x4a", -+ [20146] = "\x9f\xef", [20148] = "\x9f\xe9", [20149] = "\x96\xc5", -+ [20153] = "\x9f\xe4", [20155] = "\x8e\xa0", [20156] = "\x9f\xfc", -+ [20161] = "\x8a\x8a", [20163] = "\x9f\xe6", [20164] = "\x9f\xeb", -+ [20165] = "\x9f\xec", [20173] = "\x91\xea", [20174] = "\x91\xd8", -+ [20188] = "\x9f\xf4", [20191] = "\x9f\xfa", [20194] = "\x9f\xf8", -+ [20196] = "\x93\x48", [20199] = "\xe0\x42", [20200] = "\x9f\xf5", -+ [20206] = "\x9f\xf6", [20207] = "\x9f\xde", [20209] = "\x8b\x99", -+ [20210] = "\x95\x59", [20214] = "\x8e\xbd", [20217] = "\x8d\x97", -+ [20223] = "\x98\x52", [20225] = "\x9f\xf2", [20227] = "\xe0\x41", -+ [20228] = "\x89\x89", [20229] = "\x91\x86", [20240] = "\x94\x99", -+ [20242] = "\x8a\xbf", [20243] = "\x97\xf8", [20251] = "\x96\x9f", -+ [20252] = "\x92\xd0", [20257] = "\x9f\xf9", [20258] = "\x9f\xfb", -+ [20264] = "\x91\x51", [20270] = "\xe0\x40", [20271] = "\x9f\xf7", -+ [20273] = "\x9f\xf1", [20277] = "\x8a\xc1", [20292] = "\x8c\x89", -+ [20296] = "\xe0\x4e", [20299] = "\xe0\x49", [20300] = "\x90\xf6", -+ [20303] = "\x8a\x83", [20308] = "\x8f\x81", [20310] = "\xe0\x52", -+ [20317] = "\xe0\x4b", [20318] = "\x92\xaa", [20319] = "\xe0\x48", -+ [20320] = "\x92\xd7", [20324] = "\xe0\x6b", [20328] = "\xe0\x45", -+ [20330] = "\xe0\x44", [20332] = "\xe0\x4d", [20336] = "\xe0\x47", -+ [20337] = "\xe0\x46", [20338] = "\xe0\x4c", [20340] = "\x90\x9f", -+ [20342] = "\xe0\x43", [20344] = "\xfb\x4b", [20350] = "\xe0\x4f", -+ [20353] = "\xe0\x50", [20359] = "\x8a\xc0", [20369] = "\xe0\x55", -+ [20371] = "\xe0\x54", [20372] = "\xe0\x56", [20378] = "\xe0\x59", -+ [20385] = "\x93\x62", [20387] = "\xe0\x53", [20389] = "\xfb\x4c", -+ [20393] = "\xe0\x57", [20400] = "\x8c\x83", [20401] = "\x91\xf7", -+ [20402] = "\xe0\x51", [20403] = "\x94\x5a", [20406] = "\xe0\x58", -+ [20420] = "\xe0\x5d", [20421] = "\xe0\x5b", [20424] = "\xe0\x5e", -+ [20427] = "\xe0\x61", [20431] = "\xe0\x5a", [20432] = "\x8d\x8a", -+ [20433] = "\x94\x47", [20436] = "\x9f\xb7", [20443] = "\x97\x94", -+ [20444] = "\xe0\x5c", [20446] = "\xe0\x60", [20447] = "\x91\xf3", -+ [20449] = "\xe0\x5f", [20451] = "\xe0\x4a", [20453] = "\xfb\x4d", -+ [20454] = "\xe8\x89", [20458] = "\xe0\x64", [20462] = "\xe0\x68", -+ [20465] = "\xe0\x66", [20469] = "\xfb\x4e", [20471] = "\xfb\x4f", -+ [20473] = "\xe0\x62", [20475] = "\xe0\x63", [20479] = "\xe0\x67", -+ [20481] = "\xe0\x65", [20485] = "\x95\x6d", [20488] = "\xe0\x6d", -+ [20490] = "\xe0\x6a", [20491] = "\xe0\x69", [20493] = "\xe0\x6c", -+ [20494] = "\x93\xd2", [20495] = "\xe0\x6e", [20502] = "\x92\x95", -+ [20503] = "\x91\xeb", [20504] = "\xfb\x50", [20508] = "\x90\xa3", -+ [20512] = "\xe0\x6f", [20514] = "\xe0\x71", [20526] = "\xe0\x70", -+ [20540] = "\x9f\xf3", [20545] = "\xe0\x72", [20552] = "\x93\xe5", -+ [20563] = "\xe0\x73", [20571] = "\x89\xce", [20575] = "\x93\x94", -+ [20576] = "\x8a\x44", [20584] = "\x8b\x84", [20588] = "\x8e\xdc", -+ [20589] = "\x8d\xd0", [20597] = "\xfb\x51", [20601] = "\x98\x46", -+ [20602] = "\x90\x86", [20606] = "\x89\x8a", [20610] = "\xe0\x75", -+ [20617] = "\xe0\x74", [20635] = "\xfb\x52", [20636] = "\xe0\x78", -+ [20637] = "\x92\x59", [20638] = "\xe0\x7b", [20639] = "\xe0\x76", -+ [20643] = "\xe0\x7a", [20648] = "\xe0\x79", [20649] = "\x93\x5f", -+ [20650] = "\x88\xd7", [20651] = "\xfa\x62", [20664] = "\x97\xf3", -+ [20667] = "\xe0\x7d", [20671] = "\x89\x47", [20681] = "\xe0\x80", -+ [20685] = "\xe0\x7e", [20687] = "\xe0\x7c", [20705] = "\xe0\x77", -+ [20713] = "\x96\x42", [20717] = "\xe0\x82", [20724] = "\xfb\x54", -+ [20729] = "\xe0\x81", [20735] = "\xfb\x53", [20740] = "\x89\x8b", -+ [20745] = "\xe0\x84", [20746] = "\x95\xb0", [20748] = "\xe0\x83", -+ [20753] = "\x96\xb3", [20758] = "\x8f\xc5", [20774] = "\x91\x52", -+ [20780] = "\x8f\xc4", [20790] = "\xfb\x56", [20791] = "\xfb\x57", -+ [20793] = "\x97\xf9", [20796] = "\xe0\x8a", [20798] = "\x90\xf7", -+ [20805] = "\xe0\x86", [20806] = "\xe0\x8b", [20809] = "\x89\x8c", -+ [20812] = "\xfb\x55", [20818] = "\xe0\x89", [20820] = "\x94\x81", -+ [20821] = "\xe0\x85", [20822] = "\xe0\x88", [20823] = "\x8f\xc6", -+ [20825] = "\x94\xcf", [20828] = "\xe0\x8c", [20830] = "\x8e\xcf", -+ [20845] = "\x90\xf8", [20852] = "\xe0\x8f", [20856] = "\xe0\x87", -+ [20858] = "\x8c\x46", [20863] = "\xe0\x8d", [20868] = "\x97\x6f", -+ [20869] = "\xe0\x90", [20873] = "\xea\xa4", [20879] = "\x8f\x6e", -+ [20888] = "\xe0\x91", [20892] = "\xe0\x92", [20897] = "\x94\x4d", -+ [20905] = "\xe0\x94", [20910] = "\xe0\x95", [20913] = "\xfb\x59", -+ [20915] = "\x94\x52", [20920] = "\x93\x95", [20921] = "\xe0\x97", -+ [20926] = "\xe0\x99", [20928] = "\x97\xd3", [20930] = "\xe0\x96", -+ [20932] = "\xe0\x98", [20933] = "\x89\x8d", [20935] = "\xe0\x93", -+ [20943] = "\x9a\x7a", [20944] = "\xe0\x9a", [20949] = "\x91\x87", -+ [20950] = "\x8e\x57", [20951] = "\xe0\x9c", [20956] = "\xe0\x9b", -+ [20957] = "\x90\x43", [20958] = "\x99\xd7", [20965] = "\xe0\x9d", -+ [20969] = "\xe0\x9f", [20971] = "\xe0\x8e", [20972] = "\xe0\x9e", -+ [20974] = "\xfb\x5a", [20975] = "\xe0\xa0", [20982] = "\x94\x9a", -+ [20989] = "\xe0\xa1", [20992] = "\xe0\xa2", [21003] = "\xe0\xa3", -+ [21016] = "\xe0\xa4", [21018] = "\x92\xdc", [21020] = "\xe0\xa6", -+ [21021] = "\xe0\xa5", [21024] = "\xe0\xa7", [21026] = "\xe0\xa8", -+ [21029] = "\x8e\xdd", [21030] = "\x95\x83", [21034] = "\x96\xea", -+ [21035] = "\xe0\xa9", [21036] = "\xe0\xaa", [21037] = "\x91\x75", -+ [21038] = "\x8e\xa2", [21039] = "\xe0\xab", [21040] = "\xe0\xac", -+ [21046] = "\xe0\xad", [21047] = "\x95\xd0", [21048] = "\x94\xc5", -+ [21051] = "\xe0\xae", [21052] = "\x94\x76", [21058] = "\x92\xab", -+ [21064] = "\xe0\xaf", [21065] = "\x89\xe5", [21067] = "\x8b\x8d", -+ [21069] = "\x96\xc4", [21071] = "\x96\xb4", [21073] = "\x89\xb2", -+ [21074] = "\x98\x53", [21079] = "\x96\x71", [21081] = "\x95\xa8", -+ [21090] = "\x90\xb5", [21092] = "\xe0\xb0", [21097] = "\x93\xc1", -+ [21101] = "\x8c\xa1", [21102] = "\xe0\xb1", [21104] = "\x8d\xd2", -+ [21105] = "\xe0\xb3", [21106] = "\xe0\xb2", [21111] = "\xe0\xb4", -+ [21122] = "\xe0\xb5", [21126] = "\xe0\xb6", [21136] = "\x8b\x5d", -+ [21138] = "\xe0\xb7", [21143] = "\xe0\xb8", [21148] = "\x8c\xa2", -+ [21151] = "\x94\xc6", [21153] = "\xfb\x5b", [21154] = "\xe0\xba", -+ [21158] = "\x8f\xf3", [21161] = "\xe0\xb9", [21166] = "\xfb\x5c", -+ [21170] = "\x8b\xb6", [21171] = "\xe0\xbb", [21172] = "\xe0\xbd", -+ [21174] = "\xe0\xbc", [21182] = "\xe0\xbe", [21184] = "\x8c\xcf", -+ [21186] = "\xe0\xbf", [21191] = "\x8b\xe7", [21193] = "\x91\x5f", -+ [21195] = "\x8d\x9d", [21200] = "\xe0\xc1", [21201] = "\xe0\xc2", -+ [21202] = "\xe0\xc0", [21209] = "\x8e\xeb", [21212] = "\x93\xc6", -+ [21213] = "\x8b\xb7", [21223] = "\xe0\xc4", [21224] = "\x92\x4b", -+ [21225] = "\xe0\xc3", [21228] = "\x98\x54", [21229] = "\x94\x82", -+ [21242] = "\xe0\xc7", [21254] = "\xe0\xc9", [21255] = "\xe0\xc6", -+ [21259] = "\x96\xd2", [21260] = "\xe0\xc8", [21261] = "\xe0\xca", -+ [21263] = "\x97\xc2", [21268] = "\xfb\x5d", [21269] = "\xe0\xce", -+ [21273] = "\xe0\xcd", [21274] = "\x92\x96", [21275] = "\x94\x4c", -+ [21278] = "\x8c\xa3", [21279] = "\xe0\xcc", [21284] = "\xe0\xcb", -+ [21286] = "\x97\x50", [21287] = "\x97\x51", [21294] = "\xe0\xcf", -+ [21295] = "\x89\x8e", [21300] = "\x8d\x96", [21301] = "\x8e\x82", -+ [21310] = "\xe0\xd0", [21311] = "\xe0\xd1", [21319] = "\xe0\xd3", -+ [21331] = "\x8f\x62", [21336] = "\xe0\xd5", [21338] = "\xe0\xd4", -+ [21344] = "\xe0\xd6", [21346] = "\x8a\x6c", [21349] = "\xe0\xd8", -+ [21351] = "\xfb\x5f", [21352] = "\xe0\xd7", [21354] = "\xe0\xda", -+ [21355] = "\xe0\xd9", [21364] = "\x8c\xba", [21367] = "\x97\xa6", -+ [21369] = "\x8b\xca", [21371] = "\x89\xa4", [21382] = "\x8b\xe8", -+ [21401] = "\x8a\xdf", [21410] = "\x97\xe6", [21411] = "\xe0\xdc", -+ [21419] = "\xe0\xde", [21421] = "\xfb\x60", [21424] = "\xe0\xdf", -+ [21426] = "\x89\xcf", [21432] = "\xe0\xdb", [21433] = "\xfb\x61", -+ [21434] = "\x8e\x58", [21437] = "\x92\xbf", [21438] = "\xe0\xdd", -+ [21442] = "\xfb\x64", [21446] = "\xfb\x62", [21454] = "\xe0\xe2", -+ [21456] = "\x8e\xec", [21459] = "\xfb\x63", [21461] = "\xe0\xe0", -+ [21466] = "\x8c\x5d", [21469] = "\x94\xc7", [21470] = "\xe0\xe1", -+ [21473] = "\xe0\xfc", [21477] = "\xfb\x66", [21480] = "\xe0\xe7", -+ [21486] = "\x8c\xbb", [21491] = "\x8b\x85", [21493] = "\xe0\xe4", -+ [21494] = "\x97\x9d", [21495] = "\xfb\x65", [21497] = "\x97\xae", -+ [21522] = "\x91\xf4", [21525] = "\xe0\xe6", [21526] = "\xfb\x67", -+ [21529] = "\xfb\x69", [21530] = "\xfb\x68", [21534] = "\xfb\x6a", -+ [21538] = "\xe0\xe8", [21539] = "\x97\xd4", [21540] = "\x8b\xd5", -+ [21541] = "\x94\xfa", [21542] = "\x94\x69", [21546] = "\xe0\xe9", -+ [21551] = "\xe0\xeb", [21553] = "\xe0\xee", [21573] = "\xe0\xea", -+ [21577] = "\xe0\xed", [21578] = "\x8c\xe8", [21579] = "\x89\x6c", -+ [21580] = "\xe0\xef", [21582] = "\x90\x90", [21583] = "\xe0\xec", -+ [21584] = "\x97\xda", [21586] = "\xfb\x6b", [21587] = "\xe0\xf2", -+ [21588] = "\xea\xa2", [21593] = "\xe0\xf0", [21594] = "\xe0\xf3", -+ [21599] = "\xe0\xe5", [21600] = "\xe0\xf1", [21603] = "\x8d\xba", -+ [21606] = "\xe0\xf4", [21614] = "\xe0\xf5", [21619] = "\x97\x9e", -+ [21625] = "\xfb\x6c", [21627] = "\xe0\xf6", [21646] = "\xe0\xf7", -+ [21647] = "\xfb\x6d", [21650] = "\xe0\xe3", [21655] = "\xe0\xf8", -+ [21664] = "\x8a\xc2", [21677] = "\x8e\xa3", [21690] = "\xe0\xf9", -+ [21695] = "\xe0\xfa", [21700] = "\xe0\xfb", [21708] = "\x89\x5a", -+ [21712] = "\xe1\x40", [21714] = "\x95\x5a", [21715] = "\xe1\x41", -+ [21718] = "\x8a\xa2", [21719] = "\xe1\x42", [21721] = "\xe1\x43", -+ [21726] = "\xe1\x44", [21728] = "\xe1\x46", [21729] = "\xe1\x47", -+ [21730] = "\xe1\x45", [21734] = "\x95\x72", [21735] = "\xe1\x49", -+ [21736] = "\xe1\x48", [21745] = "\xfb\x6e", [21747] = "\xe1\x4b", -+ [21748] = "\xe1\x4a", [21749] = "\xe1\x4c", [21756] = "\xe1\x4d", -+ [21757] = "\xe1\x4f", [21758] = "\xe1\x4e", [21761] = "\x8d\x99", -+ [21763] = "\xe1\x51", [21765] = "\xe1\x50", [21768] = "\x8a\xc3", -+ [21770] = "\x90\x72", [21772] = "\x93\x5b", [21774] = "\xe1\x52", -+ [21775] = "\x90\xb6", [21779] = "\x8e\x59", [21781] = "\x89\x99", -+ [21782] = "\xe1\x53", [21784] = "\x97\x70", [21787] = "\x95\xe1", -+ [21788] = "\xe1\x54", [21791] = "\xfa\xa8", [21792] = "\x93\x63", -+ [21793] = "\x97\x52", [21794] = "\x8d\x62", [21795] = "\x90\x5c", -+ [21799] = "\x92\x6a", [21800] = "\x99\xb2", [21802] = "\x92\xac", -+ [21803] = "\x89\xe6", [21804] = "\xe1\x55", [21812] = "\xe1\x56", -+ [21814] = "\xe1\x5b", [21817] = "\xe1\x59", [21818] = "\xe1\x58", -+ [21819] = "\x9d\xc0", [21820] = "\x8a\x45", [21821] = "\xe1\x57", -+ [21823] = "\x88\xd8", [21825] = "\x94\xa8", [21828] = "\x94\xc8", -+ [21833] = "\x97\xaf", [21834] = "\xe1\x5c", [21835] = "\xe1\x5a", -+ [21836] = "\x92\x7b", [21837] = "\x90\xa4", [21840] = "\x94\xa9", -+ [21842] = "\x95\x4c", [21844] = "\xe1\x5e", [21845] = "\x97\xaa", -+ [21846] = "\x8c\x6c", [21847] = "\xe1\x5f", [21849] = "\xe1\x5d", -+ [21850] = "\x94\xd4", [21851] = "\xe1\x60", [21853] = "\xe1\x61", -+ [21855] = "\xfb\x6f", [21856] = "\x88\xd9", [21859] = "\x8f\xf4", -+ [21860] = "\xe1\x66", [21862] = "\xe1\x63", [21863] = "\x93\xeb", -+ [21864] = "\xe1\x62", [21871] = "\x8b\x45", [21874] = "\xe1\x69", -+ [21878] = "\xe1\x64", [21879] = "\xe1\x65", [21881] = "\xe1\x68", -+ [21882] = "\xe1\x67", [21883] = "\x95\x44", [21886] = "\x91\x61", -+ [21887] = "\x91\x60", [21889] = "\x8b\x5e", [21892] = "\xe1\x6a", -+ [21898] = "\xe1\x6b", [21901] = "\xe1\x6c", [21907] = "\xe1\x6e", -+ [21909] = "\xe1\x6d", [21915] = "\x89\x75", [21921] = "\xe1\x76", -+ [21922] = "\x94\xe6", [21923] = "\xe1\x70", [21925] = "\xe1\x72", -+ [21928] = "\xe1\x74", [21929] = "\x90\x5d", [21932] = "\xe1\x75", -+ [21933] = "\xe1\x73", [21934] = "\x8e\xbe", [21938] = "\xe1\x6f", -+ [21939] = "\xe1\x71", [21941] = "\x95\x61", [21943] = "\x8f\xc7", -+ [21946] = "\xe1\x78", [21949] = "\xe1\x77", [21954] = "\xe1\x79", -+ [21956] = "\x8e\xa4", [21957] = "\x8d\xad", [21960] = "\x93\x97", -+ [21961] = "\xe1\x7a", [21963] = "\x92\xc9", [21966] = "\xe1\x7c", -+ [21970] = "\x97\x9f", [21971] = "\xe1\x7b", [21977] = "\x91\x89", -+ [21984] = "\xe1\x82", [21986] = "\xe1\x84", [21987] = "\xe1\x85", -+ [21988] = "\x92\x73", [21994] = "\xe1\x83", [21996] = "\xe1\x80", -+ [21998] = "\xe1\x7d", [21999] = "\xe1\x7e", [22001] = "\xe1\x81", -+ [22009] = "\xe1\x88", [22011] = "\xe1\x86", [22013] = "\xe1\x87", -+ [22031] = "\xe1\x89", [22032] = "\xe1\x8b", [22033] = "\xe1\x8c", -+ [22034] = "\xe1\x8d", [22036] = "\xe1\x8e", [22039] = "\xe1\x8a", -+ [22048] = "\xe1\x90", [22052] = "\xe1\x8f", [22059] = "\xe1\x91", -+ [22066] = "\x97\xc3", [22070] = "\xe1\x94", [22071] = "\xe1\x92", -+ [22072] = "\xe1\x93", [22076] = "\x8a\xe0", [22082] = "\x96\xfc", -+ [22086] = "\x95\xc8", [22088] = "\xe1\x96", [22092] = "\xe1\x95", -+ [22097] = "\xe1\x97", [22098] = "\xe1\x98", [22103] = "\xe1\x9c", -+ [22104] = "\xe1\x99", [22105] = "\xe1\x9a", [22106] = "\xe1\x9b", -+ [22108] = "\xe1\x9d", [22112] = "\xe1\x9e", [22114] = "\xe1\x9f", -+ [22118] = "\xe1\xa0", [22120] = "\xe1\xa1", [22122] = "\x94\xad", -+ [22123] = "\x93\x6f", [22124] = "\xe1\xa2", [22125] = "\x94\x92", -+ [22126] = "\x95\x53", [22128] = "\xe1\xa3", [22130] = "\xfb\x70", -+ [22131] = "\xe1\xa4", [22132] = "\x93\x49", [22134] = "\x8a\x46", -+ [22135] = "\x8d\x63", [22136] = "\xe1\xa5", [22139] = "\xe1\xa6", -+ [22142] = "\xe1\xa7", [22144] = "\x8e\x48", [22147] = "\xe1\xa9", -+ [22150] = "\xe1\xa8", [22153] = "\xe1\xaa", [22154] = "\xe1\xab", -+ [22155] = "\xfb\x73", [22156] = "\xfb\x71", [22158] = "\xfb\x72", -+ [22166] = "\xfb\x74", [22174] = "\x94\xe7", [22176] = "\xe1\xac", -+ [22180] = "\xe1\xad", [22183] = "\xea\x89", [22184] = "\xe1\xae", -+ [22185] = "\xe1\xaf", [22186] = "\xe1\xb0", [22191] = "\x8e\x4d", -+ [22194] = "\xe1\xb1", [22195] = "\x94\x75", [22198] = "\x96\x7e", -+ [22200] = "\x89\x6d", [22202] = "\x89\x76", [22205] = "\xe1\xb2", -+ [22210] = "\xe1\xb4", [22214] = "\xe1\xb3", [22215] = "\x93\x90", -+ [22219] = "\x90\xb7", [22220] = "\x9f\x58", [22222] = "\xe1\xb5", -+ [22223] = "\x96\xbf", [22225] = "\xe1\xb6", [22227] = "\x8a\xc4", -+ [22228] = "\x94\xd5", [22229] = "\xe1\xb7", [22231] = "\xe1\xb8", -+ [22234] = "\xe1\xb9", [22238] = "\x96\xda", [22242] = "\x96\xd3", -+ [22244] = "\x92\xbc", [22248] = "\x91\x8a", [22251] = "\xe1\xbb", -+ [22254] = "\x8f\x82", [22257] = "\x8f\xc8", [22260] = "\xe1\xbe", -+ [22263] = "\xe1\xbd", [22264] = "\xe1\xbc", [22265] = "\x94\xfb", -+ [22267] = "\x8a\xc5", [22268] = "\x8c\xa7", [22283] = "\xe1\xc4", -+ [22286] = "\xe1\xc1", [22287] = "\x90\x5e", [22288] = "\x96\xb0", -+ [22292] = "\xe1\xc0", [22293] = "\xe1\xc2", [22294] = "\xe1\xc3", -+ [22297] = "\xe1\xbf", [22311] = "\xe1\xc5", [22312] = "\xe1\xc6", -+ [22314] = "\x92\xad", [22316] = "\x8a\xe1", [22320] = "\x92\x85", -+ [22326] = "\xfb\x76", [22327] = "\xe1\xc7", [22346] = "\xe1\xc8", -+ [22347] = "\xe1\xcb", [22353] = "\x90\x87", [22355] = "\x93\xc2", -+ [22357] = "\xe1\xcc", [22358] = "\x96\x72", [22360] = "\xe1\xc9", -+ [22363] = "\xe1\xca", [22377] = "\xe1\xcf", [22382] = "\xe1\xce", -+ [22383] = "\xe1\xcd", [22395] = "\xe1\xd1", [22398] = "\xe1\xd0", -+ [22401] = "\xe1\xd2", [22414] = "\xe1\xd4", [22416] = "\xe1\xd3", -+ [22421] = "\x95\xcb", [22428] = "\x8f\x75", [22429] = "\x97\xc4", -+ [22432] = "\xe1\xd5", [22435] = "\x93\xb5", [22438] = "\xe1\xd6", -+ [22441] = "\xe1\xd7", [22443] = "\xe1\xdb", [22444] = "\xe1\xd9", -+ [22445] = "\xe1\xda", [22447] = "\xe1\xd8", [22455] = "\xe1\xdc", -+ [22461] = "\xe1\xdd", [22471] = "\xe1\xde", [22474] = "\xe1\xdf", -+ [22475] = "\x96\xb5", [22476] = "\xe1\xe0", [22482] = "\x96\xee", -+ [22483] = "\xe1\xe1", [22485] = "\x92\x6d", [22487] = "\x94\x8a", -+ [22489] = "\x8b\xe9", [22493] = "\x92\x5a", [22494] = "\xe1\xe2", -+ [22495] = "\x8b\xb8", [22499] = "\x90\xce", [22508] = "\xe1\xe3", -+ [22514] = "\x8d\xbb", [22524] = "\xe1\xe4", [22530] = "\xe1\xe5", -+ [22532] = "\x8c\xa4", [22533] = "\x8d\xd3", [22544] = "\xe1\xe7", -+ [22545] = "\xfb\x78", [22549] = "\x93\x75", [22550] = "\x8d\xd4", -+ [22551] = "\x8b\x6d", [22562] = "\x96\x43", [22564] = "\x94\x6a", -+ [22570] = "\x93\x76", [22575] = "\x8d\x7b", [22581] = "\xe1\xe9", -+ [22590] = "\xfb\x79", [22605] = "\x8f\xc9", [22612] = "\xfb\x7a", -+ [22619] = "\x97\xb0", [22620] = "\x8d\x64", [22623] = "\x8c\xa5", -+ [22626] = "\x94\xa1", [22628] = "\xe1\xeb", [22634] = "\xfb\x7b", -+ [22636] = "\xe1\xed", [22641] = "\x8c\xe9", [22646] = "\xe1\xec", -+ [22647] = "\x92\xf4", [22652] = "\xe1\xef", [22653] = "\x8a\x56", -+ [22654] = "\xe1\xea", [22657] = "\x94\xe8", [22659] = "\x89\x4f", -+ [22661] = "\x8d\xea", [22663] = "\x98\x71", [22666] = "\xe1\xee", -+ [22675] = "\xe1\xf0", [22679] = "\x95\xc9", [22681] = "\x90\xd7", -+ [22682] = "\xe1\xf2", [22687] = "\xe1\xf3", [22693] = "\xe1\xf1", -+ [22698] = "\x8a\x6d", [22700] = "\xe1\xf9", [22702] = "\xe1\xf8", -+ [22705] = "\x8e\xa5", [22709] = "\xe1\xfa", [22710] = "\xe1\xf5", -+ [22714] = "\xe1\xfb", [22715] = "\xe1\xf6", [22720] = "\x94\xd6", -+ [22721] = "\xe1\xf4", [22724] = "\xe1\xf7", [22730] = "\xe2\x41", -+ [22743] = "\xe2\x40", [22744] = "\x96\x81", [22748] = "\xe1\xfc", -+ [22751] = "\x88\xe9", [22756] = "\xe2\x43", [22765] = "\xe2\x42", -+ [22769] = "\x8f\xca", [22775] = "\xe2\x44", [22782] = "\x91\x62", -+ [22785] = "\xe2\x46", [22786] = "\xe2\x45", [22793] = "\xe2\x47", -+ [22806] = "\xe1\xe6", [22810] = "\xe1\xe8", [22811] = "\xe2\x49", -+ [22812] = "\xe2\x48", [22816] = "\xfb\x7c", [22826] = "\x8e\xa6", -+ [22828] = "\x97\xe7", [22830] = "\x8e\xd0", [22832] = "\xe2\x4a", -+ [22833] = "\x8c\x56", [22839] = "\x8b\x5f", [22840] = "\x8b\x46", -+ [22841] = "\x8e\x83", [22848] = "\x97\x53", [22851] = "\xe2\x50", -+ [22853] = "\xe2\x4f", [22854] = "\x91\x63", [22855] = "\xe2\x4c", -+ [22858] = "\xe2\x4e", [22861] = "\x8f\x6a", [22862] = "\x90\x5f", -+ [22863] = "\xe2\x4d", [22864] = "\xe2\x4b", [22866] = "\x94\x49", -+ [22869] = "\x8f\xcb", [22872] = "\x95\x5b", [22877] = "\x8d\xd5", -+ [22887] = "\x93\x98", [22890] = "\xe2\x51", [22895] = "\xe2\x52", -+ [22896] = "\xe2\x68", [22897] = "\x8b\xd6", [22900] = "\x98\x5c", -+ [22901] = "\x91\x54", [22906] = "\xe2\x53", [22909] = "\x89\xd0", -+ [22910] = "\x92\xf5", [22911] = "\x95\x9f", [22916] = "\xfb\x81", -+ [22923] = "\xfb\x83", [22925] = "\xe2\x54", [22934] = "\x8b\x9a", -+ [22935] = "\xe2\x55", [22938] = "\xe2\x57", [22942] = "\xe2\x58", -+ [22944] = "\x94\x48", [22947] = "\xe2\x59", [22953] = "\xe2\x5a", -+ [22954] = "\xe2\x5b", [22957] = "\x8b\xd7", [22958] = "\x89\xd1", -+ [22959] = "\x93\xc3", [22960] = "\x8f\x47", [22961] = "\x8e\x84", -+ [22969] = "\xe2\x5c", [22971] = "\x8f\x48", [22977] = "\x89\xc8", -+ [22978] = "\x95\x62", [22981] = "\xe2\x5d", [22984] = "\x94\xe9", -+ [22991] = "\x91\x64", [22993] = "\xe2\x60", [22995] = "\xe2\x61", -+ [22996] = "\x94\x89", [22998] = "\x90\x60", [22999] = "\xe2\x5e", -+ [23001] = "\x92\x81", [23004] = "\xe2\x5f", [23008] = "\x8f\xcc", -+ [23019] = "\x88\xda", [23024] = "\x8b\x48", [23032] = "\xe2\x62", -+ [23035] = "\x92\xf6", [23037] = "\xe2\x63", [23038] = "\x90\xc5", -+ [23044] = "\x96\xab", [23047] = "\x95\x42", [23048] = "\xe2\x64", -+ [23049] = "\xe2\x65", [23050] = "\x92\x74", [23052] = "\x97\xc5", -+ [23055] = "\xe2\x67", [23056] = "\xe2\x66", [23070] = "\x8e\xed", -+ [23073] = "\xe2\x69", [23074] = "\x88\xee", [23079] = "\xe2\x6c", -+ [23083] = "\xe2\x6a", [23084] = "\x89\xd2", [23085] = "\x8c\x6d", -+ [23086] = "\xe2\x6b", [23087] = "\x8d\x65", [23088] = "\x8d\x92", -+ [23090] = "\x95\xe4", [23091] = "\xe2\x6d", [23094] = "\x96\x73", -+ [23097] = "\xe2\x6f", [23101] = "\x90\xcf", [23102] = "\x89\x6e", -+ [23103] = "\x89\xb8", [23104] = "\x88\xaa", [23111] = "\xe2\x6e", -+ [23121] = "\xe2\x70", [23122] = "\xe2\x71", [23123] = "\x8f\xf5", -+ [23129] = "\xe2\x72", [23131] = "\x8a\x6e", [23136] = "\xe2\x74", -+ [23140] = "\x8c\x8a", [23142] = "\x8b\x86", [23145] = "\xe2\x75", -+ [23146] = "\x8b\xf3", [23149] = "\xe2\x76", [23151] = "\x90\xfa", -+ [23153] = "\x93\xcb", [23155] = "\x90\xde", [23156] = "\x8d\xf3", -+ [23160] = "\xe2\x77", [23170] = "\x92\x82", [23171] = "\x91\x8b", -+ [23173] = "\xe2\x79", [23174] = "\xe2\x7b", [23175] = "\xe2\x78", -+ [23176] = "\xe2\x7a", [23183] = "\x8c\x41", [23193] = "\xe2\x7c", -+ [23194] = "\x8c\x45", [23198] = "\x8b\x87", [23199] = "\x97\x71", -+ [23200] = "\xe2\x7e", [23206] = "\xe2\x80", [23210] = "\x89\x4d", -+ [23215] = "\xe2\x83", [23219] = "\x8a\x96", [23220] = "\xe2\x82", -+ [23221] = "\xe2\x81", [23223] = "\xe2\x85", [23224] = "\xe2\x7d", -+ [23226] = "\xe2\x86", [23227] = "\x97\xa7", [23229] = "\xe2\x87", -+ [23231] = "\xe2\x88", [23233] = "\xfb\x84", [23234] = "\x9a\xf2", -+ [23235] = "\xe2\x8a", [23237] = "\xe2\x89", [23241] = "\xe2\x8b", -+ [23242] = "\xe2\x8c", [23244] = "\x97\xb3", [23245] = "\xe2\x8d", -+ [23247] = "\xe8\xed", [23248] = "\x8f\xcd", [23249] = "\xe2\x8e", -+ [23250] = "\xe2\x8f", [23251] = "\x8f\x76", [23253] = "\x93\xb6", -+ [23254] = "\xe2\x90", [23255] = "\xfb\x85", [23258] = "\x92\x47", -+ [23259] = "\xfb\x87", [23261] = "\xe2\x91", [23263] = "\x92\x5b", -+ [23264] = "\xe2\x92", [23270] = "\x8b\xa3", [23272] = "\x99\x5e", -+ [23273] = "\x92\x7c", [23274] = "\x8e\xb1", [23279] = "\x8a\xc6", -+ [23282] = "\xe2\x93", [23284] = "\xe2\xa0", [23286] = "\xe2\x96", -+ [23288] = "\x8b\x88", [23290] = "\xe2\x95", [23291] = "\xe2\xa2", -+ [23295] = "\xe2\x94", [23297] = "\x8f\xce", [23304] = "\xe2\x98", -+ [23305] = "\xe2\x99", [23307] = "\x93\x4a", [23310] = "\xe2\x9a", -+ [23312] = "\x8a\x7d", [23317] = "\x90\x79", [23318] = "\x95\x84", -+ [23320] = "\xe2\x9c", [23324] = "\x91\xe6", [23331] = "\xe2\x97", -+ [23333] = "\xe2\x9b", [23334] = "\xe2\x9d", [23337] = "\x8d\xf9", -+ [23349] = "\xe2\xa4", [23350] = "\x95\x4d", [23352] = "\x94\xa4", -+ [23353] = "\x93\x99", [23355] = "\x8b\xd8", [23356] = "\xe2\xa3", -+ [23357] = "\xe2\xa1", [23359] = "\x94\xb3", [23360] = "\xe2\x9e", -+ [23361] = "\x92\x7d", [23362] = "\x93\x9b", [23364] = "\x93\x9a", -+ [23366] = "\x8d\xf4", [23373] = "\xe2\xb6", [23381] = "\xe2\xa6", -+ [23383] = "\xe2\xa8", [23388] = "\xe2\xab", [23390] = "\xe2\xac", -+ [23392] = "\xe2\xa9", [23393] = "\xe2\xaa", [23396] = "\xe2\xa7", -+ [23397] = "\xe2\xa5", [23402] = "\xe2\x9f", [23414] = "\x95\xcd", -+ [23415] = "\x89\xd3", [23419] = "\xe2\xb3", [23421] = "\xe2\xb0", -+ [23423] = "\xe2\xb5", [23426] = "\xe2\xb4", [23428] = "\x94\x93", -+ [23429] = "\x96\xa5", [23431] = "\x8e\x5a", [23432] = "\xe2\xae", -+ [23433] = "\xe2\xb7", [23434] = "\xe2\xb2", [23436] = "\xe2\xb1", -+ [23437] = "\xe2\xad", [23438] = "\xfb\x88", [23439] = "\xe2\xaf", -+ [23441] = "\x8a\xc7", [23450] = "\x92\x5c", [23453] = "\x90\xfb", -+ [23457] = "\x94\xa0", [23460] = "\xe2\xbc", [23464] = "\x94\xa2", -+ [23472] = "\x90\xdf", [23473] = "\xe2\xb9", [23476] = "\x94\xcd", -+ [23478] = "\xe2\xbd", [23479] = "\x95\xd1", [23481] = "\x92\x7a", -+ [23483] = "\xe2\xb8", [23484] = "\xe2\xba", [23487] = "\xe2\xbb", -+ [23501] = "\xe2\xbe", [23504] = "\x8e\xc2", [23508] = "\x93\xc4", -+ [23509] = "\xe2\xc3", [23510] = "\xe2\xc2", [23513] = "\xe2\xbf", -+ [23517] = "\x98\x55", [23523] = "\xe2\xc8", [23526] = "\xe2\xcc", -+ [23527] = "\xe2\xc9", [23536] = "\xe2\xc5", [23543] = "\xe2\xc6", -+ [23549] = "\xe2\xcb", [23553] = "\xe2\xc0", [23554] = "\x99\xd3", -+ [23555] = "\xe2\xc7", [23556] = "\xe2\xc1", [23559] = "\xe2\xca", -+ [23567] = "\xe2\xd0", [23569] = "\x8a\xc8", [23571] = "\xe2\xcd", -+ [23575] = "\xe2\xce", [23578] = "\xe2\xcf", [23579] = "\xe2\xd2", -+ [23591] = "\xe2\xd1", [23592] = "\x94\xf4", [23597] = "\xe2\xd3", -+ [23598] = "\x97\xfa", [23599] = "\x95\xeb", [23600] = "\xe2\xd8", -+ [23603] = "\xe2\xd5", [23612] = "\xe2\xd4", [23613] = "\x90\xd0", -+ [23615] = "\xe2\xd7", [23616] = "\xe2\xd9", [23620] = "\xe2\xd6", -+ [23622] = "\xe2\xdd", [23624] = "\xe2\xda", [23631] = "\xe2\xdb", -+ [23632] = "\xe2\xc4", [23636] = "\xe2\xdc", [23637] = "\xe2\xde", -+ [23644] = "\xe2\xdf", [23651] = "\x95\xc4", [23653] = "\xe2\xe0", -+ [23662] = "\x96\xe0", [23665] = "\x8b\xcc", [23666] = "\x8c\x48", -+ [23667] = "\xe2\xe1", [23673] = "\x95\xb2", [23675] = "\x90\x88", -+ [23677] = "\x96\xae", [23680] = "\xe2\xe2", [23682] = "\x97\xb1", -+ [23685] = "\x94\x94", [23687] = "\x91\x65", [23688] = "\x94\x53", -+ [23691] = "\x8f\x6c", [23695] = "\x88\xbe", [23697] = "\xe2\xe7", -+ [23698] = "\xe2\xe5", [23700] = "\xe2\xe3", [23701] = "\x8a\x9f", -+ [23703] = "\x8f\xcf", [23704] = "\xe2\xe8", [23707] = "\xe2\xe6", -+ [23709] = "\xe2\xe4", [23710] = "\xe2\xec", [23713] = "\xe2\xeb", -+ [23714] = "\xe2\xea", [23715] = "\xe2\xe9", [23721] = "\xe2\xed", -+ [23725] = "\xe2\xee", [23726] = "\x90\xb8", [23728] = "\xe2\xef", -+ [23730] = "\xe2\xf1", [23733] = "\xe2\xf0", [23738] = "\x8c\xd0", -+ [23742] = "\x91\x57", [23746] = "\xe2\xf3", [23750] = "\x93\x9c", -+ [23752] = "\xe2\xf2", [23756] = "\xe2\xf4", [23758] = "\x95\xb3", -+ [23759] = "\x91\x8c", [23760] = "\x8d\x66", [23762] = "\xe2\xf5", -+ [23767] = "\x97\xc6", [23775] = "\xe2\xf7", [23778] = "\xe2\xf8", -+ [23780] = "\xe2\xf9", [23782] = "\xe2\xfa", [23784] = "\x8e\x85", -+ [23786] = "\xe2\xfb", [23787] = "\x8c\x6e", [23790] = "\x8b\x8a", -+ [23792] = "\x8b\x49", [23794] = "\xe3\x40", [23796] = "\x96\xf1", -+ [23797] = "\x8d\x67", [23798] = "\xe2\xfc", [23802] = "\xe3\x43", -+ [23803] = "\x96\xe4", [23805] = "\x94\x5b", [23808] = "\x95\x52", -+ [23812] = "\x8f\x83", [23813] = "\xe3\x42", [23815] = "\x8e\xd1", -+ [23816] = "\x8d\x68", [23817] = "\x8e\x86", [23818] = "\x8b\x89", -+ [23819] = "\x95\xb4", [23820] = "\xe3\x41", [23824] = "\x91\x66", -+ [23825] = "\x96\x61", [23826] = "\x8d\xf5", [23835] = "\x8e\x87", -+ [23836] = "\x92\xdb", [23838] = "\xe3\x46", [23839] = "\x97\xdd", -+ [23840] = "\x8d\xd7", [23842] = "\xe3\x47", [23843] = "\x90\x61", -+ [23845] = "\xe3\x49", [23849] = "\x8f\xd0", [23850] = "\x8d\xae", -+ [23855] = "\xe3\x48", [23858] = "\x8f\x49", [23859] = "\x8c\xbc", -+ [23860] = "\x91\x67", [23861] = "\xe3\x44", [23862] = "\xe3\x4a", -+ [23864] = "\xfb\x8a", [23867] = "\xe3\x45", [23868] = "\x8c\x6f", -+ [23870] = "\xe3\x4d", [23871] = "\xe3\x51", [23872] = "\x8c\x8b", -+ [23878] = "\xe3\x4c", [23883] = "\xe3\x55", [23884] = "\xfb\x8b", -+ [23886] = "\x8d\x69", [23889] = "\x97\x8d", [23890] = "\x88\xba", -+ [23891] = "\xe3\x52", [23894] = "\x8b\x8b", [23896] = "\xe3\x4f", -+ [23902] = "\xe3\x50", [23905] = "\x93\x9d", [23906] = "\xe3\x4e", -+ [23907] = "\xe3\x4b", [23909] = "\x8a\x47", [23910] = "\x90\xe2", -+ [23913] = "\x8c\xa6", [23917] = "\xe3\x57", [23929] = "\xe3\x54", -+ [23935] = "\xe3\x56", [23939] = "\xe3\x53", [23945] = "\x8c\x70", -+ [23946] = "\x91\xb1", [23947] = "\xe3\x58", [23948] = "\x91\x8e", -+ [23951] = "\xe3\x65", [23952] = "\xfb\x8d", [23954] = "\xe3\x61", -+ [23955] = "\xe3\x5b", [23963] = "\xe3\x5f", [23964] = "\x8e\xf8", -+ [23965] = "\x88\xdb", [23966] = "\xe3\x5a", [23967] = "\xe3\x62", -+ [23968] = "\xe3\x66", [23969] = "\x8d\x6a", [23970] = "\x96\xd4", -+ [23972] = "\x92\xd4", [23973] = "\xe3\x5c", [23975] = "\xfb\x8c", -+ [23976] = "\xe3\x64", [23978] = "\xe3\x59", [23979] = "\x92\x5d", -+ [23981] = "\xe3\x5e", [23982] = "\x88\xbb", [23983] = "\x96\xc8", -+ [23991] = "\xe3\x5d", [23994] = "\x8b\xd9", [23995] = "\x94\xea", -+ [23999] = "\x91\x8d", [24001] = "\x97\xce", [24002] = "\x8f\x8f", -+ [24005] = "\xe3\x8e", [24006] = "\xfb\x8e", [24008] = "\xe3\x67", -+ [24010] = "\x90\xfc", [24012] = "\xe3\x63", [24013] = "\xe3\x68", -+ [24014] = "\xe3\x6a", [24016] = "\x92\xf7", [24017] = "\xe3\x6d", -+ [24020] = "\xe3\x69", [24024] = "\x95\xd2", [24025] = "\x8a\xc9", -+ [24028] = "\x96\xc9", [24031] = "\x88\xdc", [24034] = "\xe3\x6c", -+ [24036] = "\x97\xfb", [24043] = "\xe3\x6b", [24049] = "\x89\x8f", -+ [24052] = "\x93\xea", [24053] = "\xe3\x6e", [24057] = "\xe3\x75", -+ [24058] = "\xe3\x6f", [24059] = "\xe3\x76", [24066] = "\xe3\x72", -+ [24075] = "\x94\x9b", [24078] = "\x8e\xc8", [24079] = "\xe3\x74", -+ [24081] = "\xe3\x71", [24082] = "\xe3\x77", [24083] = "\xe3\x70", -+ [24086] = "\x8f\x63", [24091] = "\x96\x44", [24094] = "\x8f\x6b", -+ [24097] = "\xe3\x73", [24098] = "\xe3\x80", [24101] = "\xe3\x7b", -+ [24103] = "\xe3\x7e", [24105] = "\xe3\x7c", [24106] = "\xe3\x81", -+ [24107] = "\xe3\x7a", [24109] = "\xe3\x60", [24110] = "\x90\xd1", -+ [24113] = "\x94\xc9", [24115] = "\xe3\x7d", [24118] = "\xe3\x78", -+ [24122] = "\x91\x40", [24123] = "\x8c\x71", [24125] = "\x8f\x4a", -+ [24130] = "\xfb\x8f", [24132] = "\x90\x44", [24133] = "\x91\x55", -+ [24134] = "\xe3\x84", [24137] = "\xe3\x86", [24138] = "\xe3\x87", -+ [24141] = "\xe3\x83", [24142] = "\xe3\x85", [24150] = "\xe3\x79", -+ [24151] = "\xe3\x82", [24153] = "\xe3\x8a", [24154] = "\xe3\x89", -+ [24157] = "\x96\x9a", [24160] = "\x8c\x4a", [24169] = "\xe3\x88", -+ [24171] = "\xe3\x8c", [24172] = "\xe3\x8b", [24173] = "\xe3\x8f", -+ [24175] = "\xe3\x91", [24178] = "\x8e\x5b", [24179] = "\xe3\x8d", -+ [24184] = "\xe3\x92", [24185] = "\xe3\x93", [24186] = "\xfa\x5c", -+ [24188] = "\xe3\x94", [24190] = "\xe3\x9a", [24191] = "\x93\x5a", -+ [24192] = "\xe3\x96", [24194] = "\xe3\x95", [24195] = "\xe3\x97", -+ [24196] = "\xe3\x98", [24198] = "\xe3\x99", [24203] = "\xe3\x9b", -+ [24204] = "\xe3\x9c", [24358] = "\x8a\xca", [24360] = "\xe3\x9d", -+ [24362] = "\xe3\x9e", [24373] = "\xe3\x9f", [24375] = "\xfb\x90", -+ [24380] = "\xe3\xa0", [24381] = "\xe3\xa1", [24382] = "\xe3\xa2", -+ [24384] = "\xe3\xa3", [24385] = "\xe3\xa4", [24388] = "\xe3\xa6", -+ [24389] = "\xe3\xa5", [24392] = "\xe3\xa7", [24399] = "\xe3\xa8", -+ [24400] = "\xe3\xa9", [24407] = "\xe3\xac", [24408] = "\xe3\xaa", -+ [24409] = "\xe3\xab", [24410] = "\x8d\xdf", [24411] = "\x8c\x72", -+ [24414] = "\x92\x75", [24416] = "\x94\xb1", [24418] = "\x8f\x90", -+ [24421] = "\x94\x6c", [24423] = "\x94\xeb", [24424] = "\xe3\xad", -+ [24425] = "\x9c\xeb", [24434] = "\xe3\xae", [24435] = "\xe3\xb0", -+ [24437] = "\x97\x85", [24438] = "\xe3\xaf", [24439] = "\xe3\xb2", -+ [24440] = "\xe3\xb1", [24442] = "\x97\x72", [24444] = "\xe3\xb3", -+ [24446] = "\x94\xfc", [24452] = "\xe3\xb4", [24458] = "\xe3\xb7", -+ [24461] = "\xe3\xb6", [24462] = "\xe3\xb5", [24465] = "\xfb\x91", -+ [24467] = "\xe3\xb8", [24468] = "\x8c\x51", [24472] = "\x91\x41", -+ [24473] = "\x8b\x60", [24478] = "\xe3\xbc", [24479] = "\xe3\xb9", -+ [24482] = "\xe3\xba", [24486] = "\xe3\xbd", [24488] = "\xe3\xbe", -+ [24489] = "\xe3\xbb", [24493] = "\x89\x48", [24497] = "\x89\xa5", -+ [24501] = "\xe3\xc0", [24502] = "\xe3\xc1", [24506] = "\xe3\xc2", -+ [24508] = "\x97\x82", [24514] = "\x8f\x4b", [24516] = "\xe3\xc4", -+ [24517] = "\xe3\xc3", [24528] = "\x90\x89", [24529] = "\xe3\xc5", -+ [24534] = "\xe3\xc6", [24537] = "\xe3\xc7", [24539] = "\x8a\xe3", -+ [24544] = "\x8a\xcb", [24547] = "\xe3\xc8", [24553] = "\xe3\xc9", -+ [24555] = "\x96\x7c", [24556] = "\x97\x83", [24560] = "\x97\x73", -+ [24561] = "\x98\x56", [24563] = "\x8d\x6c", [24564] = "\xe3\xcc", -+ [24565] = "\x8e\xd2", [24566] = "\xe3\xcb", [24571] = "\xe3\xcd", -+ [24572] = "\x8e\xa7", [24576] = "\x91\xcf", [24578] = "\xe3\xce", -+ [24581] = "\x8d\x6b", [24583] = "\x96\xd5", [24584] = "\xe3\xcf", -+ [24585] = "\xe3\xd0", [24588] = "\xe3\xd1", [24593] = "\xe3\xd2", -+ [24600] = "\xe3\xd3", [24611] = "\x8e\xa8", [24614] = "\x96\xeb", -+ [24619] = "\xe3\xd5", [24621] = "\x92\x5e", [24623] = "\xe3\xd4", -+ [24630] = "\xe3\xd7", [24634] = "\xe3\xd6", [24642] = "\xe3\xd8", -+ [24646] = "\x90\xb9", [24648] = "\xe3\xd9", [24650] = "\xe3\xda", -+ [24654] = "\x95\xb7", [24655] = "\xe3\xdb", [24657] = "\x91\x8f", -+ [24658] = "\xe3\xdc", [24664] = "\xe3\xdd", [24671] = "\x97\xfc", -+ [24672] = "\xe3\xe0", [24674] = "\xe3\xdf", [24675] = "\xe3\xde", -+ [24676] = "\x92\xae", [24678] = "\xe3\xe1", [24679] = "\x90\x45", -+ [24681] = "\xe3\xe2", [24685] = "\xe3\xe3", [24686] = "\x98\x57", -+ [24687] = "\xe3\xe4", [24692] = "\xe3\xe5", [24693] = "\xe3\xe7", -+ [24694] = "\xe3\xe6", [24695] = "\x94\xa3", [24697] = "\x93\xf7", -+ [24699] = "\x98\x5d", [24700] = "\x94\xa7", [24707] = "\xe3\xe9", -+ [24710] = "\x8f\xd1", [24712] = "\x95\x49", [24714] = "\xe3\xea", -+ [24715] = "\xe3\xe8", [24717] = "\x8a\xcc", [24721] = "\x8c\xd2", -+ [24722] = "\x8e\x88", [24725] = "\x94\xec", [24729] = "\x8c\xa8", -+ [24730] = "\x96\x62", [24732] = "\xe3\xed", [24733] = "\xe3\xeb", -+ [24735] = "\x8d\x6d", [24737] = "\x8d\x6e", [24738] = "\x88\xe7", -+ [24740] = "\x8d\xe6", [24746] = "\x94\x78", [24755] = "\x88\xdd", -+ [24756] = "\xe3\xf2", [24758] = "\x92\x5f", [24764] = "\x94\x77", -+ [24766] = "\x91\xd9", [24774] = "\xe3\xf4", [24777] = "\xe3\xf0", -+ [24778] = "\xe3\xf3", [24779] = "\xe3\xee", [24781] = "\xe3\xf1", -+ [24782] = "\x96\x45", [24785] = "\x8c\xd3", [24788] = "\x88\xfb", -+ [24789] = "\xe3\xef", [24799] = "\xe3\xf6", [24801] = "\xe3\xf7", -+ [24804] = "\x93\xb7", [24808] = "\x8b\xb9", [24812] = "\xe4\x45", -+ [24813] = "\x94\x5c", [24818] = "\x8e\x89", [24821] = "\x8b\xba", -+ [24822] = "\x90\xc6", [24823] = "\x98\x65", [24824] = "\x96\xac", -+ [24825] = "\xe3\xf5", [24826] = "\x90\xd2", [24842] = "\x8b\x72", -+ [24843] = "\xe3\xf8", [24851] = "\xe3\xfa", [24857] = "\xe3\xf9", -+ [24863] = "\xe3\xfb", [24865] = "\x92\x45", [24867] = "\x94\x5d", -+ [24873] = "\x92\xaf", [24878] = "\xe4\x42", [24886] = "\xe4\x41", -+ [24891] = "\xe3\xfc", [24894] = "\x90\x74", [24896] = "\x95\x85", -+ [24897] = "\xe4\x44", [24899] = "\xe4\x43", [24900] = "\x8d\x6f", -+ [24901] = "\x98\x72", [24911] = "\xe4\x54", [24917] = "\xe4\x48", -+ [24918] = "\xe4\x49", [24923] = "\x8e\xee", [24926] = "\xe4\x47", -+ [24928] = "\x8d\x98", [24929] = "\xe4\x46", [24932] = "\xe4\x4a", -+ [24936] = "\x92\xb0", [24937] = "\x95\xa0", [24938] = "\x91\x42", -+ [24943] = "\x91\xda", [24944] = "\xe4\x4e", [24946] = "\xe4\x4f", -+ [24947] = "\xe4\x4b", [24952] = "\xe4\x4c", [24954] = "\xe4\x4d", -+ [24959] = "\x8d\x70", [24963] = "\xe4\x55", [24965] = "\xe4\x51", -+ [24970] = "\x95\x86", [24972] = "\x96\x8c", [24973] = "\x95\x47", -+ [24976] = "\xe4\x50", [24979] = "\xe4\x53", [24980] = "\xe4\x52", -+ [24984] = "\x96\x63", [24985] = "\xe4\x56", [24992] = "\xe4\x57", -+ [24995] = "\x91\x56", [24997] = "\xe4\x58", [25000] = "\xe4\x5a", -+ [25002] = "\xe4\x5e", [25005] = "\xe4\x5b", [25006] = "\xe4\x59", -+ [25007] = "\x94\x5e", [25008] = "\xe4\x5c", [25010] = "\xe4\x5d", -+ [25014] = "\x89\xb0", [25016] = "\xe4\x64", [25017] = "\xe4\x5f", -+ [25021] = "\xe4\x60", [25025] = "\xe4\x61", [25027] = "\x91\x9f", -+ [25032] = "\xe4\x63", [25033] = "\xe4\x62", [25034] = "\xe4\x65", -+ [25039] = "\xe4\x66", [25040] = "\xe4\x67", [25043] = "\x90\x62", -+ [25045] = "\x89\xe7", [25047] = "\xe4\x68", [25048] = "\x97\xd5", -+ [25050] = "\x8e\xa9", [25053] = "\x8f\x4c", [25059] = "\x8e\x8a", -+ [25060] = "\x92\x76", [25066] = "\xe4\x69", [25067] = "\xe4\x6a", -+ [25068] = "\x89\x50", [25070] = "\xe4\x6b", [25073] = "\xe4\x6c", -+ [25074] = "\xe4\x6d", [25077] = "\xe4\x6e", [25079] = "\xe4\x6f", -+ [25080] = "\x8b\xbb", [25081] = "\x9d\xa8", [25082] = "\xe4\x70", -+ [25084] = "\x90\xe3", [25085] = "\xe4\x71", [25086] = "\x8e\xc9", -+ [25088] = "\xe4\x72", [25090] = "\x98\xae", [25094] = "\xe4\x73", -+ [25095] = "\x95\xdc", [25096] = "\x8a\xda", [25099] = "\x91\x43", -+ [25100] = "\x8f\x77", [25102] = "\x95\x91", [25103] = "\x8f\x4d", -+ [25113] = "\xe4\x74", [25114] = "\x8d\x71", [25115] = "\xe4\x75", -+ [25116] = "\x94\xca", [25118] = "\xe4\x84", [25123] = "\xe4\x77", -+ [25125] = "\x91\xc7", [25126] = "\x94\x95", [25127] = "\x8c\xbd", -+ [25128] = "\xe4\x76", [25129] = "\x91\x44", [25136] = "\xe4\x78", -+ [25143] = "\x92\xf8", [25160] = "\xe4\x7a", [25161] = "\xe4\x79", -+ [25162] = "\xe4\x7c", [25165] = "\xe4\x7b", [25167] = "\xe4\x7d", -+ [25170] = "\xe4\x80", [25172] = "\xe4\x7e", [25174] = "\x8a\xcd", -+ [25176] = "\xe4\x81", [25178] = "\xe4\x82", [25179] = "\xe4\x83", -+ [25182] = "\x8d\xaf", [25183] = "\x97\xc7", [25185] = "\xe4\x85", -+ [25186] = "\x90\x46", [25190] = "\x89\x90", [25191] = "\xe4\x86", -+ [25192] = "\xe4\x87", [25198] = "\xe4\x88", [25211] = "\x88\xf0", -+ [25213] = "\xe4\x89", [25218] = "\xe4\x8a", [25225] = "\x95\x87", -+ [25229] = "\x8e\xc5", [25231] = "\xe4\x8c", [25237] = "\x8a\x48", -+ [25238] = "\x88\xb0", [25243] = "\xe4\x8b", [25244] = "\xe4\x8e", -+ [25245] = "\x94\x6d", [25247] = "\x90\x63", [25249] = "\x89\xd4", -+ [25251] = "\x96\x46", [25256] = "\x8c\x7c", [25257] = "\x8b\xda", -+ [25259] = "\xe4\x8d", [25261] = "\x89\xe8", [25269] = "\x8a\xa1", -+ [25281] = "\x89\x91", [25282] = "\xe4\x92", [25283] = "\x97\xe8", -+ [25284] = "\x91\xdb", [25287] = "\x95\x63", [25289] = "\xe4\x9e", -+ [25291] = "\x89\xd5", [25292] = "\xe4\x9c", [25294] = "\xe4\x9a", -+ [25295] = "\xe4\x91", [25297] = "\xe4\x8f", [25299] = "\xe4\x90", -+ [25301] = "\x8e\xe1", [25302] = "\x8b\xea", [25303] = "\x92\x97", -+ [25307] = "\x93\xcf", [25313] = "\x89\x70", [25315] = "\xe4\x94", -+ [25316] = "\xe4\x93", [25321] = "\xe4\x99", [25322] = "\xe4\x95", -+ [25323] = "\xe4\x98", [25329] = "\xfb\x93", [25330] = "\x96\xce", -+ [25331] = "\xe4\x97", [25332] = "\x89\xd6", [25333] = "\x8a\x9d", -+ [25334] = "\xe4\x9b", [25337] = "\xe4\x9d", [25342] = "\x8c\x73", -+ [25350] = "\xe4\xa1", [25351] = "\xe4\xaa", [25352] = "\xe4\xab", -+ [25356] = "\x88\xa9", [25363] = "\xe4\xb2", [25368] = "\x88\xef", -+ [25371] = "\xe4\xa9", [25375] = "\xe4\xa8", [25377] = "\xe4\xa3", -+ [25378] = "\xe4\xa2", [25380] = "\xe4\xa0", [25381] = "\xe4\x9f", -+ [25382] = "\x92\x83", [25384] = "\x91\xf9", [25385] = "\xe4\xa5", -+ [25392] = "\xe4\xa4", [25397] = "\xe4\xa7", [25401] = "\x91\x90", -+ [25402] = "\x8c\x74", [25407] = "\x89\x60", [25408] = "\xe4\xa6", -+ [25410] = "\x8d\x72", [25416] = "\x91\x91", [25426] = "\xfb\x94", -+ [25443] = "\xe4\xb8", [25445] = "\xe4\xb9", [25447] = "\x89\xd7", -+ [25451] = "\x89\xac", [25452] = "\xe4\xb6", [25455] = "\xfb\x95", -+ [25461] = "\xe4\xac", [25463] = "\xe4\xb4", [25465] = "\xe4\xbb", -+ [25466] = "\xe4\xb5", [25470] = "\xe4\xb3", [25475] = "\xe4\x96", -+ [25478] = "\xe4\xb1", [25482] = "\xe4\xad", [25486] = "\x8a\xce", -+ [25487] = "\xe4\xaf", [25488] = "\xe4\xba", [25490] = "\xe4\xb0", -+ [25496] = "\xe4\xbc", [25498] = "\xe4\xae", [25499] = "\x94\x9c", -+ [25505] = "\x97\x89", [25509] = "\xe4\xb7", [25517] = "\xe4\xcd", -+ [25521] = "\xe4\xc5", [25525] = "\x90\x9b", [25527] = "\xfb\x96", -+ [25530] = "\x8b\x65", [25532] = "\x8b\xdb", [25534] = "\xe4\xc0", -+ [25539] = "\x89\xd9", [25542] = "\x8f\xd2", [25544] = "\xe4\xc3", -+ [25548] = "\x8d\xd8", [25551] = "\x93\x70", [25552] = "\xe4\xc8", -+ [25561] = "\x95\xec", [25563] = "\xe4\xbf", [25567] = "\x89\xd8", -+ [25568] = "\x8c\xd4", [25569] = "\x95\x48", [25570] = "\xe4\xc9", -+ [25572] = "\xe4\xbd", [25574] = "\xfb\x97", [25575] = "\xe4\xc6", -+ [25579] = "\xe4\xd0", [25581] = "\xe4\xc1", [25587] = "\xe4\xc2", -+ [25588] = "\x93\xb8", [25591] = "\xe4\xc7", [25595] = "\xe4\xc4", -+ [25596] = "\x96\x47", [25597] = "\xe4\xca", [25598] = "\x88\xde", -+ [25603] = "\xe4\xbe", [25616] = "\xe4\xcc", [25618] = "\xe4\xcb", -+ [25625] = "\x94\x8b", [25626] = "\xe4\xd2", [25628] = "\xe4\xdd", -+ [25633] = "\x8a\x9e", [25637] = "\xe4\xe0", [25640] = "\xe4\xce", -+ [25644] = "\xe4\xd3", [25645] = "\x97\x8e", [25654] = "\xe4\xdc", -+ [25656] = "\xfb\x98", [25657] = "\x97\x74", [25662] = "\x97\xa8", -+ [25671] = "\x92\x98", [25675] = "\x8a\x8b", [25681] = "\x95\x92", -+ [25682] = "\xe4\xe2", [25683] = "\x93\x9f", [25686] = "\x88\xaf", -+ [25689] = "\xe4\xdb", [25691] = "\xe4\xd7", [25692] = "\x91\x92", -+ [25693] = "\xe4\xd1", [25694] = "\xe4\xd9", [25695] = "\xe4\xde", -+ [25697] = "\x94\x4b", [25701] = "\x88\xa8", [25703] = "\xe4\xd6", -+ [25705] = "\xe4\xdf", [25706] = "\x95\x98", [25714] = "\xe4\xda", -+ [25716] = "\xe4\xd5", [25723] = "\x8f\xd3", [25728] = "\x8f\x4e", -+ [25732] = "\x8e\xaa", [25737] = "\x96\xd6", [25740] = "\x95\x66", -+ [25743] = "\xe4\xe5", [25745] = "\xe4\xee", [25757] = "\xe4\xd8", -+ [25762] = "\x8a\x97", [25764] = "\xfb\x99", [25768] = "\x8f\xf6", -+ [25769] = "\xe4\xe3", [25771] = "\xe4\xe8", [25772] = "\x91\x93", -+ [25775] = "\xe4\xe4", [25777] = "\xe4\xeb", [25780] = "\x92\x7e", -+ [25782] = "\xe4\xec", [25785] = "\x97\x75", [25786] = "\xe4\xe1", -+ [25787] = "\x8a\x57", [25789] = "\xe4\xe7", [25792] = "\xe4\xea", -+ [25793] = "\x96\xaa", [25798] = "\xe4\xed", [25801] = "\xe4\xe6", -+ [25802] = "\xe4\xe9", [25804] = "\xfa\x60", [25820] = "\x96\x48", -+ [25822] = "\x98\x40", [25828] = "\xe4\xf1", [25836] = "\xe4\xf8", -+ [25839] = "\xe4\xf0", [25840] = "\x8e\xc1", [25846] = "\xe4\xcf", -+ [25857] = "\x95\xcc", [25859] = "\x96\xa0", [25860] = "\xe4\xf7", -+ [25861] = "\xe4\xf6", [25863] = "\xe4\xf2", [25864] = "\xe4\xf3", -+ [25866] = "\x89\x55", [25871] = "\xe4\xf5", [25873] = "\xe4\xef", -+ [25878] = "\x92\xd3", [25884] = "\xe4\xf4", [25885] = "\x88\xfc", -+ [25893] = "\x91\xa0", [25901] = "\x95\xc1", [25904] = "\xe4\xf9", -+ [25905] = "\xe5\x40", [25907] = "\x94\xd7", [25912] = "\xe4\xfc", -+ [25913] = "\x8f\xd4", [25914] = "\x8e\xc7", [25915] = "\xe5\x42", -+ [25918] = "\x8b\xbc", [25923] = "\xfb\x9a", [25925] = "\xe5\x43", -+ [25927] = "\x95\x99", [25928] = "\xe4\xfb", [25929] = "\xfb\x9b", -+ [25930] = "\xe4\xd4", [25939] = "\xe4\xfa", [25944] = "\x98\x6e", -+ [25945] = "\x93\xa0", [25946] = "\x95\x93", [25947] = "\xfb\x9c", -+ [25949] = "\xe5\x4a", [25959] = "\xe5\x50", [25966] = "\xe5\x51", -+ [25968] = "\xe5\x44", [25972] = "\x94\x96", [25975] = "\xe5\x4e", -+ [25976] = "\xe5\x46", [25978] = "\xe5\x48", [25984] = "\xe5\x52", -+ [25985] = "\xe5\x47", [25988] = "\xe5\x4b", [25991] = "\x89\x92", -+ [25993] = "\x93\xe3", [25995] = "\xe5\x4c", [25996] = "\xe5\x4f", -+ [26004] = "\xe5\x45", [26006] = "\x91\x45", [26008] = "\xe5\x49", -+ [26009] = "\x8e\x46", [26010] = "\x90\x64", [26011] = "\x8c\x4f", -+ [26012] = "\x96\xf2", [26014] = "\x96\xf7", [26015] = "\x8f\x92", -+ [26016] = "\xfb\x9e", [26025] = "\xe5\x56", [26026] = "\xe5\x54", -+ [26033] = "\x98\x6d", [26041] = "\xe5\x53", [26045] = "\x97\x95", -+ [26047] = "\xe5\x55", [26048] = "\xe5\x57", [26053] = "\xe5\x58", -+ [26060] = "\xe5\x5b", [26061] = "\xe5\x59", [26068] = "\x93\xa1", -+ [26069] = "\xe5\x5a", [26073] = "\x94\xcb", [26074] = "\xe5\x4d", -+ [26087] = "\x8f\x93", [26089] = "\xe5\x5c", [26090] = "\xe5\x61", -+ [26091] = "\x91\x94", [26094] = "\xe5\x60", [26098] = "\xe5\x41", -+ [26102] = "\xe5\x62", [26103] = "\x91\x68", [26106] = "\xe5\x5d", -+ [26107] = "\xe5\x5f", [26115] = "\xe5\x5e", [26118] = "\x9f\x50", -+ [26119] = "\x9f\x41", [26122] = "\xe5\x64", [26130] = "\xe5\x63", -+ [26141] = "\x97\x96", [26143] = "\xe1\xba", [26144] = "\xe5\x65", -+ [26159] = "\xe5\x66", [26173] = "\xe5\x67", [26174] = "\x8c\xd5", -+ [26176] = "\x8b\x73", [26180] = "\xe5\x69", [26181] = "\x99\x7c", -+ [26186] = "\x8b\x95", [26188] = "\x97\xb8", [26190] = "\x8b\xf1", -+ [26191] = "\xe5\x6a", [26199] = "\xe5\x6b", [26203] = "\x92\x8e", -+ [26209] = "\xe5\x6c", [26217] = "\x93\xf8", [26219] = "\x88\xb8", -+ [26234] = "\x89\xe1", [26235] = "\xe5\x71", [26236] = "\xe5\x72", -+ [26243] = "\xe5\x6d", [26245] = "\x8e\x5c", [26259] = "\xe5\x6e", -+ [26260] = "\x94\x61", [26265] = "\xe5\x6f", [26266] = "\xe5\x70", -+ [26267] = "\xe5\x7a", [26271] = "\xe5\x74", [26272] = "\xe5\x77", -+ [26278] = "\xe5\x73", [26292] = "\xe5\x75", [26294] = "\xe5\x76", -+ [26295] = "\x8e\xd6", [26297] = "\xe5\x78", [26299] = "\x92\x60", -+ [26301] = "\x8c\x75", [26302] = "\x8a\x61", [26308] = "\xe5\x7b", -+ [26313] = "\x8a\x5e", [26315] = "\xe5\x81", [26318] = "\xe5\x7c", -+ [26319] = "\xe5\x80", [26324] = "\x94\xb8", [26329] = "\xe5\x7d", -+ [26332] = "\xe5\x7e", [26333] = "\x95\x67", [26334] = "\x94\xd8", -+ [26335] = "\xe5\x82", [26344] = "\x91\xfb", [26345] = "\xe5\x8c", -+ [26347] = "\xe5\x88", [26350] = "\x89\xe9", [26352] = "\xe5\x86", -+ [26354] = "\x96\x49", [26355] = "\xe5\x87", [26358] = "\xe5\x84", -+ [26360] = "\xe5\x85", [26361] = "\xe5\x8a", [26362] = "\xe5\x8d", -+ [26365] = "\xe5\x8b", [26369] = "\xe5\x89", [26370] = "\xe5\x83", -+ [26376] = "\x92\x77", [26378] = "\xe5\x94", [26380] = "\x96\xa8", -+ [26389] = "\xe5\x92", [26393] = "\xe5\x93", [26404] = "\xe5\x8e", -+ [26407] = "\xe5\x90", [26411] = "\xe5\x91", [26415] = "\xe5\x8f", -+ [26425] = "\x90\xe4", [26427] = "\x98\x58", [26428] = "\xe5\x98", -+ [26430] = "\xe5\x99", [26435] = "\xe5\x9f", [26437] = "\x90\x49", -+ [26439] = "\xe5\x9b", [26441] = "\xe5\x9e", [26447] = "\xe5\x96", -+ [26448] = "\xe5\x95", [26451] = "\xe5\xa0", [26454] = "\x89\xda", -+ [26456] = "\xe5\x9c", [26458] = "\xe5\xa1", [26462] = "\xe5\x9d", -+ [26468] = "\xe5\x9a", [26470] = "\x92\xb1", [26472] = "\xe5\x97", -+ [26479] = "\x94\x88", [26482] = "\xe5\xa5", [26493] = "\x97\x5a", -+ [26511] = "\xe5\xa4", [26514] = "\xe5\xa3", [26523] = "\xe5\xac", -+ [26527] = "\xe5\xa6", [26531] = "\xe5\xae", [26538] = "\x97\x86", -+ [26539] = "\xe5\xb1", [26541] = "\xe5\xa8", [26544] = "\xe5\xa9", -+ [26548] = "\xe5\xad", [26550] = "\xe5\xb0", [26551] = "\xe5\xaf", -+ [26555] = "\xe5\xa7", [26560] = "\xe5\xaa", [26562] = "\xe5\xbb", -+ [26576] = "\xe5\xb4", [26591] = "\xe5\xb2", [26594] = "\xe5\xb3", -+ [26598] = "\xe5\xb8", [26599] = "\xe5\xb9", [26601] = "\x8a\x49", -+ [26603] = "\x8b\x61", [26606] = "\xe5\xb7", [26613] = "\xe5\xa2", -+ [26615] = "\xfb\xa1", [26621] = "\xe5\xb6", [26622] = "\xe5\xba", -+ [26623] = "\xe5\xb5", [26625] = "\xe5\xbc", [26629] = "\xe5\xbe", -+ [26630] = "\xe5\xbd", [26641] = "\xe5\xc0", [26642] = "\xe5\xbf", -+ [26643] = "\xe5\x79", [26647] = "\xe5\xc4", [26657] = "\xe5\xc1", -+ [26662] = "\xe5\xc2", [26665] = "\xe5\xc3", [26667] = "\xe5\xc5", -+ [26672] = "\x8c\x8c", [26674] = "\xe5\xc7", [26676] = "\xe5\xc6", -+ [26678] = "\x8f\x4f", [26684] = "\x8d\x73", [26685] = "\x9f\xa5", -+ [26690] = "\xe5\xc8", [26691] = "\x8f\x70", [26695] = "\x8a\x58", -+ [26697] = "\xe5\xc9", [26699] = "\x89\x71", [26701] = "\x8f\xd5", -+ [26702] = "\xe5\xca", [26705] = "\x8d\x74", [26706] = "\xe5\xcb", -+ [26707] = "\x88\xdf", [26712] = "\x95\x5c", [26715] = "\xe5\xcc", -+ [26720] = "\x90\x8a", [26722] = "\xe5\xd3", [26725] = "\xe5\xd0", -+ [26727] = "\x92\x8f", [26733] = "\xe5\xd1", [26734] = "\xe5\xce", -+ [26735] = "\x8b\xdc", [26737] = "\xe5\xcd", [26738] = "\xe5\xd4", -+ [26744] = "\x8c\x55", [26747] = "\x91\xdc", [26749] = "\xe5\xda", -+ [26754] = "\xe5\xd6", [26758] = "\x91\xb3", [26759] = "\xe5\xd5", -+ [26761] = "\xe5\xd8", [26766] = "\xe5\xcf", [26770] = "\xe5\xd9", -+ [26772] = "\xe5\xdb", [26779] = "\x94\xed", [26782] = "\xe5\xd7", -+ [26784] = "\xe5\xdc", [26785] = "\xe5\xde", [26788] = "\x8c\xd1", -+ [26789] = "\xe5\xd2", [26791] = "\x88\xbf", [26799] = "\xe5\xdd", -+ [26801] = "\x8d\xd9", [26802] = "\x97\xf4", [26803] = "\xe5\xdf", -+ [26804] = "\xe5\xe0", [26805] = "\x91\x95", [26815] = "\x97\xa0", -+ [26820] = "\xe5\xe1", [26821] = "\x97\x54", [26824] = "\xe5\xe2", -+ [26825] = "\xe5\xe3", [26828] = "\x95\xe2", [26829] = "\xe5\xe4", -+ [26831] = "\x8d\xbe", [26833] = "\x97\xa1", [26840] = "\xe5\xe9", -+ [26850] = "\xe5\xea", [26851] = "\x8f\xd6", [26852] = "\xe5\xe8", -+ [26853] = "\xfb\xa2", [26856] = "\x97\x87", [26857] = "\xe5\xe5", -+ [26860] = "\xe5\xe7", [26861] = "\x90\xbb", [26862] = "\x90\x9e", -+ [26866] = "\xe5\xe6", [26868] = "\xe5\xeb", [26871] = "\x95\xa1", -+ [26874] = "\xe5\xed", [26876] = "\xe5\xec", [26880] = "\x8a\x8c", -+ [26882] = "\x96\x4a", [26883] = "\xe5\xee", [26892] = "\xfa\x5d", -+ [26893] = "\xe5\xfa", [26894] = "\xe5\xf0", [26901] = "\xe5\xf1", -+ [26906] = "\xe5\xf2", [26907] = "\xe5\xf3", [26918] = "\xe5\xf7", -+ [26920] = "\xe5\xf8", [26923] = "\xe5\xf6", [26929] = "\xe5\xf4", -+ [26931] = "\xe5\xef", [26932] = "\xe5\xf5", [26940] = "\xe5\xf9", -+ [26941] = "\xe8\xb5", [26950] = "\x89\xa6", [26958] = "\xe5\xfc", -+ [26959] = "\x8b\xdd", [26960] = "\xe5\xfb", [26964] = "\xe6\x41", -+ [26966] = "\xe6\x40", [26970] = "\xe6\x43", [26973] = "\xe6\x42", -+ [26975] = "\xe6\x44", [26978] = "\x8f\x50", [26980] = "\xe6\x45", -+ [26983] = "\xe6\x46", [26990] = "\xe6\x47", [26991] = "\x90\xbc", -+ [26993] = "\x97\x76", [26995] = "\xe6\x48", [26998] = "\x95\xa2", -+ [26999] = "\x94\x65", [27000] = "\xe6\x49", [27002] = "\xe6\x4a", -+ [27003] = "\x8c\xa9", [27007] = "\x8b\x4b", [27011] = "\xe6\x4b", -+ [27014] = "\x8e\x8b", [27015] = "\x94\x60", [27016] = "\xe6\x4c", -+ [27018] = "\x8a\x6f", [27025] = "\xe6\x4d", [27030] = "\xe6\x4f", -+ [27031] = "\x97\x97", [27033] = "\xe6\x4e", [27034] = "\x90\x65", -+ [27036] = "\xe6\x50", [27039] = "\xe6\x51", [27042] = "\xe6\x52", -+ [27043] = "\x8a\xcf", [27050] = "\xe6\x53", [27053] = "\xe6\x54", -+ [27055] = "\xe6\x55", [27056] = "\xe6\x56", [27074] = "\x8a\x70", -+ [27082] = "\xe6\x57", [27084] = "\xe6\x58", [27085] = "\xe6\x59", -+ [27091] = "\x89\xf0", [27094] = "\x90\x47", [27095] = "\xe6\x5a", -+ [27108] = "\xe6\x5b", [27112] = "\xe6\x5c", [27120] = "\x8c\xbe", -+ [27122] = "\x92\xf9", [27123] = "\xe6\x5d", [27128] = "\x8c\x76", -+ [27130] = "\x90\x75", [27132] = "\xe6\x60", [27134] = "\x93\xa2", -+ [27136] = "\xe6\x5f", [27138] = "\xfb\xa3", [27139] = "\x8c\x50", -+ [27142] = "\xe6\x5e", [27143] = "\x91\xf5", [27144] = "\x8b\x4c", -+ [27147] = "\xe6\x61", [27149] = "\xe6\x62", [27151] = "\x8f\xd7", -+ [27155] = "\x8c\x8d", [27157] = "\xe6\x63", [27162] = "\x96\x4b", -+ [27165] = "\x90\xdd", [27169] = "\x8b\x96", [27171] = "\x96\xf3", -+ [27172] = "\x91\x69", [27174] = "\xe6\x64", [27175] = "\xfb\xa4", -+ [27178] = "\x90\x66", [27179] = "\x92\x90", [27180] = "\x8f\xd8", -+ [27185] = "\xe6\x65", [27190] = "\xe6\x68", [27192] = "\xe6\x69", -+ [27200] = "\x8d\xbc", [27201] = "\x91\xc0", [27202] = "\xe6\x67", -+ [27204] = "\x8f\xd9", [27205] = "\x95\x5d", [27211] = "\xe6\x66", -+ [27214] = "\x8e\x8c", [27216] = "\x89\x72", [27218] = "\xe6\x6d", -+ [27219] = "\x8c\x77", [27222] = "\x8e\x8e", [27225] = "\x8e\x8d", -+ [27227] = "\x98\x6c", [27228] = "\xe6\x6c", [27229] = "\xe6\x6b", -+ [27230] = "\x91\x46", [27232] = "\x8b\x6c", [27233] = "\x98\x62", -+ [27234] = "\x8a\x59", [27235] = "\x8f\xda", [27241] = "\xfb\xa5", -+ [27244] = "\xe6\x6a", [27250] = "\xe6\x6f", [27252] = "\xe6\x70", -+ [27253] = "\xe6\x6e", [27255] = "\x8c\xd6", [27257] = "\x97\x5f", -+ [27260] = "\x8e\x8f", [27261] = "\x94\x46", [27265] = "\xe6\x73", -+ [27267] = "\x90\xbe", [27269] = "\x92\x61", [27272] = "\x97\x55", -+ [27274] = "\xe6\x76", [27278] = "\x8c\xea", [27280] = "\x90\xbd", -+ [27281] = "\xe6\x72", [27283] = "\xe6\x77", [27284] = "\x8c\xeb", -+ [27285] = "\xe6\x74", [27286] = "\xe6\x75", [27287] = "\xfb\xa6", -+ [27288] = "\xe6\x71", [27292] = "\x90\xe0", [27293] = "\x93\xc7", -+ [27296] = "\x92\x4e", [27298] = "\x89\xdb", [27305] = "\x94\xee", -+ [27308] = "\x8b\x62", [27310] = "\xfb\xa7", [27311] = "\x92\xb2", -+ [27314] = "\xe6\x7a", [27316] = "\xe6\x78", [27319] = "\x92\x6b", -+ [27323] = "\x90\xbf", [27324] = "\x8a\xd0", [27325] = "\xe6\x79", -+ [27327] = "\x90\x7a", [27330] = "\x97\xc8", [27334] = "\x98\x5f", -+ [27338] = "\xe6\x7b", [27339] = "\xe6\x87", [27340] = "\x92\xb3", -+ [27342] = "\xe6\x86", [27343] = "\xfb\xa8", [27344] = "\xe6\x83", -+ [27345] = "\xe6\x8b", [27346] = "\xe6\x84", [27348] = "\xe6\x80", -+ [27350] = "\x92\xfa", [27351] = "\xe6\x7e", [27355] = "\xe6\x7c", -+ [27357] = "\x97\x40", [27358] = "\x8e\x90", [27361] = "\xe6\x81", -+ [27363] = "\xe6\x7d", [27366] = "\xfb\xaa", [27367] = "\xe6\x85", -+ [27368] = "\x8f\x94", [27370] = "\x8c\xbf", [27374] = "\x91\xf8", -+ [27376] = "\x96\x64", [27377] = "\x89\x79", [27378] = "\x88\xe0", -+ [27380] = "\x93\xa3", [27383] = "\xe6\x89", [27388] = "\xe6\x88", -+ [27390] = "\x93\xe4", [27392] = "\xe6\x8d", [27396] = "\xe6\x82", -+ [27398] = "\xe6\x8c", [27399] = "\xe6\x8e", [27401] = "\x8c\xaa", -+ [27402] = "\xe6\x8a", [27403] = "\x8d\x75", [27405] = "\x8e\xd3", -+ [27408] = "\xe6\x8f", [27409] = "\x97\x77", [27414] = "\xe6\x92", -+ [27416] = "\xe6\x95", [27419] = "\xe6\x93", [27420] = "\x95\x54", -+ [27427] = "\xe6\x90", [27433] = "\x8b\xde", [27438] = "\xe6\x94", -+ [27441] = "\xe6\x96", [27449] = "\xe6\x9a", [27452] = "\xe6\x97", -+ [27454] = "\xe6\x99", [27455] = "\xe6\x98", [27459] = "\xfb\xab", -+ [27462] = "\xe6\x9b", [27464] = "\x8e\xaf", [27466] = "\xe6\x9d", -+ [27467] = "\xe6\x9c", [27468] = "\x95\x88", [27471] = "\xe6\x9f", -+ [27478] = "\x8c\x78", [27483] = "\xe6\x9e", [27484] = "\xe6\xa0", -+ [27487] = "\xe6\xa1", [27488] = "\x8b\x63", [27489] = "\xe3\xbf", -+ [27490] = "\x8f\xf7", [27492] = "\xe6\xa2", [27495] = "\x8c\xec", -+ [27501] = "\xe6\xa3", [27503] = "\xfb\xac", [27504] = "\xe6\xa4", -+ [27507] = "\x8e\x5d", [27514] = "\x9d\xcc", [27516] = "\xe6\xa5", -+ [27518] = "\xe6\xa6", [27520] = "\x8f\x51", [27522] = "\xe6\xa7", -+ [27523] = "\xe6\xa8", [27526] = "\xe6\xa9", [27529] = "\xe6\xaa", -+ [27530] = "\xe6\xab", [27687] = "\x92\x4a", [27690] = "\xe6\xac", -+ [27695] = "\xe6\xae", [27697] = "\xe6\xad", [27702] = "\x93\xa4", -+ [27704] = "\xe6\xaf", [27706] = "\x96\x4c", [27708] = "\xe6\xb0", -+ [27710] = "\xe6\xb1", [27712] = "\xe6\xb2", [27717] = "\xe6\xb3", -+ [27722] = "\x93\xd8", [27729] = "\x8f\xdb", [27730] = "\xe6\xb4", -+ [27738] = "\x8d\x8b", [27739] = "\x98\xac", [27740] = "\xe6\xb5", -+ [27752] = "\xe6\xb6", [27753] = "\x95\x5e", [27754] = "\xe6\xb7", -+ [27756] = "\xe6\xbf", [27762] = "\xe6\xb8", [27765] = "\xe6\xba", -+ [27769] = "\xe6\xb9", [27770] = "\xe6\xbb", [27772] = "\x96\x65", -+ [27773] = "\xe6\xbc", [27774] = "\xe6\xbd", [27780] = "\xe6\xbe", -+ [27784] = "\xe6\xc0", [27789] = "\x8a\x4c", [27790] = "\x92\xe5", -+ [27792] = "\x95\x89", [27793] = "\x8d\xe0", [27794] = "\x8d\x76", -+ [27799] = "\x95\x6e", [27800] = "\x89\xdd", [27801] = "\x94\xcc", -+ [27802] = "\xe6\xc3", [27803] = "\x8a\xd1", [27804] = "\x90\xd3", -+ [27805] = "\xe6\xc2", [27806] = "\xe6\xc7", [27807] = "\x92\x99", -+ [27808] = "\x96\xe1", [27810] = "\xe6\xc5", [27811] = "\xe6\xc6", -+ [27812] = "\x8b\x4d", [27814] = "\xe6\xc8", [27815] = "\x94\x83", -+ [27816] = "\x91\xdd", [27819] = "\x94\xef", [27820] = "\x93\x5c", -+ [27821] = "\xe6\xc4", [27823] = "\x96\x66", [27824] = "\x89\xea", -+ [27825] = "\xe6\xca", [27826] = "\x98\x47", [27827] = "\x92\xc0", -+ [27828] = "\x98\x64", [27831] = "\x8e\x91", [27832] = "\xe6\xc9", -+ [27834] = "\x91\xaf", [27837] = "\xe6\xda", [27838] = "\x91\x47", -+ [27841] = "\x93\xf6", [27843] = "\x95\x6f", [27850] = "\xe6\xcd", -+ [27851] = "\x8e\x5e", [27852] = "\x8e\x92", [27854] = "\x8f\xdc", -+ [27856] = "\x94\x85", [27858] = "\x8c\xab", [27859] = "\xe6\xcc", -+ [27860] = "\xe6\xcb", [27862] = "\x95\x8a", [27866] = "\x8e\xbf", -+ [27869] = "\x93\x71", [27872] = "\xfb\xad", [27876] = "\xfb\xae", -+ [27882] = "\xe6\xcf", [27883] = "\xe6\xd0", [27884] = "\x8d\x77", -+ [27885] = "\xe6\xce", [27892] = "\xe6\xd1", [27893] = "\xe6\xd2", -+ [27895] = "\xe6\xd4", [27896] = "\x91\xa1", [27898] = "\xe6\xd3", -+ [27899] = "\x8a\xe4", [27901] = "\xe6\xd6", [27903] = "\xe6\xd5", -+ [27904] = "\xe6\xd7", [27906] = "\xfb\xaf", [27907] = "\xe6\xd9", -+ [27908] = "\xe6\xdb", [27910] = "\xe6\xdc", [27988] = "\x90\xd4", -+ [27990] = "\x8e\xcd", [27991] = "\xe6\xdd", [27995] = "\x8a\x71", -+ [27997] = "\xe6\xde", [28000] = "\x91\x96", [28001] = "\xe6\xdf", -+ [28003] = "\xe6\xe0", [28004] = "\x95\x8b", [28006] = "\xfb\xb0", -+ [28007] = "\x8b\x4e", [28017] = "\xe6\xe1", [28021] = "\x92\xb4", -+ [28026] = "\x89\x7a", [28041] = "\xe6\xe2", [28051] = "\x8e\xef", -+ [28056] = "\x90\x96", [28067] = "\x91\xab", [28074] = "\xe6\xe5", -+ [28078] = "\xe6\xe4", [28082] = "\xe6\xe3", [28091] = "\xe6\xeb", -+ [28092] = "\xe6\xe9", [28095] = "\xe6\xe6", [28102] = "\xe6\xe8", -+ [28106] = "\xe6\xe7", [28107] = "\xe6\xea", [28109] = "\x8b\x97", -+ [28111] = "\xe6\xee", [28113] = "\x90\xd5", [28115] = "\xe6\xef", -+ [28120] = "\x8c\xd7", [28122] = "\xe6\xec", [28123] = "\xe6\xed", -+ [28127] = "\x98\x48", [28131] = "\x92\xb5", [28133] = "\x91\x48", -+ [28140] = "\xe6\xf0", [28143] = "\xe6\xf3", [28152] = "\xe6\xf1", -+ [28153] = "\xe6\xf2", [28154] = "\x97\x78", [28159] = "\x93\xa5", -+ [28160] = "\xe6\xf6", [28173] = "\xe6\xf4", [28174] = "\xe6\xf5", -+ [28175] = "\xe6\xf7", [28186] = "\xe7\x48", [28192] = "\xe6\xfa", -+ [28196] = "\xe6\xfb", [28197] = "\xe6\xf9", [28210] = "\xe6\xf8", -+ [28212] = "\x92\xfb", [28215] = "\xe7\x40", [28216] = "\xe7\x44", -+ [28217] = "\xe7\x41", [28218] = "\xe6\xfc", [28220] = "\xe7\x42", -+ [28224] = "\xe7\x43", [28229] = "\xe7\x4a", [28233] = "\xe7\x45", -+ [28239] = "\x90\xd6", [28240] = "\xe7\x47", [28243] = "\xe7\x49", -+ [28244] = "\xe7\x46", [28258] = "\xe7\x4c", [28260] = "\x8f\x52", -+ [28262] = "\xe7\x4b", [28268] = "\xe7\x4d", [28273] = "\xe7\x4e", -+ [28276] = "\xe7\x51", [28277] = "\xe7\x50", [28279] = "\xe7\x4f", -+ [28282] = "\xe7\x53", [28283] = "\xe7\x52", [28285] = "\x96\xf4", -+ [28289] = "\xe7\x55", [28291] = "\xe7\x54", [28292] = "\xe7\x56", -+ [28297] = "\xe7\x57", [28305] = "\xe7\x59", [28314] = "\xe7\x58", -+ [28315] = "\x90\x67", [28316] = "\xe7\x5a", [28319] = "\x8b\xeb", -+ [28320] = "\xe7\x5b", [28321] = "\xe7\x5d", [28334] = "\xe7\x5e", -+ [28341] = "\xe7\x5f", [28342] = "\xe7\x5c", [28344] = "\xe7\x60", -+ [28346] = "\x8e\xd4", [28347] = "\xe7\x61", [28348] = "\x8b\x4f", -+ [28349] = "\x8c\x52", [28351] = "\xfb\xb2", [28354] = "\x8c\xac", -+ [28363] = "\xe7\x62", [28367] = "\x93\xee", [28370] = "\x93\x5d", -+ [28371] = "\xe7\x63", [28379] = "\xe7\x66", [28392] = "\x8e\xb2", -+ [28395] = "\xe7\x65", [28396] = "\xe7\x64", [28397] = "\x8c\x79", -+ [28398] = "\xe7\x67", [28403] = "\x8a\x72", [28405] = "\xe7\x69", -+ [28409] = "\x8d\xda", [28410] = "\xe7\x68", [28412] = "\xe7\x71", -+ [28418] = "\xe7\x6b", [28419] = "\xe7\x6d", [28420] = "\x95\xe3", -+ [28421] = "\xe7\x6a", [28425] = "\xe7\x6c", [28427] = "\xe7\x70", -+ [28428] = "\xe7\x6e", [28429] = "\x8b\x50", [28431] = "\xe7\x6f", -+ [28438] = "\xe7\x72", [28441] = "\x94\x79", [28442] = "\x97\xd6", -+ [28447] = "\x8f\x53", [28451] = "\xe7\x73", [28456] = "\x97\x41", -+ [28457] = "\xe7\x75", [28459] = "\xe7\x74", [28462] = "\xe7\x78", -+ [28463] = "\x97\x60", [28466] = "\xe7\x77", [28468] = "\x8a\x8d", -+ [28469] = "\xe7\x76", [28470] = "\xe7\x7b", [28473] = "\xe7\x7a", -+ [28476] = "\xe7\x79", [28477] = "\x93\x51", [28478] = "\xe7\x7c", -+ [28487] = "\xe7\x7d", [28492] = "\xe7\x7e", [28495] = "\x8d\x8c", -+ [28497] = "\x8c\x44", [28498] = "\xe7\x80", [28499] = "\xe7\x81", -+ [28500] = "\xe7\x82", [28555] = "\x90\x68", [28556] = "\xe7\x83", -+ [28558] = "\x8e\xab", [28559] = "\xe7\x84", [28563] = "\xe7\x85", -+ [28567] = "\x99\x9f", [28568] = "\x99\x9e", [28573] = "\xe7\x86", -+ [28574] = "\xe3\x90", [28575] = "\xe7\x87", [28576] = "\x92\x43", -+ [28577] = "\x90\x4a", [28578] = "\x94\x5f", [28583] = "\xe7\x88", -+ [28586] = "\x95\xd3", [28587] = "\x92\xd2", [28588] = "\x8d\x9e", -+ [28591] = "\x92\x48", [28594] = "\x89\x49", [28596] = "\x96\x98", -+ [28597] = "\x90\x76", [28606] = "\x8c\x7d", [28609] = "\x8b\xdf", -+ [28612] = "\x95\xd4", [28618] = "\xe7\x89", [28626] = "\xe7\x8b", -+ [28629] = "\xe7\x8a", [28630] = "\x89\xde", [28633] = "\x93\xf4", -+ [28634] = "\xe7\x8c", [28635] = "\x94\x97", [28637] = "\x93\x52", -+ [28639] = "\xe7\x8d", [28640] = "\x8f\x71", [28644] = "\xe7\x8f", -+ [28647] = "\x96\xc0", [28648] = "\xe7\x9e", [28649] = "\xe7\x91", -+ [28650] = "\xe7\x92", [28653] = "\x92\xc7", [28656] = "\x91\xde", -+ [28657] = "\x91\x97", [28659] = "\x93\xa6", [28661] = "\xe7\x90", -+ [28662] = "\x8b\x74", [28667] = "\xe7\x99", [28669] = "\xe7\x96", -+ [28670] = "\xe7\xa3", [28671] = "\x93\xa7", [28672] = "\x92\x80", -+ [28673] = "\xe7\x93", [28675] = "\x92\xfc", [28676] = "\x93\x72", -+ [28677] = "\xe7\x94", [28678] = "\xe7\x98", [28679] = "\x90\x80", -+ [28681] = "\x94\x87", [28682] = "\x92\xca", [28685] = "\x90\xc0", -+ [28686] = "\xe7\x97", [28687] = "\x91\xac", [28688] = "\x91\xa2", -+ [28689] = "\xe7\x95", [28690] = "\x88\xa7", [28691] = "\x98\x41", -+ [28695] = "\xe7\x9a", [28702] = "\x91\xdf", [28705] = "\x8f\x54", -+ [28706] = "\x90\x69", [28709] = "\xe7\x9c", [28710] = "\xe7\x9b", -+ [28712] = "\x88\xed", [28713] = "\xe7\x9d", [28716] = "\x95\x4e", -+ [28718] = "\xe7\xa5", [28721] = "\x93\xd9", [28722] = "\x90\x8b", -+ [28725] = "\x92\x78", [28727] = "\x8b\xf6", [28729] = "\xe7\xa4", -+ [28730] = "\x97\x56", [28731] = "\x89\x5e", [28733] = "\x95\xd5", -+ [28734] = "\x89\xdf", [28735] = "\xe7\x9f", [28736] = "\xe7\xa0", -+ [28737] = "\xe7\xa1", [28738] = "\xe7\xa2", [28739] = "\x93\xb9", -+ [28740] = "\x92\x42", [28741] = "\x88\xe1", [28742] = "\xe7\xa6", -+ [28744] = "\xe7\xa7", [28745] = "\xea\xa1", [28748] = "\x91\xbb", -+ [28750] = "\xe7\xa8", [28752] = "\x89\x93", [28753] = "\x91\x6b", -+ [28755] = "\x8c\xad", [28757] = "\x97\x79", [28759] = "\xfb\xb5", -+ [28760] = "\xe7\xa9", [28761] = "\x93\x4b", [28765] = "\x91\x98", -+ [28766] = "\x8e\xd5", [28767] = "\xe7\xaa", [28770] = "\xe7\xad", -+ [28773] = "\x8f\x85", [28774] = "\xe7\xab", [28775] = "\x91\x4a", -+ [28776] = "\x91\x49", [28778] = "\x88\xe2", [28780] = "\x97\xc9", -+ [28781] = "\xe7\xaf", [28783] = "\x94\xf0", [28784] = "\xe7\xb1", -+ [28785] = "\xe7\xb0", [28786] = "\xe7\xae", [28787] = "\xe2\x84", -+ [28788] = "\x8a\xd2", [28791] = "\xe7\x8e", [28793] = "\xe7\xb3", -+ [28794] = "\xe7\xb2", [28799] = "\xe7\xb4", [28801] = "\x97\x57", -+ [28819] = "\x93\xdf", [28822] = "\x96\x4d", [28824] = "\xe7\xb5", -+ [28826] = "\x8e\xd7", [28831] = "\xe7\xb6", [28833] = "\xe7\xb7", -+ [28837] = "\xe7\xb8", [28840] = "\x93\x40", [28849] = "\x88\xe8", -+ [28858] = "\x8d\x78", [28862] = "\x98\x59", [28875] = "\xe7\xbc", -+ [28878] = "\xfb\xb6", [28881] = "\x8c\x53", [28882] = "\xe7\xb9", -+ [28884] = "\xe7\xba", [28888] = "\x95\x94", [28893] = "\x8a\x73", -+ [28901] = "\x97\x58", [28903] = "\x8b\xbd", [28909] = "\x93\x73", -+ [28914] = "\xe7\xbd", [28930] = "\xe7\xbe", [28933] = "\xfb\xb8", -+ [28937] = "\xe7\xbf", [28951] = "\xfb\xb9", [28957] = "\x93\x41", -+ [28960] = "\xe7\xc1", [28962] = "\xe7\xc0", [28985] = "\x93\xd1", -+ [28986] = "\xe7\xc2", [28987] = "\x8f\x55", [28988] = "\x8e\xde", -+ [28989] = "\x94\x7a", [28990] = "\x92\x91", [28994] = "\x8e\xf0", -+ [28996] = "\x90\x8c", [28998] = "\xe7\xc3", [29000] = "\xe7\xc4", -+ [29010] = "\x90\x7c", [29011] = "\xe7\xc5", [29013] = "\xe7\xc6", -+ [29017] = "\xe7\xc7", [29018] = "\x97\x8f", [29020] = "\x8f\x56", -+ [29026] = "\xe7\xc9", [29027] = "\xe7\xc8", [29029] = "\x8d\x79", -+ [29031] = "\x8d\x93", [29032] = "\x8e\x5f", [29042] = "\xe7\xcc", -+ [29047] = "\x8f\x86", [29049] = "\xe7\xcb", [29051] = "\xe7\xca", -+ [29053] = "\x91\xe7", [29056] = "\x8c\xed", [29058] = "\x90\xc1", -+ [29063] = "\x94\xae", [29068] = "\x8f\x58", [29074] = "\xe7\xcd", -+ [29076] = "\x8f\xdd", [29082] = "\xe7\xd0", [29083] = "\xe7\xce", -+ [29087] = "\xe7\xcf", [29092] = "\xe7\xd2", [29093] = "\xe7\xd1", -+ [29096] = "\x8f\xf8", [29098] = "\xe7\xd3", [29104] = "\xe7\xd4", -+ [29105] = "\xe7\xd5", [29110] = "\x94\xce", [29111] = "\x8d\xd1", -+ [29112] = "\x8e\xdf", [29113] = "\xe7\xd6", [29115] = "\xe7\xd7", -+ [29116] = "\x97\xa2", [29117] = "\x8f\x64", [29118] = "\x96\xec", -+ [29119] = "\x97\xca", [29120] = "\xe7\xd8", [29121] = "\x8b\xe0", -+ [29126] = "\xe7\xd9", [29127] = "\xfb\xbb", [29128] = "\x93\x42", -+ [29130] = "\xfb\xba", [29131] = "\xe7\xdc", [29132] = "\x8a\x98", -+ [29133] = "\x90\x6a", [29134] = "\xfb\xbc", [29135] = "\xe7\xda", -+ [29137] = "\xe7\xdb", [29139] = "\x92\xde", [29140] = "\xfb\xbf", -+ [29141] = "\xfb\xc0", [29142] = "\x96\x74", [29143] = "\x8b\xfa", -+ [29149] = "\xfb\xbd", [29150] = "\xfb\xbe", [29157] = "\xe7\xde", -+ [29158] = "\xe7\xdf", [29164] = "\xe7\xdd", [29167] = "\xe7\xe1", -+ [29174] = "\xfb\xc1", [29178] = "\xfb\xc3", [29181] = "\x93\xdd", -+ [29182] = "\x8a\x62", [29184] = "\xfb\xc2", [29185] = "\xe7\xe5", -+ [29188] = "\xe7\xe2", [29189] = "\xe7\xe4", [29198] = "\xe7\xe0", -+ [29209] = "\xe8\x6e", [29212] = "\xe7\xe3", [29220] = "\x97\xe9", -+ [29223] = "\x8c\xd8", [29225] = "\xfb\xca", [29226] = "\xfb\xc4", -+ [29228] = "\xfb\xc6", [29231] = "\xe7\xed", [29232] = "\xfb\xc5", -+ [29236] = "\x93\x53", [29237] = "\xe7\xe8", [29240] = "\xe7\xeb", -+ [29241] = "\xe7\xe9", [29243] = "\xe7\xee", [29246] = "\xfb\xc7", -+ [29248] = "\xe7\xef", [29249] = "\xfb\xc9", [29255] = "\xe7\xe7", -+ [29257] = "\xfb\xc8", [29258] = "\xe7\xf4", [29259] = "\x89\x94", -+ [29262] = "\xe7\xe6", [29266] = "\x94\xab", [29268] = "\xe7\xea", -+ [29270] = "\x8f\xde", [29271] = "\xfb\xcb", [29281] = "\x8d\x7a", -+ [29287] = "\xfb\xcd", [29288] = "\xfb\xce", [29294] = "\x96\x67", -+ [29296] = "\x8b\xe2", [29299] = "\x8f\x65", [29301] = "\x93\xba", -+ [29304] = "\xfa\x5f", [29313] = "\x91\x4c", [29315] = "\xe7\xf2", -+ [29317] = "\xe7\xec", [29318] = "\xe7\xf1", [29320] = "\x96\xc1", -+ [29322] = "\x92\xb6", [29323] = "\xe7\xf3", [29324] = "\xe7\xf0", -+ [29335] = "\xfb\xcc", [29341] = "\x91\x4b", [29351] = "\xe7\xf7", -+ [29353] = "\xe7\xf6", [29375] = "\xe7\xf5", [29376] = "\xfb\xd2", -+ [29378] = "\x96\x4e", [29379] = "\xfb\xd6", [29381] = "\xfb\xd4", -+ [29383] = "\xfb\xd0", [29385] = "\xfb\xd1", [29392] = "\xfb\xd5", -+ [29396] = "\x8f\x9b", [29399] = "\xfb\xcf", [29401] = "\xe7\xf8", -+ [29402] = "\x95\xdd", [29405] = "\x89\x73", [29410] = "\x95\x65", -+ [29411] = "\x92\x92", [29416] = "\x8b\x98", [29417] = "\xfa\x65", -+ [29418] = "\xe7\xfa", [29419] = "\xfb\xd9", [29420] = "\x8d\x7c", -+ [29423] = "\xfb\xdc", [29426] = "\xfb\xde", [29430] = "\x8e\x4b", -+ [29439] = "\xe7\xf9", [29440] = "\x90\x8d", [29448] = "\x90\x8e", -+ [29449] = "\xe8\x40", [29450] = "\xe8\x42", [29453] = "\xfb\xdd", -+ [29454] = "\xfb\xdb", [29456] = "\x8f\xf9", [29457] = "\xfb\xd8", -+ [29458] = "\xe8\x41", [29459] = "\xe8\x43", [29461] = "\xfb\xd7", -+ [29462] = "\x8b\xd1", [29464] = "\x95\x64", [29467] = "\x8e\xe0", -+ [29468] = "\x98\x42", [29470] = "\xe7\xfc", [29471] = "\x8d\xf6", -+ [29474] = "\x98\x5e", [29477] = "\xe8\x45", [29482] = "\xe8\x44", -+ [29483] = "\xe8\x46", [29492] = "\xe7\xfb", [29496] = "\xfa\x5e", -+ [29499] = "\x93\xe7", [29501] = "\x93\x74", [29508] = "\x92\xd5", -+ [29510] = "\xe8\x4b", [29511] = "\xfb\xe0", [29515] = "\x92\x62", -+ [29516] = "\xe8\x47", [29520] = "\xe8\x48", [29532] = "\x8c\x4c", -+ [29534] = "\xe8\x4a", [29536] = "\xfb\xdf", [29541] = "\x8c\xae", -+ [29548] = "\xe8\x49", [29550] = "\x8f\xdf", [29564] = "\x8a\x99", -+ [29572] = "\xe8\x4f", [29574] = "\x8d\xbd", [29575] = "\x91\x99", -+ [29578] = "\x92\xc8", [29588] = "\xfb\xe1", [29591] = "\x8a\x5a", -+ [29596] = "\xe8\x4d", [29597] = "\xe8\x4e", [29598] = "\x92\xc1", -+ [29600] = "\xe8\x4c", [29609] = "\xe8\x50", [29619] = "\xe8\x56", -+ [29622] = "\xfb\xe2", [29624] = "\xe8\x59", [29632] = "\xe8\x58", -+ [29633] = "\x93\x4c", [29638] = "\xe8\x51", [29639] = "\xe8\x52", -+ [29640] = "\xe8\x55", [29645] = "\xe8\x57", [29646] = "\xfb\xe3", -+ [29649] = "\x8b\xbe", [29652] = "\xe8\x5a", [29653] = "\xe8\x54", -+ [29656] = "\xe8\x53", [29672] = "\xfb\xe4", [29683] = "\xe8\x5e", -+ [29687] = "\xe8\x5f", [29696] = "\xe8\x60", [29699] = "\xe8\x5d", -+ [29700] = "\xe8\x5c", [29704] = "\x8f\xe0", [29705] = "\x93\xa8", -+ [29706] = "\xe8\x5b", [29713] = "\xe8\x64", [29723] = "\xe8\x62", -+ [29729] = "\xfb\xe5", [29733] = "\xe8\x63", [29734] = "\xe8\x61", -+ [29736] = "\x91\xf6", [29738] = "\xe8\x65", [29745] = "\xe8\x66", -+ [29748] = "\xe8\x68", [29749] = "\xfb\xe6", [29752] = "\xfb\xe7", -+ [29761] = "\x8a\xd3", [29762] = "\xe8\x67", [29763] = "\x96\xf8", -+ [29770] = "\xe8\x73", [29771] = "\xe8\x69", [29774] = "\xe8\x6c", -+ [29776] = "\xe8\x6a", [29778] = "\xe8\x6b", [29786] = "\xe8\x6d", -+ [29792] = "\xe8\x6f", [29797] = "\xe8\x70", [29799] = "\xe8\x71", -+ [29804] = "\xe8\x74", [29805] = "\xe8\x72", [29806] = "\xe8\x75", -+ [29807] = "\xe8\x77", [29809] = "\xe8\x76", [30055] = "\x92\xb7", -+ [30064] = "\x96\xe5", [30066] = "\xe8\x78", [30067] = "\x91\x4d", -+ [30071] = "\xe8\x79", [30073] = "\x95\xc2", [30074] = "\xe8\x7a", -+ [30075] = "\x8a\x4a", [30079] = "\x89\x5b", [30081] = "\x8a\xd5", -+ [30082] = "\xfb\xe8", [30083] = "\x8a\xd4", [30084] = "\xe8\x7b", -+ [30086] = "\xe8\x7c", [30088] = "\xe8\x7d", [30089] = "\xe8\x7e", -+ [30096] = "\xe8\x80", [30098] = "\x8a\xd6", [30099] = "\x8a\x74", -+ [30100] = "\x8d\x7d", [30101] = "\x94\xb4", [30103] = "\xe8\x82", -+ [30104] = "\xe8\x81", [30109] = "\xe8\x83", [30114] = "\x89\x7b", -+ [30121] = "\xe8\x86", [30123] = "\xe8\x85", [30124] = "\xe8\x84", -+ [30126] = "\xe8\x87", [30131] = "\xe8\x8a", [30135] = "\x88\xc5", -+ [30138] = "\xe8\x88", [30140] = "\xe8\x8c", [30141] = "\xe8\x8b", -+ [30148] = "\xe8\x8e", [30149] = "\xe8\x8d", [30150] = "\xe8\x8f", -+ [30152] = "\x93\xac", [30156] = "\xe8\x90", [30161] = "\xe8\x91", -+ [30162] = "\xe8\x93", [30165] = "\xe8\x92", [30220] = "\x95\x8c", -+ [30225] = "\xe8\x94", [30232] = "\xe8\x95", [30234] = "\x8d\xe3", -+ [30238] = "\xe8\x96", [30239] = "\xe8\x97", [30242] = "\x96\x68", -+ [30251] = "\x91\x6a", [30255] = "\x88\xa2", [30256] = "\x91\xc9", -+ [30258] = "\xe8\x98", [30260] = "\x95\x8d", [30267] = "\xe8\x9b", -+ [30268] = "\xe8\x99", [30269] = "\x8d\x7e", [30271] = "\xe8\x9a", -+ [30272] = "\x8c\xc0", [30283] = "\x95\xc3", [30284] = "\xe8\x9d", -+ [30285] = "\xe8\x9f", [30286] = "\xe8\x9e", [30287] = "\xe8\xa0", -+ [30290] = "\x89\x40", [30291] = "\x90\x77", [30292] = "\x8f\x9c", -+ [30293] = "\x8a\xd7", [30294] = "\xe8\xa1", [30298] = "\x94\x86", -+ [30300] = "\xe8\xa3", [30304] = "\x89\x41", [30306] = "\xe8\xa2", -+ [30307] = "\x92\xc2", [30309] = "\x97\xcb", [30310] = "\x93\xa9", -+ [30311] = "\xe8\x9c", [30312] = "\x97\xa4", [30314] = "\x8c\xaf", -+ [30317] = "\x97\x7a", [30325] = "\x8b\xf7", [30326] = "\x97\xb2", -+ [30328] = "\x8c\x47", [30330] = "\x91\xe0", [30331] = "\xe4\x40", -+ [30333] = "\xe8\xa4", [30334] = "\x8a\x4b", [30335] = "\x90\x8f", -+ [30340] = "\x8a\x75", [30341] = "\xe8\xa6", [30343] = "\xe8\xa7", -+ [30344] = "\xe8\xa5", [30345] = "\x8c\x84", [30347] = "\x8d\xdb", -+ [30348] = "\x8f\xe1", [30349] = "\xfb\xeb", [30352] = "\x89\x42", -+ [30355] = "\x97\xd7", [30359] = "\xe8\xa9", [30360] = "\xe7\xac", -+ [30362] = "\xe8\xa8", [30367] = "\xfb\xec", [30368] = "\xe8\xac", -+ [30369] = "\xe8\xaa", [30370] = "\xe8\xab", [30372] = "\xe8\xad", -+ [30374] = "\xe8\xae", [30375] = "\x97\xea", [30376] = "\xe8\xaf", -+ [30377] = "\xe8\xb0", [30379] = "\x90\xc7", [30380] = "\x94\xb9", -+ [30384] = "\x90\x9d", [30385] = "\x8a\xe5", [30388] = "\x97\x59", -+ [30389] = "\x89\xeb", [30390] = "\x8f\x57", [30391] = "\x8c\xd9", -+ [30393] = "\xe8\xb3", [30395] = "\xe8\xb2", [30396] = "\x8e\x93", -+ [30397] = "\xe8\xb4", [30398] = "\xe8\xb1", [30401] = "\x8e\x47", -+ [30405] = "\xe8\xb8", [30406] = "\xe5\xab", [30409] = "\x99\xd4", -+ [30411] = "\x90\x97", [30412] = "\xe8\xb6", [30418] = "\x97\xa3", -+ [30419] = "\x93\xef", [30424] = "\x89\x4a", [30426] = "\x90\xe1", -+ [30427] = "\x8e\xb4", [30432] = "\x95\xb5", [30434] = "\x89\x5f", -+ [30438] = "\x97\xeb", [30439] = "\x97\x8b", [30441] = "\xe8\xb9", -+ [30443] = "\x93\x64", [30448] = "\x8e\xf9", [30452] = "\xe8\xba", -+ [30454] = "\xe8\xbb", [30455] = "\x90\x6b", [30456] = "\xe8\xbc", -+ [30458] = "\x97\xec", [30461] = "\xe8\xb7", [30462] = "\xe8\xbe", -+ [30463] = "\xe8\xc0", [30465] = "\xe8\xbf", [30467] = "\xe8\xbd", -+ [30470] = "\xe8\xc1", [30473] = "\xe8\xc2", [30476] = "\x91\x9a", -+ [30478] = "\x89\xe0", [30484] = "\xe8\xc3", [30487] = "\x96\xb6", -+ [30490] = "\xe8\xc4", [30496] = "\xe8\xc5", [30498] = "\x98\x49", -+ [30499] = "\xfb\xed", [30504] = "\x9e\x50", [30505] = "\xe8\xc6", -+ [30507] = "\xfb\xee", [30509] = "\xe8\xc7", [30510] = "\xe8\xc8", -+ [30514] = "\xe8\xcc", [30515] = "\xfb\xef", [30516] = "\xe8\xc9", -+ [30518] = "\xe8\xca", [30520] = "\xe8\xcb", [30521] = "\xe8\xcd", -+ [30525] = "\xfb\xf0", [30527] = "\xfb\xf1", [30529] = "\xfb\xf2", -+ [30530] = "\x90\xc2", [30533] = "\xfb\xf3", [30534] = "\x96\xf5", -+ [30537] = "\x90\xc3", [30540] = "\xe8\xce", [30542] = "\x94\xf1", -+ [30544] = "\xe8\xcf", [30545] = "\xea\x72", [30546] = "\x96\xca", -+ [30548] = "\xe8\xd0", [30550] = "\xe8\xd1", [30552] = "\xe8\xd2", -+ [30553] = "\x8a\x76", [30555] = "\xe8\xd4", [30557] = "\x90\x78", -+ [30561] = "\xe8\xd5", [30564] = "\x8c\x43", [30569] = "\xe8\xd6", -+ [30570] = "\xe8\xda", [30572] = "\xe8\xd8", [30577] = "\xe8\xd9", -+ [30580] = "\x8a\x93", [30581] = "\xe8\xd7", [30582] = "\xe8\xdb", -+ [30587] = "\xe8\xdc", [30589] = "\x88\xc6", [30591] = "\xe8\xdd", -+ [30592] = "\xe8\xde", [30600] = "\x8f\xe2", [30604] = "\xe8\xdf", -+ [30608] = "\x8b\x66", [30611] = "\xe8\xe2", [30614] = "\xe8\xe1", -+ [30616] = "\xe8\xe0", [30619] = "\xe6\x91", [30621] = "\x95\xda", -+ [30627] = "\xe8\xe3", [30628] = "\xe8\xe4", [30643] = "\xe8\xe5", -+ [30646] = "\xe8\xe6", [30648] = "\xe8\xe7", [30651] = "\xe8\xe8", -+ [30659] = "\x8a\xd8", [30668] = "\xe8\xe9", [30685] = "\xe8\xea", -+ [30686] = "\x94\x42", [30690] = "\xe8\xec", [30691] = "\x89\xb9", -+ [30693] = "\xe8\xef", [30694] = "\xe8\xee", [30699] = "\x89\x43", -+ [30703] = "\x8b\xbf", [30705] = "\x95\xc5", [30706] = "\x92\xb8", -+ [30707] = "\x8d\xa0", [30709] = "\x8d\x80", [30710] = "\x8f\x87", -+ [30712] = "\x90\x7b", [30716] = "\xe8\xf1", [30719] = "\xe8\xf0", -+ [30720] = "\x97\x61", [30721] = "\x8a\xe6", [30722] = "\x94\xd0", -+ [30723] = "\x93\xda", [30727] = "\x90\x9c", [30728] = "\x97\xcc", -+ [30730] = "\x8c\x7a", [30737] = "\xe8\xf4", [30740] = "\xe8\xf3", -+ [30748] = "\x96\x6a", [30749] = "\x93\xaa", [30756] = "\x89\x6f", -+ [30759] = "\xe8\xf5", [30760] = "\xe8\xf2", [30763] = "\x95\x70", -+ [30764] = "\x97\x8a", [30765] = "\xe8\xf6", [30774] = "\xe8\xf7", -+ [30779] = "\xe8\xf9", [30780] = "\x91\xe8", [30781] = "\x8a\x7a", -+ [30782] = "\x8a\x7b", [30783] = "\xe8\xf8", [30788] = "\x8a\xe7", -+ [30789] = "\x8c\xb0", [30791] = "\xfb\xf4", [30792] = "\x8a\xe8", -+ [30795] = "\x93\x5e", [30798] = "\x97\xde", [30805] = "\xfb\xf5", -+ [30807] = "\x8c\xda", [30811] = "\xe8\xfa", [30815] = "\xe8\xfb", -+ [30816] = "\xe8\xfc", [30817] = "\xe9\x40", [30819] = "\xe9\x42", -+ [30820] = "\xe9\x41", [30872] = "\x95\x97", [30874] = "\xe9\x43", -+ [30879] = "\xe9\x44", [30881] = "\xe9\x45", [30886] = "\xe9\x46", -+ [30899] = "\xe9\x48", [30900] = "\xe9\x47", [30902] = "\xe9\x49", -+ [30923] = "\x94\xf2", [30924] = "\xe3\xca", [30927] = "\x90\x48", -+ [30930] = "\x8b\x51", [30937] = "\xe9\x4a", [30939] = "\xe9\x4b", -+ [30941] = "\x99\xaa", [30942] = "\x9f\x5a", [30943] = "\x94\xd1", -+ [30946] = "\x88\xf9", [30948] = "\x88\xb9", [30956] = "\x8e\x94", -+ [30957] = "\x96\x4f", [30958] = "\x8f\xfc", [30963] = "\xe9\x4c", -+ [30965] = "\x96\xdd", [30969] = "\xe9\x4d", [30970] = "\x97\x7b", -+ [30972] = "\x89\x61", [30976] = "\x8e\x60", [30978] = "\xe9\x4e", -+ [30979] = "\x89\xec", [30980] = "\xe9\x4f", [30984] = "\xe9\x50", -+ [30989] = "\xe9\x52", [30990] = "\xe9\x53", [30992] = "\xe9\x55", -+ [30993] = "\xe9\x51", [30996] = "\xe9\x54", [30999] = "\xfb\xf8", -+ [31000] = "\x8a\xd9", [31004] = "\xe9\x56", [31006] = "\xe9\x57", -+ [31021] = "\xe9\x58", [31022] = "\xe9\x59", [31026] = "\xe9\x5a", -+ [31029] = "\xe9\x5c", [31033] = "\xe9\x5b", [31035] = "\xe9\x5e", -+ [31036] = "\xe9\x61", [31040] = "\xe9\x5d", [31041] = "\xe9\x5f", -+ [31042] = "\xe9\x60", [31045] = "\xe9\x62", [31047] = "\x8b\xc0", -+ [31110] = "\x8e\xf1", [31111] = "\xe9\x63", [31112] = "\xe9\x64", -+ [31113] = "\x8d\x81", [31118] = "\xfb\xfa", [31125] = "\xe9\x65", -+ [31128] = "\x8a\x5d", [31132] = "\x94\x6e", [31133] = "\xe9\x66", -+ [31134] = "\xe9\x67", [31139] = "\x92\x79", [31140] = "\x93\xe9", -+ [31148] = "\xe9\x68", [31153] = "\x94\x9d", [31156] = "\x91\xca", -+ [31157] = "\x89\x77", [31158] = "\x8b\xec", [31160] = "\x8b\xed", -+ [31168] = "\x92\x93", [31169] = "\xe9\x6d", [31170] = "\x8b\xee", -+ [31173] = "\x89\xed", [31176] = "\xe9\x6c", [31179] = "\xe9\x6a", -+ [31181] = "\xe9\x6b", [31183] = "\xe9\x69", [31186] = "\xe9\x77", -+ [31197] = "\xe9\x6e", [31198] = "\xe9\x6f", [31201] = "\xe9\x70", -+ [31202] = "\xe9\x71", [31208] = "\xe9\x73", [31211] = "\xe9\x72", -+ [31215] = "\x8f\x78", [31217] = "\xe9\x74", [31221] = "\xe9\x76", -+ [31230] = "\x8b\x52", [31231] = "\xe9\x75", [31234] = "\x91\x9b", -+ [31235] = "\x8c\xb1", [31241] = "\xe9\x78", [31256] = "\x91\xcb", -+ [31259] = "\xe9\x79", [31264] = "\x93\xab", [31271] = "\xe9\x7a", -+ [31278] = "\xe9\x80", [31280] = "\xe9\x7d", [31282] = "\xe9\x7c", -+ [31283] = "\xe9\x7e", [31285] = "\xe9\x7b", [31293] = "\xe9\x82", -+ [31294] = "\xfb\xfb", [31301] = "\xe9\x81", [31303] = "\xe9\x84", -+ [31306] = "\x8b\xc1", [31307] = "\xe9\x83", [31311] = "\xe9\x85", -+ [31314] = "\xe9\x86", [31316] = "\xe9\x88", [31317] = "\xe9\x87", -+ [31321] = "\xe9\x89", [31322] = "\xe9\x8b", [31323] = "\xe9\x8a", -+ [31384] = "\x8d\x9c", [31389] = "\xe9\x8c", [31392] = "\xe9\x8d", -+ [31400] = "\x8a\x5b", [31404] = "\xe9\x8e", [31408] = "\xe9\x8f", -+ [31412] = "\x90\x91", [31423] = "\xe9\x90", [31425] = "\xe9\x91", -+ [31427] = "\xe9\x92", [31428] = "\xe9\x93", [31432] = "\x8d\x82", -+ [31433] = "\xfb\xfc", [31436] = "\xfc\x40", [31438] = "\xe9\x94", -+ [31439] = "\xe9\x95", [31442] = "\xe9\x96", [31443] = "\xe9\x97", -+ [31446] = "\xe9\x98", [31450] = "\x94\xaf", [31451] = "\xe9\x9a", -+ [31453] = "\x95\x45", [31454] = "\xe9\x9b", [31455] = "\xe9\x99", -+ [31457] = "\xe9\x9d", [31460] = "\xe9\x9c", [31463] = "\xe9\x9e", -+ [31467] = "\xe9\x9f", [31478] = "\xe9\xa0", [31496] = "\xe9\xa1", -+ [31498] = "\xe9\xa2", [31503] = "\xe9\xa3", [31506] = "\xe9\xa4", -+ [31507] = "\xe9\xa5", [31509] = "\xe9\xa6", [31511] = "\xe9\xa7", -+ [31512] = "\xe9\xa8", [31513] = "\xe9\xa9", [31514] = "\xe9\xaa", -+ [31518] = "\xe9\xab", [31519] = "\xe9\xac", [31521] = "\x9f\x54", -+ [31522] = "\xe9\xad", [31531] = "\xe2\xf6", [31532] = "\x8b\x53", -+ [31537] = "\x8a\x40", [31538] = "\x8d\xb0", [31539] = "\xe9\xaf", -+ [31540] = "\xe9\xae", [31541] = "\x96\xa3", [31549] = "\xe9\xb1", -+ [31550] = "\xe9\xb2", [31551] = "\xe9\xb0", [31553] = "\xe9\xb3", -+ [31556] = "\x96\x82", [31560] = "\xe9\xb4", [31562] = "\x8b\x9b", -+ [31583] = "\x98\x44", [31586] = "\xfc\x42", [31588] = "\xe9\xb5", -+ [31589] = "\xfc\x41", [31603] = "\xe9\xb7", [31614] = "\x88\xbc", -+ [31615] = "\xfc\x43", [31617] = "\xe9\xb8", [31618] = "\x95\xa9", -+ [31619] = "\xe9\xb6", [31622] = "\xe9\xb9", [31623] = "\xe9\xba", -+ [31631] = "\xe9\xbb", [31632] = "\xe9\xbc", [31640] = "\xe9\xbd", -+ [31642] = "\x96\x8e", [31643] = "\x8e\x4c", [31645] = "\x8d\xf8", -+ [31646] = "\x91\x4e", [31649] = "\xfc\x44", [31652] = "\xe9\xbe", -+ [31657] = "\xe9\xc1", [31659] = "\xfc\x45", [31664] = "\xe9\xbf", -+ [31670] = "\xe9\xc2", [31673] = "\x8c\xef", [31674] = "\xe9\xc0", -+ [31679] = "\xe9\xc3", [31681] = "\xe9\xc4", [31682] = "\xe9\xc5", -+ [31684] = "\xe9\xc9", [31686] = "\x8e\x49", [31691] = "\x91\xe2", -+ [31697] = "\xe9\xca", [31698] = "\xe9\xc7", [31699] = "\xe9\xc6", -+ [31700] = "\xe9\xc8", [31704] = "\x8c\x7e", [31712] = "\xe9\xce", -+ [31713] = "\xe9\xcd", [31714] = "\xe9\xcc", [31717] = "\x88\xb1", -+ [31728] = "\xfc\x46", [31732] = "\xe9\xd8", [31734] = "\xe9\xd4", -+ [31736] = "\xe9\xd5", [31737] = "\xe9\xd1", [31738] = "\xe9\xd7", -+ [31740] = "\xe9\xd3", [31741] = "\x8a\x82", [31744] = "\x98\x6b", -+ [31746] = "\xe9\xd6", [31747] = "\xe9\xd2", [31748] = "\xe9\xd0", -+ [31749] = "\xe9\xcf", [31755] = "\xe9\xda", [31761] = "\xe9\xdd", -+ [31764] = "\xe9\xdc", [31765] = "\xe9\xdb", [31773] = "\x95\x68", -+ [31774] = "\xe9\xd9", [31775] = "\x88\xf1", [31776] = "\xe9\xde", -+ [31778] = "\xe9\xe0", [31785] = "\x8a\x8f", [31786] = "\xe9\xcb", -+ [31787] = "\x89\x56", [31790] = "\xe9\xe2", [31798] = "\xe9\xe1", -+ [31799] = "\xe9\xdf", [31800] = "\x92\x4c", [31810] = "\x96\x90", -+ [31815] = "\x97\xd8", [31818] = "\xe9\xe3", [31824] = "\xe9\xe4", -+ [31831] = "\xe9\xe5", [31846] = "\xe9\xe6", [31848] = "\xe9\xe7", -+ [31957] = "\x92\xb9", [31959] = "\xe9\xe8", [31961] = "\x94\xb5", -+ [31963] = "\xe9\xed", [31964] = "\xe9\xe9", [31968] = "\xe9\xea", -+ [31971] = "\x96\x50", [31972] = "\x96\xc2", [31974] = "\x93\xce", -+ [31987] = "\xe9\xee", [31990] = "\xe9\xef", [31991] = "\x93\xbc", -+ [31992] = "\xe9\xec", [31993] = "\xe9\xeb", [31998] = "\x89\xa8", -+ [32002] = "\xe9\xf7", [32005] = "\xe9\xf6", [32011] = "\x89\x95", -+ [32015] = "\xe9\xf4", [32019] = "\xe9\xf3", [32022] = "\xe9\xf1", -+ [32024] = "\x8a\x9b", [32026] = "\xe9\xf0", [32027] = "\x8e\xb0", -+ [32028] = "\x89\xa7", [32043] = "\x8d\x83", [32046] = "\xe9\xfa", -+ [32047] = "\xe9\xf9", [32049] = "\xe9\xf8", [32052] = "\xe9\xf5", -+ [32054] = "\xe9\xfb", [32056] = "\xe9\xfc", [32064] = "\xea\x44", -+ [32065] = "\xea\x43", [32073] = "\xea\x45", [32076] = "\x89\x4c", -+ [32077] = "\xea\x40", [32078] = "\xea\x41", [32080] = "\x8d\x94", -+ [32081] = "\x96\xb7", [32084] = "\xea\x42", [32091] = "\xfc\x48", -+ [32092] = "\x96\x51", [32095] = "\xea\x4a", [32096] = "\xfc\x47", -+ [32098] = "\xea\x46", [32106] = "\xea\x4b", [32119] = "\xea\x48", -+ [32121] = "\xea\x47", [32127] = "\x8c\x7b", [32138] = "\xea\x4c", -+ [32148] = "\xea\x4d", [32153] = "\xea\x4e", [32155] = "\xea\x49", -+ [32159] = "\xe9\xf2", [32162] = "\xea\x4f", [32164] = "\x92\xdf", -+ [32168] = "\xea\x53", [32170] = "\xea\x54", [32171] = "\xea\x52", -+ [32177] = "\xea\x51", [32178] = "\xea\x57", [32180] = "\xea\x50", -+ [32182] = "\xea\x55", [32191] = "\xea\x56", [32195] = "\xea\x59", -+ [32201] = "\xea\x58", [32214] = "\xea\x5b", [32221] = "\xea\x5c", -+ [32223] = "\xea\x5d", [32226] = "\x98\x68", [32232] = "\xea\x5a", -+ [32233] = "\x91\xe9", [32234] = "\x8d\xeb", [32237] = "\xea\x5e", -+ [32265] = "\xfc\x4a", [32266] = "\xea\x5f", [32267] = "\xea\x60", -+ [32270] = "\xea\x61", [32357] = "\xea\x62", [32360] = "\x8c\xb2", -+ [32361] = "\xea\x63", [32365] = "\xea\x64", [32367] = "\x8e\xad", -+ [32369] = "\xea\x65", [32376] = "\xea\x66", [32379] = "\xea\x67", -+ [32380] = "\xea\x68", [32385] = "\xea\x6b", [32386] = "\xea\x69", -+ [32387] = "\x98\x5b", [32389] = "\xea\x6a", [32391] = "\x97\xed", -+ [32397] = "\xea\x6c", [32399] = "\x97\xd9", [32405] = "\xea\x6d", -+ [32406] = "\x94\x9e", [32409] = "\xea\x6e", [32410] = "\xea\x70", -+ [32413] = "\xea\x71", [32424] = "\xea\x6f", [32425] = "\x8d\x8d", -+ [32426] = "\x96\xcb", [32427] = "\x96\x83", [32428] = "\x9b\xf5", -+ [32430] = "\x9f\x80", [32431] = "\x96\x9b", [32436] = "\x89\xa9", -+ [32444] = "\xea\x73", [32445] = "\x8b\x6f", [32446] = "\xea\x74", -+ [32447] = "\xea\x75", [32448] = "\xea\x76", [32449] = "\xfc\x4b", -+ [32450] = "\x8d\x95", [32452] = "\xea\x77", [32456] = "\xe0\xd2", -+ [32457] = "\x96\xd9", [32459] = "\x91\xe1", [32460] = "\xea\x78", -+ [32461] = "\xea\x7a", [32462] = "\xea\x79", [32464] = "\xea\x7b", -+ [32469] = "\xea\x7c", [32472] = "\xea\x7d", [32479] = "\xea\x7e", -+ [32484] = "\xea\x80", [32486] = "\xea\x81", [32487] = "\xea\x82", -+ [32489] = "\xea\x83", [32491] = "\xea\x84", [32492] = "\xea\x85", -+ [32493] = "\xea\x86", [32503] = "\xea\x87", [32504] = "\xea\x88", -+ [32510] = "\x93\x43", [32515] = "\x8c\xdb", [32517] = "\xea\x8a", -+ [32528] = "\x91\x6c", [32529] = "\xea\x8b", [32540] = "\xea\x8c", -+ [32555] = "\x95\x40", [32558] = "\xea\x8d", [32570] = "\xea\x8e", -+ [32571] = "\xe2\x56", [32574] = "\xe6\xd8", [32575] = "\xe8\xeb", -+ [32578] = "\xea\x8f", [32580] = "\xea\x90", [32591] = "\xea\x92", -+ [32592] = "\xea\x93", [32593] = "\xea\x94", [32594] = "\x97\xee", -+ [32595] = "\xea\x91", [32598] = "\xea\x95", [32599] = "\xea\x96", -+ [32602] = "\xea\x98", [32604] = "\xea\x97", [32610] = "\xea\x9a", -+ [32614] = "\xea\x9b", [32615] = "\xea\x99", [32637] = "\x97\xb4", -+ [32645] = "\xea\x9c", [32652] = "\xea\x9d", [32653] = "\xe2\x73", -+ [32656] = "\xea\x9e" -+}; -+ -+static const char from_ucs4_cjkcpt[261][2] = -+{ -+ /* start = 0xf929, end = 0xfa2d */ -+ [ 0] = "\xfa\xe0", [ 179] = "\xfb\xe9", [ 229] = "\xfa\x90", -+ [ 230] = "\xfa\x9b", [ 231] = "\xfa\x9c", [ 232] = "\xfa\xb1", -+ [ 233] = "\xfa\xd8", [ 234] = "\xfa\xe8", [ 235] = "\xfa\xea", -+ [ 236] = "\xfb\x58", [ 237] = "\xfb\x5e", [ 238] = "\xfb\x75", -+ [ 239] = "\xfb\x7d", [ 240] = "\xfb\x7e", [ 241] = "\xfb\x80", -+ [ 242] = "\xfb\x82", [ 243] = "\xfb\x86", [ 244] = "\xfb\x89", -+ [ 245] = "\xfb\x92", [ 246] = "\xfb\x9d", [ 247] = "\xfb\x9f", -+ [ 248] = "\xfb\xa0", [ 249] = "\xfb\xa9", [ 250] = "\xfb\xb1", -+ [ 251] = "\xfb\xb3", [ 252] = "\xfb\xb4", [ 253] = "\xfb\xb7", -+ [ 254] = "\xfb\xd3", [ 255] = "\xfb\xda", [ 256] = "\xfb\xea", -+ [ 257] = "\xfb\xf6", [ 258] = "\xfb\xf7", [ 259] = "\xfb\xf9", -+ [ 260] = "\xfc\x49" -+}; -+ -+static const char from_ucs4_extra[229][2] = -+{ -+ /* start = 0xff01, end = 0xffe5 */ -+ [ 0] = "\x81\x49", [ 1] = "\xfa\x57", [ 2] = "\x81\x94", -+ [ 3] = "\x81\x90", [ 4] = "\x81\x93", [ 5] = "\x81\x95", -+ [ 6] = "\xfa\x56", [ 7] = "\x81\x69", [ 8] = "\x81\x6a", -+ [ 9] = "\x81\x96", [ 10] = "\x81\x7b", [ 11] = "\x81\x43", -+ [ 12] = "\x81\x7c", [ 13] = "\x81\x44", [ 14] = "\x81\x5e", -+ [ 15] = "\x82\x4f", [ 16] = "\x82\x50", [ 17] = "\x82\x51", -+ [ 18] = "\x82\x52", [ 19] = "\x82\x53", [ 20] = "\x82\x54", -+ [ 21] = "\x82\x55", [ 22] = "\x82\x56", [ 23] = "\x82\x57", -+ [ 24] = "\x82\x58", [ 25] = "\x81\x46", [ 26] = "\x81\x47", -+ [ 27] = "\x81\x83", [ 28] = "\x81\x81", [ 29] = "\x81\x84", -+ [ 30] = "\x81\x48", [ 31] = "\x81\x97", [ 32] = "\x82\x60", -+ [ 33] = "\x82\x61", [ 34] = "\x82\x62", [ 35] = "\x82\x63", -+ [ 36] = "\x82\x64", [ 37] = "\x82\x65", [ 38] = "\x82\x66", -+ [ 39] = "\x82\x67", [ 40] = "\x82\x68", [ 41] = "\x82\x69", -+ [ 42] = "\x82\x6a", [ 43] = "\x82\x6b", [ 44] = "\x82\x6c", -+ [ 45] = "\x82\x6d", [ 46] = "\x82\x6e", [ 47] = "\x82\x6f", -+ [ 48] = "\x82\x70", [ 49] = "\x82\x71", [ 50] = "\x82\x72", -+ [ 51] = "\x82\x73", [ 52] = "\x82\x74", [ 53] = "\x82\x75", -+ [ 54] = "\x82\x76", [ 55] = "\x82\x77", [ 56] = "\x82\x78", -+ [ 57] = "\x82\x79", [ 58] = "\x81\x6d", [ 59] = "\x81\x5f", -+ [ 60] = "\x81\x6e", [ 61] = "\x81\x4f", [ 62] = "\x81\x51", -+ [ 63] = "\x81\x4d", [ 64] = "\x82\x81", [ 65] = "\x82\x82", -+ [ 66] = "\x82\x83", [ 67] = "\x82\x84", [ 68] = "\x82\x85", -+ [ 69] = "\x82\x86", [ 70] = "\x82\x87", [ 71] = "\x82\x88", -+ [ 72] = "\x82\x89", [ 73] = "\x82\x8a", [ 74] = "\x82\x8b", -+ [ 75] = "\x82\x8c", [ 76] = "\x82\x8d", [ 77] = "\x82\x8e", -+ [ 78] = "\x82\x8f", [ 79] = "\x82\x90", [ 80] = "\x82\x91", -+ [ 81] = "\x82\x92", [ 82] = "\x82\x93", [ 83] = "\x82\x94", -+ [ 84] = "\x82\x95", [ 85] = "\x82\x96", [ 86] = "\x82\x97", -+ [ 87] = "\x82\x98", [ 88] = "\x82\x99", [ 89] = "\x82\x9a", -+ [ 90] = "\x81\x6f", [ 91] = "\x81\x62", [ 92] = "\x81\x70", -+ [ 93] = "\x81\x60", [ 96] = "\xa1\x00", [ 97] = "\xa2\x00", -+ [ 98] = "\xa3\x00", [ 99] = "\xa4\x00", [ 100] = "\xa5\x00", -+ [ 101] = "\xa6\x00", [ 102] = "\xa7\x00", [ 103] = "\xa8\x00", -+ [ 104] = "\xa9\x00", [ 105] = "\xaa\x00", [ 106] = "\xab\x00", -+ [ 107] = "\xac\x00", [ 108] = "\xad\x00", [ 109] = "\xae\x00", -+ [ 110] = "\xaf\x00", [ 111] = "\xb0\x00", [ 112] = "\xb1\x00", -+ [ 113] = "\xb2\x00", [ 114] = "\xb3\x00", [ 115] = "\xb4\x00", -+ [ 116] = "\xb5\x00", [ 117] = "\xb6\x00", [ 118] = "\xb7\x00", -+ [ 119] = "\xb8\x00", [ 120] = "\xb9\x00", [ 121] = "\xba\x00", -+ [ 122] = "\xbb\x00", [ 123] = "\xbc\x00", [ 124] = "\xbd\x00", -+ [ 125] = "\xbe\x00", [ 126] = "\xbf\x00", [ 127] = "\xc0\x00", -+ [ 128] = "\xc1\x00", [ 129] = "\xc2\x00", [ 130] = "\xc3\x00", -+ [ 131] = "\xc4\x00", [ 132] = "\xc5\x00", [ 133] = "\xc6\x00", -+ [ 134] = "\xc7\x00", [ 135] = "\xc8\x00", [ 136] = "\xc9\x00", -+ [ 137] = "\xca\x00", [ 138] = "\xcb\x00", [ 139] = "\xcc\x00", -+ [ 140] = "\xcd\x00", [ 141] = "\xce\x00", [ 142] = "\xcf\x00", -+ [ 143] = "\xd0\x00", [ 144] = "\xd1\x00", [ 145] = "\xd2\x00", -+ [ 146] = "\xd3\x00", [ 147] = "\xd4\x00", [ 148] = "\xd5\x00", -+ [ 149] = "\xd6\x00", [ 150] = "\xd7\x00", [ 151] = "\xd8\x00", -+ [ 152] = "\xd9\x00", [ 153] = "\xda\x00", [ 154] = "\xdb\x00", -+ [ 155] = "\xdc\x00", [ 156] = "\xdd\x00", [ 157] = "\xde\x00", -+ [ 158] = "\xdf\x00", [ 223] = "\x81\x91", [ 224] = "\x81\x92", -+ [ 225] = "\x81\xca", [ 226] = "\x81\x50", [ 227] = "\xfa\x55", -+ [ 228] = "\x81\x8f" -+}; -+ -+/* Definitions used in the body of the `gconv' function. */ -+#define CHARSET_NAME "CP932//" -+#define FROM_LOOP from_cp932 -+#define TO_LOOP to_cp932 -+#define DEFINE_INIT 1 -+#define DEFINE_FINI 1 -+#define MIN_NEEDED_FROM 1 -+#define MAX_NEEDED_FROM 2 -+#define MIN_NEEDED_TO 4 -+ -+/* First define the conversion function from CP932 to UCS4. */ -+#define MIN_NEEDED_INPUT MIN_NEEDED_FROM -+#define MAX_NEEDED_INPUT MAX_NEEDED_FROM -+#define MIN_NEEDED_OUTPUT MIN_NEEDED_TO -+#define LOOPFCT FROM_LOOP -+#define BODY \ -+ { \ -+ uint32_t ch = *inptr; \ -+ \ -+ if (ch < 0x80) \ -+ ++inptr; \ -+ else if (ch >= 0xa1 && ch <= 0xdf) \ -+ { \ -+ ch += 0xfec0; \ -+ ++inptr; \ -+ } \ -+ else if (__builtin_expect (ch, 0) == 0xa0 \ -+ || __builtin_expect (ch <= 0x80, 0) \ -+ || __builtin_expect (ch > 0xfc, 0)) \ -+ { \ -+ /* These are illegal. */ \ -+ if (! ignore_errors_p ()) \ -+ { \ -+ /* This is an illegal character. */ \ -+ result = __GCONV_ILLEGAL_INPUT; \ -+ break; \ -+ } \ -+ \ -+ ++inptr; \ -+ ++*irreversible; \ -+ continue; \ -+ } \ -+ else \ -+ { \ -+ /* Two-byte character. First test whether the next character \ -+ is also available. */ \ -+ uint32_t ch2; \ -+ uint_fast32_t idx; \ -+ \ -+ if (__builtin_expect (inptr + 1 >= inend, 0)) \ -+ { \ -+ /* The second character is not available. Store \ -+ the intermediate result. */ \ -+ result = __GCONV_INCOMPLETE_INPUT; \ -+ break; \ -+ } \ -+ \ -+ ch2 = inptr[1]; \ -+ idx = ch * 256 + ch2; \ -+ if (__builtin_expect (ch2 < 0x40, 0) \ -+ || __builtin_expect (ch2 > 0xfc, 0) \ -+ || __builtin_expect (ch2 == 0x7f, 0) \ -+ || (__builtin_expect (idx > 0x84be, 0) && idx < 0x8740) \ -+ || (__builtin_expect (idx > 0x879c, 0) && idx < 0x889f) \ -+ || (__builtin_expect (idx > 0x88fc, 0) && idx < 0x8940) \ -+ || (__builtin_expect (idx > 0x9ffc, 0) && idx < 0xe040) \ -+ || (__builtin_expect (idx > 0xeaa4, 0) && idx < 0xed40) \ -+ || (__builtin_expect (idx > 0xeefc, 0) && idx < 0xf040) \ -+ || __builtin_expect (idx > 0xfc4b, 0)) \ -+ { \ -+ /* This is illegal. */ \ -+ if (! ignore_errors_p ()) \ -+ { \ -+ /* This is an illegal character. */ \ -+ result = __GCONV_ILLEGAL_INPUT; \ -+ break; \ -+ } \ -+ \ -+ ++inptr; \ -+ ++*irreversible; \ -+ continue; \ -+ } \ -+ else \ -+ { \ -+ /* We could pack the data a bit more dense. The second \ -+ byte will never be 0x7f and it will also be never \ -+ >0xfc. But this would mean yet more `if's. */ \ -+ if (idx <= 0x84be) \ -+ ch = cjk_block1[(ch - 0x81) * 192 + ch2 - 0x40]; \ -+ else if (idx <= 0x879c) \ -+ ch = cjk_block2[(ch - 0x87) * 192 + ch2 - 0x40]; \ -+ else if (idx <= 0x88fc) \ -+ ch = cjk_block3[(ch - 0x88) * 192 + ch2 - 0x9f]; \ -+ else if (idx <= 0x9ffc) \ -+ ch = cjk_block4[(ch - 0x89) * 192 + ch2 - 0x40]; \ -+ else if (idx <= 0xeaa4) \ -+ ch = cjk_block5[(ch - 0xe0) * 192 + ch2 - 0x40]; \ -+ else if (idx <= 0xeefc) \ -+ ch = cjk_block6[(ch - 0xed) * 192 + ch2 - 0x40]; \ -+ else if (idx <= 0xf9fc) \ -+ ch = (ch-0xf0)*188 + ch2-((ch2<0x7f)?0x40:0x41) + 0xe000; \ -+ else \ -+ ch = cjk_block7[(ch - 0xfa) * 192 + ch2 - 0x40]; \ -+ \ -+ inptr += 2; \ -+ } \ -+ \ -+ if (__builtin_expect (ch, 1) == 0) \ -+ { \ -+ /* This is an illegal character. */ \ -+ if (! ignore_errors_p ()) \ -+ { \ -+ /* This is an illegal character. */ \ -+ result = __GCONV_ILLEGAL_INPUT; \ -+ break; \ -+ } \ -+ \ -+ inptr += 2; \ -+ ++*irreversible; \ -+ continue; \ -+ } \ -+ } \ -+ \ -+ put32 (outptr, ch); \ -+ outptr += 4; \ -+ } -+#define LOOP_NEED_FLAGS -+#include -+ -+ -+/* Next, define the other direction. */ -+#define MIN_NEEDED_INPUT MIN_NEEDED_TO -+#define MIN_NEEDED_OUTPUT MIN_NEEDED_FROM -+#define MAX_NEEDED_OUTPUT MAX_NEEDED_FROM -+#define LOOPFCT TO_LOOP -+#define BODY \ -+ { \ -+ uint32_t ch = get32 (inptr); \ -+ const char *cp; \ -+ unsigned char pua[2]; \ -+ \ -+ if (ch >= (sizeof (from_ucs4_lat1) / sizeof (from_ucs4_lat1[0]))) \ -+ { \ -+ if (ch >= 0x0391 && ch <= 0x0451) \ -+ cp = from_ucs4_greek[ch - 0x391]; \ -+ else if (ch >= 0x2010 && ch <= 0x9fa0) \ -+ cp = from_ucs4_cjk[ch - 0x2010]; \ -+ else if (ch >= 0xe000 && ch <= 0xe757) \ -+ { \ -+ pua[0] = (ch - 0xe000) / 188 + 0xf0; \ -+ pua[1] = (ch - 0xe000) % 188 + 0x40; \ -+ if (pua[1] > 0x7e) \ -+ pua[1]++; \ -+ cp = (const char *)&(pua[0]); \ -+ } \ -+ else if (ch >= 0xf929 && ch <= 0xfa2d) \ -+ cp = from_ucs4_cjkcpt[ch - 0xf929]; \ -+ else if (__builtin_expect (ch >= 0xff01, 1) \ -+ && __builtin_expect (ch <= 0xffe5, 1)) \ -+ cp = from_ucs4_extra[ch - 0xff01]; \ -+ else \ -+ { \ -+ UNICODE_TAG_HANDLER (ch, 4); \ -+ /* Illegal character. */ \ -+ cp = ""; \ -+ } \ -+ } \ -+ else \ -+ cp = from_ucs4_lat1[ch]; \ -+ \ -+ if (__builtin_expect (cp[0], '\1') == '\0' && ch != 0) \ -+ { \ -+ /* Illegal character. */ \ -+ STANDARD_TO_LOOP_ERR_HANDLER (4); \ -+ } \ -+ else \ -+ { \ -+ *outptr = cp[0]; \ -+ /* Now test for a possible second byte and write this if possible. */\ -+ if (cp[1] != '\0') \ -+ { \ -+ if (__builtin_expect (outptr + 1 >= outend, 0)) \ -+ { \ -+ /* The result does not fit into the buffer. */ \ -+ result = __GCONV_FULL_OUTPUT; \ -+ break; \ -+ } \ -+ *++outptr = cp[1]; \ -+ } \ -+ ++outptr; \ -+ } \ -+ \ -+ inptr += 4; \ -+ } -+#define LOOP_NEED_FLAGS -+#include -+ -+ -+/* Now define the toplevel functions. */ -+#include ---- glibc-2.3.2/iconvdata/euc-jp-ms.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/iconvdata/euc-jp-ms.c 2003-08-14 04:37:44.000000000 -0400 -@@ -0,0 +1,4931 @@ -+/* Mapping tables for EUCJP-MS handling. -+ Copyright (C) 1998,1999,2000,2001,2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by MORIYAMA Masayuki , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+ -+static const uint16_t cjk_block1[752] = -+{ -+ /* 0xa1a1 */ 0x3000, 0x3001, 0x3002, 0xff0c, 0xff0e, 0x30fb, 0xff1a, 0xff1b, -+ /* 0xa1a9 */ 0xff1f, 0xff01, 0x309b, 0x309c, 0x00b4, 0xff40, 0x00a8, 0xff3e, -+ /* 0xa1b1 */ 0xffe3, 0xff3f, 0x30fd, 0x30fe, 0x309d, 0x309e, 0x3003, 0x4edd, -+ /* 0xa1b9 */ 0x3005, 0x3006, 0x3007, 0x30fc, 0x2015, 0x2010, 0xff0f, 0xff3c, -+ /* 0xa1c1 */ 0xff5e, 0x2225, 0xff5c, 0x2026, 0x2025, 0x2018, 0x2019, 0x201c, -+ /* 0xa1c9 */ 0x201d, 0xff08, 0xff09, 0x3014, 0x3015, 0xff3b, 0xff3d, 0xff5b, -+ /* 0xa1d1 */ 0xff5d, 0x3008, 0x3009, 0x300a, 0x300b, 0x300c, 0x300d, 0x300e, -+ /* 0xa1d9 */ 0x300f, 0x3010, 0x3011, 0xff0b, 0xff0d, 0x00b1, 0x00d7, 0x00f7, -+ /* 0xa1e1 */ 0xff1d, 0x2260, 0xff1c, 0xff1e, 0x2266, 0x2267, 0x221e, 0x2234, -+ /* 0xa1e9 */ 0x2642, 0x2640, 0x00b0, 0x2032, 0x2033, 0x2103, 0xffe5, 0xff04, -+ /* 0xa1f1 */ 0xffe0, 0xffe1, 0xff05, 0xff03, 0xff06, 0xff0a, 0xff20, 0x00a7, -+ /* 0xa1f9 */ 0x2606, 0x2605, 0x25cb, 0x25cf, 0x25ce, 0x25c7, 0x25c6, 0x25a1, -+ /* 0xa2a3 */ 0x25a0, 0x25b3, 0x25b2, 0x25bd, 0x25bc, 0x203b, 0x3012, 0x2192, -+ /* 0xa2ab */ 0x2190, 0x2191, 0x2193, 0x3013, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa2b3 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2208, -+ /* 0xa2bb */ 0x220b, 0x2286, 0x2287, 0x2282, 0x2283, 0x222a, 0x2229, 0x0000, -+ /* 0xa2c3 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2227, -+ /* 0xa2cb */ 0x2228, 0xffe2, 0x21d2, 0x21d4, 0x2200, 0x2203, 0x0000, 0x0000, -+ /* 0xa2d3 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa2db */ 0x0000, 0x2220, 0x22a5, 0x2312, 0x2202, 0x2207, 0x2261, 0x2252, -+ /* 0xa2e3 */ 0x226a, 0x226b, 0x221a, 0x223d, 0x221d, 0x2235, 0x222b, 0x222c, -+ /* 0xa2eb */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x212b, -+ /* 0xa2f3 */ 0x2030, 0x266f, 0x266d, 0x266a, 0x2020, 0x2021, 0x00b6, 0x0000, -+ /* 0xa2fb */ 0x0000, 0x0000, 0x0000, 0x25ef, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa3a5 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa3ad */ 0x0000, 0x0000, 0x0000, 0xff10, 0xff11, 0xff12, 0xff13, 0xff14, -+ /* 0xa3b5 */ 0xff15, 0xff16, 0xff17, 0xff18, 0xff19, 0x0000, 0x0000, 0x0000, -+ /* 0xa3bd */ 0x0000, 0x0000, 0x0000, 0x0000, 0xff21, 0xff22, 0xff23, 0xff24, -+ /* 0xa3c5 */ 0xff25, 0xff26, 0xff27, 0xff28, 0xff29, 0xff2a, 0xff2b, 0xff2c, -+ /* 0xa3cd */ 0xff2d, 0xff2e, 0xff2f, 0xff30, 0xff31, 0xff32, 0xff33, 0xff34, -+ /* 0xa3d5 */ 0xff35, 0xff36, 0xff37, 0xff38, 0xff39, 0xff3a, 0x0000, 0x0000, -+ /* 0xa3dd */ 0x0000, 0x0000, 0x0000, 0x0000, 0xff41, 0xff42, 0xff43, 0xff44, -+ /* 0xa3e5 */ 0xff45, 0xff46, 0xff47, 0xff48, 0xff49, 0xff4a, 0xff4b, 0xff4c, -+ /* 0xa3ed */ 0xff4d, 0xff4e, 0xff4f, 0xff50, 0xff51, 0xff52, 0xff53, 0xff54, -+ /* 0xa3f5 */ 0xff55, 0xff56, 0xff57, 0xff58, 0xff59, 0xff5a, 0x0000, 0x0000, -+ /* 0xa3fd */ 0x0000, 0x0000, 0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, -+ /* 0xa4a7 */ 0x3047, 0x3048, 0x3049, 0x304a, 0x304b, 0x304c, 0x304d, 0x304e, -+ /* 0xa4af */ 0x304f, 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, -+ /* 0xa4b7 */ 0x3057, 0x3058, 0x3059, 0x305a, 0x305b, 0x305c, 0x305d, 0x305e, -+ /* 0xa4bf */ 0x305f, 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, -+ /* 0xa4c7 */ 0x3067, 0x3068, 0x3069, 0x306a, 0x306b, 0x306c, 0x306d, 0x306e, -+ /* 0xa4cf */ 0x306f, 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, -+ /* 0xa4d7 */ 0x3077, 0x3078, 0x3079, 0x307a, 0x307b, 0x307c, 0x307d, 0x307e, -+ /* 0xa4df */ 0x307f, 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, -+ /* 0xa4e7 */ 0x3087, 0x3088, 0x3089, 0x308a, 0x308b, 0x308c, 0x308d, 0x308e, -+ /* 0xa4ef */ 0x308f, 0x3090, 0x3091, 0x3092, 0x3093, 0x0000, 0x0000, 0x0000, -+ /* 0xa4f7 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa5a1 */ 0x30a1, 0x30a2, 0x30a3, 0x30a4, 0x30a5, 0x30a6, 0x30a7, 0x30a8, -+ /* 0xa5a9 */ 0x30a9, 0x30aa, 0x30ab, 0x30ac, 0x30ad, 0x30ae, 0x30af, 0x30b0, -+ /* 0xa5b1 */ 0x30b1, 0x30b2, 0x30b3, 0x30b4, 0x30b5, 0x30b6, 0x30b7, 0x30b8, -+ /* 0xa5b9 */ 0x30b9, 0x30ba, 0x30bb, 0x30bc, 0x30bd, 0x30be, 0x30bf, 0x30c0, -+ /* 0xa5c1 */ 0x30c1, 0x30c2, 0x30c3, 0x30c4, 0x30c5, 0x30c6, 0x30c7, 0x30c8, -+ /* 0xa5c9 */ 0x30c9, 0x30ca, 0x30cb, 0x30cc, 0x30cd, 0x30ce, 0x30cf, 0x30d0, -+ /* 0xa5d1 */ 0x30d1, 0x30d2, 0x30d3, 0x30d4, 0x30d5, 0x30d6, 0x30d7, 0x30d8, -+ /* 0xa5d9 */ 0x30d9, 0x30da, 0x30db, 0x30dc, 0x30dd, 0x30de, 0x30df, 0x30e0, -+ /* 0xa5e1 */ 0x30e1, 0x30e2, 0x30e3, 0x30e4, 0x30e5, 0x30e6, 0x30e7, 0x30e8, -+ /* 0xa5e9 */ 0x30e9, 0x30ea, 0x30eb, 0x30ec, 0x30ed, 0x30ee, 0x30ef, 0x30f0, -+ /* 0xa5f1 */ 0x30f1, 0x30f2, 0x30f3, 0x30f4, 0x30f5, 0x30f6, 0x0000, 0x0000, -+ /* 0xa5f9 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0391, 0x0392, -+ /* 0xa6a3 */ 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039a, -+ /* 0xa6ab */ 0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 0x03a0, 0x03a1, 0x03a3, -+ /* 0xa6b3 */ 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x0000, 0x0000, -+ /* 0xa6bb */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x03b1, 0x03b2, -+ /* 0xa6c3 */ 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba, -+ /* 0xa6cb */ 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3, -+ /* 0xa6d3 */ 0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8, 0x03c9, 0x0000, 0x0000, -+ /* 0xa6db */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa6e3 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa6eb */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa6f3 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa6fb */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0410, 0x0411, 0x0412, 0x0413, -+ /* 0xa7a5 */ 0x0414, 0x0415, 0x0401, 0x0416, 0x0417, 0x0418, 0x0419, 0x041a, -+ /* 0xa7ad */ 0x041b, 0x041c, 0x041d, 0x041e, 0x041f, 0x0420, 0x0421, 0x0422, -+ /* 0xa7b5 */ 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 0x0428, 0x0429, 0x042a, -+ /* 0xa7bd */ 0x042b, 0x042c, 0x042d, 0x042e, 0x042f, 0x0000, 0x0000, 0x0000, -+ /* 0xa7c5 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa7cd */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0430, 0x0431, 0x0432, 0x0433, -+ /* 0xa7d5 */ 0x0434, 0x0435, 0x0451, 0x0436, 0x0437, 0x0438, 0x0439, 0x043a, -+ /* 0xa7dd */ 0x043b, 0x043c, 0x043d, 0x043e, 0x043f, 0x0440, 0x0441, 0x0442, -+ /* 0xa7e5 */ 0x0443, 0x0444, 0x0445, 0x0446, 0x0447, 0x0448, 0x0449, 0x044a, -+ /* 0xa7ed */ 0x044b, 0x044c, 0x044d, 0x044e, 0x044f, 0x0000, 0x0000, 0x0000, -+ /* 0xa7f5 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa7fd */ 0x0000, 0x0000, 0x2500, 0x2502, 0x250c, 0x2510, 0x2518, 0x2514, -+ /* 0xa8a7 */ 0x251c, 0x252c, 0x2524, 0x2534, 0x253c, 0x2501, 0x2503, 0x250f, -+ /* 0xa8af */ 0x2513, 0x251b, 0x2517, 0x2523, 0x2533, 0x252b, 0x253b, 0x254b, -+ /* 0xa8b7 */ 0x2520, 0x252f, 0x2528, 0x2537, 0x253f, 0x251d, 0x2530, 0x2525, -+ /* 0xa8bf */ 0x2538, 0x2542, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa8c7 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa8cf */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa8d7 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa8df */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa8e7 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa8ef */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -+ /* 0xa8f7 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 -+}; -+ -+static const uint16_t cjk_block2[94] = -+{ -+ /* 0xada1 */ 0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, -+ /* 0xada9 */ 0x2468, 0x2469, 0x246a, 0x246b, 0x246c, 0x246d, 0x246e, 0x246f, -+ /* 0xadb1 */ 0x2470, 0x2471, 0x2472, 0x2473, 0x2160, 0x2161, 0x2162, 0x2163, -+ /* 0xadb9 */ 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, 0x0000, 0x3349, -+ /* 0xadc1 */ 0x3314, 0x3322, 0x334d, 0x3318, 0x3327, 0x3303, 0x3336, 0x3351, -+ /* 0xadc9 */ 0x3357, 0x330d, 0x3326, 0x3323, 0x332b, 0x334a, 0x333b, 0x339c, -+ /* 0xadd1 */ 0x339d, 0x339e, 0x338e, 0x338f, 0x33c4, 0x33a1, 0x0000, 0x0000, -+ /* 0xadd9 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x337b, 0x301d, -+ /* 0xade1 */ 0x301f, 0x2116, 0x33cd, 0x2121, 0x32a4, 0x32a5, 0x32a6, 0x32a7, -+ /* 0xade9 */ 0x32a8, 0x3231, 0x3232, 0x3239, 0x337e, 0x337d, 0x337c, 0x2252, -+ /* 0xadf1 */ 0x2261, 0x222b, 0x222e, 0x2211, 0x221a, 0x22a5, 0x2220, 0x221f, -+ /* 0xadf9 */ 0x22bf, 0x2235, 0x2229, 0x222a, 0x0000, 0x0000 -+}; -+ -+static const uint16_t cjk_block_ibm[268] = -+{ -+ /* start = 0x8ff3f3, end = 0x8ff4fe */ -+ /* 0x8ff3f3 */ 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177, -+ /* 0x8ff3fb */ 0x2178, 0x2179, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, -+ /* 0x8ff4a5 */ 0x2166, 0x2167, 0x2168, 0x2169, 0xff07, 0xff02, 0x3231, 0x2116, -+ /* 0x8ff4ad */ 0x2121, 0x70bb, 0x4efc, 0x50f4, 0x51ec, 0x5307, 0x5324, 0xfa0e, -+ /* 0x8ff4b5 */ 0x548a, 0x5759, 0xfa0f, 0xfa10, 0x589e, 0x5bec, 0x5cf5, 0x5d53, -+ /* 0x8ff4bd */ 0xfa11, 0x5fb7, 0x6085, 0x6120, 0x654e, 0x663b, 0x6665, 0xfa12, -+ /* 0x8ff4c5 */ 0xf929, 0x6801, 0xfa13, 0xfa14, 0x6a6b, 0x6ae2, 0x6df8, 0x6df2, -+ /* 0x8ff4cd */ 0x7028, 0xfa15, 0xfa16, 0x7501, 0x7682, 0x769e, 0xfa17, 0x7930, -+ /* 0x8ff4d5 */ 0xfa18, 0xfa19, 0xfa1a, 0xfa1b, 0x7ae7, 0xfa1c, 0xfa1d, 0x7da0, -+ /* 0x8ff4dd */ 0x7dd6, 0xfa1e, 0x8362, 0xfa1f, 0x85b0, 0xfa20, 0xfa21, 0x8807, -+ /* 0x8ff4e5 */ 0xfa22, 0x8b7f, 0x8cf4, 0x8d76, 0xfa23, 0xfa24, 0xfa25, 0x90de, -+ /* 0x8ff4ed */ 0xfa26, 0x9115, 0xfa27, 0xfa28, 0x9592, 0xf9dc, 0xfa29, 0x973b, -+ /* 0x8ff4f5 */ 0x974d, 0x9751, 0xfa2a, 0xfa2b, 0xfa2c, 0x999e, 0x9ad9, 0x9b72, -+ /* 0x8ff4fd */ 0xfa2d, 0x9ed1 -+}; -+ -+static const char from_ucs4_lat1[256][2] = -+{ -+ /* start = 0x0000, end = 0x00ff */ -+ [ 0] = "\x00\x00", [ 1] = "\x01\x00", [ 2] = "\x02\x00", -+ [ 3] = "\x03\x00", [ 4] = "\x04\x00", [ 5] = "\x05\x00", -+ [ 6] = "\x06\x00", [ 7] = "\x07\x00", [ 8] = "\x08\x00", -+ [ 9] = "\x09\x00", [ 10] = "\x0a\x00", [ 11] = "\x0b\x00", -+ [ 12] = "\x0c\x00", [ 13] = "\x0d\x00", [ 14] = "\x0e\x00", -+ [ 15] = "\x0f\x00", [ 16] = "\x10\x00", [ 17] = "\x11\x00", -+ [ 18] = "\x12\x00", [ 19] = "\x13\x00", [ 20] = "\x14\x00", -+ [ 21] = "\x15\x00", [ 22] = "\x16\x00", [ 23] = "\x17\x00", -+ [ 24] = "\x18\x00", [ 25] = "\x19\x00", [ 26] = "\x1a\x00", -+ [ 27] = "\x1b\x00", [ 28] = "\x1c\x00", [ 29] = "\x1d\x00", -+ [ 30] = "\x1e\x00", [ 31] = "\x1f\x00", [ 32] = "\x20\x00", -+ [ 33] = "\x21\x00", [ 34] = "\x22\x00", [ 35] = "\x23\x00", -+ [ 36] = "\x24\x00", [ 37] = "\x25\x00", [ 38] = "\x26\x00", -+ [ 39] = "\x27\x00", [ 40] = "\x28\x00", [ 41] = "\x29\x00", -+ [ 42] = "\x2a\x00", [ 43] = "\x2b\x00", [ 44] = "\x2c\x00", -+ [ 45] = "\x2d\x00", [ 46] = "\x2e\x00", [ 47] = "\x2f\x00", -+ [ 48] = "\x30\x00", [ 49] = "\x31\x00", [ 50] = "\x32\x00", -+ [ 51] = "\x33\x00", [ 52] = "\x34\x00", [ 53] = "\x35\x00", -+ [ 54] = "\x36\x00", [ 55] = "\x37\x00", [ 56] = "\x38\x00", -+ [ 57] = "\x39\x00", [ 58] = "\x3a\x00", [ 59] = "\x3b\x00", -+ [ 60] = "\x3c\x00", [ 61] = "\x3d\x00", [ 62] = "\x3e\x00", -+ [ 63] = "\x3f\x00", [ 64] = "\x40\x00", [ 65] = "\x41\x00", -+ [ 66] = "\x42\x00", [ 67] = "\x43\x00", [ 68] = "\x44\x00", -+ [ 69] = "\x45\x00", [ 70] = "\x46\x00", [ 71] = "\x47\x00", -+ [ 72] = "\x48\x00", [ 73] = "\x49\x00", [ 74] = "\x4a\x00", -+ [ 75] = "\x4b\x00", [ 76] = "\x4c\x00", [ 77] = "\x4d\x00", -+ [ 78] = "\x4e\x00", [ 79] = "\x4f\x00", [ 80] = "\x50\x00", -+ [ 81] = "\x51\x00", [ 82] = "\x52\x00", [ 83] = "\x53\x00", -+ [ 84] = "\x54\x00", [ 85] = "\x55\x00", [ 86] = "\x56\x00", -+ [ 87] = "\x57\x00", [ 88] = "\x58\x00", [ 89] = "\x59\x00", -+ [ 90] = "\x5a\x00", [ 91] = "\x5b\x00", [ 92] = "\x5c\x00", -+ [ 93] = "\x5d\x00", [ 94] = "\x5e\x00", [ 95] = "\x5f\x00", -+ [ 96] = "\x60\x00", [ 97] = "\x61\x00", [ 98] = "\x62\x00", -+ [ 99] = "\x63\x00", [ 100] = "\x64\x00", [ 101] = "\x65\x00", -+ [ 102] = "\x66\x00", [ 103] = "\x67\x00", [ 104] = "\x68\x00", -+ [ 105] = "\x69\x00", [ 106] = "\x6a\x00", [ 107] = "\x6b\x00", -+ [ 108] = "\x6c\x00", [ 109] = "\x6d\x00", [ 110] = "\x6e\x00", -+ [ 111] = "\x6f\x00", [ 112] = "\x70\x00", [ 113] = "\x71\x00", -+ [ 114] = "\x72\x00", [ 115] = "\x73\x00", [ 116] = "\x74\x00", -+ [ 117] = "\x75\x00", [ 118] = "\x76\x00", [ 119] = "\x77\x00", -+ [ 120] = "\x78\x00", [ 121] = "\x79\x00", [ 122] = "\x7a\x00", -+ [ 123] = "\x7b\x00", [ 124] = "\x7c\x00", [ 125] = "\x7d\x00", -+ [ 126] = "\x7e\x00", [ 127] = "\x7f\x00", [ 128] = "\x80\x00", -+ [ 129] = "\x81\x00", [ 130] = "\x82\x00", [ 131] = "\x83\x00", -+ [ 132] = "\x84\x00", [ 133] = "\x85\x00", [ 134] = "\x86\x00", -+ [ 135] = "\x87\x00", [ 136] = "\x88\x00", [ 137] = "\x89\x00", -+ [ 138] = "\x8a\x00", [ 139] = "\x8b\x00", [ 140] = "\x8c\x00", -+ [ 141] = "\x8d\x00", [ 144] = "\x90\x00", [ 145] = "\x91\x00", -+ [ 146] = "\x92\x00", [ 147] = "\x93\x00", [ 148] = "\x94\x00", -+ [ 149] = "\x95\x00", [ 150] = "\x96\x00", [ 151] = "\x97\x00", -+ [ 152] = "\x98\x00", [ 153] = "\x99\x00", [ 154] = "\x9a\x00", -+ [ 155] = "\x9b\x00", [ 156] = "\x9c\x00", [ 157] = "\x9d\x00", -+ [ 158] = "\x9e\x00", [ 159] = "\x9f\x00", [ 161] = "\xa2\x42", -+ [ 162] = "\xa1\xf1", [ 163] = "\xa1\xf2", [ 164] = "\xa2\x70", -+ [ 165] = "\x5c\x00", [ 166] = "\xa2\x43", [ 167] = "\xa1\xf8", -+ [ 168] = "\xa1\xaf", [ 169] = "\xa2\x6d", [ 170] = "\xa2\x6c", -+ [ 172] = "\xa2\xcc", [ 174] = "\xa2\x6e", [ 175] = "\xa2\x34", -+ [ 176] = "\xa1\xeb", [ 177] = "\xa1\xde", [ 180] = "\xa1\xad", -+ [ 182] = "\xa2\xf9", [ 184] = "\xa2\x31", [ 186] = "\xa2\x6b", -+ [ 191] = "\xa2\x44", [ 192] = "\xaa\x22", [ 193] = "\xaa\x21", -+ [ 194] = "\xaa\x24", [ 195] = "\xaa\x2a", [ 196] = "\xaa\x23", -+ [ 197] = "\xaa\x29", [ 198] = "\xa9\x21", [ 199] = "\xaa\x2e", -+ [ 200] = "\xaa\x32", [ 201] = "\xaa\x31", [ 202] = "\xaa\x34", -+ [ 203] = "\xaa\x33", [ 204] = "\xaa\x40", [ 205] = "\xaa\x3f", -+ [ 206] = "\xaa\x42", [ 207] = "\xaa\x41", [ 209] = "\xaa\x50", -+ [ 210] = "\xaa\x52", [ 211] = "\xaa\x51", [ 212] = "\xaa\x54", -+ [ 213] = "\xaa\x58", [ 214] = "\xaa\x53", [ 215] = "\xa1\xdf", -+ [ 216] = "\xa9\x2c", [ 217] = "\xaa\x63", [ 218] = "\xaa\x62", -+ [ 219] = "\xaa\x65", [ 220] = "\xaa\x64", [ 221] = "\xaa\x72", -+ [ 222] = "\xa9\x30", [ 223] = "\xa9\x4e", [ 224] = "\xab\x22", -+ [ 225] = "\xab\x21", [ 226] = "\xab\x24", [ 227] = "\xab\x2a", -+ [ 228] = "\xab\x23", [ 229] = "\xab\x29", [ 230] = "\xa9\x41", -+ [ 231] = "\xab\x2e", [ 232] = "\xab\x32", [ 233] = "\xab\x31", -+ [ 234] = "\xab\x34", [ 235] = "\xab\x33", [ 236] = "\xab\x40", -+ [ 237] = "\xab\x3f", [ 238] = "\xab\x42", [ 239] = "\xab\x41", -+ [ 240] = "\xa9\x43", [ 241] = "\xab\x50", [ 242] = "\xab\x52", -+ [ 243] = "\xab\x51", [ 244] = "\xab\x54", [ 245] = "\xab\x58", -+ [ 246] = "\xab\x53", [ 247] = "\xa1\xe0", [ 248] = "\xa9\x4c", -+ [ 249] = "\xab\x63", [ 250] = "\xab\x62", [ 251] = "\xab\x65", -+ [ 252] = "\xab\x64", [ 253] = "\xab\x72", [ 254] = "\xa9\x50", -+ [ 255] = "\xab\x73" -+}; -+ -+static const char from_ucs4_greek[864][2] = -+{ -+ /* start = 0x0100, end = 0x045f */ -+ [ 0] = "\xaa\x27", [ 1] = "\xab\x27", [ 2] = "\xaa\x25", -+ [ 3] = "\xab\x25", [ 4] = "\xaa\x28", [ 5] = "\xab\x28", -+ [ 6] = "\xaa\x2b", [ 7] = "\xab\x2b", [ 8] = "\xaa\x2c", -+ [ 9] = "\xab\x2c", [ 10] = "\xaa\x2f", [ 11] = "\xab\x2f", -+ [ 12] = "\xaa\x2d", [ 13] = "\xab\x2d", [ 14] = "\xaa\x30", -+ [ 15] = "\xab\x30", [ 16] = "\xa9\x22", [ 17] = "\xa9\x42", -+ [ 18] = "\xaa\x37", [ 19] = "\xab\x37", [ 22] = "\xaa\x36", -+ [ 23] = "\xab\x36", [ 24] = "\xaa\x38", [ 25] = "\xab\x38", -+ [ 26] = "\xaa\x35", [ 27] = "\xab\x35", [ 28] = "\xaa\x3a", -+ [ 29] = "\xab\x3a", [ 30] = "\xaa\x3b", [ 31] = "\xab\x3b", -+ [ 32] = "\xaa\x3d", [ 33] = "\xab\x3d", [ 34] = "\xaa\x3c", -+ [ 36] = "\xaa\x3e", [ 37] = "\xab\x3e", [ 38] = "\xa9\x24", -+ [ 39] = "\xa9\x44", [ 40] = "\xaa\x47", [ 41] = "\xab\x47", -+ [ 42] = "\xaa\x45", [ 43] = "\xab\x45", [ 46] = "\xaa\x46", -+ [ 47] = "\xab\x46", [ 48] = "\xaa\x44", [ 49] = "\xa9\x45", -+ [ 50] = "\xa9\x26", [ 51] = "\xa9\x46", [ 52] = "\xaa\x48", -+ [ 53] = "\xab\x48", [ 54] = "\xaa\x49", [ 55] = "\xab\x49", -+ [ 56] = "\xa9\x47", [ 57] = "\xaa\x4a", [ 58] = "\xab\x4a", -+ [ 59] = "\xaa\x4c", [ 60] = "\xab\x4c", [ 61] = "\xaa\x4b", -+ [ 62] = "\xab\x4b", [ 63] = "\xa9\x29", [ 64] = "\xa9\x49", -+ [ 65] = "\xa9\x28", [ 66] = "\xa9\x48", [ 67] = "\xaa\x4d", -+ [ 68] = "\xab\x4d", [ 69] = "\xaa\x4f", [ 70] = "\xab\x4f", -+ [ 71] = "\xaa\x4e", [ 72] = "\xab\x4e", [ 73] = "\xa9\x4a", -+ [ 74] = "\xa9\x2b", [ 75] = "\xa9\x4b", [ 76] = "\xaa\x57", -+ [ 77] = "\xab\x57", [ 80] = "\xaa\x56", [ 81] = "\xab\x56", -+ [ 82] = "\xa9\x2d", [ 83] = "\xa9\x4d", [ 84] = "\xaa\x59", -+ [ 85] = "\xab\x59", [ 86] = "\xaa\x5b", [ 87] = "\xab\x5b", -+ [ 88] = "\xaa\x5a", [ 89] = "\xab\x5a", [ 90] = "\xaa\x5c", -+ [ 91] = "\xab\x5c", [ 92] = "\xaa\x5d", [ 93] = "\xab\x5d", -+ [ 94] = "\xaa\x5f", [ 95] = "\xab\x5f", [ 96] = "\xaa\x5e", -+ [ 97] = "\xab\x5e", [ 98] = "\xaa\x61", [ 99] = "\xab\x61", -+ [ 100] = "\xaa\x60", [ 101] = "\xab\x60", [ 102] = "\xa9\x2f", -+ [ 103] = "\xa9\x4f", [ 104] = "\xaa\x6c", [ 105] = "\xab\x6c", -+ [ 106] = "\xaa\x69", [ 107] = "\xab\x69", [ 108] = "\xaa\x66", -+ [ 109] = "\xab\x66", [ 110] = "\xaa\x6b", [ 111] = "\xab\x6b", -+ [ 112] = "\xaa\x68", [ 113] = "\xab\x68", [ 114] = "\xaa\x6a", -+ [ 115] = "\xab\x6a", [ 116] = "\xaa\x71", [ 117] = "\xab\x71", -+ [ 118] = "\xaa\x74", [ 119] = "\xab\x74", [ 120] = "\xaa\x73", -+ [ 121] = "\xaa\x75", [ 122] = "\xab\x75", [ 123] = "\xaa\x77", -+ [ 124] = "\xab\x77", [ 125] = "\xaa\x76", [ 126] = "\xab\x76", -+ [ 205] = "\xaa\x26", [ 206] = "\xab\x26", [ 207] = "\xaa\x43", -+ [ 208] = "\xab\x43", [ 209] = "\xaa\x55", [ 210] = "\xab\x55", -+ [ 211] = "\xaa\x67", [ 212] = "\xab\x67", [ 213] = "\xaa\x70", -+ [ 214] = "\xab\x70", [ 215] = "\xaa\x6d", [ 216] = "\xab\x6d", -+ [ 217] = "\xaa\x6f", [ 218] = "\xab\x6f", [ 219] = "\xaa\x6e", -+ [ 220] = "\xab\x6e", [ 245] = "\xab\x39", [ 455] = "\xa2\x30", -+ [ 472] = "\xa2\x2f", [ 473] = "\xa2\x32", [ 474] = "\xa2\x36", -+ [ 475] = "\xa2\x35", [ 477] = "\xa2\x33", [ 644] = "\xa2\x38", -+ [ 645] = "\xa2\x39", [ 646] = "\xa6\x61", [ 648] = "\xa6\x62", -+ [ 649] = "\xa6\x63", [ 650] = "\xa6\x64", [ 652] = "\xa6\x67", -+ [ 654] = "\xa6\x69", [ 655] = "\xa6\x6c", [ 656] = "\xa6\x76", -+ [ 657] = "\xa6\xa1", [ 658] = "\xa6\xa2", [ 659] = "\xa6\xa3", -+ [ 660] = "\xa6\xa4", [ 661] = "\xa6\xa5", [ 662] = "\xa6\xa6", -+ [ 663] = "\xa6\xa7", [ 664] = "\xa6\xa8", [ 665] = "\xa6\xa9", -+ [ 666] = "\xa6\xaa", [ 667] = "\xa6\xab", [ 668] = "\xa6\xac", -+ [ 669] = "\xa6\xad", [ 670] = "\xa6\xae", [ 671] = "\xa6\xaf", -+ [ 672] = "\xa6\xb0", [ 673] = "\xa6\xb1", [ 675] = "\xa6\xb2", -+ [ 676] = "\xa6\xb3", [ 677] = "\xa6\xb4", [ 678] = "\xa6\xb5", -+ [ 679] = "\xa6\xb6", [ 680] = "\xa6\xb7", [ 681] = "\xa6\xb8", -+ [ 682] = "\xa6\x65", [ 683] = "\xa6\x6a", [ 684] = "\xa6\x71", -+ [ 685] = "\xa6\x72", [ 686] = "\xa6\x73", [ 687] = "\xa6\x74", -+ [ 688] = "\xa6\x7b", [ 689] = "\xa6\xc1", [ 690] = "\xa6\xc2", -+ [ 691] = "\xa6\xc3", [ 692] = "\xa6\xc4", [ 693] = "\xa6\xc5", -+ [ 694] = "\xa6\xc6", [ 695] = "\xa6\xc7", [ 696] = "\xa6\xc8", -+ [ 697] = "\xa6\xc9", [ 698] = "\xa6\xca", [ 699] = "\xa6\xcb", -+ [ 700] = "\xa6\xcc", [ 701] = "\xa6\xcd", [ 702] = "\xa6\xce", -+ [ 703] = "\xa6\xcf", [ 704] = "\xa6\xd0", [ 705] = "\xa6\xd1", -+ [ 706] = "\xa6\x78", [ 707] = "\xa6\xd2", [ 708] = "\xa6\xd3", -+ [ 709] = "\xa6\xd4", [ 710] = "\xa6\xd5", [ 711] = "\xa6\xd6", -+ [ 712] = "\xa6\xd7", [ 713] = "\xa6\xd8", [ 714] = "\xa6\x75", -+ [ 715] = "\xa6\x7a", [ 716] = "\xa6\x77", [ 717] = "\xa6\x79", -+ [ 718] = "\xa6\x7c", [ 769] = "\xa7\xa7", [ 770] = "\xa7\x42", -+ [ 771] = "\xa7\x43", [ 772] = "\xa7\x44", [ 773] = "\xa7\x45", -+ [ 774] = "\xa7\x46", [ 775] = "\xa7\x47", [ 776] = "\xa7\x48", -+ [ 777] = "\xa7\x49", [ 778] = "\xa7\x4a", [ 779] = "\xa7\x4b", -+ [ 780] = "\xa7\x4c", [ 782] = "\xa7\x4d", [ 783] = "\xa7\x4e", -+ [ 784] = "\xa7\xa1", [ 785] = "\xa7\xa2", [ 786] = "\xa7\xa3", -+ [ 787] = "\xa7\xa4", [ 788] = "\xa7\xa5", [ 789] = "\xa7\xa6", -+ [ 790] = "\xa7\xa8", [ 791] = "\xa7\xa9", [ 792] = "\xa7\xaa", -+ [ 793] = "\xa7\xab", [ 794] = "\xa7\xac", [ 795] = "\xa7\xad", -+ [ 796] = "\xa7\xae", [ 797] = "\xa7\xaf", [ 798] = "\xa7\xb0", -+ [ 799] = "\xa7\xb1", [ 800] = "\xa7\xb2", [ 801] = "\xa7\xb3", -+ [ 802] = "\xa7\xb4", [ 803] = "\xa7\xb5", [ 804] = "\xa7\xb6", -+ [ 805] = "\xa7\xb7", [ 806] = "\xa7\xb8", [ 807] = "\xa7\xb9", -+ [ 808] = "\xa7\xba", [ 809] = "\xa7\xbb", [ 810] = "\xa7\xbc", -+ [ 811] = "\xa7\xbd", [ 812] = "\xa7\xbe", [ 813] = "\xa7\xbf", -+ [ 814] = "\xa7\xc0", [ 815] = "\xa7\xc1", [ 816] = "\xa7\xd1", -+ [ 817] = "\xa7\xd2", [ 818] = "\xa7\xd3", [ 819] = "\xa7\xd4", -+ [ 820] = "\xa7\xd5", [ 821] = "\xa7\xd6", [ 822] = "\xa7\xd8", -+ [ 823] = "\xa7\xd9", [ 824] = "\xa7\xda", [ 825] = "\xa7\xdb", -+ [ 826] = "\xa7\xdc", [ 827] = "\xa7\xdd", [ 828] = "\xa7\xde", -+ [ 829] = "\xa7\xdf", [ 830] = "\xa7\xe0", [ 831] = "\xa7\xe1", -+ [ 832] = "\xa7\xe2", [ 833] = "\xa7\xe3", [ 834] = "\xa7\xe4", -+ [ 835] = "\xa7\xe5", [ 836] = "\xa7\xe6", [ 837] = "\xa7\xe7", -+ [ 838] = "\xa7\xe8", [ 839] = "\xa7\xe9", [ 840] = "\xa7\xea", -+ [ 841] = "\xa7\xeb", [ 842] = "\xa7\xec", [ 843] = "\xa7\xed", -+ [ 844] = "\xa7\xee", [ 845] = "\xa7\xef", [ 846] = "\xa7\xf0", -+ [ 847] = "\xa7\xf1", [ 849] = "\xa7\xd7", [ 850] = "\xa7\x72", -+ [ 851] = "\xa7\x73", [ 852] = "\xa7\x74", [ 853] = "\xa7\x75", -+ [ 854] = "\xa7\x76", [ 855] = "\xa7\x77", [ 856] = "\xa7\x78", -+ [ 857] = "\xa7\x79", [ 858] = "\xa7\x7a", [ 859] = "\xa7\x7b", -+ [ 860] = "\xa7\x7c", [ 862] = "\xa7\x7d", [ 863] = "\xa7\x7e" -+}; -+ -+static const char from_ucs4_cjk[32662][2] = -+{ -+ /* start = 0x2010, end = 0x9fa5 */ -+ [ 0] = "\xa1\xbe", [ 4] = "\xa1\xbd", [ 5] = "\xa1\xbd", -+ [ 6] = "\xa1\xc2", [ 8] = "\xa1\xc6", [ 9] = "\xa1\xc7", -+ [ 12] = "\xa1\xc8", [ 13] = "\xa1\xc9", [ 16] = "\xa2\xf7", -+ [ 17] = "\xa2\xf8", [ 21] = "\xa1\xc5", [ 22] = "\xa1\xc4", -+ [ 32] = "\xa2\xf3", [ 34] = "\xa1\xec", [ 35] = "\xa1\xed", -+ [ 43] = "\xa2\xa8", [ 46] = "\x7e\x00", [ 243] = "\xa1\xee", -+ [ 262] = "\xad\xe2", [ 273] = "\xad\xe4", [ 274] = "\xa2\x6f", -+ [ 283] = "\xa2\xf2", [ 336] = "\xad\xb5", [ 337] = "\xad\xb6", -+ [ 338] = "\xad\xb7", [ 339] = "\xad\xb8", [ 340] = "\xad\xb9", -+ [ 341] = "\xad\xba", [ 342] = "\xad\xbb", [ 343] = "\xad\xbc", -+ [ 344] = "\xad\xbd", [ 345] = "\xad\xbe", [ 352] = "\xf3\x73", -+ [ 353] = "\xf3\x74", [ 354] = "\xf3\x75", [ 355] = "\xf3\x76", -+ [ 356] = "\xf3\x77", [ 357] = "\xf3\x78", [ 358] = "\xf3\x79", -+ [ 359] = "\xf3\x7a", [ 360] = "\xf3\x7b", [ 361] = "\xf3\x7c", -+ [ 384] = "\xa2\xab", [ 385] = "\xa2\xac", [ 386] = "\xa2\xaa", -+ [ 387] = "\xa2\xad", [ 450] = "\xa2\xcd", [ 452] = "\xa2\xce", -+ [ 496] = "\xa2\xcf", [ 498] = "\xa2\xdf", [ 499] = "\xa2\xd0", -+ [ 503] = "\xa2\xe0", [ 504] = "\xa2\xba", [ 507] = "\xa2\xbb", -+ [ 513] = "\xad\xf4", [ 514] = "\xa1\xdd", [ 522] = "\xa2\xe5", -+ [ 525] = "\xa2\xe7", [ 526] = "\xa1\xe7", [ 527] = "\xad\xf8", -+ [ 528] = "\xa2\xdc", [ 533] = "\xa1\xc2", [ 535] = "\xa2\xca", -+ [ 536] = "\xa2\xcb", [ 537] = "\xa2\xc1", [ 538] = "\xa2\xc0", -+ [ 539] = "\xa2\xe9", [ 540] = "\xa2\xea", [ 542] = "\xad\xf3", -+ [ 548] = "\xa1\xe8", [ 549] = "\xa2\xe8", [ 557] = "\xa2\xe6", -+ [ 578] = "\xa2\xe2", [ 592] = "\xa1\xe2", [ 593] = "\xa2\xe1", -+ [ 598] = "\xa1\xe5", [ 599] = "\xa1\xe6", [ 602] = "\xa2\xe3", -+ [ 603] = "\xa2\xe4", [ 626] = "\xa2\xbe", [ 627] = "\xa2\xbf", -+ [ 630] = "\xa2\xbc", [ 631] = "\xa2\xbd", [ 661] = "\xa2\xdd", -+ [ 687] = "\xad\xf9", [ 770] = "\xa2\xde", [ 1104] = "\xad\xa1", -+ [ 1105] = "\xad\xa2", [ 1106] = "\xad\xa3", [ 1107] = "\xad\xa4", -+ [ 1108] = "\xad\xa5", [ 1109] = "\xad\xa6", [ 1110] = "\xad\xa7", -+ [ 1111] = "\xad\xa8", [ 1112] = "\xad\xa9", [ 1113] = "\xad\xaa", -+ [ 1114] = "\xad\xab", [ 1115] = "\xad\xac", [ 1116] = "\xad\xad", -+ [ 1117] = "\xad\xae", [ 1118] = "\xad\xaf", [ 1119] = "\xad\xb0", -+ [ 1120] = "\xad\xb1", [ 1121] = "\xad\xb2", [ 1122] = "\xad\xb3", -+ [ 1123] = "\xad\xb4", [ 1264] = "\xa8\xa1", [ 1265] = "\xa8\xac", -+ [ 1266] = "\xa8\xa2", [ 1267] = "\xa8\xad", [ 1276] = "\xa8\xa3", -+ [ 1279] = "\xa8\xae", [ 1280] = "\xa8\xa4", [ 1283] = "\xa8\xaf", -+ [ 1284] = "\xa8\xa6", [ 1287] = "\xa8\xb1", [ 1288] = "\xa8\xa5", -+ [ 1291] = "\xa8\xb0", [ 1292] = "\xa8\xa7", [ 1293] = "\xa8\xbc", -+ [ 1296] = "\xa8\xb7", [ 1299] = "\xa8\xb2", [ 1300] = "\xa8\xa9", -+ [ 1301] = "\xa8\xbe", [ 1304] = "\xa8\xb9", [ 1307] = "\xa8\xb4", -+ [ 1308] = "\xa8\xa8", [ 1311] = "\xa8\xb8", [ 1312] = "\xa8\xbd", -+ [ 1315] = "\xa8\xb3", [ 1316] = "\xa8\xaa", [ 1319] = "\xa8\xba", -+ [ 1320] = "\xa8\xbf", [ 1323] = "\xa8\xb5", [ 1324] = "\xa8\xab", -+ [ 1327] = "\xa8\xbb", [ 1330] = "\xa8\xc0", [ 1339] = "\xa8\xb6", -+ [ 1424] = "\xa2\xa3", [ 1425] = "\xa2\xa2", [ 1442] = "\xa2\xa5", -+ [ 1443] = "\xa2\xa4", [ 1452] = "\xa2\xa7", [ 1453] = "\xa2\xa6", -+ [ 1462] = "\xa2\xa1", [ 1463] = "\xa1\xfe", [ 1467] = "\xa1\xfb", -+ [ 1470] = "\xa1\xfd", [ 1471] = "\xa1\xfc", [ 1503] = "\xa2\xfe", -+ [ 1525] = "\xa1\xfa", [ 1526] = "\xa1\xf9", [ 1584] = "\xa1\xea", -+ [ 1586] = "\xa1\xe9", [ 1626] = "\xa2\xf6", [ 1629] = "\xa2\xf5", -+ [ 1631] = "\xa2\xf4", [ 4080] = "\xa1\xa1", [ 4081] = "\xa1\xa2", -+ [ 4082] = "\xa1\xa3", [ 4083] = "\xa1\xb7", [ 4085] = "\xa1\xb9", -+ [ 4086] = "\xa1\xba", [ 4087] = "\xa1\xbb", [ 4088] = "\xa1\xd2", -+ [ 4089] = "\xa1\xd3", [ 4090] = "\xa1\xd4", [ 4091] = "\xa1\xd5", -+ [ 4092] = "\xa1\xd6", [ 4093] = "\xa1\xd7", [ 4094] = "\xa1\xd8", -+ [ 4095] = "\xa1\xd9", [ 4096] = "\xa1\xda", [ 4097] = "\xa1\xdb", -+ [ 4098] = "\xa2\xa9", [ 4099] = "\xa2\xae", [ 4100] = "\xa1\xcc", -+ [ 4101] = "\xa1\xcd", [ 4108] = "\xa1\xc1", [ 4109] = "\xad\xe0", -+ [ 4111] = "\xad\xe1", [ 4145] = "\xa4\xa1", [ 4146] = "\xa4\xa2", -+ [ 4147] = "\xa4\xa3", [ 4148] = "\xa4\xa4", [ 4149] = "\xa4\xa5", -+ [ 4150] = "\xa4\xa6", [ 4151] = "\xa4\xa7", [ 4152] = "\xa4\xa8", -+ [ 4153] = "\xa4\xa9", [ 4154] = "\xa4\xaa", [ 4155] = "\xa4\xab", -+ [ 4156] = "\xa4\xac", [ 4157] = "\xa4\xad", [ 4158] = "\xa4\xae", -+ [ 4159] = "\xa4\xaf", [ 4160] = "\xa4\xb0", [ 4161] = "\xa4\xb1", -+ [ 4162] = "\xa4\xb2", [ 4163] = "\xa4\xb3", [ 4164] = "\xa4\xb4", -+ [ 4165] = "\xa4\xb5", [ 4166] = "\xa4\xb6", [ 4167] = "\xa4\xb7", -+ [ 4168] = "\xa4\xb8", [ 4169] = "\xa4\xb9", [ 4170] = "\xa4\xba", -+ [ 4171] = "\xa4\xbb", [ 4172] = "\xa4\xbc", [ 4173] = "\xa4\xbd", -+ [ 4174] = "\xa4\xbe", [ 4175] = "\xa4\xbf", [ 4176] = "\xa4\xc0", -+ [ 4177] = "\xa4\xc1", [ 4178] = "\xa4\xc2", [ 4179] = "\xa4\xc3", -+ [ 4180] = "\xa4\xc4", [ 4181] = "\xa4\xc5", [ 4182] = "\xa4\xc6", -+ [ 4183] = "\xa4\xc7", [ 4184] = "\xa4\xc8", [ 4185] = "\xa4\xc9", -+ [ 4186] = "\xa4\xca", [ 4187] = "\xa4\xcb", [ 4188] = "\xa4\xcc", -+ [ 4189] = "\xa4\xcd", [ 4190] = "\xa4\xce", [ 4191] = "\xa4\xcf", -+ [ 4192] = "\xa4\xd0", [ 4193] = "\xa4\xd1", [ 4194] = "\xa4\xd2", -+ [ 4195] = "\xa4\xd3", [ 4196] = "\xa4\xd4", [ 4197] = "\xa4\xd5", -+ [ 4198] = "\xa4\xd6", [ 4199] = "\xa4\xd7", [ 4200] = "\xa4\xd8", -+ [ 4201] = "\xa4\xd9", [ 4202] = "\xa4\xda", [ 4203] = "\xa4\xdb", -+ [ 4204] = "\xa4\xdc", [ 4205] = "\xa4\xdd", [ 4206] = "\xa4\xde", -+ [ 4207] = "\xa4\xdf", [ 4208] = "\xa4\xe0", [ 4209] = "\xa4\xe1", -+ [ 4210] = "\xa4\xe2", [ 4211] = "\xa4\xe3", [ 4212] = "\xa4\xe4", -+ [ 4213] = "\xa4\xe5", [ 4214] = "\xa4\xe6", [ 4215] = "\xa4\xe7", -+ [ 4216] = "\xa4\xe8", [ 4217] = "\xa4\xe9", [ 4218] = "\xa4\xea", -+ [ 4219] = "\xa4\xeb", [ 4220] = "\xa4\xec", [ 4221] = "\xa4\xed", -+ [ 4222] = "\xa4\xee", [ 4223] = "\xa4\xef", [ 4224] = "\xa4\xf0", -+ [ 4225] = "\xa4\xf1", [ 4226] = "\xa4\xf2", [ 4227] = "\xa4\xf3", -+ [ 4235] = "\xa1\xab", [ 4236] = "\xa1\xac", [ 4237] = "\xa1\xb5", -+ [ 4238] = "\xa1\xb6", [ 4241] = "\xa5\xa1", [ 4242] = "\xa5\xa2", -+ [ 4243] = "\xa5\xa3", [ 4244] = "\xa5\xa4", [ 4245] = "\xa5\xa5", -+ [ 4246] = "\xa5\xa6", [ 4247] = "\xa5\xa7", [ 4248] = "\xa5\xa8", -+ [ 4249] = "\xa5\xa9", [ 4250] = "\xa5\xaa", [ 4251] = "\xa5\xab", -+ [ 4252] = "\xa5\xac", [ 4253] = "\xa5\xad", [ 4254] = "\xa5\xae", -+ [ 4255] = "\xa5\xaf", [ 4256] = "\xa5\xb0", [ 4257] = "\xa5\xb1", -+ [ 4258] = "\xa5\xb2", [ 4259] = "\xa5\xb3", [ 4260] = "\xa5\xb4", -+ [ 4261] = "\xa5\xb5", [ 4262] = "\xa5\xb6", [ 4263] = "\xa5\xb7", -+ [ 4264] = "\xa5\xb8", [ 4265] = "\xa5\xb9", [ 4266] = "\xa5\xba", -+ [ 4267] = "\xa5\xbb", [ 4268] = "\xa5\xbc", [ 4269] = "\xa5\xbd", -+ [ 4270] = "\xa5\xbe", [ 4271] = "\xa5\xbf", [ 4272] = "\xa5\xc0", -+ [ 4273] = "\xa5\xc1", [ 4274] = "\xa5\xc2", [ 4275] = "\xa5\xc3", -+ [ 4276] = "\xa5\xc4", [ 4277] = "\xa5\xc5", [ 4278] = "\xa5\xc6", -+ [ 4279] = "\xa5\xc7", [ 4280] = "\xa5\xc8", [ 4281] = "\xa5\xc9", -+ [ 4282] = "\xa5\xca", [ 4283] = "\xa5\xcb", [ 4284] = "\xa5\xcc", -+ [ 4285] = "\xa5\xcd", [ 4286] = "\xa5\xce", [ 4287] = "\xa5\xcf", -+ [ 4288] = "\xa5\xd0", [ 4289] = "\xa5\xd1", [ 4290] = "\xa5\xd2", -+ [ 4291] = "\xa5\xd3", [ 4292] = "\xa5\xd4", [ 4293] = "\xa5\xd5", -+ [ 4294] = "\xa5\xd6", [ 4295] = "\xa5\xd7", [ 4296] = "\xa5\xd8", -+ [ 4297] = "\xa5\xd9", [ 4298] = "\xa5\xda", [ 4299] = "\xa5\xdb", -+ [ 4300] = "\xa5\xdc", [ 4301] = "\xa5\xdd", [ 4302] = "\xa5\xde", -+ [ 4303] = "\xa5\xdf", [ 4304] = "\xa5\xe0", [ 4305] = "\xa5\xe1", -+ [ 4306] = "\xa5\xe2", [ 4307] = "\xa5\xe3", [ 4308] = "\xa5\xe4", -+ [ 4309] = "\xa5\xe5", [ 4310] = "\xa5\xe6", [ 4311] = "\xa5\xe7", -+ [ 4312] = "\xa5\xe8", [ 4313] = "\xa5\xe9", [ 4314] = "\xa5\xea", -+ [ 4315] = "\xa5\xeb", [ 4316] = "\xa5\xec", [ 4317] = "\xa5\xed", -+ [ 4318] = "\xa5\xee", [ 4319] = "\xa5\xef", [ 4320] = "\xa5\xf0", -+ [ 4321] = "\xa5\xf1", [ 4322] = "\xa5\xf2", [ 4323] = "\xa5\xf3", -+ [ 4324] = "\xa5\xf4", [ 4325] = "\xa5\xf5", [ 4326] = "\xa5\xf6", -+ [ 4331] = "\xa1\xa6", [ 4332] = "\xa1\xbc", [ 4333] = "\xa1\xb3", -+ [ 4334] = "\xa1\xb4", [ 4641] = "\xad\xea", [ 4642] = "\xad\xeb", -+ [ 4649] = "\xad\xec", [ 4756] = "\xad\xe5", [ 4757] = "\xad\xe6", -+ [ 4758] = "\xad\xe7", [ 4759] = "\xad\xe8", [ 4760] = "\xad\xe9", -+ [ 4851] = "\xad\xc6", [ 4861] = "\xad\xca", [ 4868] = "\xad\xc1", -+ [ 4872] = "\xad\xc4", [ 4882] = "\xad\xc2", [ 4883] = "\xad\xcc", -+ [ 4886] = "\xad\xcb", [ 4887] = "\xad\xc5", [ 4891] = "\xad\xcd", -+ [ 4902] = "\xad\xc7", [ 4907] = "\xad\xcf", [ 4921] = "\xad\xc0", -+ [ 4922] = "\xad\xce", [ 4925] = "\xad\xc3", [ 4929] = "\xad\xc8", -+ [ 4935] = "\xad\xc9", [ 4971] = "\xad\xdf", [ 4972] = "\xad\xef", -+ [ 4973] = "\xad\xee", [ 4974] = "\xad\xed", [ 4990] = "\xad\xd3", -+ [ 4991] = "\xad\xd4", [ 5004] = "\xad\xd0", [ 5005] = "\xad\xd1", -+ [ 5006] = "\xad\xd2", [ 5009] = "\xad\xd6", [ 5044] = "\xad\xd5", -+ [ 5053] = "\xad\xe3", [11760] = "\xb0\xec", [11761] = "\xc3\xfa", -+ [11762] = "\xb0\x21", [11763] = "\xbc\xb7", [11764] = "\xb0\x22", -+ [11765] = "\xb0\x23", [11767] = "\xcb\xfc", [11768] = "\xbe\xe6", -+ [11769] = "\xbb\xb0", [11770] = "\xbe\xe5", [11771] = "\xb2\xbc", -+ [11772] = "\xb0\x24", [11773] = "\xc9\xd4", [11774] = "\xcd\xbf", -+ [11776] = "\xd0\xa2", [11777] = "\xb1\xaf", [11778] = "\xb0\x25", -+ [11780] = "\xb3\xee", [11781] = "\xd0\xa3", [11782] = "\xc0\xa4", -+ [11783] = "\xd2\xc2", [11784] = "\xb5\xd6", [11785] = "\xca\xba", -+ [11790] = "\xbe\xe7", [11791] = "\xb0\x26", [11793] = "\xce\xbe", -+ [11795] = "\xb0\x27", [11796] = "\xb0\x28", [11798] = "\xca\xc2", -+ [11800] = "\xb0\x29", [11802] = "\xd0\xa4", [11803] = "\xb0\x2a", -+ [11805] = "\xc3\xe6", [11806] = "\xb0\x2b", [11807] = "\xb0\x2c", -+ [11808] = "\xb0\x2d", [11809] = "\xd0\xa5", [11810] = "\xb6\xfa", -+ [11813] = "\xb0\x2e", [11814] = "\xd0\xa6", [11816] = "\xb4\xdd", -+ [11817] = "\xc3\xb0", [11819] = "\xbc\xe7", [11820] = "\xd0\xa7", -+ [11823] = "\xd0\xa8", [11824] = "\xb0\x2f", [11825] = "\xb0\x30", -+ [11826] = "\xd0\xa9", [11827] = "\xc7\xb5", [11828] = "\xb0\x31", -+ [11829] = "\xb5\xd7", [11831] = "\xb0\x32", [11835] = "\xc7\xb7", -+ [11837] = "\xc6\xe3", [11838] = "\xb8\xc3", [11839] = "\xcb\xb3", -+ [11841] = "\xb0\x33", [11845] = "\xe9\xc9", [11846] = "\xd0\xaa", -+ [11847] = "\xbe\xe8", [11848] = "\xd0\xab", [11849] = "\xb2\xb5", -+ [11850] = "\xb0\x34", [11852] = "\xb0\x35", [11853] = "\xb6\xe5", -+ [11854] = "\xb8\xf0", [11855] = "\xcc\xe9", [11858] = "\xd6\xa6", -+ [11859] = "\xb0\x36", [11864] = "\xb0\x37", [11865] = "\xb0\x38", -+ [11873] = "\xcd\xf0", [11875] = "\xc6\xfd", [11876] = "\xb0\x39", -+ [11877] = "\xb0\x3a", [11881] = "\xb0\x3b", [11886] = "\xb4\xa5", -+ [11887] = "\xb0\x3c", [11888] = "\xb5\xb5", [11890] = "\xd0\xac", -+ [11893] = "\xd0\xad", [11894] = "\xce\xbb", [11896] = "\xcd\xbd", -+ [11897] = "\xc1\xe8", [11898] = "\xd0\xaf", [11899] = "\xbb\xf6", -+ [11900] = "\xc6\xf3", [11901] = "\xb0\x3d", [11902] = "\xd0\xb2", -+ [11905] = "\xb1\xbe", [11906] = "\xb8\xdf", [11908] = "\xb8\xde", -+ [11909] = "\xb0\xe6", [11910] = "\xb0\x3e", [11911] = "\xb0\x3f", -+ [11912] = "\xcf\xcb", [11913] = "\xcf\xca", [11915] = "\xba\xb3", -+ [11916] = "\xb0\xa1", [11917] = "\xb0\x40", [11918] = "\xd0\xb3", -+ [11919] = "\xd0\xb4", [11920] = "\xd0\xb5", [11921] = "\xcb\xb4", -+ [11922] = "\xd0\xb6", [11924] = "\xb8\xf2", [11925] = "\xb0\xe7", -+ [11926] = "\xcb\xf2", [11928] = "\xb5\xfc", [11931] = "\xb5\xfd", -+ [11932] = "\xb5\xfe", [11933] = "\xc4\xe2", [11934] = "\xce\xbc", -+ [11935] = "\xb0\x41", [11936] = "\xd0\xb7", [11939] = "\xd0\xb8", -+ [11942] = "\xd0\xb9", [11945] = "\xb0\x42", [11946] = "\xbf\xcd", -+ [11952] = "\xbd\xba", [11953] = "\xbf\xce", [11954] = "\xd0\xbe", -+ [11955] = "\xb0\x43", [11956] = "\xd0\xbc", [11958] = "\xd0\xbd", -+ [11959] = "\xb5\xd8", [11962] = "\xba\xa3", [11963] = "\xb2\xf0", -+ [11965] = "\xd0\xbb", [11966] = "\xd0\xba", [11967] = "\xca\xa9", -+ [11968] = "\xb0\x44", [11972] = "\xbb\xc6", [11973] = "\xbb\xc5", -+ [11974] = "\xc2\xbe", [11975] = "\xd0\xbf", [11976] = "\xc9\xd5", -+ [11977] = "\xc0\xe7", [11978] = "\xb0\x45", [11979] = "\xb0\x46", -+ [11981] = "\xa1\xb8", [11982] = "\xd0\xc0", [11983] = "\xd0\xc2", -+ [11984] = "\xb0\x47", [11985] = "\xb0\x48", [11986] = "\xb0\x49", -+ [11987] = "\xc2\xe5", [11988] = "\xce\xe1", [11989] = "\xb0\xca", -+ [11992] = "\xb0\x4a", [11997] = "\xd0\xc1", [11998] = "\xb2\xbe", -+ [11999] = "\xb0\x4b", [12000] = "\xb6\xc4", [12001] = "\xb0\x4c", -+ [12002] = "\xc3\xe7", [12003] = "\xb0\x4d", [12005] = "\xb0\x4e", -+ [12006] = "\xb7\xef", [12007] = "\xd0\xc3", [12011] = "\xc7\xa4", -+ [12012] = "\xf4\x2f", [12013] = "\xb0\x4f", [12014] = "\xb0\x50", -+ [12015] = "\xb0\x51", [12016] = "\xb0\x52", [12017] = "\xb4\xeb", -+ [12018] = "\xb0\x53", [12019] = "\xb0\x54", [12024] = "\xb0\x55", -+ [12025] = "\xd0\xc4", [12026] = "\xb0\xcb", [12027] = "\xb0\x56", -+ [12028] = "\xb0\x57", [12029] = "\xb8\xe0", [12030] = "\xb4\xec", -+ [12031] = "\xc9\xfa", [12032] = "\xc8\xb2", [12033] = "\xb5\xd9", -+ [12034] = "\xb0\x58", [12037] = "\xb0\x59", [12038] = "\xb0\x5a", -+ [12039] = "\xb0\x5b", [12041] = "\xb0\x5c", [12042] = "\xb2\xf1", -+ [12044] = "\xd0\xe7", [12045] = "\xc5\xc1", [12062] = "\xb0\x5d", -+ [12063] = "\xc7\xec", [12064] = "\xd0\xc6", [12065] = "\xb0\x5e", -+ [12067] = "\xb0\x60", [12068] = "\xc8\xbc", [12069] = "\xb0\x61", -+ [12070] = "\xce\xe2", [12071] = "\xb0\x62", [12072] = "\xbf\xad", -+ [12073] = "\xb0\x63", [12074] = "\xbb\xc7", [12075] = "\xb0\x64", -+ [12076] = "\xbb\xf7", [12077] = "\xb2\xc0", [12078] = "\xb0\x65", -+ [12080] = "\xb0\x66", [12082] = "\xb0\x67", [12083] = "\xc4\xd1", -+ [12086] = "\xc3\xa2", [12087] = "\xd0\xca", [12088] = "\xb0\x68", -+ [12089] = "\xb0\x69", [12091] = "\xb0\x6a", [12092] = "\xb0\x6b", -+ [12093] = "\xb0\xcc", [12094] = "\xc4\xe3", [12095] = "\xbd\xbb", -+ [12096] = "\xba\xb4", [12097] = "\xcd\xa4", [12098] = "\xb0\x6c", -+ [12099] = "\xc2\xce", [12100] = "\xb0\x6d", [12101] = "\xb2\xbf", -+ [12102] = "\xb0\x6e", [12103] = "\xd0\xc9", [12104] = "\xb0\x6f", -+ [12105] = "\xcd\xbe", [12106] = "\xd0\xc5", [12107] = "\xd0\xc7", -+ [12108] = "\xba\xee", [12109] = "\xd0\xc8", [12110] = "\xd5\xa4", -+ [12111] = "\xb0\x70", [12112] = "\xb0\x5f", [12115] = "\xb0\x71", -+ [12121] = "\xd0\xd0", [12122] = "\xb0\x72", [12124] = "\xb0\x73", -+ [12126] = "\xb0\x74", [12127] = "\xd0\xd3", [12128] = "\xd0\xd1", -+ [12129] = "\xb0\x75", [12131] = "\xb2\xc2", [12133] = "\xca\xbb", -+ [12134] = "\xd0\xcb", [12135] = "\xb0\x76", [12136] = "\xb0\x77", -+ [12137] = "\xb0\x78", [12138] = "\xb0\x79", [12139] = "\xd0\xcf", -+ [12140] = "\xb8\xf3", [12141] = "\xb0\x7a", [12142] = "\xb0\x7b", -+ [12143] = "\xbb\xc8", [12145] = "\xb0\x7c", [12146] = "\xb0\x7d", -+ [12147] = "\xb4\xa6", [12148] = "\xb0\x7e", [12149] = "\xb1\x21", -+ [12150] = "\xd0\xd4", [12152] = "\xd0\xcc", [12153] = "\xb1\x22", -+ [12154] = "\xb1\x23", [12155] = "\xce\xe3", [12156] = "\xb1\x24", -+ [12157] = "\xbb\xf8", [12158] = "\xb1\x25", [12159] = "\xd0\xcd", -+ [12160] = "\xb1\x26", [12161] = "\xd0\xd2", [12162] = "\xb1\x27", -+ [12163] = "\xb1\x28", [12164] = "\xb1\x29", [12166] = "\xd0\xd5", -+ [12167] = "\xb1\x2a", [12168] = "\xd0\xce", [12169] = "\xb1\x2b", -+ [12170] = "\xb1\x2c", [12171] = "\xb6\xa1", [12173] = "\xb0\xcd", -+ [12174] = "\xb1\x2d", [12175] = "\xb1\x2e", [12176] = "\xb6\xa2", -+ [12177] = "\xb2\xc1", [12187] = "\xd5\xa5", [12189] = "\xcb\xf9", -+ [12190] = "\xc9\xee", [12191] = "\xb8\xf4", [12194] = "\xb1\x2f", -+ [12197] = "\xbf\xaf", [12198] = "\xce\xb7", [12199] = "\xb1\x30", -+ [12201] = "\xb1\x31", [12203] = "\xb1\x32", [12204] = "\xb1\x33", -+ [12205] = "\xb1\x34", [12206] = "\xb1\x35", [12207] = "\xca\xd8", -+ [12208] = "\xb1\x36", [12209] = "\xb1\x37", [12210] = "\xb7\xb8", -+ [12211] = "\xc2\xa5", [12212] = "\xb2\xe4", [12213] = "\xb1\x38", -+ [12214] = "\xb1\x39", [12216] = "\xb1\x3a", [12217] = "\xb1\x3b", -+ [12218] = "\xbd\xd3", [12219] = "\xb1\x3c", [12220] = "\xb1\x3d", -+ [12221] = "\xb1\x3e", [12222] = "\xd0\xd9", [12223] = "\xb1\x3f", -+ [12224] = "\xd0\xde", [12225] = "\xd0\xdc", [12226] = "\xb1\x40", -+ [12228] = "\xd0\xd7", [12231] = "\xc2\xaf", [12232] = "\xd0\xda", -+ [12234] = "\xd0\xdd", [12235] = "\xd0\xdb", [12236] = "\xb1\x41", -+ [12237] = "\xca\xdd", [12239] = "\xd0\xd8", [12240] = "\xb1\x42", -+ [12241] = "\xbf\xae", [12242] = "\xb1\x43", [12243] = "\xcb\xf3", -+ [12244] = "\xd0\xdf", [12245] = "\xd0\xe0", [12254] = "\xbd\xa4", -+ [12255] = "\xd0\xed", [12256] = "\xb1\x44", [12258] = "\xb1\x45", -+ [12259] = "\xc7\xd0", [12261] = "\xc9\xb6", [12262] = "\xd0\xe8", -+ [12264] = "\xca\xf0", [12266] = "\xb2\xb6", [12268] = "\xb1\x46", -+ [12269] = "\xb1\x47", [12270] = "\xd0\xec", [12271] = "\xb1\x48", -+ [12272] = "\xb1\x49", [12273] = "\xb1\x4a", [12276] = "\xb1\x4b", -+ [12277] = "\xd0\xe6", [12278] = "\xd0\xef", [12279] = "\xb1\x4c", -+ [12281] = "\xc1\xd2", [12282] = "\xb1\x4d", [12283] = "\xb8\xc4", -+ [12284] = "\xb1\x4e", [12285] = "\xc7\xdc", [12286] = "\xb1\x4f", -+ [12287] = "\xe0\xc7", [12288] = "\xb1\x50", [12289] = "\xd0\xee", -+ [12290] = "\xc5\xdd", [12291] = "\xb1\x51", [12292] = "\xd0\xe3", -+ [12294] = "\xb8\xf6", [12295] = "\xb1\x52", [12296] = "\xb1\x53", -+ [12297] = "\xb8\xf5", [12298] = "\xd0\xe1", [12299] = "\xb1\x54", -+ [12300] = "\xb1\x55", [12301] = "\xb1\x56", [12302] = "\xb1\x57", -+ [12303] = "\xbc\xda", [12305] = "\xd0\xe9", [12306] = "\xb1\x58", -+ [12307] = "\xca\xef", [12308] = "\xc3\xcd", [12309] = "\xd0\xe5", -+ [12310] = "\xb7\xf1", [12311] = "\xb1\x59", [12312] = "\xd0\xe2", -+ [12313] = "\xd0\xea", [12314] = "\xd0\xe4", [12315] = "\xce\xd1", -+ [12316] = "\xd0\xeb", [12317] = "\xcf\xc1", [12318] = "\xb1\x5a", -+ [12320] = "\xb1\x5b", [12322] = "\xb1\x5c", [12323] = "\xb1\x5d", -+ [12325] = "\xb1\x5e", [12326] = "\xb6\xe6", [12329] = "\xb7\xf0", -+ [12331] = "\xb1\x76", [12336] = "\xb1\x5f", [12337] = "\xb1\x60", -+ [12338] = "\xb1\x61", [12339] = "\xd0\xf0", [12341] = "\xb1\x62", -+ [12342] = "\xb1\x63", [12343] = "\xd0\xf1", [12344] = "\xd0\xf5", -+ [12345] = "\xb0\xce", [12346] = "\xb1\x64", [12348] = "\xb1\x65", -+ [12350] = "\xb1\x66", [12351] = "\xca\xd0", [12352] = "\xd0\xf4", -+ [12353] = "\xb1\x67", [12354] = "\xb1\x68", [12355] = "\xb1\x69", -+ [12357] = "\xd0\xf3", [12358] = "\xd0\xf7", [12359] = "\xb1\x6a", -+ [12361] = "\xb1\x6b", [12362] = "\xd0\xf6", [12364] = "\xc4\xe4", -+ [12367] = "\xb1\x6c", [12368] = "\xb1\x6d", [12370] = "\xb1\x6e", -+ [12371] = "\xb1\x6f", [12373] = "\xb7\xf2", [12374] = "\xb1\x70", -+ [12375] = "\xb1\x71", [12378] = "\xb1\x72", [12380] = "\xd0\xf8", -+ [12381] = "\xb1\x73", [12384] = "\xb1\x74", [12385] = "\xb1\x75", -+ [12386] = "\xbc\xc5", [12388] = "\xc2\xa6", [12389] = "\xc4\xe5", -+ [12390] = "\xb6\xf6", [12392] = "\xd0\xf9", [12397] = "\xb5\xb6", -+ [12400] = "\xd0\xfa", [12401] = "\xb1\x77", [12403] = "\xb1\x78", -+ [12404] = "\xb1\x79", [12405] = "\xd0\xfc", [12406] = "\xb1\x7a", -+ [12410] = "\xb1\x7b", [12413] = "\xcb\xb5", [12414] = "\xb1\x7c", -+ [12415] = "\xb1\x7d", [12416] = "\xb1\x7e", [12417] = "\xb7\xe6", -+ [12418] = "\xb2\x21", [12419] = "\xb2\x22", [12420] = "\xb2\x23", -+ [12422] = "\xb2\x24", [12424] = "\xbb\xb1", [12425] = "\xc8\xf7", -+ [12426] = "\xd0\xfb", [12427] = "\xb2\x25", [12428] = "\xb2\x26", -+ [12430] = "\xb2\x27", [12431] = "\xb2\x28", [12432] = "\xb2\x29", -+ [12433] = "\xb2\x2a", [12434] = "\xb2\x2b", [12442] = "\xb2\x2c", -+ [12444] = "\xba\xc5", [12445] = "\xcd\xc3", [12447] = "\xb2\x2d", -+ [12448] = "\xb2\x2e", [12450] = "\xd0\xfe", [12451] = "\xd1\xa3", -+ [12452] = "\xd0\xfd", [12453] = "\xba\xc4", [12455] = "\xbd\xfd", -+ [12457] = "\xb2\x2f", [12458] = "\xb2\x30", [12461] = "\xb2\x31", -+ [12462] = "\xb7\xb9", [12464] = "\xb2\x32", [12466] = "\xd1\xa4", -+ [12467] = "\xb2\x33", [12468] = "\xb2\x34", [12469] = "\xb6\xcf", -+ [12471] = "\xb2\x35", [12473] = "\xd1\xa1", [12474] = "\xd1\xa2", -+ [12476] = "\xb2\x36", [12477] = "\xc6\xaf", [12478] = "\xb2\x37", -+ [12479] = "\xc1\xfc", [12480] = "\xb2\x38", [12481] = "\xb6\xa3", -+ [12483] = "\xb2\x39", [12484] = "\xb2\x3a", [12485] = "\xcb\xcd", -+ [12486] = "\xd1\xa5", [12488] = "\xb2\x3b", [12490] = "\xce\xbd", -+ [12492] = "\xb2\x3c", [12493] = "\xb2\x3d", [12494] = "\xd1\xa6", -+ [12495] = "\xb2\x3e", [12498] = "\xb2\x3f", [12499] = "\xd1\xa9", -+ [12500] = "\xb2\x40", [12501] = "\xd1\xa7", [12502] = "\xb2\x41", -+ [12503] = "\xc1\xce", [12504] = "\xb2\x42", [12505] = "\xb2\x43", -+ [12509] = "\xd1\xa8", [12510] = "\xd1\xaa", [12511] = "\xb2\x44", -+ [12513] = "\xb2\x45", [12514] = "\xb2\x51", [12516] = "\xf4\x30", -+ [12517] = "\xd1\xac", [12518] = "\xb2\x46", [12521] = "\xd1\xab", -+ [12522] = "\xb2\x47", [12523] = "\xca\xc8", [12526] = "\xb2\x48", -+ [12528] = "\xb5\xb7", [12529] = "\xd1\xae", [12530] = "\xd1\xaf", -+ [12531] = "\xb2\x49", [12532] = "\xb2\xaf", [12534] = "\xb2\x4a", -+ [12535] = "\xb2\x4b", [12536] = "\xb2\x4c", [12537] = "\xd1\xad", -+ [12539] = "\xb2\x4d", [12540] = "\xb2\x4e", [12541] = "\xb2\x4f", -+ [12542] = "\xb2\x50", [12544] = "\xb2\x52", [12546] = "\xbc\xf4", -+ [12548] = "\xd1\xb2", [12549] = "\xd1\xb1", [12550] = "\xd1\xb0", -+ [12551] = "\xb2\x53", [12552] = "\xd0\xd6", [12553] = "\xb2\x54", -+ [12554] = "\xd1\xb3", [12555] = "\xb2\x55", [12556] = "\xb2\x56", -+ [12557] = "\xb2\x57", [12558] = "\xb2\x58", [12559] = "\xbd\xfe", -+ [12561] = "\xd1\xb4", [12563] = "\xb2\x59", [12567] = "\xb2\x5a", -+ [12568] = "\xb2\x5b", [12570] = "\xcd\xa5", [12572] = "\xb2\x5c", -+ [12573] = "\xb2\x5d", [12575] = "\xb2\x5e", [12577] = "\xb2\x5f", -+ [12578] = "\xcc\xd9", [12579] = "\xb2\x60", [12580] = "\xb2\x61", -+ [12581] = "\xb2\x62", [12583] = "\xd1\xb6", [12584] = "\xb2\x63", -+ [12585] = "\xb2\x64", [12586] = "\xd1\xb5", [12587] = "\xd1\xb8", -+ [12588] = "\xd1\xb7", [12591] = "\xd1\xb9", [12592] = "\xd1\xba", -+ [12593] = "\xb0\xf4", [12594] = "\xb2\x65", [12595] = "\xb8\xb5", -+ [12596] = "\xb7\xbb", [12597] = "\xbd\xbc", [12598] = "\xc3\xfb", -+ [12599] = "\xb6\xa4", [12600] = "\xc0\xe8", [12601] = "\xb8\xf7", -+ [12602] = "\xb2\x66", [12603] = "\xb9\xee", [12604] = "\xd1\xbc", -+ [12605] = "\xcc\xc8", [12606] = "\xc5\xc6", [12607] = "\xb2\x67", -+ [12608] = "\xbb\xf9", [12610] = "\xd1\xbb", [12611] = "\xb2\x68", -+ [12612] = "\xd1\xbd", [12613] = "\xb2\x69", [12615] = "\xb2\x6a", -+ [12616] = "\xb2\x6b", [12618] = "\xc5\xde", [12620] = "\xb3\xf5", -+ [12623] = "\xb2\x6c", [12626] = "\xd1\xbe", [12628] = "\xb2\x6d", -+ [12629] = "\xc6\xfe", [12630] = "\xb2\x6e", [12632] = "\xc1\xb4", -+ [12633] = "\xd1\xc0", [12634] = "\xd1\xc1", [12635] = "\xc8\xac", -+ [12636] = "\xb8\xf8", [12637] = "\xcf\xbb", [12638] = "\xd1\xc2", -+ [12641] = "\xb6\xa6", [12645] = "\xca\xbc", [12646] = "\xc2\xb6", -+ [12647] = "\xb6\xf1", [12648] = "\xc5\xb5", [12652] = "\xb7\xf3", -+ [12654] = "\xb2\x6f", [12656] = "\xd1\xc3", [12658] = "\xd1\xc4", -+ [12659] = "\xb2\x70", [12660] = "\xb2\x71", [12661] = "\xc6\xe2", -+ [12662] = "\xb1\xdf", [12665] = "\xd1\xc7", [12666] = "\xba\xfd", -+ [12667] = "\xb2\x72", [12668] = "\xd1\xc6", [12669] = "\xba\xc6", -+ [12670] = "\xb2\x73", [12671] = "\xd1\xc8", [12672] = "\xe6\xee", -+ [12673] = "\xd1\xc9", [12674] = "\xcb\xc1", [12675] = "\xd1\xca", -+ [12677] = "\xd1\xcb", [12678] = "\xd1\xcc", [12679] = "\xbe\xe9", -+ [12680] = "\xb2\x74", [12681] = "\xbc\xcc", [12685] = "\xb2\x75", -+ [12688] = "\xb4\xa7", [12689] = "\xb2\x76", [12690] = "\xd1\xcf", -+ [12691] = "\xb2\x77", [12692] = "\xd1\xcd", [12693] = "\xcc\xbd", -+ [12694] = "\xd1\xce", [12696] = "\xc9\xda", [12697] = "\xd1\xd0", -+ [12698] = "\xd1\xd1", [12699] = "\xd1\xd2", [12700] = "\xc5\xdf", -+ [12701] = "\xb2\x78", [12704] = "\xd1\xd6", [12705] = "\xd1\xd4", -+ [12706] = "\xd1\xd5", [12707] = "\xd1\xd3", [12708] = "\xba\xe3", -+ [12709] = "\xd1\xd7", [12710] = "\xcc\xea", [12711] = "\xce\xe4", -+ [12712] = "\xb2\x79", [12714] = "\xb2\x7a", [12716] = "\xb2\x7b", -+ [12717] = "\xd1\xd8", [12718] = "\xb2\x7c", [12719] = "\xb2\x7d", -+ [12722] = "\xb2\x7e", [12724] = "\xc0\xa8", [12725] = "\xd1\xd9", -+ [12726] = "\xbd\xda", [12728] = "\xb3\x21", [12729] = "\xd1\xda", -+ [12731] = "\xc3\xfc", [12732] = "\xce\xbf", [12733] = "\xc5\xe0", -+ [12735] = "\xb3\x22", [12737] = "\xb3\x23", [12738] = "\xb3\x24", -+ [12739] = "\xb3\x25", [12741] = "\xb3\x26", [12742] = "\xd2\xc5", -+ [12744] = "\xb3\x27", [12747] = "\xd1\xdb", [12748] = "\xf4\xa5", -+ [12749] = "\xb6\xc5", [12750] = "\xb3\x28", [12752] = "\xd1\xdc", -+ [12753] = "\xcb\xde", [12754] = "\xb3\x29", [12757] = "\xb3\x2a", -+ [12758] = "\xbd\xe8", [12759] = "\xc2\xfc", [12761] = "\xd1\xde", -+ [12762] = "\xc6\xe4", [12764] = "\xf4\x31", [12765] = "\xd1\xdf", -+ [12766] = "\xb3\x2b", [12768] = "\xd1\xe0", [12769] = "\xb3\xae", -+ [12770] = "\xb3\x2c", [12771] = "\xb3\x2d", [12772] = "\xb3\x2e", -+ [12773] = "\xd1\xe1", [12774] = "\xb6\xa7", [12775] = "\xb3\x2f", -+ [12776] = "\xc6\xcc", [12777] = "\xb1\xfa", [12778] = "\xbd\xd0", -+ [12781] = "\xc8\xa1", [12782] = "\xd1\xe2", [12784] = "\xc5\xe1", -+ [12785] = "\xb3\x30", [12786] = "\xb3\x31", [12787] = "\xbf\xcf", -+ [12788] = "\xd1\xe3", [12789] = "\xb3\x32", [12790] = "\xca\xac", -+ [12791] = "\xc0\xda", [12792] = "\xb4\xa2", [12794] = "\xb4\xa9", -+ [12795] = "\xd1\xe4", [12798] = "\xd1\xe6", [12801] = "\xb7\xba", -+ [12802] = "\xb3\x33", [12803] = "\xb3\x34", [12804] = "\xd1\xe5", -+ [12805] = "\xb3\x35", [12806] = "\xb3\x36", [12807] = "\xce\xf3", -+ [12808] = "\xb3\x37", [12813] = "\xbd\xe9", [12818] = "\xb3\x38", -+ [12820] = "\xc8\xbd", [12821] = "\xca\xcc", [12823] = "\xd1\xe7", -+ [12824] = "\xb3\x39", [12825] = "\xcd\xf8", [12826] = "\xd1\xe8", -+ [12830] = "\xd1\xe9", [12832] = "\xc5\xfe", [12833] = "\xb3\x3a", -+ [12834] = "\xb3\x3b", [12835] = "\xd1\xea", [12837] = "\xb3\x3c", -+ [12838] = "\xc0\xa9", [12839] = "\xba\xfe", [12840] = "\xb7\xf4", -+ [12841] = "\xd1\xeb", [12842] = "\xbb\xc9", [12843] = "\xb9\xef", -+ [12844] = "\xb3\x3d", [12851] = "\xc4\xe6", [12852] = "\xd1\xed", -+ [12853] = "\xb3\x3e", [12855] = "\xc2\xa7", [12857] = "\xb3\x3f", -+ [12858] = "\xba\xef", [12859] = "\xd1\xee", [12860] = "\xd1\xef", -+ [12861] = "\xc1\xb0", [12863] = "\xd1\xec", [12868] = "\xd1\xf1", -+ [12869] = "\xb3\x40", [12870] = "\xcb\xb6", [12871] = "\xb3\x41", -+ [12872] = "\xb3\x42", [12874] = "\xb3\x43", [12875] = "\xb9\xe4", -+ [12876] = "\xb3\x44", [12878] = "\xd1\xf0", [12879] = "\xb3\x45", -+ [12880] = "\xb3\x46", [12881] = "\xb3\x47", [12883] = "\xb7\xf5", -+ [12884] = "\xba\xde", [12885] = "\xc7\xed", [12886] = "\xb3\x48", -+ [12889] = "\xd1\xf4", [12890] = "\xd1\xf2", [12894] = "\xb3\x49", -+ [12895] = "\xc9\xfb", [12896] = "\xbe\xea", [12897] = "\xd1\xfb", -+ [12898] = "\xb3\xe4", [12899] = "\xd1\xf5", [12900] = "\xd1\xf3", -+ [12901] = "\xc1\xcf", [12903] = "\xb3\x4a", [12904] = "\xb3\x4b", -+ [12905] = "\xb3\x4c", [12909] = "\xd1\xf7", [12911] = "\xd1\xf6", -+ [12912] = "\xb3\x4d", [12914] = "\xb3\x4e", [12915] = "\xb3\xc4", -+ [12917] = "\xb3\x4f", [12919] = "\xb7\xe0", [12920] = "\xd1\xfc", -+ [12921] = "\xce\xad", [12922] = "\xb3\x50", [12924] = "\xb3\x51", -+ [12925] = "\xd1\xf8", [12929] = "\xd1\xfd", [12930] = "\xd1\xfa", -+ [12931] = "\xb3\x52", [12932] = "\xd1\xf9", [12933] = "\xb3\x53", -+ [12934] = "\xb3\x54", [12935] = "\xb3\x55", [12936] = "\xb3\x56", -+ [12938] = "\xb3\x57", [12939] = "\xce\xcf", [12940] = "\xb3\x58", -+ [12943] = "\xb8\xf9", [12944] = "\xb2\xc3", [12947] = "\xce\xf4", -+ [12948] = "\xb3\x59", [12949] = "\xb3\x5a", [12950] = "\xb3\x5b", -+ [12951] = "\xb3\x5c", [12953] = "\xbd\xf5", [12954] = "\xc5\xd8", -+ [12955] = "\xb9\xe5", [12956] = "\xd2\xa2", [12957] = "\xd2\xa3", -+ [12959] = "\xb3\x5d", [12960] = "\xb3\x5e", [12961] = "\xce\xe5", -+ [12964] = "\xcf\xab", [12965] = "\xd2\xa5", [12966] = "\xb3\x5f", -+ [12967] = "\xb3\x60", [12968] = "\xb3\x61", [12969] = "\xb8\xfa", -+ [12970] = "\xb3\x62", [12971] = "\xb3\x63", [12972] = "\xd2\xa4", -+ [12973] = "\xb3\x64", [12974] = "\xb3\xaf", [12976] = "\xb3\x65", -+ [12977] = "\xd2\xa6", [12979] = "\xcb\xd6", [12980] = "\xb3\x66", -+ [12981] = "\xc4\xbc", [12982] = "\xb3\x67", [12983] = "\xcd\xa6", -+ [12984] = "\xb3\x68", [12985] = "\xca\xd9", [12988] = "\xb3\x69", -+ [12989] = "\xd2\xa7", [12991] = "\xb3\x6a", [12993] = "\xb3\x6b", -+ [12994] = "\xf0\xd5", [12996] = "\xb3\x6c", [12997] = "\xc6\xb0", -+ [12998] = "\xb3\x6d", [12999] = "\xd2\xa8", [13000] = "\xb4\xaa", -+ [13001] = "\xcc\xb3", [13003] = "\xb3\x6e", [13004] = "\xb3\x6f", -+ [13005] = "\xbe\xa1", [13006] = "\xd2\xa9", [13007] = "\xca\xe7", -+ [13008] = "\xd2\xad", [13009] = "\xb3\x70", [13010] = "\xc0\xaa", -+ [13011] = "\xd2\xaa", [13012] = "\xb6\xd0", [13013] = "\xb3\x71", -+ [13014] = "\xd2\xab", [13015] = "\xb4\xab", [13016] = "\xb3\x72", -+ [13017] = "\xb3\x73", [13018] = "\xb3\x74", [13020] = "\xb3\x75", -+ [13024] = "\xb3\x76", [13025] = "\xb3\x77", [13026] = "\xb7\xae", -+ [13027] = "\xd2\xae", [13028] = "\xb3\x78", [13029] = "\xd2\xaf", -+ [13030] = "\xb3\x79", [13031] = "\xb3\x7a", [13032] = "\xd2\xb0", -+ [13033] = "\xd2\xb1", [13034] = "\xbc\xdb", [13038] = "\xb8\xfb", -+ [13039] = "\xcc\xde", [13040] = "\xb3\x7b", [13041] = "\xcc\xe8", -+ [13042] = "\xc6\xf7", [13043] = "\xb3\x7c", [13045] = "\xca\xf1", -+ [13046] = "\xd2\xb2", [13047] = "\xf4\x32", [13048] = "\xd2\xb3", -+ [13050] = "\xb3\x7d", [13051] = "\xb3\x7e", [13052] = "\xb4\x21", -+ [13053] = "\xd2\xb5", [13055] = "\xd2\xb7", [13056] = "\xd2\xb6", -+ [13057] = "\xb4\x22", [13059] = "\xb4\x23", [13061] = "\xd2\xb8", -+ [13062] = "\xb2\xbd", [13063] = "\xcb\xcc", [13064] = "\xb4\x24", -+ [13065] = "\xba\xfc", [13066] = "\xd2\xb9", [13067] = "\xb4\x25", -+ [13068] = "\xb4\x26", [13069] = "\xc1\xd9", [13070] = "\xb4\x27", -+ [13071] = "\xb4\x28", [13072] = "\xbe\xa2", [13073] = "\xb6\xa9", -+ [13075] = "\xd2\xba", [13076] = "\xf4\x33", [13077] = "\xb4\x29", -+ [13079] = "\xb4\x2a", [13080] = "\xb4\x2b", [13081] = "\xb4\x2c", -+ [13082] = "\xc8\xdb", [13083] = "\xb4\x2d", [13084] = "\xb4\x2e", -+ [13085] = "\xb4\x2f", [13087] = "\xd2\xbb", [13088] = "\xb4\x30", -+ [13089] = "\xd2\xbc", [13090] = "\xb4\x31", [13091] = "\xd2\xbd", -+ [13093] = "\xb4\x32", [13096] = "\xd2\xbe", [13097] = "\xc9\xa4", -+ [13098] = "\xb6\xe8", [13099] = "\xb0\xe5", [13100] = "\xb4\x33", -+ [13101] = "\xb4\x34", [13102] = "\xb4\x35", [13103] = "\xc6\xbf", -+ [13104] = "\xd2\xbf", [13105] = "\xbd\xbd", [13106] = "\xb4\x36", -+ [13107] = "\xc0\xe9", [13109] = "\xd2\xc1", [13110] = "\xd2\xc0", -+ [13111] = "\xbe\xa3", [13112] = "\xb8\xe1", [13113] = "\xd2\xc3", -+ [13114] = "\xc8\xbe", [13115] = "\xb4\x38", [13116] = "\xb4\x37", -+ [13117] = "\xd2\xc4", [13121] = "\xc8\xdc", [13122] = "\xc2\xb4", -+ [13123] = "\xc2\xee", [13124] = "\xb6\xa8", [13127] = "\xc6\xee", -+ [13128] = "\xc3\xb1", [13129] = "\xb4\x39", [13130] = "\xc7\xee", -+ [13131] = "\xb4\x3a", [13132] = "\xcb\xce", [13134] = "\xd2\xc6", -+ [13136] = "\xc0\xea", [13137] = "\xb4\x3b", [13139] = "\xb4\x3c", -+ [13141] = "\xb4\x3d", [13142] = "\xb7\xb5", [13145] = "\xd2\xc7", -+ [13148] = "\xb4\x3e", [13149] = "\xb4\x3f", [13150] = "\xd2\xc8", -+ [13151] = "\xb1\xac", [13152] = "\xb0\xf5", [13153] = "\xb4\xed", -+ [13154] = "\xb4\x40", [13155] = "\xc2\xa8", [13156] = "\xb5\xd1", -+ [13157] = "\xcd\xf1", [13159] = "\xd2\xcb", [13160] = "\xb2\xb7", -+ [13161] = "\xb4\x41", [13163] = "\xd2\xca", [13166] = "\xb4\x42", -+ [13167] = "\xb6\xaa", [13170] = "\xd2\xcc", [13171] = "\xb4\x43", -+ [13172] = "\xcc\xf1", [13175] = "\xb4\x44", [13176] = "\xb4\x45", -+ [13182] = "\xb4\x46", [13187] = "\xb4\x47", [13188] = "\xb4\x48", -+ [13190] = "\xd2\xcd", [13192] = "\xce\xd2", [13193] = "\xb4\x49", -+ [13194] = "\xb8\xfc", [13197] = "\xb4\x4a", [13199] = "\xb8\xb6", -+ [13200] = "\xd2\xce", [13201] = "\xb4\x4b", [13204] = "\xb4\x4c", -+ [13205] = "\xd2\xd0", [13206] = "\xd2\xcf", [13208] = "\xbf\xdf", -+ [13209] = "\xb1\xb9", [13210] = "\xb4\x4d", [13211] = "\xb4\x4e", -+ [13213] = "\xb1\xde", [13214] = "\xd2\xd1", [13215] = "\xb4\x4f", -+ [13216] = "\xd2\xd2", [13218] = "\xb4\x50", [13219] = "\xb8\xb7", -+ [13220] = "\xb4\x51", [13221] = "\xb4\x52", [13222] = "\xd2\xd3", -+ [13223] = "\xb4\x53", [13224] = "\xb4\x54", [13226] = "\xb4\x55", -+ [13227] = "\xb5\xee", [13229] = "\xb4\x56", [13232] = "\xb4\x57", -+ [13234] = "\xbb\xb2", [13235] = "\xd2\xd4", [13237] = "\xb4\x58", -+ [13240] = "\xcb\xf4", [13241] = "\xba\xb5", [13242] = "\xb5\xda", -+ [13243] = "\xcd\xa7", [13244] = "\xc1\xd0", [13245] = "\xc8\xbf", -+ [13246] = "\xbc\xfd", [13247] = "\xb4\x59", [13250] = "\xb4\x5a", -+ [13251] = "\xb4\x5b", [13252] = "\xbd\xc7", [13253] = "\xb4\x5c", -+ [13254] = "\xbc\xe8", [13255] = "\xbc\xf5", [13257] = "\xbd\xf6", -+ [13258] = "\xb4\x5d", [13259] = "\xc8\xc0", [13261] = "\xb4\x5e", -+ [13262] = "\xb4\x5f", [13263] = "\xd2\xd7", [13264] = "\xb4\x60", -+ [13265] = "\xb1\xc3", [13266] = "\xc1\xd1", [13267] = "\xb8\xfd", -+ [13268] = "\xb8\xc5", [13269] = "\xb6\xe7", [13270] = "\xb4\x61", -+ [13271] = "\xb4\x62", [13272] = "\xd2\xdb", [13273] = "\xc3\xa1", -+ [13274] = "\xc2\xfe", [13275] = "\xb6\xab", [13276] = "\xbe\xa4", -+ [13277] = "\xd2\xdc", [13278] = "\xd2\xda", [13279] = "\xb2\xc4", -+ [13280] = "\xc2\xe6", [13281] = "\xbc\xb8", [13282] = "\xbb\xcb", -+ [13283] = "\xb1\xa6", [13285] = "\xb4\x63", [13286] = "\xb3\xf0", -+ [13287] = "\xb9\xe6", [13288] = "\xbb\xca", [13290] = "\xd2\xdd", -+ [13297] = "\xd2\xde", [13298] = "\xb4\x64", [13299] = "\xb5\xc9", -+ [13300] = "\xb3\xc6", [13304] = "\xb9\xe7", [13305] = "\xb5\xc8", -+ [13306] = "\xc4\xdf", [13307] = "\xb1\xa5", [13308] = "\xc6\xb1", -+ [13309] = "\xcc\xbe", [13310] = "\xb9\xa1", [13311] = "\xcd\xf9", -+ [13312] = "\xc5\xc7", [13313] = "\xb8\xfe", [13315] = "\xb4\x65", -+ [13322] = "\xb4\x66", [13323] = "\xb7\xaf", [13325] = "\xd2\xe7", -+ [13327] = "\xb6\xe3", [13328] = "\xcb\xca", [13329] = "\xb4\x67", -+ [13334] = "\xc8\xdd", [13335] = "\xb4\x68", [13336] = "\xb4\x69", -+ [13337] = "\xd2\xe6", [13338] = "\xb4\x6a", [13339] = "\xb4\xde", -+ [13340] = "\xd2\xe1", [13341] = "\xd2\xe2", [13342] = "\xd2\xe4", -+ [13343] = "\xb4\x6b", [13345] = "\xb4\x6c", [13348] = "\xb4\x6d", -+ [13349] = "\xb4\x6e", [13350] = "\xd2\xe5", [13352] = "\xb5\xdb", -+ [13353] = "\xbf\xe1", [13355] = "\xca\xad", [13356] = "\xd2\xe3", -+ [13357] = "\xd2\xdf", [13358] = "\xb8\xe3", [13360] = "\xd2\xe0", -+ [13362] = "\xcf\xa4", [13363] = "\xb4\x6f", [13364] = "\xb4\x70", -+ [13366] = "\xca\xf2", [13367] = "\xb4\x71", [13368] = "\xc4\xe8", -+ [13369] = "\xb8\xe2", [13370] = "\xb9\xf0", [13373] = "\xb4\x72", -+ [13374] = "\xd2\xe8", [13375] = "\xb4\x73", [13377] = "\xc6\xdd", -+ [13390] = "\xb4\x74", [13391] = "\xd2\xec", [13394] = "\xb4\x75", -+ [13396] = "\xb4\x76", [13398] = "\xb4\x77", [13399] = "\xb4\x78", -+ [13400] = "\xbc\xfe", [13401] = "\xb4\x79", [13402] = "\xbc\xf6", -+ [13403] = "\xb4\x7a", [13405] = "\xb4\x7b", [13406] = "\xb4\x7c", -+ [13408] = "\xd2\xef", [13409] = "\xd2\xed", [13411] = "\xcc\xa3", -+ [13412] = "\xb4\x7d", [13413] = "\xd2\xea", [13414] = "\xd2\xf3", -+ [13415] = "\xd2\xee", [13419] = "\xd2\xf1", [13420] = "\xb8\xc6", -+ [13421] = "\xcc\xbf", [13423] = "\xb4\x7e", [13424] = "\xd2\xf2", -+ [13425] = "\xb5\x21", [13427] = "\xb5\x22", [13428] = "\xd2\xf4", -+ [13429] = "\xb5\x23", [13430] = "\xd2\xf6", [13432] = "\xb5\x24", -+ [13433] = "\xb5\x25", [13434] = "\xf4\x35", [13435] = "\xba\xf0", -+ [13436] = "\xcf\xc2", [13437] = "\xb5\x26", [13438] = "\xd2\xeb", -+ [13439] = "\xd2\xe9", [13440] = "\xd2\xf5", [13441] = "\xb5\x27", -+ [13442] = "\xd2\xf0", [13445] = "\xb5\x28", [13446] = "\xb5\x29", -+ [13452] = "\xb5\x2a", [13455] = "\xb5\x2b", [13457] = "\xb5\x2c", -+ [13458] = "\xd2\xf8", [13460] = "\xd3\xa3", [13461] = "\xd2\xfa", -+ [13462] = "\xb5\x2d", [13463] = "\xb5\x2e", [13464] = "\xd2\xfe", -+ [13465] = "\xb5\x2f", [13466] = "\xb5\x30", [13467] = "\xd3\xa1", -+ [13468] = "\xd2\xfb", [13469] = "\xb5\x31", [13470] = "\xb5\x32", -+ [13471] = "\xd3\xbe", [13473] = "\xb5\x33", [13474] = "\xba\xe9", -+ [13475] = "\xb3\xb1", [13479] = "\xb5\x34", [13480] = "\xd2\xf9", -+ [13481] = "\xb5\x35", [13482] = "\xb5\x36", [13483] = "\xb5\x37", -+ [13484] = "\xd3\xa5", [13485] = "\xb0\xf6", [13486] = "\xd3\xa4", -+ [13487] = "\xb5\x38", [13488] = "\xb0\xa5", [13489] = "\xc9\xca", -+ [13490] = "\xd3\xa2", [13492] = "\xd2\xfc", [13494] = "\xb5\x39", -+ [13495] = "\xd2\xf7", [13496] = "\xd2\xfd", [13497] = "\xba\xc8", -+ [13498] = "\xb5\x3a", [13501] = "\xb5\x3b", [13502] = "\xb5\x3c", -+ [13512] = "\xd3\xa6", [13520] = "\xb5\x3d", [13521] = "\xb0\xf7", -+ [13522] = "\xd3\xaf", [13525] = "\xd3\xa7", [13526] = "\xd3\xa8", -+ [13528] = "\xbe\xa5", [13529] = "\xcb\xe9", [13530] = "\xb5\x3e", -+ [13532] = "\xb5\x3f", [13533] = "\xd3\xad", [13534] = "\xd3\xac", -+ [13535] = "\xb5\x40", [13538] = "\xc5\xaf", [13542] = "\xb5\x41", -+ [13546] = "\xd3\xae", [13548] = "\xb5\x42", [13549] = "\xd3\xab", -+ [13550] = "\xb5\x43", [13551] = "\xb5\x44", [13552] = "\xb5\x45", -+ [13553] = "\xb5\x46", [13556] = "\xb1\xb4", [13557] = "\xb5\x47", -+ [13558] = "\xba\xb6", [13559] = "\xbf\xb0", [13560] = "\xb5\x48", -+ [13561] = "\xb5\x49", [13564] = "\xb5\x4a", [13565] = "\xb5\x4b", -+ [13566] = "\xb5\x4c", [13567] = "\xd3\xa9", [13568] = "\xc5\xe2", -+ [13572] = "\xd3\xaa", [13573] = "\xb5\x4d", [13574] = "\xb0\xa2", -+ [13594] = "\xb5\x4e", [13595] = "\xb5\x4f", [13598] = "\xd3\xb4", -+ [13599] = "\xcd\xa3", [13601] = "\xbe\xa7", [13602] = "\xb5\x50", -+ [13603] = "\xd3\xba", [13605] = "\xb5\x51", [13606] = "\xb5\x52", -+ [13608] = "\xd3\xb9", [13609] = "\xd3\xb0", [13611] = "\xb5\x53", -+ [13612] = "\xb5\x54", [13613] = "\xb5\x55", [13614] = "\xc2\xc3", -+ [13616] = "\xd3\xb1", [13617] = "\xb5\x56", [13620] = "\xc2\xef", -+ [13621] = "\xd3\xb6", [13622] = "\xbe\xa6", [13623] = "\xb5\x57", -+ [13625] = "\xb5\x58", [13626] = "\xb5\x59", [13628] = "\xd3\xb3", -+ [13629] = "\xb5\x5a", [13631] = "\xcc\xe4", [13632] = "\xb5\x5b", -+ [13633] = "\xb5\x5c", [13635] = "\xb7\xbc", [13638] = "\xd3\xb7", -+ [13639] = "\xd3\xb8", [13640] = "\xb5\x5d", [13642] = "\xb5\x5e", -+ [13643] = "\xb5\x5f", [13644] = "\xd3\xb5", [13645] = "\xd3\xbb", -+ [13646] = "\xb5\x60", [13648] = "\xb5\x61", [13649] = "\xb5\x62", -+ [13651] = "\xd3\xb2", [13652] = "\xb5\x63", [13654] = "\xb5\x64", -+ [13675] = "\xd3\xc1", [13676] = "\xd3\xc6", [13678] = "\xd3\xc2", -+ [13679] = "\xb5\x65", [13680] = "\xd3\xbd", [13681] = "\xb5\x66", -+ [13682] = "\xb5\x67", [13683] = "\xd3\xc7", [13684] = "\xc1\xb1", -+ [13686] = "\xb5\x68", [13687] = "\xd3\xc9", [13688] = "\xb5\x69", -+ [13689] = "\xb9\xa2", [13690] = "\xd3\xbf", [13691] = "\xc3\xfd", -+ [13694] = "\xb5\x6a", [13695] = "\xb5\x6b", [13697] = "\xb5\x6c", -+ [13698] = "\xb5\x6d", [13699] = "\xb5\x6e", [13700] = "\xb5\x6f", -+ [13703] = "\xb5\x70", [13704] = "\xd3\xc3", [13705] = "\xd3\xbc", -+ [13706] = "\xb4\xad", [13708] = "\xb4\xee", [13709] = "\xb3\xe5", -+ [13710] = "\xd3\xc4", [13711] = "\xd3\xc0", [13715] = "\xb5\x71", -+ [13716] = "\xb5\x72", [13719] = "\xb7\xf6", [13720] = "\xd3\xca", -+ [13721] = "\xd3\xc8", [13722] = "\xc1\xd3", [13723] = "\xb5\xca", -+ [13724] = "\xb6\xac", [13725] = "\xb5\x73", [13726] = "\xd3\xc5", -+ [13728] = "\xb6\xf4", [13730] = "\xb5\x74", [13734] = "\xb1\xc4", -+ [13743] = "\xb5\x75", [13745] = "\xb5\x76", [13747] = "\xb5\x77", -+ [13748] = "\xd3\xce", [13749] = "\xd3\xcc", [13750] = "\xb5\x78", -+ [13751] = "\xd4\xa7", [13753] = "\xb5\x79", [13755] = "\xb5\x7a", -+ [13756] = "\xb5\x7b", [13758] = "\xb5\x7c", [13761] = "\xb5\x7d", -+ [13762] = "\xb5\x7e", [13763] = "\xb6\x21", [13764] = "\xd3\xd1", -+ [13767] = "\xb6\x22", [13768] = "\xb6\x23", [13770] = "\xd3\xcb", -+ [13771] = "\xb6\x24", [13772] = "\xd3\xcf", [13774] = "\xb6\x25", -+ [13775] = "\xd3\xcd", [13778] = "\xb6\x26", [13779] = "\xbb\xcc", -+ [13780] = "\xd3\xd0", [13785] = "\xb6\x27", [13798] = "\xb6\x28", -+ [13799] = "\xd3\xd3", [13801] = "\xd3\xd8", [13805] = "\xd3\xd6", -+ [13806] = "\xd3\xd5", [13807] = "\xb6\x29", [13813] = "\xb6\x2a", -+ [13814] = "\xc3\xb2", [13816] = "\xb6\x2b", [13817] = "\xb2\xc5", -+ [13818] = "\xb6\x2c", [13821] = "\xb6\x2d", [13822] = "\xb6\x2e", -+ [13823] = "\xb6\x2f", [13824] = "\xb6\x30", [13825] = "\xb6\x31", -+ [13826] = "\xb6\x32", [13828] = "\xd3\xd2", [13830] = "\xd3\xd4", -+ [13831] = "\xbe\xa8", [13832] = "\xb1\xb3", [13833] = "\xb6\x33", -+ [13835] = "\xd3\xd7", [13849] = "\xb2\xde", [13852] = "\xb6\x34", -+ [13855] = "\xd3\xe2", [13856] = "\xb6\x35", [13857] = "\xbe\xfc", -+ [13858] = "\xd3\xde", [13859] = "\xb6\x36", [13860] = "\xd3\xdc", -+ [13861] = "\xb6\x37", [13862] = "\xd3\xdd", [13863] = "\xb6\x38", -+ [13864] = "\xd3\xdf", [13865] = "\xb6\x39", [13867] = "\xb6\x3a", -+ [13868] = "\xb6\x3b", [13869] = "\xb6\x3c", [13871] = "\xb6\x3d", -+ [13872] = "\xb6\x3e", [13873] = "\xb6\x3f", [13874] = "\xb1\xbd", -+ [13875] = "\xb6\x40", [13876] = "\xb6\x41", [13878] = "\xb6\x42", -+ [13881] = "\xb6\x43", [13883] = "\xb6\x44", [13884] = "\xc1\xb9", -+ [13885] = "\xb6\x45", [13886] = "\xd3\xd9", [13887] = "\xb6\x46", -+ [13888] = "\xd3\xda", [13892] = "\xb6\x47", [13899] = "\xb3\xfa", -+ [13902] = "\xb6\x48", [13904] = "\xb6\x49", [13905] = "\xb6\x4a", -+ [13906] = "\xb6\x4b", [13907] = "\xb6\x4c", [13908] = "\xd3\xe1", -+ [13910] = "\xb6\x4d", [13912] = "\xb4\xef", [13913] = "\xb6\x4e", -+ [13914] = "\xd3\xe4", [13915] = "\xd3\xe0", [13916] = "\xd3\xe3", -+ [13917] = "\xb6\x4f", [13919] = "\xb6\x50", [13921] = "\xb6\x51", -+ [13922] = "\xb6\x52", [13924] = "\xca\xae", [13925] = "\xb6\x53", -+ [13928] = "\xc6\xd5", [13930] = "\xc8\xb8", [13936] = "\xd3\xe6", -+ [13940] = "\xb6\x54", [13941] = "\xb6\x55", [13942] = "\xd3\xe5", -+ [13943] = "\xb3\xc5", [13944] = "\xb6\x56", [13946] = "\xd3\xe7", -+ [13947] = "\xb6\x57", [13948] = "\xb6\x58", [13951] = "\xd3\xea", -+ [13956] = "\xd3\xe9", [13957] = "\xb6\x59", [13961] = "\xb6\x5a", -+ [13962] = "\xb6\x5b", [13965] = "\xb6\x5c", [13966] = "\xb6\x5d", -+ [13967] = "\xb6\x5e", [13968] = "\xd3\xe8", [13970] = "\xc7\xb9", -+ [13973] = "\xd3\xeb", [13974] = "\xb6\x5f", [13975] = "\xb6\x60", -+ [13976] = "\xb6\x61", [13977] = "\xb6\x62", [13979] = "\xb6\x63", -+ [13980] = "\xb6\x64", [13981] = "\xb6\x65", [13982] = "\xd3\xec", -+ [13985] = "\xb6\x66", [13987] = "\xb6\x67", [13988] = "\xd3\xee", -+ [13990] = "\xd3\xed", [13991] = "\xb6\x68", [13996] = "\xd3\xf0", -+ [13998] = "\xb6\x69", [14000] = "\xd3\xf3", [14001] = "\xd3\xf1", -+ [14002] = "\xd3\xef", [14003] = "\xd3\xf2", [14005] = "\xb6\x6a", -+ [14008] = "\xd3\xf4", [14009] = "\xb6\x6b", [14010] = "\xb6\x6c", -+ [14011] = "\xb6\x6d", [14012] = "\xb6\x70", [14013] = "\xb6\x71", -+ [14014] = "\xd3\xf5", [14015] = "\xb6\x6e", [14016] = "\xb6\x6f", -+ [14017] = "\xd3\xf6", [14019] = "\xd3\xf7", [14023] = "\xd3\xf8", -+ [14024] = "\xd1\xc5", [14025] = "\xb6\x72", [14026] = "\xbc\xfc", -+ [14027] = "\xbb\xcd", [14028] = "\xb6\x73", [14029] = "\xb6\x74", -+ [14030] = "\xb2\xf3", [14031] = "\xb6\x75", [14032] = "\xb0\xf8", -+ [14033] = "\xb6\x76", [14035] = "\xc3\xc4", [14036] = "\xb6\x77", -+ [14037] = "\xb6\x78", [14038] = "\xb6\x79", [14039] = "\xb6\x7a", -+ [14040] = "\xb6\x7b", [14043] = "\xb6\x7d", [14045] = "\xb6\x7e", -+ [14046] = "\xd3\xf9", [14048] = "\xba\xa4", [14049] = "\xb6\x7c", -+ [14050] = "\xb0\xcf", [14051] = "\xbf\xde", [14054] = "\xb7\x21", -+ [14055] = "\xb7\x22", [14057] = "\xd3\xfa", [14058] = "\xb8\xc7", -+ [14061] = "\xb9\xf1", [14063] = "\xd3\xfc", [14064] = "\xd3\xfb", -+ [14065] = "\xb7\x23", [14066] = "\xb7\x24", [14067] = "\xca\xe0", -+ [14068] = "\xd3\xfd", [14071] = "\xb7\x25", [14072] = "\xd4\xa1", -+ [14073] = "\xd3\xfe", [14074] = "\xb7\x26", [14075] = "\xd4\xa2", -+ [14076] = "\xb7\x27", [14077] = "\xd4\xa3", [14079] = "\xb7\xf7", -+ [14081] = "\xb7\x28", [14082] = "\xb1\xe0", [14083] = "\xd4\xa4", -+ [14085] = "\xb7\x29", [14086] = "\xd4\xa6", [14088] = "\xd4\xa5", -+ [14090] = "\xb7\x2a", [14091] = "\xb7\x2b", [14092] = "\xd4\xa8", -+ [14093] = "\xb7\x2c", [14095] = "\xc5\xda", [14096] = "\xb7\x2d", -+ [14098] = "\xb7\x2e", [14099] = "\xb7\x2f", [14100] = "\xb7\x30", -+ [14101] = "\xb7\x31", [14102] = "\xd4\xa9", [14103] = "\xb0\xb5", -+ [14104] = "\xba\xdf", [14105] = "\xb7\x32", [14106] = "\xb7\x33", -+ [14108] = "\xb7\x34", [14109] = "\xb7\xbd", [14110] = "\xb7\x35", -+ [14111] = "\xb7\x36", [14112] = "\xc3\xcf", [14115] = "\xb7\x37", -+ [14116] = "\xb7\x38", [14119] = "\xd4\xaa", [14120] = "\xd4\xab", -+ [14123] = "\xd4\xad", [14125] = "\xb7\x39", [14126] = "\xb7\x3a", -+ [14127] = "\xb7\x3b", [14128] = "\xd4\xae", [14130] = "\xba\xe4", -+ [14133] = "\xb7\x3c", [14134] = "\xb7\x3d", [14135] = "\xb6\xd1", -+ [14138] = "\xcb\xb7", [14140] = "\xb7\x3e", [14141] = "\xb7\x3f", -+ [14142] = "\xd4\xac", [14143] = "\xd4\xaf", [14144] = "\xba\xc1", -+ [14145] = "\xb9\xa3", [14146] = "\xb7\x40", [14153] = "\xf4\x36", -+ [14161] = "\xd4\xb3", [14162] = "\xb7\x41", [14164] = "\xba\xa5", -+ [14165] = "\xb7\x42", [14166] = "\xc3\xb3", [14167] = "\xb7\x43", -+ [14168] = "\xb7\x44", [14169] = "\xd4\xb0", [14170] = "\xc4\xda", -+ [14171] = "\xb7\x45", [14173] = "\xb7\x46", [14174] = "\xb7\x47", -+ [14175] = "\xb7\x48", [14176] = "\xb7\x49", [14177] = "\xb7\x4a", -+ [14179] = "\xb7\x4b", [14180] = "\xb7\x4c", [14181] = "\xb7\x4d", -+ [14183] = "\xb7\x4e", [14185] = "\xb7\x4f", [14186] = "\xb7\x50", -+ [14187] = "\xb7\x51", [14188] = "\xb7\x52", [14190] = "\xb7\x53", -+ [14191] = "\xd4\xb4", [14193] = "\xb7\x54", [14194] = "\xbf\xe2", -+ [14195] = "\xb7\x55", [14200] = "\xd4\xb2", [14201] = "\xd4\xb5", -+ [14203] = "\xb7\xbf", [14204] = "\xb7\x56", [14211] = "\xd4\xb6", -+ [14212] = "\xb7\x57", [14213] = "\xb7\x60", [14215] = "\xb7\x58", -+ [14217] = "\xb7\x59", [14218] = "\xb7\x5a", [14220] = "\xb7\x5b", -+ [14221] = "\xb7\x5c", [14222] = "\xb7\x5d", [14223] = "\xb7\x5e", -+ [14224] = "\xd4\xb7", [14225] = "\xb7\x5f", [14226] = "\xb9\xa4", -+ [14227] = "\xb3\xc0", [14228] = "\xd4\xb9", [14231] = "\xb7\x61", -+ [14232] = "\xb7\x62", [14233] = "\xb7\x63", [14234] = "\xd4\xba", -+ [14236] = "\xb7\x64", [14240] = "\xd4\xbb", [14243] = "\xd4\xb8", -+ [14248] = "\xb7\x65", [14253] = "\xb7\x66", [14256] = "\xd4\xb1", -+ [14259] = "\xd4\xbc", [14262] = "\xd4\xbd", [14263] = "\xb7\x67", -+ [14264] = "\xb7\x68", [14267] = "\xcb\xe4", [14268] = "\xb7\x69", -+ [14270] = "\xbe\xeb", [14271] = "\xb7\x6a", [14274] = "\xd4\xbf", -+ [14275] = "\xd4\xc0", [14276] = "\xd4\xbe", [14277] = "\xb7\x6b", -+ [14278] = "\xd4\xc2", [14284] = "\xc7\xb8", [14285] = "\xb7\x6c", -+ [14286] = "\xb7\x6d", [14287] = "\xb0\xe8", [14288] = "\xc9\xd6", -+ [14289] = "\xb7\x7e", [14291] = "\xd4\xc3", [14292] = "\xb7\x6e", -+ [14294] = "\xb7\x6f", [14295] = "\xb7\x70", [14297] = "\xb7\x71", -+ [14301] = "\xb7\x72", [14304] = "\xb7\x73", [14308] = "\xbe\xfd", -+ [14309] = "\xb7\x74", [14310] = "\xb7\x75", [14311] = "\xbc\xb9", -+ [14312] = "\xb7\x76", [14313] = "\xc7\xdd", [14314] = "\xb4\xf0", -+ [14316] = "\xba\xeb", [14317] = "\xb7\x77", [14318] = "\xb7\x78", -+ [14319] = "\xb7\x79", [14320] = "\xcb\xd9", [14322] = "\xc6\xb2", -+ [14323] = "\xb7\x7a", [14324] = "\xb7\x7b", [14325] = "\xb7\xf8", -+ [14326] = "\xc2\xcf", [14328] = "\xb7\x7c", [14329] = "\xb7\x7d", -+ [14330] = "\xd4\xc1", [14331] = "\xd4\xc4", [14332] = "\xb8\x21", -+ [14333] = "\xb8\x22", [14341] = "\xc2\xc4", [14345] = "\xd4\xc5", -+ [14347] = "\xb8\x23", [14349] = "\xd4\xc6", [14350] = "\xb8\x24", -+ [14351] = "\xb8\x25", [14352] = "\xb8\x26", [14353] = "\xd4\xc8", -+ [14356] = "\xc4\xe9", [14358] = "\xb8\x27", [14359] = "\xb8\x28", -+ [14362] = "\xb4\xae", [14365] = "\xb8\x29", [14367] = "\xf4\xa1", -+ [14368] = "\xb1\xe1", [14369] = "\xca\xf3", [14370] = "\xb8\x2a", -+ [14372] = "\xbe\xec", [14373] = "\xc5\xc8", [14377] = "\xb8\x2b", -+ [14378] = "\xba\xe6", [14381] = "\xd4\xce", [14383] = "\xb8\x2c", -+ [14384] = "\xca\xbd", [14385] = "\xce\xdd", [14393] = "\xb8\x2d", -+ [14394] = "\xb2\xf4", [14395] = "\xd4\xca", [14396] = "\xb8\x2e", -+ [14397] = "\xb8\x2f", [14399] = "\xb8\x30", [14400] = "\xb8\x31", -+ [14401] = "\xc1\xba", [14402] = "\xd4\xcd", [14404] = "\xc5\xe3", -+ [14405] = "\xb8\x32", [14407] = "\xc5\xc9", [14408] = "\xc5\xe4", -+ [14409] = "\xc8\xb9", [14410] = "\xc4\xcd", [14414] = "\xba\xc9", -+ [14415] = "\xb8\x33", [14417] = "\xb8\x34", [14418] = "\xd4\xc9", -+ [14420] = "\xb8\x35", [14423] = "\xb8\x36", [14424] = "\xb8\x37", -+ [14425] = "\xb1\xf6", [14427] = "\xc5\xb6", [14432] = "\xd4\xcb", -+ [14434] = "\xd4\xc7", [14437] = "\xbf\xd0", [14440] = "\xb8\x38", -+ [14441] = "\xd4\xcf", [14444] = "\xb8\x39", [14446] = "\xbd\xce", -+ [14447] = "\xb8\x3a", [14448] = "\xb8\x3b", [14449] = "\xb8\x3c", -+ [14451] = "\xb6\xad", [14453] = "\xd4\xd0", [14455] = "\xb8\x3d", -+ [14456] = "\xb8\x3e", [14457] = "\xb8\x3f", [14458] = "\xb8\x40", -+ [14460] = "\xb8\x41", [14461] = "\xb8\x42", [14463] = "\xb8\x43", -+ [14464] = "\xb8\x44", [14467] = "\xca\xe8", [14468] = "\xb8\x45", -+ [14470] = "\xb8\x46", [14471] = "\xc1\xfd", [14476] = "\xc4\xc6", -+ [14477] = "\xb8\x47", [14478] = "\xf4\x39", [14479] = "\xd4\xd2", -+ [14480] = "\xb8\x48", [14481] = "\xb8\x49", [14482] = "\xb8\x4a", -+ [14486] = "\xb8\x4b", [14488] = "\xcb\xcf", [14489] = "\xb8\x4c", -+ [14491] = "\xd4\xd3", [14494] = "\xd4\xd8", [14497] = "\xb8\x4d", -+ [14498] = "\xb8\x4e", [14499] = "\xca\xaf", [14504] = "\xd4\xd7", -+ [14505] = "\xd4\xd1", [14506] = "\xd4\xd4", [14507] = "\xd4\xd6", -+ [14508] = "\xb8\x50", [14510] = "\xba\xa6", [14513] = "\xca\xc9", -+ [14514] = "\xb8\x51", [14516] = "\xb8\x4f", [14517] = "\xd4\xd9", -+ [14519] = "\xc3\xc5", [14520] = "\xb8\x52", [14522] = "\xb2\xf5", -+ [14524] = "\xbe\xed", [14525] = "\xb8\x53", [14526] = "\xb8\x54", -+ [14528] = "\xb8\x55", [14529] = "\xd4\xdb", [14530] = "\xb8\x56", -+ [14531] = "\xd4\xda", [14532] = "\xb8\x57", [14533] = "\xb9\xe8", -+ [14534] = "\xb8\x58", [14535] = "\xd4\xdc", [14536] = "\xd4\xde", -+ [14537] = "\xd4\xdd", [14538] = "\xb8\x59", [14540] = "\xd4\xe0", -+ [14541] = "\xb8\x5a", [14542] = "\xd4\xd5", [14543] = "\xd4\xe2", -+ [14545] = "\xb8\x5b", [14546] = "\xb8\x5c", [14548] = "\xd4\xe1", -+ [14549] = "\xd4\xdf", [14553] = "\xb8\x5d", [14555] = "\xbb\xce", -+ [14556] = "\xbf\xd1", [14558] = "\xc1\xd4", [14559] = "\xd4\xe3", -+ [14560] = "\xc0\xbc", [14561] = "\xb0\xed", [14562] = "\xc7\xe4", -+ [14563] = "\xb8\x5e", [14567] = "\xc4\xdb", [14569] = "\xd4\xe5", -+ [14570] = "\xd4\xe4", [14571] = "\xd4\xe6", [14572] = "\xd4\xe7", -+ [14573] = "\xd4\xe8", [14578] = "\xd4\xe9", [14581] = "\xb8\x5f", -+ [14582] = "\xb8\x60", [14585] = "\xca\xd1", [14586] = "\xd4\xea", -+ [14587] = "\xb8\x61", [14588] = "\xb8\x62", [14591] = "\xb2\xc6", -+ [14592] = "\xd4\xeb", [14594] = "\xb8\x63", [14595] = "\xb8\x64", -+ [14596] = "\xb8\x65", [14597] = "\xcd\xbc", [14598] = "\xb3\xb0", -+ [14600] = "\xd2\xc9", [14601] = "\xbd\xc8", [14602] = "\xc2\xbf", -+ [14603] = "\xd4\xec", [14604] = "\xcc\xeb", [14605] = "\xb8\x67", -+ [14609] = "\xb8\x68", [14610] = "\xcc\xb4", [14611] = "\xb8\x69", -+ [14612] = "\xb8\x6a", [14613] = "\xd4\xee", [14615] = "\xc2\xe7", -+ [14616] = "\xb8\x6b", [14617] = "\xc5\xb7", [14618] = "\xc2\xc0", -+ [14619] = "\xc9\xd7", [14620] = "\xd4\xef", [14621] = "\xd4\xf0", -+ [14622] = "\xb1\xfb", [14623] = "\xb8\x6c", [14624] = "\xb8\x6d", -+ [14625] = "\xbc\xba", [14626] = "\xd4\xf1", [14627] = "\xb8\x6e", -+ [14629] = "\xb8\x6f", [14630] = "\xb8\x70", [14631] = "\xb0\xd0", -+ [14632] = "\xd4\xf2", [14638] = "\xd4\xf3", [14639] = "\xb8\x71", -+ [14643] = "\xb8\x72", [14644] = "\xb1\xe2", [14646] = "\xb8\x73", -+ [14647] = "\xb4\xf1", [14648] = "\xc6\xe0", [14649] = "\xca\xf4", -+ [14654] = "\xd4\xf7", [14655] = "\xc1\xd5", [14656] = "\xd4\xf6", -+ [14657] = "\xb7\xc0", [14658] = "\xb8\x74", [14659] = "\xb8\x75", -+ [14660] = "\xcb\xdb", [14661] = "\xd4\xf5", [14663] = "\xc5\xe5", -+ [14664] = "\xd4\xf9", [14665] = "\xb8\x76", [14666] = "\xd4\xf8", -+ [14667] = "\xb8\x77", [14669] = "\xb8\x78", [14670] = "\xb8\x79", -+ [14671] = "\xb8\x7a", [14672] = "\xd4\xfb", [14673] = "\xb8\x7b", -+ [14674] = "\xd4\xfa", [14675] = "\xb8\x7c", [14677] = "\xb1\xfc", -+ [14679] = "\xd4\xfc", [14680] = "\xbe\xa9", [14681] = "\xd4\xfe", -+ [14682] = "\xc3\xa5", [14683] = "\xb8\x7d", [14684] = "\xd4\xfd", -+ [14685] = "\xb8\x7e", [14686] = "\xca\xb3", [14687] = "\xb9\x21", -+ [14690] = "\xb9\x22", [14691] = "\xbd\xf7", [14692] = "\xc5\xdb", -+ [14693] = "\xb9\x23", [14694] = "\xb9\x24", [14696] = "\xd5\xa1", -+ [14697] = "\xb9\x25", [14699] = "\xb9\x26", [14700] = "\xb9\x27", -+ [14701] = "\xb9\xa5", [14705] = "\xd5\xa2", [14706] = "\xc7\xa1", -+ [14707] = "\xc8\xde", [14708] = "\xcc\xd1", [14714] = "\xc7\xa5", -+ [14715] = "\xb9\x28", [14716] = "\xb9\x29", [14717] = "\xd5\xab", -+ [14718] = "\xb9\x2a", [14722] = "\xb9\x2b", [14723] = "\xb5\xb8", -+ [14725] = "\xb9\x2c", [14726] = "\xcd\xc5", [14727] = "\xb9\x2d", -+ [14729] = "\xcc\xaf", [14731] = "\xd6\xac", [14733] = "\xd5\xa3", -+ [14735] = "\xb9\x2e", [14739] = "\xd5\xa6", [14740] = "\xb9\x2f", -+ [14741] = "\xc2\xc5", [14743] = "\xb9\x30", [14744] = "\xcb\xb8", -+ [14748] = "\xc5\xca", [14749] = "\xb9\x31", [14750] = "\xb9\x32", -+ [14751] = "\xb9\x33", [14752] = "\xb9\x34", [14754] = "\xd5\xa7", -+ [14755] = "\xb9\x35", [14759] = "\xb9\x36", [14761] = "\xcb\xe5", -+ [14762] = "\xb9\x37", [14763] = "\xba\xca", [14764] = "\xb9\x38", -+ [14766] = "\xbe\xaa", [14769] = "\xb9\x39", [14771] = "\xb9\x3a", -+ [14772] = "\xb9\x3b", [14774] = "\xd5\xa8", [14776] = "\xb9\x3c", -+ [14777] = "\xbb\xd0", [14778] = "\xb9\x3d", [14779] = "\xbb\xcf", -+ [14781] = "\xb9\x3e", [14784] = "\xb0\xb9", [14785] = "\xb8\xc8", -+ [14786] = "\xb9\x3f", [14787] = "\xc0\xab", [14788] = "\xb0\xd1", -+ [14793] = "\xd5\xac", [14794] = "\xd5\xad", [14796] = "\xd5\xaa", -+ [14797] = "\xb9\x40", [14798] = "\xb9\x41", [14799] = "\xb9\x42", -+ [14803] = "\xb9\x43", [14804] = "\xb9\x44", [14805] = "\xb1\xb8", -+ [14806] = "\xb4\xaf", [14807] = "\xb9\x45", [14808] = "\xd5\xa9", -+ [14810] = "\xcc\xc5", [14811] = "\xc9\xb1", [14814] = "\xb9\x46", -+ [14815] = "\xb9\x47", [14817] = "\xb9\x48", [14818] = "\xb9\x49", -+ [14820] = "\xb9\x4a", [14822] = "\xb0\xa8", [14823] = "\xb9\x4b", -+ [14827] = "\xb0\xf9", [14831] = "\xbb\xd1", [14832] = "\xb9\x4c", -+ [14833] = "\xb0\xd2", [14835] = "\xb0\xa3", [14836] = "\xb9\x4d", -+ [14841] = "\xd5\xb2", [14844] = "\xb9\x4e", [14845] = "\xb9\x4f", -+ [14846] = "\xb9\x50", [14849] = "\xd5\xb0", [14850] = "\xb9\x51", -+ [14851] = "\xb9\x52", [14856] = "\xcc\xbc", [14858] = "\xd5\xb3", -+ [14860] = "\xd5\xb1", [14862] = "\xb9\x53", [14863] = "\xd5\xaf", -+ [14864] = "\xbf\xb1", [14867] = "\xb9\x54", [14868] = "\xb9\x55", -+ [14869] = "\xd5\xae", [14871] = "\xb9\x56", [14872] = "\xb9\x57", -+ [14873] = "\xca\xda", [14874] = "\xb9\x58", [14877] = "\xb9\x59", -+ [14879] = "\xb8\xe4", [14880] = "\xb9\x5a", [14885] = "\xd5\xb7", -+ [14886] = "\xd5\xb8", [14892] = "\xbe\xab", [14896] = "\xd5\xb4", -+ [14897] = "\xcf\xac", [14900] = "\xb9\x5b", [14901] = "\xb9\x5c", -+ [14902] = "\xc7\xcc", [14903] = "\xb9\x5d", [14904] = "\xb9\x5e", -+ [14905] = "\xd5\xb6", [14908] = "\xb9\x5f", [14912] = "\xb9\x60", -+ [14917] = "\xb9\x61", [14922] = "\xba\xa7", [14926] = "\xb9\x62", -+ [14930] = "\xd5\xb9", [14931] = "\xb9\x63", [14933] = "\xb9\x64", -+ [14934] = "\xc9\xd8", [14935] = "\xb9\x65", [14938] = "\xd5\xba", -+ [14940] = "\xd5\xb5", [14941] = "\xb9\x66", [14951] = "\xb9\x67", -+ [14954] = "\xb9\x68", [14955] = "\xb9\x69", [14958] = "\xb9\x6a", -+ [14959] = "\xcc\xbb", [14971] = "\xb9\x6b", [14976] = "\xb9\x6c", -+ [14978] = "\xc7\xde", [14979] = "\xb9\x6d", [14982] = "\xb9\x6e", -+ [14985] = "\xb9\x6f", [14986] = "\xd5\xbb", [14987] = "\xc9\xb2", -+ [14988] = "\xb9\x70", [14990] = "\xb9\x71", [14991] = "\xb9\x72", -+ [14992] = "\xb9\x73", [14994] = "\xb9\x74", [14999] = "\xb9\x75", -+ [15004] = "\xb9\x76", [15009] = "\xb9\x77", [15010] = "\xb9\x78", -+ [15011] = "\xb9\x79", [15013] = "\xb9\x7a", [15016] = "\xb9\x7b", -+ [15018] = "\xb9\x7c", [15019] = "\xb9\x7d", [15020] = "\xd5\xbc", -+ [15021] = "\xd5\xc0", [15022] = "\xd5\xbd", [15023] = "\xb9\x7e", -+ [15025] = "\xb2\xc7", [15026] = "\xd5\xbf", [15028] = "\xba\x21", -+ [15030] = "\xba\x22", [15032] = "\xba\x23", [15033] = "\xbc\xbb", -+ [15035] = "\xd5\xbe", [15036] = "\xb7\xf9", [15039] = "\xba\x24", -+ [15040] = "\xd5\xcc", [15046] = "\xd5\xc5", [15047] = "\xd5\xc2", -+ [15050] = "\xba\x25", [15052] = "\xba\x26", [15056] = "\xba\x27", -+ [15057] = "\xc3\xe4", [15059] = "\xd5\xc1", [15061] = "\xba\x28", -+ [15062] = "\xd5\xc3", [15065] = "\xd5\xc4", [15066] = "\xba\x29", -+ [15070] = "\xba\x2a", [15077] = "\xba\x2b", [15078] = "\xba\x2c", -+ [15082] = "\xd5\xc6", [15083] = "\xd5\xc7", [15085] = "\xba\x2d", -+ [15088] = "\xba\x2e", [15089] = "\xba\x2f", [15096] = "\xba\x30", -+ [15097] = "\xb4\xf2", [15099] = "\xd5\xc9", [15100] = "\xd5\xc8", -+ [15110] = "\xd5\xca", [15111] = "\xba\x31", [15113] = "\xba\x33", -+ [15115] = "\xba\x34", [15117] = "\xba\x35", [15121] = "\xba\x36", -+ [15122] = "\xbe\xee", [15125] = "\xba\x37", [15130] = "\xd5\xcd", -+ [15132] = "\xc4\xdc", [15133] = "\xba\x38", [15136] = "\xb1\xc5", -+ [15138] = "\xd5\xcb", [15140] = "\xba\x32", [15142] = "\xd5\xce", -+ [15144] = "\xba\x39", [15150] = "\xd5\xcf", [15152] = "\xd5\xd2", -+ [15153] = "\xba\x3a", [15155] = "\xd5\xd0", [15157] = "\xd5\xd1", -+ [15163] = "\xba\x3b", [15164] = "\xba\x3c", [15168] = "\xbb\xd2", -+ [15169] = "\xd5\xd3", [15170] = "\xba\x3d", [15172] = "\xb9\xa6", -+ [15173] = "\xd5\xd4", [15174] = "\xba\x3e", [15175] = "\xbb\xfa", -+ [15176] = "\xc2\xb8", [15178] = "\xd5\xd5", [15179] = "\xd5\xd6", -+ [15180] = "\xbb\xda", [15181] = "\xb9\xa7", [15182] = "\xba\x3f", -+ [15183] = "\xcc\xd2", [15187] = "\xb5\xa8", [15188] = "\xb8\xc9", -+ [15189] = "\xd5\xd7", [15190] = "\xb3\xd8", [15192] = "\xba\x40", -+ [15193] = "\xd5\xd8", [15195] = "\xc2\xb9", [15198] = "\xba\x41", -+ [15199] = "\xba\x42", [15200] = "\xd5\xd9", [15201] = "\xd6\xa3", -+ [15203] = "\xd5\xda", [15205] = "\xd5\xdb", [15208] = "\xd5\xdc", -+ [15210] = "\xd5\xde", [15212] = "\xba\x43", [15213] = "\xba\x44", -+ [15214] = "\xba\x45", [15215] = "\xba\x46", [15216] = "\xd5\xdf", -+ [15217] = "\xba\x47", [15219] = "\xd5\xe0", [15220] = "\xba\x48", -+ [15221] = "\xc2\xf0", [15222] = "\xba\x49", [15223] = "\xb1\xa7", -+ [15224] = "\xbc\xe9", [15225] = "\xb0\xc2", [15226] = "\xba\x4a", -+ [15227] = "\xc1\xd7", [15228] = "\xb4\xb0", [15229] = "\xbc\xb5", -+ [15230] = "\xba\x4b", [15231] = "\xb9\xa8", [15232] = "\xba\x4c", -+ [15233] = "\xba\x4d", [15235] = "\xba\x4e", [15236] = "\xba\x4f", -+ [15237] = "\xc5\xe6", [15238] = "\xba\x50", [15239] = "\xbd\xa1", -+ [15240] = "\xb4\xb1", [15241] = "\xc3\xe8", [15242] = "\xc4\xea", -+ [15243] = "\xb0\xb8", [15244] = "\xb5\xb9", [15245] = "\xca\xf5", -+ [15247] = "\xbc\xc2", [15250] = "\xb5\xd2", [15251] = "\xc0\xeb", -+ [15252] = "\xbc\xbc", [15253] = "\xcd\xa8", [15254] = "\xd5\xe1", -+ [15256] = "\xba\x51", [15257] = "\xba\x52", [15260] = "\xba\x53", -+ [15261] = "\xba\x54", [15262] = "\xb5\xdc", [15263] = "\xba\x55", -+ [15264] = "\xba\xcb", [15265] = "\xba\x56", [15266] = "\xba\x57", -+ [15267] = "\xb3\xb2", [15268] = "\xb1\xe3", [15269] = "\xbe\xac", -+ [15270] = "\xb2\xc8", [15271] = "\xba\x58", [15272] = "\xd5\xe2", -+ [15273] = "\xcd\xc6", [15274] = "\xba\x59", [15276] = "\xba\x5a", -+ [15279] = "\xbd\xc9", [15280] = "\xba\x5b", [15281] = "\xba\x5c", -+ [15282] = "\xbc\xe4", [15283] = "\xd5\xe3", [15284] = "\xb4\xf3", -+ [15285] = "\xc6\xd2", [15286] = "\xcc\xa9", [15287] = "\xd5\xe4", -+ [15289] = "\xd5\xe5", [15292] = "\xc9\xd9", [15293] = "\xba\x5d", -+ [15295] = "\xba\x5e", [15296] = "\xd5\xe7", [15298] = "\xb4\xa8", -+ [15299] = "\xb6\xf7", [15300] = "\xd5\xe6", [15302] = "\xba\x5f", -+ [15303] = "\xba\x60", [15304] = "\xba\x61", [15305] = "\xba\x62", -+ [15306] = "\xba\x63", [15307] = "\xb4\xb2", [15309] = "\xbf\xb2", -+ [15310] = "\xd5\xeb", [15311] = "\xbb\xa1", [15312] = "\xba\x64", -+ [15313] = "\xb2\xc9", [15314] = "\xd5\xea", [15316] = "\xd5\xe8", -+ [15317] = "\xd5\xec", [15318] = "\xd5\xe9", [15319] = "\xc7\xab", -+ [15320] = "\xdc\xcd", [15321] = "\xbf\xb3", [15323] = "\xd5\xed", -+ [15324] = "\xf4\x3a", [15326] = "\xce\xc0", [15327] = "\xba\x65", -+ [15328] = "\xd5\xee", [15329] = "\xba\x66", [15331] = "\xd5\xf0", -+ [15332] = "\xba\x67", [15333] = "\xc3\xfe", [15334] = "\xd5\xef", -+ [15336] = "\xc0\xa3", [15338] = "\xbb\xfb", [15341] = "\xba\x68", -+ [15342] = "\xc2\xd0", [15343] = "\xbc\xf7", [15345] = "\xc9\xf5", -+ [15346] = "\xc0\xec", [15348] = "\xbc\xcd", [15349] = "\xd5\xf1", -+ [15350] = "\xbe\xad", [15351] = "\xd5\xf2", [15352] = "\xd5\xf3", -+ [15353] = "\xb0\xd3", [15354] = "\xc2\xba", [15355] = "\xbf\xd2", -+ [15356] = "\xba\x69", [15357] = "\xd5\xf4", [15358] = "\xc6\xb3", -+ [15359] = "\xbe\xae", [15361] = "\xbe\xaf", [15363] = "\xd5\xf5", -+ [15366] = "\xc0\xed", [15367] = "\xba\x6a", [15370] = "\xbe\xb0", -+ [15374] = "\xba\x6b", [15375] = "\xba\x6c", [15376] = "\xd5\xf6", -+ [15378] = "\xd5\xf7", [15379] = "\xba\x6d", [15380] = "\xcc\xe0", -+ [15382] = "\xba\x6e", [15384] = "\xd5\xf8", [15385] = "\xba\x6f", -+ [15387] = "\xba\x70", [15388] = "\xba\x71", [15389] = "\xb6\xc6", -+ [15390] = "\xba\x72", [15392] = "\xba\x73", [15393] = "\xbd\xa2", -+ [15394] = "\xba\x74", [15397] = "\xba\x75", [15398] = "\xba\x76", -+ [15400] = "\xd5\xf9", [15401] = "\xd5\xfa", [15402] = "\xbc\xdc", -+ [15403] = "\xbf\xac", [15404] = "\xc6\xf4", [15405] = "\xbf\xd4", -+ [15406] = "\xc8\xf8", [15407] = "\xc7\xa2", [15408] = "\xb6\xc9", -+ [15409] = "\xd5\xfb", [15413] = "\xb5\xef", [15414] = "\xd5\xfc", -+ [15416] = "\xb6\xfe", [15418] = "\xc6\xcf", [15419] = "\xb2\xb0", -+ [15421] = "\xbb\xd3", [15422] = "\xd5\xfd", [15423] = "\xd6\xa2", -+ [15424] = "\xd6\xa1", [15425] = "\xb6\xfd", [15427] = "\xd5\xfe", -+ [15429] = "\xc5\xb8", [15433] = "\xba\x77", [15434] = "\xba\x78", -+ [15436] = "\xba\x79", [15438] = "\xc2\xb0", [15440] = "\xc5\xcb", -+ [15441] = "\xbc\xc8", [15442] = "\xba\x7a", [15443] = "\xba\x7b", -+ [15444] = "\xc1\xd8", [15445] = "\xcd\xfa", [15447] = "\xba\x7c", -+ [15448] = "\xba\x7d", [15449] = "\xba\x7e", [15452] = "\xd6\xa4", -+ [15453] = "\xbb\x21", [15454] = "\xd6\xa5", [15455] = "\xc6\xd6", -+ [15456] = "\xbb\x22", [15457] = "\xbb\xb3", [15460] = "\xbb\x23", -+ [15461] = "\xbb\x24", [15462] = "\xd6\xa7", [15465] = "\xd6\xa8", -+ [15466] = "\xbb\x25", [15467] = "\xbb\x26", [15468] = "\xbb\x27", -+ [15469] = "\xbb\x28", [15479] = "\xbb\x29", [15480] = "\xbb\x2a", -+ [15482] = "\xbb\x2b", [15484] = "\xd6\xa9", [15487] = "\xbb\x2c", -+ [15488] = "\xb4\xf4", [15489] = "\xd6\xaa", [15490] = "\xbb\x2d", -+ [15492] = "\xd6\xab", [15501] = "\xbb\x2e", [15503] = "\xbb\x2f", -+ [15504] = "\xbb\x30", [15505] = "\xb2\xac", [15506] = "\xbb\x31", -+ [15507] = "\xbb\x32", [15510] = "\xbb\x33", [15512] = "\xc1\xbb", -+ [15513] = "\xb4\xe4", [15514] = "\xbb\x34", [15515] = "\xd6\xad", -+ [15516] = "\xcc\xa8", [15521] = "\xc2\xd2", [15522] = "\xbb\x35", -+ [15523] = "\xb3\xd9", [15524] = "\xbb\x36", [15525] = "\xbb\x37", -+ [15526] = "\xd6\xaf", [15527] = "\xd6\xb1", [15528] = "\xb4\xdf", -+ [15530] = "\xbb\x38", [15531] = "\xd6\xae", [15532] = "\xd6\xb0", -+ [15534] = "\xd6\xb3", [15541] = "\xd6\xb2", [15543] = "\xd6\xb4", -+ [15545] = "\xbb\x39", [15547] = "\xbb\x3a", [15554] = "\xbb\x3b", -+ [15559] = "\xbb\x3d", [15561] = "\xd6\xb5", [15565] = "\xbb\x3c", -+ [15568] = "\xc6\xbd", [15569] = "\xb6\xae", [15576] = "\xb2\xe5", -+ [15577] = "\xd6\xb6", [15578] = "\xd6\xbb", [15581] = "\xd6\xb9", -+ [15582] = "\xbb\x3e", [15583] = "\xca\xf7", [15584] = "\xca\xf6", -+ [15585] = "\xbb\x3f", [15586] = "\xbb\x40", [15588] = "\xbb\x41", -+ [15589] = "\xf4\x3b", [15590] = "\xc5\xe7", [15594] = "\xd6\xb8", -+ [15595] = "\xbd\xd4", [15597] = "\xd6\xb7", [15601] = "\xbb\x42", -+ [15606] = "\xbb\x43", [15607] = "\xbf\xf2", [15611] = "\xd6\xbc", -+ [15613] = "\xbb\x44", [15614] = "\xba\xea", [15617] = "\xd6\xc2", -+ [15618] = "\xbb\x45", [15620] = "\xd6\xc3", [15621] = "\xd6\xbd", -+ [15622] = "\xb3\xb3", [15623] = "\xd6\xbe", [15624] = "\xd6\xc7", -+ [15625] = "\xd6\xc6", [15626] = "\xd6\xc5", [15627] = "\xd6\xc1", -+ [15631] = "\xd6\xc0", [15634] = "\xd6\xc4", [15635] = "\xbb\x47", -+ [15636] = "\xbb\x48", [15638] = "\xbb\x49", [15639] = "\xbb\x4a", -+ [15641] = "\xca\xf8", [15643] = "\xbb\x46", [15649] = "\xbb\x4b", -+ [15652] = "\xbb\x4c", [15657] = "\xbb\x4d", [15661] = "\xbb\x4e", -+ [15663] = "\xbb\x4f", [15666] = "\xbb\x50", [15667] = "\xbb\x51", -+ [15670] = "\xbb\x52", [15672] = "\xbb\x53", [15674] = "\xbb\x57", -+ [15675] = "\xd6\xcb", [15676] = "\xd6\xc8", [15678] = "\xd6\xca", -+ [15680] = "\xcd\xf2", [15681] = "\xbb\x55", [15682] = "\xd6\xc9", -+ [15683] = "\xf4\x3c", [15685] = "\xbb\x54", [15689] = "\xbb\x56", -+ [15692] = "\xd6\xbf", [15695] = "\xbb\x58", [15696] = "\xbb\x59", -+ [15697] = "\xbb\x5a", [15698] = "\xbb\x5b", [15700] = "\xbb\x5c", -+ [15705] = "\xbf\xf3", [15706] = "\xbb\x5d", [15708] = "\xd6\xcc", -+ [15709] = "\xbb\x5e", [15711] = "\xba\xb7", [15712] = "\xbb\x5f", -+ [15715] = "\xd6\xcd", [15718] = "\xd6\xce", [15721] = "\xbb\x60", -+ [15722] = "\xbb\x61", [15726] = "\xbb\x62", [15727] = "\xbb\x63", -+ [15729] = "\xbb\x64", [15730] = "\xd6\xd1", [15731] = "\xbb\x65", -+ [15732] = "\xd6\xd0", [15735] = "\xd6\xcf", [15736] = "\xbb\x66", -+ [15738] = "\xbb\x67", [15739] = "\xc5\xe8", [15740] = "\xd6\xba", -+ [15744] = "\xd6\xd7", [15746] = "\xbb\x68", [15747] = "\xbb\x69", -+ [15748] = "\xbb\x6a", [15749] = "\xbb\x6b", [15753] = "\xbb\x6c", -+ [15755] = "\xbb\x6d", [15757] = "\xd6\xd3", [15759] = "\xbb\x6e", -+ [15760] = "\xbb\x6f", [15762] = "\xd6\xd2", [15767] = "\xbb\x70", -+ [15771] = "\xbb\x71", [15772] = "\xd6\xd4", [15774] = "\xd6\xd5", -+ [15776] = "\xbb\x72", [15778] = "\xe6\x74", [15780] = "\xbb\x73", -+ [15783] = "\xd6\xd8", [15784] = "\xbb\x74", [15785] = "\xbb\x75", -+ [15786] = "\xce\xe6", [15788] = "\xd6\xd9", [15789] = "\xd6\xd6", -+ [15795] = "\xbb\x76", [15799] = "\xbb\x77", [15801] = "\xd6\xda", -+ [15803] = "\xbb\x78", [15804] = "\xb4\xe0", [15805] = "\xd6\xdb", -+ [15806] = "\xbb\x7a", [15808] = "\xbb\x79", [15810] = "\xd6\xdd", -+ [15811] = "\xd6\xdc", [15814] = "\xd6\xde", [15816] = "\xbb\x7b", -+ [15817] = "\xbb\x7c", [15819] = "\xd6\xdf", [15821] = "\xc0\xee", -+ [15822] = "\xbd\xa3", [15824] = "\xbb\x7d", [15825] = "\xbd\xe4", -+ [15827] = "\xc1\xe3", [15828] = "\xbb\x7e", [15829] = "\xb9\xa9", -+ [15830] = "\xba\xb8", [15831] = "\xb9\xaa", [15832] = "\xb5\xf0", -+ [15833] = "\xbc\x21", [15835] = "\xd6\xe0", [15838] = "\xba\xb9", -+ [15841] = "\xb8\xca", [15842] = "\xd6\xe1", [15843] = "\xcc\xa6", -+ [15844] = "\xc7\xc3", [15845] = "\xd6\xe2", [15847] = "\xb9\xab", -+ [15848] = "\xbc\x22", [15849] = "\xbc\x23", [15851] = "\xb4\xac", -+ [15853] = "\xc3\xa7", [15854] = "\xb6\xd2", [15856] = "\xbc\x24", -+ [15858] = "\xbb\xd4", [15859] = "\xc9\xdb", [15862] = "\xc8\xc1", -+ [15863] = "\xbc\x25", [15867] = "\xd6\xe3", [15868] = "\xb4\xf5", -+ [15869] = "\xbc\x26", [15873] = "\xd6\xe6", [15874] = "\xbc\x27", -+ [15876] = "\xbc\x28", [15877] = "\xbc\x29", [15878] = "\xc4\xa1", -+ [15880] = "\xbc\x2a", [15881] = "\xd6\xe5", [15882] = "\xd6\xe4", -+ [15883] = "\xd6\xe7", [15885] = "\xc4\xeb", [15887] = "\xbc\x2b", -+ [15888] = "\xbc\x2c", [15893] = "\xbf\xe3", [15896] = "\xbc\x2e", -+ [15899] = "\xbb\xd5", [15901] = "\xc0\xca", [15902] = "\xbc\x2d", -+ [15903] = "\xc2\xd3", [15904] = "\xb5\xa2", [15906] = "\xbc\x2f", -+ [15907] = "\xc4\xa2", [15909] = "\xbc\x30", [15910] = "\xd6\xe8", -+ [15911] = "\xd6\xe9", [15912] = "\xbe\xef", [15917] = "\xcb\xb9", -+ [15918] = "\xbc\x31", [15920] = "\xd6\xec", [15923] = "\xd6\xeb", -+ [15924] = "\xd6\xea", [15925] = "\xc9\xfd", [15927] = "\xd6\xf3", -+ [15929] = "\xbc\x34", [15931] = "\xbc\x32", [15932] = "\xcb\xda", -+ [15934] = "\xd6\xed", [15936] = "\xbc\x33", [15937] = "\xbc\x35", -+ [15940] = "\xd6\xef", [15941] = "\xcb\xeb", [15942] = "\xbc\x36", -+ [15943] = "\xd6\xee", [15944] = "\xbc\x37", [15947] = "\xbc\x38", -+ [15948] = "\xbc\x39", [15950] = "\xbc\x3a", [15951] = "\xd6\xf0", -+ [15953] = "\xc8\xa8", [15954] = "\xd6\xf1", [15955] = "\xca\xbe", -+ [15956] = "\xd6\xf2", [15960] = "\xbc\x3b", [15962] = "\xbc\x3c", -+ [15963] = "\xbc\x3d", [15964] = "\xbc\x3e", [15965] = "\xbc\x3f", -+ [15966] = "\xbc\x40", [15968] = "\xbc\x41", [15970] = "\xb4\xb3", -+ [15971] = "\xca\xbf", [15972] = "\xc7\xaf", [15973] = "\xd6\xf4", -+ [15974] = "\xd6\xf5", [15976] = "\xb9\xac", [15977] = "\xb4\xb4", -+ [15978] = "\xd6\xf6", [15979] = "\xb8\xb8", [15980] = "\xcd\xc4", -+ [15981] = "\xcd\xa9", [15982] = "\xb4\xf6", [15983] = "\xd6\xf8", -+ [15984] = "\xbc\x42", [15985] = "\xc4\xa3", [15987] = "\xb9\xad", -+ [15988] = "\xbe\xb1", [15991] = "\xc8\xdf", [15994] = "\xbe\xb2", -+ [15995] = "\xbc\x43", [15998] = "\xbc\x44", [15999] = "\xbd\xf8", -+ [16005] = "\xc4\xec", [16006] = "\xca\xf9", [16007] = "\xc5\xb9", -+ [16010] = "\xb9\xae", [16012] = "\xc9\xdc", [16016] = "\xd6\xf9", -+ [16018] = "\xbc\x45", [16020] = "\xbc\x46", [16021] = "\xbc\x47", -+ [16022] = "\xc5\xd9", [16023] = "\xba\xc2", [16024] = "\xbc\x48", -+ [16026] = "\xbc\x49", [16027] = "\xb8\xcb", [16028] = "\xbc\x4a", -+ [16029] = "\xc4\xed", [16033] = "\xbc\x4b", [16035] = "\xbc\x4c", -+ [16037] = "\xb0\xc3", [16038] = "\xbd\xee", [16039] = "\xb9\xaf", -+ [16040] = "\xcd\xc7", [16045] = "\xbc\x4d", [16046] = "\xbc\x4e", -+ [16047] = "\xbc\x4f", [16049] = "\xd6\xfa", [16050] = "\xd6\xfb", -+ [16051] = "\xc7\xd1", [16054] = "\xbc\x50", [16056] = "\xd6\xfc", -+ [16057] = "\xce\xf7", [16058] = "\xcf\xad", [16059] = "\xbc\x52", -+ [16060] = "\xbc\x51", [16062] = "\xbc\x53", [16063] = "\xd6\xfe", -+ [16064] = "\xd6\xfd", [16065] = "\xbc\x54", [16066] = "\xbc\x55", -+ [16067] = "\xb3\xc7", [16068] = "\xbc\x56", [16069] = "\xbc\x57", -+ [16070] = "\xd7\xa1", [16074] = "\xd7\xa4", [16075] = "\xd7\xa5", -+ [16076] = "\xbc\x58", [16077] = "\xd7\xa3", [16078] = "\xbc\x59", -+ [16079] = "\xc9\xc0", [16080] = "\xbe\xb3", [16081] = "\xd7\xa7", -+ [16082] = "\xd7\xa6", [16083] = "\xd7\xa2", [16085] = "\xbc\x5a", -+ [16088] = "\xd7\xa8", [16089] = "\xd7\xa9", [16091] = "\xbc\x5b", -+ [16092] = "\xd7\xaa", [16096] = "\xd7\xad", [16097] = "\xd7\xab", -+ [16099] = "\xd7\xac", [16100] = "\xd7\xae", [16102] = "\xb1\xe4", -+ [16103] = "\xc4\xee", [16104] = "\xd7\xaf", [16106] = "\xb7\xfa", -+ [16107] = "\xb2\xf6", [16108] = "\xc7\xb6", [16110] = "\xd7\xb0", -+ [16111] = "\xc6\xfb", [16113] = "\xca\xdb", [16114] = "\xbc\x5c", -+ [16115] = "\xd7\xb1", [16116] = "\xcf\xae", [16118] = "\xbc\x5d", -+ [16119] = "\xbc\x5e", [16120] = "\xbc\x5f", [16121] = "\xd7\xb2", -+ [16122] = "\xca\xc0", [16123] = "\xd7\xb5", [16124] = "\xd0\xa1", -+ [16125] = "\xd0\xb1", [16126] = "\xbc\x60", [16127] = "\xbc\xb0", -+ [16128] = "\xc6\xf5", [16129] = "\xd7\xb6", [16131] = "\xb5\xdd", -+ [16132] = "\xc4\xa4", [16133] = "\xb0\xfa", [16134] = "\xd7\xb7", -+ [16135] = "\xca\xa6", [16136] = "\xb9\xb0", [16137] = "\xbc\x61", -+ [16139] = "\xc3\xd0", [16140] = "\xbc\x62", [16141] = "\xbc\x63", -+ [16143] = "\xc4\xef", [16145] = "\xbc\x64", [16146] = "\xbc\x65", -+ [16147] = "\xbc\x66", [16148] = "\xbc\x67", [16149] = "\xcc\xef", -+ [16150] = "\xb8\xb9", [16151] = "\xb8\xcc", [16152] = "\xbc\x68", -+ [16153] = "\xd7\xb8", [16155] = "\xbc\x69", [16156] = "\xbc\x6a", -+ [16157] = "\xd7\xb9", [16158] = "\xbc\x6b", [16159] = "\xd7\xbf", -+ [16160] = "\xbc\x6c", [16161] = "\xbc\xe5", [16164] = "\xbc\x6d", -+ [16165] = "\xc4\xa5", [16166] = "\xbc\x6e", [16167] = "\xb6\xaf", -+ [16168] = "\xd7\xba", [16171] = "\xbc\x6f", [16172] = "\xc9\xab", -+ [16173] = "\xbc\x70", [16174] = "\xc3\xc6", [16175] = "\xbc\x71", -+ [16176] = "\xbc\x72", [16177] = "\xd7\xbb", [16180] = "\xbc\x73", -+ [16181] = "\xbc\x74", [16183] = "\xbc\x75", [16184] = "\xd7\xbc", -+ [16186] = "\xb6\xb0", [16188] = "\xd7\xbd", [16189] = "\xbc\x76", -+ [16190] = "\xd7\xbe", [16192] = "\xbc\x77", [16193] = "\xd7\xc0", -+ [16195] = "\xc5\xf6", [16196] = "\xbc\x78", [16198] = "\xd7\xc1", -+ [16199] = "\xd7\xc2", [16200] = "\xbc\x79", [16201] = "\xd7\xc3", -+ [16203] = "\xbc\x7a", [16204] = "\xd7\xb4", [16205] = "\xd7\xb3", -+ [16208] = "\xbc\x7b", [16209] = "\xd7\xc4", [16210] = "\xb7\xc1", -+ [16211] = "\xbc\x7c", [16212] = "\xbc\x7d", [16214] = "\xc9\xa7", -+ [16215] = "\xbc\x7e", [16217] = "\xba\xcc", [16218] = "\xc9\xb7", -+ [16219] = "\xc4\xa6", [16220] = "\xc9\xcb", [16221] = "\xd7\xc5", -+ [16223] = "\xbd\x21", [16224] = "\xbe\xb4", [16225] = "\xb1\xc6", -+ [16226] = "\xbd\x22", [16227] = "\xd7\xc6", [16228] = "\xbd\x23", -+ [16229] = "\xbd\x24", [16231] = "\xd7\xc7", [16232] = "\xbd\x25", -+ [16233] = "\xcc\xf2", [16234] = "\xbd\x26", [16236] = "\xc8\xe0", -+ [16237] = "\xbd\x27", [16238] = "\xbd\x28", [16239] = "\xd7\xca", -+ [16240] = "\xb1\xfd", [16241] = "\xc0\xac", [16242] = "\xd7\xc9", -+ [16243] = "\xd7\xc8", [16244] = "\xb7\xc2", [16245] = "\xc2\xd4", -+ [16247] = "\xd7\xce", [16248] = "\xd7\xcc", [16249] = "\xbd\x29", -+ [16250] = "\xd7\xcb", [16251] = "\xce\xa7", [16252] = "\xb8\xe5", -+ [16253] = "\xbd\x2a", [16255] = "\xbd\x2b", [16256] = "\xbd\xf9", -+ [16257] = "\xd7\xcd", [16258] = "\xc5\xcc", [16259] = "\xbd\xbe", -+ [16262] = "\xbd\x2c", [16263] = "\xc6\xc0", [16264] = "\xd7\xd1", -+ [16265] = "\xd7\xd0", [16268] = "\xbd\x2d", [16269] = "\xbd\x2e", -+ [16270] = "\xd7\xcf", [16272] = "\xd7\xd2", [16273] = "\xb8\xe6", -+ [16274] = "\xbd\x2f", [16276] = "\xbd\x32", [16279] = "\xbd\x30", -+ [16280] = "\xd7\xd3", [16281] = "\xc9\xfc", [16282] = "\xbd\xdb", -+ [16283] = "\xbd\x31", [16284] = "\xbd\x33", [16285] = "\xd7\xd4", -+ [16286] = "\xc8\xf9", [16287] = "\xbd\x34", [16288] = "\xbd\x35", -+ [16289] = "\xbd\x36", [16291] = "\xc6\xc1", [16292] = "\xc4\xa7", -+ [16295] = "\xf4\x3e", [16296] = "\xbd\x37", [16297] = "\xc5\xb0", -+ [16300] = "\xd7\xd5", [16301] = "\xb5\xab", [16307] = "\xbf\xb4", -+ [16308] = "\xbd\x38", [16309] = "\xc9\xac", [16311] = "\xbd\x39", -+ [16312] = "\xbd\x3a", [16313] = "\xbd\x3b", [16315] = "\xbd\x3c", -+ [16316] = "\xb4\xf7", [16317] = "\xc7\xa6", [16320] = "\xbd\x3d", -+ [16321] = "\xbd\x3e", [16322] = "\xbd\x3f", [16323] = "\xbd\x40", -+ [16324] = "\xbd\x41", [16326] = "\xd7\xd6", [16327] = "\xbb\xd6", -+ [16328] = "\xcb\xba", [16329] = "\xcb\xbb", [16332] = "\xb1\xfe", -+ [16333] = "\xd7\xdb", [16334] = "\xbd\x42", [16336] = "\xc3\xe9", -+ [16337] = "\xbd\x43", [16338] = "\xbd\x44", [16340] = "\xd7\xd8", -+ [16344] = "\xbd\x45", [16345] = "\xbd\x46", [16346] = "\xbd\x47", -+ [16347] = "\xb2\xf7", [16348] = "\xbd\x48", [16349] = "\xbd\x49", -+ [16350] = "\xbd\x4a", [16351] = "\xbd\x4b", [16352] = "\xd8\xad", -+ [16353] = "\xd7\xda", [16354] = "\xbd\x4c", [16355] = "\xbd\x4d", -+ [16357] = "\xc7\xb0", [16358] = "\xbd\x4e", [16360] = "\xd7\xd9", -+ [16362] = "\xbd\x4f", [16363] = "\xd7\xd7", [16364] = "\xbd\x50", -+ [16365] = "\xb9\xfa", [16367] = "\xd7\xdd", [16375] = "\xbd\x51", -+ [16378] = "\xbd\x52", [16381] = "\xbd\x53", [16382] = "\xd7\xe3", -+ [16383] = "\xd7\xe9", [16384] = "\xd7\xe1", [16386] = "\xc5\xdc", -+ [16387] = "\xbd\x54", [16388] = "\xbd\x55", [16389] = "\xd7\xe6", -+ [16390] = "\xc9\xdd", [16391] = "\xbd\x56", [16392] = "\xbd\x57", -+ [16393] = "\xd7\xe0", [16394] = "\xbd\x58", [16395] = "\xd7\xe5", -+ [16396] = "\xce\xe7", [16397] = "\xbb\xd7", [16399] = "\xbd\x59", -+ [16400] = "\xc2\xd5", [16401] = "\xd7\xde", [16404] = "\xbd\x5a", -+ [16405] = "\xb5\xde", [16406] = "\xd7\xe8", [16407] = "\xc0\xad", -+ [16408] = "\xb1\xe5", [16409] = "\xd7\xe2", [16410] = "\xb2\xf8", -+ [16411] = "\xd7\xe7", [16413] = "\xbd\x5b", [16415] = "\xb6\xb1", -+ [16417] = "\xd7\xe4", [16419] = "\xbd\x5c", [16421] = "\xbd\x5d", -+ [16426] = "\xd7\xea", [16432] = "\xbd\x5e", [16433] = "\xd7\xec", -+ [16434] = "\xd7\xf6", [16435] = "\xd7\xf4", [16438] = "\xd7\xf1", -+ [16439] = "\xbd\x5f", [16440] = "\xbd\x60", [16441] = "\xbd\x61", -+ [16442] = "\xd7\xf0", [16443] = "\xce\xf8", [16444] = "\xbd\x62", -+ [16445] = "\xd7\xf2", [16448] = "\xb6\xb2", [16449] = "\xbd\x63", -+ [16450] = "\xb9\xb1", [16452] = "\xbd\x64", [16453] = "\xbd\xfa", -+ [16454] = "\xbd\x65", [16455] = "\xbd\x66", [16457] = "\xd7\xf9", -+ [16458] = "\xd7\xeb", [16461] = "\xbd\x67", [16463] = "\xd7\xef", -+ [16464] = "\xd7\xdf", [16465] = "\xbd\x68", [16466] = "\xb2\xfa", -+ [16467] = "\xd7\xf3", [16468] = "\xd7\xf5", [16469] = "\xc3\xd1", -+ [16471] = "\xbd\x69", [16472] = "\xba\xa8", [16473] = "\xb2\xb8", -+ [16474] = "\xd7\xed", [16475] = "\xd7\xf8", [16476] = "\xd7\xf7", -+ [16477] = "\xb6\xb3", [16479] = "\xc2\xa9", [16480] = "\xb3\xe6", -+ [16481] = "\xbd\x6a", [16485] = "\xb7\xc3", [16487] = "\xd7\xee", -+ [16494] = "\xbd\x6b", [16495] = "\xbd\x6c", [16497] = "\xd7\xfa", -+ [16498] = "\xbd\x6d", [16499] = "\xd7\xfd", [16500] = "\xd8\xa1", -+ [16501] = "\xf4\x3f", [16502] = "\xbd\x6e", [16504] = "\xbd\x6f", -+ [16505] = "\xbc\xbd", [16506] = "\xbd\x70", [16507] = "\xd8\xa7", -+ [16508] = "\xc4\xf0", [16509] = "\xd7\xfb", [16510] = "\xbd\x71", -+ [16513] = "\xbd\x72", [16514] = "\xd8\xa5", [16515] = "\xbd\x73", -+ [16516] = "\xb2\xf9", [16517] = "\xbd\x74", [16518] = "\xd8\xa3", -+ [16519] = "\xd8\xa4", [16520] = "\xbd\x75", [16522] = "\xd7\xfe", -+ [16523] = "\xd8\xa2", [16525] = "\xbd\x76", [16526] = "\xbd\x77", -+ [16527] = "\xb8\xe7", [16528] = "\xcd\xaa", [16530] = "\xbd\x78", -+ [16531] = "\xb4\xb5", [16532] = "\xbd\x79", [16533] = "\xbd\x7a", -+ [16534] = "\xb1\xd9", [16535] = "\xd8\xa6", [16536] = "\xbd\x7b", -+ [16537] = "\xc7\xba", [16538] = "\xb0\xad", [16544] = "\xbd\x7c", -+ [16545] = "\xbd\x7d", [16546] = "\xc8\xe1", [16547] = "\xd7\xdc", -+ [16548] = "\xd8\xac", [16549] = "\xd8\xb0", [16550] = "\xcc\xe5", -+ [16551] = "\xbd\x7e", [16552] = "\xd8\xa9", [16555] = "\xbe\x21", -+ [16556] = "\xc5\xe9", [16557] = "\xd8\xae", [16558] = "\xbe\x22", -+ [16562] = "\xbe\x23", [16564] = "\xbe\x24", [16565] = "\xbe\xf0", -+ [16566] = "\xd8\xaf", [16567] = "\xc6\xd7", [16568] = "\xbe\x25", -+ [16569] = "\xbe\x26", [16570] = "\xbe\x27", [16571] = "\xbe\x28", -+ [16574] = "\xbe\x29", [16575] = "\xbe\x2a", [16577] = "\xcf\xc7", -+ [16579] = "\xd8\xab", [16580] = "\xbe\x2b", [16581] = "\xbe\x2c", -+ [16584] = "\xd8\xb1", [16585] = "\xbe\x2d", [16586] = "\xb9\xfb", -+ [16587] = "\xbe\x2e", [16588] = "\xc0\xcb", [16589] = "\xbe\x2f", -+ [16590] = "\xbe\x30", [16591] = "\xb0\xd4", [16592] = "\xd8\xaa", -+ [16593] = "\xd8\xa8", [16594] = "\xbe\x31", [16595] = "\xc1\xda", -+ [16597] = "\xbe\x32", [16599] = "\xd7\xfc", [16600] = "\xbb\xb4", -+ [16608] = "\xc2\xc6", [16609] = "\xd8\xbd", [16610] = "\xbe\x33", -+ [16611] = "\xc1\xdb", [16612] = "\xd8\xb8", [16613] = "\xbe\x34", -+ [16614] = "\xd8\xb5", [16615] = "\xd8\xb6", [16616] = "\xbe\x35", -+ [16617] = "\xbc\xe6", [16618] = "\xd8\xb9", [16619] = "\xd8\xbc", -+ [16620] = "\xbe\x36", [16621] = "\xbe\x37", [16624] = "\xd8\xb7", -+ [16625] = "\xbd\xa5", [16626] = "\xbe\x38", [16627] = "\xd8\xba", -+ [16630] = "\xd8\xb4", [16631] = "\xbe\x39", [16632] = "\xcc\xfc", -+ [16633] = "\xcc\xfb", [16634] = "\xbe\x3a", [16636] = "\xbe\x3b", -+ [16637] = "\xd8\xbe", [16638] = "\xd8\xbf", [16639] = "\xb0\xd5", -+ [16640] = "\xbe\x3c", [16641] = "\xbe\x3d", [16642] = "\xbe\x3e", -+ [16643] = "\xbe\x3f", [16644] = "\xbe\x40", [16645] = "\xd8\xb3", -+ [16646] = "\xbe\x41", [16647] = "\xbe\x42", [16649] = "\xbe\x43", -+ [16650] = "\xb6\xf2", [16651] = "\xb0\xa6", [16652] = "\xbe\x44", -+ [16654] = "\xbe\x45", [16655] = "\xb4\xb6", [16656] = "\xf4\x40", -+ [16657] = "\xd8\xbb", [16658] = "\xbe\x46", [16663] = "\xd8\xc3", -+ [16664] = "\xd8\xc2", [16666] = "\xbe\x47", [16667] = "\xbe\x48", -+ [16668] = "\xd8\xc7", [16672] = "\xbe\x49", [16673] = "\xbe\x4a", -+ [16676] = "\xd8\xc8", [16677] = "\xbe\x4b", [16678] = "\xbe\x4c", -+ [16679] = "\xbe\x4d", [16681] = "\xbe\x4e", [16684] = "\xd8\xc6", -+ [16685] = "\xd8\xc9", [16686] = "\xd8\xc1", [16687] = "\xd8\xc5", -+ [16689] = "\xbe\x4f", [16690] = "\xd8\xca", [16692] = "\xd8\xcb", -+ [16693] = "\xbe\x50", [16694] = "\xbe\x51", [16695] = "\xd8\xc0", -+ [16696] = "\xbb\xfc", [16697] = "\xbe\x52", [16698] = "\xd8\xc4", -+ [16699] = "\xc2\xd6", [16700] = "\xb9\xb2", [16701] = "\xd8\xb2", -+ [16702] = "\xbf\xb5", [16707] = "\xd8\xd8", [16709] = "\xca\xe9", -+ [16712] = "\xd8\xce", [16713] = "\xd8\xcf", [16714] = "\xd8\xd0", -+ [16717] = "\xd8\xd7", [16718] = "\xbe\x53", [16719] = "\xd8\xd6", -+ [16720] = "\xbe\x54", [16722] = "\xcb\xfd", [16723] = "\xb4\xb7", -+ [16725] = "\xd8\xd4", [16727] = "\xb7\xc5", [16728] = "\xb3\xb4", -+ [16731] = "\xd8\xd1", [16732] = "\xbe\x55", [16734] = "\xce\xb8", -+ [16735] = "\xd8\xd3", [16736] = "\xb0\xd6", [16737] = "\xd8\xd5", -+ [16738] = "\xbe\x56", [16739] = "\xd8\xcc", [16740] = "\xd8\xd2", -+ [16741] = "\xd8\xd9", [16742] = "\xb7\xc4", [16743] = "\xd8\xcd", -+ [16744] = "\xbe\x57", [16747] = "\xbe\x58", [16748] = "\xbe\x59", -+ [16750] = "\xcd\xdd", [16751] = "\xbe\x5a", [16752] = "\xbe\x5b", -+ [16753] = "\xbe\x5c", [16754] = "\xcd\xab", [16755] = "\xbe\x5d", -+ [16756] = "\xbe\x5e", [16759] = "\xd8\xdc", [16762] = "\xd8\xe0", -+ [16763] = "\xbe\x5f", [16765] = "\xbe\x60", [16766] = "\xc1\xfe", -+ [16768] = "\xce\xf9", [16769] = "\xd8\xe1", [16770] = "\xbe\x61", -+ [16771] = "\xbe\x62", [16772] = "\xd8\xde", [16774] = "\xd8\xdb", -+ [16775] = "\xbe\x63", [16776] = "\xbe\x64", [16777] = "\xd8\xda", -+ [16778] = "\xd8\xdf", [16780] = "\xbe\x65", [16781] = "\xbe\x66", -+ [16783] = "\xbe\x67", [16784] = "\xbe\x68", [16788] = "\xca\xb0", -+ [16789] = "\xbe\x69", [16791] = "\xc6\xb4", [16792] = "\xbe\x6a", -+ [16793] = "\xb7\xc6", [16794] = "\xbe\x6b", [16795] = "\xd8\xe2", -+ [16796] = "\xd8\xdd", [16797] = "\xbe\x6c", [16798] = "\xd8\xe3", -+ [16802] = "\xb7\xfb", [16806] = "\xb2\xb1", [16808] = "\xbe\x6d", -+ [16809] = "\xbe\x6e", [16810] = "\xd8\xeb", [16812] = "\xbe\x6f", -+ [16814] = "\xb4\xb8", [16816] = "\xbe\x70", [16817] = "\xbe\x71", -+ [16818] = "\xbe\x72", [16819] = "\xd8\xe9", [16822] = "\xd8\xea", -+ [16823] = "\xba\xa9", [16824] = "\xd8\xe8", [16825] = "\xd8\xe6", -+ [16826] = "\xd8\xe5", [16827] = "\xd8\xec", [16828] = "\xd8\xe4", -+ [16829] = "\xd8\xee", [16830] = "\xbe\x73", [16831] = "\xbe\x74", -+ [16832] = "\xb2\xfb", [16837] = "\xbe\x75", [16844] = "\xbe\x76", -+ [16845] = "\xbe\x77", [16846] = "\xbe\x78", [16847] = "\xbe\x79", -+ [16849] = "\xbe\x7a", [16850] = "\xbe\x7b", [16851] = "\xd8\xf0", -+ [16853] = "\xbe\x7e", [16854] = "\xd8\xef", [16855] = "\xbe\x7c", -+ [16857] = "\xbe\x7d", [16860] = "\xbf\x21", [16861] = "\xbf\x22", -+ [16863] = "\xbf\x23", [16866] = "\xc4\xa8", [16868] = "\xd8\xf3", -+ [16870] = "\xd8\xf1", [16871] = "\xd8\xe7", [16872] = "\xb7\xfc", -+ [16874] = "\xd8\xf2", [16876] = "\xd8\xf6", [16877] = "\xd8\xf5", -+ [16878] = "\xd8\xf7", [16879] = "\xd8\xf4", [16880] = "\xd8\xf8", -+ [16881] = "\xbf\x24", [16883] = "\xbf\x25", [16884] = "\xbf\x26", -+ [16887] = "\xbf\x27", [16888] = "\xd8\xf9", [16889] = "\xd8\xfa", -+ [16890] = "\xca\xea", [16892] = "\xd8\xfc", [16893] = "\xd8\xfb", -+ [16894] = "\xbd\xbf", [16896] = "\xc0\xae", [16897] = "\xb2\xe6", -+ [16898] = "\xb2\xfc", [16899] = "\xbf\x28", [16900] = "\xd8\xfd", -+ [16901] = "\xbf\x29", [16902] = "\xb0\xbf", [16906] = "\xc0\xcc", -+ [16907] = "\xd8\xfe", [16908] = "\xbf\x2a", [16909] = "\xec\xc3", -+ [16910] = "\xd9\xa1", [16911] = "\xb7\xe1", [16912] = "\xbf\x2b", -+ [16913] = "\xd9\xa2", [16914] = "\xbf\x2c", [16915] = "\xbf\x2d", -+ [16918] = "\xc0\xef", [16919] = "\xbf\x2e", [16921] = "\xbf\x2f", -+ [16922] = "\xd9\xa3", [16923] = "\xbf\x30", [16926] = "\xd9\xa4", -+ [16927] = "\xb5\xba", [16928] = "\xd9\xa5", [16930] = "\xd9\xa6", -+ [16931] = "\xd9\xa7", [16932] = "\xc2\xd7", [16936] = "\xb8\xcd", -+ [16937] = "\xbf\x31", [16939] = "\xcc\xe1", [16941] = "\xbf\x32", -+ [16943] = "\xcb\xbc", [16944] = "\xbd\xea", [16945] = "\xd9\xa8", -+ [16946] = "\xbf\x33", [16947] = "\xbf\x34", [16948] = "\xbf\x35", -+ [16950] = "\xbf\x36", [16951] = "\xc0\xf0", [16952] = "\xee\xbd", -+ [16953] = "\xc8\xe2", [16955] = "\xbc\xea", [16956] = "\xbf\x37", -+ [16957] = "\xba\xcd", [16958] = "\xd9\xa9", [16960] = "\xbf\x38", -+ [16961] = "\xbf\x39", [16962] = "\xbf\x3a", [16963] = "\xc2\xc7", -+ [16964] = "\xbf\x3b", [16965] = "\xca\xa7", [16966] = "\xbf\x3c", -+ [16968] = "\xc2\xf1", [16970] = "\xbf\x3d", [16971] = "\xd9\xac", -+ [16972] = "\xbf\x3e", [16974] = "\xd9\xaa", [16976] = "\xd9\xad", -+ [16979] = "\xd9\xab", [16980] = "\xbf\x3f", [16984] = "\xd9\xae", -+ [16989] = "\xbf\x40", [16990] = "\xca\xb1", [16991] = "\xbf\x41", -+ [16993] = "\xb0\xb7", [16995] = "\xbf\x42", [16998] = "\xc9\xde", -+ [17001] = "\xc8\xe3", [17002] = "\xbf\x43", [17004] = "\xd9\xaf", -+ [17005] = "\xbf\x44", [17006] = "\xd9\xb2", [17007] = "\xbe\xb5", -+ [17008] = "\xb5\xbb", [17010] = "\xd9\xb0", [17011] = "\xd9\xb7", -+ [17012] = "\xbe\xb6", [17017] = "\xd9\xb1", [17018] = "\xc7\xc4", -+ [17021] = "\xbf\x45", [17022] = "\xbf\x46", [17023] = "\xbf\x47", -+ [17024] = "\xbf\x48", [17025] = "\xcd\xde", [17026] = "\xd9\xb3", -+ [17027] = "\xd9\xb4", [17028] = "\xd9\xb8", [17029] = "\xc5\xea", -+ [17030] = "\xd9\xb5", [17031] = "\xb9\xb3", [17032] = "\xc0\xde", -+ [17035] = "\xd9\xc6", [17036] = "\xc8\xb4", [17038] = "\xc2\xf2", -+ [17046] = "\xbf\x49", [17048] = "\xbf\x4a", [17051] = "\xc8\xe4", -+ [17052] = "\xda\xad", [17057] = "\xca\xfa", [17059] = "\xbf\x4b", -+ [17061] = "\xc4\xf1", [17062] = "\xbf\x4c", [17063] = "\xbf\x4d", -+ [17065] = "\xcb\xf5", [17066] = "\xbf\x4e", [17067] = "\xd9\xbb", -+ [17068] = "\xb2\xa1", [17069] = "\xc3\xea", [17070] = "\xbf\x4f", -+ [17071] = "\xbf\x50", [17074] = "\xd9\xc4", [17076] = "\xbf\x51", -+ [17077] = "\xc3\xb4", [17078] = "\xd9\xbe", [17079] = "\xd9\xc5", -+ [17080] = "\xd9\xc0", [17081] = "\xd9\xc7", [17082] = "\xd9\xc3", -+ [17084] = "\xd9\xc2", [17085] = "\xc7\xef", [17086] = "\xbf\x52", -+ [17087] = "\xd9\xbc", [17088] = "\xb2\xfd", [17089] = "\xd9\xba", -+ [17090] = "\xb5\xf1", [17091] = "\xc2\xf3", [17092] = "\xd9\xb6", -+ [17093] = "\xbf\x53", [17094] = "\xbf\x54", [17095] = "\xd9\xb9", -+ [17096] = "\xb9\xb4", [17097] = "\xc0\xdb", [17098] = "\xbf\x55", -+ [17099] = "\xbe\xb7", [17100] = "\xd9\xc1", [17101] = "\xc7\xd2", -+ [17104] = "\xb5\xf2", [17105] = "\xb3\xc8", [17114] = "\xbf\x56", -+ [17116] = "\xb3\xe7", [17117] = "\xbf\xa1", [17118] = "\xd9\xc9", -+ [17119] = "\xd9\xce", [17121] = "\xd9\xca", [17122] = "\xbf\x57", -+ [17123] = "\xb7\xfd", [17124] = "\xbf\x58", [17125] = "\xd9\xcf", -+ [17126] = "\xbb\xa2", [17127] = "\xb9\xe9", [17132] = "\xbf\x59", -+ [17133] = "\xbf\x5a", [17134] = "\xbd\xa6", [17135] = "\xd9\xbd", -+ [17137] = "\xbb\xfd", [17138] = "\xd9\xcc", [17139] = "\xbf\x5b", -+ [17140] = "\xbf\x5c", [17143] = "\xbb\xd8", [17144] = "\xd9\xcd", -+ [17145] = "\xb0\xc4", [17146] = "\xbf\x5d", [17147] = "\xbf\x5e", -+ [17148] = "\xd9\xc8", [17149] = "\xbf\x5f", [17152] = "\xbf\x60", -+ [17153] = "\xc4\xa9", [17155] = "\xbf\x61", [17158] = "\xbf\x62", -+ [17160] = "\xbf\x63", [17161] = "\xb5\xf3", [17167] = "\xb6\xb4", -+ [17175] = "\xd9\xcb", [17176] = "\xb0\xa7", [17177] = "\xbf\x64", -+ [17178] = "\xbf\x65", [17179] = "\xba\xc3", [17181] = "\xbf\x66", -+ [17183] = "\xbf\xb6", [17189] = "\xbf\x67", [17190] = "\xbf\x68", -+ [17193] = "\xbf\x69", [17194] = "\xc4\xf2", [17196] = "\xbf\x6a", -+ [17197] = "\xc8\xd4", [17198] = "\xd9\xd1", [17199] = "\xc1\xde", -+ [17201] = "\xbf\x6b", [17202] = "\xbf\x6c", [17203] = "\xbf\x6d", -+ [17204] = "\xbf\x6e", [17206] = "\xbf\x6f", [17209] = "\xc2\xaa", -+ [17210] = "\xbf\x70", [17211] = "\xbf\x71", [17212] = "\xbb\xab", -+ [17213] = "\xd9\xd2", [17214] = "\xbf\x72", [17215] = "\xd9\xd4", -+ [17216] = "\xd9\xd0", [17218] = "\xbf\x73", [17219] = "\xbf\x74", -+ [17220] = "\xbf\x75", [17221] = "\xca\xe1", [17223] = "\xc4\xbd", -+ [17224] = "\xbf\x76", [17227] = "\xbf\x77", [17228] = "\xc1\xdc", -+ [17237] = "\xbf\x78", [17238] = "\xbf\x79", [17239] = "\xca\xfb", -+ [17240] = "\xbc\xce", [17241] = "\xd9\xe0", [17243] = "\xd9\xdf", -+ [17244] = "\xbf\x7a", [17245] = "\xbf\x7b", [17246] = "\xbf\xf8", -+ [17249] = "\xbf\x7c", [17250] = "\xb7\xfe", [17252] = "\xbf\x7d", -+ [17253] = "\xbf\x7e", [17254] = "\xd9\xd9", [17255] = "\xbe\xb9", -+ [17256] = "\xc0\x21", [17258] = "\xc6\xe8", [17259] = "\xc7\xb1", -+ [17260] = "\xc0\x22", [17261] = "\xc0\x23", [17263] = "\xc0\x24", -+ [17264] = "\xd9\xd7", [17266] = "\xc0\x25", [17267] = "\xc1\xdd", -+ [17268] = "\xc0\x26", [17271] = "\xc0\x27", [17272] = "\xbc\xf8", -+ [17273] = "\xd9\xdc", [17274] = "\xc0\x28", [17276] = "\xbe\xb8", -+ [17278] = "\xd9\xd6", [17279] = "\xd9\xdb", [17280] = "\xc0\x29", -+ [17282] = "\xc7\xd3", [17284] = "\xc0\x2a", [17285] = "\xc0\x2b", -+ [17286] = "\xd9\xd5", [17288] = "\xb7\xa1", [17289] = "\xc0\x2c", -+ [17290] = "\xc0\x2d", [17291] = "\xb3\xdd", [17294] = "\xc0\x2e", -+ [17295] = "\xd9\xdd", [17296] = "\xce\xab", [17297] = "\xba\xce", -+ [17298] = "\xc3\xb5", [17299] = "\xd9\xda", [17300] = "\xc0\x2f", -+ [17301] = "\xc0\xdc", [17302] = "\xc0\x30", [17303] = "\xb9\xb5", -+ [17304] = "\xbf\xe4", [17305] = "\xb1\xe6", [17306] = "\xc1\xbc", -+ [17307] = "\xd9\xd8", [17308] = "\xb5\xc5", [17309] = "\xc0\x31", -+ [17310] = "\xc0\x32", [17311] = "\xc0\x33", [17314] = "\xb7\xc7", -+ [17316] = "\xc4\xcf", [17317] = "\xd9\xde", [17323] = "\xc1\xdf", -+ [17325] = "\xc0\x34", [17326] = "\xd9\xe1", [17328] = "\xd9\xe3", -+ [17329] = "\xc0\x35", [17331] = "\xc2\xb7", [17332] = "\xd9\xe9", -+ [17333] = "\xc0\x36", [17334] = "\xd9\xe4", [17336] = "\xc0\x37", -+ [17337] = "\xd9\xe6", [17342] = "\xc0\x38", [17343] = "\xc9\xc1", -+ [17344] = "\xc4\xf3", [17345] = "\xc0\x39", [17346] = "\xd9\xe7", -+ [17347] = "\xc0\x3a", [17348] = "\xc0\x3b", [17349] = "\xc0\x3c", -+ [17350] = "\xcd\xac", [17354] = "\xcd\xc8", [17355] = "\xb4\xb9", -+ [17356] = "\xc0\x3d", [17360] = "\xc0\x3e", [17361] = "\xb0\xae", -+ [17363] = "\xd9\xe5", [17365] = "\xc0\x3f", [17369] = "\xd9\xe2", -+ [17370] = "\xc0\x40", [17372] = "\xc0\x41", [17374] = "\xb4\xf8", -+ [17378] = "\xc0\x42", [17379] = "\xc0\x43", [17380] = "\xb1\xe7", -+ [17381] = "\xc0\x44", [17382] = "\xd9\xe8", [17384] = "\xc0\x45", -+ [17385] = "\xc0\x46", [17386] = "\xcd\xc9", [17398] = "\xd9\xec", -+ [17401] = "\xc0\x47", [17402] = "\xc0\x48", [17405] = "\xc2\xbb", -+ [17407] = "\xd9\xf3", [17408] = "\xc0\x49", [17410] = "\xc0\x4a", -+ [17411] = "\xd9\xed", [17412] = "\xc0\x4b", [17414] = "\xd9\xea", -+ [17415] = "\xd9\xf1", [17416] = "\xc0\x4c", [17420] = "\xd9\xd3", -+ [17422] = "\xc0\x4d", [17424] = "\xc0\x4e", [17426] = "\xc0\x4f", -+ [17428] = "\xc0\x50", [17429] = "\xc0\x51", [17430] = "\xd9\xee", -+ [17432] = "\xd9\xf2", [17433] = "\xc0\x52", [17434] = "\xc0\x53", -+ [17436] = "\xc8\xc2", [17437] = "\xc5\xeb", [17439] = "\xc0\x54", -+ [17440] = "\xc0\x55", [17444] = "\xd9\xeb", [17445] = "\xc0\x56", -+ [17446] = "\xd9\xef", [17450] = "\xb7\xc8", [17453] = "\xc0\x57", -+ [17454] = "\xba\xf1", [17455] = "\xc0\x58", [17458] = "\xc0\xdd", -+ [17467] = "\xc0\x59", [17470] = "\xd9\xf7", [17471] = "\xc0\x5a", -+ [17473] = "\xc0\x5b", [17474] = "\xc0\x5c", [17475] = "\xc0\x5d", -+ [17476] = "\xc0\x5e", [17480] = "\xc5\xa6", [17482] = "\xc0\x5f", -+ [17483] = "\xc0\x60", [17484] = "\xc0\x61", [17485] = "\xc0\x62", -+ [17487] = "\xc0\x63", [17488] = "\xc0\x64", [17489] = "\xc0\x65", -+ [17491] = "\xc0\x66", [17495] = "\xd9\xf4", [17497] = "\xcb\xe0", -+ [17501] = "\xc0\x67", [17503] = "\xd9\xf5", [17507] = "\xc0\x68", -+ [17508] = "\xc0\x69", [17510] = "\xd9\xf6", [17512] = "\xcc\xce", -+ [17514] = "\xc0\xa2", [17515] = "\xc0\x6a", [17517] = "\xc0\x6b", -+ [17523] = "\xb7\xe2", [17525] = "\xc0\x6c", [17527] = "\xc0\x6d", -+ [17528] = "\xd9\xfd", [17535] = "\xc0\x6e", [17536] = "\xc0\x6f", -+ [17537] = "\xc0\x70", [17538] = "\xbb\xb5", [17539] = "\xd9\xfa", -+ [17541] = "\xd9\xf9", [17544] = "\xc0\x71", [17545] = "\xc0\x72", -+ [17546] = "\xc7\xb2", [17547] = "\xc0\x73", [17549] = "\xc0\x74", -+ [17550] = "\xc6\xb5", [17551] = "\xc0\x75", [17553] = "\xc0\x76", -+ [17555] = "\xc0\x77", [17556] = "\xc5\xb1", [17557] = "\xd9\xfb", -+ [17558] = "\xc0\x78", [17560] = "\xc0\x79", [17561] = "\xd9\xfc", -+ [17563] = "\xc9\xef", [17564] = "\xc0\x7a", [17565] = "\xc7\xc5", -+ [17566] = "\xbb\xa3", [17568] = "\xc0\xf1", [17570] = "\xcb\xd0", -+ [17571] = "\xc0\x7b", [17577] = "\xb3\xc9", [17579] = "\xda\xa5", -+ [17580] = "\xd9\xfe", [17581] = "\xc0\x7c", [17582] = "\xc0\x7d", -+ [17583] = "\xc0\x7e", [17585] = "\xcd\xca", [17586] = "\xda\xa7", -+ [17588] = "\xc1\x21", [17589] = "\xda\xa3", [17591] = "\xda\xa4", -+ [17593] = "\xc1\x22", [17594] = "\xc1\x23", [17595] = "\xc1\x24", -+ [17596] = "\xc1\x25", [17597] = "\xc1\xe0", [17598] = "\xc1\x26", -+ [17600] = "\xc1\x27", [17601] = "\xc1\x28", [17602] = "\xda\xa2", -+ [17604] = "\xd9\xbf", [17605] = "\xc1\x29", [17607] = "\xc1\x2a", -+ [17608] = "\xda\xa6", [17610] = "\xda\xa1", [17616] = "\xda\xab", -+ [17617] = "\xda\xac", [17618] = "\xc5\xa7", [17619] = "\xda\xae", -+ [17620] = "\xc1\x2b", [17621] = "\xc1\x2c", [17622] = "\xbb\xa4", -+ [17623] = "\xda\xa9", [17625] = "\xc1\x2d", [17626] = "\xc1\x2e", -+ [17628] = "\xb5\xbc", [17629] = "\xc1\x2f", [17631] = "\xda\xaf", -+ [17632] = "\xc1\x30", [17633] = "\xda\xa8", [17634] = "\xda\xb3", -+ [17636] = "\xda\xb2", [17637] = "\xc1\x31", [17638] = "\xda\xb1", -+ [17639] = "\xc1\x32", [17642] = "\xda\xb4", [17643] = "\xc1\x33", -+ [17645] = "\xda\xb6", [17646] = "\xbe\xf1", [17647] = "\xc1\x34", -+ [17648] = "\xda\xb5", [17649] = "\xc1\x35", [17652] = "\xc1\x36", -+ [17653] = "\xda\xb9", [17656] = "\xc1\x37", [17657] = "\xc1\x38", -+ [17658] = "\xc1\x39", [17663] = "\xc1\x3a", [17667] = "\xc1\x3b", -+ [17668] = "\xc1\x3c", [17670] = "\xc1\x3d", [17672] = "\xda\xb7", -+ [17673] = "\xc1\x3e", [17675] = "\xc1\x3f", [17676] = "\xda\xb8", -+ [17677] = "\xd9\xf0", [17678] = "\xc1\x40", [17679] = "\xc1\x41", -+ [17682] = "\xc1\x42", [17683] = "\xda\xbb", [17684] = "\xda\xba", -+ [17686] = "\xc1\x43", [17689] = "\xc1\x44", [17690] = "\xd9\xf8", -+ [17691] = "\xda\xbc", [17692] = "\xda\xb0", [17694] = "\xc1\x45", -+ [17695] = "\xbb\xd9", [17697] = "\xc1\x46", [17700] = "\xda\xbd", -+ [17701] = "\xda\xbe", [17702] = "\xda\xc0", [17703] = "\xda\xbf", -+ [17704] = "\xda\xc1", [17705] = "\xb2\xfe", [17706] = "\xc1\x47", -+ [17707] = "\xb9\xb6", [17708] = "\xc1\x48", [17709] = "\xc1\x49", -+ [17710] = "\xca\xfc", [17711] = "\xc0\xaf", [17715] = "\xc1\x4a", -+ [17717] = "\xb8\xce", [17719] = "\xc1\x4b", [17720] = "\xda\xc3", -+ [17721] = "\xc1\x4c", [17725] = "\xda\xc6", [17726] = "\xf4\x41", -+ [17727] = "\xc9\xd2", [17728] = "\xc1\x4d", [17729] = "\xb5\xdf", -+ [17730] = "\xc1\x4e", [17732] = "\xc1\x4f", [17733] = "\xda\xc5", -+ [17734] = "\xda\xc4", [17735] = "\xc7\xd4", [17736] = "\xda\xc7", -+ [17737] = "\xb6\xb5", [17741] = "\xda\xc9", [17742] = "\xda\xc8", -+ [17743] = "\xc1\x50", [17744] = "\xc1\x51", [17746] = "\xb4\xba", -+ [17747] = "\xbb\xb6", [17750] = "\xc6\xd8", [17751] = "\xc1\x52", -+ [17755] = "\xc1\x53", [17756] = "\xb7\xc9", [17760] = "\xbf\xf4", -+ [17762] = "\xda\xca", [17764] = "\xc0\xb0", [17765] = "\xc5\xa8", -+ [17767] = "\xc9\xdf", [17768] = "\xda\xcb", [17770] = "\xc1\x54", -+ [17773] = "\xc1\x55", [17777] = "\xc1\x56", [17778] = "\xda\xcc", -+ [17779] = "\xda\xcd", [17781] = "\xc1\x57", [17783] = "\xca\xb8", -+ [17784] = "\xd5\xdd", [17785] = "\xc0\xc6", [17786] = "\xc1\x58", -+ [17788] = "\xc9\xcc", [17790] = "\xba\xd8", [17792] = "\xc8\xe5", -+ [17793] = "\xc8\xc3", [17794] = "\xc1\x59", [17797] = "\xc1\x5a", -+ [17799] = "\xc5\xcd", [17800] = "\xc1\x5b", [17801] = "\xce\xc1", -+ [17803] = "\xda\xcf", [17804] = "\xbc\xd0", [17805] = "\xc1\x5c", -+ [17807] = "\xda\xd0", [17808] = "\xc1\x5d", [17809] = "\xb0\xb6", -+ [17811] = "\xc1\x5e", [17812] = "\xb6\xd4", [17813] = "\xc0\xcd", -+ [17814] = "\xc1\x5f", [17815] = "\xc9\xe0", [17819] = "\xda\xd1", -+ [17820] = "\xbb\xc2", [17821] = "\xc3\xc7", [17822] = "\xc1\x60", -+ [17823] = "\xbb\xdb", [17824] = "\xbf\xb7", [17826] = "\xc1\x61", -+ [17827] = "\xc1\x62", [17828] = "\xc1\x63", [17831] = "\xda\xd2", -+ [17833] = "\xca\xfd", [17836] = "\xb1\xf7", [17837] = "\xbb\xdc", -+ [17839] = "\xc1\x64", [17841] = "\xda\xd5", [17842] = "\xc1\x65", -+ [17843] = "\xda\xd3", [17844] = "\xda\xd6", [17845] = "\xce\xb9", -+ [17846] = "\xda\xd4", [17848] = "\xc1\x66", [17849] = "\xc1\x67", -+ [17851] = "\xc0\xfb", [17852] = "\xda\xd7", [17854] = "\xc1\x68", -+ [17855] = "\xc2\xb2", [17856] = "\xc1\x69", [17858] = "\xda\xd8", -+ [17860] = "\xc1\x6a", [17862] = "\xc1\x6b", [17863] = "\xb4\xfa", -+ [17864] = "\xc1\x6c", [17865] = "\xda\xda", [17867] = "\xda\xd9", -+ [17871] = "\xc1\x6d", [17872] = "\xda\xdb", [17873] = "\xda\xdc", -+ [17874] = "\xb4\xfb", [17877] = "\xc6\xfc", [17878] = "\xc3\xb6", -+ [17879] = "\xb5\xec", [17880] = "\xbb\xdd", [17881] = "\xc1\xe1", -+ [17884] = "\xbd\xdc", [17885] = "\xb0\xb0", [17888] = "\xc1\x6e", -+ [17889] = "\xda\xdd", [17890] = "\xc1\x6f", [17892] = "\xc1\x70", -+ [17893] = "\xc1\x71", [17897] = "\xc1\x72", [17898] = "\xb2\xa2", -+ [17899] = "\xda\xe1", [17902] = "\xc1\x73", [17903] = "\xc1\x74", -+ [17904] = "\xc1\x75", [17906] = "\xb9\xb7", [17907] = "\xda\xe0", -+ [17908] = "\xc1\x76", [17910] = "\xba\xab", [17911] = "\xbe\xba", -+ [17912] = "\xc1\x77", [17913] = "\xc1\x78", [17914] = "\xda\xdf", -+ [17916] = "\xbe\xbb", [17917] = "\xc1\x79", [17918] = "\xcc\xc0", -+ [17919] = "\xba\xaa", [17921] = "\xc1\x7a", [17922] = "\xc1\x7b", -+ [17923] = "\xb0\xd7", [17924] = "\xc0\xce", [17925] = "\xc1\x7c", -+ [17926] = "\xc1\x7d", [17932] = "\xda\xe6", [17933] = "\xc1\x7e", -+ [17934] = "\xc2\x21", [17935] = "\xc0\xb1", [17936] = "\xb1\xc7", -+ [17937] = "\xc2\x22", [17938] = "\xc2\x23", [17939] = "\xc2\x24", -+ [17940] = "\xc2\x25", [17941] = "\xbd\xd5", [17942] = "\xc2\x26", -+ [17943] = "\xcb\xe6", [17944] = "\xba\xf2", [17945] = "\xc2\x27", -+ [17946] = "\xc2\x28", [17947] = "\xc2\x29", [17948] = "\xc2\x2a", -+ [17949] = "\xbe\xbc", [17950] = "\xc2\x2b", [17951] = "\xc0\xa7", -+ [17952] = "\xc2\x2c", [17953] = "\xc2\x2d", [17955] = "\xc2\x2e", -+ [17956] = "\xda\xe5", [17957] = "\xda\xe3", [17958] = "\xda\xe4", -+ [17959] = "\xc2\x30", [17961] = "\xc2\x2f", [17963] = "\xf4\x42", -+ [17964] = "\xc3\xeb", [17967] = "\xdb\xa6", [17968] = "\xc2\x31", -+ [17969] = "\xda\xea", [17970] = "\xbb\xfe", [17971] = "\xb9\xb8", -+ [17972] = "\xda\xe8", [17973] = "\xc2\x32", [17974] = "\xc2\x33", -+ [17977] = "\xda\xe9", [17978] = "\xc2\x34", [17979] = "\xbf\xb8", -+ [17980] = "\xc2\x35", [17982] = "\xc2\x37", [17983] = "\xda\xe7", -+ [17985] = "\xc2\x36", [17986] = "\xbb\xaf", [17991] = "\xc2\x38", -+ [17992] = "\xc2\x39", [17993] = "\xc2\x3a", [17995] = "\xc2\x3b", -+ [17996] = "\xc2\x3c", [17997] = "\xda\xec", [17998] = "\xda\xeb", -+ [17999] = "\xda\xf0", [18000] = "\xc2\x3d", [18001] = "\xc2\x3e", -+ [18002] = "\xda\xf1", [18004] = "\xda\xed", [18005] = "\xf4\x43", -+ [18006] = "\xb3\xa2", [18007] = "\xda\xee", [18008] = "\xda\xef", -+ [18009] = "\xc8\xd5", [18010] = "\xc2\x40", [18011] = "\xc2\x41", -+ [18012] = "\xc2\x42", [18014] = "\xc9\xe1", [18015] = "\xb7\xca", -+ [18016] = "\xda\xf2", [18019] = "\xc2\x44", [18020] = "\xc0\xb2", -+ [18021] = "\xc2\x45", [18022] = "\xbe\xbd", [18023] = "\xc2\x47", -+ [18024] = "\xc2\x48", [18025] = "\xc2\x49", [18026] = "\xc3\xd2", -+ [18027] = "\xc2\x4a", [18028] = "\xc2\x4c", [18030] = "\xc2\x43", -+ [18031] = "\xc2\x46", [18032] = "\xc2\x4b", [18033] = "\xb6\xc7", -+ [18035] = "\xda\xf3", [18036] = "\xda\xf7", [18039] = "\xb2\xcb", -+ [18040] = "\xda\xf4", [18041] = "\xda\xf6", [18043] = "\xc2\x4d", -+ [18044] = "\xc2\x4e", [18045] = "\xc2\x4f", [18046] = "\xda\xf5", -+ [18048] = "\xc2\x50", [18049] = "\xbd\xeb", [18050] = "\xc2\x51", -+ [18054] = "\xc3\xc8", [18055] = "\xb0\xc5", [18056] = "\xda\xf8", -+ [18057] = "\xc2\x52", [18058] = "\xc2\x53", [18059] = "\xc2\x54", -+ [18060] = "\xc2\x55", [18061] = "\xda\xf9", [18063] = "\xc2\x56", -+ [18064] = "\xc2\x57", [18066] = "\xc4\xaa", [18068] = "\xc2\x58", -+ [18070] = "\xce\xf1", [18075] = "\xbb\xc3", [18077] = "\xc2\x59", -+ [18078] = "\xca\xeb", [18081] = "\xc2\x5a", [18082] = "\xc2\x5b", -+ [18084] = "\xcb\xbd", [18085] = "\xc2\x5c", [18088] = "\xdb\xa2", -+ [18089] = "\xda\xfb", [18091] = "\xc2\x5d", [18092] = "\xda\xfe", -+ [18094] = "\xda\xfd", [18095] = "\xc2\x5e", [18096] = "\xc2\x5f", -+ [18097] = "\xda\xfa", [18098] = "\xc2\x60", [18099] = "\xc2\x61", -+ [18100] = "\xdb\xa1", [18103] = "\xc6\xde", [18104] = "\xc2\x62", -+ [18105] = "\xda\xfc", [18108] = "\xc2\x63", [18110] = "\xc2\x64", -+ [18111] = "\xc2\x65", [18116] = "\xc2\x66", [18118] = "\xdb\xa3", -+ [18121] = "\xbd\xec", [18122] = "\xdb\xa4", [18123] = "\xc2\x67", -+ [18124] = "\xcd\xcb", [18125] = "\xc7\xf8", [18127] = "\xc2\x68", -+ [18128] = "\xdb\xa5", [18134] = "\xdb\xa7", [18136] = "\xc2\x69", -+ [18137] = "\xdb\xa8", [18139] = "\xc2\x6a", [18140] = "\xc2\x6b", -+ [18142] = "\xc2\x6c", [18144] = "\xdb\xa9", [18146] = "\xb6\xca", -+ [18147] = "\xb1\xc8", [18148] = "\xb9\xb9", [18149] = "\xdb\xaa", -+ [18151] = "\xdb\xab", [18152] = "\xbd\xf1", [18153] = "\xc1\xe2", -+ [18154] = "\xc2\x6d", [18155] = "\xc2\x3f", [18156] = "\xd2\xd8", -+ [18157] = "\xc1\xbe", [18158] = "\xc1\xbd", [18159] = "\xc2\xd8", -+ [18160] = "\xba\xc7", [18163] = "\xd0\xf2", [18165] = "\xc2\x6e", -+ [18167] = "\xc2\x6f", [18168] = "\xb7\xee", [18169] = "\xcd\xad", -+ [18171] = "\xca\xfe", [18173] = "\xc9\xfe", [18174] = "\xc2\x70", -+ [18175] = "\xdb\xac", [18179] = "\xc2\x71", [18180] = "\xba\xf3", -+ [18181] = "\xc4\xbf", [18182] = "\xdb\xad", [18183] = "\xcf\xaf", -+ [18185] = "\xc2\x72", [18187] = "\xcb\xbe", [18188] = "\xc2\x73", -+ [18189] = "\xc4\xab", [18190] = "\xdb\xae", [18191] = "\xb4\xfc", -+ [18192] = "\xc2\x74", [18194] = "\xc2\x75", [18198] = "\xdb\xaf", -+ [18199] = "\xdb\xb0", [18200] = "\xcc\xda", [18202] = "\xcc\xa4", -+ [18203] = "\xcb\xf6", [18204] = "\xcb\xdc", [18205] = "\xbb\xa5", -+ [18206] = "\xdb\xb2", [18209] = "\xbc\xeb", [18211] = "\xc2\x76", -+ [18212] = "\xcb\xd1", [18214] = "\xdb\xb4", [18215] = "\xdb\xb7", -+ [18216] = "\xdb\xb6", [18218] = "\xb4\xf9", [18221] = "\xb5\xe0", -+ [18222] = "\xc2\x77", [18223] = "\xdb\xb3", [18225] = "\xdb\xb5", -+ [18229] = "\xc2\x78", [18230] = "\xdb\xb8", [18231] = "\xc2\x79", -+ [18232] = "\xc2\x7a", [18233] = "\xbf\xf9", [18236] = "\xc2\x7b", -+ [18238] = "\xcd\xfb", [18239] = "\xb0\xc9", [18240] = "\xba\xe0", -+ [18241] = "\xc2\xbc", [18243] = "\xbc\xdd", [18244] = "\xc2\x7c", -+ [18245] = "\xc2\x7d", [18246] = "\xbe\xf3", [18249] = "\xdb\xbb", -+ [18252] = "\xc5\xce", [18253] = "\xc2\x7e", [18254] = "\xdb\xb9", -+ [18255] = "\xc2\xab", [18256] = "\xdb\xba", [18257] = "\xbe\xf2", -+ [18258] = "\xcc\xdd", [18259] = "\xdb\xbc", [18260] = "\xdb\xbd", -+ [18261] = "\xcd\xe8", [18262] = "\xc3\x21", [18266] = "\xdb\xc2", -+ [18268] = "\xc3\x22", [18269] = "\xb9\xba", [18270] = "\xc3\x23", -+ [18271] = "\xc7\xd5", [18272] = "\xdb\xbf", [18273] = "\xc5\xec", -+ [18274] = "\xda\xde", [18275] = "\xda\xe2", [18276] = "\xc3\x24", -+ [18277] = "\xb5\xcf", [18278] = "\xc3\x25", [18279] = "\xc7\xc7", -+ [18283] = "\xc3\x26", [18284] = "\xdb\xc1", [18286] = "\xbe\xbe", -+ [18287] = "\xc8\xc4", [18289] = "\xc3\x27", [18292] = "\xc3\x28", -+ [18293] = "\xdb\xc7", [18295] = "\xc8\xfa", [18297] = "\xdb\xbe", -+ [18299] = "\xdb\xc4", [18300] = "\xdb\xc3", [18302] = "\xc3\x29", -+ [18303] = "\xc3\x2a", [18304] = "\xc0\xcf", [18305] = "\xc3\x2b", -+ [18307] = "\xc3\x2c", [18309] = "\xcb\xed", [18310] = "\xc3\x2d", -+ [18311] = "\xce\xd3", [18312] = "\xc3\x2e", [18313] = "\xc3\x2f", -+ [18314] = "\xcb\xe7", [18315] = "\xc3\x30", [18316] = "\xb2\xcc", -+ [18317] = "\xbb\xde", [18320] = "\xcf\xc8", [18321] = "\xdb\xc6", -+ [18322] = "\xbf\xf5", [18326] = "\xdb\xc5", [18329] = "\xdb\xc0", -+ [18335] = "\xb8\xcf", [18336] = "\xc3\x31", [18337] = "\xc3\x32", -+ [18338] = "\xc3\x33", [18339] = "\xdb\xcc", [18340] = "\xdb\xca", -+ [18341] = "\xc3\x34", [18342] = "\xb2\xcd", [18343] = "\xdb\xc8", -+ [18344] = "\xdb\xce", [18345] = "\xdb\xd4", [18347] = "\xc3\x35", -+ [18348] = "\xc3\x36", [18349] = "\xc3\x37", [18352] = "\xc3\x39", -+ [18353] = "\xc2\xc8", [18354] = "\xc3\x3a", [18355] = "\xc3\x3b", -+ [18356] = "\xca\xc1", [18357] = "\xc3\x3c", [18358] = "\xdb\xd6", -+ [18360] = "\xc3\x3d", [18361] = "\xc3\x3e", [18362] = "\xc9\xa2", -+ [18366] = "\xdb\xd5", [18367] = "\xc7\xf0", [18368] = "\xcb\xbf", -+ [18369] = "\xb4\xbb", [18370] = "\xc3\x3f", [18371] = "\xc0\xf7", -+ [18372] = "\xbd\xc0", [18375] = "\xc3\x40", [18376] = "\xc4\xd3", -+ [18377] = "\xc3\x41", [18378] = "\xcd\xae", [18380] = "\xc3\x42", -+ [18381] = "\xdb\xd1", [18382] = "\xdb\xd0", [18385] = "\xc3\x43", -+ [18386] = "\xdb\xd2", [18388] = "\xdb\xcf", [18390] = "\xc3\x44", -+ [18391] = "\xdb\xd7", [18393] = "\xdb\xcd", [18396] = "\xdb\xcb", -+ [18398] = "\xdb\xd3", [18399] = "\xdb\xc9", [18400] = "\xc3\x45", -+ [18401] = "\xc3\xec", [18402] = "\xc3\x46", [18403] = "\xcc\xf8", -+ [18404] = "\xbc\xc6", [18405] = "\xba\xf4", [18406] = "\xc3\x47", -+ [18407] = "\xc3\x48", [18409] = "\xc3\x38", [18411] = "\xba\xba", -+ [18414] = "\xcb\xef", [18415] = "\xb3\xc1", [18417] = "\xf4\x46", -+ [18418] = "\xc4\xce", [18419] = "\xc6\xca", [18420] = "\xb1\xc9", -+ [18435] = "\xc0\xf2", [18436] = "\xc3\x4a", [18438] = "\xc0\xb4", -+ [18439] = "\xb7\xaa", [18441] = "\xc3\x4b", [18445] = "\xc3\x4c", -+ [18446] = "\xdb\xd9", [18447] = "\xc3\x4d", [18449] = "\xb9\xbb", -+ [18450] = "\xb3\xfc", [18455] = "\xc3\x4f", [18456] = "\xc3\x4e", -+ [18457] = "\xdb\xdb", [18458] = "\xb3\xf4", [18459] = "\xdb\xe1", -+ [18460] = "\xc3\x50", [18461] = "\xc3\x51", [18463] = "\xc3\x52", -+ [18464] = "\xc3\x53", [18465] = "\xc3\x54", [18466] = "\xdb\xde", -+ [18467] = "\xc3\x55", [18468] = "\xc0\xf3", [18472] = "\xb3\xcb", -+ [18473] = "\xba\xac", [18475] = "\xc3\x56", [18476] = "\xb3\xca", -+ [18477] = "\xba\xcf", [18479] = "\xc3\x57", [18480] = "\xdb\xdc", -+ [18481] = "\xb7\xe5", [18482] = "\xb7\xcb", [18483] = "\xc5\xed", -+ [18484] = "\xc3\x58", [18485] = "\xc3\x59", [18486] = "\xdb\xda", -+ [18488] = "\xb0\xc6", [18490] = "\xc3\x5a", [18492] = "\xc3\x5b", -+ [18493] = "\xdb\xdd", [18494] = "\xdb\xdf", [18496] = "\xb6\xcd", -+ [18497] = "\xb7\xac", [18498] = "\xc3\x49", [18499] = "\xb4\xbc", -+ [18500] = "\xb5\xcb", [18501] = "\xc3\x5c", [18503] = "\xc3\x5d", -+ [18504] = "\xc3\x5e", [18505] = "\xdb\xe2", [18507] = "\xc3\x5f", -+ [18508] = "\xba\xf9", [18509] = "\xcb\xf1", [18511] = "\xbb\xb7", -+ [18515] = "\xdb\xe3", [18519] = "\xc9\xb0", [18523] = "\xc3\x60", -+ [18526] = "\xc3\x61", [18527] = "\xc3\x62", [18528] = "\xc3\x63", -+ [18529] = "\xc3\x64", [18530] = "\xc3\x65", [18532] = "\xdb\xef", -+ [18533] = "\xc3\x66", [18534] = "\xb2\xb3", [18535] = "\xdb\xe4", -+ [18537] = "\xc3\x67", [18538] = "\xc3\x68", [18539] = "\xc3\x69", -+ [18540] = "\xc3\x6a", [18542] = "\xdb\xf5", [18543] = "\xdb\xe5", -+ [18545] = "\xce\xc2", [18546] = "\xc3\x6b", [18547] = "\xdb\xec", -+ [18548] = "\xc3\x6c", [18549] = "\xc7\xdf", [18550] = "\xc3\x6d", -+ [18552] = "\xc3\x6e", [18557] = "\xdb\xf4", [18559] = "\xdb\xe7", -+ [18563] = "\xb0\xb4", [18564] = "\xdb\xe9", [18566] = "\xc3\x6f", -+ [18567] = "\xb9\xbc", [18568] = "\xc3\x70", [18570] = "\xc3\x71", -+ [18571] = "\xdb\xeb", [18572] = "\xc3\x72", [18573] = "\xdb\xea", -+ [18575] = "\xdb\xe6", [18576] = "\xdb\xf1", [18577] = "\xc3\x73", -+ [18578] = "\xbe\xbf", [18579] = "\xc3\x74", [18581] = "\xc3\x75", -+ [18582] = "\xd4\xed", [18583] = "\xb8\xe8", [18584] = "\xcd\xfc", -+ [18585] = "\xc3\x76", [18586] = "\xc3\x77", [18589] = "\xdb\xe8", -+ [18590] = "\xc3\x78", [18591] = "\xc4\xf4", [18592] = "\xb3\xa3", -+ [18593] = "\xba\xad", [18594] = "\xc3\x79", [18595] = "\xdb\xe0", -+ [18597] = "\xdb\xf0", [18598] = "\xb3\xe1", [18601] = "\xdb\xee", -+ [18602] = "\xdb\xf2", [18603] = "\xc3\x7a", [18604] = "\xc5\xee", -+ [18612] = "\xb4\xfe", [18613] = "\xc3\x7b", [18614] = "\xdc\xb2", -+ [18616] = "\xc3\x7c", [18617] = "\xcc\xc9", [18618] = "\xdb\xf7", -+ [18619] = "\xb4\xfd", [18620] = "\xc3\x7d", [18621] = "\xdb\xfe", -+ [18623] = "\xc3\x7e", [18624] = "\xc4\x21", [18625] = "\xc4\x22", -+ [18626] = "\xcb\xc0", [18627] = "\xc4\x23", [18628] = "\xdc\xa1", -+ [18629] = "\xdc\xa3", [18630] = "\xc4\x24", [18631] = "\xdc\xa7", -+ [18632] = "\xdb\xf9", [18633] = "\xc4\x25", [18634] = "\xc3\xaa", -+ [18636] = "\xc4\x26", [18637] = "\xc4\x27", [18639] = "\xc5\xef", -+ [18640] = "\xdc\xab", [18641] = "\xdb\xfc", [18643] = "\xdc\xa8", -+ [18645] = "\xc4\x28", [18647] = "\xdc\xa2", [18648] = "\xc4\x29", -+ [18650] = "\xc4\x2a", [18651] = "\xc4\x2b", [18652] = "\xc4\x2c", -+ [18653] = "\xc4\x2d", [18654] = "\xbf\xb9", [18655] = "\xdc\xac", -+ [18656] = "\xc4\x2e", [18657] = "\xc4\x2f", [18658] = "\xc0\xb3", -+ [18661] = "\xc4\x30", [18662] = "\xc4\x31", [18665] = "\xdc\xaa", -+ [18666] = "\xb4\xbd", [18667] = "\xc4\x32", [18668] = "\xc4\x33", -+ [18669] = "\xc4\x34", [18672] = "\xcf\xd0", [18673] = "\xdb\xf6", -+ [18676] = "\xdc\xa6", [18677] = "\xb0\xd8", [18678] = "\xc4\x35", -+ [18680] = "\xdb\xf8", [18681] = "\xc4\x36", [18682] = "\xc4\x37", -+ [18683] = "\xcc\xba", [18684] = "\xdb\xfd", [18685] = "\xbf\xa2", -+ [18686] = "\xc4\xc7", [18687] = "\xdb\xf3", [18688] = "\xc4\x38", -+ [18689] = "\xc4\x39", [18690] = "\xdc\xa5", [18691] = "\xc4\x3a", -+ [18694] = "\xc4\x3b", [18695] = "\xc4\x3c", [18697] = "\xbf\xfa", -+ [18698] = "\xdc\xaf", [18699] = "\xb3\xf1", [18700] = "\xb8\xa1", -+ [18705] = "\xdc\xb1", [18706] = "\xdb\xfa", [18707] = "\xdc\xb0", -+ [18709] = "\xdc\xa9", [18710] = "\xdb\xfb", [18712] = "\xdc\xad", -+ [18714] = "\xdc\xae", [18720] = "\xdc\xbf", [18721] = "\xc4\x3d", -+ [18723] = "\xc4\x3e", [18724] = "\xc6\xce", [18725] = "\xc4\x3f", -+ [18726] = "\xdc\xa4", [18728] = "\xc4\x40", [18729] = "\xdc\xbb", -+ [18731] = "\xc4\x41", [18733] = "\xdc\xbd", [18735] = "\xc4\xd8", -+ [18738] = "\xc4\x42", [18741] = "\xc4\x43", [18745] = "\xc4\x44", -+ [18746] = "\xcd\xcc", [18750] = "\xc4\x45", [18755] = "\xc9\xf6", -+ [18756] = "\xdc\xb8", [18757] = "\xc2\xca", [18759] = "\xc4\x46", -+ [18761] = "\xdc\xbe", [18762] = "\xc1\xbf", [18763] = "\xc4\x47", -+ [18764] = "\xdc\xb5", [18765] = "\xdc\xc2", [18766] = "\xdc\xc1", -+ [18768] = "\xc6\xef", [18769] = "\xdc\xc0", [18770] = "\xc6\xea", -+ [18771] = "\xc4\x48", [18772] = "\xc4\x49", [18773] = "\xc4\x4a", -+ [18774] = "\xc4\x4b", [18776] = "\xc4\x4c", [18777] = "\xc4\x4d", -+ [18778] = "\xdc\xc4", [18779] = "\xdc\xb7", [18780] = "\xc4\x4e", -+ [18781] = "\xb6\xc8", [18782] = "\xdc\xba", [18783] = "\xbd\xdd", -+ [18784] = "\xc4\x4f", [18785] = "\xc4\x50", [18786] = "\xc4\x51", -+ [18787] = "\xc7\xe0", [18788] = "\xdc\xbc", [18789] = "\xb6\xcb", -+ [18791] = "\xdc\xb4", [18792] = "\xdc\xb6", [18793] = "\xdc\xb3", -+ [18794] = "\xc4\x52", [18795] = "\xc4\x53", [18796] = "\xcf\xb0", -+ [18797] = "\xb3\xda", [18798] = "\xdc\xb9", [18799] = "\xc4\x54", -+ [18800] = "\xc4\x55", [18801] = "\xdc\xc3", [18802] = "\xb3\xb5", -+ [18810] = "\xba\xe7", [18813] = "\xc4\x56", [18814] = "\xb1\xdd", -+ [18817] = "\xdc\xd4", [18818] = "\xc4\x57", [18820] = "\xcf\xb1", -+ [18821] = "\xdc\xd7", [18822] = "\xc4\x58", [18824] = "\xc4\x59", -+ [18827] = "\xbf\xba", [18828] = "\xdc\xd6", [18832] = "\xdc\xd5", -+ [18833] = "\xc4\x5a", [18837] = "\xc4\x5b", [18838] = "\xc4\x5c", -+ [18839] = "\xdc\xd2", [18840] = "\xc4\x5d", [18843] = "\xc4\x5e", -+ [18845] = "\xc4\x5f", [18846] = "\xdc\xc6", [18847] = "\xc4\x60", -+ [18849] = "\xdc\xe3", [18850] = "\xdc\xc5", [18852] = "\xdc\xd8", -+ [18855] = "\xc4\x61", [18856] = "\xc4\x62", [18858] = "\xc4\x63", -+ [18859] = "\xdc\xd0", [18860] = "\xc4\x64", [18862] = "\xdc\xcb", -+ [18863] = "\xdc\xc8", [18865] = "\xdc\xc9", [18867] = "\xdc\xd1", -+ [18869] = "\xc4\x65", [18871] = "\xf4\xa2", [18872] = "\xc4\x66", -+ [18874] = "\xdc\xce", [18875] = "\xb9\xbd", [18876] = "\xc4\xc8", -+ [18877] = "\xc1\xe4", [18878] = "\xdc\xcc", [18880] = "\xdc\xc7", -+ [18881] = "\xc4\x67", [18883] = "\xdc\xca", [18886] = "\xc4\x68", -+ [18887] = "\xc4\x69", [18888] = "\xcd\xcd", [18889] = "\xcb\xea", -+ [18893] = "\xdc\xcf", [18894] = "\xdc\xd9", [18898] = "\xc4\x6a", -+ [18901] = "\xc4\x6b", [18903] = "\xdc\xe1", [18904] = "\xdc\xda", -+ [18907] = "\xdc\xe7", [18909] = "\xdc\xe5", [18910] = "\xc4\x6c", -+ [18911] = "\xc4\x6d", [18913] = "\xc4\x6e", [18914] = "\xdc\xe0", -+ [18915] = "\xc4\x6f", [18917] = "\xc4\x70", [18921] = "\xdc\xdf", -+ [18923] = "\xc4\xd0", [18925] = "\xc1\xe5", [18926] = "\xc4\x71", -+ [18927] = "\xdc\xdd", [18928] = "\xc4\x72", [18929] = "\xc4\x73", -+ [18930] = "\xdc\xdb", [18931] = "\xc4\x74", [18933] = "\xdc\xe2", -+ [18938] = "\xdc\xe8", [18939] = "\xc8\xf5", [18940] = "\xdc\xee", -+ [18943] = "\xc4\x75", [18945] = "\xc4\x76", [18946] = "\xdc\xe9", -+ [18947] = "\xdc\xec", [18948] = "\xdc\xe6", [18949] = "\xc4\x77", -+ [18951] = "\xc3\xf4", [18953] = "\xc9\xb8", [18954] = "\xc4\x78", -+ [18955] = "\xdc\xdc", [18957] = "\xc4\x79", [18958] = "\xdc\xe4", -+ [18959] = "\xbe\xc0", [18960] = "\xc4\x7a", [18961] = "\xcc\xcf", -+ [18962] = "\xdc\xf8", [18963] = "\xdc\xeb", [18964] = "\xc4\x7b", -+ [18968] = "\xc4\x7c", [18969] = "\xb8\xa2", [18970] = "\xb2\xa3", -+ [18971] = "\xb3\xdf", [18974] = "\xdc\xd3", [18976] = "\xc4\x7d", -+ [18978] = "\xc4\x7e", [18980] = "\xc5\x21", [18981] = "\xbe\xc1", -+ [18982] = "\xdc\xf0", [18983] = "\xc5\x22", [18984] = "\xdc\xf7", -+ [18985] = "\xbc\xf9", [18986] = "\xb3\xf2", [18987] = "\xc5\x23", -+ [18989] = "\xc3\xae", [18990] = "\xc5\x24", [18991] = "\xc5\x25", -+ [18996] = "\xdc\xed", [18997] = "\xc5\x26", [18998] = "\xc5\x27", -+ [18999] = "\xdc\xf2", [19000] = "\xdc\xf6", [19001] = "\xc5\x28", -+ [19002] = "\xc5\x29", [19003] = "\xb6\xb6", [19006] = "\xc5\x2a", -+ [19008] = "\xc5\x2b", [19009] = "\xc5\x2c", [19010] = "\xc5\x2d", -+ [19013] = "\xc5\x2e", [19014] = "\xc5\x2f", [19016] = "\xb5\xcc", -+ [19017] = "\xdc\xf4", [19019] = "\xc5\x30", [19023] = "\xb5\xa1", -+ [19025] = "\xc6\xcb", [19026] = "\xdc\xf3", [19028] = "\xc5\x31", -+ [19030] = "\xdc\xf5", [19031] = "\xc5\x32", [19034] = "\xc5\x33", -+ [19035] = "\xf4\x49", [19041] = "\xc5\x34", [19042] = "\xdc\xef", -+ [19043] = "\xc5\x35", [19048] = "\xdc\xf1", [19054] = "\xc5\x36", -+ [19055] = "\xb3\xe0", [19056] = "\xc3\xc9", [19057] = "\xc5\x37", -+ [19059] = "\xc5\x38", [19060] = "\xdc\xfc", [19062] = "\xc5\x39", -+ [19063] = "\xc5\x3a", [19065] = "\xc5\x3b", [19067] = "\xc5\x3c", -+ [19069] = "\xdc\xfa", [19070] = "\xb8\xe9", [19072] = "\xdc\xf9", -+ [19073] = "\xc5\x3d", [19079] = "\xdd\xa1", [19083] = "\xc5\x3e", -+ [19084] = "\xdb\xd8", [19085] = "\xc5\x3f", [19086] = "\xc5\x40", -+ [19087] = "\xc5\x41", [19088] = "\xdc\xfb", [19090] = "\xdc\xfd", -+ [19091] = "\xdc\xfe", [19093] = "\xc5\x42", [19098] = "\xdd\xac", -+ [19099] = "\xc5\x43", [19100] = "\xdd\xa8", [19102] = "\xdb\xed", -+ [19103] = "\xc5\x44", [19104] = "\xc5\x45", [19105] = "\xc5\x46", -+ [19107] = "\xdd\xa7", [19108] = "\xc5\x47", [19112] = "\xdd\xa6", -+ [19115] = "\xdd\xa3", [19117] = "\xc5\x48", [19118] = "\xc5\x49", -+ [19119] = "\xc5\x4a", [19121] = "\xdc\xea", [19122] = "\xdd\xa5", -+ [19123] = "\xdd\xa4", [19126] = "\xc5\x4b", [19128] = "\xc5\x4d", -+ [19129] = "\xc5\x4c", [19132] = "\xc5\x4e", [19136] = "\xc5\x4f", -+ [19137] = "\xdd\xaa", [19139] = "\xcf\xa6", [19140] = "\xc5\x50", -+ [19141] = "\xc5\x51", [19142] = "\xc5\x52", [19146] = "\xdd\xad", -+ [19147] = "\xb6\xfb", [19148] = "\xc5\x53", [19149] = "\xc5\x54", -+ [19150] = "\xdd\xa9", [19151] = "\xdd\xab", [19154] = "\xf4\x4a", -+ [19156] = "\xc5\x55", [19159] = "\xc5\x56", [19160] = "\xc8\xa7", -+ [19162] = "\xdd\xae", [19164] = "\xc5\x57", [19168] = "\xc5\x58", -+ [19169] = "\xc5\x59", [19170] = "\xc5\x5a", [19178] = "\xdd\xb2", -+ [19179] = "\xdd\xaf", [19180] = "\xc5\x5b", [19181] = "\xc5\x5c", -+ [19186] = "\xc5\x5d", [19187] = "\xc5\x5e", [19188] = "\xcd\xf3", -+ [19189] = "\xdd\xb0", [19190] = "\xc5\x5f", [19191] = "\xc5\x60", -+ [19193] = "\xc5\x61", [19194] = "\xdc\xde", [19199] = "\xc5\x62", -+ [19200] = "\xc5\x63", [19201] = "\xc5\x64", [19202] = "\xdd\xb3", -+ [19206] = "\xdd\xb4", [19207] = "\xc5\x65", [19211] = "\xc5\x66", -+ [19213] = "\xb1\xb5", [19214] = "\xc5\x67", [19215] = "\xdd\xb6", -+ [19216] = "\xb7\xe7", [19217] = "\xbc\xa1", [19219] = "\xb6\xd5", -+ [19220] = "\xc5\x68", [19223] = "\xb2\xa4", [19224] = "\xc5\x69", -+ [19227] = "\xc5\x6a", [19228] = "\xc5\x6b", [19231] = "\xc5\x6c", -+ [19234] = "\xcd\xdf", [19237] = "\xc5\x6d", [19238] = "\xc5\x6e", -+ [19239] = "\xdd\xb8", [19240] = "\xdd\xb7", [19241] = "\xdd\xba", -+ [19242] = "\xb5\xbd", [19243] = "\xc5\x6f", [19245] = "\xb6\xd6", -+ [19246] = "\xb4\xbe", [19247] = "\xc5\x70", [19251] = "\xdd\xbd", -+ [19254] = "\xc5\x71", [19255] = "\xdd\xbc", [19257] = "\xdd\xbe", -+ [19258] = "\xc5\x72", [19260] = "\xb2\xce", [19261] = "\xc5\x73", -+ [19262] = "\xc3\xb7", [19264] = "\xdd\xbf", [19266] = "\xc5\x74", -+ [19267] = "\xb4\xbf", [19268] = "\xdd\xc1", [19270] = "\xc5\x75", -+ [19272] = "\xc5\x76", [19273] = "\xdd\xc0", [19275] = "\xdd\xc2", -+ [19277] = "\xc5\x77", [19279] = "\xdd\xc3", [19280] = "\xc5\x78", -+ [19281] = "\xdd\xc4", [19282] = "\xbb\xdf", [19283] = "\xc0\xb5", -+ [19284] = "\xba\xa1", [19286] = "\xc9\xf0", [19287] = "\xc5\x79", -+ [19289] = "\xca\xe2", [19290] = "\xcf\xc4", [19291] = "\xc5\x7a", -+ [19294] = "\xc5\x7b", [19295] = "\xbb\xf5", [19296] = "\xc5\x7c", -+ [19299] = "\xba\xd0", [19300] = "\xce\xf2", [19301] = "\xc5\x7d", -+ [19304] = "\xdd\xc5", [19305] = "\xdd\xc6", [19307] = "\xbb\xe0", -+ [19309] = "\xc5\x7e", [19310] = "\xc6\x21", [19311] = "\xdd\xc7", -+ [19312] = "\xdd\xc8", [19314] = "\xc6\x22", [19315] = "\xdd\xca", -+ [19316] = "\xdd\xc9", [19317] = "\xc6\x23", [19318] = "\xcb\xd8", -+ [19321] = "\xbd\xde", [19322] = "\xbc\xec", [19323] = "\xbb\xc4", -+ [19325] = "\xdd\xcb", [19333] = "\xdd\xcd", [19334] = "\xbf\xa3", -+ [19335] = "\xc6\x24", [19336] = "\xdd\xcc", [19339] = "\xc6\x25", -+ [19342] = "\xdd\xce", [19343] = "\xc6\x26", [19344] = "\xc6\x27", -+ [19346] = "\xc6\x28", [19347] = "\xc6\x29", [19348] = "\xdd\xcf", -+ [19352] = "\xc6\x2a", [19353] = "\xc6\x2b", [19354] = "\xdd\xd0", -+ [19355] = "\xdd\xd1", [19356] = "\xc6\x2c", [19357] = "\xc6\x2d", -+ [19358] = "\xc6\x2e", [19359] = "\xdd\xd2", [19360] = "\xc6\x2f", -+ [19361] = "\xdd\xd4", [19362] = "\xdd\xd3", [19363] = "\xdd\xd5", -+ [19364] = "\xb2\xa5", [19365] = "\xc3\xca", [19367] = "\xdd\xd6", -+ [19368] = "\xc6\x30", [19369] = "\xc6\x31", [19370] = "\xbb\xa6", -+ [19371] = "\xb3\xcc", [19372] = "\xdd\xd7", [19373] = "\xc6\x32", -+ [19374] = "\xc6\x33", [19375] = "\xc5\xc2", [19376] = "\xd4\xcc", -+ [19379] = "\xc6\x34", [19380] = "\xc6\x35", [19381] = "\xb5\xa3", -+ [19382] = "\xdd\xd8", [19385] = "\xc6\x36", [19387] = "\xdd\xd9", -+ [19388] = "\xc6\x37", [19389] = "\xca\xec", [19390] = "\xcb\xe8", -+ [19394] = "\xc6\xc7", [19395] = "\xdd\xda", [19396] = "\xc8\xe6", -+ [19398] = "\xc6\x38", [19400] = "\xc8\xfb", [19402] = "\xc6\x39", -+ [19403] = "\xcc\xd3", [19407] = "\xdd\xdb", [19409] = "\xc6\x3a", -+ [19411] = "\xc6\x3b", [19414] = "\xc6\x3c", [19415] = "\xc6\x3d", -+ [19419] = "\xdd\xdd", [19420] = "\xdd\xdc", [19422] = "\xc6\x3e", -+ [19423] = "\xdd\xdf", [19425] = "\xc6\x3f", [19427] = "\xdd\xde", -+ [19431] = "\xc6\x40", [19433] = "\xc6\x41", [19439] = "\xc6\x42", -+ [19442] = "\xc6\x43", [19444] = "\xc6\x44", [19445] = "\xc6\x45", -+ [19448] = "\xdd\xe1", [19449] = "\xc6\x46", [19453] = "\xc6\x47", -+ [19454] = "\xc6\x48", [19455] = "\xbb\xe1", [19456] = "\xc6\x49", -+ [19457] = "\xcc\xb1", [19458] = "\xc6\x4a", [19459] = "\xdd\xe2", -+ [19460] = "\xdd\xe3", [19463] = "\xb5\xa4", [19465] = "\xc6\x4b", -+ [19467] = "\xdd\xe4", [19471] = "\xc6\x4c", [19475] = "\xdd\xe6", -+ [19476] = "\xdd\xe5", [19478] = "\xc6\x4d", [19479] = "\xc6\x4e", -+ [19480] = "\xc6\x4f", [19484] = "\xc6\x50", [19486] = "\xc6\x51", -+ [19491] = "\xc6\x52", [19492] = "\xbf\xe5", [19493] = "\xc6\x53", -+ [19494] = "\xc6\x54", [19495] = "\xc9\xb9", [19496] = "\xb1\xca", -+ [19498] = "\xc6\x55", [19499] = "\xc6\x56", [19502] = "\xc8\xc5", -+ [19503] = "\xc6\x57", [19504] = "\xc4\xf5", [19505] = "\xbd\xc1", -+ [19506] = "\xb5\xe1", [19514] = "\xc6\x58", [19515] = "\xc6\x59", -+ [19517] = "\xc6\x5a", [19518] = "\xc8\xc6", [19519] = "\xc6\x5b", -+ [19520] = "\xbc\xae", [19522] = "\xc6\x5c", [19524] = "\xc6\x5d", -+ [19525] = "\xdd\xe8", [19527] = "\xb4\xc0", [19529] = "\xc6\x5e", -+ [19530] = "\xb1\xf8", [19531] = "\xc6\x5f", [19532] = "\xc6\x60", -+ [19533] = "\xc6\xf2", [19534] = "\xdd\xe7", [19535] = "\xb9\xbe", -+ [19536] = "\xc3\xd3", [19538] = "\xdd\xe9", [19543] = "\xc7\x36", -+ [19544] = "\xdd\xf1", [19546] = "\xdd\xea", [19547] = "\xc6\x61", -+ [19549] = "\xc6\x62", [19551] = "\xc6\x63", [19552] = "\xc2\xc1", -+ [19554] = "\xb5\xe2", [19555] = "\xdd\xf2", [19556] = "\xc6\x64", -+ [19558] = "\xc6\x65", [19560] = "\xc6\x66", [19561] = "\xc6\x67", -+ [19562] = "\xb7\xe8", [19563] = "\xc6\x68", [19565] = "\xb5\xa5", -+ [19566] = "\xdd\xf0", [19569] = "\xdd\xee", [19570] = "\xdd\xeb", -+ [19571] = "\xcd\xe0", [19573] = "\xc6\x69", [19574] = "\xc6\x6a", -+ [19575] = "\xc6\x6b", [19576] = "\xc4\xc0", [19577] = "\xc6\x6c", -+ [19580] = "\xc6\xd9", [19581] = "\xdd\xec", [19584] = "\xdd\xf4", -+ [19586] = "\xdd\xf3", [19587] = "\xb7\xa3", [19588] = "\xc6\x6d", -+ [19589] = "\xc6\x6e", [19590] = "\xb2\xad", [19591] = "\xc6\x6f", -+ [19592] = "\xc6\x70", [19593] = "\xba\xbb", [19594] = "\xdd\xed", -+ [19595] = "\xdd\xef", [19596] = "\xc6\x71", [19599] = "\xc6\x72", -+ [19601] = "\xcb\xd7", [19602] = "\xc2\xf4", [19611] = "\xcb\xf7", -+ [19614] = "\xdd\xfc", [19616] = "\xc6\x73", [19617] = "\xdd\xfd", -+ [19618] = "\xc6\x74", [19619] = "\xb2\xcf", [19620] = "\xc6\x75", -+ [19624] = "\xca\xa8", [19625] = "\xcc\xfd", [19626] = "\xde\xa1", -+ [19627] = "\xbc\xa3", [19628] = "\xbe\xc2", [19629] = "\xdd\xf8", -+ [19630] = "\xdd\xfe", [19631] = "\xb1\xe8", [19633] = "\xb6\xb7", -+ [19634] = "\xc6\x76", [19636] = "\xdd\xf5", [19637] = "\xdd\xfa", -+ [19638] = "\xc6\x77", [19641] = "\xc0\xf4", [19642] = "\xc7\xf1", -+ [19644] = "\xc8\xe7", [19645] = "\xc6\x78", [19647] = "\xc6\x79", -+ [19648] = "\xc6\x7a", [19649] = "\xc6\x7b", [19650] = "\xc6\x7c", -+ [19651] = "\xdd\xf7", [19652] = "\xc6\x7d", [19653] = "\xcb\xa1", -+ [19654] = "\xc6\x7e", [19655] = "\xdd\xf9", [19657] = "\xde\xa4", -+ [19658] = "\xc7\x21", [19659] = "\xde\xa2", [19660] = "\xc7\x22", -+ [19661] = "\xdd\xfb", [19664] = "\xc7\x23", [19665] = "\xcb\xa2", -+ [19666] = "\xc7\xc8", [19667] = "\xb5\xe3", [19669] = "\xc5\xa5", -+ [19671] = "\xc7\x24", [19672] = "\xc3\xed", [19673] = "\xc7\x25", -+ [19674] = "\xde\xa5", [19675] = "\xc7\x26", [19676] = "\xc7\x27", -+ [19678] = "\xc7\x28", [19679] = "\xde\xa3", [19680] = "\xc2\xd9", -+ [19681] = "\xdd\xf6", [19682] = "\xc7\x29", [19683] = "\xb1\xcb", -+ [19684] = "\xc7\x2a", [19700] = "\xc7\x2b", [19703] = "\xc7\x2c", -+ [19706] = "\xc7\x2d", [19707] = "\xcd\xce", [19708] = "\xde\xb0", -+ [19710] = "\xc7\x2e", [19711] = "\xc7\x2f", [19713] = "\xc7\x30", -+ [19714] = "\xde\xaf", [19715] = "\xc7\x31", [19719] = "\xc0\xf6", -+ [19721] = "\xde\xac", [19722] = "\xc7\x32", [19723] = "\xcd\xec", -+ [19726] = "\xc6\xb6", [19727] = "\xde\xa6", [19733] = "\xc4\xc5", -+ [19734] = "\xc7\x33", [19735] = "\xc7\x34", [19736] = "\xc7\x35", -+ [19737] = "\xb1\xcc", [19738] = "\xb9\xbf", [19739] = "\xde\xa9", -+ [19742] = "\xc7\x37", [19743] = "\xc7\x38", [19745] = "\xc7\x39", -+ [19746] = "\xbd\xa7", [19747] = "\xde\xae", [19749] = "\xde\xad", -+ [19750] = "\xde\xa8", [19752] = "\xde\xab", [19753] = "\xc7\x3a", -+ [19755] = "\xb3\xe8", [19756] = "\xc7\x3b", [19757] = "\xde\xaa", -+ [19758] = "\xc7\xc9", [19759] = "\xc7\x3c", [19761] = "\xce\xae", -+ [19764] = "\xbe\xf4", [19765] = "\xc0\xf5", [19783] = "\xc7\x3d", -+ [19785] = "\xde\xb6", [19786] = "\xde\xb4", [19788] = "\xc9\xcd", -+ [19790] = "\xc7\x3e", [19791] = "\xc7\x3f", [19793] = "\xc7\x40", -+ [19795] = "\xde\xb1", [19796] = "\xde\xb3", [19797] = "\xc7\x41", -+ [19798] = "\xb1\xba", [19799] = "\xc7\x42", [19801] = "\xb9\xc0", -+ [19802] = "\xcf\xb2", [19804] = "\xb3\xbd", [19806] = "\xc9\xe2", -+ [19807] = "\xc7\x43", [19808] = "\xc7\x44", [19812] = "\xcd\xe1", -+ [19815] = "\xb3\xa4", [19816] = "\xbf\xbb", [19817] = "\xde\xb5", -+ [19820] = "\xc7\x45", [19826] = "\xc7\x46", [19829] = "\xde\xba", -+ [19831] = "\xc7\x47", [19832] = "\xbe\xc3", [19836] = "\xcd\xb0", -+ [19838] = "\xde\xb7", [19841] = "\xc7\x48", [19842] = "\xc7\x49", -+ [19843] = "\xde\xb2", [19844] = "\xc7\x4a", [19845] = "\xde\xb8", -+ [19846] = "\xc7\x4b", [19847] = "\xc7\x4c", [19848] = "\xc7\x4d", -+ [19849] = "\xce\xde", [19851] = "\xc5\xf3", [19852] = "\xc6\xc2", -+ [19866] = "\xc7\x4e", [19868] = "\xc7\x4f", [19871] = "\xb3\xb6", -+ [19874] = "\xb1\xd5", [19876] = "\xc7\x50", [19877] = "\xde\xbe", -+ [19879] = "\xc7\x51", [19880] = "\xde\xc1", [19881] = "\xc7\x52", -+ [19884] = "\xce\xc3", [19885] = "\xc7\x53", [19887] = "\xc7\x54", -+ [19888] = "\xcd\xe4", [19892] = "\xc7\x55", [19893] = "\xde\xc8", -+ [19894] = "\xde\xc2", [19895] = "\xde\xbf", [19896] = "\xc7\x56", -+ [19898] = "\xc7\x57", [19899] = "\xce\xd4", [19900] = "\xde\xc5", -+ [19902] = "\xc7\x58", [19903] = "\xc7\x59", [19905] = "\xbd\xca", -+ [19906] = "\xde\xc7", [19909] = "\xde\xcc", [19910] = "\xc7\x5a", -+ [19912] = "\xc5\xf1", [19913] = "\xde\xca", [19915] = "\xc7\x5b", -+ [19917] = "\xc7\x5c", [19918] = "\xde\xc4", [19919] = "\xc7\x5d", -+ [19920] = "\xc7\x5e", [19921] = "\xc3\xb8", [19922] = "\xc7\x5f", -+ [19924] = "\xde\xcb", [19925] = "\xc7\x60", [19926] = "\xde\xc0", -+ [19928] = "\xde\xc6", [19929] = "\xc7\x61", [19930] = "\xde\xcd", -+ [19931] = "\xb0\xfc", [19932] = "\xde\xc3", [19934] = "\xde\xce", -+ [19935] = "\xc7\x62", [19936] = "\xc7\x63", [19937] = "\xbf\xbc", -+ [19938] = "\xf4\x4c", [19939] = "\xbd\xdf", [19940] = "\xc7\x64", -+ [19941] = "\xca\xa5", [19942] = "\xc7\x65", [19943] = "\xba\xae", -+ [19944] = "\xf4\x4b", [19945] = "\xde\xbb", [19946] = "\xde\xc9", -+ [19947] = "\xc5\xba", [19948] = "\xc7\x66", [19952] = "\xc7\x67", -+ [19956] = "\xc7\x68", [19957] = "\xc0\xb6", [19959] = "\xb3\xe9", -+ [19960] = "\xba\xd1", [19961] = "\xbe\xc4", [19962] = "\xde\xbd", -+ [19963] = "\xbd\xc2", [19971] = "\xb7\xcc", [19973] = "\xde\xbc", -+ [19977] = "\xde\xd2", [19978] = "\xbd\xed", [19979] = "\xb8\xba", -+ [19981] = "\xde\xe1", [19982] = "\xc7\x69", [19983] = "\xde\xdb", -+ [19984] = "\xb5\xf4", [19985] = "\xc5\xcf", [19986] = "\xc7\x6a", -+ [19987] = "\xde\xd6", [19988] = "\xde\xdf", [19989] = "\xb0\xaf", -+ [19990] = "\xb1\xb2", [19991] = "\xc7\x6b", [19993] = "\xb2\xb9", -+ [19995] = "\xde\xd8", [19996] = "\xc2\xac", [19997] = "\xde\xcf", -+ [19998] = "\xde\xd1", [19999] = "\xb9\xc1", [20002] = "\xc7\x6c", -+ [20006] = "\xc7\x6d", [20008] = "\xde\xe2", [20009] = "\xc7\x6e", -+ [20010] = "\xde\xdd", [20011] = "\xc7\x6f", [20012] = "\xc7\x70", -+ [20014] = "\xde\xd5", [20019] = "\xde\xdc", [20020] = "\xc7\x71", -+ [20021] = "\xc7\x72", [20024] = "\xc7\x73", [20025] = "\xc7\x74", -+ [20026] = "\xcc\xab", [20027] = "\xc7\x75", [20029] = "\xde\xda", -+ [20030] = "\xde\xde", [20031] = "\xc7\x76", [20033] = "\xc7\x77", -+ [20034] = "\xc7\x78", [20035] = "\xc7\x79", [20036] = "\xc7\x7a", -+ [20038] = "\xb8\xd0", [20039] = "\xc7\x7b", [20040] = "\xbe\xc5", -+ [20043] = "\xc3\xb9", [20044] = "\xc7\x7c", [20045] = "\xc7\x7d", -+ [20046] = "\xc7\x7e", [20047] = "\xde\xd4", [20050] = "\xc8\x21", -+ [20051] = "\xc8\x22", [20055] = "\xcd\xaf", [20056] = "\xc8\x23", -+ [20059] = "\xde\xd7", [20062] = "\xde\xd0", [20063] = "\xc5\xf2", -+ [20066] = "\xde\xd3", [20067] = "\xc8\x24", [20070] = "\xde\xd9", -+ [20075] = "\xc8\x25", [20077] = "\xc8\x26", [20078] = "\xcf\xd1", -+ [20079] = "\xbc\xbe", [20080] = "\xcb\xfe", [20082] = "\xde\xe3", -+ [20092] = "\xc8\xae", [20093] = "\xc8\x27", [20095] = "\xde\xef", -+ [20096] = "\xb8\xbb", [20099] = "\xc8\x28", [20102] = "\xbd\xe0", -+ [20104] = "\xde\xe5", [20105] = "\xc8\x29", [20108] = "\xce\xaf", -+ [20109] = "\xb9\xc2", [20111] = "\xde\xf2", [20112] = "\xc8\x2a", -+ [20114] = "\xb0\xee", [20117] = "\xde\xf0", [20119] = "\xc8\x2b", -+ [20122] = "\xde\xe4", [20125] = "\xc8\x2c", [20126] = "\xc8\x2d", -+ [20127] = "\xde\xea", [20129] = "\xc8\x2e", [20130] = "\xde\xec", -+ [20131] = "\xc8\x2f", [20134] = "\xcd\xcf", [20135] = "\xde\xe7", -+ [20138] = "\xc5\xae", [20139] = "\xc8\x30", [20141] = "\xde\xe9", -+ [20143] = "\xc8\x31", [20144] = "\xc8\x32", [20145] = "\xc8\x33", -+ [20146] = "\xde\xf1", [20147] = "\xc8\x34", [20148] = "\xde\xeb", -+ [20149] = "\xcc\xc7", [20151] = "\xc8\x35", [20152] = "\xc8\x36", -+ [20153] = "\xde\xe6", [20154] = "\xc8\x37", [20155] = "\xbc\xa2", -+ [20156] = "\xde\xfe", [20157] = "\xc8\x38", [20158] = "\xc8\x39", -+ [20159] = "\xc8\x3a", [20161] = "\xb3\xea", [20163] = "\xde\xe8", -+ [20164] = "\xde\xed", [20165] = "\xde\xee", [20173] = "\xc2\xec", -+ [20174] = "\xc2\xda", [20187] = "\xc8\x3b", [20188] = "\xde\xf6", -+ [20189] = "\xc8\x3c", [20190] = "\xc8\x3d", [20191] = "\xde\xfc", -+ [20194] = "\xde\xfa", [20196] = "\xc5\xa9", [20199] = "\xdf\xa3", -+ [20200] = "\xde\xf7", [20201] = "\xc8\x3e", [20203] = "\xc8\x3f", -+ [20205] = "\xc8\x40", [20206] = "\xde\xf8", [20207] = "\xde\xe0", -+ [20209] = "\xb5\xf9", [20210] = "\xc9\xba", [20212] = "\xc8\x41", -+ [20214] = "\xbc\xbf", [20216] = "\xc8\x42", [20217] = "\xb9\xf7", -+ [20218] = "\xc8\x43", [20220] = "\xc8\x44", [20221] = "\xc8\x45", -+ [20223] = "\xcf\xb3", [20225] = "\xde\xf4", [20227] = "\xdf\xa2", -+ [20228] = "\xb1\xe9", [20229] = "\xc1\xe6", [20230] = "\xc8\x46", -+ [20232] = "\xc8\x47", [20234] = "\xc8\x48", [20235] = "\xc8\x49", -+ [20240] = "\xc7\xf9", [20242] = "\xb4\xc1", [20243] = "\xce\xfa", -+ [20246] = "\xc8\x4a", [20249] = "\xc8\x4b", [20250] = "\xc8\x4c", -+ [20251] = "\xcc\xa1", [20252] = "\xc4\xd2", [20253] = "\xc8\x53", -+ [20255] = "\xc8\x4d", [20256] = "\xc8\x4e", [20257] = "\xde\xfb", -+ [20258] = "\xde\xfd", [20259] = "\xc8\x4f", [20262] = "\xc8\x50", -+ [20264] = "\xc1\xb2", [20267] = "\xc8\x51", [20268] = "\xc8\x52", -+ [20270] = "\xdf\xa1", [20271] = "\xde\xf9", [20273] = "\xde\xf3", -+ [20277] = "\xb4\xc3", [20287] = "\xc8\x54", [20289] = "\xc8\x55", -+ [20290] = "\xc8\x56", [20291] = "\xc8\x57", [20292] = "\xb7\xe9", -+ [20295] = "\xc8\x58", [20296] = "\xdf\xaf", [20297] = "\xc8\x59", -+ [20298] = "\xc8\x5a", [20299] = "\xdf\xaa", [20300] = "\xc0\xf8", -+ [20301] = "\xc8\x5b", [20302] = "\xc8\x5c", [20303] = "\xb3\xe3", -+ [20305] = "\xc8\x5d", [20306] = "\xc8\x5e", [20308] = "\xbd\xe1", -+ [20310] = "\xdf\xb3", [20312] = "\xc8\x5f", [20316] = "\xc8\x60", -+ [20317] = "\xdf\xac", [20318] = "\xc4\xac", [20319] = "\xdf\xa9", -+ [20320] = "\xc4\xd9", [20324] = "\xdf\xcc", [20328] = "\xdf\xa6", -+ [20330] = "\xdf\xa5", [20332] = "\xdf\xae", [20333] = "\xc8\x61", -+ [20334] = "\xc8\x62", [20336] = "\xdf\xa8", [20337] = "\xdf\xa7", -+ [20338] = "\xdf\xad", [20339] = "\xc8\x63", [20340] = "\xc0\xa1", -+ [20342] = "\xdf\xa4", [20343] = "\xc8\x64", [20344] = "\xc8\x65", -+ [20347] = "\xc8\x66", [20348] = "\xc8\x67", [20349] = "\xc8\x68", -+ [20350] = "\xdf\xb0", [20352] = "\xc8\x69", [20353] = "\xdf\xb1", -+ [20354] = "\xc8\x6a", [20355] = "\xc8\x6b", [20356] = "\xc8\x6c", -+ [20358] = "\xc8\x6d", [20359] = "\xb4\xc2", [20362] = "\xc8\x6e", -+ [20367] = "\xc8\x6f", [20368] = "\xc8\x70", [20369] = "\xdf\xb6", -+ [20371] = "\xdf\xb5", [20372] = "\xdf\xb7", [20373] = "\xc8\x71", -+ [20374] = "\xc8\x72", [20375] = "\xc8\x73", [20376] = "\xc8\x74", -+ [20378] = "\xdf\xba", [20382] = "\xc8\x75", [20383] = "\xc8\x76", -+ [20384] = "\xc8\x77", [20385] = "\xc5\xc3", [20387] = "\xdf\xb4", -+ [20389] = "\xc8\x78", [20390] = "\xc8\x79", [20393] = "\xdf\xb8", -+ [20396] = "\xc8\x7a", [20400] = "\xb7\xe3", [20401] = "\xc2\xf9", -+ [20402] = "\xdf\xb2", [20403] = "\xc7\xbb", [20405] = "\xc8\x7b", -+ [20406] = "\xdf\xb9", [20407] = "\xc8\x7c", [20408] = "\xc8\x7d", -+ [20410] = "\xc8\x7e", [20420] = "\xdf\xbe", [20421] = "\xdf\xbc", -+ [20424] = "\xdf\xbf", [20426] = "\xc9\x21", [20427] = "\xdf\xc2", -+ [20430] = "\xc9\x22", [20431] = "\xdf\xbb", [20432] = "\xb9\xea", -+ [20433] = "\xc7\xa8", [20436] = "\xde\xb9", [20440] = "\xc9\x23", -+ [20441] = "\xc9\x24", [20443] = "\xcd\xf4", [20444] = "\xdf\xbd", -+ [20446] = "\xdf\xc1", [20447] = "\xc2\xf5", [20448] = "\xc9\x25", -+ [20449] = "\xdf\xc0", [20451] = "\xdf\xab", [20453] = "\xc9\x26", -+ [20454] = "\xef\xe9", [20457] = "\xc9\x27", [20458] = "\xdf\xc5", -+ [20460] = "\xc9\x28", [20461] = "\xc9\x29", [20462] = "\xdf\xc9", -+ [20464] = "\xc9\x2a", [20465] = "\xdf\xc7", [20469] = "\xc9\x2b", -+ [20470] = "\xc9\x2c", [20471] = "\xc9\x2d", [20473] = "\xdf\xc3", -+ [20475] = "\xdf\xc4", [20477] = "\xc9\x2e", [20479] = "\xdf\xc8", -+ [20481] = "\xdf\xc6", [20485] = "\xc9\xce", [20487] = "\xc9\x2f", -+ [20488] = "\xdf\xce", [20490] = "\xdf\xcb", [20491] = "\xdf\xca", -+ [20493] = "\xdf\xcd", [20494] = "\xc6\xd4", [20495] = "\xdf\xcf", -+ [20496] = "\xc9\x30", [20499] = "\xc9\x31", [20502] = "\xc3\xf5", -+ [20503] = "\xc2\xed", [20504] = "\xf4\x4d", [20508] = "\xc0\xa5", -+ [20511] = "\xc9\x32", [20512] = "\xdf\xd0", [20514] = "\xdf\xd2", -+ [20516] = "\xc9\x33", [20519] = "\xc9\x34", [20521] = "\xc9\x35", -+ [20524] = "\xc9\x36", [20526] = "\xdf\xd1", [20531] = "\xc9\x37", -+ [20532] = "\xc9\x38", [20536] = "\xc9\x39", [20537] = "\xc9\x3a", -+ [20538] = "\xc9\x3b", [20539] = "\xc9\x3c", [20540] = "\xde\xf5", -+ [20542] = "\xc9\x41", [20545] = "\xdf\xd3", [20548] = "\xc9\x3d", -+ [20549] = "\xc9\x3e", [20552] = "\xc6\xe7", [20557] = "\xc9\x3f", -+ [20558] = "\xc9\x40", [20563] = "\xdf\xd4", [20564] = "\xc9\x42", -+ [20565] = "\xc9\x43", [20571] = "\xb2\xd0", [20572] = "\xc9\x44", -+ [20574] = "\xc9\x45", [20575] = "\xc5\xf4", [20576] = "\xb3\xa5", -+ [20581] = "\xc9\x46", [20582] = "\xc9\x47", [20584] = "\xb5\xe4", -+ [20588] = "\xbc\xde", [20589] = "\xba\xd2", [20590] = "\xc9\x48", -+ [20593] = "\xc9\x49", [20597] = "\xc9\x4a", [20598] = "\xc9\x4b", -+ [20601] = "\xcf\xa7", [20602] = "\xbf\xe6", [20606] = "\xb1\xea", -+ [20610] = "\xdf\xd6", [20612] = "\xc9\x4c", [20613] = "\xc9\x4d", -+ [20614] = "\xc9\x4e", [20615] = "\xc9\x4f", [20616] = "\xc9\x50", -+ [20617] = "\xdf\xd5", [20619] = "\xc9\x51", [20628] = "\xc9\x52", -+ [20635] = "\xc9\x53", [20636] = "\xdf\xd9", [20637] = "\xc3\xba", -+ [20638] = "\xdf\xdc", [20639] = "\xdf\xd7", [20640] = "\xc9\x54", -+ [20641] = "\xc9\x55", [20643] = "\xdf\xdb", [20644] = "\xc9\x56", -+ [20647] = "\xc9\x57", [20648] = "\xdf\xda", [20649] = "\xc5\xc0", -+ [20650] = "\xb0\xd9", [20651] = "\xf4\x2e", [20664] = "\xce\xf5", -+ [20666] = "\xc9\x58", [20667] = "\xdf\xde", [20671] = "\xb1\xa8", -+ [20673] = "\xc9\x59", [20675] = "\xc9\x5a", [20676] = "\xc9\x5b", -+ [20677] = "\xc9\x5c", [20678] = "\xc9\x5d", [20680] = "\xc9\x5e", -+ [20681] = "\xdf\xe0", [20684] = "\xc9\x5f", [20685] = "\xdf\xdf", -+ [20687] = "\xdf\xdd", [20692] = "\xc9\x60", [20705] = "\xdf\xd8", -+ [20713] = "\xcb\xa3", [20714] = "\xc9\x61", [20717] = "\xdf\xe2", -+ [20723] = "\xc9\x62", [20724] = "\xc9\x63", [20725] = "\xc9\x64", -+ [20726] = "\xc9\x65", [20727] = "\xc9\x66", [20729] = "\xdf\xe1", -+ [20731] = "\xc9\x67", [20732] = "\xc9\x68", [20735] = "\xc9\x69", -+ [20740] = "\xb1\xeb", [20745] = "\xdf\xe4", [20746] = "\xca\xb2", -+ [20748] = "\xdf\xe3", [20750] = "\xc9\x6a", [20752] = "\xc9\x6b", -+ [20753] = "\xcc\xb5", [20758] = "\xbe\xc7", [20763] = "\xc9\x6c", -+ [20765] = "\xc9\x6d", [20767] = "\xc9\x6e", [20768] = "\xc9\x6f", -+ [20769] = "\xc9\x70", [20774] = "\xc1\xb3", [20776] = "\xc9\x71", -+ [20780] = "\xbe\xc6", [20785] = "\xc9\x72", [20789] = "\xc9\x73", -+ [20790] = "\xc9\x74", [20791] = "\xc9\x75", [20793] = "\xce\xfb", -+ [20794] = "\xc9\x76", [20795] = "\xc9\x77", [20796] = "\xdf\xea", -+ [20798] = "\xc0\xf9", [20800] = "\xc9\x78", [20802] = "\xc9\x79", -+ [20805] = "\xdf\xe6", [20806] = "\xdf\xeb", [20807] = "\xc9\x7a", -+ [20809] = "\xb1\xec", [20810] = "\xc9\x7b", [20812] = "\xc9\x7c", -+ [20814] = "\xc9\x7d", [20816] = "\xc9\x7e", [20818] = "\xdf\xe9", -+ [20820] = "\xc7\xe1", [20821] = "\xdf\xe5", [20822] = "\xdf\xe8", -+ [20823] = "\xbe\xc8", [20824] = "\xca\x21", [20825] = "\xc8\xd1", -+ [20828] = "\xdf\xec", [20830] = "\xbc\xd1", [20841] = "\xca\x22", -+ [20845] = "\xc0\xfa", [20848] = "\xca\x23", [20852] = "\xdf\xef", -+ [20853] = "\xca\x24", [20855] = "\xca\x25", [20856] = "\xdf\xe7", -+ [20858] = "\xb7\xa7", [20860] = "\xca\x26", [20863] = "\xdf\xed", -+ [20866] = "\xca\x27", [20868] = "\xcd\xd0", [20869] = "\xdf\xf0", -+ [20873] = "\xf4\xa6", [20874] = "\xca\x28", [20875] = "\xca\x29", -+ [20879] = "\xbd\xcf", [20880] = "\xca\x2a", [20882] = "\xca\x2b", -+ [20888] = "\xdf\xf1", [20892] = "\xdf\xf2", [20895] = "\xca\x2c", -+ [20896] = "\xca\x2d", [20897] = "\xc7\xae", [20898] = "\xca\x2e", -+ [20899] = "\xca\x2f", [20905] = "\xdf\xf4", [20906] = "\xca\x30", -+ [20910] = "\xdf\xf5", [20911] = "\xca\x31", [20912] = "\xca\x32", -+ [20913] = "\xca\x33", [20915] = "\xc7\xb3", [20916] = "\xca\x34", -+ [20920] = "\xc5\xf5", [20921] = "\xdf\xf7", [20923] = "\xca\x35", -+ [20924] = "\xca\x36", [20926] = "\xdf\xf9", [20928] = "\xce\xd5", -+ [20930] = "\xdf\xf6", [20931] = "\xca\x37", [20932] = "\xdf\xf8", -+ [20933] = "\xb1\xed", [20934] = "\xca\x38", [20935] = "\xdf\xf3", -+ [20937] = "\xca\x39", [20938] = "\xca\x3a", [20940] = "\xca\x3b", -+ [20943] = "\xd3\xdb", [20944] = "\xdf\xfa", [20949] = "\xc1\xe7", -+ [20950] = "\xbb\xb8", [20951] = "\xdf\xfc", [20956] = "\xdf\xfb", -+ [20957] = "\xbf\xa4", [20958] = "\xd2\xd9", [20965] = "\xdf\xfd", -+ [20968] = "\xca\x3c", [20969] = "\xe0\xa1", [20971] = "\xdf\xee", -+ [20972] = "\xdf\xfe", [20974] = "\xca\x3d", [20975] = "\xe0\xa2", -+ [20976] = "\xca\x3e", [20982] = "\xc7\xfa", [20983] = "\xca\x3f", -+ [20984] = "\xca\x40", [20985] = "\xca\x41", [20989] = "\xe0\xa3", -+ [20992] = "\xe0\xa4", [20995] = "\xca\x42", [20999] = "\xca\x43", -+ [21002] = "\xca\x44", [21003] = "\xe0\xa5", [21005] = "\xca\x45", -+ [21007] = "\xca\x46", [21012] = "\xca\x47", [21016] = "\xe0\xa6", -+ [21018] = "\xc4\xde", [21019] = "\xca\x48", [21020] = "\xe0\xa8", -+ [21021] = "\xe0\xa7", [21023] = "\xca\x49", [21024] = "\xe0\xa9", -+ [21026] = "\xe0\xaa", [21028] = "\xca\x4a", [21029] = "\xbc\xdf", -+ [21030] = "\xc9\xe3", [21032] = "\xca\x4b", [21033] = "\xca\x4c", -+ [21034] = "\xcc\xec", [21035] = "\xe0\xab", [21036] = "\xe0\xac", -+ [21037] = "\xc1\xd6", [21038] = "\xbc\xa4", [21039] = "\xe0\xad", -+ [21040] = "\xe0\xae", [21041] = "\xca\x4d", [21042] = "\xca\x4e", -+ [21043] = "\xca\x4f", [21045] = "\xca\x50", [21046] = "\xe0\xaf", -+ [21047] = "\xca\xd2", [21048] = "\xc8\xc7", [21051] = "\xe0\xb0", -+ [21052] = "\xc7\xd7", [21054] = "\xca\x51", [21055] = "\xca\x52", -+ [21056] = "\xca\x53", [21058] = "\xc4\xad", [21059] = "\xca\x54", -+ [21061] = "\xca\x55", [21062] = "\xca\x56", [21064] = "\xe0\xb1", -+ [21065] = "\xb2\xe7", [21066] = "\xca\x57", [21067] = "\xb5\xed", -+ [21068] = "\xca\x58", [21069] = "\xcc\xc6", [21070] = "\xca\x59", -+ [21071] = "\xcc\xb6", [21072] = "\xca\x5a", [21073] = "\xb2\xb4", -+ [21074] = "\xcf\xb4", [21075] = "\xca\x5b", [21079] = "\xcb\xd2", -+ [21080] = "\xca\x5c", [21081] = "\xca\xaa", [21083] = "\xca\x5d", -+ [21086] = "\xca\x5e", [21087] = "\xca\x5f", [21089] = "\xca\x60", -+ [21090] = "\xc0\xb7", [21092] = "\xe0\xb2", [21095] = "\xca\x61", -+ [21096] = "\xca\x62", [21097] = "\xc6\xc3", [21099] = "\xca\x63", -+ [21100] = "\xca\x64", [21101] = "\xb8\xa3", [21102] = "\xe0\xb3", -+ [21103] = "\xca\x65", [21104] = "\xba\xd4", [21105] = "\xe0\xb5", -+ [21106] = "\xe0\xb4", [21108] = "\xca\x66", [21111] = "\xe0\xb6", -+ [21113] = "\xca\x67", [21117] = "\xca\x68", [21118] = "\xca\x69", -+ [21122] = "\xe0\xb7", [21123] = "\xca\x6a", [21126] = "\xe0\xb8", -+ [21131] = "\xca\x6b", [21136] = "\xb5\xbe", [21138] = "\xe0\xb9", -+ [21143] = "\xe0\xba", [21144] = "\xca\x6c", [21148] = "\xb8\xa4", -+ [21149] = "\xca\x6d", [21150] = "\xca\x6e", [21151] = "\xc8\xc8", -+ [21153] = "\xca\x6f", [21154] = "\xe0\xbc", [21156] = "\xca\x70", -+ [21158] = "\xbe\xf5", [21161] = "\xe0\xbb", [21166] = "\xca\x71", -+ [21169] = "\xca\x72", [21170] = "\xb6\xb8", [21171] = "\xe0\xbd", -+ [21172] = "\xe0\xbf", [21174] = "\xe0\xbe", [21175] = "\xca\x73", -+ [21177] = "\xca\x74", [21180] = "\xca\x75", [21182] = "\xe0\xc0", -+ [21184] = "\xb8\xd1", [21186] = "\xe0\xc1", [21189] = "\xca\x76", -+ [21190] = "\xca\x77", [21191] = "\xb6\xe9", [21192] = "\xca\x78", -+ [21193] = "\xc1\xc0", [21195] = "\xb9\xfd", [21199] = "\xca\x79", -+ [21200] = "\xe0\xc3", [21201] = "\xe0\xc4", [21202] = "\xe0\xc2", -+ [21205] = "\xca\x7a", [21209] = "\xbc\xed", [21212] = "\xc6\xc8", -+ [21213] = "\xb6\xb9", [21219] = "\xca\x7b", [21220] = "\xca\x7c", -+ [21223] = "\xe0\xc6", [21224] = "\xc3\xac", [21225] = "\xe0\xc5", -+ [21226] = "\xca\x7d", [21227] = "\xca\x7e", [21228] = "\xcf\xb5", -+ [21229] = "\xc7\xe2", [21230] = "\xcb\x21", [21234] = "\xcb\x22", -+ [21236] = "\xcb\x23", [21237] = "\xcb\x24", [21239] = "\xcb\x25", -+ [21242] = "\xe0\xc9", [21243] = "\xcb\x26", [21245] = "\xcb\x27", -+ [21250] = "\xcb\x28", [21251] = "\xcb\x29", [21254] = "\xe0\xcb", -+ [21255] = "\xe0\xc8", [21256] = "\xcb\x2a", [21257] = "\xcb\x2b", -+ [21259] = "\xcc\xd4", [21260] = "\xe0\xca", [21261] = "\xe0\xcc", -+ [21262] = "\xcb\x2c", [21263] = "\xce\xc4", [21266] = "\xcb\x2d", -+ [21268] = "\xcb\x2e", [21269] = "\xe0\xd0", [21271] = "\xcb\x2f", -+ [21272] = "\xcb\x30", [21273] = "\xe0\xcf", [21274] = "\xc3\xf6", -+ [21275] = "\xc7\xad", [21276] = "\xcb\x31", [21278] = "\xb8\xa5", -+ [21279] = "\xe0\xce", [21281] = "\xcb\x32", [21282] = "\xcb\x33", -+ [21284] = "\xe0\xcd", [21285] = "\xcb\x34", [21286] = "\xcd\xb1", -+ [21287] = "\xcd\xb2", [21290] = "\xcb\x35", [21291] = "\xcb\x36", -+ [21293] = "\xcb\x37", [21294] = "\xe0\xd1", [21295] = "\xb1\xee", -+ [21299] = "\xcb\x38", [21300] = "\xb9\xf6", [21301] = "\xbb\xe2", -+ [21309] = "\xcb\x39", [21310] = "\xe0\xd2", [21311] = "\xe0\xd3", -+ [21312] = "\xcb\x3a", [21314] = "\xcb\x3b", [21318] = "\xcb\x3c", -+ [21319] = "\xe0\xd5", [21320] = "\xcb\x3d", [21325] = "\xcb\x3e", -+ [21326] = "\xcb\x3f", [21327] = "\xcb\x40", [21328] = "\xcb\x41", -+ [21331] = "\xbd\xc3", [21334] = "\xcb\x42", [21335] = "\xcb\x43", -+ [21336] = "\xe0\xd7", [21337] = "\xcb\x44", [21338] = "\xe0\xd6", -+ [21339] = "\xcb\x45", [21340] = "\xcb\x46", [21342] = "\xcb\x47", -+ [21343] = "\xcb\x48", [21344] = "\xe0\xd8", [21345] = "\xcb\x49", -+ [21346] = "\xb3\xcd", [21349] = "\xe0\xda", [21351] = "\xcb\x4a", -+ [21352] = "\xe0\xd9", [21353] = "\xcb\x4b", [21354] = "\xe0\xdc", -+ [21355] = "\xe0\xdb", [21356] = "\xcb\x4c", [21360] = "\xcb\x4d", -+ [21361] = "\xcb\x4e", [21363] = "\xcb\x4f", [21364] = "\xb8\xbc", -+ [21365] = "\xcb\x50", [21366] = "\xcb\x51", [21367] = "\xce\xa8", -+ [21369] = "\xb6\xcc", [21371] = "\xb2\xa6", [21374] = "\xcb\x52", -+ [21376] = "\xcb\x53", [21379] = "\xcb\x54", [21381] = "\xcb\x55", -+ [21382] = "\xb6\xea", [21383] = "\xcb\x56", [21384] = "\xcb\x57", -+ [21388] = "\xcb\x58", [21390] = "\xcb\x59", [21391] = "\xcb\x5a", -+ [21392] = "\xcb\x5b", [21394] = "\xcb\x5c", [21397] = "\xcb\x5d", -+ [21398] = "\xcb\x5e", [21401] = "\xb4\xe1", [21402] = "\xcb\x5f", -+ [21403] = "\xcb\x60", [21405] = "\xcb\x61", [21410] = "\xce\xe8", -+ [21411] = "\xe0\xde", [21413] = "\xcb\x62", [21415] = "\xcb\x63", -+ [21417] = "\xcb\x64", [21419] = "\xe0\xe0", [21420] = "\xcb\x65", -+ [21421] = "\xcb\x66", [21423] = "\xcb\x67", [21424] = "\xe0\xe1", -+ [21426] = "\xb2\xd1", [21429] = "\xcb\x68", [21430] = "\xcb\x69", -+ [21432] = "\xe0\xdd", [21433] = "\xcb\x6a", [21434] = "\xbb\xb9", -+ [21435] = "\xcb\x6b", [21436] = "\xcb\x6c", [21437] = "\xc4\xc1", -+ [21438] = "\xe0\xdf", [21439] = "\xcb\x6d", [21442] = "\xcb\x6e", -+ [21443] = "\xcb\x6f", [21446] = "\xcb\x70", [21449] = "\xcb\x71", -+ [21453] = "\xcb\x72", [21454] = "\xe0\xe4", [21456] = "\xbc\xee", -+ [21457] = "\xcb\x73", [21459] = "\xcb\x74", [21461] = "\xe0\xe2", -+ [21462] = "\xcb\x75", [21463] = "\xcb\x76", [21465] = "\xcb\x77", -+ [21466] = "\xb7\xbe", [21469] = "\xc8\xc9", [21470] = "\xe0\xe3", -+ [21473] = "\xe0\xfe", [21476] = "\xcb\x78", [21477] = "\xcb\x79", -+ [21479] = "\xcb\x7a", [21480] = "\xe0\xe9", [21481] = "\xcb\x7b", -+ [21482] = "\xcb\x7c", [21483] = "\xcb\x7d", [21485] = "\xcb\x7e", -+ [21486] = "\xb8\xbd", [21487] = "\xcc\x21", [21488] = "\xcc\x22", -+ [21489] = "\xcc\x23", [21491] = "\xb5\xe5", [21492] = "\xcc\x24", -+ [21493] = "\xe0\xe6", [21494] = "\xcd\xfd", [21495] = "\xcc\x25", -+ [21497] = "\xce\xb0", [21498] = "\xcc\x26", [21505] = "\xcc\x27", -+ [21514] = "\xcc\x28", [21515] = "\xcc\x29", [21522] = "\xc2\xf6", -+ [21524] = "\xcc\x2a", [21525] = "\xe0\xe8", [21526] = "\xcc\x2b", -+ [21528] = "\xcc\x2c", [21529] = "\xcc\x2d", [21530] = "\xcc\x2e", -+ [21531] = "\xcc\x2f", [21532] = "\xcc\x30", [21533] = "\xcc\x31", -+ [21534] = "\xcc\x32", [21535] = "\xcc\x33", [21536] = "\xcc\x34", -+ [21537] = "\xcc\x35", [21538] = "\xe0\xea", [21539] = "\xce\xd6", -+ [21540] = "\xb6\xd7", [21541] = "\xc8\xfc", [21542] = "\xc7\xca", -+ [21545] = "\xcc\x36", [21546] = "\xe0\xeb", [21551] = "\xe0\xed", -+ [21552] = "\xcc\x37", [21553] = "\xe0\xf0", [21555] = "\xcc\x38", -+ [21556] = "\xcc\x39", [21558] = "\xcc\x3a", [21559] = "\xcc\x3b", -+ [21563] = "\xcc\x3c", [21565] = "\xcc\x3d", [21569] = "\xcc\x3e", -+ [21570] = "\xcc\x3f", [21573] = "\xe0\xec", [21575] = "\xcc\x40", -+ [21577] = "\xe0\xef", [21578] = "\xb8\xea", [21579] = "\xb1\xcd", -+ [21580] = "\xe0\xf1", [21581] = "\xcc\x41", [21582] = "\xbf\xf0", -+ [21583] = "\xe0\xee", [21584] = "\xce\xdc", [21586] = "\xcc\x42", -+ [21587] = "\xe0\xf4", [21588] = "\xf4\xa4", [21590] = "\xcc\x43", -+ [21591] = "\xcc\x44", [21592] = "\xcc\x45", [21593] = "\xe0\xf2", -+ [21594] = "\xe0\xf5", [21595] = "\xcc\x46", [21597] = "\xcc\x47", -+ [21598] = "\xcc\x48", [21599] = "\xe0\xe7", [21600] = "\xe0\xf3", -+ [21601] = "\xcc\x49", [21602] = "\xcc\x4a", [21603] = "\xba\xbc", -+ [21606] = "\xe0\xf6", [21614] = "\xe0\xf7", [21616] = "\xcc\x4b", -+ [21617] = "\xcc\x4c", [21619] = "\xcd\xfe", [21621] = "\xcc\x4d", -+ [21622] = "\xcc\x4e", [21623] = "\xcc\x4f", [21625] = "\xcc\x50", -+ [21627] = "\xe0\xf8", [21631] = "\xcc\x51", [21632] = "\xcc\x52", -+ [21633] = "\xcc\x53", [21634] = "\xcc\x54", [21640] = "\xcc\x55", -+ [21641] = "\xcc\x56", [21642] = "\xcc\x57", [21644] = "\xcc\x58", -+ [21646] = "\xe0\xf9", [21647] = "\xcc\x59", [21648] = "\xcc\x5a", -+ [21649] = "\xcc\x5b", [21650] = "\xe0\xe5", [21651] = "\xcc\x5c", -+ [21654] = "\xcc\x5d", [21655] = "\xe0\xfa", [21656] = "\xcc\x5e", -+ [21657] = "\xcc\x5f", [21658] = "\xcc\x60", [21659] = "\xcc\x61", -+ [21662] = "\xcc\x62", [21663] = "\xcc\x63", [21664] = "\xb4\xc4", -+ [21665] = "\xcc\x64", [21666] = "\xcc\x65", [21669] = "\xcc\x66", -+ [21673] = "\xcc\x67", [21675] = "\xcc\x68", [21677] = "\xbc\xa5", -+ [21679] = "\xcc\x69", [21688] = "\xcc\x6a", [21689] = "\xcc\x6b", -+ [21690] = "\xe0\xfb", [21692] = "\xcc\x6c", [21695] = "\xe0\xfc", -+ [21696] = "\xcc\x6d", [21699] = "\xcc\x6e", [21700] = "\xe0\xfd", -+ [21704] = "\xcc\x6f", [21706] = "\xcc\x70", [21707] = "\xcc\x71", -+ [21708] = "\xb1\xbb", [21710] = "\xcc\x72", [21711] = "\xcc\x73", -+ [21712] = "\xe1\xa1", [21714] = "\xc9\xbb", [21715] = "\xe1\xa2", -+ [21716] = "\xcc\x74", [21718] = "\xb4\xa4", [21719] = "\xe1\xa3", -+ [21720] = "\xcc\x75", [21721] = "\xe1\xa4", [21722] = "\xcc\x76", -+ [21723] = "\xcc\x77", [21726] = "\xe1\xa5", [21727] = "\xcc\x78", -+ [21728] = "\xe1\xa7", [21729] = "\xe1\xa8", [21730] = "\xe1\xa6", -+ [21732] = "\xcc\x79", [21734] = "\xc9\xd3", [21735] = "\xe1\xaa", -+ [21736] = "\xe1\xa9", [21738] = "\xcc\x7a", [21739] = "\xcc\x7b", -+ [21740] = "\xcc\x7c", [21743] = "\xcc\x7d", [21745] = "\xf4\x50", -+ [21747] = "\xe1\xac", [21748] = "\xe1\xab", [21749] = "\xe1\xad", -+ [21750] = "\xcc\x7e", [21756] = "\xe1\xae", [21757] = "\xe1\xb0", -+ [21758] = "\xe1\xaf", [21761] = "\xb9\xf9", [21762] = "\xcd\x21", -+ [21763] = "\xe1\xb2", [21765] = "\xe1\xb1", [21766] = "\xcd\x22", -+ [21767] = "\xcd\x23", [21768] = "\xb4\xc5", [21770] = "\xbf\xd3", -+ [21772] = "\xc5\xbc", [21774] = "\xe1\xb3", [21775] = "\xc0\xb8", -+ [21776] = "\xcd\x24", [21777] = "\xcd\x25", [21779] = "\xbb\xba", -+ [21780] = "\xcd\x26", [21781] = "\xb1\xf9", [21782] = "\xe1\xb4", -+ [21783] = "\xcd\x27", [21784] = "\xcd\xd1", [21785] = "\xcd\x28", -+ [21786] = "\xcd\x29", [21787] = "\xca\xe3", [21788] = "\xe1\xb5", -+ [21791] = "\xcd\x2a", [21792] = "\xc5\xc4", [21793] = "\xcd\xb3", -+ [21794] = "\xb9\xc3", [21795] = "\xbf\xbd", [21798] = "\xcd\x2b", -+ [21799] = "\xc3\xcb", [21800] = "\xd2\xb4", [21801] = "\xcd\x2c", -+ [21802] = "\xc4\xae", [21803] = "\xb2\xe8", [21804] = "\xe1\xb6", -+ [21805] = "\xcd\x2d", [21806] = "\xcd\x2e", [21807] = "\xcd\x2f", -+ [21808] = "\xcd\x30", [21811] = "\xcd\x31", [21812] = "\xe1\xb7", -+ [21814] = "\xe1\xbc", [21815] = "\xcd\x32", [21816] = "\xcd\x33", -+ [21817] = "\xe1\xba", [21818] = "\xe1\xb9", [21819] = "\xda\xc2", -+ [21820] = "\xb3\xa6", [21821] = "\xe1\xb8", [21822] = "\xcd\x34", -+ [21823] = "\xb0\xda", [21824] = "\xcd\x35", [21825] = "\xc8\xaa", -+ [21826] = "\xcd\x36", [21828] = "\xc8\xca", [21831] = "\xcd\x37", -+ [21833] = "\xce\xb1", [21834] = "\xe1\xbd", [21835] = "\xe1\xbb", -+ [21836] = "\xc3\xdc", [21837] = "\xc0\xa6", [21838] = "\xcd\x38", -+ [21839] = "\xcd\x39", [21840] = "\xc8\xab", [21841] = "\xcd\x3a", -+ [21842] = "\xc9\xad", [21844] = "\xe1\xbf", [21845] = "\xce\xac", -+ [21846] = "\xb7\xcd", [21847] = "\xe1\xc0", [21849] = "\xe1\xbe", -+ [21850] = "\xc8\xd6", [21851] = "\xe1\xc1", [21853] = "\xe1\xc2", -+ [21855] = "\xcd\x3b", [21856] = "\xb0\xdb", [21857] = "\xcd\x3c", -+ [21859] = "\xbe\xf6", [21860] = "\xe1\xc7", [21862] = "\xe1\xc4", -+ [21863] = "\xc6\xed", [21864] = "\xe1\xc3", [21865] = "\xcd\x3d", -+ [21866] = "\xcd\x3e", [21867] = "\xcd\x3f", [21868] = "\xcd\x40", -+ [21869] = "\xcd\x41", [21870] = "\xcd\x42", [21871] = "\xb5\xa6", -+ [21873] = "\xcd\x43", [21874] = "\xe1\xca", [21877] = "\xcd\x44", -+ [21878] = "\xe1\xc5", [21879] = "\xe1\xc6", [21881] = "\xe1\xc9", -+ [21882] = "\xe1\xc8", [21883] = "\xc9\xa5", [21886] = "\xc1\xc2", -+ [21887] = "\xc1\xc1", [21888] = "\xcd\x45", [21889] = "\xb5\xbf", -+ [21890] = "\xcd\x46", [21891] = "\xcd\x47", [21892] = "\xe1\xcb", -+ [21893] = "\xcd\x48", [21897] = "\xcd\x49", [21898] = "\xe1\xcc", -+ [21900] = "\xcd\x4a", [21901] = "\xe1\xcd", [21906] = "\xcd\x4b", -+ [21907] = "\xe1\xcf", [21908] = "\xcd\x4c", [21909] = "\xe1\xce", -+ [21915] = "\xb1\xd6", [21921] = "\xe1\xd7", [21922] = "\xc8\xe8", -+ [21923] = "\xe1\xd1", [21924] = "\xcd\x4d", [21925] = "\xe1\xd3", -+ [21928] = "\xe1\xd5", [21929] = "\xbf\xbe", [21930] = "\xcd\x4e", -+ [21932] = "\xe1\xd6", [21933] = "\xe1\xd4", [21934] = "\xbc\xc0", -+ [21935] = "\xcd\x4f", [21936] = "\xcd\x50", [21937] = "\xcd\x51", -+ [21938] = "\xe1\xd0", [21939] = "\xe1\xd2", [21940] = "\xcd\x52", -+ [21941] = "\xc9\xc2", [21942] = "\xcd\x53", [21943] = "\xbe\xc9", -+ [21946] = "\xe1\xd9", [21948] = "\xcd\x54", [21949] = "\xe1\xd8", -+ [21950] = "\xcd\x55", [21951] = "\xcd\x56", [21954] = "\xe1\xda", -+ [21956] = "\xbc\xa6", [21957] = "\xba\xaf", [21959] = "\xcd\x57", -+ [21960] = "\xc5\xf7", [21961] = "\xe1\xdb", [21963] = "\xc4\xcb", -+ [21964] = "\xcd\x58", [21966] = "\xe1\xdd", [21967] = "\xcd\x59", -+ [21968] = "\xcd\x5a", [21969] = "\xcd\x5b", [21970] = "\xce\xa1", -+ [21971] = "\xe1\xdc", [21972] = "\xcd\x5c", [21975] = "\xcd\x5d", -+ [21977] = "\xc1\xe9", [21980] = "\xcd\x5e", [21982] = "\xcd\x5f", -+ [21983] = "\xcd\x60", [21984] = "\xe1\xe2", [21985] = "\xcd\x61", -+ [21986] = "\xe1\xe4", [21987] = "\xe1\xe5", [21988] = "\xc3\xd4", -+ [21993] = "\xcd\x62", [21994] = "\xe1\xe3", [21996] = "\xe1\xe0", -+ [21998] = "\xe1\xde", [21999] = "\xe1\xdf", [22000] = "\xcd\x63", -+ [22001] = "\xe1\xe1", [22002] = "\xcd\x64", [22003] = "\xcd\x65", -+ [22004] = "\xcd\x66", [22007] = "\xcd\x67", [22008] = "\xcd\x68", -+ [22009] = "\xe1\xe8", [22010] = "\xcd\x69", [22011] = "\xe1\xe6", -+ [22012] = "\xcd\x6a", [22013] = "\xe1\xe7", [22015] = "\xcd\x6b", -+ [22018] = "\xcd\x6c", [22019] = "\xcd\x6d", [22021] = "\xcd\x6e", -+ [22022] = "\xcd\x6f", [22025] = "\xcd\x70", [22027] = "\xcd\x71", -+ [22028] = "\xcd\x72", [22029] = "\xcd\x73", [22030] = "\xcd\x74", -+ [22031] = "\xe1\xe9", [22032] = "\xe1\xeb", [22033] = "\xe1\xec", -+ [22034] = "\xe1\xed", [22035] = "\xcd\x75", [22036] = "\xe1\xee", -+ [22037] = "\xcd\x76", [22038] = "\xcd\x77", [22039] = "\xe1\xea", -+ [22041] = "\xcd\x78", [22045] = "\xcd\x79", [22048] = "\xe1\xf0", -+ [22050] = "\xcd\x7a", [22051] = "\xcd\x7b", [22052] = "\xe1\xef", -+ [22053] = "\xcd\x7c", [22056] = "\xcd\x7d", [22057] = "\xcd\x7e", -+ [22058] = "\xce\x21", [22059] = "\xe1\xf1", [22060] = "\xce\x22", -+ [22064] = "\xce\x24", [22065] = "\xce\x25", [22066] = "\xce\xc5", -+ [22067] = "\xce\x26", [22068] = "\xce\x27", [22069] = "\xce\x28", -+ [22070] = "\xe1\xf4", [22071] = "\xe1\xf2", [22072] = "\xe1\xf3", -+ [22073] = "\xce\x29", [22074] = "\xce\x23", [22075] = "\xce\x2a", -+ [22076] = "\xb4\xe2", [22082] = "\xcc\xfe", [22085] = "\xce\x2b", -+ [22086] = "\xca\xca", [22088] = "\xe1\xf6", [22089] = "\xce\x2c", -+ [22092] = "\xe1\xf5", [22095] = "\xce\x2d", [22097] = "\xe1\xf7", -+ [22098] = "\xe1\xf8", [22100] = "\xce\x2e", [22101] = "\xce\x2f", -+ [22103] = "\xe1\xfc", [22104] = "\xe1\xf9", [22105] = "\xe1\xfa", -+ [22106] = "\xe1\xfb", [22108] = "\xe1\xfd", [22109] = "\xce\x30", -+ [22110] = "\xce\x31", [22111] = "\xce\x32", [22112] = "\xe1\xfe", -+ [22113] = "\xce\x33", [22114] = "\xe2\xa1", [22116] = "\xce\x34", -+ [22118] = "\xe2\xa2", [22120] = "\xe2\xa3", [22122] = "\xc8\xaf", -+ [22123] = "\xc5\xd0", [22124] = "\xe2\xa4", [22125] = "\xc7\xf2", -+ [22126] = "\xc9\xb4", [22128] = "\xe2\xa5", [22129] = "\xce\x35", -+ [22130] = "\xf4\x51", [22131] = "\xe2\xa6", [22132] = "\xc5\xaa", -+ [22133] = "\xce\x36", [22134] = "\xb3\xa7", [22135] = "\xb9\xc4", -+ [22136] = "\xe2\xa7", [22139] = "\xe2\xa8", [22140] = "\xce\x37", -+ [22141] = "\xce\x38", [22142] = "\xe2\xa9", [22144] = "\xbb\xa9", -+ [22147] = "\xe2\xab", [22149] = "\xce\x39", [22150] = "\xe2\xaa", -+ [22153] = "\xe2\xac", [22154] = "\xe2\xad", [22155] = "\xce\x3a", -+ [22156] = "\xce\x3b", [22157] = "\xce\x3c", [22158] = "\xf4\x52", -+ [22159] = "\xce\x3d", [22160] = "\xce\x3e", [22162] = "\xce\x3f", -+ [22163] = "\xce\x40", [22164] = "\xce\x41", [22165] = "\xce\x42", -+ [22166] = "\xce\x43", [22167] = "\xce\x44", [22168] = "\xce\x45", -+ [22170] = "\xce\x46", [22173] = "\xce\x47", [22174] = "\xc8\xe9", -+ [22176] = "\xe2\xae", [22180] = "\xe2\xaf", [22183] = "\xf3\xe9", -+ [22184] = "\xe2\xb0", [22185] = "\xe2\xb1", [22186] = "\xe2\xb2", -+ [22189] = "\xce\x48", [22191] = "\xbb\xae", [22193] = "\xce\x49", -+ [22194] = "\xe2\xb3", [22195] = "\xc7\xd6", [22197] = "\xce\x4a", -+ [22198] = "\xcb\xdf", [22200] = "\xb1\xce", [22201] = "\xce\x4b", -+ [22202] = "\xb1\xd7", [22203] = "\xce\x4c", [22204] = "\xce\x4d", -+ [22205] = "\xe2\xb4", [22206] = "\xce\x4e", [22210] = "\xe2\xb6", -+ [22212] = "\xce\x4f", [22214] = "\xe2\xb5", [22215] = "\xc5\xf0", -+ [22217] = "\xce\x50", [22219] = "\xc0\xb9", [22220] = "\xdd\xb9", -+ [22222] = "\xe2\xb7", [22223] = "\xcc\xc1", [22224] = "\xce\x51", -+ [22225] = "\xe2\xb8", [22227] = "\xb4\xc6", [22228] = "\xc8\xd7", -+ [22229] = "\xe2\xb9", [22230] = "\xce\x52", [22231] = "\xe2\xba", -+ [22232] = "\xce\x53", [22234] = "\xe2\xbb", [22236] = "\xce\x54", -+ [22238] = "\xcc\xdc", [22240] = "\xce\x55", [22241] = "\xce\x56", -+ [22242] = "\xcc\xd5", [22244] = "\xc4\xbe", [22246] = "\xce\x57", -+ [22248] = "\xc1\xea", [22249] = "\xce\x58", [22251] = "\xe2\xbd", -+ [22252] = "\xce\x59", [22254] = "\xbd\xe2", [22256] = "\xce\x5a", -+ [22257] = "\xbe\xca", [22260] = "\xe2\xc0", [22262] = "\xce\x5b", -+ [22263] = "\xe2\xbf", [22264] = "\xe2\xbe", [22265] = "\xc8\xfd", -+ [22266] = "\xce\x5c", [22267] = "\xb4\xc7", [22268] = "\xb8\xa9", -+ [22270] = "\xce\x5d", [22274] = "\xce\x5e", [22276] = "\xce\x5f", -+ [22277] = "\xce\x60", [22279] = "\xce\x61", [22281] = "\xce\x62", -+ [22282] = "\xce\x63", [22283] = "\xe2\xc6", [22284] = "\xce\x64", -+ [22286] = "\xe2\xc3", [22287] = "\xbf\xbf", [22288] = "\xcc\xb2", -+ [22290] = "\xce\x65", [22292] = "\xe2\xc2", [22293] = "\xe2\xc4", -+ [22294] = "\xe2\xc5", [22296] = "\xce\x66", [22297] = "\xe2\xc1", -+ [22301] = "\xce\x67", [22302] = "\xce\x68", [22303] = "\xce\x69", -+ [22308] = "\xce\x6a", [22309] = "\xce\x6b", [22310] = "\xce\x6c", -+ [22311] = "\xe2\xc7", [22312] = "\xe2\xc8", [22313] = "\xce\x6d", -+ [22314] = "\xc4\xaf", [22316] = "\xb4\xe3", [22317] = "\xce\x6e", -+ [22318] = "\xce\x6f", [22320] = "\xc3\xe5", [22322] = "\xce\x70", -+ [22325] = "\xce\x71", [22326] = "\xce\x72", [22327] = "\xe2\xc9", -+ [22330] = "\xce\x73", [22333] = "\xce\x74", [22334] = "\xce\x75", -+ [22335] = "\xce\x76", [22338] = "\xce\x77", [22342] = "\xce\x78", -+ [22343] = "\xce\x79", [22346] = "\xe2\xca", [22347] = "\xe2\xcd", -+ [22348] = "\xce\x7a", [22350] = "\xce\x7b", [22351] = "\xce\x7c", -+ [22352] = "\xce\x7d", [22353] = "\xbf\xe7", [22354] = "\xce\x7e", -+ [22355] = "\xc6\xc4", [22356] = "\xcf\x21", [22357] = "\xe2\xce", -+ [22358] = "\xcb\xd3", [22359] = "\xcf\x22", [22360] = "\xe2\xcb", -+ [22362] = "\xcf\x23", [22363] = "\xe2\xcc", [22364] = "\xcf\x24", -+ [22368] = "\xcf\x25", [22370] = "\xcf\x26", [22371] = "\xcf\x27", -+ [22372] = "\xcf\x28", [22377] = "\xe2\xd1", [22378] = "\xcf\x29", -+ [22381] = "\xcf\x2a", [22382] = "\xe2\xd0", [22383] = "\xe2\xcf", -+ [22384] = "\xcf\x2b", [22388] = "\xcf\x2c", [22395] = "\xe2\xd3", -+ [22396] = "\xcf\x2d", [22397] = "\xcf\x2e", [22398] = "\xe2\xd2", -+ [22401] = "\xe2\xd4", [22404] = "\xcf\x2f", [22405] = "\xcf\x30", -+ [22406] = "\xcf\x31", [22410] = "\xcf\x32", [22414] = "\xe2\xd6", -+ [22415] = "\xcf\x33", [22416] = "\xe2\xd5", [22418] = "\xcf\x34", -+ [22421] = "\xca\xcd", [22423] = "\xcf\x35", [22426] = "\xcf\x36", -+ [22428] = "\xbd\xd6", [22429] = "\xce\xc6", [22430] = "\xcf\x37", -+ [22431] = "\xcf\x38", [22432] = "\xe2\xd7", [22433] = "\xcf\x39", -+ [22435] = "\xc6\xb7", [22437] = "\xcf\x3a", [22438] = "\xe2\xd8", -+ [22441] = "\xe2\xd9", [22443] = "\xe2\xdd", [22444] = "\xe2\xdb", -+ [22445] = "\xe2\xdc", [22446] = "\xcf\x3b", [22447] = "\xe2\xda", -+ [22451] = "\xcf\x3c", [22455] = "\xe2\xde", [22457] = "\xcf\x3d", -+ [22461] = "\xe2\xdf", [22465] = "\xcf\x3e", [22466] = "\xcf\x3f", -+ [22469] = "\xcf\x40", [22471] = "\xe2\xe0", [22473] = "\xcf\x41", -+ [22474] = "\xe2\xe1", [22475] = "\xcc\xb7", [22476] = "\xe2\xe2", -+ [22478] = "\xcf\x42", [22479] = "\xcf\x43", [22480] = "\xcf\x44", -+ [22482] = "\xcc\xf0", [22483] = "\xe2\xe3", [22484] = "\xcf\x45", -+ [22485] = "\xc3\xce", [22486] = "\xcf\x46", [22487] = "\xc7\xea", -+ [22489] = "\xb6\xeb", [22490] = "\xcf\x47", [22492] = "\xcf\x48", -+ [22493] = "\xc3\xbb", [22494] = "\xe2\xe4", [22495] = "\xb6\xba", -+ [22496] = "\xcf\x49", [22497] = "\xcf\x4a", [22499] = "\xc0\xd0", -+ [22500] = "\xcf\x4b", [22504] = "\xcf\x4c", [22507] = "\xcf\x4d", -+ [22508] = "\xe2\xe5", [22514] = "\xba\xbd", [22517] = "\xcf\x4e", -+ [22518] = "\xcf\x4f", [22521] = "\xcf\x50", [22524] = "\xe2\xe6", -+ [22525] = "\xcf\x51", [22526] = "\xcf\x52", [22529] = "\xcf\x53", -+ [22530] = "\xe2\xe7", [22532] = "\xb8\xa6", [22533] = "\xba\xd5", -+ [22541] = "\xcf\x54", [22544] = "\xe2\xe9", [22545] = "\xcf\x55", -+ [22546] = "\xcf\x56", [22547] = "\xcf\x57", [22549] = "\xc5\xd6", -+ [22550] = "\xba\xd6", [22551] = "\xb5\xce", [22557] = "\xcf\x58", -+ [22558] = "\xcf\x59", [22560] = "\xcf\x5a", [22562] = "\xcb\xa4", -+ [22564] = "\xc7\xcb", [22565] = "\xcf\x5b", [22567] = "\xcf\x5c", -+ [22570] = "\xc5\xd7", [22575] = "\xb9\xdc", [22579] = "\xcf\x5d", -+ [22580] = "\xcf\x5e", [22581] = "\xe2\xeb", [22583] = "\xcf\x5f", -+ [22584] = "\xcf\x60", [22588] = "\xcf\x61", [22590] = "\xcf\x62", -+ [22594] = "\xcf\x63", [22604] = "\xcf\x64", [22605] = "\xbe\xcb", -+ [22606] = "\xcf\x65", [22608] = "\xcf\x66", [22609] = "\xcf\x67", -+ [22611] = "\xcf\x68", [22612] = "\xcf\x69", [22616] = "\xcf\x6a", -+ [22618] = "\xcf\x6b", [22619] = "\xce\xb2", [22620] = "\xb9\xc5", -+ [22622] = "\xcf\x6c", [22623] = "\xb8\xa7", [22626] = "\xc8\xa3", -+ [22628] = "\xe2\xed", [22634] = "\xcf\x6d", [22636] = "\xe2\xef", -+ [22638] = "\xcf\x6e", [22641] = "\xb8\xeb", [22646] = "\xe2\xee", -+ [22647] = "\xc4\xf6", [22650] = "\xcf\x6f", [22652] = "\xe2\xf1", -+ [22653] = "\xb3\xb7", [22654] = "\xe2\xec", [22655] = "\xcf\x70", -+ [22657] = "\xc8\xea", [22659] = "\xb1\xb0", [22660] = "\xcf\x71", -+ [22661] = "\xba\xec", [22663] = "\xcf\xd2", [22664] = "\xcf\x72", -+ [22666] = "\xe2\xf0", [22669] = "\xcf\x74", [22670] = "\xcf\x75", -+ [22671] = "\xcf\x76", [22673] = "\xcf\x73", [22675] = "\xe2\xf2", -+ [22676] = "\xcf\x77", [22679] = "\xca\xcb", [22680] = "\xcf\x78", -+ [22681] = "\xc0\xd9", [22682] = "\xe2\xf4", [22684] = "\xcf\x79", -+ [22685] = "\xcf\x7a", [22687] = "\xe2\xf5", [22688] = "\xcf\x7b", -+ [22689] = "\xcf\x7c", [22690] = "\xcf\x7d", [22691] = "\xcf\x7e", -+ [22693] = "\xe2\xf3", [22698] = "\xb3\xce", [22699] = "\xd0\x21", -+ [22700] = "\xe2\xfb", [22701] = "\xd0\x22", [22702] = "\xe2\xfa", -+ [22703] = "\xd0\x23", [22705] = "\xbc\xa7", [22709] = "\xe2\xfc", -+ [22710] = "\xe2\xf7", [22711] = "\xd0\x24", [22712] = "\xd0\x25", -+ [22713] = "\xd0\x26", [22714] = "\xe2\xfd", [22715] = "\xe2\xf8", -+ [22716] = "\xd0\x27", [22718] = "\xd0\x28", [22720] = "\xc8\xd8", -+ [22721] = "\xe2\xf6", [22722] = "\xd0\x29", [22723] = "\xd0\x2a", -+ [22724] = "\xe2\xf9", [22725] = "\xd0\x2b", [22726] = "\xd0\x2c", -+ [22730] = "\xe3\xa2", [22731] = "\xd0\x2e", [22735] = "\xd0\x2f", -+ [22736] = "\xd0\x30", [22737] = "\xd0\x31", [22740] = "\xd0\x2d", -+ [22742] = "\xd0\x32", [22743] = "\xe3\xa1", [22744] = "\xcb\xe1", -+ [22746] = "\xd0\x33", [22748] = "\xe2\xfe", [22751] = "\xb0\xeb", -+ [22754] = "\xd0\x34", [22755] = "\xd0\x35", [22756] = "\xe3\xa4", -+ [22758] = "\xd0\x37", [22759] = "\xd0\x38", [22762] = "\xd0\x39", -+ [22763] = "\xd0\x3a", [22765] = "\xe3\xa3", [22767] = "\xd0\x3b", -+ [22768] = "\xd0\x36", [22769] = "\xbe\xcc", [22774] = "\xd0\x3c", -+ [22775] = "\xe3\xa5", [22780] = "\xd0\x3d", [22782] = "\xc1\xc3", -+ [22784] = "\xd0\x3e", [22785] = "\xe3\xa7", [22786] = "\xe3\xa6", -+ [22793] = "\xe3\xa8", [22794] = "\xd0\x3f", [22796] = "\xd0\x40", -+ [22798] = "\xd0\x41", [22799] = "\xd0\x42", [22800] = "\xd0\x43", -+ [22805] = "\xd0\x44", [22806] = "\xe2\xe8", [22807] = "\xd0\x45", -+ [22809] = "\xd0\x46", [22810] = "\xe2\xea", [22811] = "\xe3\xaa", -+ [22812] = "\xe3\xa9", [22813] = "\xd0\x47", [22816] = "\xf4\x54", -+ [22817] = "\xd0\x48", [22820] = "\xd0\x49", [22821] = "\xd0\x4a", -+ [22826] = "\xbc\xa8", [22827] = "\xd0\x4b", [22828] = "\xce\xe9", -+ [22829] = "\xd0\x4c", [22830] = "\xbc\xd2", [22831] = "\xd0\x4d", -+ [22832] = "\xe3\xab", [22833] = "\xb7\xb7", [22836] = "\xd0\x4e", -+ [22837] = "\xd0\x4f", [22838] = "\xd0\x50", [22839] = "\xb5\xc0", -+ [22840] = "\xb5\xa7", [22841] = "\xbb\xe3", [22842] = "\xd0\x51", -+ [22843] = "\xd0\x52", [22847] = "\xd0\x53", [22848] = "\xcd\xb4", -+ [22849] = "\xd0\x54", [22851] = "\xe3\xb1", [22852] = "\xd0\x55", -+ [22853] = "\xe3\xb0", [22854] = "\xc1\xc4", [22855] = "\xe3\xad", -+ [22856] = "\xd0\x56", [22858] = "\xe3\xaf", [22859] = "\xd0\x57", -+ [22860] = "\xd0\x58", [22861] = "\xbd\xcb", [22862] = "\xbf\xc0", -+ [22863] = "\xe3\xae", [22864] = "\xe3\xac", [22866] = "\xc7\xaa", -+ [22869] = "\xbe\xcd", [22871] = "\xd0\x59", [22872] = "\xc9\xbc", -+ [22873] = "\xd0\x5a", [22875] = "\xd0\x5b", [22877] = "\xba\xd7", -+ [22882] = "\xd0\x5c", [22887] = "\xc5\xf8", [22889] = "\xd0\x5d", -+ [22890] = "\xe3\xb2", [22891] = "\xd0\x5e", [22892] = "\xd0\x5f", -+ [22894] = "\xd0\x60", [22895] = "\xe3\xb3", [22896] = "\xe3\xc9", -+ [22897] = "\xb6\xd8", [22900] = "\xcf\xbd", [22901] = "\xc1\xb5", -+ [22906] = "\xe3\xb4", [22907] = "\xd0\x61", [22908] = "\xd0\x62", -+ [22909] = "\xb2\xd2", [22910] = "\xc4\xf7", [22911] = "\xca\xa1", -+ [22913] = "\xd0\x63", [22915] = "\xd0\x64", [22916] = "\xd0\x65", -+ [22917] = "\xd0\x66", [22918] = "\xd0\x67", [22920] = "\xd0\x68", -+ [22923] = "\xd0\x69", [22924] = "\xd0\x6a", [22925] = "\xe3\xb5", -+ [22929] = "\xd0\x6b", [22934] = "\xb5\xfa", [22935] = "\xe3\xb6", -+ [22936] = "\xd0\x6c", [22937] = "\xd0\x6d", [22938] = "\xe3\xb8", -+ [22939] = "\xd0\x6e", [22942] = "\xe3\xb9", [22943] = "\xd0\x6f", -+ [22944] = "\xc7\xa9", [22945] = "\xd0\x70", [22947] = "\xe3\xba", -+ [22948] = "\xd0\x71", [22952] = "\xd0\x72", [22953] = "\xe3\xbb", -+ [22954] = "\xe3\xbc", [22955] = "\xd0\x73", [22957] = "\xb6\xd9", -+ [22958] = "\xb2\xd3", [22959] = "\xc6\xc5", [22960] = "\xbd\xa8", -+ [22961] = "\xbb\xe4", [22962] = "\xd0\x74", [22964] = "\xd0\x75", -+ [22967] = "\xd0\x76", [22968] = "\xd0\x77", [22969] = "\xe3\xbd", -+ [22970] = "\xd0\x78", [22971] = "\xbd\xa9", [22975] = "\xd0\x79", -+ [22977] = "\xb2\xca", [22978] = "\xc9\xc3", [22980] = "\xd0\x7a", -+ [22981] = "\xe3\xbe", [22982] = "\xd0\x7b", [22984] = "\xc8\xeb", -+ [22986] = "\xd0\x7c", [22989] = "\xd0\x7d", [22990] = "\xd0\x7e", -+ [22991] = "\xc1\xc5", [22992] = "\xd1\x21", [22993] = "\xe3\xc1", -+ [22994] = "\xd1\x22", [22995] = "\xe3\xc2", [22996] = "\xc7\xe9", -+ [22997] = "\xd1\x23", [22998] = "\xbf\xc1", [22999] = "\xe3\xbf", -+ [23001] = "\xc3\xe1", [23002] = "\xd1\x24", [23003] = "\xd1\x25", -+ [23004] = "\xe3\xc0", [23005] = "\xd1\x26", [23008] = "\xbe\xce", -+ [23009] = "\xd1\x27", [23016] = "\xd1\x28", [23019] = "\xb0\xdc", -+ [23020] = "\xd1\x29", [23024] = "\xb5\xa9", [23026] = "\xd1\x2a", -+ [23027] = "\xd1\x2b", [23031] = "\xd1\x2c", [23032] = "\xe3\xc3", -+ [23033] = "\xd1\x2d", [23034] = "\xd1\x2e", [23035] = "\xc4\xf8", -+ [23036] = "\xd1\x2f", [23037] = "\xe3\xc4", [23038] = "\xc0\xc7", -+ [23041] = "\xd1\x30", [23044] = "\xcc\xad", [23045] = "\xd1\x31", -+ [23047] = "\xc9\xa3", [23048] = "\xe3\xc5", [23049] = "\xe3\xc6", -+ [23050] = "\xc3\xd5", [23051] = "\xd1\x32", [23052] = "\xce\xc7", -+ [23054] = "\xd1\x33", [23055] = "\xe3\xc8", [23056] = "\xe3\xc7", -+ [23057] = "\xd1\x34", [23063] = "\xd1\x35", [23067] = "\xd1\x36", -+ [23069] = "\xd1\x37", [23070] = "\xbc\xef", [23071] = "\xd1\x38", -+ [23072] = "\xd1\x39", [23073] = "\xe3\xca", [23074] = "\xb0\xf0", -+ [23076] = "\xd1\x3a", [23077] = "\xd1\x3b", [23079] = "\xe3\xcd", -+ [23080] = "\xd1\x3c", [23081] = "\xd1\x3d", [23082] = "\xd1\x3e", -+ [23083] = "\xe3\xcb", [23084] = "\xb2\xd4", [23085] = "\xb7\xce", -+ [23086] = "\xe3\xcc", [23087] = "\xb9\xc6", [23088] = "\xb9\xf2", -+ [23090] = "\xca\xe6", [23091] = "\xe3\xce", [23092] = "\xd1\x3f", -+ [23093] = "\xd1\x40", [23094] = "\xcb\xd4", [23095] = "\xd1\x41", -+ [23096] = "\xd1\x42", [23097] = "\xe3\xd0", [23100] = "\xd1\x43", -+ [23101] = "\xc0\xd1", [23102] = "\xb1\xcf", [23103] = "\xb2\xba", -+ [23104] = "\xb0\xac", [23109] = "\xd1\x44", [23110] = "\xd1\x45", -+ [23111] = "\xe3\xcf", [23113] = "\xd1\x46", [23116] = "\xd1\x47", -+ [23117] = "\xd1\x48", [23119] = "\xd1\x49", [23120] = "\xd1\x4a", -+ [23121] = "\xe3\xd1", [23122] = "\xe3\xd2", [23123] = "\xbe\xf7", -+ [23125] = "\xd1\x4b", [23127] = "\xd1\x4c", [23129] = "\xe3\xd3", -+ [23130] = "\xd1\x4d", [23131] = "\xb3\xcf", [23133] = "\xd1\x4e", -+ [23136] = "\xe3\xd5", [23140] = "\xb7\xea", [23141] = "\xd1\x4f", -+ [23142] = "\xb5\xe6", [23144] = "\xd1\x50", [23145] = "\xe3\xd6", -+ [23146] = "\xb6\xf5", [23149] = "\xe3\xd7", [23150] = "\xd1\x51", -+ [23151] = "\xc0\xfc", [23152] = "\xd1\x52", [23153] = "\xc6\xcd", -+ [23154] = "\xd1\x53", [23155] = "\xc0\xe0", [23156] = "\xba\xf5", -+ [23157] = "\xd1\x54", [23158] = "\xd1\x55", [23160] = "\xe3\xd8", -+ [23162] = "\xd1\x56", [23163] = "\xd1\x57", [23168] = "\xd1\x58", -+ [23169] = "\xd1\x59", [23170] = "\xc3\xe2", [23171] = "\xc1\xeb", -+ [23172] = "\xd1\x5a", [23173] = "\xe3\xda", [23174] = "\xe3\xdc", -+ [23175] = "\xe3\xd9", [23176] = "\xe3\xdb", [23182] = "\xd1\x5b", -+ [23183] = "\xb7\xa2", [23184] = "\xd1\x5c", [23187] = "\xd1\x5d", -+ [23193] = "\xe3\xdd", [23194] = "\xb7\xa6", [23196] = "\xd1\x5e", -+ [23198] = "\xb5\xe7", [23199] = "\xcd\xd2", [23200] = "\xe3\xdf", -+ [23203] = "\xd1\x5f", [23205] = "\xd1\x60", [23206] = "\xe3\xe0", -+ [23209] = "\xd1\x61", [23210] = "\xb1\xae", [23211] = "\xd1\x62", -+ [23212] = "\xd1\x63", [23215] = "\xe3\xe3", [23219] = "\xb3\xf6", -+ [23220] = "\xe3\xe2", [23221] = "\xe3\xe1", [23222] = "\xd1\x64", -+ [23223] = "\xe3\xe5", [23224] = "\xe3\xde", [23225] = "\xd1\x65", -+ [23226] = "\xe3\xe6", [23227] = "\xce\xa9", [23228] = "\xd1\x66", -+ [23229] = "\xe3\xe7", [23230] = "\xd1\x67", [23231] = "\xe3\xe8", -+ [23233] = "\xd1\x68", [23234] = "\xd4\xf4", [23235] = "\xe3\xea", -+ [23237] = "\xe3\xe9", [23241] = "\xe3\xeb", [23242] = "\xe3\xec", -+ [23243] = "\xd1\x69", [23244] = "\xce\xb5", [23245] = "\xe3\xed", -+ [23247] = "\xf0\xef", [23248] = "\xbe\xcf", [23249] = "\xe3\xee", -+ [23250] = "\xe3\xef", [23251] = "\xbd\xd7", [23253] = "\xc6\xb8", -+ [23254] = "\xe3\xf0", [23255] = "\xf4\x59", [23256] = "\xd1\x6a", -+ [23257] = "\xd1\x6b", [23258] = "\xc3\xa8", [23259] = "\xd1\x6c", -+ [23260] = "\xd1\x6d", [23261] = "\xe3\xf1", [23263] = "\xc3\xbc", -+ [23264] = "\xe3\xf2", [23265] = "\xd1\x6e", [23268] = "\xd1\x6f", -+ [23270] = "\xb6\xa5", [23272] = "\xd1\xbf", [23273] = "\xc3\xdd", -+ [23274] = "\xbc\xb3", [23275] = "\xd1\x70", [23277] = "\xd1\x71", -+ [23278] = "\xd1\x72", [23279] = "\xb4\xc8", [23282] = "\xe3\xf3", -+ [23284] = "\xe4\xa2", [23286] = "\xe3\xf6", [23287] = "\xd1\x73", -+ [23288] = "\xb5\xe8", [23290] = "\xe3\xf5", [23291] = "\xe4\xa4", -+ [23295] = "\xe3\xf4", [23297] = "\xbe\xd0", [23300] = "\xd1\x74", -+ [23304] = "\xe3\xf8", [23305] = "\xe3\xf9", [23307] = "\xc5\xab", -+ [23310] = "\xe3\xfa", [23311] = "\xd1\x75", [23312] = "\xb3\xde", -+ [23315] = "\xd1\x76", [23317] = "\xbf\xda", [23318] = "\xc9\xe4", -+ [23319] = "\xd1\x77", [23320] = "\xe3\xfc", [23321] = "\xd1\x78", -+ [23322] = "\xd1\x79", [23323] = "\xd1\x7a", [23324] = "\xc2\xe8", -+ [23325] = "\xd1\x7b", [23326] = "\xd1\x7c", [23327] = "\xd1\x7d", -+ [23328] = "\xd1\x7e", [23329] = "\xd2\x21", [23331] = "\xe3\xf7", -+ [23332] = "\xd2\x22", [23333] = "\xe3\xfb", [23334] = "\xe3\xfd", -+ [23337] = "\xba\xfb", [23341] = "\xd2\x23", [23343] = "\xd2\x24", -+ [23344] = "\xd2\x25", [23345] = "\xd2\x26", [23349] = "\xe4\xa6", -+ [23350] = "\xc9\xae", [23351] = "\xd2\x27", [23352] = "\xc8\xa6", -+ [23353] = "\xc5\xf9", [23355] = "\xb6\xda", [23356] = "\xe4\xa5", -+ [23357] = "\xe4\xa3", [23358] = "\xd2\x28", [23359] = "\xc8\xb5", -+ [23360] = "\xe3\xfe", [23361] = "\xc3\xde", [23362] = "\xc5\xfb", -+ [23364] = "\xc5\xfa", [23365] = "\xd2\x29", [23366] = "\xba\xf6", -+ [23373] = "\xe4\xb8", [23376] = "\xd2\x2a", [23380] = "\xd2\x2b", -+ [23381] = "\xe4\xa8", [23382] = "\xd2\x2c", [23383] = "\xe4\xaa", -+ [23385] = "\xd2\x2d", [23386] = "\xd2\x2e", [23388] = "\xe4\xad", -+ [23389] = "\xd2\x2f", [23390] = "\xe4\xae", [23391] = "\xd2\x30", -+ [23392] = "\xe4\xab", [23393] = "\xe4\xac", [23394] = "\xd2\x31", -+ [23395] = "\xd2\x32", [23396] = "\xe4\xa9", [23397] = "\xe4\xa7", -+ [23399] = "\xd2\x33", [23402] = "\xe4\xa1", [23412] = "\xd2\x34", -+ [23414] = "\xca\xcf", [23415] = "\xb2\xd5", [23417] = "\xd2\x35", -+ [23419] = "\xe4\xb5", [23421] = "\xe4\xb2", [23422] = "\xd2\x36", -+ [23423] = "\xe4\xb7", [23424] = "\xd2\x37", [23425] = "\xd2\x38", -+ [23426] = "\xe4\xb6", [23428] = "\xc7\xf3", [23429] = "\xcc\xa7", -+ [23430] = "\xd2\x39", [23431] = "\xbb\xbb", [23432] = "\xe4\xb0", -+ [23433] = "\xe4\xb9", [23434] = "\xe4\xb4", [23435] = "\xd2\x3a", -+ [23436] = "\xe4\xb3", [23437] = "\xe4\xaf", [23438] = "\xd2\x3b", -+ [23439] = "\xe4\xb1", [23440] = "\xd2\x3c", [23441] = "\xb4\xc9", -+ [23445] = "\xd2\x3d", [23450] = "\xc3\xbd", [23452] = "\xd2\x3e", -+ [23453] = "\xc0\xfd", [23455] = "\xd2\x3f", [23456] = "\xd2\x40", -+ [23457] = "\xc8\xa2", [23458] = "\xd2\x41", [23460] = "\xe4\xbe", -+ [23461] = "\xd2\x42", [23462] = "\xd2\x43", [23464] = "\xc8\xa4", -+ [23466] = "\xd2\x44", [23467] = "\xd2\x45", [23468] = "\xd2\x46", -+ [23469] = "\xd2\x47", [23472] = "\xc0\xe1", [23473] = "\xe4\xbb", -+ [23474] = "\xd2\x48", [23476] = "\xc8\xcf", [23477] = "\xd2\x49", -+ [23478] = "\xe4\xbf", [23479] = "\xca\xd3", [23480] = "\xd2\x4a", -+ [23481] = "\xc3\xdb", [23482] = "\xd2\x4b", [23483] = "\xe4\xba", -+ [23484] = "\xe4\xbc", [23487] = "\xe4\xbd", [23492] = "\xd2\x4c", -+ [23494] = "\xd2\x4d", [23495] = "\xd2\x4e", [23497] = "\xd2\x4f", -+ [23498] = "\xd2\x50", [23499] = "\xd2\x51", [23501] = "\xe4\xc0", -+ [23504] = "\xbc\xc4", [23508] = "\xc6\xc6", [23509] = "\xe4\xc5", -+ [23510] = "\xe4\xc4", [23512] = "\xd2\x52", [23513] = "\xe4\xc1", -+ [23514] = "\xd2\x53", [23517] = "\xcf\xb6", [23522] = "\xd2\x54", -+ [23523] = "\xe4\xca", [23524] = "\xd2\x55", [23525] = "\xd2\x56", -+ [23526] = "\xe4\xce", [23527] = "\xe4\xcb", [23528] = "\xd2\x57", -+ [23529] = "\xd2\x58", [23530] = "\xd2\x59", [23532] = "\xd2\x5a", -+ [23534] = "\xd2\x5b", [23536] = "\xe4\xc7", [23537] = "\xd2\x5c", -+ [23538] = "\xd2\x5d", [23539] = "\xd2\x5e", [23540] = "\xd2\x5f", -+ [23542] = "\xd2\x60", [23543] = "\xe4\xc8", [23545] = "\xd2\x61", -+ [23547] = "\xd2\x62", [23548] = "\xd2\x63", [23549] = "\xe4\xcd", -+ [23550] = "\xd2\x64", [23551] = "\xd2\x65", [23553] = "\xe4\xc2", -+ [23554] = "\xd2\xd5", [23555] = "\xe4\xc9", [23556] = "\xe4\xc3", -+ [23559] = "\xe4\xcc", [23561] = "\xd2\x66", [23563] = "\xd2\x67", -+ [23567] = "\xe4\xd2", [23568] = "\xd2\x68", [23569] = "\xb4\xca", -+ [23571] = "\xe4\xcf", [23573] = "\xd2\x69", [23574] = "\xd2\x6a", -+ [23575] = "\xe4\xd0", [23576] = "\xd2\x6b", [23578] = "\xe4\xd1", -+ [23579] = "\xe4\xd4", [23580] = "\xd2\x6c", [23585] = "\xd2\x6d", -+ [23587] = "\xd2\x6e", [23588] = "\xd2\x6f", [23590] = "\xd2\x70", -+ [23591] = "\xe4\xd3", [23592] = "\xc8\xf6", [23593] = "\xd2\x71", -+ [23594] = "\xd2\x72", [23597] = "\xe4\xd5", [23598] = "\xce\xfc", -+ [23599] = "\xca\xed", [23600] = "\xe4\xda", [23603] = "\xe4\xd7", -+ [23606] = "\xd2\x73", [23610] = "\xd2\x74", [23612] = "\xe4\xd6", -+ [23613] = "\xc0\xd2", [23615] = "\xe4\xd9", [23616] = "\xe4\xdb", -+ [23617] = "\xd2\x76", [23618] = "\xd2\x77", [23619] = "\xd2\x78", -+ [23620] = "\xe4\xd8", [23621] = "\xd2\x75", [23622] = "\xe4\xdf", -+ [23624] = "\xe4\xdc", [23625] = "\xd2\x79", [23626] = "\xd2\x7a", -+ [23627] = "\xd2\x7b", [23628] = "\xd2\x7c", [23629] = "\xd2\x7d", -+ [23630] = "\xd2\x7e", [23631] = "\xe4\xdd", [23632] = "\xe4\xc6", -+ [23633] = "\xd3\x21", [23635] = "\xd3\x22", [23636] = "\xe4\xde", -+ [23637] = "\xe4\xe0", [23639] = "\xd3\x23", [23641] = "\xd3\x24", -+ [23644] = "\xe4\xe1", [23645] = "\xd3\x25", [23646] = "\xd3\x26", -+ [23648] = "\xd3\x27", [23650] = "\xd3\x28", [23651] = "\xca\xc6", -+ [23653] = "\xe4\xe2", [23657] = "\xd3\x29", [23660] = "\xd3\x2a", -+ [23661] = "\xd3\x2b", [23662] = "\xcc\xe2", [23665] = "\xb6\xce", -+ [23666] = "\xb7\xa9", [23667] = "\xe4\xe3", [23670] = "\xd3\x2c", -+ [23671] = "\xd3\x2d", [23673] = "\xca\xb4", [23675] = "\xbf\xe8", -+ [23677] = "\xcc\xb0", [23679] = "\xd3\x2e", [23680] = "\xe4\xe4", -+ [23682] = "\xce\xb3", [23684] = "\xd3\x2f", [23685] = "\xc7\xf4", -+ [23687] = "\xc1\xc6", [23688] = "\xc7\xb4", [23691] = "\xbd\xcd", -+ [23694] = "\xd3\x30", [23695] = "\xb0\xc0", [23696] = "\xd3\x31", -+ [23697] = "\xe4\xe9", [23698] = "\xe4\xe7", [23700] = "\xe4\xe5", -+ [23701] = "\xb4\xa1", [23702] = "\xd3\x32", [23703] = "\xbe\xd1", -+ [23704] = "\xe4\xea", [23707] = "\xe4\xe8", [23709] = "\xe4\xe6", -+ [23710] = "\xe4\xee", [23712] = "\xd3\x33", [23713] = "\xe4\xed", -+ [23714] = "\xe4\xec", [23715] = "\xe4\xeb", [23718] = "\xd3\x34", -+ [23719] = "\xd3\x35", [23721] = "\xe4\xef", [23722] = "\xd3\x36", -+ [23723] = "\xd3\x37", [23724] = "\xd3\x38", [23725] = "\xe4\xf0", -+ [23726] = "\xc0\xba", [23727] = "\xd3\x39", [23728] = "\xe4\xf1", -+ [23730] = "\xe4\xf3", [23732] = "\xd3\x3a", [23733] = "\xe4\xf2", -+ [23735] = "\xd3\x3b", [23736] = "\xd3\x3c", [23737] = "\xd3\x3d", -+ [23738] = "\xb8\xd2", [23741] = "\xd3\x3e", [23742] = "\xc1\xb8", -+ [23743] = "\xd3\x3f", [23746] = "\xe4\xf5", [23747] = "\xd3\x40", -+ [23748] = "\xd3\x41", [23749] = "\xd3\x42", [23750] = "\xc5\xfc", -+ [23751] = "\xd3\x43", [23752] = "\xe4\xf4", [23753] = "\xd3\x44", -+ [23754] = "\xd3\x45", [23756] = "\xe4\xf6", [23757] = "\xd3\x46", -+ [23758] = "\xca\xb5", [23759] = "\xc1\xec", [23760] = "\xb9\xc7", -+ [23762] = "\xe4\xf7", [23766] = "\xd3\x47", [23767] = "\xce\xc8", -+ [23769] = "\xd3\x48", [23771] = "\xd3\x49", [23775] = "\xe4\xf9", -+ [23778] = "\xe4\xfa", [23780] = "\xe4\xfb", [23781] = "\xd3\x4a", -+ [23782] = "\xe4\xfc", [23784] = "\xbb\xe5", [23786] = "\xe4\xfd", -+ [23787] = "\xb7\xcf", [23790] = "\xb5\xea", [23792] = "\xb5\xaa", -+ [23794] = "\xe5\xa1", [23795] = "\xd3\x4b", [23796] = "\xcc\xf3", -+ [23797] = "\xb9\xc8", [23798] = "\xe4\xfe", [23799] = "\xd3\x4c", -+ [23800] = "\xd3\x4d", [23801] = "\xd3\x4e", [23802] = "\xe5\xa4", -+ [23803] = "\xcc\xe6", [23805] = "\xc7\xbc", [23807] = "\xd3\x4f", -+ [23808] = "\xc9\xb3", [23809] = "\xd3\x50", [23810] = "\xd3\x51", -+ [23811] = "\xd3\x52", [23812] = "\xbd\xe3", [23813] = "\xe5\xa3", -+ [23814] = "\xd3\x53", [23815] = "\xbc\xd3", [23816] = "\xb9\xc9", -+ [23817] = "\xbb\xe6", [23818] = "\xb5\xe9", [23819] = "\xca\xb6", -+ [23820] = "\xe5\xa2", [23821] = "\xd3\x54", [23822] = "\xd3\x55", -+ [23824] = "\xc1\xc7", [23825] = "\xcb\xc2", [23826] = "\xba\xf7", -+ [23827] = "\xd3\x56", [23830] = "\xd3\x57", [23834] = "\xd3\x58", -+ [23835] = "\xbb\xe7", [23836] = "\xc4\xdd", [23837] = "\xd3\x59", -+ [23838] = "\xe5\xa7", [23839] = "\xce\xdf", [23840] = "\xba\xd9", -+ [23841] = "\xd3\x5a", [23842] = "\xe5\xa8", [23843] = "\xbf\xc2", -+ [23845] = "\xe5\xaa", [23849] = "\xbe\xd2", [23850] = "\xba\xb0", -+ [23852] = "\xd3\x5b", [23853] = "\xd3\x5c", [23854] = "\xd3\x5d", -+ [23855] = "\xe5\xa9", [23856] = "\xd3\x5e", [23857] = "\xd3\x5f", -+ [23858] = "\xbd\xaa", [23859] = "\xb8\xbe", [23860] = "\xc1\xc8", -+ [23861] = "\xe5\xa5", [23862] = "\xe5\xab", [23863] = "\xd3\x60", -+ [23864] = "\xd3\x61", [23867] = "\xe5\xa6", [23868] = "\xb7\xd0", -+ [23869] = "\xd3\x62", [23870] = "\xe5\xae", [23871] = "\xe5\xb2", -+ [23872] = "\xb7\xeb", [23873] = "\xd3\x63", [23875] = "\xd3\x64", -+ [23878] = "\xe5\xad", [23879] = "\xd3\x65", [23881] = "\xd3\x66", -+ [23882] = "\xd3\x67", [23883] = "\xe5\xb6", [23884] = "\xd3\x68", -+ [23885] = "\xd3\x69", [23886] = "\xb9\xca", [23889] = "\xcd\xed", -+ [23890] = "\xb0\xbc", [23891] = "\xe5\xb3", [23893] = "\xd3\x6a", -+ [23894] = "\xb5\xeb", [23895] = "\xd3\x6b", [23896] = "\xe5\xb0", -+ [23898] = "\xd3\x6c", [23902] = "\xe5\xb1", [23904] = "\xd3\x6d", -+ [23905] = "\xc5\xfd", [23906] = "\xe5\xaf", [23907] = "\xe5\xac", -+ [23909] = "\xb3\xa8", [23910] = "\xc0\xe4", [23912] = "\xd3\x6e", -+ [23913] = "\xb8\xa8", [23914] = "\xd3\x6f", [23915] = "\xd3\x70", -+ [23917] = "\xe5\xb8", [23919] = "\xd3\x71", [23921] = "\xd3\x72", -+ [23922] = "\xd3\x73", [23923] = "\xd3\x74", [23925] = "\xd3\x75", -+ [23926] = "\xd3\x76", [23928] = "\xd3\x77", [23929] = "\xe5\xb5", -+ [23931] = "\xd3\x78", [23932] = "\xd3\x79", [23933] = "\xd3\x7a", -+ [23935] = "\xe5\xb7", [23937] = "\xd3\x7b", [23939] = "\xe5\xb4", -+ [23942] = "\xd3\x7c", [23943] = "\xd3\x7d", [23945] = "\xb7\xd1", -+ [23946] = "\xc2\xb3", [23947] = "\xe5\xb9", [23948] = "\xc1\xee", -+ [23949] = "\xd3\x7e", [23950] = "\xd4\x21", [23951] = "\xe5\xc6", -+ [23952] = "\xf4\x5c", [23954] = "\xe5\xc2", [23955] = "\xe5\xbc", -+ [23958] = "\xd4\x22", [23959] = "\xd4\x23", [23962] = "\xd4\x24", -+ [23963] = "\xe5\xc0", [23964] = "\xbc\xfa", [23965] = "\xb0\xdd", -+ [23966] = "\xe5\xbb", [23967] = "\xe5\xc3", [23968] = "\xe5\xc7", -+ [23969] = "\xb9\xcb", [23970] = "\xcc\xd6", [23971] = "\xd4\x25", -+ [23972] = "\xc4\xd6", [23973] = "\xe5\xbd", [23974] = "\xd4\x26", -+ [23975] = "\xd4\x27", [23976] = "\xe5\xc5", [23977] = "\xd4\x28", -+ [23978] = "\xe5\xba", [23979] = "\xc3\xbe", [23981] = "\xe5\xbf", -+ [23982] = "\xb0\xbd", [23983] = "\xcc\xca", [23986] = "\xd4\x29", -+ [23987] = "\xd4\x2a", [23988] = "\xd4\x2b", [23989] = "\xd4\x2c", -+ [23990] = "\xd4\x2d", [23991] = "\xe5\xbe", [23994] = "\xb6\xdb", -+ [23995] = "\xc8\xec", [23996] = "\xd4\x2e", [23997] = "\xd4\x2f", -+ [23998] = "\xd4\x30", [23999] = "\xc1\xed", [24001] = "\xce\xd0", -+ [24002] = "\xbd\xef", [24005] = "\xe5\xee", [24006] = "\xf4\x5d", -+ [24007] = "\xd4\x31", [24008] = "\xe5\xc8", [24009] = "\xd4\x32", -+ [24010] = "\xc0\xfe", [24012] = "\xe5\xc4", [24013] = "\xe5\xc9", -+ [24014] = "\xe5\xcb", [24016] = "\xc4\xf9", [24017] = "\xe5\xce", -+ [24018] = "\xd4\x34", [24020] = "\xe5\xca", [24021] = "\xd4\x35", -+ [24022] = "\xd4\x36", [24024] = "\xca\xd4", [24025] = "\xb4\xcb", -+ [24026] = "\xd4\x37", [24027] = "\xd4\x38", [24028] = "\xcc\xcb", -+ [24029] = "\xd4\x39", [24031] = "\xb0\xde", [24033] = "\xd4\x3a", -+ [24034] = "\xe5\xcd", [24036] = "\xce\xfd", [24037] = "\xd4\x3b", -+ [24038] = "\xd4\x3c", [24041] = "\xd4\x3d", [24042] = "\xd4\x3e", -+ [24043] = "\xe5\xcc", [24048] = "\xd4\x33", [24049] = "\xb1\xef", -+ [24052] = "\xc6\xec", [24053] = "\xe5\xcf", [24056] = "\xd4\x3f", -+ [24057] = "\xe5\xd6", [24058] = "\xe5\xd0", [24059] = "\xe5\xd7", -+ [24064] = "\xd4\x40", [24065] = "\xd4\x41", [24066] = "\xe5\xd3", -+ [24069] = "\xd4\x42", [24071] = "\xd4\x43", [24075] = "\xc7\xfb", -+ [24076] = "\xd4\x44", [24077] = "\xd4\x45", [24078] = "\xbc\xca", -+ [24079] = "\xe5\xd5", [24080] = "\xd4\x46", [24081] = "\xe5\xd2", -+ [24082] = "\xe5\xd8", [24083] = "\xe5\xd1", [24086] = "\xbd\xc4", -+ [24087] = "\xd4\x47", [24088] = "\xd4\x48", [24091] = "\xcb\xa5", -+ [24092] = "\xd4\x49", [24093] = "\xd4\x4a", [24094] = "\xbd\xcc", -+ [24095] = "\xd4\x4b", [24097] = "\xe5\xd4", [24098] = "\xe5\xe0", -+ [24099] = "\xd4\x4c", [24101] = "\xe5\xdc", [24102] = "\xd4\x4d", -+ [24103] = "\xe5\xdf", [24105] = "\xe5\xdd", [24106] = "\xe5\xe1", -+ [24107] = "\xe5\xdb", [24109] = "\xe5\xc1", [24110] = "\xc0\xd3", -+ [24111] = "\xd4\x4e", [24113] = "\xc8\xcb", [24115] = "\xe5\xde", -+ [24116] = "\xd4\x4f", [24117] = "\xd4\x50", [24118] = "\xe5\xd9", -+ [24119] = "\xd4\x51", [24122] = "\xc1\xa1", [24123] = "\xb7\xd2", -+ [24125] = "\xbd\xab", [24126] = "\xd4\x52", [24128] = "\xd4\x53", -+ [24130] = "\xd4\x54", [24132] = "\xbf\xa5", [24133] = "\xc1\xb6", -+ [24134] = "\xe5\xe4", [24136] = "\xd4\x55", [24137] = "\xe5\xe6", -+ [24138] = "\xe5\xe7", [24141] = "\xe5\xe3", [24142] = "\xe5\xe5", -+ [24143] = "\xd4\x56", [24145] = "\xd4\x57", [24146] = "\xd4\x58", -+ [24149] = "\xd4\x59", [24150] = "\xe5\xda", [24151] = "\xe5\xe2", -+ [24153] = "\xe5\xea", [24154] = "\xe5\xe9", [24155] = "\xd4\x5a", -+ [24157] = "\xcb\xfa", [24158] = "\xd4\x5b", [24159] = "\xd4\x5c", -+ [24160] = "\xb7\xab", [24163] = "\xd4\x5d", [24168] = "\xd4\x5e", -+ [24169] = "\xe5\xe8", [24171] = "\xe5\xec", [24172] = "\xe5\xeb", -+ [24173] = "\xe5\xef", [24174] = "\xd4\x5f", [24175] = "\xe5\xf1", -+ [24177] = "\xd4\x60", [24178] = "\xbb\xbc", [24179] = "\xe5\xed", -+ [24182] = "\xd4\x61", [24183] = "\xd4\x62", [24184] = "\xe5\xf2", -+ [24185] = "\xe5\xf3", [24186] = "\xd4\x63", [24188] = "\xe5\xf4", -+ [24189] = "\xd4\x64", [24190] = "\xe5\xfa", [24191] = "\xc5\xbb", -+ [24192] = "\xe5\xf6", [24193] = "\xd4\x65", [24194] = "\xe5\xf5", -+ [24195] = "\xe5\xf7", [24196] = "\xe5\xf8", [24197] = "\xd4\x66", -+ [24198] = "\xe5\xf9", [24200] = "\xd4\x67", [24202] = "\xd4\x68", -+ [24203] = "\xe5\xfb", [24204] = "\xe5\xfc", [24205] = "\xd4\x69", -+ [24206] = "\xd4\x6a", [24358] = "\xb4\xcc", [24360] = "\xe5\xfd", -+ [24362] = "\xe5\xfe", [24363] = "\xd4\x6c", [24364] = "\xd4\x6b", -+ [24365] = "\xd4\x6d", [24366] = "\xd4\x6e", [24367] = "\xd4\x6f", -+ [24371] = "\xd4\x70", [24372] = "\xd4\x71", [24373] = "\xe6\xa1", -+ [24375] = "\xd4\x72", [24380] = "\xe6\xa2", [24381] = "\xe6\xa3", -+ [24382] = "\xe6\xa4", [24383] = "\xd4\x73", [24384] = "\xe6\xa5", -+ [24385] = "\xe6\xa6", [24386] = "\xd4\x74", [24387] = "\xd4\x75", -+ [24388] = "\xe6\xa8", [24389] = "\xe6\xa7", [24392] = "\xe6\xa9", -+ [24395] = "\xd4\x76", [24396] = "\xd4\x77", [24397] = "\xd4\x78", -+ [24399] = "\xe6\xaa", [24400] = "\xe6\xab", [24401] = "\xd4\x79", -+ [24403] = "\xd4\x7a", [24404] = "\xd4\x7b", [24405] = "\xd4\x7c", -+ [24406] = "\xd4\x7d", [24407] = "\xe6\xae", [24408] = "\xe6\xac", -+ [24409] = "\xe6\xad", [24410] = "\xba\xe1", [24411] = "\xb7\xd3", -+ [24413] = "\xd4\x7e", [24414] = "\xc3\xd6", [24416] = "\xc8\xb3", -+ [24417] = "\xd5\x21", [24418] = "\xbd\xf0", [24421] = "\xc7\xcd", -+ [24423] = "\xc8\xed", [24424] = "\xe6\xaf", [24425] = "\xd8\xed", -+ [24429] = "\xd5\x22", [24430] = "\xd5\x23", [24431] = "\xd5\x24", -+ [24432] = "\xd5\x25", [24434] = "\xe6\xb0", [24435] = "\xe6\xb2", -+ [24437] = "\xcd\xe5", [24438] = "\xe6\xb1", [24439] = "\xe6\xb4", -+ [24440] = "\xe6\xb3", [24442] = "\xcd\xd3", [24443] = "\xd5\x26", -+ [24444] = "\xe6\xb5", [24445] = "\xd5\x27", [24446] = "\xc8\xfe", -+ [24447] = "\xd5\x28", [24448] = "\xd5\x29", [24449] = "\xd5\x2a", -+ [24452] = "\xe6\xb6", [24454] = "\xd5\x2b", [24455] = "\xd5\x2c", -+ [24458] = "\xe6\xb9", [24460] = "\xd5\x2d", [24461] = "\xe6\xb8", -+ [24462] = "\xe6\xb7", [24465] = "\xd5\x2e", [24466] = "\xd5\x2f", -+ [24467] = "\xe6\xba", [24468] = "\xb7\xb2", [24470] = "\xd5\x30", -+ [24472] = "\xc1\xa2", [24473] = "\xb5\xc1", [24474] = "\xd5\x31", -+ [24477] = "\xd5\x32", [24478] = "\xe6\xbe", [24479] = "\xe6\xbb", -+ [24482] = "\xe6\xbc", [24484] = "\xd5\x33", [24486] = "\xe6\xbf", -+ [24488] = "\xe6\xc0", [24489] = "\xe6\xbd", [24492] = "\xd5\x34", -+ [24493] = "\xb1\xa9", [24495] = "\xd5\x35", [24496] = "\xd5\x36", -+ [24497] = "\xb2\xa7", [24499] = "\xd5\x37", [24501] = "\xe6\xc2", -+ [24502] = "\xe6\xc3", [24504] = "\xd5\x38", [24506] = "\xe6\xc4", -+ [24508] = "\xcd\xe2", [24510] = "\xd5\x39", [24511] = "\xd5\x3a", -+ [24514] = "\xbd\xac", [24516] = "\xe6\xc6", [24517] = "\xe6\xc5", -+ [24523] = "\xd5\x3b", [24527] = "\xd5\x3c", [24528] = "\xbf\xe9", -+ [24529] = "\xe6\xc7", [24531] = "\xd5\x3d", [24533] = "\xd5\x3e", -+ [24534] = "\xe6\xc8", [24536] = "\xd5\x3f", [24537] = "\xe6\xc9", -+ [24539] = "\xb4\xe5", [24540] = "\xd5\x40", [24542] = "\xd5\x41", -+ [24543] = "\xd5\x42", [24544] = "\xb4\xcd", [24546] = "\xd5\x43", -+ [24547] = "\xe6\xca", [24553] = "\xe6\xcb", [24554] = "\xd5\x44", -+ [24555] = "\xcb\xdd", [24556] = "\xcd\xe3", [24557] = "\xd5\x45", -+ [24558] = "\xd5\x46", [24559] = "\xd5\x47", [24560] = "\xcd\xd4", -+ [24561] = "\xcf\xb7", [24563] = "\xb9\xcd", [24564] = "\xe6\xce", -+ [24565] = "\xbc\xd4", [24566] = "\xe6\xcd", [24567] = "\xd5\x48", -+ [24568] = "\xd5\x49", [24570] = "\xd5\x4a", [24571] = "\xe6\xcf", -+ [24572] = "\xbc\xa9", [24573] = "\xd5\x4b", [24574] = "\xd5\x4c", -+ [24575] = "\xd5\x4d", [24576] = "\xc2\xd1", [24577] = "\xd5\x4e", -+ [24578] = "\xe6\xd0", [24579] = "\xd5\x4f", [24580] = "\xd5\x50", -+ [24581] = "\xb9\xcc", [24582] = "\xd5\x51", [24583] = "\xcc\xd7", -+ [24584] = "\xe6\xd1", [24585] = "\xe6\xd2", [24588] = "\xe6\xd3", -+ [24589] = "\xd5\x52", [24590] = "\xd5\x53", [24591] = "\xd5\x54", -+ [24592] = "\xd5\x55", [24593] = "\xe6\xd4", [24596] = "\xd5\x56", -+ [24598] = "\xd5\x57", [24600] = "\xe6\xd5", [24604] = "\xd5\x58", -+ [24606] = "\xd5\x59", [24608] = "\xd5\x5a", [24611] = "\xbc\xaa", -+ [24612] = "\xd5\x5b", [24613] = "\xd5\x5c", [24614] = "\xcc\xed", -+ [24615] = "\xd5\x5d", [24617] = "\xd5\x5e", [24618] = "\xd5\x5f", -+ [24619] = "\xe6\xd7", [24620] = "\xd5\x60", [24621] = "\xc3\xbf", -+ [24622] = "\xd5\x61", [24623] = "\xe6\xd6", [24624] = "\xd5\x62", -+ [24628] = "\xd5\x63", [24630] = "\xe6\xd9", [24634] = "\xe6\xd8", -+ [24642] = "\xe6\xda", [24646] = "\xc0\xbb", [24648] = "\xe6\xdb", -+ [24650] = "\xe6\xdc", [24654] = "\xca\xb9", [24655] = "\xe6\xdd", -+ [24656] = "\xd5\x64", [24657] = "\xc1\xef", [24658] = "\xe6\xde", -+ [24660] = "\xd5\x65", [24662] = "\xd5\x66", [24664] = "\xe6\xdf", -+ [24669] = "\xd5\x67", [24671] = "\xce\xfe", [24672] = "\xe6\xe2", -+ [24673] = "\xd5\x68", [24674] = "\xe6\xe1", [24675] = "\xe6\xe0", -+ [24676] = "\xc4\xb0", [24677] = "\xd5\x69", [24678] = "\xe6\xe3", -+ [24679] = "\xbf\xa6", [24681] = "\xe6\xe4", [24685] = "\xe6\xe5", -+ [24686] = "\xcf\xb8", [24687] = "\xe6\xe6", [24689] = "\xd5\x6a", -+ [24692] = "\xe6\xe7", [24693] = "\xe6\xe9", [24694] = "\xe6\xe8", -+ [24695] = "\xc8\xa5", [24696] = "\xd5\x6b", [24697] = "\xc6\xf9", -+ [24699] = "\xcf\xbe", [24700] = "\xc8\xa9", [24702] = "\xd5\x6c", -+ [24707] = "\xe6\xeb", [24710] = "\xbe\xd3", [24712] = "\xc9\xaa", -+ [24714] = "\xe6\xec", [24715] = "\xe6\xea", [24716] = "\xd5\x6d", -+ [24717] = "\xb4\xce", [24718] = "\xd5\x6e", [24721] = "\xb8\xd4", -+ [24722] = "\xbb\xe8", [24725] = "\xc8\xee", [24726] = "\xd5\x6f", -+ [24727] = "\xd5\x70", [24729] = "\xb8\xaa", [24730] = "\xcb\xc3", -+ [24731] = "\xd5\x71", [24732] = "\xe6\xef", [24733] = "\xe6\xed", -+ [24735] = "\xb9\xce", [24737] = "\xb9\xcf", [24738] = "\xb0\xe9", -+ [24740] = "\xba\xe8", [24744] = "\xd5\x72", [24745] = "\xd5\x73", -+ [24746] = "\xc7\xd9", [24755] = "\xb0\xdf", [24756] = "\xe6\xf4", -+ [24758] = "\xc3\xc0", [24760] = "\xd5\x74", [24764] = "\xc7\xd8", -+ [24765] = "\xd5\x75", [24766] = "\xc2\xdb", [24767] = "\xd5\x76", -+ [24770] = "\xd5\x77", [24772] = "\xd5\x78", [24773] = "\xd5\x79", -+ [24774] = "\xe6\xf6", [24775] = "\xd5\x7a", [24776] = "\xd5\x7b", -+ [24777] = "\xe6\xf2", [24778] = "\xe6\xf5", [24779] = "\xe6\xf0", -+ [24781] = "\xe6\xf3", [24782] = "\xcb\xa6", [24784] = "\xd5\x7c", -+ [24785] = "\xb8\xd5", [24788] = "\xb0\xfd", [24789] = "\xe6\xf1", -+ [24797] = "\xd5\x7d", [24798] = "\xd5\x7e", [24799] = "\xe6\xf8", -+ [24800] = "\xd6\x21", [24801] = "\xe6\xf9", [24802] = "\xd6\x22", -+ [24803] = "\xd6\x23", [24804] = "\xc6\xb9", [24806] = "\xd6\x24", -+ [24808] = "\xb6\xbb", [24809] = "\xd6\x25", [24810] = "\xd6\x26", -+ [24812] = "\xe7\xa6", [24813] = "\xc7\xbd", [24814] = "\xd6\x27", -+ [24818] = "\xbb\xe9", [24819] = "\xd6\x28", [24821] = "\xb6\xbc", -+ [24822] = "\xc0\xc8", [24823] = "\xcf\xc6", [24824] = "\xcc\xae", -+ [24825] = "\xe6\xf7", [24826] = "\xc0\xd4", [24827] = "\xd6\x29", -+ [24838] = "\xd6\x2a", [24839] = "\xd6\x2b", [24840] = "\xd6\x2c", -+ [24842] = "\xb5\xd3", [24843] = "\xe6\xfa", [24844] = "\xd6\x2d", -+ [24846] = "\xd6\x2e", [24848] = "\xd6\x2f", [24851] = "\xe6\xfc", -+ [24852] = "\xd6\x30", [24855] = "\xd6\x31", [24857] = "\xe6\xfb", -+ [24860] = "\xd6\x32", [24863] = "\xe6\xfd", [24864] = "\xd6\x33", -+ [24865] = "\xc3\xa6", [24867] = "\xc7\xbe", [24869] = "\xd6\x34", -+ [24873] = "\xc4\xb1", [24874] = "\xd6\x35", [24876] = "\xd6\x36", -+ [24878] = "\xe7\xa3", [24885] = "\xd6\x37", [24886] = "\xe7\xa2", -+ [24887] = "\xd6\x38", [24890] = "\xd6\x39", [24891] = "\xe6\xfe", -+ [24892] = "\xd6\x3a", [24894] = "\xbf\xd5", [24896] = "\xc9\xe5", -+ [24897] = "\xe7\xa5", [24898] = "\xd6\x3b", [24899] = "\xe7\xa4", -+ [24900] = "\xb9\xd0", [24901] = "\xcf\xd3", [24903] = "\xd6\x3c", -+ [24911] = "\xe7\xb5", [24912] = "\xd6\x3d", [24913] = "\xd6\x3e", -+ [24917] = "\xe7\xa9", [24918] = "\xe7\xaa", [24919] = "\xd6\x3f", -+ [24920] = "\xd6\x40", [24921] = "\xd6\x41", [24923] = "\xbc\xf0", -+ [24925] = "\xd6\x42", [24926] = "\xe7\xa8", [24927] = "\xd6\x43", -+ [24928] = "\xb9\xf8", [24929] = "\xe7\xa7", [24932] = "\xe7\xab", -+ [24935] = "\xd6\x44", [24936] = "\xc4\xb2", [24937] = "\xca\xa2", -+ [24938] = "\xc1\xa3", [24943] = "\xc2\xdc", [24944] = "\xe7\xaf", -+ [24945] = "\xd6\x45", [24946] = "\xe7\xb0", [24947] = "\xe7\xac", -+ [24948] = "\xd6\x47", [24949] = "\xd6\x48", [24950] = "\xd6\x49", -+ [24952] = "\xe7\xad", [24954] = "\xe7\xae", [24955] = "\xd6\x4a", -+ [24958] = "\xd6\x4b", [24959] = "\xb9\xd1", [24960] = "\xd6\x46", -+ [24963] = "\xe7\xb6", [24965] = "\xe7\xb2", [24966] = "\xd6\x4c", -+ [24968] = "\xd6\x4d", [24970] = "\xc9\xe6", [24971] = "\xd6\x4e", -+ [24972] = "\xcb\xec", [24973] = "\xc9\xa8", [24974] = "\xd6\x4f", -+ [24976] = "\xe7\xb1", [24978] = "\xd6\x50", [24979] = "\xe7\xb4", -+ [24980] = "\xe7\xb3", [24984] = "\xcb\xc4", [24985] = "\xe7\xb7", -+ [24990] = "\xd6\x51", [24992] = "\xe7\xb8", [24994] = "\xd6\x52", -+ [24995] = "\xc1\xb7", [24996] = "\xd6\x53", [24997] = "\xe7\xb9", -+ [25000] = "\xe7\xbb", [25002] = "\xe7\xbf", [25003] = "\xd6\x54", -+ [25005] = "\xe7\xbc", [25006] = "\xe7\xba", [25007] = "\xc7\xbf", -+ [25008] = "\xe7\xbd", [25010] = "\xe7\xbe", [25011] = "\xd6\x56", -+ [25013] = "\xd6\x57", [25014] = "\xb2\xb2", [25016] = "\xe7\xc5", -+ [25017] = "\xe7\xc0", [25018] = "\xd6\x58", [25019] = "\xd6\x55", -+ [25021] = "\xe7\xc1", [25022] = "\xd6\x59", [25023] = "\xd6\x5a", -+ [25025] = "\xe7\xc2", [25027] = "\xc2\xa1", [25029] = "\xd6\x5b", -+ [25031] = "\xd6\x5c", [25032] = "\xe7\xc4", [25033] = "\xe7\xc3", -+ [25034] = "\xe7\xc6", [25035] = "\xd6\x5d", [25037] = "\xd6\x5e", -+ [25038] = "\xd6\x5f", [25039] = "\xe7\xc7", [25040] = "\xe7\xc8", -+ [25041] = "\xd6\x60", [25043] = "\xbf\xc3", [25044] = "\xd6\x61", -+ [25045] = "\xb2\xe9", [25047] = "\xe7\xc9", [25048] = "\xce\xd7", -+ [25050] = "\xbc\xab", [25051] = "\xd6\x62", [25052] = "\xd6\x63", -+ [25053] = "\xbd\xad", [25056] = "\xd6\x64", [25057] = "\xd6\x65", -+ [25058] = "\xd6\x66", [25059] = "\xbb\xea", [25060] = "\xc3\xd7", -+ [25061] = "\xd6\x67", [25062] = "\xd6\x68", [25064] = "\xd6\x69", -+ [25065] = "\xd6\x6a", [25066] = "\xe7\xca", [25067] = "\xe7\xcb", -+ [25068] = "\xb1\xb1", [25069] = "\xd6\x6b", [25070] = "\xe7\xcc", -+ [25071] = "\xd6\x6c", [25072] = "\xd6\x6d", [25073] = "\xe7\xcd", -+ [25074] = "\xe7\xce", [25075] = "\xd6\x6e", [25077] = "\xe7\xcf", -+ [25079] = "\xe7\xd0", [25080] = "\xb6\xbd", [25081] = "\xda\xaa", -+ [25082] = "\xe7\xd1", [25084] = "\xc0\xe5", [25085] = "\xe7\xd2", -+ [25086] = "\xbc\xcb", [25087] = "\xd6\x6f", [25088] = "\xe7\xd3", -+ [25090] = "\xd0\xb0", [25091] = "\xd6\x70", [25092] = "\xd6\x71", -+ [25094] = "\xe7\xd4", [25095] = "\xca\xde", [25096] = "\xb4\xdc", -+ [25097] = "\xd6\x72", [25098] = "\xd6\x73", [25099] = "\xc1\xa4", -+ [25100] = "\xbd\xd8", [25101] = "\xd6\x74", [25102] = "\xc9\xf1", -+ [25103] = "\xbd\xae", [25105] = "\xd6\x75", [25106] = "\xd6\x76", -+ [25112] = "\xd6\x77", [25113] = "\xe7\xd5", [25114] = "\xb9\xd2", -+ [25115] = "\xe7\xd6", [25116] = "\xc8\xcc", [25118] = "\xe7\xe4", -+ [25122] = "\xd6\x78", [25123] = "\xe7\xd8", [25124] = "\xd6\x79", -+ [25125] = "\xc2\xc9", [25126] = "\xc7\xf5", [25127] = "\xb8\xbf", -+ [25128] = "\xe7\xd7", [25129] = "\xc1\xa5", [25130] = "\xd6\x7a", -+ [25136] = "\xe7\xd9", [25139] = "\xd6\x7b", [25140] = "\xd6\x7c", -+ [25141] = "\xd6\x7d", [25142] = "\xd6\x7e", [25143] = "\xc4\xfa", -+ [25147] = "\xd7\x21", [25150] = "\xd7\x22", [25151] = "\xd7\x23", -+ [25153] = "\xd7\x24", [25158] = "\xd7\x25", [25160] = "\xe7\xdb", -+ [25161] = "\xe7\xda", [25162] = "\xe7\xdd", [25164] = "\xd7\x26", -+ [25165] = "\xe7\xdc", [25167] = "\xe7\xde", [25168] = "\xd7\x27", -+ [25170] = "\xe7\xe0", [25171] = "\xd7\x28", [25172] = "\xe7\xdf", -+ [25174] = "\xb4\xcf", [25175] = "\xd7\x29", [25176] = "\xe7\xe1", -+ [25178] = "\xe7\xe2", [25179] = "\xe7\xe3", [25181] = "\xd7\x2a", -+ [25182] = "\xba\xb1", [25183] = "\xce\xc9", [25185] = "\xe7\xe5", -+ [25186] = "\xbf\xa7", [25188] = "\xd7\x2b", [25190] = "\xb1\xf0", -+ [25191] = "\xe7\xe6", [25192] = "\xe7\xe7", [25195] = "\xd7\x2c", -+ [25197] = "\xd7\x2d", [25198] = "\xe7\xe8", [25199] = "\xd7\x2e", -+ [25200] = "\xd7\x2f", [25201] = "\xd7\x30", [25203] = "\xd7\x31", -+ [25204] = "\xd7\x32", [25207] = "\xd7\x33", [25209] = "\xd7\x34", -+ [25210] = "\xd7\x35", [25211] = "\xb0\xf2", [25213] = "\xe7\xe9", -+ [25214] = "\xd7\x36", [25217] = "\xd7\x37", [25218] = "\xe7\xea", -+ [25220] = "\xd7\x38", [25222] = "\xd7\x39", [25224] = "\xd7\x3a", -+ [25225] = "\xc9\xe7", [25226] = "\xd7\x3b", [25227] = "\xd7\x3c", -+ [25229] = "\xbc\xc7", [25231] = "\xe7\xec", [25232] = "\xd7\x3d", -+ [25233] = "\xd7\x3e", [25235] = "\xd7\x3f", [25236] = "\xd7\x40", -+ [25237] = "\xb3\xa9", [25238] = "\xb0\xb2", [25239] = "\xd7\x41", -+ [25240] = "\xd7\x42", [25241] = "\xd7\x43", [25242] = "\xd7\x44", -+ [25243] = "\xe7\xeb", [25244] = "\xe7\xee", [25245] = "\xc7\xce", -+ [25246] = "\xd7\x45", [25247] = "\xbf\xc4", [25248] = "\xd7\x46", -+ [25249] = "\xb2\xd6", [25250] = "\xd7\x47", [25251] = "\xcb\xa7", -+ [25252] = "\xd7\x48", [25255] = "\xd7\x49", [25256] = "\xb7\xdd", -+ [25257] = "\xb6\xdc", [25258] = "\xd7\x4a", [25259] = "\xe7\xed", -+ [25260] = "\xd7\x4b", [25261] = "\xb2\xea", [25262] = "\xd7\x4c", -+ [25263] = "\xd7\x4d", [25269] = "\xb4\xa3", [25270] = "\xd7\x4e", -+ [25280] = "\xd7\x4f", [25281] = "\xb1\xf1", [25282] = "\xe7\xf2", -+ [25283] = "\xce\xea", [25284] = "\xc2\xdd", [25285] = "\xd7\x50", -+ [25287] = "\xc9\xc4", [25289] = "\xe7\xfe", [25290] = "\xd7\x51", -+ [25291] = "\xb2\xd7", [25292] = "\xe7\xfc", [25294] = "\xe7\xfa", -+ [25295] = "\xe7\xf1", [25296] = "\xd7\x52", [25297] = "\xe7\xef", -+ [25298] = "\xd7\x53", [25299] = "\xe7\xf0", [25300] = "\xd7\x54", -+ [25301] = "\xbc\xe3", [25302] = "\xb6\xec", [25303] = "\xc3\xf7", -+ [25304] = "\xd7\x55", [25306] = "\xd7\x56", [25307] = "\xc6\xd1", -+ [25309] = "\xd7\x57", [25311] = "\xd7\x58", [25313] = "\xb1\xd1", -+ [25315] = "\xe7\xf4", [25316] = "\xe7\xf3", [25318] = "\xd7\x59", -+ [25319] = "\xd7\x5a", [25321] = "\xe7\xf9", [25322] = "\xe7\xf5", -+ [25323] = "\xe7\xf8", [25325] = "\xd7\x5b", [25326] = "\xd7\x5c", -+ [25328] = "\xd7\x5d", [25329] = "\xd7\x5e", [25330] = "\xcc\xd0", -+ [25331] = "\xe7\xf7", [25332] = "\xb2\xd8", [25333] = "\xb3\xfd", -+ [25334] = "\xe7\xfb", [25335] = "\xd7\x5f", [25336] = "\xd7\x60", -+ [25337] = "\xe7\xfd", [25338] = "\xd7\x61", [25339] = "\xd7\x62", -+ [25342] = "\xb7\xd4", [25350] = "\xe8\xa3", [25351] = "\xe8\xac", -+ [25352] = "\xe8\xad", [25355] = "\xd7\x64", [25356] = "\xb0\xab", -+ [25357] = "\xd7\x65", [25358] = "\xd7\x66", [25359] = "\xd7\x67", -+ [25361] = "\xd7\x68", [25362] = "\xd7\x69", [25363] = "\xe8\xb4", -+ [25368] = "\xb0\xf1", [25371] = "\xe8\xab", [25372] = "\xd7\x6a", -+ [25373] = "\xd7\x6b", [25374] = "\xd7\x6c", [25375] = "\xe8\xaa", -+ [25376] = "\xd7\x6d", [25377] = "\xe8\xa5", [25378] = "\xe8\xa4", -+ [25379] = "\xd7\x6e", [25380] = "\xe8\xa2", [25381] = "\xe8\xa1", -+ [25382] = "\xc3\xe3", [25383] = "\xd7\x6f", [25384] = "\xc2\xfb", -+ [25385] = "\xe8\xa7", [25386] = "\xd7\x70", [25388] = "\xd7\x71", -+ [25389] = "\xd7\x72", [25392] = "\xe8\xa6", [25394] = "\xd7\x73", -+ [25395] = "\xd7\x74", [25396] = "\xd7\x75", [25397] = "\xe8\xa9", -+ [25399] = "\xd7\x76", [25401] = "\xc1\xf0", [25402] = "\xb7\xd5", -+ [25405] = "\xd7\x77", [25406] = "\xd7\x78", [25407] = "\xb1\xc1", -+ [25408] = "\xe8\xa8", [25409] = "\xd7\x79", [25410] = "\xb9\xd3", -+ [25411] = "\xd8\x3e", [25412] = "\xd7\x63", [25413] = "\xd7\x7a", -+ [25414] = "\xd7\x7b", [25415] = "\xd7\x7c", [25416] = "\xc1\xf1", -+ [25426] = "\xf4\x5f", [25440] = "\xd7\x7d", [25443] = "\xe8\xba", -+ [25445] = "\xe8\xbb", [25447] = "\xb2\xd9", [25448] = "\xd7\x7e", -+ [25451] = "\xb2\xae", [25452] = "\xe8\xb8", [25453] = "\xd8\x21", -+ [25455] = "\xd8\x22", [25456] = "\xd8\x23", [25458] = "\xd8\x24", -+ [25460] = "\xd8\x25", [25461] = "\xe8\xae", [25462] = "\xd8\x26", -+ [25463] = "\xe8\xb6", [25465] = "\xe8\xbd", [25466] = "\xe8\xb7", -+ [25469] = "\xd8\x27", [25470] = "\xe8\xb5", [25474] = "\xd8\x28", -+ [25475] = "\xe7\xf6", [25476] = "\xd8\x29", [25477] = "\xd8\x2a", -+ [25478] = "\xe8\xb3", [25480] = "\xd8\x2b", [25481] = "\xd8\x2c", -+ [25482] = "\xe8\xaf", [25483] = "\xd8\x2d", [25484] = "\xd8\x2e", -+ [25485] = "\xd8\x2f", [25486] = "\xb4\xd0", [25487] = "\xe8\xb1", -+ [25488] = "\xe8\xbc", [25490] = "\xe8\xb2", [25494] = "\xd8\x30", -+ [25495] = "\xd8\x31", [25496] = "\xe8\xbe", [25497] = "\xd8\x32", -+ [25498] = "\xe8\xb0", [25499] = "\xc7\xfc", [25500] = "\xd8\x33", -+ [25501] = "\xd8\x4c", [25505] = "\xcd\xe9", [25509] = "\xe8\xb9", -+ [25517] = "\xe8\xcf", [25518] = "\xd8\x34", [25519] = "\xd8\x35", -+ [25520] = "\xd8\x36", [25521] = "\xe8\xc7", [25525] = "\xbf\xfb", -+ [25527] = "\xd8\x37", [25529] = "\xd8\x38", [25530] = "\xb5\xc6", -+ [25532] = "\xb6\xdd", [25534] = "\xe8\xc2", [25535] = "\xd8\x39", -+ [25536] = "\xd8\x3a", [25537] = "\xd8\x3b", [25539] = "\xb2\xdb", -+ [25540] = "\xd8\x3c", [25542] = "\xbe\xd4", [25544] = "\xe8\xc5", -+ [25548] = "\xba\xda", [25549] = "\xd8\x3d", [25551] = "\xc5\xd1", -+ [25552] = "\xe8\xca", [25560] = "\xd8\x3f", [25561] = "\xca\xee", -+ [25562] = "\xd8\x40", [25563] = "\xe8\xc1", [25567] = "\xb2\xda", -+ [25568] = "\xb8\xd6", [25569] = "\xc9\xa9", [25570] = "\xe8\xcb", -+ [25572] = "\xe8\xbf", [25574] = "\xd8\x41", [25575] = "\xe8\xc8", -+ [25576] = "\xd8\x42", [25577] = "\xd8\x43", [25579] = "\xe8\xd2", -+ [25580] = "\xd8\x44", [25581] = "\xe8\xc3", [25585] = "\xd8\x45", -+ [25587] = "\xe8\xc4", [25588] = "\xc6\xba", [25590] = "\xd8\x46", -+ [25591] = "\xe8\xc9", [25594] = "\xd8\x47", [25595] = "\xe8\xc6", -+ [25596] = "\xcb\xa8", [25597] = "\xe8\xcc", [25598] = "\xb0\xe0", -+ [25599] = "\xd8\x48", [25601] = "\xd8\x49", [25603] = "\xe8\xc0", -+ [25605] = "\xd8\x4a", [25609] = "\xd8\x4b", [25616] = "\xe8\xce", -+ [25618] = "\xe8\xcd", [25625] = "\xc7\xeb", [25626] = "\xe8\xd4", -+ [25628] = "\xe8\xdf", [25631] = "\xd8\x4d", [25633] = "\xb3\xfe", -+ [25637] = "\xe8\xe2", [25640] = "\xe8\xd0", [25641] = "\xd8\x4e", -+ [25644] = "\xe8\xd5", [25645] = "\xcd\xee", [25653] = "\xd8\x4f", -+ [25654] = "\xe8\xde", [25655] = "\xd8\x50", [25656] = "\xd8\x51", -+ [25657] = "\xcd\xd5", [25658] = "\xd8\x52", [25661] = "\xd8\x53", -+ [25662] = "\xce\xaa", [25663] = "\xd8\x54", [25665] = "\xd8\x55", -+ [25666] = "\xd8\x56", [25670] = "\xd8\x57", [25671] = "\xc3\xf8", -+ [25672] = "\xd8\x58", [25673] = "\xd8\x59", [25674] = "\xd8\x5a", -+ [25675] = "\xb3\xeb", [25676] = "\xd8\x5b", [25680] = "\xd8\x5c", -+ [25681] = "\xc9\xf2", [25682] = "\xe8\xe4", [25683] = "\xc6\xa1", -+ [25684] = "\xd8\x5d", [25685] = "\xd8\x5e", [25686] = "\xb0\xb1", -+ [25687] = "\xd8\x5f", [25689] = "\xe8\xdd", [25690] = "\xd8\x60", -+ [25691] = "\xe8\xd9", [25692] = "\xc1\xf2", [25693] = "\xe8\xd3", -+ [25694] = "\xe8\xdb", [25695] = "\xe8\xe0", [25696] = "\xd8\x61", -+ [25697] = "\xc7\xac", [25699] = "\xd8\x62", [25700] = "\xd8\x63", -+ [25701] = "\xb0\xaa", [25702] = "\xd8\x64", [25703] = "\xe8\xd8", -+ [25704] = "\xd8\x65", [25705] = "\xe8\xe1", [25706] = "\xc9\xf8", -+ [25708] = "\xd8\x66", [25709] = "\xd8\x67", [25713] = "\xd8\x68", -+ [25714] = "\xe8\xdc", [25716] = "\xe8\xd7", [25717] = "\xd8\x69", -+ [25723] = "\xbe\xd5", [25728] = "\xbd\xaf", [25730] = "\xd8\x6a", -+ [25731] = "\xd8\x6b", [25732] = "\xbc\xac", [25733] = "\xd8\x6c", -+ [25737] = "\xcc\xd8", [25740] = "\xc9\xc7", [25742] = "\xd8\x6d", -+ [25743] = "\xe8\xe7", [25745] = "\xe8\xf0", [25750] = "\xd8\x6e", -+ [25752] = "\xd8\x6f", [25753] = "\xd8\x70", [25754] = "\xd8\x71", -+ [25757] = "\xe8\xda", [25759] = "\xd8\x72", [25761] = "\xd8\x73", -+ [25762] = "\xb3\xf7", [25764] = "\xd8\x74", [25768] = "\xbe\xf8", -+ [25769] = "\xe8\xe5", [25770] = "\xd8\x75", [25771] = "\xe8\xea", -+ [25772] = "\xc1\xf3", [25773] = "\xd8\x76", [25774] = "\xd8\x77", -+ [25775] = "\xe8\xe6", [25776] = "\xd8\x78", [25777] = "\xe8\xed", -+ [25778] = "\xd8\x79", [25780] = "\xc3\xdf", [25782] = "\xe8\xee", -+ [25783] = "\xd8\x7a", [25784] = "\xd8\x7b", [25785] = "\xcd\xd6", -+ [25786] = "\xe8\xe3", [25787] = "\xb3\xb8", [25788] = "\xd8\x7c", -+ [25789] = "\xe8\xe9", [25791] = "\xd8\x7d", [25792] = "\xe8\xec", -+ [25793] = "\xcc\xac", [25795] = "\xd8\x7e", [25798] = "\xe8\xef", -+ [25801] = "\xe8\xe8", [25802] = "\xe8\xeb", [25804] = "\xd9\x21", -+ [25815] = "\xd9\x22", [25818] = "\xd9\x23", [25820] = "\xcb\xa9", -+ [25822] = "\xcf\xa1", [25823] = "\xd9\x24", [25824] = "\xd9\x25", -+ [25825] = "\xd9\x26", [25826] = "\xd9\x27", [25828] = "\xe8\xf3", -+ [25831] = "\xd9\x28", [25834] = "\xd9\x2a", [25835] = "\xd9\x2b", -+ [25836] = "\xe8\xfa", [25837] = "\xd9\x2c", [25839] = "\xe8\xf2", -+ [25840] = "\xbc\xc3", [25842] = "\xd9\x2d", [25843] = "\xd9\x2e", -+ [25846] = "\xe8\xd1", [25847] = "\xd9\x2f", [25852] = "\xd9\x30", -+ [25854] = "\xd9\x31", [25856] = "\xd9\x32", [25857] = "\xca\xce", -+ [25859] = "\xcc\xa2", [25860] = "\xe8\xf9", [25861] = "\xe8\xf8", -+ [25863] = "\xe8\xf4", [25864] = "\xe8\xf5", [25866] = "\xb1\xb6", -+ [25868] = "\xd9\x33", [25870] = "\xd9\x34", [25871] = "\xe8\xf7", -+ [25873] = "\xe8\xf1", [25874] = "\xd9\x35", [25875] = "\xd9\x36", -+ [25876] = "\xd9\x37", [25877] = "\xd9\x38", [25878] = "\xc4\xd5", -+ [25879] = "\xd9\x39", [25882] = "\xd9\x3a", [25883] = "\xd9\x3b", -+ [25884] = "\xe8\xf6", [25885] = "\xb0\xfe", [25887] = "\xd9\x3c", -+ [25890] = "\xd9\x29", [25891] = "\xd9\x3d", [25892] = "\xd9\x3e", -+ [25893] = "\xc2\xa2", [25894] = "\xd9\x3f", [25901] = "\xca\xc3", -+ [25903] = "\xd9\x40", [25904] = "\xe8\xfb", [25905] = "\xe9\xa1", -+ [25907] = "\xc8\xd9", [25910] = "\xd9\x41", [25912] = "\xe8\xfe", -+ [25913] = "\xbe\xd6", [25914] = "\xbc\xc9", [25915] = "\xe9\xa3", -+ [25918] = "\xb6\xbe", [25919] = "\xd9\x42", [25920] = "\xd9\x43", -+ [25921] = "\xd9\x44", [25922] = "\xd9\x45", [25923] = "\xd9\x46", -+ [25925] = "\xe9\xa4", [25926] = "\xd9\x47", [25927] = "\xc9\xf9", -+ [25928] = "\xe8\xfd", [25929] = "\xd9\x48", [25930] = "\xe8\xd6", -+ [25932] = "\xd9\x49", [25933] = "\xd9\x4a", [25934] = "\xd9\x4b", -+ [25935] = "\xd9\x4c", [25936] = "\xd9\x4d", [25937] = "\xd9\x4e", -+ [25938] = "\xd9\x4f", [25939] = "\xe8\xfc", [25940] = "\xd9\x50", -+ [25944] = "\xcf\xcf", [25945] = "\xc6\xa2", [25946] = "\xc9\xf3", -+ [25947] = "\xd9\x51", [25949] = "\xe9\xab", [25951] = "\xd9\x52", -+ [25959] = "\xe9\xb1", [25961] = "\xd9\x53", [25962] = "\xd9\x54", -+ [25963] = "\xd9\x55", [25965] = "\xd9\x56", [25966] = "\xe9\xb2", -+ [25967] = "\xd9\x57", [25968] = "\xe9\xa5", [25969] = "\xd9\x58", -+ [25972] = "\xc7\xf6", [25973] = "\xd9\x59", [25974] = "\xd9\x5a", -+ [25975] = "\xe9\xaf", [25976] = "\xe9\xa7", [25977] = "\xd9\x5b", -+ [25978] = "\xe9\xa9", [25979] = "\xd9\x5c", [25980] = "\xd9\x5d", -+ [25983] = "\xd9\x5e", [25984] = "\xe9\xb3", [25985] = "\xe9\xa8", -+ [25987] = "\xd9\x5f", [25988] = "\xe9\xac", [25991] = "\xb1\xf2", -+ [25992] = "\xd9\x60", [25993] = "\xc6\xe5", [25995] = "\xe9\xad", -+ [25996] = "\xe9\xb0", [25997] = "\xd9\x61", [25999] = "\xd9\x62", -+ [26000] = "\xd9\x63", [26002] = "\xd9\x64", [26004] = "\xe9\xa6", -+ [26005] = "\xd9\x65", [26006] = "\xc1\xa6", [26007] = "\xd9\x66", -+ [26008] = "\xe9\xaa", [26009] = "\xbb\xa7", [26010] = "\xbf\xc5", -+ [26011] = "\xb7\xb0", [26012] = "\xcc\xf4", [26013] = "\xd9\x74", -+ [26014] = "\xcc\xf9", [26015] = "\xbd\xf2", [26016] = "\xf4\x61", -+ [26020] = "\xd9\x67", [26022] = "\xd9\x68", [26023] = "\xd9\x69", -+ [26024] = "\xd9\x6a", [26025] = "\xe9\xb7", [26026] = "\xe9\xb5", -+ [26028] = "\xd9\x6b", [26029] = "\xd9\x6c", [26030] = "\xd9\x6d", -+ [26031] = "\xd9\x6e", [26033] = "\xcf\xce", [26034] = "\xd9\x6f", -+ [26039] = "\xd9\x70", [26041] = "\xe9\xb4", [26042] = "\xd9\x71", -+ [26043] = "\xd9\x72", [26045] = "\xcd\xf5", [26046] = "\xd9\x73", -+ [26047] = "\xe9\xb6", [26048] = "\xe9\xb8", [26053] = "\xe9\xb9", -+ [26056] = "\xd9\x75", [26058] = "\xd9\x76", [26060] = "\xe9\xbc", -+ [26061] = "\xe9\xba", [26063] = "\xd9\x77", [26064] = "\xd9\x78", -+ [26068] = "\xc6\xa3", [26069] = "\xe9\xbb", [26070] = "\xd9\x79", -+ [26072] = "\xd9\x7a", [26073] = "\xc8\xcd", [26074] = "\xe9\xae", -+ [26077] = "\xd9\x7b", [26083] = "\xd9\x7c", [26086] = "\xd9\x7d", -+ [26087] = "\xbd\xf3", [26089] = "\xe9\xbd", [26090] = "\xe9\xc2", -+ [26091] = "\xc1\xf4", [26092] = "\xd9\x7e", [26094] = "\xe9\xc1", -+ [26095] = "\xda\x21", [26096] = "\xda\x22", [26098] = "\xe9\xa2", -+ [26100] = "\xda\x23", [26101] = "\xda\x24", [26102] = "\xe9\xc3", -+ [26103] = "\xc1\xc9", [26106] = "\xe9\xbe", [26107] = "\xe9\xc0", -+ [26109] = "\xda\x25", [26110] = "\xda\x26", [26112] = "\xda\x27", -+ [26113] = "\xda\x28", [26114] = "\xda\x29", [26115] = "\xe9\xbf", -+ [26118] = "\xdd\xb1", [26119] = "\xdd\xa2", [26120] = "\xda\x2a", -+ [26121] = "\xda\x2b", [26122] = "\xe9\xc5", [26123] = "\xda\x2c", -+ [26126] = "\xda\x2d", [26129] = "\xda\x2e", [26130] = "\xe9\xc4", -+ [26135] = "\xda\x2f", [26137] = "\xda\x30", [26141] = "\xcd\xf6", -+ [26143] = "\xe2\xbc", [26144] = "\xe9\xc6", [26150] = "\xda\x31", -+ [26152] = "\xda\x32", [26154] = "\xda\x33", [26156] = "\xda\x34", -+ [26157] = "\xda\x35", [26159] = "\xe9\xc7", [26160] = "\xda\x36", -+ [26161] = "\xb8\x66", [26162] = "\xda\x37", [26166] = "\xda\x38", -+ [26173] = "\xe9\xc8", [26174] = "\xb8\xd7", [26176] = "\xb5\xd4", -+ [26178] = "\xda\x39", [26179] = "\xda\x3a", [26180] = "\xe9\xca", -+ [26181] = "\xd1\xdd", [26182] = "\xda\x3b", [26183] = "\xda\x3c", -+ [26184] = "\xda\x3d", [26185] = "\xda\x3e", [26186] = "\xb5\xf5", -+ [26188] = "\xce\xba", [26189] = "\xda\x3f", [26190] = "\xb6\xf3", -+ [26191] = "\xe9\xcb", [26192] = "\xda\x40", [26193] = "\xda\x41", -+ [26194] = "\xda\x42", [26195] = "\xda\x43", [26196] = "\xda\x44", -+ [26199] = "\xe9\xcc", [26201] = "\xda\x45", [26203] = "\xc3\xee", -+ [26204] = "\xda\x46", [26207] = "\xda\x47", [26209] = "\xe9\xcd", -+ [26213] = "\xda\x48", [26214] = "\xda\x49", [26215] = "\xda\x4a", -+ [26217] = "\xc6\xfa", [26218] = "\xda\x4b", [26219] = "\xb0\xba", -+ [26232] = "\xda\x6d", [26234] = "\xb2\xe3", [26235] = "\xe9\xd2", -+ [26236] = "\xe9\xd3", [26237] = "\xda\x4c", [26241] = "\xda\x4d", -+ [26243] = "\xe9\xce", [26245] = "\xbb\xbd", [26246] = "\xda\x4e", -+ [26248] = "\xda\x4f", [26250] = "\xda\x50", [26252] = "\xda\x51", -+ [26257] = "\xda\x52", [26259] = "\xe9\xcf", [26260] = "\xc7\xc2", -+ [26262] = "\xda\x53", [26263] = "\xda\x54", [26264] = "\xda\x55", -+ [26265] = "\xe9\xd0", [26266] = "\xe9\xd1", [26267] = "\xe9\xdb", -+ [26269] = "\xda\x56", [26271] = "\xe9\xd5", [26272] = "\xe9\xd8", -+ [26273] = "\xda\x57", [26275] = "\xda\x58", [26276] = "\xda\x59", -+ [26277] = "\xda\x5a", [26278] = "\xe9\xd4", [26279] = "\xda\x5b", -+ [26280] = "\xda\x5c", [26281] = "\xda\x5d", [26287] = "\xda\x5e", -+ [26288] = "\xda\x5f", [26289] = "\xda\x60", [26291] = "\xda\x61", -+ [26292] = "\xe9\xd6", [26293] = "\xda\x62", [26294] = "\xe9\xd7", -+ [26295] = "\xbc\xd8", [26297] = "\xe9\xd9", [26299] = "\xc3\xc1", -+ [26301] = "\xb7\xd6", [26302] = "\xb3\xc2", [26305] = "\xda\x63", -+ [26306] = "\xda\x64", [26308] = "\xe9\xdc", [26309] = "\xda\x65", -+ [26311] = "\xda\x66", [26313] = "\xb3\xbf", [26314] = "\xda\x67", -+ [26315] = "\xe9\xe1", [26316] = "\xda\x68", [26318] = "\xe9\xdd", -+ [26319] = "\xe9\xe0", [26320] = "\xda\x69", [26323] = "\xda\x6a", -+ [26324] = "\xc8\xba", [26325] = "\xda\x6b", [26327] = "\xda\x6c", -+ [26329] = "\xe9\xde", [26332] = "\xe9\xdf", [26333] = "\xc9\xc8", -+ [26334] = "\xc8\xda", [26335] = "\xe9\xe2", [26344] = "\xc2\xfd", -+ [26345] = "\xe9\xec", [26346] = "\xda\x6e", [26347] = "\xe9\xe8", -+ [26348] = "\xda\x6f", [26349] = "\xda\x70", [26350] = "\xb2\xeb", -+ [26352] = "\xe9\xe6", [26354] = "\xcb\xaa", [26355] = "\xe9\xe7", -+ [26356] = "\xda\x71", [26357] = "\xda\x72", [26358] = "\xe9\xe4", -+ [26359] = "\xda\x73", [26360] = "\xe9\xe5", [26361] = "\xe9\xea", -+ [26362] = "\xe9\xed", [26363] = "\xda\x74", [26365] = "\xe9\xeb", -+ [26366] = "\xda\x75", [26367] = "\xda\x76", [26368] = "\xda\x77", -+ [26369] = "\xe9\xe9", [26370] = "\xe9\xe3", [26371] = "\xda\x78", -+ [26372] = "\xda\x79", [26376] = "\xc3\xd8", [26377] = "\xda\x7a", -+ [26378] = "\xe9\xf4", [26380] = "\xcc\xaa", [26382] = "\xda\x7b", -+ [26383] = "\xda\x7c", [26385] = "\xda\x7d", [26387] = "\xda\x7e", -+ [26389] = "\xe9\xf2", [26392] = "\xdb\x21", [26393] = "\xe9\xf3", -+ [26398] = "\xdb\x22", [26399] = "\xdb\x23", [26401] = "\xdb\x24", -+ [26402] = "\xdb\x25", [26404] = "\xe9\xee", [26407] = "\xe9\xf0", -+ [26409] = "\xdb\x26", [26410] = "\xdb\x27", [26411] = "\xe9\xf1", -+ [26412] = "\xdb\x28", [26413] = "\xdb\x29", [26414] = "\xdb\x2a", -+ [26415] = "\xe9\xef", [26416] = "\xdb\x2b", [26419] = "\xdb\x2c", -+ [26421] = "\xdb\x2d", [26425] = "\xc0\xe6", [26427] = "\xcf\xb9", -+ [26428] = "\xe9\xf8", [26429] = "\xdb\x2e", [26430] = "\xe9\xf9", -+ [26435] = "\xea\xa1", [26437] = "\xbf\xaa", [26439] = "\xe9\xfb", -+ [26440] = "\xdb\x2f", [26441] = "\xe9\xfe", [26445] = "\xdb\x30", -+ [26447] = "\xe9\xf6", [26448] = "\xe9\xf5", [26449] = "\xdb\x31", -+ [26451] = "\xea\xa2", [26452] = "\xdb\x32", [26453] = "\xdb\x33", -+ [26454] = "\xb2\xdc", [26456] = "\xe9\xfc", [26458] = "\xea\xa3", -+ [26462] = "\xe9\xfd", [26463] = "\xdb\x34", [26465] = "\xdb\x35", -+ [26466] = "\xdb\x36", [26468] = "\xe9\xfa", [26470] = "\xc4\xb3", -+ [26472] = "\xe9\xf7", [26475] = "\xdb\x37", [26479] = "\xc7\xe8", -+ [26482] = "\xea\xa7", [26483] = "\xdb\x38", [26484] = "\xdb\x39", -+ [26485] = "\xdb\x3a", [26486] = "\xdb\x3b", [26487] = "\xdb\x3c", -+ [26488] = "\xdb\x3d", [26489] = "\xdb\x3e", [26491] = "\xdb\x3f", -+ [26492] = "\xdb\x40", [26493] = "\xcd\xbb", [26496] = "\xdb\x41", -+ [26499] = "\xdb\x42", [26501] = "\xdb\x43", [26503] = "\xdb\x44", -+ [26504] = "\xdb\x45", [26505] = "\xdb\x46", [26510] = "\xdb\x47", -+ [26511] = "\xea\xa6", [26512] = "\xdb\x48", [26514] = "\xea\xa5", -+ [26515] = "\xdb\x49", [26519] = "\xdb\x4a", [26523] = "\xea\xae", -+ [26524] = "\xdb\x4b", [26525] = "\xdb\x4c", [26526] = "\xdb\x4d", -+ [26527] = "\xea\xa8", [26529] = "\xdb\x4e", [26531] = "\xea\xb0", -+ [26533] = "\xdb\x4f", [26538] = "\xcd\xe6", [26539] = "\xea\xb3", -+ [26541] = "\xea\xaa", [26542] = "\xdb\x50", [26543] = "\xdb\x51", -+ [26544] = "\xea\xab", [26545] = "\xdb\x52", [26548] = "\xea\xaf", -+ [26550] = "\xea\xb2", [26551] = "\xea\xb1", [26552] = "\xdb\x53", -+ [26553] = "\xdb\x54", [26554] = "\xdb\x55", [26555] = "\xea\xa9", -+ [26558] = "\xdb\x56", [26560] = "\xea\xac", [26562] = "\xea\xbd", -+ [26565] = "\xdb\x57", [26566] = "\xdb\x58", [26569] = "\xdb\x59", -+ [26570] = "\xdb\x5a", [26572] = "\xdb\x5b", [26575] = "\xdb\x5c", -+ [26576] = "\xea\xb6", [26578] = "\xdb\x5d", [26579] = "\xdb\x5e", -+ [26580] = "\xdb\x5f", [26586] = "\xdb\x60", [26587] = "\xdb\x61", -+ [26589] = "\xdb\x62", [26591] = "\xea\xb4", [26593] = "\xdb\x63", -+ [26594] = "\xea\xb5", [26595] = "\xdb\x64", [26598] = "\xea\xba", -+ [26599] = "\xea\xbb", [26600] = "\xdb\x65", [26601] = "\xb3\xaa", -+ [26602] = "\xdb\x66", [26603] = "\xb5\xc2", [26606] = "\xea\xb9", -+ [26607] = "\xdb\x67", [26609] = "\xdb\x68", [26611] = "\xdb\x69", -+ [26613] = "\xea\xa4", [26614] = "\xdb\x6a", [26615] = "\xf4\x64", -+ [26617] = "\xdb\x6b", [26618] = "\xdb\x6c", [26619] = "\xdb\x6d", -+ [26621] = "\xea\xb8", [26622] = "\xea\xbc", [26623] = "\xea\xb7", -+ [26624] = "\xdb\x6e", [26625] = "\xea\xbe", [26626] = "\xdb\x70", -+ [26627] = "\xdb\x71", [26628] = "\xdb\x72", [26629] = "\xea\xc0", -+ [26630] = "\xea\xbf", [26632] = "\xdb\x73", [26633] = "\xdb\x6f", -+ [26634] = "\xdb\x74", [26635] = "\xdb\x75", [26636] = "\xdb\x76", -+ [26638] = "\xdb\x77", [26639] = "\xdb\x78", [26641] = "\xea\xc2", -+ [26642] = "\xea\xc1", [26643] = "\xe9\xda", [26647] = "\xea\xc6", -+ [26648] = "\xdb\x79", [26653] = "\xdb\x7a", [26654] = "\xdb\x7b", -+ [26656] = "\xdb\x7c", [26657] = "\xea\xc3", [26658] = "\xdb\x7d", -+ [26661] = "\xdb\x7e", [26662] = "\xea\xc4", [26665] = "\xea\xc5", -+ [26666] = "\xdc\x21", [26667] = "\xea\xc7", [26668] = "\xdc\x22", -+ [26672] = "\xb7\xec", [26673] = "\xdc\x23", [26674] = "\xea\xc9", -+ [26675] = "\xdc\x24", [26676] = "\xea\xc8", [26677] = "\xdc\x25", -+ [26678] = "\xbd\xb0", [26680] = "\xdc\x26", [26681] = "\xdc\x27", -+ [26682] = "\xdc\x28", [26683] = "\xdc\x29", [26684] = "\xb9\xd4", -+ [26685] = "\xde\xa7", [26686] = "\xdc\x2a", [26689] = "\xdc\x2b", -+ [26690] = "\xea\xca", [26691] = "\xbd\xd1", [26693] = "\xdc\x2c", -+ [26694] = "\xdc\x2d", [26695] = "\xb3\xb9", [26696] = "\xdc\x2e", -+ [26697] = "\xea\xcb", [26698] = "\xdc\x2f", [26699] = "\xb1\xd2", -+ [26700] = "\xdc\x30", [26701] = "\xbe\xd7", [26702] = "\xea\xcc", -+ [26703] = "\xdc\x31", [26704] = "\xdc\x32", [26705] = "\xb9\xd5", -+ [26706] = "\xea\xcd", [26707] = "\xb0\xe1", [26708] = "\xdc\x33", -+ [26712] = "\xc9\xbd", [26713] = "\xdc\x34", [26715] = "\xea\xce", -+ [26720] = "\xbf\xea", [26721] = "\xdc\x35", [26722] = "\xea\xd5", -+ [26725] = "\xea\xd2", [26727] = "\xc3\xef", [26729] = "\xdc\x36", -+ [26731] = "\xdc\x37", [26733] = "\xea\xd3", [26734] = "\xea\xd0", -+ [26735] = "\xb6\xde", [26736] = "\xdc\x38", [26737] = "\xea\xcf", -+ [26738] = "\xea\xd6", [26744] = "\xb7\xb6", [26747] = "\xc2\xde", -+ [26749] = "\xea\xdc", [26754] = "\xea\xd8", [26758] = "\xc2\xb5", -+ [26759] = "\xea\xd7", [26760] = "\xdc\x39", [26761] = "\xea\xda", -+ [26762] = "\xdc\x3a", [26763] = "\xdc\x3b", [26764] = "\xdc\x3c", -+ [26766] = "\xea\xd1", [26767] = "\xdc\x3d", [26768] = "\xdc\x3e", -+ [26770] = "\xea\xdb", [26772] = "\xea\xdd", [26776] = "\xdc\x3f", -+ [26778] = "\xdc\x40", [26779] = "\xc8\xef", [26782] = "\xea\xd9", -+ [26784] = "\xea\xde", [26785] = "\xea\xe0", [26788] = "\xb8\xd3", -+ [26789] = "\xea\xd4", [26791] = "\xb0\xc1", [26794] = "\xdc\x41", -+ [26797] = "\xdc\x42", [26798] = "\xdc\x43", [26799] = "\xea\xdf", -+ [26800] = "\xdc\x44", [26801] = "\xba\xdb", [26802] = "\xce\xf6", -+ [26803] = "\xea\xe1", [26804] = "\xea\xe2", [26805] = "\xc1\xf5", -+ [26810] = "\xdc\x45", [26811] = "\xdc\x46", [26812] = "\xdc\x47", -+ [26813] = "\xdc\x48", [26814] = "\xdc\x49", [26815] = "\xce\xa2", -+ [26817] = "\xdc\x4a", [26818] = "\xdc\x4b", [26819] = "\xdc\x4c", -+ [26820] = "\xea\xe3", [26821] = "\xcd\xb5", [26824] = "\xea\xe4", -+ [26825] = "\xea\xe5", [26827] = "\xdc\x4d", [26828] = "\xca\xe4", -+ [26829] = "\xea\xe6", [26830] = "\xdc\x4e", [26831] = "\xba\xc0", -+ [26833] = "\xce\xa3", [26839] = "\xdc\x4f", [26840] = "\xea\xeb", -+ [26847] = "\xdc\x50", [26848] = "\xdc\x51", [26849] = "\xdc\x52", -+ [26850] = "\xea\xec", [26851] = "\xbe\xd8", [26852] = "\xea\xea", -+ [26853] = "\xdc\x53", [26855] = "\xdc\x54", [26856] = "\xcd\xe7", -+ [26857] = "\xea\xe7", [26860] = "\xea\xe9", [26861] = "\xc0\xbd", -+ [26862] = "\xbf\xfe", [26865] = "\xdc\x55", [26866] = "\xea\xe8", -+ [26868] = "\xea\xed", [26870] = "\xdc\x56", [26871] = "\xca\xa3", -+ [26874] = "\xea\xef", [26876] = "\xea\xee", [26877] = "\xdc\x57", -+ [26878] = "\xdc\x58", [26879] = "\xdc\x59", [26880] = "\xb3\xec", -+ [26882] = "\xcb\xab", [26883] = "\xea\xf0", [26885] = "\xdc\x5a", -+ [26886] = "\xdc\x5b", [26888] = "\xdc\x5c", [26889] = "\xdc\x5d", -+ [26890] = "\xdc\x5e", [26892] = "\xdc\x5f", [26893] = "\xea\xfc", -+ [26894] = "\xea\xf2", [26896] = "\xdc\x60", [26901] = "\xea\xf3", -+ [26902] = "\xdc\x61", [26903] = "\xdc\x62", [26904] = "\xdc\x63", -+ [26906] = "\xea\xf4", [26907] = "\xea\xf5", [26912] = "\xdc\x64", -+ [26913] = "\xdc\x65", [26914] = "\xdc\x66", [26917] = "\xdc\x67", -+ [26918] = "\xea\xf9", [26920] = "\xea\xfa", [26921] = "\xdc\x68", -+ [26922] = "\xdc\x69", [26923] = "\xea\xf8", [26926] = "\xdc\x6a", -+ [26928] = "\xdc\x6b", [26929] = "\xea\xf6", [26930] = "\xdc\x6c", -+ [26931] = "\xea\xf1", [26932] = "\xea\xf7", [26933] = "\xdc\x6d", -+ [26934] = "\xdc\x6e", [26937] = "\xdc\x6f", [26940] = "\xea\xfb", -+ [26941] = "\xf0\xb7", [26943] = "\xdc\x70", [26946] = "\xdc\x71", -+ [26950] = "\xb2\xa8", [26951] = "\xdc\x72", [26954] = "\xdc\x73", -+ [26955] = "\xdc\x74", [26956] = "\xdc\x75", [26958] = "\xea\xfe", -+ [26959] = "\xb6\xdf", [26960] = "\xea\xfd", [26961] = "\xdc\x76", -+ [26962] = "\xdc\x77", [26963] = "\xdc\x78", [26964] = "\xeb\xa2", -+ [26966] = "\xeb\xa1", [26970] = "\xeb\xa4", [26971] = "\xdc\x79", -+ [26973] = "\xeb\xa3", [26974] = "\xdc\x7a", [26975] = "\xeb\xa5", -+ [26976] = "\xdc\x7b", [26978] = "\xbd\xb1", [26979] = "\xdc\x7c", -+ [26980] = "\xeb\xa6", [26981] = "\xdc\x7d", [26983] = "\xeb\xa7", -+ [26986] = "\xdc\x7e", [26987] = "\xdd\x21", [26988] = "\xdd\x22", -+ [26989] = "\xdd\x23", [26990] = "\xeb\xa8", [26991] = "\xc0\xbe", -+ [26993] = "\xcd\xd7", [26995] = "\xeb\xa9", [26998] = "\xca\xa4", -+ [26999] = "\xc7\xc6", [27000] = "\xeb\xaa", [27001] = "\xdd\x24", -+ [27002] = "\xeb\xab", [27003] = "\xb8\xab", [27005] = "\xdd\x25", -+ [27007] = "\xb5\xac", [27008] = "\xdd\x26", [27011] = "\xeb\xac", -+ [27012] = "\xdd\x27", [27013] = "\xdd\x28", [27014] = "\xbb\xeb", -+ [27015] = "\xc7\xc1", [27016] = "\xeb\xad", [27018] = "\xb3\xd0", -+ [27019] = "\xdd\x29", [27020] = "\xdd\x2a", [27023] = "\xdd\x2b", -+ [27024] = "\xdd\x2c", [27025] = "\xeb\xae", [27029] = "\xdd\x2d", -+ [27030] = "\xeb\xb0", [27031] = "\xcd\xf7", [27033] = "\xeb\xaf", -+ [27034] = "\xbf\xc6", [27036] = "\xeb\xb1", [27039] = "\xeb\xb2", -+ [27040] = "\xdd\x2e", [27042] = "\xeb\xb3", [27043] = "\xb4\xd1", -+ [27044] = "\xdd\x2f", [27045] = "\xdd\x30", [27046] = "\xdd\x31", -+ [27047] = "\xdd\x32", [27050] = "\xeb\xb4", [27052] = "\xdd\x33", -+ [27053] = "\xeb\xb5", [27055] = "\xeb\xb6", [27056] = "\xeb\xb7", -+ [27074] = "\xb3\xd1", [27076] = "\xdd\x34", [27077] = "\xdd\x35", -+ [27078] = "\xdd\x36", [27079] = "\xdd\x37", [27080] = "\xdd\x38", -+ [27082] = "\xeb\xb8", [27084] = "\xeb\xb9", [27085] = "\xeb\xba", -+ [27091] = "\xb2\xf2", [27093] = "\xdd\x39", [27094] = "\xbf\xa8", -+ [27095] = "\xeb\xbb", [27097] = "\xdd\x3a", [27099] = "\xdd\x3b", -+ [27101] = "\xdd\x3c", [27105] = "\xdd\x3d", [27107] = "\xdd\x3e", -+ [27108] = "\xeb\xbc", [27110] = "\xdd\x3f", [27112] = "\xeb\xbd", -+ [27113] = "\xdd\x40", [27117] = "\xdd\x41", [27119] = "\xdd\x42", -+ [27120] = "\xb8\xc0", [27122] = "\xc4\xfb", [27123] = "\xeb\xbe", -+ [27124] = "\xdd\x43", [27125] = "\xdd\x44", [27127] = "\xdd\x45", -+ [27128] = "\xb7\xd7", [27130] = "\xbf\xd6", [27132] = "\xeb\xc1", -+ [27134] = "\xc6\xa4", [27135] = "\xdd\x46", [27136] = "\xeb\xc0", -+ [27137] = "\xdd\x47", [27138] = "\xdd\x48", [27139] = "\xb7\xb1", -+ [27140] = "\xdd\x49", [27141] = "\xdd\x4a", [27142] = "\xeb\xbf", -+ [27143] = "\xc2\xf7", [27144] = "\xb5\xad", [27147] = "\xeb\xc2", -+ [27149] = "\xeb\xc3", [27150] = "\xdd\x4b", [27151] = "\xbe\xd9", -+ [27152] = "\xdd\x4c", [27154] = "\xdd\x4d", [27155] = "\xb7\xed", -+ [27156] = "\xdd\x4e", [27157] = "\xeb\xc4", [27158] = "\xdd\x4f", -+ [27162] = "\xcb\xac", [27163] = "\xdd\x50", [27164] = "\xdd\x51", -+ [27165] = "\xc0\xdf", [27167] = "\xdd\x52", [27169] = "\xb5\xf6", -+ [27171] = "\xcc\xf5", [27172] = "\xc1\xca", [27173] = "\xdd\x53", -+ [27174] = "\xeb\xc5", [27175] = "\xdd\x54", [27178] = "\xbf\xc7", -+ [27179] = "\xc3\xf0", [27180] = "\xbe\xda", [27181] = "\xdd\x55", -+ [27182] = "\xdd\x56", [27184] = "\xdd\x57", [27185] = "\xeb\xc6", -+ [27187] = "\xdd\x58", [27189] = "\xdd\x59", [27190] = "\xeb\xc9", -+ [27191] = "\xdd\x5a", [27192] = "\xeb\xca", [27193] = "\xdd\x5b", -+ [27197] = "\xdd\x5c", [27198] = "\xdd\x5d", [27200] = "\xba\xbe", -+ [27201] = "\xc2\xc2", [27202] = "\xeb\xc8", [27203] = "\xdd\x5e", -+ [27204] = "\xbe\xdb", [27205] = "\xc9\xbe", [27206] = "\xdd\x5f", -+ [27207] = "\xdd\x60", [27208] = "\xdd\x61", [27211] = "\xeb\xc7", -+ [27212] = "\xdd\x62", [27213] = "\xdd\x63", [27214] = "\xbb\xec", -+ [27216] = "\xb1\xd3", [27217] = "\xdd\x64", [27218] = "\xeb\xce", -+ [27219] = "\xb7\xd8", [27221] = "\xdd\x65", [27222] = "\xbb\xee", -+ [27223] = "\xdd\x66", [27225] = "\xbb\xed", [27227] = "\xcf\xcd", -+ [27228] = "\xeb\xcd", [27229] = "\xeb\xcc", [27230] = "\xc1\xa7", -+ [27232] = "\xb5\xcd", [27233] = "\xcf\xc3", [27234] = "\xb3\xba", -+ [27235] = "\xbe\xdc", [27237] = "\xdd\x67", [27238] = "\xdd\x68", -+ [27239] = "\xdd\x69", [27241] = "\xdd\x6a", [27242] = "\xdd\x6b", -+ [27243] = "\xdd\x6c", [27244] = "\xeb\xcb", [27246] = "\xdd\x6d", -+ [27247] = "\xdd\x6e", [27248] = "\xdd\x6f", [27250] = "\xeb\xd0", -+ [27251] = "\xdd\x70", [27252] = "\xeb\xd1", [27253] = "\xeb\xcf", -+ [27254] = "\xdd\x71", [27255] = "\xb8\xd8", [27257] = "\xcd\xc0", -+ [27259] = "\xdd\x72", [27260] = "\xbb\xef", [27261] = "\xc7\xa7", -+ [27263] = "\xdd\x73", [27264] = "\xdd\x74", [27265] = "\xeb\xd4", -+ [27266] = "\xdd\x75", [27267] = "\xc0\xc0", [27269] = "\xc3\xc2", -+ [27270] = "\xdd\x76", [27271] = "\xdd\x77", [27272] = "\xcd\xb6", -+ [27273] = "\xdd\x78", [27274] = "\xeb\xd7", [27278] = "\xb8\xec", -+ [27279] = "\xdd\x79", [27280] = "\xc0\xbf", [27281] = "\xeb\xd3", -+ [27283] = "\xeb\xd8", [27284] = "\xb8\xed", [27285] = "\xeb\xd5", -+ [27286] = "\xeb\xd6", [27287] = "\xdd\x7a", [27288] = "\xeb\xd2", -+ [27289] = "\xdd\x7b", [27292] = "\xc0\xe2", [27293] = "\xc6\xc9", -+ [27294] = "\xdd\x7c", [27295] = "\xdd\x7d", [27296] = "\xc3\xaf", -+ [27298] = "\xb2\xdd", [27299] = "\xdd\x7e", [27302] = "\xde\x21", -+ [27303] = "\xde\x22", [27305] = "\xc8\xf0", [27307] = "\xde\x23", -+ [27308] = "\xb5\xc3", [27310] = "\xde\x24", [27311] = "\xc4\xb4", -+ [27314] = "\xeb\xdb", [27315] = "\xde\x25", [27316] = "\xeb\xd9", -+ [27318] = "\xde\x26", [27319] = "\xc3\xcc", [27320] = "\xde\x27", -+ [27321] = "\xde\x28", [27322] = "\xde\x29", [27323] = "\xc0\xc1", -+ [27324] = "\xb4\xd2", [27325] = "\xeb\xda", [27327] = "\xbf\xdb", -+ [27329] = "\xde\x2a", [27330] = "\xce\xca", [27331] = "\xde\x2b", -+ [27332] = "\xde\x2c", [27333] = "\xde\x2d", [27334] = "\xcf\xc0", -+ [27335] = "\xde\x2e", [27338] = "\xeb\xdc", [27339] = "\xeb\xe7", -+ [27340] = "\xc4\xb5", [27341] = "\xde\x2f", [27342] = "\xeb\xe6", -+ [27343] = "\xde\x30", [27344] = "\xeb\xe3", [27345] = "\xeb\xeb", -+ [27346] = "\xeb\xe4", [27348] = "\xeb\xe0", [27350] = "\xc4\xfc", -+ [27351] = "\xeb\xdf", [27355] = "\xeb\xdd", [27356] = "\xde\x31", -+ [27357] = "\xcd\xa1", [27358] = "\xbb\xf0", [27360] = "\xde\x32", -+ [27361] = "\xeb\xe1", [27363] = "\xeb\xde", [27364] = "\xde\x33", -+ [27365] = "\xde\x34", [27366] = "\xde\x35", [27367] = "\xeb\xe5", -+ [27368] = "\xbd\xf4", [27370] = "\xb8\xc1", [27372] = "\xde\x36", -+ [27374] = "\xc2\xfa", [27375] = "\xde\x37", [27376] = "\xcb\xc5", -+ [27377] = "\xb1\xda", [27378] = "\xb0\xe2", [27380] = "\xc6\xa5", -+ [27381] = "\xde\x38", [27382] = "\xde\x39", [27383] = "\xeb\xe9", -+ [27386] = "\xde\x3f", [27387] = "\xde\x3a", [27388] = "\xeb\xe8", -+ [27390] = "\xc6\xe6", [27392] = "\xeb\xed", [27393] = "\xde\x3b", -+ [27396] = "\xeb\xe2", [27398] = "\xeb\xec", [27399] = "\xeb\xee", -+ [27401] = "\xb8\xac", [27402] = "\xeb\xea", [27403] = "\xb9\xd6", -+ [27404] = "\xde\x3c", [27405] = "\xbc\xd5", [27406] = "\xde\x3d", -+ [27407] = "\xde\x3e", [27408] = "\xeb\xef", [27409] = "\xcd\xd8", -+ [27414] = "\xeb\xf2", [27416] = "\xeb\xf5", [27419] = "\xeb\xf3", -+ [27420] = "\xc9\xb5", [27421] = "\xde\x40", [27424] = "\xde\x41", -+ [27427] = "\xeb\xf0", [27431] = "\xde\x42", [27433] = "\xb6\xe0", -+ [27436] = "\xde\x43", [27438] = "\xeb\xf4", [27441] = "\xeb\xf6", -+ [27442] = "\xde\x44", [27443] = "\xde\x45", [27444] = "\xde\x46", -+ [27445] = "\xde\x47", [27446] = "\xde\x48", [27448] = "\xde\x49", -+ [27449] = "\xeb\xfa", [27452] = "\xeb\xf7", [27453] = "\xde\x4e", -+ [27454] = "\xeb\xf9", [27455] = "\xeb\xf8", [27458] = "\xde\x4a", -+ [27459] = "\xde\x4b", [27460] = "\xde\x4c", [27462] = "\xeb\xfb", -+ [27464] = "\xbc\xb1", [27465] = "\xde\x4d", [27466] = "\xeb\xfd", -+ [27467] = "\xeb\xfc", [27468] = "\xc9\xe8", [27470] = "\xde\x4f", -+ [27471] = "\xec\xa1", [27475] = "\xde\x50", [27478] = "\xb7\xd9", -+ [27483] = "\xeb\xfe", [27484] = "\xec\xa2", [27485] = "\xde\x51", -+ [27487] = "\xec\xa3", [27488] = "\xb5\xc4", [27489] = "\xe6\xc1", -+ [27490] = "\xbe\xf9", [27492] = "\xec\xa4", [27494] = "\xde\x52", -+ [27495] = "\xb8\xee", [27496] = "\xde\x53", [27497] = "\xde\x54", -+ [27500] = "\xde\x55", [27501] = "\xec\xa5", [27502] = "\xde\x56", -+ [27503] = "\xf4\x66", [27504] = "\xec\xa6", [27505] = "\xde\x57", -+ [27507] = "\xbb\xbe", [27508] = "\xde\x58", [27509] = "\xde\x59", -+ [27514] = "\xda\xce", [27515] = "\xde\x5a", [27516] = "\xec\xa7", -+ [27517] = "\xde\x5b", [27518] = "\xec\xa8", [27519] = "\xde\x5c", -+ [27520] = "\xbd\xb2", [27522] = "\xec\xa9", [27523] = "\xec\xaa", -+ [27524] = "\xde\x5d", [27525] = "\xde\x5e", [27526] = "\xec\xab", -+ [27529] = "\xec\xac", [27530] = "\xec\xad", [27532] = "\xde\x5f", -+ [27534] = "\xde\x60", [27535] = "\xde\x61", [27687] = "\xc3\xab", -+ [27688] = "\xde\x62", [27689] = "\xde\x63", [27690] = "\xec\xae", -+ [27693] = "\xde\x64", [27694] = "\xde\x65", [27695] = "\xec\xb0", -+ [27697] = "\xec\xaf", [27701] = "\xde\x66", [27702] = "\xc6\xa6", -+ [27703] = "\xde\x67", [27704] = "\xec\xb1", [27705] = "\xde\x68", -+ [27706] = "\xcb\xad", [27707] = "\xde\x69", [27708] = "\xec\xb2", -+ [27710] = "\xec\xb3", [27711] = "\xde\x6a", [27712] = "\xec\xb4", -+ [27713] = "\xde\x6b", [27715] = "\xde\x6c", [27716] = "\xde\x6d", -+ [27717] = "\xec\xb5", [27719] = "\xde\x6e", [27720] = "\xde\x6f", -+ [27721] = "\xde\x72", [27722] = "\xc6\xda", [27723] = "\xde\x70", -+ [27725] = "\xde\x71", [27729] = "\xbe\xdd", [27730] = "\xec\xb6", -+ [27731] = "\xde\x73", [27732] = "\xde\x74", [27734] = "\xde\x75", -+ [27736] = "\xde\x76", [27737] = "\xde\x77", [27738] = "\xb9\xeb", -+ [27739] = "\xd0\xae", [27740] = "\xec\xb7", [27741] = "\xde\x78", -+ [27747] = "\xde\x79", [27749] = "\xde\x7a", [27750] = "\xde\x7b", -+ [27752] = "\xec\xb8", [27753] = "\xc9\xbf", [27754] = "\xec\xb9", -+ [27755] = "\xde\x7c", [27756] = "\xec\xc1", [27758] = "\xde\x7d", -+ [27762] = "\xec\xba", [27765] = "\xec\xbc", [27766] = "\xde\x7e", -+ [27767] = "\xdf\x21", [27769] = "\xec\xbb", [27770] = "\xec\xbd", -+ [27771] = "\xdf\x22", [27772] = "\xcb\xc6", [27773] = "\xec\xbe", -+ [27774] = "\xec\xbf", [27776] = "\xdf\x23", [27778] = "\xdf\x24", -+ [27779] = "\xdf\x25", [27780] = "\xec\xc0", [27784] = "\xec\xc2", -+ [27785] = "\xdf\x26", [27787] = "\xdf\x27", [27788] = "\xdf\x28", -+ [27789] = "\xb3\xad", [27790] = "\xc4\xe7", [27792] = "\xc9\xe9", -+ [27793] = "\xba\xe2", [27794] = "\xb9\xd7", [27796] = "\xdf\x29", -+ [27799] = "\xc9\xcf", [27800] = "\xb2\xdf", [27801] = "\xc8\xce", -+ [27802] = "\xec\xc5", [27803] = "\xb4\xd3", [27804] = "\xc0\xd5", -+ [27805] = "\xec\xc4", [27806] = "\xec\xc9", [27807] = "\xc3\xf9", -+ [27808] = "\xcc\xe3", [27810] = "\xec\xc7", [27811] = "\xec\xc8", -+ [27812] = "\xb5\xae", [27814] = "\xec\xca", [27815] = "\xc7\xe3", -+ [27816] = "\xc2\xdf", [27817] = "\xdf\x2a", [27818] = "\xdf\x2b", -+ [27819] = "\xc8\xf1", [27820] = "\xc5\xbd", [27821] = "\xec\xc6", -+ [27823] = "\xcb\xc7", [27824] = "\xb2\xec", [27825] = "\xec\xcc", -+ [27826] = "\xcf\xa8", [27827] = "\xc4\xc2", [27828] = "\xcf\xc5", -+ [27829] = "\xdf\x2c", [27830] = "\xdf\x2d", [27831] = "\xbb\xf1", -+ [27832] = "\xec\xcb", [27833] = "\xdf\x2e", [27834] = "\xc2\xb1", -+ [27835] = "\xdf\x2f", [27837] = "\xec\xdc", [27838] = "\xc1\xa8", -+ [27839] = "\xdf\x30", [27841] = "\xc6\xf8", [27843] = "\xc9\xd0", -+ [27845] = "\xdf\x32", [27846] = "\xdf\x31", [27849] = "\xdf\x33", -+ [27850] = "\xec\xcf", [27851] = "\xbb\xbf", [27852] = "\xbb\xf2", -+ [27853] = "\xdf\x34", [27854] = "\xbe\xde", [27856] = "\xc7\xe5", -+ [27857] = "\xdf\x35", [27858] = "\xb8\xad", [27859] = "\xec\xce", -+ [27860] = "\xec\xcd", [27862] = "\xc9\xea", [27864] = "\xdf\x36", -+ [27866] = "\xbc\xc1", [27868] = "\xdf\x37", [27869] = "\xc5\xd2", -+ [27871] = "\xdf\x38", [27872] = "\xdf\x39", [27874] = "\xdf\x3a", -+ [27876] = "\xf4\x67", [27877] = "\xdf\x3b", [27879] = "\xdf\x3c", -+ [27880] = "\xdf\x3d", [27882] = "\xec\xd1", [27883] = "\xec\xd2", -+ [27884] = "\xb9\xd8", [27885] = "\xec\xd0", [27886] = "\xdf\x3e", -+ [27887] = "\xdf\x3f", [27889] = "\xdf\x40", [27891] = "\xdf\x41", -+ [27892] = "\xec\xd3", [27893] = "\xec\xd4", [27895] = "\xec\xd6", -+ [27896] = "\xc2\xa3", [27897] = "\xdf\x42", [27898] = "\xec\xd5", -+ [27899] = "\xb4\xe6", [27901] = "\xec\xd8", [27903] = "\xec\xd7", -+ [27904] = "\xec\xd9", [27906] = "\xdf\x43", [27907] = "\xec\xdb", -+ [27908] = "\xec\xdd", [27910] = "\xec\xde", [27911] = "\xdf\x44", -+ [27915] = "\xdf\x45", [27988] = "\xc0\xd6", [27989] = "\xdf\x46", -+ [27990] = "\xbc\xcf", [27991] = "\xec\xdf", [27993] = "\xdf\x47", -+ [27995] = "\xb3\xd2", [27996] = "\xdf\x48", [27997] = "\xec\xe0", -+ [27998] = "\xdf\x49", [28000] = "\xc1\xf6", [28001] = "\xec\xe1", -+ [28003] = "\xec\xe2", [28004] = "\xc9\xeb", [28006] = "\xf4\x68", -+ [28007] = "\xb5\xaf", [28015] = "\xdf\x4a", [28017] = "\xec\xe3", -+ [28018] = "\xdf\x4b", [28020] = "\xdf\x4c", [28021] = "\xc4\xb6", -+ [28024] = "\xdf\x4d", [28026] = "\xb1\xdb", [28029] = "\xdf\x4e", -+ [28032] = "\xdf\x4f", [28033] = "\xdf\x50", [28037] = "\xdf\x51", -+ [28041] = "\xec\xe4", [28046] = "\xdf\x52", [28047] = "\xdf\x53", -+ [28048] = "\xdf\x54", [28051] = "\xbc\xf1", [28054] = "\xdf\x55", -+ [28056] = "\xbf\xf6", [28059] = "\xdf\x56", [28060] = "\xdf\x57", -+ [28063] = "\xdf\x58", [28066] = "\xdf\x59", [28067] = "\xc2\xad", -+ [28069] = "\xdf\x5a", [28071] = "\xdf\x5b", [28073] = "\xdf\x5c", -+ [28074] = "\xec\xe7", [28075] = "\xdf\x5d", [28076] = "\xdf\x6f", -+ [28078] = "\xec\xe6", [28080] = "\xdf\x5e", [28082] = "\xec\xe5", -+ [28085] = "\xdf\x5f", [28086] = "\xdf\x60", [28087] = "\xdf\x61", -+ [28088] = "\xdf\x62", [28090] = "\xdf\x63", [28091] = "\xec\xed", -+ [28092] = "\xec\xeb", [28094] = "\xdf\x64", [28095] = "\xec\xe8", -+ [28097] = "\xdf\x65", [28100] = "\xdf\x66", [28101] = "\xdf\x67", -+ [28102] = "\xec\xea", [28103] = "\xdf\x68", [28105] = "\xdf\x69", -+ [28106] = "\xec\xe9", [28107] = "\xec\xec", [28109] = "\xb5\xf7", -+ [28111] = "\xec\xf0", [28113] = "\xc0\xd7", [28115] = "\xec\xf1", -+ [28116] = "\xdf\x6a", [28117] = "\xdf\x6b", [28119] = "\xdf\x6c", -+ [28120] = "\xb8\xd9", [28122] = "\xec\xee", [28123] = "\xec\xef", -+ [28124] = "\xdf\x6d", [28127] = "\xcf\xa9", [28128] = "\xdf\x6e", -+ [28129] = "\xdf\x70", [28130] = "\xdf\x71", [28131] = "\xc4\xb7", -+ [28132] = "\xdf\x72", [28133] = "\xc1\xa9", [28140] = "\xec\xf2", -+ [28141] = "\xdf\x73", [28143] = "\xec\xf5", [28145] = "\xdf\x74", -+ [28148] = "\xdf\x75", [28149] = "\xdf\x76", [28150] = "\xdf\x77", -+ [28152] = "\xec\xf3", [28153] = "\xec\xf4", [28154] = "\xcd\xd9", -+ [28155] = "\xdf\x78", [28159] = "\xc6\xa7", [28160] = "\xec\xf8", -+ [28161] = "\xdf\x79", [28164] = "\xdf\x7a", [28166] = "\xdf\x7b", -+ [28173] = "\xec\xf6", [28174] = "\xec\xf7", [28175] = "\xec\xf9", -+ [28176] = "\xdf\x7c", [28177] = "\xdf\x7d", [28178] = "\xdf\x7e", -+ [28179] = "\xe0\x21", [28182] = "\xe0\x22", [28183] = "\xe0\x23", -+ [28186] = "\xed\xa9", [28192] = "\xec\xfc", [28193] = "\xe0\x24", -+ [28195] = "\xe0\x25", [28196] = "\xec\xfd", [28197] = "\xec\xfb", -+ [28198] = "\xe0\x26", [28199] = "\xe0\x27", [28200] = "\xe0\x28", -+ [28201] = "\xe0\x29", [28205] = "\xe0\x2a", [28208] = "\xe0\x2b", -+ [28209] = "\xe0\x2c", [28210] = "\xec\xfa", [28212] = "\xc4\xfd", -+ [28215] = "\xed\xa1", [28216] = "\xed\xa5", [28217] = "\xed\xa2", -+ [28218] = "\xec\xfe", [28219] = "\xe0\x2d", [28220] = "\xed\xa3", -+ [28221] = "\xe0\x2e", [28222] = "\xe0\x2f", [28223] = "\xe0\x30", -+ [28224] = "\xed\xa4", [28228] = "\xe0\x31", [28229] = "\xed\xab", -+ [28233] = "\xed\xa6", [28235] = "\xe0\x32", [28236] = "\xe0\x33", -+ [28237] = "\xe0\x34", [28238] = "\xe0\x35", [28239] = "\xc0\xd8", -+ [28240] = "\xed\xa8", [28241] = "\xe0\x36", [28242] = "\xe0\x37", -+ [28243] = "\xed\xaa", [28244] = "\xed\xa7", [28249] = "\xe0\x38", -+ [28252] = "\xe0\x39", [28253] = "\xe0\x3a", [28255] = "\xe0\x3b", -+ [28256] = "\xe0\x3c", [28257] = "\xe0\x3d", [28258] = "\xed\xad", -+ [28260] = "\xbd\xb3", [28262] = "\xed\xac", [28265] = "\xe0\x3e", -+ [28266] = "\xe0\x3f", [28267] = "\xe0\x40", [28268] = "\xed\xae", -+ [28273] = "\xed\xaf", [28274] = "\xe0\x41", [28275] = "\xe0\x42", -+ [28276] = "\xed\xb2", [28277] = "\xed\xb1", [28279] = "\xed\xb0", -+ [28281] = "\xe0\x43", [28282] = "\xed\xb4", [28283] = "\xed\xb3", -+ [28285] = "\xcc\xf6", [28288] = "\xe0\x44", [28289] = "\xed\xb6", -+ [28290] = "\xe0\x45", [28291] = "\xed\xb5", [28292] = "\xed\xb7", -+ [28293] = "\xe0\x46", [28297] = "\xed\xb8", [28298] = "\xe0\x47", -+ [28299] = "\xe0\x48", [28301] = "\xe0\x49", [28302] = "\xe0\x4a", -+ [28305] = "\xed\xba", [28306] = "\xe0\x4b", [28311] = "\xe0\x4c", -+ [28313] = "\xe0\x4d", [28314] = "\xed\xb9", [28315] = "\xbf\xc8", -+ [28316] = "\xed\xbb", [28317] = "\xe0\x4e", [28318] = "\xe0\x4f", -+ [28319] = "\xb6\xed", [28320] = "\xed\xbc", [28321] = "\xed\xbe", -+ [28323] = "\xe0\x50", [28325] = "\xe0\x51", [28330] = "\xe0\x52", -+ [28331] = "\xe0\x53", [28334] = "\xed\xbf", [28336] = "\xe0\x54", -+ [28337] = "\xe0\x55", [28339] = "\xe0\x56", [28340] = "\xe0\x57", -+ [28341] = "\xed\xc0", [28342] = "\xed\xbd", [28343] = "\xe0\x58", -+ [28344] = "\xed\xc1", [28346] = "\xbc\xd6", [28347] = "\xed\xc2", -+ [28348] = "\xb5\xb0", [28349] = "\xb7\xb3", [28351] = "\xe0\x59", -+ [28353] = "\xe0\x5a", [28354] = "\xb8\xae", [28356] = "\xe0\x5b", -+ [28363] = "\xed\xc3", [28364] = "\xe0\x5c", [28367] = "\xc6\xf0", -+ [28370] = "\xc5\xbe", [28371] = "\xed\xc4", [28376] = "\xe0\x5d", -+ [28379] = "\xed\xc7", [28381] = "\xe0\x64", [28382] = "\xe0\x5e", -+ [28384] = "\xe0\x5f", [28385] = "\xe0\x60", [28391] = "\xe0\x61", -+ [28392] = "\xbc\xb4", [28393] = "\xe0\x62", [28394] = "\xe0\x63", -+ [28395] = "\xed\xc6", [28396] = "\xed\xc5", [28397] = "\xb7\xda", -+ [28398] = "\xed\xc8", [28400] = "\xe0\x65", [28402] = "\xe0\x66", -+ [28403] = "\xb3\xd3", [28405] = "\xed\xca", [28407] = "\xe0\x67", -+ [28408] = "\xe0\x68", [28409] = "\xba\xdc", [28410] = "\xed\xc9", -+ [28412] = "\xed\xd2", [28415] = "\xe0\x69", [28416] = "\xe0\x6a", -+ [28418] = "\xed\xcc", [28419] = "\xed\xce", [28420] = "\xca\xe5", -+ [28421] = "\xed\xcb", [28422] = "\xe0\x6b", [28423] = "\xe0\x6c", -+ [28424] = "\xe0\x6d", [28425] = "\xed\xcd", [28427] = "\xed\xd1", -+ [28428] = "\xed\xcf", [28429] = "\xb5\xb1", [28430] = "\xe0\x6e", -+ [28431] = "\xed\xd0", [28432] = "\xe0\x6f", [28433] = "\xe0\x70", -+ [28435] = "\xe0\x71", [28437] = "\xe0\x72", [28438] = "\xed\xd3", -+ [28439] = "\xe0\x73", [28440] = "\xe0\x74", [28441] = "\xc7\xda", -+ [28442] = "\xce\xd8", [28444] = "\xe0\x75", [28445] = "\xe0\x76", -+ [28446] = "\xe0\x77", [28447] = "\xbd\xb4", [28451] = "\xed\xd4", -+ [28452] = "\xe0\x78", [28453] = "\xe0\x79", [28454] = "\xe0\x7a", -+ [28455] = "\xe0\x7b", [28456] = "\xcd\xa2", [28457] = "\xed\xd6", -+ [28458] = "\xe0\x7c", [28459] = "\xed\xd5", [28462] = "\xed\xd9", -+ [28463] = "\xcd\xc1", [28464] = "\xe0\x7d", [28465] = "\xe0\x7e", -+ [28466] = "\xed\xd8", [28467] = "\xe1\x21", [28468] = "\xb3\xed", -+ [28469] = "\xed\xd7", [28470] = "\xed\xdc", [28471] = "\xe1\x22", -+ [28473] = "\xed\xdb", [28476] = "\xed\xda", [28477] = "\xc5\xb2", -+ [28478] = "\xed\xdd", [28479] = "\xe1\x23", [28481] = "\xe1\x24", -+ [28482] = "\xe1\x25", [28483] = "\xe1\x26", [28484] = "\xe1\x27", -+ [28485] = "\xe1\x28", [28487] = "\xed\xde", [28488] = "\xe1\x29", -+ [28492] = "\xed\xdf", [28493] = "\xe1\x2a", [28494] = "\xe1\x2b", -+ [28495] = "\xb9\xec", [28497] = "\xb7\xa5", [28498] = "\xed\xe0", -+ [28499] = "\xed\xe1", [28500] = "\xed\xe2", [28501] = "\xe1\x2c", -+ [28555] = "\xbf\xc9", [28556] = "\xed\xe3", [28557] = "\xe1\x2d", -+ [28558] = "\xbc\xad", [28559] = "\xed\xe4", [28560] = "\xe1\x2e", -+ [28561] = "\xe1\x2f", [28563] = "\xed\xe5", [28564] = "\xe1\x30", -+ [28565] = "\xe1\x31", [28566] = "\xe1\x32", [28567] = "\xd2\xa1", -+ [28568] = "\xd1\xfe", [28573] = "\xed\xe6", [28574] = "\xe5\xf0", -+ [28575] = "\xed\xe7", [28576] = "\xc3\xa4", [28577] = "\xbf\xab", -+ [28578] = "\xc7\xc0", [28581] = "\xe1\x33", [28582] = "\xe1\x34", -+ [28583] = "\xed\xe8", [28584] = "\xe1\x35", [28586] = "\xca\xd5", -+ [28587] = "\xc4\xd4", [28588] = "\xb9\xfe", [28590] = "\xe1\x36", -+ [28591] = "\xc3\xa9", [28592] = "\xe1\x37", [28593] = "\xe1\x38", -+ [28594] = "\xb1\xaa", [28596] = "\xcb\xf8", [28597] = "\xbf\xd7", -+ [28598] = "\xe1\x39", [28602] = "\xe1\x3a", [28603] = "\xe1\x3b", -+ [28605] = "\xe1\x3c", [28606] = "\xb7\xde", [28608] = "\xe1\x3d", -+ [28609] = "\xb6\xe1", [28610] = "\xe1\x3e", [28611] = "\xe1\x3f", -+ [28612] = "\xca\xd6", [28613] = "\xe1\x40", [28618] = "\xed\xe9", -+ [28624] = "\xe1\x41", [28626] = "\xed\xeb", [28627] = "\xe1\x42", -+ [28628] = "\xe1\x43", [28629] = "\xed\xea", [28630] = "\xb2\xe0", -+ [28632] = "\xe1\x44", [28633] = "\xc6\xf6", [28634] = "\xed\xec", -+ [28635] = "\xc7\xf7", [28637] = "\xc5\xb3", [28638] = "\xe1\x45", -+ [28639] = "\xed\xed", [28640] = "\xbd\xd2", [28641] = "\xe1\x46", -+ [28644] = "\xed\xef", [28645] = "\xe1\x47", [28646] = "\xe1\x48", -+ [28647] = "\xcc\xc2", [28648] = "\xed\xfe", [28649] = "\xed\xf1", -+ [28650] = "\xed\xf2", [28651] = "\xe1\x49", [28653] = "\xc4\xc9", -+ [28654] = "\xe1\x4a", [28656] = "\xc2\xe0", [28657] = "\xc1\xf7", -+ [28658] = "\xe1\x4b", [28659] = "\xc6\xa8", [28660] = "\xe1\x4c", -+ [28661] = "\xed\xf0", [28662] = "\xb5\xd5", [28664] = "\xe1\x4d", -+ [28667] = "\xed\xf9", [28668] = "\xe1\x4e", [28669] = "\xed\xf6", -+ [28670] = "\xee\xa5", [28671] = "\xc6\xa9", [28672] = "\xc3\xe0", -+ [28673] = "\xed\xf3", [28675] = "\xc4\xfe", [28676] = "\xc5\xd3", -+ [28677] = "\xed\xf4", [28678] = "\xed\xf8", [28679] = "\xbf\xe0", -+ [28680] = "\xe1\x4f", [28681] = "\xc7\xe7", [28682] = "\xc4\xcc", -+ [28683] = "\xe1\x50", [28685] = "\xc0\xc2", [28686] = "\xed\xf7", -+ [28687] = "\xc2\xae", [28688] = "\xc2\xa4", [28689] = "\xed\xf5", -+ [28690] = "\xb0\xa9", [28691] = "\xcf\xa2", [28695] = "\xed\xfa", -+ [28696] = "\xe1\x51", [28697] = "\xe1\x52", [28698] = "\xe1\x54", -+ [28700] = "\xe1\x55", [28701] = "\xe1\x56", [28702] = "\xc2\xe1", -+ [28703] = "\xe1\x53", [28705] = "\xbd\xb5", [28706] = "\xbf\xca", -+ [28707] = "\xe1\x57", [28708] = "\xe1\x58", [28709] = "\xed\xfc", -+ [28710] = "\xed\xfb", [28711] = "\xe1\x59", [28712] = "\xb0\xef", -+ [28713] = "\xed\xfd", [28716] = "\xc9\xaf", [28718] = "\xee\xa7", -+ [28719] = "\xe1\x5a", [28721] = "\xc6\xdb", [28722] = "\xbf\xeb", -+ [28723] = "\xe1\x5b", [28724] = "\xe1\x5c", [28725] = "\xc3\xd9", -+ [28727] = "\xb6\xf8", [28729] = "\xee\xa6", [28730] = "\xcd\xb7", -+ [28731] = "\xb1\xbf", [28732] = "\xe1\x5d", [28733] = "\xca\xd7", -+ [28734] = "\xb2\xe1", [28735] = "\xee\xa1", [28736] = "\xee\xa2", -+ [28737] = "\xee\xa3", [28738] = "\xee\xa4", [28739] = "\xc6\xbb", -+ [28740] = "\xc3\xa3", [28741] = "\xb0\xe3", [28742] = "\xee\xa8", -+ [28744] = "\xee\xa9", [28745] = "\xf4\xa3", [28747] = "\xe1\x5e", -+ [28748] = "\xc2\xbd", [28749] = "\xe1\x5f", [28750] = "\xee\xaa", -+ [28752] = "\xb1\xf3", [28753] = "\xc1\xcc", [28754] = "\xe1\x60", -+ [28755] = "\xb8\xaf", [28757] = "\xcd\xda", [28758] = "\xe1\x61", -+ [28759] = "\xe1\x62", [28760] = "\xee\xab", [28761] = "\xc5\xac", -+ [28764] = "\xe1\x63", [28765] = "\xc1\xf8", [28766] = "\xbc\xd7", -+ [28767] = "\xee\xac", [28768] = "\xe1\x64", [28770] = "\xee\xaf", -+ [28772] = "\xe1\x65", [28773] = "\xbd\xe5", [28774] = "\xee\xad", -+ [28775] = "\xc1\xab", [28776] = "\xc1\xaa", [28777] = "\xe1\x66", -+ [28778] = "\xb0\xe4", [28780] = "\xce\xcb", [28781] = "\xee\xb1", -+ [28783] = "\xc8\xf2", [28784] = "\xee\xb3", [28785] = "\xee\xb2", -+ [28786] = "\xee\xb0", [28787] = "\xe3\xe4", [28788] = "\xb4\xd4", -+ [28789] = "\xe1\x67", [28791] = "\xed\xee", [28792] = "\xe1\x68", -+ [28793] = "\xee\xb5", [28794] = "\xee\xb4", [28795] = "\xe1\x69", -+ [28796] = "\xe1\x6a", [28798] = "\xe1\x6b", [28799] = "\xee\xb6", -+ [28800] = "\xe1\x6c", [28801] = "\xcd\xb8", [28805] = "\xe1\x6d", -+ [28807] = "\xe1\x6e", [28808] = "\xe1\x6f", [28809] = "\xe1\x70", -+ [28811] = "\xe1\x71", [28816] = "\xe1\x72", [28817] = "\xe1\x73", -+ [28818] = "\xe1\x74", [28819] = "\xc6\xe1", [28821] = "\xe1\x75", -+ [28822] = "\xcb\xae", [28824] = "\xee\xb7", [28826] = "\xbc\xd9", -+ [28831] = "\xee\xb8", [28832] = "\xe1\x76", [28833] = "\xee\xb9", -+ [28834] = "\xe1\x77", [28835] = "\xe1\x78", [28836] = "\xe1\x79", -+ [28837] = "\xee\xba", [28838] = "\xe1\x7a", [28840] = "\xc5\xa1", -+ [28845] = "\xe1\x7b", [28846] = "\xe1\x7d", [28849] = "\xb0\xea", -+ [28851] = "\xe1\x7e", [28852] = "\xe2\x21", [28853] = "\xe2\x22", -+ [28855] = "\xe2\x23", [28856] = "\xe2\x24", [28858] = "\xb9\xd9", -+ [28860] = "\xe1\x7c", [28862] = "\xcf\xba", [28866] = "\xe2\x2d", -+ [28869] = "\xe2\x25", [28871] = "\xe2\x26", [28872] = "\xe2\x27", -+ [28873] = "\xe2\x28", [28875] = "\xee\xbe", [28876] = "\xe2\x29", -+ [28877] = "\xe2\x2a", [28878] = "\xf4\x6c", [28879] = "\xe2\x2b", -+ [28881] = "\xb7\xb4", [28882] = "\xee\xbb", [28884] = "\xee\xbc", -+ [28885] = "\xe2\x2c", [28888] = "\xc9\xf4", [28891] = "\xe2\x2f", -+ [28893] = "\xb3\xd4", [28895] = "\xe2\x30", [28896] = "\xe2\x31", -+ [28900] = "\xe2\x32", [28901] = "\xcd\xb9", [28902] = "\xe2\x2e", -+ [28903] = "\xb6\xbf", [28909] = "\xc5\xd4", [28910] = "\xe2\x33", -+ [28911] = "\xe2\x34", [28912] = "\xe2\x35", [28914] = "\xee\xbf", -+ [28916] = "\xe2\x36", [28917] = "\xe2\x37", [28918] = "\xe2\x38", -+ [28920] = "\xe2\x39", [28925] = "\xe2\x3a", [28928] = "\xe2\x3b", -+ [28930] = "\xee\xc0", [28932] = "\xe2\x3c", [28933] = "\xf4\x6e", -+ [28934] = "\xe2\x3d", [28935] = "\xe2\x3e", [28936] = "\xe2\x3f", -+ [28937] = "\xee\xc1", [28938] = "\xe2\x40", [28940] = "\xe2\x41", -+ [28942] = "\xe2\x42", [28944] = "\xe2\x43", [28946] = "\xe2\x45", -+ [28947] = "\xe2\x46", [28949] = "\xe2\x44", [28951] = "\xe2\x47", -+ [28953] = "\xe2\x48", [28957] = "\xc5\xa2", [28958] = "\xe2\x49", -+ [28959] = "\xe2\x4a", [28960] = "\xee\xc3", [28961] = "\xe2\x4b", -+ [28962] = "\xee\xc2", [28964] = "\xe2\x4c", [28966] = "\xe2\x4d", -+ [28967] = "\xe2\x4e", [28969] = "\xe2\x4f", [28970] = "\xe2\x50", -+ [28972] = "\xe2\x51", [28973] = "\xe2\x52", [28979] = "\xe2\x53", -+ [28983] = "\xe2\x54", [28984] = "\xe2\x55", [28985] = "\xc6\xd3", -+ [28986] = "\xee\xc4", [28987] = "\xbd\xb6", [28988] = "\xbc\xe0", -+ [28989] = "\xc7\xdb", [28990] = "\xc3\xf1", [28991] = "\xe2\x56", -+ [28994] = "\xbc\xf2", [28995] = "\xe2\x57", [28996] = "\xbf\xec", -+ [28998] = "\xee\xc5", [28999] = "\xe2\x58", [29000] = "\xee\xc6", -+ [29001] = "\xe2\x59", [29002] = "\xe2\x5a", [29003] = "\xe2\x5b", -+ [29009] = "\xe2\x5c", [29010] = "\xbf\xdd", [29011] = "\xee\xc7", -+ [29012] = "\xe2\x5d", [29013] = "\xee\xc8", [29015] = "\xe2\x5e", -+ [29017] = "\xee\xc9", [29018] = "\xcd\xef", [29020] = "\xbd\xb7", -+ [29021] = "\xe2\x5f", [29026] = "\xee\xcb", [29027] = "\xee\xca", -+ [29028] = "\xe2\x60", [29029] = "\xb9\xda", [29031] = "\xb9\xf3", -+ [29032] = "\xbb\xc0", [29033] = "\xe2\x61", [29034] = "\xe2\x62", -+ [29035] = "\xe2\x63", [29041] = "\xe2\x64", [29042] = "\xee\xce", -+ [29043] = "\xe2\x65", [29045] = "\xe2\x66", [29046] = "\xe2\x67", -+ [29047] = "\xbd\xe6", [29049] = "\xee\xcd", [29050] = "\xe2\x68", -+ [29051] = "\xee\xcc", [29053] = "\xc2\xe9", [29054] = "\xe2\x69", -+ [29056] = "\xb8\xef", [29057] = "\xe2\x6a", [29058] = "\xc0\xc3", -+ [29059] = "\xe2\x6b", [29060] = "\xe2\x6c", [29061] = "\xe2\x6d", -+ [29063] = "\xc8\xb0", [29064] = "\xe2\x6e", [29068] = "\xbd\xb9", -+ [29070] = "\xe2\x6f", [29073] = "\xe2\x70", [29074] = "\xee\xcf", -+ [29076] = "\xbe\xdf", [29078] = "\xe2\x71", [29080] = "\xe2\x72", -+ [29082] = "\xee\xd2", [29083] = "\xee\xd0", [29084] = "\xe2\x73", -+ [29085] = "\xe2\x74", [29086] = "\xe2\x75", [29087] = "\xee\xd1", -+ [29088] = "\xe2\x76", [29089] = "\xe2\x77", [29090] = "\xe2\x78", -+ [29091] = "\xe2\x79", [29092] = "\xee\xd4", [29093] = "\xee\xd3", -+ [29094] = "\xe2\x7a", [29096] = "\xbe\xfa", [29098] = "\xee\xd5", -+ [29099] = "\xe2\x7b", [29100] = "\xe2\x7c", [29101] = "\xe2\x7d", -+ [29103] = "\xe2\x7e", [29104] = "\xee\xd6", [29105] = "\xee\xd7", -+ [29106] = "\xe3\x21", [29107] = "\xe3\x22", [29109] = "\xe3\x23", -+ [29110] = "\xc8\xd0", [29111] = "\xba\xd3", [29112] = "\xbc\xe1", -+ [29113] = "\xee\xd8", [29115] = "\xee\xd9", [29116] = "\xce\xa4", -+ [29117] = "\xbd\xc5", [29118] = "\xcc\xee", [29119] = "\xce\xcc", -+ [29120] = "\xee\xda", [29121] = "\xb6\xe2", [29123] = "\xe3\x24", -+ [29124] = "\xe3\x25", [29126] = "\xee\xdb", [29127] = "\xe3\x26", -+ [29128] = "\xc5\xa3", [29129] = "\xe3\x27", [29130] = "\xe3\x28", -+ [29131] = "\xee\xde", [29132] = "\xb3\xf8", [29133] = "\xbf\xcb", -+ [29134] = "\xe3\x29", [29135] = "\xee\xdc", [29137] = "\xee\xdd", -+ [29139] = "\xc4\xe0", [29140] = "\xe3\x2a", [29141] = "\xe3\x2b", -+ [29142] = "\xcb\xd5", [29143] = "\xb6\xfc", [29145] = "\xe3\x2c", -+ [29146] = "\xe3\x2d", [29148] = "\xe3\x2e", [29149] = "\xe3\x2f", -+ [29150] = "\xe3\x30", [29151] = "\xe3\x31", [29152] = "\xe3\x32", -+ [29153] = "\xe3\x33", [29157] = "\xee\xe0", [29158] = "\xee\xe1", -+ [29159] = "\xe3\x34", [29161] = "\xe3\x35", [29163] = "\xe3\x36", -+ [29164] = "\xee\xdf", [29165] = "\xe3\x37", [29167] = "\xee\xe3", -+ [29168] = "\xe3\x38", [29169] = "\xe3\x39", [29172] = "\xe3\x3a", -+ [29173] = "\xe3\x3b", [29174] = "\xe3\x3c", [29175] = "\xe3\x3d", -+ [29177] = "\xe3\x3e", [29178] = "\xe3\x3f", [29180] = "\xe3\x40", -+ [29181] = "\xc6\xdf", [29182] = "\xb3\xc3", [29184] = "\xe3\x41", -+ [29185] = "\xee\xe7", [29186] = "\xe3\x42", [29187] = "\xe3\x43", -+ [29188] = "\xee\xe4", [29189] = "\xee\xe6", [29190] = "\xe3\x44", -+ [29192] = "\xe3\x45", [29196] = "\xe3\x46", [29197] = "\xe3\x47", -+ [29198] = "\xee\xe2", [29203] = "\xe3\x48", [29204] = "\xe3\x49", -+ [29205] = "\xe3\x4a", [29206] = "\xe3\x4b", [29208] = "\xe3\x4c", -+ [29209] = "\xef\xcf", [29212] = "\xee\xe5", [29214] = "\xe3\x4d", -+ [29215] = "\xe3\x4e", [29216] = "\xe3\x4f", [29219] = "\xe3\x50", -+ [29220] = "\xce\xeb", [29221] = "\xe3\x51", [29222] = "\xe3\x52", -+ [29223] = "\xb8\xda", [29224] = "\xe3\x53", [29225] = "\xe3\x54", -+ [29226] = "\xe3\x55", [29228] = "\xe3\x56", [29230] = "\xe3\x57", -+ [29231] = "\xee\xef", [29232] = "\xe3\x58", [29234] = "\xe3\x59", -+ [29235] = "\xe3\x5a", [29236] = "\xc5\xb4", [29237] = "\xee\xea", -+ [29238] = "\xe3\x5b", [29239] = "\xe3\x5c", [29240] = "\xee\xed", -+ [29241] = "\xee\xeb", [29242] = "\xe3\x5d", [29243] = "\xee\xf0", -+ [29245] = "\xe3\x5e", [29246] = "\xe3\x5f", [29247] = "\xe3\x60", -+ [29248] = "\xee\xf1", [29249] = "\xe3\x61", [29255] = "\xee\xe9", -+ [29256] = "\xe3\x62", [29257] = "\xe3\x63", [29258] = "\xee\xf6", -+ [29259] = "\xb1\xf4", [29260] = "\xe3\x64", [29261] = "\xe3\x65", -+ [29262] = "\xee\xe8", [29264] = "\xe3\x66", [29265] = "\xe3\x67", -+ [29266] = "\xc8\xad", [29268] = "\xee\xec", [29269] = "\xe3\x68", -+ [29270] = "\xbe\xe0", [29271] = "\xe3\x69", [29272] = "\xe3\x6a", -+ [29273] = "\xe3\x6b", [29278] = "\xe3\x6c", [29279] = "\xe3\x6d", -+ [29280] = "\xe3\x6e", [29281] = "\xb9\xdb", [29285] = "\xe3\x6f", -+ [29286] = "\xe3\x70", [29287] = "\xe3\x71", [29288] = "\xe3\x72", -+ [29289] = "\xe3\x73", [29291] = "\xe3\x74", [29292] = "\xe3\x75", -+ [29293] = "\xe3\x76", [29294] = "\xcb\xc8", [29295] = "\xe3\x77", -+ [29296] = "\xb6\xe4", [29299] = "\xbd\xc6", [29301] = "\xc6\xbc", -+ [29304] = "\xe3\x78", [29305] = "\xe3\x79", [29306] = "\xe3\x7a", -+ [29309] = "\xe3\x7b", [29310] = "\xe3\x7c", [29313] = "\xc1\xad", -+ [29314] = "\xe3\x7d", [29315] = "\xee\xf4", [29317] = "\xee\xee", -+ [29318] = "\xee\xf3", [29319] = "\xe3\x7e", [29320] = "\xcc\xc3", -+ [29321] = "\xe4\x21", [29322] = "\xc4\xb8", [29323] = "\xee\xf5", -+ [29324] = "\xee\xf2", [29327] = "\xe4\x22", [29328] = "\xe4\x23", -+ [29332] = "\xe4\x24", [29333] = "\xe4\x25", [29335] = "\xe4\x26", -+ [29336] = "\xe4\x27", [29339] = "\xe4\x28", [29341] = "\xc1\xac", -+ [29343] = "\xe4\x29", [29346] = "\xe4\x2a", [29350] = "\xe4\x2b", -+ [29351] = "\xee\xf9", [29352] = "\xe4\x2c", [29353] = "\xee\xf8", -+ [29354] = "\xe4\x2d", [29355] = "\xe4\x2e", [29356] = "\xe4\x2f", -+ [29357] = "\xe4\x30", [29359] = "\xe4\x31", [29360] = "\xe4\x32", -+ [29361] = "\xe4\x33", [29362] = "\xe4\x34", [29363] = "\xe4\x35", -+ [29365] = "\xe4\x36", [29366] = "\xe4\x37", [29367] = "\xe4\x38", -+ [29368] = "\xe4\x39", [29371] = "\xe4\x3a", [29372] = "\xe4\x3b", -+ [29373] = "\xe4\x3c", [29374] = "\xe4\x3d", [29375] = "\xee\xf7", -+ [29376] = "\xe4\x3e", [29378] = "\xcb\xaf", [29379] = "\xe4\x3f", -+ [29381] = "\xe4\x40", [29383] = "\xe4\x41", [29384] = "\xe4\x42", -+ [29385] = "\xe4\x43", [29388] = "\xe4\x44", [29389] = "\xe4\x45", -+ [29391] = "\xe4\x46", [29392] = "\xe4\x47", [29393] = "\xe4\x48", -+ [29395] = "\xe4\x49", [29396] = "\xbd\xfb", [29397] = "\xe4\x4a", -+ [29399] = "\xe4\x4b", [29400] = "\xe4\x4c", [29401] = "\xee\xfa", -+ [29402] = "\xca\xdf", [29404] = "\xe4\x4d", [29405] = "\xb1\xd4", -+ [29406] = "\xe4\x4e", [29408] = "\xe4\x4f", [29410] = "\xc9\xc6", -+ [29411] = "\xc3\xf2", [29416] = "\xb5\xf8", [29417] = "\xe4\x50", -+ [29418] = "\xee\xfc", [29419] = "\xe4\x51", [29420] = "\xb9\xdd", -+ [29423] = "\xe4\x52", [29424] = "\xe4\x53", [29426] = "\xe4\x54", -+ [29430] = "\xbb\xac", [29432] = "\xe4\x55", [29437] = "\xe4\x56", -+ [29439] = "\xee\xfb", [29440] = "\xbf\xed", [29441] = "\xe4\x57", -+ [29444] = "\xe4\x58", [29445] = "\xe4\x59", [29448] = "\xbf\xee", -+ [29449] = "\xef\xa1", [29450] = "\xef\xa3", [29452] = "\xe4\x5a", -+ [29453] = "\xe4\x5b", [29454] = "\xe4\x5c", [29455] = "\xe4\x5d", -+ [29456] = "\xbe\xfb", [29457] = "\xe4\x5e", [29458] = "\xef\xa2", -+ [29459] = "\xef\xa4", [29460] = "\xe4\x5f", [29461] = "\xe4\x60", -+ [29462] = "\xb6\xd3", [29463] = "\xe4\x61", [29464] = "\xc9\xc5", -+ [29465] = "\xe4\x62", [29466] = "\xe4\x63", [29467] = "\xbc\xe2", -+ [29468] = "\xcf\xa3", [29470] = "\xee\xfe", [29471] = "\xba\xf8", -+ [29474] = "\xcf\xbf", [29475] = "\xe4\x64", [29476] = "\xe4\x65", -+ [29477] = "\xef\xa6", [29478] = "\xe4\x66", [29479] = "\xe4\x67", -+ [29482] = "\xef\xa5", [29483] = "\xef\xa7", [29492] = "\xee\xfd", -+ [29495] = "\xe4\x68", [29496] = "\xe4\x69", [29497] = "\xe4\x6a", -+ [29499] = "\xc6\xe9", [29501] = "\xc5\xd5", [29504] = "\xe4\x6b", -+ [29505] = "\xe4\x6c", [29506] = "\xe4\x6d", [29508] = "\xc4\xd7", -+ [29509] = "\xe4\x6e", [29510] = "\xef\xac", [29511] = "\xe4\x6f", -+ [29512] = "\xe4\x70", [29514] = "\xe4\x71", [29515] = "\xc3\xc3", -+ [29516] = "\xef\xa8", [29518] = "\xe4\x72", [29520] = "\xef\xa9", -+ [29524] = "\xe4\x73", [29525] = "\xe4\x74", [29527] = "\xe4\x75", -+ [29529] = "\xe4\x76", [29530] = "\xe4\x77", [29532] = "\xb7\xad", -+ [29533] = "\xe4\x78", [29534] = "\xef\xab", [29535] = "\xe4\x79", -+ [29536] = "\xe4\x7a", [29537] = "\xe4\x7b", [29539] = "\xe4\x7c", -+ [29540] = "\xe4\x7d", [29541] = "\xb8\xb0", [29542] = "\xe4\x7e", -+ [29546] = "\xe5\x21", [29548] = "\xef\xaa", [29549] = "\xe5\x22", -+ [29550] = "\xbe\xe1", [29551] = "\xe5\x23", [29552] = "\xe5\x24", -+ [29553] = "\xe5\x25", [29554] = "\xe5\x26", [29560] = "\xe5\x27", -+ [29562] = "\xe5\x28", [29563] = "\xe5\x29", [29564] = "\xb3\xf9", -+ [29565] = "\xe5\x2a", [29567] = "\xe5\x2b", [29570] = "\xe5\x2c", -+ [29572] = "\xef\xb0", [29573] = "\xe5\x2d", [29574] = "\xba\xbf", -+ [29575] = "\xc1\xf9", [29576] = "\xe5\x2e", [29578] = "\xc4\xca", -+ [29579] = "\xe5\x2f", [29582] = "\xe5\x30", [29585] = "\xe5\x31", -+ [29587] = "\xe5\x32", [29588] = "\xe5\x33", [29590] = "\xe5\x34", -+ [29591] = "\xb3\xbb", [29592] = "\xe5\x35", [29593] = "\xe5\x3b", -+ [29595] = "\xe5\x36", [29596] = "\xef\xae", [29597] = "\xef\xaf", -+ [29598] = "\xc4\xc3", [29600] = "\xef\xad", [29604] = "\xe5\x37", -+ [29605] = "\xe5\x38", [29606] = "\xe5\x39", [29609] = "\xef\xb1", -+ [29610] = "\xe5\x3a", [29617] = "\xe5\x3c", [29619] = "\xef\xb7", -+ [29620] = "\xe5\x3d", [29621] = "\xe5\x3e", [29622] = "\xe5\x3f", -+ [29623] = "\xe5\x40", [29624] = "\xef\xba", [29625] = "\xe5\x41", -+ [29626] = "\xe5\x42", [29627] = "\xe5\x43", [29628] = "\xe5\x44", -+ [29629] = "\xe5\x45", [29632] = "\xef\xb9", [29633] = "\xc5\xad", -+ [29635] = "\xe5\x46", [29638] = "\xef\xb2", [29639] = "\xef\xb3", -+ [29640] = "\xef\xb6", [29641] = "\xe5\x47", [29644] = "\xe5\x48", -+ [29645] = "\xef\xb8", [29646] = "\xe5\x49", [29647] = "\xe5\x4a", -+ [29649] = "\xb6\xc0", [29650] = "\xe5\x4b", [29652] = "\xef\xbb", -+ [29653] = "\xef\xb5", [29654] = "\xe5\x4c", [29655] = "\xe5\x4d", -+ [29656] = "\xef\xb4", [29671] = "\xe5\x4f", [29672] = "\xe5\x50", -+ [29673] = "\xe5\x4e", [29674] = "\xe5\x51", [29675] = "\xe5\x52", -+ [29677] = "\xe5\x53", [29681] = "\xe5\x54", [29682] = "\xe5\x55", -+ [29683] = "\xef\xbf", [29684] = "\xe5\x56", [29687] = "\xef\xc0", -+ [29688] = "\xe5\x57", [29689] = "\xe5\x58", [29693] = "\xe5\x59", -+ [29694] = "\xe5\x5a", [29695] = "\xe5\x5b", [29696] = "\xef\xc1", -+ [29699] = "\xef\xbe", [29700] = "\xef\xbd", [29701] = "\xe5\x5c", -+ [29702] = "\xe5\x5d", [29703] = "\xe5\x5e", [29704] = "\xbe\xe2", -+ [29705] = "\xc6\xaa", [29706] = "\xef\xbc", [29711] = "\xe5\x5f", -+ [29713] = "\xef\xc5", [29723] = "\xef\xc3", [29726] = "\xe5\x60", -+ [29727] = "\xe5\x61", [29729] = "\xe5\x62", [29730] = "\xe5\x63", -+ [29731] = "\xe5\x64", [29732] = "\xe5\x65", [29733] = "\xef\xc4", -+ [29734] = "\xef\xc2", [29736] = "\xc2\xf8", [29738] = "\xef\xc6", -+ [29739] = "\xe5\x66", [29741] = "\xe5\x68", [29743] = "\xe5\x67", -+ [29745] = "\xef\xc7", [29747] = "\xe5\x69", [29748] = "\xef\xc9", -+ [29749] = "\xe5\x6a", [29752] = "\xe5\x6b", [29754] = "\xe5\x6c", -+ [29756] = "\xe5\x6d", [29761] = "\xb4\xd5", [29762] = "\xef\xc8", -+ [29763] = "\xcc\xfa", [29765] = "\xe5\x6e", [29769] = "\xe5\x6f", -+ [29770] = "\xef\xd4", [29771] = "\xef\xca", [29772] = "\xe5\x70", -+ [29774] = "\xef\xcd", [29775] = "\xe5\x71", [29776] = "\xef\xcb", -+ [29777] = "\xe5\x72", [29778] = "\xef\xcc", [29779] = "\xe5\x73", -+ [29784] = "\xe5\x74", [29786] = "\xef\xce", [29787] = "\xe5\x75", -+ [29789] = "\xe5\x76", [29790] = "\xe5\x77", [29791] = "\xe5\x78", -+ [29792] = "\xef\xd0", [29793] = "\xe5\x79", [29794] = "\xe5\x7a", -+ [29797] = "\xef\xd1", [29799] = "\xef\xd2", [29804] = "\xef\xd5", -+ [29805] = "\xef\xd3", [29806] = "\xef\xd6", [29807] = "\xef\xd8", -+ [29809] = "\xef\xd7", [29811] = "\xe5\x7c", [29812] = "\xe5\x7b", -+ [30055] = "\xc4\xb9", [30056] = "\xe5\x7d", [30057] = "\xe5\x7e", -+ [30062] = "\xe6\x21", [30064] = "\xcc\xe7", [30066] = "\xef\xd9", -+ [30067] = "\xc1\xae", [30068] = "\xe6\x22", [30071] = "\xef\xda", -+ [30072] = "\xe6\x23", [30073] = "\xca\xc4", [30074] = "\xef\xdb", -+ [30075] = "\xb3\xab", [30076] = "\xe6\x24", [30077] = "\xe6\x25", -+ [30078] = "\xe6\x26", [30079] = "\xb1\xbc", [30081] = "\xb4\xd7", -+ [30082] = "\xf4\x71", [30083] = "\xb4\xd6", [30084] = "\xef\xdc", -+ [30086] = "\xef\xdd", [30088] = "\xef\xde", [30089] = "\xef\xdf", -+ [30093] = "\xe6\x27", [30094] = "\xe6\x28", [30095] = "\xe6\x29", -+ [30096] = "\xef\xe0", [30097] = "\xe6\x2a", [30098] = "\xb4\xd8", -+ [30099] = "\xb3\xd5", [30100] = "\xb9\xde", [30101] = "\xc8\xb6", -+ [30102] = "\xe6\x2b", [30103] = "\xef\xe2", [30104] = "\xef\xe1", -+ [30105] = "\xe6\x2c", [30107] = "\xe6\x2d", [30108] = "\xe6\x2e", -+ [30109] = "\xef\xe3", [30114] = "\xb1\xdc", [30116] = "\xe6\x2f", -+ [30118] = "\xe6\x30", [30121] = "\xef\xe6", [30122] = "\xe6\x31", -+ [30123] = "\xef\xe5", [30124] = "\xef\xe4", [30125] = "\xe6\x32", -+ [30126] = "\xef\xe7", [30127] = "\xe6\x33", [30131] = "\xef\xea", -+ [30134] = "\xe6\x34", [30135] = "\xb0\xc7", [30136] = "\xe6\x35", -+ [30137] = "\xe6\x36", [30138] = "\xef\xe8", [30139] = "\xe6\x37", -+ [30140] = "\xef\xec", [30141] = "\xef\xeb", [30144] = "\xe6\x38", -+ [30145] = "\xe6\x39", [30146] = "\xe6\x3a", [30147] = "\xe6\x3b", -+ [30148] = "\xef\xee", [30149] = "\xef\xed", [30150] = "\xef\xef", -+ [30152] = "\xc6\xae", [30153] = "\xe6\x3c", [30154] = "\xe6\x3d", -+ [30156] = "\xef\xf0", [30157] = "\xe6\x3e", [30158] = "\xe6\x3f", -+ [30159] = "\xe6\x40", [30160] = "\xe6\x41", [30161] = "\xef\xf1", -+ [30162] = "\xef\xf3", [30164] = "\xe6\x42", [30165] = "\xef\xf2", -+ [30166] = "\xe6\x43", [30220] = "\xc9\xec", [30221] = "\xe6\x44", -+ [30222] = "\xe6\x45", [30225] = "\xef\xf4", [30226] = "\xe6\x46", -+ [30228] = "\xe6\x47", [30229] = "\xe6\x48", [30230] = "\xe6\x49", -+ [30232] = "\xef\xf5", [30234] = "\xba\xe5", [30236] = "\xe6\x4a", -+ [30238] = "\xef\xf6", [30239] = "\xef\xf7", [30241] = "\xe6\x4b", -+ [30242] = "\xcb\xc9", [30243] = "\xe6\x4c", [30247] = "\xe6\x4d", -+ [30248] = "\xe6\x4e", [30249] = "\xe6\x4f", [30250] = "\xe6\x50", -+ [30251] = "\xc1\xcb", [30252] = "\xe6\x51", [30253] = "\xe6\x52", -+ [30255] = "\xb0\xa4", [30256] = "\xc2\xcb", [30257] = "\xe6\x53", -+ [30258] = "\xef\xf8", [30260] = "\xc9\xed", [30267] = "\xef\xfb", -+ [30268] = "\xef\xf9", [30269] = "\xb9\xdf", [30271] = "\xef\xfa", -+ [30272] = "\xb8\xc2", [30274] = "\xe6\x54", [30276] = "\xe6\x55", -+ [30278] = "\xe6\x56", [30279] = "\xe6\x57", [30280] = "\xe6\x58", -+ [30283] = "\xca\xc5", [30284] = "\xef\xfd", [30285] = "\xf0\xa1", -+ [30286] = "\xef\xfe", [30287] = "\xf0\xa2", [30289] = "\xe6\x59", -+ [30290] = "\xb1\xa1", [30291] = "\xbf\xd8", [30292] = "\xbd\xfc", -+ [30293] = "\xb4\xd9", [30294] = "\xf0\xa3", [30298] = "\xc7\xe6", -+ [30300] = "\xf0\xa5", [30302] = "\xe6\x5a", [30304] = "\xb1\xa2", -+ [30306] = "\xf0\xa4", [30307] = "\xc4\xc4", [30308] = "\xe6\x5b", -+ [30309] = "\xce\xcd", [30310] = "\xc6\xab", [30311] = "\xef\xfc", -+ [30312] = "\xce\xa6", [30314] = "\xb8\xb1", [30315] = "\xe6\x5c", -+ [30316] = "\xe6\x5d", [30317] = "\xcd\xdb", [30318] = "\xe6\x5e", -+ [30319] = "\xe6\x5f", [30321] = "\xe6\x60", [30322] = "\xe6\x61", -+ [30323] = "\xe6\x62", [30324] = "\xe6\x63", [30325] = "\xb6\xf9", -+ [30326] = "\xce\xb4", [30328] = "\xb7\xa8", [30329] = "\xe6\x64", -+ [30330] = "\xc2\xe2", [30331] = "\xe7\xa1", [30333] = "\xf0\xa6", -+ [30334] = "\xb3\xac", [30335] = "\xbf\xef", [30337] = "\xe6\x65", -+ [30340] = "\xb3\xd6", [30341] = "\xf0\xa8", [30342] = "\xe6\x66", -+ [30343] = "\xf0\xa9", [30344] = "\xf0\xa7", [30345] = "\xb7\xe4", -+ [30346] = "\xe6\x67", [30347] = "\xba\xdd", [30348] = "\xbe\xe3", -+ [30349] = "\xe6\x68", [30351] = "\xe6\x69", [30352] = "\xb1\xa3", -+ [30355] = "\xce\xd9", [30356] = "\xe6\x6a", [30357] = "\xe6\x6b", -+ [30358] = "\xe6\x6c", [30359] = "\xf0\xab", [30360] = "\xee\xae", -+ [30361] = "\xe6\x6d", [30362] = "\xf0\xaa", [30366] = "\xe6\x6e", -+ [30367] = "\xe6\x6f", [30368] = "\xf0\xae", [30369] = "\xf0\xac", -+ [30370] = "\xf0\xad", [30371] = "\xe6\x70", [30372] = "\xf0\xaf", -+ [30374] = "\xf0\xb0", [30375] = "\xce\xec", [30376] = "\xf0\xb1", -+ [30377] = "\xf0\xb2", [30378] = "\xe6\x71", [30379] = "\xc0\xc9", -+ [30380] = "\xc8\xbb", [30384] = "\xbf\xfd", [30385] = "\xb4\xe7", -+ [30388] = "\xcd\xba", [30389] = "\xb2\xed", [30390] = "\xbd\xb8", -+ [30391] = "\xb8\xdb", [30393] = "\xf0\xb5", [30394] = "\xe6\x72", -+ [30395] = "\xf0\xb4", [30396] = "\xbb\xf3", [30397] = "\xf0\xb6", -+ [30398] = "\xf0\xb3", [30401] = "\xbb\xa8", [30402] = "\xe6\x73", -+ [30405] = "\xf0\xba", [30406] = "\xea\xad", [30408] = "\xe6\x75", -+ [30409] = "\xd2\xd6", [30410] = "\xe6\x76", [30411] = "\xbf\xf7", -+ [30412] = "\xf0\xb8", [30413] = "\xe6\x77", [30414] = "\xe6\x78", -+ [30415] = "\xe6\x79", [30418] = "\xce\xa5", [30419] = "\xc6\xf1", -+ [30424] = "\xb1\xab", [30425] = "\xe6\x7a", [30426] = "\xc0\xe3", -+ [30427] = "\xbc\xb6", [30431] = "\xe6\x7b", [30432] = "\xca\xb7", -+ [30433] = "\xe6\x7c", [30434] = "\xb1\xc0", [30438] = "\xce\xed", -+ [30439] = "\xcd\xeb", [30441] = "\xf0\xbb", [30442] = "\xe6\x7d", -+ [30443] = "\xc5\xc5", [30448] = "\xbc\xfb", [30450] = "\xe6\x7e", -+ [30451] = "\xe7\x21", [30452] = "\xf0\xbc", [30453] = "\xe7\x22", -+ [30454] = "\xf0\xbd", [30455] = "\xbf\xcc", [30456] = "\xf0\xbe", -+ [30457] = "\xe7\x23", [30458] = "\xce\xee", [30461] = "\xf0\xb9", -+ [30462] = "\xf0\xc0", [30463] = "\xf0\xc2", [30465] = "\xf0\xc1", -+ [30467] = "\xf0\xbf", [30470] = "\xf0\xc3", [30473] = "\xf0\xc4", -+ [30474] = "\xe7\x24", [30475] = "\xe7\x25", [30476] = "\xc1\xfa", -+ [30477] = "\xe7\x26", [30478] = "\xb2\xe2", [30481] = "\xe7\x27", -+ [30482] = "\xe7\x28", [30483] = "\xe7\x29", [30484] = "\xf0\xc5", -+ [30487] = "\xcc\xb8", [30488] = "\xe7\x2a", [30490] = "\xf0\xc6", -+ [30496] = "\xf0\xc7", [30497] = "\xe7\x2b", [30498] = "\xcf\xaa", -+ [30499] = "\xe7\x2c", [30504] = "\xdb\xb1", [30505] = "\xf0\xc8", -+ [30507] = "\xf4\x74", [30509] = "\xf0\xc9", [30510] = "\xf0\xca", -+ [30513] = "\xe7\x2d", [30514] = "\xf0\xce", [30515] = "\xe7\x2e", -+ [30516] = "\xf0\xcb", [30518] = "\xf0\xcc", [30520] = "\xf0\xcd", -+ [30521] = "\xf0\xcf", [30522] = "\xe7\x2f", [30525] = "\xf4\x75", -+ [30526] = "\xe7\x30", [30527] = "\xe7\x31", [30529] = "\xf4\x76", -+ [30530] = "\xc0\xc4", [30533] = "\xe7\x32", [30534] = "\xcc\xf7", -+ [30535] = "\xe7\x33", [30536] = "\xe7\x34", [30537] = "\xc0\xc5", -+ [30538] = "\xe7\x35", [30539] = "\xe7\x36", [30540] = "\xf0\xd0", -+ [30542] = "\xc8\xf3", [30544] = "\xf0\xd1", [30545] = "\xf3\xd3", -+ [30546] = "\xcc\xcc", [30547] = "\xe7\x37", [30548] = "\xf0\xd2", -+ [30550] = "\xf0\xd3", [30551] = "\xe7\x38", [30552] = "\xf0\xd4", -+ [30553] = "\xb3\xd7", [30554] = "\xe7\x39", [30555] = "\xf0\xd6", -+ [30557] = "\xbf\xd9", [30558] = "\xe7\x3a", [30561] = "\xf0\xd7", -+ [30563] = "\xe7\x3b", [30564] = "\xb7\xa4", [30566] = "\xe7\x3c", -+ [30567] = "\xe7\x3d", [30568] = "\xe7\x3e", [30569] = "\xf0\xd8", -+ [30570] = "\xf0\xdc", [30571] = "\xe7\x3f", [30572] = "\xf0\xda", -+ [30573] = "\xe7\x40", [30575] = "\xe7\x41", [30576] = "\xe7\x42", -+ [30577] = "\xf0\xdb", [30580] = "\xb3\xf3", [30581] = "\xf0\xd9", -+ [30582] = "\xf0\xdd", [30585] = "\xe7\x43", [30587] = "\xf0\xde", -+ [30589] = "\xb0\xc8", [30591] = "\xf0\xdf", [30592] = "\xf0\xe0", -+ [30597] = "\xe7\x44", [30598] = "\xe7\x45", [30599] = "\xe7\x46", -+ [30600] = "\xbe\xe4", [30601] = "\xe7\x47", [30602] = "\xe7\x48", -+ [30604] = "\xf0\xe1", [30606] = "\xe7\x49", [30607] = "\xe7\x4a", -+ [30608] = "\xb5\xc7", [30610] = "\xe7\x4b", [30611] = "\xf0\xe4", -+ [30614] = "\xf0\xe3", [30616] = "\xf0\xe2", [30619] = "\xeb\xf1", -+ [30620] = "\xe7\x4c", [30621] = "\xca\xdc", [30622] = "\xe7\x4d", -+ [30625] = "\xe7\x4e", [30626] = "\xe7\x4f", [30627] = "\xf0\xe5", -+ [30628] = "\xf0\xe6", [30629] = "\xe7\x50", [30630] = "\xe7\x51", -+ [30632] = "\xe7\x52", [30633] = "\xe7\x53", [30634] = "\xe7\x54", -+ [30636] = "\xe7\x55", [30638] = "\xe7\x56", [30639] = "\xe7\x57", -+ [30641] = "\xe7\x58", [30643] = "\xf0\xe7", [30644] = "\xe7\x59", -+ [30645] = "\xe7\x5a", [30646] = "\xf0\xe8", [30647] = "\xe7\x5b", -+ [30648] = "\xf0\xe9", [30649] = "\xe7\x5c", [30650] = "\xe7\x5d", -+ [30651] = "\xf0\xea", [30652] = "\xe7\x5e", [30653] = "\xe7\x5f", -+ [30654] = "\xe7\x60", [30656] = "\xe7\x61", [30657] = "\xe7\x62", -+ [30659] = "\xb4\xda", [30660] = "\xe7\x63", [30663] = "\xe7\x64", -+ [30664] = "\xe7\x65", [30665] = "\xe7\x66", [30667] = "\xe7\x6a", -+ [30668] = "\xf0\xeb", [30669] = "\xe7\x67", [30670] = "\xe7\x68", -+ [30672] = "\xe7\x69", [30673] = "\xe7\x6b", [30676] = "\xe7\x6c", -+ [30685] = "\xf0\xec", [30686] = "\xc7\xa3", [30687] = "\xe7\x6d", -+ [30689] = "\xe7\x6e", [30690] = "\xf0\xee", [30691] = "\xb2\xbb", -+ [30692] = "\xe7\x6f", [30693] = "\xf0\xf1", [30694] = "\xf0\xf0", -+ [30695] = "\xe7\x70", [30696] = "\xe7\x71", [30698] = "\xe7\x72", -+ [30699] = "\xb1\xa4", [30703] = "\xb6\xc1", [30705] = "\xca\xc7", -+ [30706] = "\xc4\xba", [30707] = "\xba\xa2", [30709] = "\xb9\xe0", -+ [30710] = "\xbd\xe7", [30711] = "\xe7\x73", [30712] = "\xbf\xdc", -+ [30714] = "\xe7\x74", [30716] = "\xf0\xf3", [30717] = "\xe7\x76", -+ [30718] = "\xe7\x77", [30719] = "\xf0\xf2", [30720] = "\xcd\xc2", -+ [30721] = "\xb4\xe8", [30722] = "\xc8\xd2", [30723] = "\xc6\xdc", -+ [30724] = "\xe7\x78", [30726] = "\xe7\x79", [30727] = "\xbf\xfc", -+ [30728] = "\xce\xce", [30729] = "\xe7\x75", [30730] = "\xb7\xdb", -+ [30732] = "\xe7\x7a", [30734] = "\xe7\x7b", [30736] = "\xe7\x7c", -+ [30737] = "\xf0\xf6", [30739] = "\xe7\x7d", [30740] = "\xf0\xf5", -+ [30741] = "\xe8\x28", [30742] = "\xe7\x7e", [30747] = "\xe8\x21", -+ [30748] = "\xcb\xcb", [30749] = "\xc6\xac", [30750] = "\xe8\x22", -+ [30751] = "\xe8\x23", [30752] = "\xe8\x24", [30754] = "\xe8\x25", -+ [30755] = "\xe8\x26", [30756] = "\xb1\xd0", [30757] = "\xe8\x27", -+ [30759] = "\xf0\xf7", [30760] = "\xf0\xf4", [30763] = "\xc9\xd1", -+ [30764] = "\xcd\xea", [30765] = "\xf0\xf8", [30766] = "\xe8\x29", -+ [30772] = "\xe8\x2a", [30774] = "\xf0\xf9", [30775] = "\xe8\x2b", -+ [30778] = "\xe8\x2c", [30779] = "\xf0\xfb", [30780] = "\xc2\xea", -+ [30781] = "\xb3\xdb", [30782] = "\xb3\xdc", [30783] = "\xf0\xfa", -+ [30785] = "\xe8\x2d", [30786] = "\xe8\x2e", [30787] = "\xe8\x2f", -+ [30788] = "\xb4\xe9", [30789] = "\xb8\xb2", [30790] = "\xe8\x30", -+ [30791] = "\xe8\x31", [30792] = "\xb4\xea", [30793] = "\xe8\x32", -+ [30794] = "\xe8\x33", [30795] = "\xc5\xbf", [30798] = "\xce\xe0", -+ [30802] = "\xe8\x34", [30803] = "\xe8\x35", [30805] = "\xe8\x36", -+ [30806] = "\xe8\x37", [30807] = "\xb8\xdc", [30810] = "\xe8\x38", -+ [30811] = "\xf0\xfc", [30812] = "\xe8\x39", [30815] = "\xf0\xfd", -+ [30816] = "\xf0\xfe", [30817] = "\xf1\xa1", [30819] = "\xf1\xa3", -+ [30820] = "\xf1\xa2", [30872] = "\xc9\xf7", [30874] = "\xf1\xa4", -+ [30875] = "\xe8\x3a", [30877] = "\xe8\x3b", [30878] = "\xe8\x3c", -+ [30879] = "\xf1\xa5", [30880] = "\xe8\x3d", [30881] = "\xf1\xa6", -+ [30884] = "\xe8\x3e", [30886] = "\xf1\xa7", [30887] = "\xe8\x3f", -+ [30888] = "\xe8\x40", [30890] = "\xe8\x41", [30891] = "\xe8\x42", -+ [30895] = "\xe8\x43", [30898] = "\xe8\x44", [30899] = "\xf1\xa9", -+ [30900] = "\xf1\xa8", [30901] = "\xe8\x45", [30902] = "\xf1\xaa", -+ [30904] = "\xe8\x46", [30908] = "\xe8\x47", [30923] = "\xc8\xf4", -+ [30924] = "\xe6\xcc", [30927] = "\xbf\xa9", [30929] = "\xe8\x48", -+ [30930] = "\xb5\xb2", [30931] = "\xe8\x49", [30933] = "\xe8\x4a", -+ [30934] = "\xe8\x4b", [30935] = "\xe8\x4c", [30937] = "\xf1\xab", -+ [30938] = "\xe8\x4d", [30939] = "\xf1\xac", [30941] = "\xd2\xac", -+ [30942] = "\xdd\xbb", [30943] = "\xc8\xd3", [30946] = "\xb0\xfb", -+ [30947] = "\xe8\x4e", [30948] = "\xb0\xbb", [30950] = "\xe8\x4f", -+ [30956] = "\xbb\xf4", [30957] = "\xcb\xb0", [30958] = "\xbe\xfe", -+ [30962] = "\xe8\x50", [30963] = "\xf1\xad", [30965] = "\xcc\xdf", -+ [30967] = "\xe8\x51", [30968] = "\xe8\x52", [30969] = "\xf1\xae", -+ [30970] = "\xcd\xdc", [30972] = "\xb1\xc2", [30976] = "\xbb\xc1", -+ [30977] = "\xe8\x53", [30978] = "\xf1\xaf", [30979] = "\xb2\xee", -+ [30980] = "\xf1\xb0", [30981] = "\xe8\x54", [30982] = "\xe8\x55", -+ [30983] = "\xe8\x56", [30984] = "\xf1\xb1", [30986] = "\xe8\x57", -+ [30987] = "\xe8\x58", [30988] = "\xe8\x59", [30989] = "\xf1\xb3", -+ [30990] = "\xf1\xb4", [30991] = "\xe8\x5a", [30992] = "\xf1\xb6", -+ [30993] = "\xf1\xb2", [30994] = "\xe8\x5b", [30996] = "\xf1\xb5", -+ [30998] = "\xe8\x5c", [30999] = "\xe8\x5d", [31000] = "\xb4\xdb", -+ [31003] = "\xe8\x5e", [31004] = "\xf1\xb7", [31006] = "\xf1\xb8", -+ [31009] = "\xe8\x5f", [31010] = "\xe8\x60", [31011] = "\xe8\x61", -+ [31012] = "\xe8\x62", [31013] = "\xe8\x63", [31017] = "\xe8\x64", -+ [31018] = "\xe8\x65", [31019] = "\xe8\x66", [31020] = "\xe8\x67", -+ [31021] = "\xf1\xb9", [31022] = "\xf1\xba", [31024] = "\xe8\x68", -+ [31025] = "\xe8\x69", [31026] = "\xf1\xbb", [31029] = "\xf1\xbd", -+ [31030] = "\xe8\x6a", [31031] = "\xe8\x6b", [31032] = "\xe8\x6c", -+ [31033] = "\xf1\xbc", [31035] = "\xf1\xbf", [31036] = "\xf1\xc2", -+ [31037] = "\xe8\x6d", [31038] = "\xe8\x6e", [31040] = "\xf1\xbe", -+ [31041] = "\xf1\xc0", [31042] = "\xf1\xc1", [31044] = "\xe8\x6f", -+ [31045] = "\xf1\xc3", [31047] = "\xb6\xc2", [31048] = "\xe8\x70", -+ [31049] = "\xe8\x71", [31051] = "\xe8\x72", [31052] = "\xe8\x73", -+ [31054] = "\xe8\x74", [31055] = "\xe8\x75", [31056] = "\xe8\x76", -+ [31110] = "\xbc\xf3", [31111] = "\xf1\xc4", [31112] = "\xf1\xc5", -+ [31113] = "\xb9\xe1", [31115] = "\xe8\x77", [31117] = "\xe8\x78", -+ [31118] = "\xf4\x7a", [31119] = "\xe8\x79", [31125] = "\xf1\xc6", -+ [31126] = "\xe8\x7a", [31128] = "\xb3\xbe", [31132] = "\xc7\xcf", -+ [31133] = "\xf1\xc7", [31134] = "\xf1\xc8", [31136] = "\xe8\x7b", -+ [31137] = "\xe8\x7c", [31138] = "\xe8\x7d", [31139] = "\xc3\xda", -+ [31140] = "\xc6\xeb", [31141] = "\xe8\x7e", [31145] = "\xe9\x21", -+ [31146] = "\xe9\x22", [31148] = "\xf1\xc9", [31149] = "\xe9\x23", -+ [31151] = "\xe9\x24", [31153] = "\xc7\xfd", [31155] = "\xe9\x25", -+ [31156] = "\xc2\xcc", [31157] = "\xb1\xd8", [31158] = "\xb6\xee", -+ [31160] = "\xb6\xef", [31161] = "\xe9\x26", [31168] = "\xc3\xf3", -+ [31169] = "\xf1\xce", [31170] = "\xb6\xf0", [31171] = "\xe9\x27", -+ [31172] = "\xe9\x28", [31173] = "\xb2\xef", [31176] = "\xf1\xcd", -+ [31177] = "\xe9\x29", [31178] = "\xe9\x2a", [31179] = "\xf1\xcb", -+ [31180] = "\xe9\x2b", [31181] = "\xf1\xcc", [31182] = "\xe9\x2c", -+ [31183] = "\xf1\xca", [31186] = "\xf1\xd8", [31191] = "\xe9\x2d", -+ [31194] = "\xe9\x2e", [31195] = "\xe9\x2f", [31196] = "\xe9\x30", -+ [31197] = "\xf1\xcf", [31198] = "\xf1\xd0", [31200] = "\xe9\x31", -+ [31201] = "\xf1\xd1", [31202] = "\xf1\xd2", [31204] = "\xe9\x32", -+ [31205] = "\xe9\x33", [31208] = "\xf1\xd4", [31209] = "\xe9\x34", -+ [31211] = "\xf1\xd3", [31213] = "\xe9\x35", [31214] = "\xe9\x36", -+ [31215] = "\xbd\xd9", [31217] = "\xf1\xd5", [31218] = "\xe9\x37", -+ [31219] = "\xe9\x38", [31220] = "\xe9\x39", [31221] = "\xf1\xd7", -+ [31227] = "\xe9\x3a", [31228] = "\xe9\x3b", [31230] = "\xb5\xb3", -+ [31231] = "\xf1\xd6", [31232] = "\xe9\x3c", [31233] = "\xe9\x3d", -+ [31234] = "\xc1\xfb", [31235] = "\xb8\xb3", [31238] = "\xe9\x3e", -+ [31241] = "\xf1\xd9", [31246] = "\xe9\x3f", [31248] = "\xe9\x40", -+ [31250] = "\xe9\x41", [31251] = "\xe9\x42", [31252] = "\xe9\x43", -+ [31255] = "\xe9\x44", [31256] = "\xc2\xcd", [31259] = "\xf1\xda", -+ [31261] = "\xe9\x45", [31262] = "\xe9\x46", [31264] = "\xc6\xad", -+ [31267] = "\xe9\x47", [31269] = "\xe9\x48", [31270] = "\xe9\x49", -+ [31271] = "\xf1\xdb", [31272] = "\xe9\x4a", [31278] = "\xf1\xe0", -+ [31280] = "\xf1\xde", [31281] = "\xe9\x4c", [31282] = "\xf1\xdd", -+ [31283] = "\xf1\xdf", [31284] = "\xe9\x4d", [31285] = "\xf1\xdc", -+ [31287] = "\xe9\x4b", [31290] = "\xe9\x4e", [31291] = "\xe9\x4f", -+ [31292] = "\xe9\x50", [31293] = "\xf1\xe2", [31294] = "\xe9\x51", -+ [31297] = "\xe9\x52", [31300] = "\xe9\x53", [31301] = "\xf1\xe1", -+ [31302] = "\xe9\x54", [31303] = "\xf1\xe4", [31306] = "\xb6\xc3", -+ [31307] = "\xf1\xe3", [31309] = "\xe9\x55", [31311] = "\xf1\xe5", -+ [31314] = "\xf1\xe6", [31316] = "\xf1\xe8", [31317] = "\xf1\xe7", -+ [31321] = "\xf1\xe9", [31322] = "\xf1\xeb", [31323] = "\xf1\xea", -+ [31384] = "\xb9\xfc", [31386] = "\xe9\x56", [31388] = "\xe9\x57", -+ [31389] = "\xf1\xec", [31390] = "\xe9\x58", [31391] = "\xe9\x59", -+ [31392] = "\xf1\xed", [31394] = "\xe9\x5a", [31396] = "\xe9\x5b", -+ [31397] = "\xe9\x5c", [31398] = "\xe9\x5d", [31400] = "\xb3\xbc", -+ [31401] = "\xe9\x5e", [31403] = "\xe9\x5f", [31404] = "\xf1\xee", -+ [31406] = "\xe9\x60", [31407] = "\xe9\x61", [31408] = "\xf1\xef", -+ [31409] = "\xe9\x62", [31411] = "\xe9\x63", [31412] = "\xbf\xf1", -+ [31414] = "\xe9\x64", [31416] = "\xe9\x65", [31422] = "\xe9\x66", -+ [31423] = "\xf1\xf0", [31424] = "\xe9\x67", [31425] = "\xf1\xf1", -+ [31426] = "\xe9\x68", [31427] = "\xf1\xf2", [31428] = "\xf1\xf3", -+ [31429] = "\xe9\x69", [31430] = "\xe9\x6a", [31431] = "\xe9\x6b", -+ [31432] = "\xb9\xe2", [31433] = "\xf4\x7b", [31435] = "\xe9\x6c", -+ [31436] = "\xe9\x6d", [31438] = "\xf1\xf4", [31439] = "\xf1\xf5", -+ [31440] = "\xe9\x6e", [31442] = "\xf1\xf6", [31443] = "\xf1\xf7", -+ [31444] = "\xe9\x6f", [31445] = "\xe9\x70", [31446] = "\xf1\xf8", -+ [31447] = "\xe9\x71", [31449] = "\xe9\x72", [31450] = "\xc8\xb1", -+ [31451] = "\xf1\xfa", [31452] = "\xe9\x73", [31453] = "\xc9\xa6", -+ [31454] = "\xf1\xfb", [31455] = "\xf1\xf9", [31457] = "\xf1\xfd", -+ [31458] = "\xe9\x74", [31459] = "\xe9\x75", [31460] = "\xf1\xfc", -+ [31461] = "\xe9\x76", [31463] = "\xf1\xfe", [31465] = "\xe9\x77", -+ [31466] = "\xe9\x78", [31467] = "\xf2\xa1", [31469] = "\xe9\x79", -+ [31471] = "\xe9\x7a", [31472] = "\xe9\x7b", [31473] = "\xe9\x7c", -+ [31474] = "\xe9\x7d", [31475] = "\xe9\x7e", [31476] = "\xea\x21", -+ [31477] = "\xea\x22", [31478] = "\xf2\xa2", [31480] = "\xea\x23", -+ [31481] = "\xea\x24", [31483] = "\xea\x25", [31484] = "\xea\x26", -+ [31485] = "\xea\x27", [31486] = "\xea\x28", [31488] = "\xea\x29", -+ [31490] = "\xea\x2a", [31494] = "\xea\x2b", [31496] = "\xf2\xa3", -+ [31497] = "\xea\x2c", [31498] = "\xf2\xa4", [31499] = "\xea\x2d", -+ [31500] = "\xea\x2e", [31503] = "\xf2\xa5", [31504] = "\xea\x2f", -+ [31506] = "\xf2\xa6", [31507] = "\xf2\xa7", [31509] = "\xf2\xa8", -+ [31510] = "\xea\x30", [31511] = "\xf2\xa9", [31512] = "\xf2\xaa", -+ [31513] = "\xf2\xab", [31514] = "\xf2\xac", [31515] = "\xea\x31", -+ [31517] = "\xea\x32", [31518] = "\xf2\xad", [31519] = "\xf2\xae", -+ [31521] = "\xdd\xb5", [31522] = "\xf2\xaf", [31523] = "\xea\x33", -+ [31524] = "\xea\x34", [31525] = "\xea\x35", [31527] = "\xea\x36", -+ [31529] = "\xea\x37", [31530] = "\xea\x38", [31531] = "\xe4\xf8", -+ [31532] = "\xb5\xb4", [31533] = "\xea\x39", [31537] = "\xb3\xa1", -+ [31538] = "\xba\xb2", [31539] = "\xf2\xb1", [31540] = "\xf2\xb0", -+ [31541] = "\xcc\xa5", [31544] = "\xea\x3a", [31547] = "\xea\x3b", -+ [31548] = "\xea\x3c", [31549] = "\xf2\xb3", [31550] = "\xf2\xb4", -+ [31551] = "\xf2\xb2", [31553] = "\xf2\xb5", [31556] = "\xcb\xe2", -+ [31557] = "\xea\x3d", [31558] = "\xea\x3e", [31559] = "\xea\x3f", -+ [31560] = "\xf2\xb6", [31562] = "\xb5\xfb", [31563] = "\xea\x40", -+ [31566] = "\xea\x41", [31569] = "\xea\x42", [31571] = "\xea\x43", -+ [31573] = "\xea\x44", [31574] = "\xea\x45", [31576] = "\xea\x46", -+ [31578] = "\xea\x47", [31579] = "\xea\x48", [31580] = "\xea\x49", -+ [31581] = "\xea\x4a", [31582] = "\xea\x4b", [31583] = "\xcf\xa5", -+ [31586] = "\xf4\x7c", [31587] = "\xea\x4c", [31588] = "\xf2\xb7", -+ [31589] = "\xea\x4d", [31591] = "\xea\x4e", [31592] = "\xea\x4f", -+ [31593] = "\xea\x50", [31599] = "\xea\x51", [31600] = "\xea\x52", -+ [31603] = "\xf2\xb9", [31604] = "\xea\x53", [31605] = "\xea\x54", -+ [31606] = "\xea\x55", [31607] = "\xea\x56", [31609] = "\xea\x57", -+ [31610] = "\xea\x58", [31611] = "\xea\x59", [31613] = "\xea\x5a", -+ [31614] = "\xb0\xbe", [31615] = "\xea\x5b", [31616] = "\xea\x5c", -+ [31617] = "\xf2\xba", [31618] = "\xca\xab", [31619] = "\xf2\xb8", -+ [31620] = "\xea\x5d", [31622] = "\xf2\xbb", [31623] = "\xf2\xbc", -+ [31626] = "\xea\x5e", [31629] = "\xea\x5f", [31630] = "\xea\x60", -+ [31631] = "\xf2\xbd", [31632] = "\xf2\xbe", [31638] = "\xea\x61", -+ [31639] = "\xea\x62", [31640] = "\xf2\xbf", [31641] = "\xea\x63", -+ [31642] = "\xcb\xee", [31643] = "\xbb\xad", [31644] = "\xea\x64", -+ [31645] = "\xba\xfa", [31646] = "\xc1\xaf", [31648] = "\xea\x65", -+ [31649] = "\xea\x66", [31650] = "\xea\x67", [31652] = "\xf2\xc0", -+ [31655] = "\xea\x68", [31656] = "\xea\x69", [31657] = "\xf2\xc3", -+ [31659] = "\xea\x6a", [31660] = "\xea\x6b", [31662] = "\xea\x6c", -+ [31663] = "\xea\x6d", [31664] = "\xf2\xc1", [31665] = "\xea\x6e", -+ [31670] = "\xf2\xc4", [31671] = "\xea\x6f", [31672] = "\xea\x70", -+ [31673] = "\xb8\xf1", [31674] = "\xf2\xc2", [31678] = "\xea\x71", -+ [31679] = "\xf2\xc5", [31680] = "\xea\x72", [31681] = "\xf2\xc6", -+ [31682] = "\xf2\xc7", [31684] = "\xf2\xcb", [31686] = "\xbb\xaa", -+ [31687] = "\xea\x73", [31688] = "\xea\x74", [31691] = "\xc2\xe4", -+ [31693] = "\xea\x75", [31695] = "\xea\x76", [31697] = "\xf2\xcc", -+ [31698] = "\xf2\xc9", [31699] = "\xf2\xc8", [31700] = "\xf2\xca", -+ [31701] = "\xea\x77", [31703] = "\xea\x78", [31704] = "\xb7\xdf", -+ [31706] = "\xea\x79", [31707] = "\xea\x7a", [31711] = "\xea\x7b", -+ [31712] = "\xf2\xd0", [31713] = "\xf2\xcf", [31714] = "\xf2\xce", -+ [31715] = "\xea\x7c", [31717] = "\xb0\xb3", [31719] = "\xea\x7d", -+ [31720] = "\xea\x7e", [31721] = "\xeb\x21", [31722] = "\xeb\x22", -+ [31725] = "\xeb\x23", [31727] = "\xeb\x24", [31728] = "\xeb\x25", -+ [31730] = "\xeb\x26", [31732] = "\xf2\xda", [31734] = "\xf2\xd6", -+ [31736] = "\xf2\xd7", [31737] = "\xf2\xd3", [31738] = "\xf2\xd9", -+ [31739] = "\xeb\x27", [31740] = "\xf2\xd5", [31741] = "\xb3\xe2", -+ [31743] = "\xeb\x28", [31744] = "\xcf\xcc", [31745] = "\xeb\x29", -+ [31746] = "\xf2\xd8", [31747] = "\xf2\xd4", [31748] = "\xf2\xd2", -+ [31749] = "\xf2\xd1", [31750] = "\xeb\x2a", [31752] = "\xeb\x2b", -+ [31753] = "\xeb\x2c", [31754] = "\xeb\x2d", [31755] = "\xf2\xdc", -+ [31756] = "\xeb\x2e", [31758] = "\xeb\x2f", [31761] = "\xf2\xdf", -+ [31762] = "\xeb\x30", [31763] = "\xeb\x31", [31764] = "\xf2\xde", -+ [31765] = "\xf2\xdd", [31766] = "\xeb\x32", [31767] = "\xeb\x33", -+ [31768] = "\xeb\x34", [31769] = "\xeb\x35", [31770] = "\xeb\x36", -+ [31773] = "\xc9\xc9", [31774] = "\xf2\xdb", [31775] = "\xb0\xf3", -+ [31776] = "\xf2\xe0", [31777] = "\xeb\x37", [31778] = "\xf2\xe2", -+ [31781] = "\xeb\x38", [31782] = "\xeb\x39", [31783] = "\xeb\x3a", -+ [31785] = "\xb3\xef", [31786] = "\xf2\xcd", [31787] = "\xb1\xb7", -+ [31789] = "\xeb\x3b", [31790] = "\xf2\xe4", [31793] = "\xeb\x3c", -+ [31795] = "\xeb\x3d", [31796] = "\xeb\x3e", [31797] = "\xeb\x3f", -+ [31798] = "\xf2\xe3", [31799] = "\xf2\xe1", [31800] = "\xc3\xad", -+ [31801] = "\xeb\x40", [31802] = "\xeb\x41", [31806] = "\xeb\x42", -+ [31807] = "\xeb\x43", [31808] = "\xeb\x44", [31810] = "\xcb\xf0", -+ [31811] = "\xeb\x45", [31812] = "\xeb\x46", [31814] = "\xeb\x47", -+ [31815] = "\xce\xda", [31816] = "\xeb\x48", [31818] = "\xf2\xe5", -+ [31819] = "\xeb\x49", [31820] = "\xeb\x50", [31821] = "\xeb\x4a", -+ [31822] = "\xeb\x4b", [31823] = "\xeb\x4c", [31824] = "\xf2\xe6", -+ [31827] = "\xeb\x4d", [31831] = "\xf2\xe7", [31832] = "\xeb\x52", -+ [31833] = "\xeb\x4e", [31834] = "\xeb\x4f", [31835] = "\xeb\x51", -+ [31838] = "\xeb\x53", [31840] = "\xeb\x54", [31842] = "\xeb\x55", -+ [31845] = "\xeb\x56", [31846] = "\xf2\xe8", [31847] = "\xeb\x57", -+ [31848] = "\xf2\xe9", [31851] = "\xeb\x58", [31957] = "\xc4\xbb", -+ [31958] = "\xeb\x59", [31959] = "\xf2\xea", [31961] = "\xc8\xb7", -+ [31963] = "\xf2\xef", [31964] = "\xf2\xeb", [31968] = "\xf2\xec", -+ [31970] = "\xeb\x5a", [31971] = "\xcb\xb1", [31972] = "\xcc\xc4", -+ [31974] = "\xc6\xd0", [31975] = "\xeb\x5b", [31977] = "\xeb\x5c", -+ [31986] = "\xeb\x5e", [31987] = "\xf2\xf0", [31990] = "\xf2\xf1", -+ [31991] = "\xc6\xbe", [31992] = "\xf2\xee", [31993] = "\xf2\xed", -+ [31995] = "\xeb\x5d", [31998] = "\xb2\xaa", [32001] = "\xeb\x5f", -+ [32002] = "\xf2\xf9", [32005] = "\xf2\xf8", [32007] = "\xeb\x60", -+ [32008] = "\xeb\x61", [32011] = "\xb1\xf5", [32012] = "\xeb\x62", -+ [32013] = "\xeb\x63", [32014] = "\xeb\x64", [32015] = "\xf2\xf6", -+ [32019] = "\xf2\xf5", [32022] = "\xf2\xf3", [32024] = "\xb3\xfb", -+ [32026] = "\xf2\xf2", [32027] = "\xbc\xb2", [32028] = "\xb2\xa9", -+ [32031] = "\xeb\x65", [32032] = "\xeb\x66", [32034] = "\xeb\x67", -+ [32035] = "\xeb\x68", [32036] = "\xeb\x69", [32042] = "\xeb\x6a", -+ [32043] = "\xb9\xe3", [32044] = "\xeb\x6b", [32045] = "\xeb\x6d", -+ [32046] = "\xf2\xfc", [32047] = "\xf2\xfb", [32049] = "\xf2\xfa", -+ [32050] = "\xeb\x6e", [32051] = "\xeb\x6f", [32052] = "\xf2\xf7", -+ [32053] = "\xeb\x6c", [32054] = "\xf2\xfd", [32055] = "\xeb\x70", -+ [32056] = "\xf2\xfe", [32058] = "\xeb\x71", [32064] = "\xf3\xa5", -+ [32065] = "\xf3\xa4", [32067] = "\xeb\x72", [32068] = "\xeb\x73", -+ [32073] = "\xf3\xa6", [32076] = "\xb1\xad", [32077] = "\xf3\xa1", -+ [32078] = "\xf3\xa2", [32079] = "\xeb\x74", [32080] = "\xb9\xf4", -+ [32081] = "\xcc\xb9", [32082] = "\xeb\x76", [32083] = "\xeb\x75", -+ [32084] = "\xf3\xa3", [32085] = "\xeb\x77", [32089] = "\xeb\x78", -+ [32090] = "\xeb\x79", [32091] = "\xeb\x7a", [32092] = "\xcb\xb2", -+ [32095] = "\xf3\xab", [32096] = "\xeb\x7b", [32098] = "\xf3\xa7", -+ [32102] = "\xeb\x7c", [32103] = "\xeb\x7d", [32106] = "\xf3\xac", -+ [32107] = "\xeb\x7e", [32108] = "\xec\x21", [32110] = "\xec\x22", -+ [32115] = "\xec\x23", [32116] = "\xec\x24", [32118] = "\xec\x25", -+ [32119] = "\xf3\xa9", [32121] = "\xf3\xa8", [32122] = "\xec\x26", -+ [32125] = "\xec\x27", [32126] = "\xec\x28", [32127] = "\xb7\xdc", -+ [32130] = "\xec\x29", [32131] = "\xec\x2a", [32133] = "\xec\x2b", -+ [32134] = "\xec\x2c", [32135] = "\xec\x2d", [32136] = "\xec\x2e", -+ [32138] = "\xf3\xad", [32145] = "\xec\x2f", [32148] = "\xf3\xae", -+ [32153] = "\xf3\xaf", [32154] = "\xec\x30", [32155] = "\xf3\xaa", -+ [32156] = "\xec\x31", [32158] = "\xec\x32", [32159] = "\xf2\xf4", -+ [32161] = "\xec\x33", [32162] = "\xf3\xb0", [32164] = "\xc4\xe1", -+ [32165] = "\xec\x34", [32168] = "\xf3\xb4", [32169] = "\xec\x35", -+ [32170] = "\xf3\xb5", [32171] = "\xf3\xb3", [32172] = "\xec\x36", -+ [32175] = "\xec\x37", [32177] = "\xf3\xb2", [32178] = "\xf3\xb8", -+ [32179] = "\xec\x38", [32180] = "\xf3\xb1", [32182] = "\xf3\xb6", -+ [32183] = "\xec\x39", [32185] = "\xec\x3a", [32186] = "\xec\x3b", -+ [32191] = "\xf3\xb7", [32195] = "\xf3\xba", [32196] = "\xec\x3c", -+ [32197] = "\xec\x3d", [32198] = "\xec\x3e", [32199] = "\xec\x3f", -+ [32201] = "\xf3\xb9", [32202] = "\xec\x40", [32206] = "\xec\x41", -+ [32207] = "\xec\x42", [32208] = "\xec\x43", [32213] = "\xec\x44", -+ [32214] = "\xf3\xbc", [32215] = "\xec\x45", [32217] = "\xec\x46", -+ [32219] = "\xec\x47", [32221] = "\xf3\xbd", [32222] = "\xec\x48", -+ [32223] = "\xf3\xbe", [32224] = "\xec\x49", [32226] = "\xcf\xc9", -+ [32227] = "\xec\x4a", [32228] = "\xec\x4b", [32232] = "\xf3\xbb", -+ [32233] = "\xc2\xeb", [32234] = "\xba\xed", [32237] = "\xf3\xbf", -+ [32238] = "\xec\x4c", [32242] = "\xec\x4e", [32247] = "\xec\x4f", -+ [32250] = "\xec\x4d", [32254] = "\xec\x50", [32256] = "\xec\x51", -+ [32257] = "\xec\x52", [32258] = "\xec\x53", [32261] = "\xec\x54", -+ [32262] = "\xec\x55", [32265] = "\xec\x56", [32266] = "\xf3\xc0", -+ [32267] = "\xf3\xc1", [32268] = "\xec\x57", [32269] = "\xec\x58", -+ [32270] = "\xf3\xc2", [32357] = "\xf3\xc3", [32360] = "\xb8\xb4", -+ [32361] = "\xf3\xc4", [32362] = "\xec\x59", [32363] = "\xec\x5a", -+ [32364] = "\xec\x5b", [32365] = "\xf3\xc5", [32367] = "\xbc\xaf", -+ [32368] = "\xec\x5c", [32369] = "\xf3\xc6", [32370] = "\xec\x5d", -+ [32371] = "\xec\x5e", [32372] = "\xec\x5f", [32373] = "\xec\x60", -+ [32375] = "\xec\x61", [32376] = "\xf3\xc7", [32379] = "\xf3\xc8", -+ [32380] = "\xf3\xc9", [32382] = "\xec\x62", [32383] = "\xec\x63", -+ [32385] = "\xf3\xcc", [32386] = "\xf3\xca", [32387] = "\xcf\xbc", -+ [32389] = "\xf3\xcb", [32390] = "\xec\x64", [32391] = "\xce\xef", -+ [32392] = "\xec\x65", [32395] = "\xec\x66", [32397] = "\xf3\xcd", -+ [32398] = "\xec\x67", [32399] = "\xce\xdb", [32404] = "\xec\x68", -+ [32405] = "\xf3\xce", [32406] = "\xc7\xfe", [32408] = "\xec\x69", -+ [32409] = "\xf3\xcf", [32410] = "\xf3\xd1", [32412] = "\xec\x6a", -+ [32413] = "\xf3\xd2", [32414] = "\xec\x6b", [32415] = "\xec\x6c", -+ [32416] = "\xec\x6d", [32419] = "\xec\x6e", [32420] = "\xec\x6f", -+ [32421] = "\xec\x70", [32424] = "\xf3\xd0", [32425] = "\xb9\xed", -+ [32426] = "\xcc\xcd", [32427] = "\xcb\xe3", [32428] = "\xd6\xf7", -+ [32430] = "\xdd\xe0", [32431] = "\xcb\xfb", [32436] = "\xb2\xab", -+ [32438] = "\xec\x71", [32440] = "\xec\x72", [32443] = "\xec\x73", -+ [32444] = "\xf3\xd4", [32445] = "\xb5\xd0", [32446] = "\xf3\xd5", -+ [32447] = "\xf3\xd6", [32448] = "\xf3\xd7", [32449] = "\xf4\x7e", -+ [32450] = "\xb9\xf5", [32452] = "\xf3\xd8", [32453] = "\xec\x74", -+ [32456] = "\xe0\xd4", [32457] = "\xcc\xdb", [32459] = "\xc2\xe3", -+ [32460] = "\xf3\xd9", [32461] = "\xf3\xdb", [32462] = "\xf3\xda", -+ [32463] = "\xec\x75", [32464] = "\xf3\xdc", [32468] = "\xec\x76", -+ [32469] = "\xf3\xdd", [32471] = "\xec\x77", [32472] = "\xf3\xde", -+ [32476] = "\xec\x78", [32477] = "\xec\x79", [32478] = "\xec\x7a", -+ [32479] = "\xf3\xdf", [32480] = "\xec\x7b", [32481] = "\xec\x7c", -+ [32482] = "\xec\x7d", [32484] = "\xf3\xe0", [32485] = "\xec\x7e", -+ [32486] = "\xf3\xe1", [32487] = "\xf3\xe2", [32488] = "\xed\x21", -+ [32489] = "\xf3\xe3", [32491] = "\xf3\xe4", [32492] = "\xf3\xe5", -+ [32493] = "\xf3\xe6", [32495] = "\xed\x22", [32498] = "\xed\x23", -+ [32499] = "\xed\x24", [32503] = "\xf3\xe7", [32504] = "\xf3\xe8", -+ [32505] = "\xed\x25", [32510] = "\xc5\xa4", [32511] = "\xed\x26", -+ [32512] = "\xed\x27", [32513] = "\xed\x28", [32514] = "\xed\x29", -+ [32515] = "\xb8\xdd", [32516] = "\xed\x2a", [32517] = "\xf3\xea", -+ [32518] = "\xed\x2b", [32519] = "\xed\x2c", [32521] = "\xed\x2d", -+ [32522] = "\xed\x2e", [32523] = "\xed\x2f", [32527] = "\xed\x30", -+ [32528] = "\xc1\xcd", [32529] = "\xf3\xeb", [32530] = "\xed\x31", -+ [32534] = "\xed\x32", [32538] = "\xed\x33", [32539] = "\xed\x34", -+ [32540] = "\xf3\xec", [32543] = "\xed\x35", [32545] = "\xed\x36", -+ [32546] = "\xed\x37", [32548] = "\xed\x38", [32551] = "\xed\x39", -+ [32553] = "\xed\x3a", [32554] = "\xed\x3b", [32555] = "\xc9\xa1", -+ [32556] = "\xed\x3c", [32557] = "\xed\x3d", [32558] = "\xf3\xed", -+ [32559] = "\xed\x3e", [32561] = "\xed\x3f", [32563] = "\xed\x40", -+ [32564] = "\xed\x41", [32565] = "\xed\x42", [32566] = "\xed\x43", -+ [32567] = "\xed\x44", [32570] = "\xf3\xee", [32571] = "\xe3\xb7", -+ [32574] = "\xec\xda", [32575] = "\xf0\xed", [32578] = "\xf3\xef", -+ [32579] = "\xed\x45", [32580] = "\xf3\xf0", [32581] = "\xed\x46", -+ [32582] = "\xed\x47", [32583] = "\xed\x48", [32584] = "\xed\x49", -+ [32586] = "\xed\x4a", [32589] = "\xed\x4b", [32590] = "\xed\x4c", -+ [32591] = "\xf3\xf2", [32592] = "\xf3\xf3", [32593] = "\xf3\xf4", -+ [32594] = "\xce\xf0", [32595] = "\xf3\xf1", [32598] = "\xf3\xf5", -+ [32599] = "\xf3\xf6", [32600] = "\xed\x4d", [32601] = "\xed\x4e", -+ [32602] = "\xf3\xf8", [32604] = "\xf3\xf7", [32605] = "\xed\x4f", -+ [32606] = "\xed\x50", [32607] = "\xed\x51", [32608] = "\xed\x52", -+ [32609] = "\xed\x53", [32610] = "\xf3\xfa", [32611] = "\xed\x54", -+ [32613] = "\xed\x55", [32614] = "\xf3\xfb", [32615] = "\xf3\xf9", -+ [32618] = "\xed\x56", [32621] = "\xed\x57", [32637] = "\xce\xb6", -+ [32639] = "\xed\x58", [32640] = "\xed\x59", [32641] = "\xed\x5a", -+ [32642] = "\xed\x5b", [32644] = "\xed\x5c", [32645] = "\xf3\xfc", -+ [32646] = "\xed\x5d", [32647] = "\xed\x5e", [32652] = "\xf3\xfd", -+ [32653] = "\xe3\xd4", [32654] = "\xed\x5f", [32656] = "\xf3\xfe", -+ [32657] = "\xed\x60", [32658] = "\xed\x61", [32659] = "\xed\x62", -+ [32661] = "\xed\x63" -+}; -+ -+static const char from_ucs4_cjkcpt[261][2] = -+{ -+ /* start = 0xf929, end = 0xfa2d */ -+ [ 0] = "\xf4\x45", [ 179] = "\xf4\x72", [ 229] = "\xf4\x34", -+ [ 230] = "\xf4\x37", [ 231] = "\xf4\x38", [ 232] = "\xf4\x3d", -+ [ 233] = "\xf4\x44", [ 234] = "\xf4\x47", [ 235] = "\xf4\x48", -+ [ 236] = "\xf4\x4e", [ 237] = "\xf4\x4f", [ 238] = "\xf4\x53", -+ [ 239] = "\xf4\x55", [ 240] = "\xf4\x56", [ 241] = "\xf4\x57", -+ [ 242] = "\xf4\x58", [ 243] = "\xf4\x5a", [ 244] = "\xf4\x5b", -+ [ 245] = "\xf4\x5e", [ 246] = "\xf4\x60", [ 247] = "\xf4\x62", -+ [ 248] = "\xf4\x63", [ 249] = "\xf4\x65", [ 250] = "\xf4\x69", -+ [ 251] = "\xf4\x6a", [ 252] = "\xf4\x6b", [ 253] = "\xf4\x6d", -+ [ 254] = "\xf4\x6f", [ 255] = "\xf4\x70", [ 256] = "\xf4\x73", -+ [ 257] = "\xf4\x77", [ 258] = "\xf4\x78", [ 259] = "\xf4\x79", -+ [ 260] = "\xf4\x7d" -+}; -+ -+static const char from_ucs4_extra[229][2] = -+{ -+ /* start = 0xff01, end = 0xffe5 */ -+ [ 0] = "\xa1\xaa", [ 1] = "\xf4\x2a", [ 2] = "\xa1\xf4", -+ [ 3] = "\xa1\xf0", [ 4] = "\xa1\xf3", [ 5] = "\xa1\xf5", -+ [ 6] = "\xf4\x29", [ 7] = "\xa1\xca", [ 8] = "\xa1\xcb", -+ [ 9] = "\xa1\xf6", [ 10] = "\xa1\xdc", [ 11] = "\xa1\xa4", -+ [ 12] = "\xa1\xdd", [ 13] = "\xa1\xa5", [ 14] = "\xa1\xbf", -+ [ 15] = "\xa3\xb0", [ 16] = "\xa3\xb1", [ 17] = "\xa3\xb2", -+ [ 18] = "\xa3\xb3", [ 19] = "\xa3\xb4", [ 20] = "\xa3\xb5", -+ [ 21] = "\xa3\xb6", [ 22] = "\xa3\xb7", [ 23] = "\xa3\xb8", -+ [ 24] = "\xa3\xb9", [ 25] = "\xa1\xa7", [ 26] = "\xa1\xa8", -+ [ 27] = "\xa1\xe3", [ 28] = "\xa1\xe1", [ 29] = "\xa1\xe4", -+ [ 30] = "\xa1\xa9", [ 31] = "\xa1\xf7", [ 32] = "\xa3\xc1", -+ [ 33] = "\xa3\xc2", [ 34] = "\xa3\xc3", [ 35] = "\xa3\xc4", -+ [ 36] = "\xa3\xc5", [ 37] = "\xa3\xc6", [ 38] = "\xa3\xc7", -+ [ 39] = "\xa3\xc8", [ 40] = "\xa3\xc9", [ 41] = "\xa3\xca", -+ [ 42] = "\xa3\xcb", [ 43] = "\xa3\xcc", [ 44] = "\xa3\xcd", -+ [ 45] = "\xa3\xce", [ 46] = "\xa3\xcf", [ 47] = "\xa3\xd0", -+ [ 48] = "\xa3\xd1", [ 49] = "\xa3\xd2", [ 50] = "\xa3\xd3", -+ [ 51] = "\xa3\xd4", [ 52] = "\xa3\xd5", [ 53] = "\xa3\xd6", -+ [ 54] = "\xa3\xd7", [ 55] = "\xa3\xd8", [ 56] = "\xa3\xd9", -+ [ 57] = "\xa3\xda", [ 58] = "\xa1\xce", [ 59] = "\xa1\xc0", -+ [ 60] = "\xa1\xcf", [ 61] = "\xa1\xb0", [ 62] = "\xa1\xb2", -+ [ 63] = "\xa1\xae", [ 64] = "\xa3\xe1", [ 65] = "\xa3\xe2", -+ [ 66] = "\xa3\xe3", [ 67] = "\xa3\xe4", [ 68] = "\xa3\xe5", -+ [ 69] = "\xa3\xe6", [ 70] = "\xa3\xe7", [ 71] = "\xa3\xe8", -+ [ 72] = "\xa3\xe9", [ 73] = "\xa3\xea", [ 74] = "\xa3\xeb", -+ [ 75] = "\xa3\xec", [ 76] = "\xa3\xed", [ 77] = "\xa3\xee", -+ [ 78] = "\xa3\xef", [ 79] = "\xa3\xf0", [ 80] = "\xa3\xf1", -+ [ 81] = "\xa3\xf2", [ 82] = "\xa3\xf3", [ 83] = "\xa3\xf4", -+ [ 84] = "\xa3\xf5", [ 85] = "\xa3\xf6", [ 86] = "\xa3\xf7", -+ [ 87] = "\xa3\xf8", [ 88] = "\xa3\xf9", [ 89] = "\xa3\xfa", -+ [ 90] = "\xa1\xd0", [ 91] = "\xa1\xc3", [ 92] = "\xa1\xd1", -+ [ 93] = "\xa1\xc1", [ 96] = "\x8e\xa1", [ 97] = "\x8e\xa2", -+ [ 98] = "\x8e\xa3", [ 99] = "\x8e\xa4", [ 100] = "\x8e\xa5", -+ [ 101] = "\x8e\xa6", [ 102] = "\x8e\xa7", [ 103] = "\x8e\xa8", -+ [ 104] = "\x8e\xa9", [ 105] = "\x8e\xaa", [ 106] = "\x8e\xab", -+ [ 107] = "\x8e\xac", [ 108] = "\x8e\xad", [ 109] = "\x8e\xae", -+ [ 110] = "\x8e\xaf", [ 111] = "\x8e\xb0", [ 112] = "\x8e\xb1", -+ [ 113] = "\x8e\xb2", [ 114] = "\x8e\xb3", [ 115] = "\x8e\xb4", -+ [ 116] = "\x8e\xb5", [ 117] = "\x8e\xb6", [ 118] = "\x8e\xb7", -+ [ 119] = "\x8e\xb8", [ 120] = "\x8e\xb9", [ 121] = "\x8e\xba", -+ [ 122] = "\x8e\xbb", [ 123] = "\x8e\xbc", [ 124] = "\x8e\xbd", -+ [ 125] = "\x8e\xbe", [ 126] = "\x8e\xbf", [ 127] = "\x8e\xc0", -+ [ 128] = "\x8e\xc1", [ 129] = "\x8e\xc2", [ 130] = "\x8e\xc3", -+ [ 131] = "\x8e\xc4", [ 132] = "\x8e\xc5", [ 133] = "\x8e\xc6", -+ [ 134] = "\x8e\xc7", [ 135] = "\x8e\xc8", [ 136] = "\x8e\xc9", -+ [ 137] = "\x8e\xca", [ 138] = "\x8e\xcb", [ 139] = "\x8e\xcc", -+ [ 140] = "\x8e\xcd", [ 141] = "\x8e\xce", [ 142] = "\x8e\xcf", -+ [ 143] = "\x8e\xd0", [ 144] = "\x8e\xd1", [ 145] = "\x8e\xd2", -+ [ 146] = "\x8e\xd3", [ 147] = "\x8e\xd4", [ 148] = "\x8e\xd5", -+ [ 149] = "\x8e\xd6", [ 150] = "\x8e\xd7", [ 151] = "\x8e\xd8", -+ [ 152] = "\x8e\xd9", [ 153] = "\x8e\xda", [ 154] = "\x8e\xdb", -+ [ 155] = "\x8e\xdc", [ 156] = "\x8e\xdd", [ 157] = "\x8e\xde", -+ [ 158] = "\x8e\xdf", [ 223] = "\xa1\xf1", [ 224] = "\xa1\xf2", -+ [ 225] = "\xa2\xcc", [ 226] = "\xa1\xb1", [ 227] = "\xa2\x43", -+ [ 228] = "\xa1\xef" -+}; -+ -+/* Definitions used in the body of the `gconv' function. */ -+#define CHARSET_NAME "EUC-JP-MS//" -+#define FROM_LOOP from_eucjp_ms -+#define TO_LOOP to_eucjp_ms -+#define DEFINE_INIT 1 -+#define DEFINE_FINI 1 -+#define MIN_NEEDED_FROM 1 -+#define MAX_NEEDED_FROM 3 -+#define MIN_NEEDED_TO 4 -+ -+ -+/* First define the conversion function from EUC-JP-MS to UCS4. */ -+#define MIN_NEEDED_INPUT MIN_NEEDED_FROM -+#define MAX_NEEDED_INPUT MAX_NEEDED_FROM -+#define MIN_NEEDED_OUTPUT MIN_NEEDED_TO -+#define LOOPFCT FROM_LOOP -+#define BODY \ -+ { \ -+ uint32_t ch = (uint32_t)inptr[0] & 0xff; \ -+ \ -+ if (ch < 0x8e || (ch >= 0x90 && ch <= 0x9f)) \ -+ ++inptr; \ -+ else if (ch == 0xff) \ -+ { \ -+ /* This is illegal. */ \ -+ if (! ignore_errors_p ()) \ -+ { \ -+ result = __GCONV_ILLEGAL_INPUT; \ -+ break; \ -+ } \ -+ \ -+ ++inptr; \ -+ ++*irreversible; \ -+ continue; \ -+ } \ -+ else \ -+ { \ -+ /* Two or more byte character. First test whether the next \ -+ character is also available. */ \ -+ unsigned char ch2; \ -+ \ -+ if (__builtin_expect (inptr + 1 >= inend, 0)) \ -+ { \ -+ /* The second character is not available. Store the \ -+ intermediate result. */ \ -+ result = __GCONV_INCOMPLETE_INPUT; \ -+ break; \ -+ } \ -+ \ -+ ch2 = (unsigned char)inptr[1]; \ -+ \ -+ /* All second bytes of a multibyte character must be >= 0xa1. */ \ -+ if (__builtin_expect (ch2 < 0xa1, 0)) \ -+ { \ -+ /* This is an illegal character. */ \ -+ if (! ignore_errors_p ()) \ -+ { \ -+ result = __GCONV_ILLEGAL_INPUT; \ -+ break; \ -+ } \ -+ \ -+ ++inptr; \ -+ ++*irreversible; \ -+ continue; \ -+ } \ -+ \ -+ if (__builtin_expect(ch == 0x8e, 0)) \ -+ { \ -+ /* This is code set 2: half-width katakana. */ \ -+ ch = jisx0201_to_ucs4 (ch2); \ -+ /*if (__builtin_expect (ch, 0) == __UNKNOWN_10646_CHAR)*/ \ -+ if (__builtin_expect (ch == __UNKNOWN_10646_CHAR, 0)) \ -+ { \ -+ /* Illegal character. */ \ -+ if (! ignore_errors_p ()) \ -+ { \ -+ /* This is an illegal character. */ \ -+ result = __GCONV_ILLEGAL_INPUT; \ -+ break; \ -+ } \ -+ } \ -+ \ -+ inptr += 2; \ -+ } \ -+ else \ -+ { \ -+ const unsigned char *endp; \ -+ int mblen = 1; \ -+ \ -+ if (__builtin_expect(ch == 0x8f, 0)) \ -+ { \ -+ if (inend - inptr < 3) \ -+ ch = 0; \ -+ else \ -+ { \ -+ unsigned char ch3 = (unsigned char)inptr[2]; \ -+ mblen = 3; \ -+ \ -+ if (__builtin_expect(ch3 == 0xff, 0) \ -+ || __builtin_expect(ch3 < 0xa1, 0)) \ -+ ch = __UNKNOWN_10646_CHAR; \ -+ else if (ch2 <= 0xf2) \ -+ { \ -+ endp = inptr + 1; \ -+ \ -+ /* This is code set 3: JIS X 0212-1990. */ \ -+ ch = jisx0212_to_ucs4 (&endp, inend - endp, 0x80); \ -+ \ -+ if (ch == 0x00a6) /* BROKEN BAR */ \ -+ ch = 0xffe4; /* FULLWIDTH BROKEN BAR */ \ -+ else if (ch == __UNKNOWN_10646_CHAR) \ -+ endp -= 1; \ -+ } \ -+ else if (ch2 <= 0xf4) \ -+ { \ -+ int idx = ((ch2-0xf3)*94 + ch3-0xa1) - (94-12); \ -+ \ -+ if (0 <= idx && idx < 12 + 94) \ -+ { \ -+ if ((ch = cjk_block_ibm[idx]) != 0) \ -+ endp = inptr + mblen; \ -+ else \ -+ ch = __UNKNOWN_10646_CHAR; \ -+ } \ -+ else \ -+ ch = __UNKNOWN_10646_CHAR; \ -+ } \ -+ else if (ch2 <= 0xfe) \ -+ { \ -+ ch = 0xe3ac + (ch2 - 0xf5) * 94 + (ch3 - 0xa1); \ -+ endp = inptr + mblen; \ -+ } \ -+ else \ -+ ch = __UNKNOWN_10646_CHAR; \ -+ } \ -+ } \ -+ else if (__builtin_expect(0xa1 <= ch, 1)) \ -+ { \ -+ mblen = 2; \ -+ \ -+ if (inend - inptr < 2) \ -+ ch = 0; \ -+ else if (__builtin_expect(ch2 == 0xff, 0)) \ -+ ch = __UNKNOWN_10646_CHAR; \ -+ else if (ch <= 0xa8) \ -+ { \ -+ if ((ch = cjk_block1[(ch-0xa1)*94 + (ch2-0xa1)]) != 0) \ -+ endp = inptr + mblen; \ -+ else \ -+ ch = __UNKNOWN_10646_CHAR; \ -+ } \ -+ else if (ch == 0xad) \ -+ { \ -+ if ((ch = cjk_block2[(ch-0xad)*94 + (ch2-0xa1)]) != 0) \ -+ endp = inptr + mblen; \ -+ else \ -+ ch = __UNKNOWN_10646_CHAR; \ -+ } \ -+ else if (ch <= 0xf4) \ -+ { \ -+ endp = inptr; \ -+ \ -+ /* This is code set 1: JIS X 0208. */ \ -+ ch = jisx0208_to_ucs4 (&endp, inend - inptr, 0x80); \ -+ } \ -+ else if (ch <= 0xfe) \ -+ { \ -+ ch = 0xe000 + (ch - 0xf5) * 94 + (ch2 - 0xa1); \ -+ endp = inptr + mblen; \ -+ } \ -+ else \ -+ ch = __UNKNOWN_10646_CHAR; \ -+ } \ -+ else \ -+ ch = __UNKNOWN_10646_CHAR; \ -+ \ -+ if (__builtin_expect (ch, 1) == 0) \ -+ { \ -+ /* Not enough input available. */ \ -+ result = __GCONV_INCOMPLETE_INPUT; \ -+ break; \ -+ } \ -+ if (__builtin_expect (ch, 0) == __UNKNOWN_10646_CHAR) \ -+ { \ -+ /* Illegal character. */ \ -+ if (! ignore_errors_p ()) \ -+ { \ -+ /* This is an illegal character. */ \ -+ result = __GCONV_ILLEGAL_INPUT; \ -+ break; \ -+ } \ -+ \ -+ inptr += mblen; \ -+ ++*irreversible; \ -+ continue; \ -+ } \ -+ inptr = endp; \ -+ } \ -+ } \ -+ \ -+ put32 (outptr, ch); \ -+ outptr += 4; \ -+ } -+#define LOOP_NEED_FLAGS -+#include -+ -+ -+/* Next, define the other direction. */ -+#define MIN_NEEDED_INPUT MIN_NEEDED_TO -+#define MIN_NEEDED_OUTPUT MIN_NEEDED_FROM -+#define MAX_NEEDED_OUTPUT MAX_NEEDED_FROM -+#define LOOPFCT TO_LOOP -+#define BODY \ -+ { \ -+ uint32_t ch = get32 (inptr); \ -+ const unsigned char *cp; \ -+ unsigned char pua[2]; \ -+ \ -+ if (ch >= (sizeof (from_ucs4_lat1) / sizeof (from_ucs4_lat1[0]))) \ -+ { \ -+ if (ch >= 0x0100 && ch <= 0x045f) \ -+ cp = from_ucs4_greek[ch - 0x0100]; \ -+ else if (ch >= 0x2010 && ch <= 0x9fa5) \ -+ cp = from_ucs4_cjk[ch - 0x2010]; \ -+ else if (ch >= 0xe000 && ch <= 0xe757) \ -+ { \ -+ if (ch < 0xe3ac) \ -+ { \ -+ pua[0] = (ch - 0xe000) / 94 + 0xf5; \ -+ pua[1] = (ch - 0xe000) % 94 + 0xa1; \ -+ } \ -+ else \ -+ { \ -+ pua[0] = (ch - 0xe3ac) / 94 + 0xf5; \ -+ pua[1] = (ch - 0xe3ac) % 94 + 0x21; \ -+ } \ -+ cp = (const unsigned char *)&pua[0]; \ -+ } \ -+ else if (ch >= 0xf929 && ch <= 0xfa2d) \ -+ cp = from_ucs4_cjkcpt[ch - 0xf929]; \ -+ else if (__builtin_expect (ch >= 0xff01, 1) \ -+ && __builtin_expect (ch <= 0xffe5, 1)) \ -+ cp = from_ucs4_extra[ch - 0xff01]; \ -+ else \ -+ { \ -+ UNICODE_TAG_HANDLER (ch, 4); \ -+ /* Illegal character. */ \ -+ cp = ""; \ -+ } \ -+ } \ -+ else \ -+ cp = from_ucs4_lat1[ch]; \ -+ \ -+ if (__builtin_expect (cp[0], '\1') == '\0' && ch != 0) \ -+ { \ -+ /* Illegal character. */ \ -+ STANDARD_TO_LOOP_ERR_HANDLER (4); \ -+ } \ -+ else \ -+ { \ -+ *outptr = cp[0]; \ -+ /* Now test for a possible second byte and write this if possible. */\ -+ if (cp[1] != '\0') \ -+ { \ -+ if (__builtin_expect (outptr + 1 >= outend, 0)) \ -+ { \ -+ /* The result does not fit into the buffer. */ \ -+ result = __GCONV_FULL_OUTPUT; \ -+ break; \ -+ } \ -+ if (__builtin_expect (cp[1] < 0x80, 0)) \ -+ { \ -+ if (__builtin_expect (outptr + 2 >= outend, 0)) \ -+ { \ -+ /* The result does not fit into the buffer. */ \ -+ result = __GCONV_FULL_OUTPUT; \ -+ break; \ -+ } \ -+ *outptr = 0x8f; \ -+ *++outptr = cp[0]; \ -+ *++outptr = cp[1] | 0x80; \ -+ } \ -+ else \ -+ *++outptr = cp[1]; \ -+ } \ -+ ++outptr; \ -+ } \ -+ \ -+ inptr += 4; \ -+ } -+#define LOOP_NEED_FLAGS -+#include -+ -+ -+/* Now define the toplevel functions. */ -+#include ---- glibc-2.3.2/iconvdata/euc-kr.c 2002-12-02 16:26:10.000000000 -0500 -+++ glibc-2.3.2/iconvdata/euc-kr.c 2003-08-21 08:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Mapping tables for EUC-KR handling. -- Copyright (C) 1998, 1999, 2000-2002 Free Software Foundation, Inc. -+ Copyright (C) 1998, 1999, 2000-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jungshik Shin - and Ulrich Drepper , 1998. -@@ -25,6 +25,7 @@ - - - static inline void -+__attribute ((always_inline)) - euckr_from_ucs4 (uint32_t ch, unsigned char *cp) - { - if (ch > 0x9f) ---- glibc-2.3.2/iconvdata/euc-tw.c 2002-12-02 16:26:10.000000000 -0500 -+++ glibc-2.3.2/iconvdata/euc-tw.c 2003-04-12 11:39:42.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Mapping tables for EUC-TW handling. -- Copyright (C) 1998, 1999, 2000-2002 Free Software Foundation, Inc. -+ Copyright (C) 1998, 1999, 2000-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1998. - -@@ -143,7 +143,7 @@ - if (__builtin_expect (found, 1) == 0) \ - { \ - /* We ran out of space. */ \ -- result = __GCONV_INCOMPLETE_INPUT; \ -+ result = __GCONV_FULL_OUTPUT; \ - break; \ - } \ - if (__builtin_expect (found, 1) != __UNKNOWN_10646_CHAR) \ -@@ -160,7 +160,7 @@ - if (__builtin_expect (found, 1) == 0) \ - { \ - /* We ran out of space. */ \ -- result = __GCONV_INCOMPLETE_INPUT; \ -+ result = __GCONV_FULL_OUTPUT; \ - break; \ - } \ - if (__builtin_expect (found, 0) == __UNKNOWN_10646_CHAR) \ ---- glibc-2.3.2/iconvdata/extra-module.mk 2001-03-18 03:02:29.000000000 -0500 -+++ glibc-2.3.2/iconvdata/extra-module.mk 2003-04-28 08:20:35.000000000 -0400 -@@ -3,7 +3,8 @@ - - extra-objs := $(extra-objs) $(patsubst %,%.os,$($(mod)-routines)) - --$(objpfx)$(mod).so: $(addprefix $(objpfx),$(addsuffix .os,$($(mod)-routines))) -+$(objpfx)$(mod).so: $(addprefix $(objpfx),$(addsuffix .os,$($(mod)-routines)))\ -+ $(common-objpfx)shlib.lds - $(build-module) - - # Depend on libc.so so a DT_NEEDED is generated in the shared objects. ---- glibc-2.3.2/iconvdata/gb2312.h 2001-07-07 15:20:59.000000000 -0400 -+++ glibc-2.3.2/iconvdata/gb2312.h 2003-08-21 08:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Access functions for GB2312 conversion. -- Copyright (C) 1998, 1999 Free Software Foundation, Inc. -+ Copyright (C) 1998, 1999, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1998. - -@@ -30,6 +30,7 @@ - - - static inline uint32_t -+__attribute ((always_inline)) - gb2312_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset) - { - unsigned char ch = *(*s); -@@ -67,6 +68,7 @@ - extern const char __gb2312_from_ucs4_tab9[][2]; - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_gb2312 (uint32_t wch, unsigned char *s, size_t avail) - { - unsigned int ch = (unsigned int) wch; ---- glibc-2.3.2/iconvdata/gconv-modules 2003-01-14 04:32:35.000000000 -0500 -+++ glibc-2.3.2/iconvdata/gconv-modules 2003-08-21 08:37:01.000000000 -0400 -@@ -393,6 +393,8 @@ - alias ISO8859-15// ISO-8859-15// - alias ISO885915// ISO-8859-15// - alias ISO-IR-203// ISO-8859-15// -+alias ISO_8859-15// ISO-8859-15// -+alias LATIN-9// ISO-8859-15// - alias ISO_8859-15:1998// ISO-8859-15// - module ISO-8859-15// INTERNAL ISO8859-15 1 - module INTERNAL ISO-8859-15// ISO8859-15 1 -@@ -403,6 +405,8 @@ - alias ISO-IR-226// ISO-8859-16// - alias LATIN10// ISO-8859-16// - alias L10// ISO-8859-16// -+alias ISO_8859-16:2001// ISO-8859-16// -+alias ISO_8859-16// ISO-8859-16// - module ISO-8859-16// INTERNAL ISO8859-16 1 - module INTERNAL ISO-8859-16// ISO8859-16 1 - -@@ -433,13 +437,21 @@ - # from to module cost - alias SHIFT-JIS// SJIS// - alias SHIFT_JIS// SJIS// --alias CP932// SJIS// - alias MS_KANJI// SJIS// - alias CSSHIFTJIS// SJIS// - module SJIS// INTERNAL SJIS 1 - module INTERNAL SJIS// SJIS 1 - - # from to module cost -+alias WINDOWS-31J// CP932// -+alias MS932// CP932// -+alias SJIS-OPEN// CP932// -+alias SJIS-WIN// CP932// -+alias CSWINDOWS31J// CP932// -+module CP932// INTERNAL CP932 1 -+module INTERNAL CP932// CP932 1 -+ -+# from to module cost - alias KOI8// KOI-8// - module KOI-8// INTERNAL KOI-8 1 - module INTERNAL KOI-8// KOI-8 1 -@@ -996,6 +1008,7 @@ - module INTERNAL IBM1046// IBM1046 1 - - # from to module cost -+alias IBM-1047// IBM1047// - alias CP1047// IBM1047// - alias 1047// IBM1047// - alias OSF10020417// IBM1047// -@@ -1100,6 +1113,13 @@ - module INTERNAL BIG5HKSCS// BIG5HKSCS 1 - - # from to module cost -+alias EUCJP-MS// EUC-JP-MS// -+alias EUCJP-OPEN// EUC-JP-MS// -+alias EUCJP-WIN// EUC-JP-MS// -+module EUC-JP-MS// INTERNAL EUC-JP-MS 1 -+module INTERNAL EUC-JP-MS// EUC-JP-MS 1 -+ -+# from to module cost - alias EUCJP// EUC-JP// - alias CSEUCPKDFMTJAPANESE// EUC-JP// - alias OSF00030010// EUC-JP// -@@ -1122,6 +1142,8 @@ - # from to module cost - alias GB13000// GBK// - alias CP936// GBK// -+alias MS936// GBK// -+alias WINDOWS-936// GBK// - module GBK// INTERNAL GBK 1 - module INTERNAL GBK// GBK 1 - ---- glibc-2.3.2/iconvdata/iso-ir-165.h 2001-07-07 15:21:02.000000000 -0400 -+++ glibc-2.3.2/iconvdata/iso-ir-165.h 2003-08-21 08:37:01.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Tables for conversion to and from ISO-IR-165. - converting from UCS using gaps. -- Copyright (C) 2000 Free Software Foundation, Inc. -+ Copyright (C) 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2000. - -@@ -40,6 +40,7 @@ - /* XXX If we at some point need an offset value to decode the byte - sequences another parameter can be added. */ - static inline uint32_t -+__attribute ((always_inline)) - isoir165_to_ucs4 (const unsigned char **s, size_t avail) - { - unsigned char ch = *(*s); -@@ -70,6 +71,7 @@ - extern const char __isoir165_from_tab[]; - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_isoir165 (uint32_t wch, char *s, size_t avail) - { - unsigned int ch = (unsigned int) wch; ---- glibc-2.3.2/iconvdata/jis0201.h 2001-07-07 15:21:02.000000000 -0400 -+++ glibc-2.3.2/iconvdata/jis0201.h 2003-08-21 08:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Access functions for JISX0201 conversion. -- Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. -+ Copyright (C) 1997, 1998, 1999, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1997. - -@@ -26,6 +26,7 @@ - - - static inline uint32_t -+__attribute ((always_inline)) - jisx0201_to_ucs4 (char ch) - { - uint32_t val = __jisx0201_to_ucs4[(unsigned char) ch]; -@@ -38,6 +39,7 @@ - - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_jisx0201 (uint32_t wch, char *s) - { - char ch; ---- glibc-2.3.2/iconvdata/jis0208.h 2001-07-07 15:21:02.000000000 -0400 -+++ glibc-2.3.2/iconvdata/jis0208.h 2003-08-21 08:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Access functions for JISX0208 conversion. -- Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1997, 1998, 1999, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1997. - -@@ -43,6 +43,7 @@ - - - static inline uint32_t -+__attribute ((always_inline)) - jisx0208_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset) - { - unsigned char ch = *(*s); -@@ -70,6 +71,7 @@ - - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_jisx0208 (uint32_t wch, char *s, size_t avail) - { - unsigned int ch = (unsigned int) wch; ---- glibc-2.3.2/iconvdata/jis0212.h 2001-07-07 15:21:02.000000000 -0400 -+++ glibc-2.3.2/iconvdata/jis0212.h 2003-08-21 08:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Access functions for JISX0212 conversion. -- Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. -+ Copyright (C) 1997, 1998, 1999, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1997. - -@@ -42,6 +42,7 @@ - - - static inline uint32_t -+__attribute ((always_inline)) - jisx0212_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset) - { - const struct jisx0212_idx *rp = __jisx0212_to_ucs_idx; -@@ -77,6 +78,7 @@ - - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_jisx0212 (uint32_t wch, char *s, size_t avail) - { - const struct jisx0212_idx *rp = __jisx0212_from_ucs_idx; ---- glibc-2.3.2/iconvdata/jisx0213.h 2002-04-20 03:41:04.000000000 -0400 -+++ glibc-2.3.2/iconvdata/jisx0213.h 2003-08-21 08:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Functions for JISX0213 conversion. -- Copyright (C) 2002 Free Software Foundation, Inc. -+ Copyright (C) 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Bruno Haible , 2002. - -@@ -32,6 +32,7 @@ - #define NELEMS(arr) (sizeof (arr) / sizeof (arr[0])) - - static inline uint32_t -+__attribute ((always_inline)) - jisx0213_to_ucs4 (unsigned int row, unsigned int col) - { - uint32_t val; -@@ -64,6 +65,7 @@ - } - - static inline uint16_t -+__attribute ((always_inline)) - ucs4_to_jisx0213 (uint32_t ucs) - { - if (ucs < NELEMS (__jisx0213_from_ucs_level1) << 6) ---- glibc-2.3.2/iconvdata/ksc5601.h 2001-07-07 15:21:02.000000000 -0400 -+++ glibc-2.3.2/iconvdata/ksc5601.h 2003-08-21 08:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Access functions for KS C 5601-1992 based encoding conversion. -- Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1998, 1999, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -44,6 +44,7 @@ - - - static inline uint32_t -+__attribute ((always_inline)) - ksc5601_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset) - { - unsigned char ch = **s; -@@ -85,6 +86,7 @@ - } - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_ksc5601_hangul (uint32_t wch, unsigned char *s, size_t avail) - { - int l = 0; -@@ -116,6 +118,7 @@ - - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_ksc5601_hanja (uint32_t wch, unsigned char *s, size_t avail) - { - int l = 0; -@@ -146,6 +149,7 @@ - } - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_ksc5601_sym (uint32_t wch, unsigned char *s, size_t avail) - { - int l = 0; -@@ -177,6 +181,7 @@ - - - static inline size_t -+__attribute ((always_inline)) - ucs4_to_ksc5601 (uint32_t wch, unsigned char *s, size_t avail) - { - if (wch >= 0xac00 && wch <= 0xd7a3) ---- glibc-2.3.2/iconvdata/testdata/IBM1160.~1~ 2001-09-20 01:06:15.000000000 -0400 -+++ glibc-2.3.2/iconvdata/testdata/IBM1160.~1~ 1969-12-31 19:00:00.000000000 -0500 -@@ -1,14 +0,0 @@ -- ! " # $ % & ' ( ) * + , - . / 0 --1 2 3 4 5 6 7 8 9 : ; < = > ? @ A --B C D E F G H I J K L M N O P Q R --S T U V W X Y Z [ \ ] ^ _ ` a b c --d e f g h i j k l m n o p q r s t --u v w x y z { | } ~  € ‚ ƒ „ … --† ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ “ ” • – --— ˜ ™ š › œ ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § --¨ © ª « ¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ --¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É --Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú --Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë --ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü --ý þ ÿ ---- glibc-2.3.2/iconvdata/tst-tables.sh 2003-01-14 04:26:51.000000000 -0500 -+++ glibc-2.3.2/iconvdata/tst-tables.sh 2003-08-21 08:37:01.000000000 -0400 -@@ -209,6 +209,7 @@ - # Multibyte encodings come here - # - SJIS SHIFT_JIS -+ CP932 WINDOWS-31J - #IBM932 This converter looks quite strange - #IBM943 This converter looks quite strange - EUC-KR -@@ -217,6 +218,7 @@ - BIG5 - BIG5HKSCS BIG5-HKSCS - EUC-JP -+ EUC-JP-MS - EUC-CN GB2312 - GBK - EUC-TW ---- glibc-2.3.2/iconvdata/utf-7.c 2002-06-28 15:43:39.000000000 -0400 -+++ glibc-2.3.2/iconvdata/utf-7.c 2003-08-21 08:37:02.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Conversion module for UTF-7. -- Copyright (C) 2000-2002 Free Software Foundation, Inc. -+ Copyright (C) 2000-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Bruno Haible , 2000. - -@@ -93,7 +93,7 @@ - - - /* Converts a value in the range 0..63 to a base64 encoded char. */ --static inline unsigned char -+static unsigned char - base64 (unsigned int i) - { - if (i < 26) ---- glibc-2.3.2/include/atomic.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/include/atomic.h 2003-05-12 12:13:04.000000000 -0400 -@@ -0,0 +1,246 @@ -+/* Internal macros for atomic operations for GNU C Library. -+ Copyright (C) 2002, 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Ulrich Drepper , 2002. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _ATOMIC_H -+#define _ATOMIC_H 1 -+ -+#include -+ -+#include -+ -+/* Wrapper macros to call pre_NN_post (mem, ...) where NN is the -+ bit width of *MEM. The calling macro puts parens around MEM -+ and following args. */ -+#define __atomic_val_bysize(pre, post, mem, ...) \ -+ ({ \ -+ __typeof (*mem) __result; \ -+ if (sizeof (*mem) == 1) \ -+ __result = pre##_8_##post (mem, __VA_ARGS__); \ -+ else if (sizeof (*mem) == 2) \ -+ __result = pre##_16_##post (mem, __VA_ARGS__); \ -+ else if (sizeof (*mem) == 4) \ -+ __result = pre##_32_##post (mem, __VA_ARGS__); \ -+ else if (sizeof (*mem) == 8) \ -+ __result = pre##_64_##post (mem, __VA_ARGS__); \ -+ else \ -+ abort (); \ -+ __result; \ -+ }) -+#define __atomic_bool_bysize(pre, post, mem, ...) \ -+ ({ \ -+ int __result; \ -+ if (sizeof (*mem) == 1) \ -+ __result = pre##_8_##post (mem, __VA_ARGS__); \ -+ else if (sizeof (*mem) == 2) \ -+ __result = pre##_16_##post (mem, __VA_ARGS__); \ -+ else if (sizeof (*mem) == 4) \ -+ __result = pre##_32_##post (mem, __VA_ARGS__); \ -+ else if (sizeof (*mem) == 8) \ -+ __result = pre##_64_##post (mem, __VA_ARGS__); \ -+ else \ -+ abort (); \ -+ __result; \ -+ }) -+ -+ -+/* Atomically store NEWVAL in *MEM if *MEM is equal to OLDVAL. -+ Return the old *MEM value. */ -+#if !defined atomic_compare_and_exchange_val_acq \ -+ && defined __arch_compare_and_exchange_val_32_acq -+# define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \ -+ __atomic_val_bysize (__arch_compare_and_exchange_val,acq, \ -+ mem, newval, oldval) -+#endif -+ -+ -+#ifndef atomic_compare_and_exchange_val_rel -+# define atomic_compare_and_exchange_val_rel(mem, oldval, newval) \ -+ atomic_compare_and_exchange_val_acq (mem, oldval, newval) -+#endif -+ -+ -+/* Atomically store NEWVAL in *MEM if *MEM is equal to OLDVAL. -+ Return zero if *MEM was changed or non-zero if no exchange happened. */ -+#ifndef atomic_compare_and_exchange_bool_acq -+# ifdef __arch_compare_and_exchange_bool_32_acq -+# define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \ -+ __atomic_bool_bysize (__arch_compare_and_exchange_bool,acq, \ -+ mem, newval, oldval) -+# else -+# define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \ -+ ({ /* Cannot use __oldval here, because macros later in this file might \ -+ call this macro with __oldval argument. */ \ -+ __typeof (oldval) __old = (oldval); \ -+ atomic_compare_and_exchange_val_acq (mem, newval, __old) != __old; \ -+ }) -+# endif -+#endif -+ -+ -+#ifndef atomic_compare_and_exchange_bool_rel -+# define atomic_compare_and_exchange_bool_rel(mem, oldval, newval) \ -+ atomic_compare_and_exchange_bool_acq (mem, oldval, newval) -+#endif -+ -+ -+/* Store NEWVALUE in *MEM and return the old value. */ -+#ifndef atomic_exchange_acq -+# define atomic_exchange_acq(mem, newvalue) \ -+ ({ __typeof (*(mem)) __oldval; \ -+ __typeof (mem) __memp = (mem); \ -+ __typeof (*(mem)) __value = (newvalue); \ -+ \ -+ do \ -+ __oldval = (*__memp); \ -+ while (__builtin_expect (atomic_compare_and_exchange_bool_acq (__memp, \ -+ __value, \ -+ __oldval),\ -+ 0)); \ -+ \ -+ __oldval; }) -+#endif -+ -+#ifndef atomic_exchange_rel -+# define atomic_exchange_rel(mem, newvalue) atomic_exchange_acq (mem, newvalue) -+#endif -+ -+ -+/* Add VALUE to *MEM and return the old value of *MEM. */ -+#ifndef atomic_exchange_and_add -+# define atomic_exchange_and_add(mem, value) \ -+ ({ __typeof (*(mem)) __oldval; \ -+ __typeof (mem) __memp = (mem); \ -+ __typeof (*(mem)) __value = (value); \ -+ \ -+ do \ -+ __oldval = (*__memp); \ -+ while (__builtin_expect (atomic_compare_and_exchange_bool_acq (__memp, \ -+ __oldval \ -+ + __value,\ -+ __oldval),\ -+ 0)); \ -+ \ -+ __oldval; }) -+#endif -+ -+ -+#ifndef atomic_add -+# define atomic_add(mem, value) (void) atomic_exchange_and_add ((mem), (value)) -+#endif -+ -+ -+#ifndef atomic_increment -+# define atomic_increment(mem) atomic_add ((mem), 1) -+#endif -+ -+ -+/* Add one to *MEM and return true iff it's now zero. */ -+#ifndef atomic_increment_and_test -+# define atomic_increment_and_test(mem) \ -+ (atomic_exchange_and_add ((mem), 1) + 1 == 0) -+#endif -+ -+ -+#ifndef atomic_decrement -+# define atomic_decrement(mem) atomic_add ((mem), -1) -+#endif -+ -+ -+/* Subtract 1 from *MEM and return true iff it's now zero. */ -+#ifndef atomic_decrement_and_test -+# define atomic_decrement_and_test(mem) \ -+ (atomic_exchange_and_add ((mem), -1) == 1) -+#endif -+ -+ -+/* Decrement *MEM if it is > 0, and return the old value. */ -+#ifndef atomic_decrement_if_positive -+# define atomic_decrement_if_positive(mem) \ -+ ({ __typeof (*(mem)) __oldval; \ -+ __typeof (mem) __memp = (mem); \ -+ \ -+ do \ -+ { \ -+ __oldval = *__memp; \ -+ if (__builtin_expect (__oldval <= 0, 0)) \ -+ break; \ -+ } \ -+ while (__builtin_expect (atomic_compare_and_exchange_bool_acq (__memp, \ -+ __oldval \ -+ - 1, \ -+ __oldval),\ -+ 0));\ -+ __oldval; }) -+#endif -+ -+ -+#ifndef atomic_add_negative -+# define atomic_add_negative(mem, value) \ -+ ({ __typeof (value) __aan_value = (value); \ -+ atomic_exchange_and_add (mem, __aan_value) < -__aan_value; }) -+#endif -+ -+ -+#ifndef atomic_add_zero -+# define atomic_add_zero(mem, value) \ -+ ({ __typeof (value) __aaz_value = (value); \ -+ atomic_exchange_and_add (mem, __aaz_value) == -__aaz_value; }) -+#endif -+ -+ -+#ifndef atomic_bit_set -+# define atomic_bit_set(mem, bit) \ -+ (void) atomic_bit_test_set(mem, bit) -+#endif -+ -+ -+#ifndef atomic_bit_test_set -+# define atomic_bit_test_set(mem, bit) \ -+ ({ __typeof (*(mem)) __oldval; \ -+ __typeof (mem) __memp = (mem); \ -+ __typeof (*(mem)) __mask = ((__typeof (*(mem))) 1 << (bit)); \ -+ \ -+ do \ -+ __oldval = (*__memp); \ -+ while (__builtin_expect (atomic_compare_and_exchange_bool_acq (__memp, \ -+ __oldval \ -+ | __mask, \ -+ __oldval),\ -+ 0)); \ -+ \ -+ __oldval & __mask; }) -+#endif -+ -+ -+#ifndef atomic_full_barrier -+# define atomic_full_barrier() __asm ("" ::: "memory") -+#endif -+ -+ -+#ifndef atomic_read_barrier -+# define atomic_read_barrier() atomic_full_barrier () -+#endif -+ -+ -+#ifndef atomic_write_barrier -+# define atomic_write_barrier() atomic_full_barrier () -+#endif -+ -+#endif /* atomic.h */ ---- glibc-2.3.2/include/ctype.h 2002-09-02 14:48:03.000000000 -0400 -+++ glibc-2.3.2/include/ctype.h 2003-08-21 08:37:02.000000000 -0400 -@@ -25,31 +25,43 @@ - CTYPE_EXTERN_INLINE const uint16_t ** __attribute__ ((const)) - __ctype_b_loc (void) - { -- const uint16_t **tablep = -- (const uint16_t **) __libc_tsd_address (CTYPE_B); -- if (__builtin_expect (*tablep == NULL, 0)) -- *tablep = (const uint16_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_CLASS) + 128; -- return tablep; -+ union -+ { -+ void **ptr; -+ const uint16_t **tablep; -+ } u; -+ u.ptr = __libc_tsd_address (CTYPE_B); -+ if (__builtin_expect (*u.tablep == NULL, 0)) -+ *u.tablep = (const uint16_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_CLASS) + 128; -+ return u.tablep; - } - - CTYPE_EXTERN_INLINE const int32_t ** __attribute__ ((const)) - __ctype_toupper_loc (void) - { -- const int32_t **tablep = -- (const int32_t **) __libc_tsd_address (CTYPE_TOUPPER); -- if (__builtin_expect (*tablep == NULL, 0)) -- *tablep = ((int32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOUPPER) + 128); -- return tablep; -+ union -+ { -+ void **ptr; -+ const int32_t **tablep; -+ } u; -+ u.ptr = __libc_tsd_address (CTYPE_TOUPPER); -+ if (__builtin_expect (*u.tablep == NULL, 0)) -+ *u.tablep = ((int32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOUPPER) + 128); -+ return u.tablep; - } - - CTYPE_EXTERN_INLINE const int32_t ** __attribute__ ((const)) - __ctype_tolower_loc (void) - { -- const int32_t **tablep = -- (const int32_t **) __libc_tsd_address (CTYPE_TOLOWER); -- if (__builtin_expect (*tablep == NULL, 0)) -- *tablep = ((int32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOLOWER) + 128); -- return tablep; -+ union -+ { -+ void **ptr; -+ const int32_t **tablep; -+ } u; -+ u.ptr = __libc_tsd_address (CTYPE_TOLOWER); -+ if (__builtin_expect (*u.tablep == NULL, 0)) -+ *u.tablep = ((int32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOLOWER) + 128); -+ return u.tablep; - } - - # endif /* Not NOT_IN_libc. */ ---- glibc-2.3.2/include/dlfcn.h 2002-11-19 03:18:00.000000000 -0500 -+++ glibc-2.3.2/include/dlfcn.h 2003-08-21 08:37:02.000000000 -0400 -@@ -1,5 +1,6 @@ - #ifndef _DLFCN_H - #include -+#include /* For ElfW. */ - - /* Internally used flag. */ - #define __RTLD_DLOPEN 0x80000000 -@@ -13,11 +14,17 @@ - extern void *__libc_dlopen_mode (__const char *__name, int __mode); - extern void *__libc_dlsym (void *__map, __const char *__name); - extern int __libc_dlclose (void *__map); -+libc_hidden_proto (__libc_dlopen_mode) -+libc_hidden_proto (__libc_dlsym) -+libc_hidden_proto (__libc_dlclose) - - /* Locate shared object containing the given address. */ --extern int _dl_addr (const void *address, Dl_info *info) -+#ifdef ElfW -+extern int _dl_addr (const void *address, Dl_info *info, -+ struct link_map **mapp, const ElfW(Sym) **symbolp) - internal_function; - libc_hidden_proto (_dl_addr) -+#endif - - /* Open the shared object NAME, relocate it, and run its initializer if it - hasn't already been run. MODE is as for `dlopen' (see ). If ---- glibc-2.3.2/include/fcntl.h 2003-01-12 22:57:51.000000000 -0500 -+++ glibc-2.3.2/include/fcntl.h 2003-09-19 22:37:01.000000000 -0400 -@@ -9,6 +9,7 @@ - libc_hidden_proto (__libc_open) - extern int __libc_creat (const char *file, mode_t mode); - extern int __libc_fcntl (int fd, int cmd, ...); -+extern int __fcntl_nocancel (int fd, int cmd, ...) attribute_hidden; - libc_hidden_proto (__libc_fcntl) - extern int __open (__const char *__file, int __oflag, ...); - libc_hidden_proto (__open) ---- glibc-2.3.2/include/features.h 2002-11-04 04:34:54.000000000 -0500 -+++ glibc-2.3.2/include/features.h 2003-05-24 14:06:21.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991-1993,1995-2000,2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1991-1993,1995-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -188,6 +188,10 @@ - # define __USE_POSIX199506 1 - #endif - -+#if (_POSIX_C_SOURCE - 0) >= 200112L -+# define __USE_XOPEN2K 1 -+#endif -+ - #ifdef _XOPEN_SOURCE - # define __USE_XOPEN 1 - # if (_XOPEN_SOURCE - 0) >= 500 ---- glibc-2.3.2/include/gmp.h 2000-12-05 12:28:08.000000000 -0500 -+++ glibc-2.3.2/include/gmp.h 2003-03-15 15:02:08.000000000 -0500 -@@ -1,3 +1,7 @@ -+/* Include gmp-mparam.h first, such that definitions of _SHORT_LIMB -+ and _LONG_LONG_LIMB in it can take effect into gmp.h. */ -+#include -+ - #ifndef __GMP_H__ - - #include ---- glibc-2.3.2/include/ifaddrs.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/include/ifaddrs.h 2003-08-21 08:37:02.000000000 -0400 -@@ -0,0 +1,10 @@ -+#ifndef _IFADDRS_H -+#include -+#include -+ -+libc_hidden_proto (getifaddrs) -+libc_hidden_proto (freeifaddrs) -+ -+extern void __check_pf (bool *seen_ipv4, bool *seen_ipv6) attribute_hidden; -+ -+#endif /* ifaddrs.h */ ---- glibc-2.3.2/include/libc-symbols.h 2003-01-03 18:21:03.000000000 -0500 -+++ glibc-2.3.2/include/libc-symbols.h 2003-08-21 08:37:02.000000000 -0400 -@@ -244,10 +244,10 @@ - # define link_warning(symbol, msg) \ - __make_section_unallocated (".gnu.warning." #symbol) \ - static const char __evoke_link_warning_##symbol[] \ -- __attribute__ ((unused, section (".gnu.warning." #symbol __sec_comment))) \ -+ __attribute__ ((used, section (".gnu.warning." #symbol __sec_comment))) \ - = msg; - # define libc_freeres_ptr(decl) \ -- __make_section_unallocated ("__libc_freeres_ptrs, \"aw\", @nobits") \ -+ __make_section_unallocated ("__libc_freeres_ptrs, \"aw\", %nobits") \ - decl __attribute__ ((section ("__libc_freeres_ptrs" __sec_comment))) - # define __libc_freeres_fn_section \ - __attribute__ ((section ("__libc_freeres_fn"))) -@@ -282,6 +282,16 @@ - link_warning (name, \ - "warning: " #name " is not implemented and will always fail") - -+/* Warning for linking functions calling dlopen into static binaries. */ -+#ifdef SHARED -+#define static_link_warning(name) -+#else -+#define static_link_warning(name) static_link_warning1(name) -+#define static_link_warning1(name) \ -+ link_warning(name, "Using '" #name "' in statically linked applications \ -+requires at runtime the shared libraries from the glibc version used \ -+for linking") -+#endif - - /* Declare SYMBOL to be TYPE (`function' or `object') and of SIZE bytes, - when the assembler supports such declarations (such as in ELF). -@@ -334,29 +344,36 @@ - because it will need to be relocated at run time anyway. */ - # define _elf_set_element(set, symbol) \ - static const void *__elf_set_##set##_element_##symbol##__ \ -- __attribute__ ((unused, section (#set))) = &(symbol) -+ __attribute__ ((used, section (#set))) = &(symbol) - # else - # define _elf_set_element(set, symbol) \ - static const void *const __elf_set_##set##_element_##symbol##__ \ -- __attribute__ ((unused, section (#set))) = &(symbol) -+ __attribute__ ((used, section (#set))) = &(symbol) - # endif - - /* Define SET as a symbol set. This may be required (it is in a.out) to - be able to use the set's contents. */ - # define symbol_set_define(set) symbol_set_declare(set) - --/* Declare SET for use in this module, if defined in another module. */ -+/* Declare SET for use in this module, if defined in another module. -+ In a shared library, this is always local to that shared object. -+ For static linking, the set might be wholly absent and so we use -+ weak references. */ - # define symbol_set_declare(set) \ -- extern void *const __start_##set __attribute__ ((__weak__)); \ -- extern void *const __stop_##set __attribute__ ((__weak__)); \ -- weak_extern (__start_##set) weak_extern (__stop_##set) -+ extern char const __start_##set[] __symbol_set_attribute; \ -+ extern char const __stop_##set[] __symbol_set_attribute; -+# ifdef SHARED -+# define __symbol_set_attribute attribute_hidden -+# else -+# define __symbol_set_attribute __attribute__ ((weak)) -+# endif - - /* Return a pointer (void *const *) to the first element of SET. */ --# define symbol_set_first_element(set) (&__start_##set) -+# define symbol_set_first_element(set) ((void *const *) (&__start_##set)) - - /* Return true iff PTR (a void *const *) has been incremented - past the last element in SET. */ --# define symbol_set_end_p(set, ptr) ((ptr) >= &__stop_##set) -+# define symbol_set_end_p(set, ptr) ((ptr) >= (void *const *) &__stop_##set) - - # else /* Not ELF: a.out. */ - -@@ -434,7 +451,8 @@ - strong_alias(real, name) - #endif - --#if defined HAVE_VISIBILITY_ATTRIBUTE && defined SHARED -+#if defined HAVE_VISIBILITY_ATTRIBUTE \ -+ && (defined SHARED || defined LIBC_NONSHARED) - # define attribute_hidden __attribute__ ((visibility ("hidden"))) - #else - # define attribute_hidden -@@ -720,4 +738,16 @@ - # define libm_hidden_data_ver(local, name) - #endif - -+#ifdef HAVE_BUILTIN_REDIRECTION -+# define libc_hidden_builtin_proto(name, attrs...) libc_hidden_proto (name, ##attrs) -+# define libc_hidden_builtin_def(name) libc_hidden_def (name) -+# define libc_hidden_builtin_weak(name) libc_hidden_weak (name) -+# define libc_hidden_builtin_ver(local, name) libc_hidden_ver (local, name) -+#else -+# define libc_hidden_builtin_proto(name, attrs...) -+# define libc_hidden_builtin_def(name) -+# define libc_hidden_builtin_weak(name) -+# define libc_hidden_builtin_ver(local, name) -+#endif -+ - #endif /* libc-symbols.h */ ---- glibc-2.3.2/include/link.h 2002-12-02 17:36:09.000000000 -0500 -+++ glibc-2.3.2/include/link.h 2003-08-21 08:37:02.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Data structure for communication from the run-time dynamic linker for - loaded ELF shared objects. -- Copyright (C) 1995-1999,2000,01,02 Free Software Foundation, Inc. -+ Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -186,7 +186,9 @@ - the l_libname list. */ - unsigned int l_faked:1; /* Nonzero if this is a faked descriptor - without associated file. */ -- -+ unsigned int l_need_tls_init:1; /* Nonzero if GL(dl_init_static_tls) -+ should be called on this link map -+ when relocation finishes. */ - /* Array with version names. */ - unsigned int l_nversions; - struct r_found_version *l_versions; -@@ -268,6 +270,11 @@ - size_t l_tls_blocksize; - /* Alignment requirement of the TLS block. */ - size_t l_tls_align; -+ /* Offset of first byte module alignment. */ -+ size_t l_tls_firstbyte_offset; -+# ifndef NO_TLS_OFFSET -+# define NO_TLS_OFFSET 0 -+# endif - /* For objects present at startup time: offset in the static TLS block. */ - ptrdiff_t l_tls_offset; - /* Index of the module in the dtv array. */ ---- glibc-2.3.2/include/netdb.h 2002-12-31 14:14:52.000000000 -0500 -+++ glibc-2.3.2/include/netdb.h 2003-04-24 20:05:57.000000000 -0400 -@@ -181,13 +181,9 @@ - libc_hidden_proto (ruserpass) - - --/* The following declarations and definitions have been removed from -- the public header since we don't want people to use them. */ -+/* The following definition has been removed from the public header -+ since we don't want people to use them. */ - --#define AI_V4MAPPED 0x0008 /* IPv4-mapped addresses are acceptable. */ --#define AI_ALL 0x0010 /* Return both IPv4 and IPv6 addresses. */ --#define AI_ADDRCONFIG 0x0020 /* Use configuration of this host to choose -- returned address type. */ - #define AI_DEFAULT (AI_V4MAPPED | AI_ADDRCONFIG) - - #include ---- glibc-2.3.2/include/netinet/in.h 2002-08-07 22:08:13.000000000 -0400 -+++ glibc-2.3.2/include/netinet/in.h 2003-08-21 08:37:02.000000000 -0400 -@@ -5,5 +5,6 @@ - libc_hidden_proto (bindresvport) - libc_hidden_proto (in6addr_loopback) - libc_hidden_proto (in6addr_any) -+libc_hidden_proto (inet6_option_alloc) - - #endif ---- glibc-2.3.2/include/resolv.h 2003-02-21 21:38:02.000000000 -0500 -+++ glibc-2.3.2/include/resolv.h 2003-08-21 08:37:02.000000000 -0400 -@@ -17,9 +17,10 @@ - # if USE___THREAD - # undef _res - # ifndef NOT_IN_libc --# define _res __libc_res -+# define __resp __libc_resp - # endif --extern __thread struct __res_state _res attribute_tls_model_ie; -+# define _res (*__resp) -+extern __thread struct __res_state *__resp attribute_tls_model_ie; - # endif - # else - # ifndef __BIND_NOSTATIC ---- glibc-2.3.2/include/sched.h 2002-08-15 01:39:03.000000000 -0400 -+++ glibc-2.3.2/include/sched.h 2003-03-15 15:02:08.000000000 -0500 -@@ -18,5 +18,5 @@ - extern int __clone (int (*__fn) (void *__arg), void *__child_stack, - int __flags, void *__arg, ...); - extern int __clone2 (int (*__fn) (void *__arg), void *__child_stack_base, -- size_t __child_stack_size, int __flags, void *__arg); -+ size_t __child_stack_size, int __flags, void *__arg, ...); - #endif ---- glibc-2.3.2/include/set-hooks.h 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/include/set-hooks.h 2003-08-21 08:37:02.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Macros for using symbol sets for running lists of functions. -- Copyright (C) 1994, 1995, 1997, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1994, 1995, 1997, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -40,12 +40,12 @@ - /* Run all the functions hooked on the set called NAME. - Each function is called like this: `function ARGS'. */ - --# define RUN_HOOK(NAME, ARGS) \ --do { \ -- void *const *__unbounded ptr; \ -- for (ptr = symbol_set_first_element (NAME); \ -- ! symbol_set_end_p (NAME, ptr); ++ptr) \ -- (*(__##NAME##_hook_function_t *) *ptr) ARGS; \ -+# define RUN_HOOK(NAME, ARGS) \ -+do { \ -+ void *const *__unbounded ptr; \ -+ for (ptr = (void *const *) symbol_set_first_element (NAME); \ -+ ! symbol_set_end_p (NAME, ptr); ++ptr) \ -+ (*(__##NAME##_hook_function_t *) *ptr) ARGS; \ - } while (0) - - /* Define a hook variable with NAME and PROTO, and a function called RUNNER ---- glibc-2.3.2/include/setjmp.h 2002-12-31 04:40:20.000000000 -0500 -+++ glibc-2.3.2/include/setjmp.h 2003-09-19 22:37:01.000000000 -0400 -@@ -22,5 +22,6 @@ - libc_hidden_proto (__libc_longjmp) - - libc_hidden_proto (_setjmp) -+libc_hidden_proto (__sigsetjmp) - - #endif ---- glibc-2.3.2/include/signal.h 2002-12-31 14:38:14.000000000 -0500 -+++ glibc-2.3.2/include/signal.h 2003-05-12 12:13:04.000000000 -0400 -@@ -6,6 +6,8 @@ - - libc_hidden_proto (sigemptyset) - libc_hidden_proto (sigfillset) -+libc_hidden_proto (sigaddset) -+libc_hidden_proto (sigdelset) - libc_hidden_proto (sigismember) - libc_hidden_proto (__sigpause) - libc_hidden_proto (raise) ---- glibc-2.3.2/include/stdio.h 2002-08-10 14:08:27.000000000 -0400 -+++ glibc-2.3.2/include/stdio.h 2003-09-19 22:37:01.000000000 -0400 -@@ -108,6 +108,18 @@ - libc_hidden_proto (fgets_unlocked) - libc_hidden_proto (fputs_unlocked) - libc_hidden_proto (open_memstream) -+libc_hidden_proto (__libc_fatal) -+ -+# if !defined NOT_IN_libc && defined SHARED && defined DO_VERSIONING \ -+ && defined HAVE_VISIBILITY_ATTRIBUTE && !defined HAVE_BROKEN_ALIAS_ATTRIBUTE\ -+ && !defined NO_HIDDEN -+/* Special gcc builtins. */ -+extern size_t __builtin_fwrite (const void *, size_t, size_t, void *) -+ __asm ("__GI_fwrite"); -+extern size_t __builtin_fwrite_unlocked (const void *, size_t, size_t, void *) -+ __asm ("__GI_fwrite_unlocked"); -+ -+# endif - - # endif - ---- glibc-2.3.2/include/string.h 2002-12-31 17:38:31.000000000 -0500 -+++ glibc-2.3.2/include/string.h 2003-05-12 12:13:04.000000000 -0400 -@@ -79,6 +79,23 @@ - libc_hidden_proto (basename) - libc_hidden_proto (strcoll) - -+libc_hidden_builtin_proto (memchr) -+libc_hidden_builtin_proto (memcpy) -+libc_hidden_builtin_proto (memmove) -+libc_hidden_builtin_proto (memset) -+libc_hidden_builtin_proto (strcat) -+libc_hidden_builtin_proto (strchr) -+libc_hidden_builtin_proto (strcmp) -+libc_hidden_builtin_proto (strcpy) -+libc_hidden_builtin_proto (strcspn) -+libc_hidden_builtin_proto (strlen) -+libc_hidden_builtin_proto (strncmp) -+libc_hidden_builtin_proto (strncpy) -+libc_hidden_builtin_proto (strpbrk) -+libc_hidden_builtin_proto (strrchr) -+libc_hidden_builtin_proto (strspn) -+libc_hidden_builtin_proto (strstr) -+ - # ifndef _ISOMAC - # ifndef index - # define index(s, c) (strchr ((s), (c))) ---- glibc-2.3.2/include/sys/resource.h 2002-08-04 00:32:39.000000000 -0400 -+++ glibc-2.3.2/include/sys/resource.h 2003-08-21 08:37:02.000000000 -0400 -@@ -7,7 +7,8 @@ - /* Now define the internal interfaces. */ - extern int __getrlimit (enum __rlimit_resource __resource, - struct rlimit *__rlimits); --extern int __getrusage (enum __rusage_who __who, struct rusage *__usage); -+extern int __getrusage (enum __rusage_who __who, struct rusage *__usage) -+ attribute_hidden; - - extern int __setrlimit (enum __rlimit_resource __resource, - const struct rlimit *__rlimits); ---- glibc-2.3.2/include/sys/time.h 2002-04-14 05:25:54.000000000 -0400 -+++ glibc-2.3.2/include/sys/time.h 2003-08-21 08:37:02.000000000 -0400 -@@ -5,17 +5,21 @@ - extern int __gettimeofday (struct timeval *__tv, - struct timezone *__tz); - extern int __gettimeofday_internal (struct timeval *__tv, -- struct timezone *__tz) attribute_hidden; -+ struct timezone *__tz) -+ attribute_hidden; - extern int __settimeofday (__const struct timeval *__tv, -- __const struct timezone *__tz); -+ __const struct timezone *__tz) -+ attribute_hidden; - extern int __adjtime (__const struct timeval *__delta, - struct timeval *__olddelta); - extern int __getitimer (enum __itimer_which __which, - struct itimerval *__value); - extern int __setitimer (enum __itimer_which __which, - __const struct itimerval *__restrict __new, -- struct itimerval *__restrict __old); --extern int __utimes (__const char *__file, const struct timeval __tvp[2]); -+ struct itimerval *__restrict __old) -+ attribute_hidden; -+extern int __utimes (__const char *__file, const struct timeval __tvp[2]) -+ attribute_hidden; - - #ifndef NOT_IN_libc - # define __gettimeofday(tv, tz) INTUSE(__gettimeofday) (tv, tz) ---- glibc-2.3.2/include/sys/wait.h 2002-12-20 02:47:59.000000000 -0500 -+++ glibc-2.3.2/include/sys/wait.h 2003-08-21 08:37:02.000000000 -0400 -@@ -13,5 +13,6 @@ - extern __pid_t __wait3 (__WAIT_STATUS __stat_loc, - int __options, struct rusage * __usage); - extern __pid_t __wait4 (__pid_t __pid, __WAIT_STATUS __stat_loc, -- int __options, struct rusage *__usage); -+ int __options, struct rusage *__usage) -+ attribute_hidden; - #endif ---- glibc-2.3.2/include/time.h 2003-02-01 15:47:59.000000000 -0500 -+++ glibc-2.3.2/include/time.h 2003-08-21 08:37:02.000000000 -0400 -@@ -82,5 +82,12 @@ - - /* Determine CLK_TCK value. */ - extern int __getclktck (void); -+ -+ -+/* Use in the clock_* functions. Size of the field representing the -+ actual clock ID. */ -+#ifndef _ISOMAC -+# define CLOCK_IDFIELD_SIZE 3 -+#endif - #endif - #endif ---- glibc-2.3.2/include/tls.h 2002-12-19 15:12:03.000000000 -0500 -+++ glibc-2.3.2/include/tls.h 2003-04-24 20:05:57.000000000 -0400 -@@ -1,5 +1,8 @@ - /* This file defines USE___THREAD to 1 or 0 to cut down on the #if mess. */ - -+#ifndef _include_tls_h -+#define _include_tls_h 1 -+ - #include_next - - #if USE_TLS && HAVE___THREAD \ -@@ -12,3 +15,5 @@ - # define USE___THREAD 0 - - #endif -+ -+#endif ---- glibc-2.3.2/include/unistd.h 2002-12-31 14:14:22.000000000 -0500 -+++ glibc-2.3.2/include/unistd.h 2003-05-12 12:13:04.000000000 -0400 -@@ -140,6 +140,7 @@ - and some functions contained in the C library ignore various - environment variables that normally affect them. */ - extern int __libc_enable_secure; -+extern int __libc_enable_secure_decided; - #ifdef IS_IN_rtld - /* XXX The #ifdef should go. */ - extern int __libc_enable_secure_internal attribute_hidden; ---- glibc-2.3.2/inet/Makefile 2002-12-28 05:06:33.000000000 -0500 -+++ glibc-2.3.2/inet/Makefile 2003-09-19 22:37:01.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1991-1999,2000,01,02 Free Software Foundation, Inc. -+# Copyright (C) 1991-2002, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -22,7 +22,7 @@ - subdir := inet - - headers := netinet/ether.h netinet/in.h netinet/in_systm.h \ -- netinet/if_ether.h \ -+ netinet/if_ether.h netinet/igmp.h \ - netinet/tcp.h netinet/ip.h $(wildcard arpa/*.h protocols/*.h) \ - aliases.h ifaddrs.h netinet/ip6.h netinet/icmp6.h bits/in.h - -@@ -45,7 +45,9 @@ - rcmd rexec ruserpass \ - getnetgrent_r getnetgrent \ - getaliasent_r getaliasent getaliasname getaliasname_r \ -- in6_addr getnameinfo if_index ifaddrs -+ in6_addr getnameinfo if_index ifaddrs inet6_option -+ -+aux := check_pf ifreq - - tests := htontest test_ifindex tst-ntoa tst-ether_aton tst-network \ - tst-gethnm test-ifaddrs -@@ -54,9 +56,33 @@ - - ifeq ($(have-thread-library),yes) - --CFLAGS-gethstbyad_r.c = -DUSE_NSCD=1 --CFLAGS-gethstbynm_r.c = -DUSE_NSCD=1 --CFLAGS-gethstbynm2_r.c = -DUSE_NSCD=1 -+CFLAGS-gethstbyad_r.c = -DUSE_NSCD=1 -fexceptions -+CFLAGS-gethstbyad.c = -fexceptions -+CFLAGS-gethstbynm_r.c = -DUSE_NSCD=1 -fexceptions -+CFLAGS-gethstbynm.c = -fexceptions -+CFLAGS-gethstbynm2_r.c = -DUSE_NSCD=1 -fexceptions -+CFLAGS-gethstbynm2.c = -fexceptions -+CFLAGS-gethstent_r.c = -fexceptions -+CFLAGS-gethstent.c = -fexceptions -+CFLAGS-rcmd.c = -fexceptions -+CFLAGS-getnetbynm_r.c = -fexceptions -+CFLAGS-getnetbynm.c = -fexceptions -+CFLAGS-getnetbyad_r.c = -fexceptions -+CFLAGS-getnetbyad.c = -fexceptions -+CFLAGS-getnetent_r.c = -fexceptions -+CFLAGS-getnetent.c = -fexceptions -+CFLAGS-getaliasent_r.c = -fexceptions -+CFLAGS-getaliasent.c = -fexceptions -+CFLAGS-getrpcent_r.c = -fexceptions -+CFLAGS-getrpcent.c = -fexceptions -+CFLAGS-getservent_r.c = -fexceptions -+CFLAGS-getservent.c = -fexceptions -+CFLAGS-getprtent_r.c = -fexceptions -+CFLAGS-getprtent.c = -fexceptions -+CFLAGS-either_ntoh.c = -fexceptions -+CFLAGS-either_hton.c = -fexceptions -+CFLAGS-getnetgrent.c = -fexceptions -+CFLAGS-getnetgrent_r.c = -fexceptions - - endif - ---- glibc-2.3.2/inet/Versions 2002-07-25 04:08:18.000000000 -0400 -+++ glibc-2.3.2/inet/Versions 2003-08-21 08:37:02.000000000 -0400 -@@ -70,6 +70,10 @@ - # g* - getifaddrs; - } -+ GLIBC_2.3.3 { -+ inet6_option_space; inet6_option_init; inet6_option_append; -+ inet6_option_alloc; inet6_option_next; inet6_option_find; -+ } - GLIBC_PRIVATE { - # functions used in other libraries - __internal_endnetgrent; __internal_getnetgrent_r; ---- glibc-2.3.2/inet/inet6_option.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/inet/inet6_option.c 2003-06-14 04:43:24.000000000 -0400 -@@ -0,0 +1,343 @@ -+/* Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Ulrich Drepper , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+#include -+#include -+ -+ -+static void -+internal_function -+add_pad (struct cmsghdr *cmsg, int len) -+{ -+ unsigned char *p = CMSG_DATA (cmsg) + cmsg->cmsg_len - CMSG_LEN (0); -+ -+ if (len == 1) -+ /* Special handling for 1, a one-byte solution. */ -+ *p++ = IP6OPT_PAD1; -+ else if (len != 0) -+ { -+ /* Multibyte padding. */ -+ *p++ = IP6OPT_PADN; -+ *p++ = len - 2; /* Discount the two header bytes. */ -+ /* The rest is filled with zero. */ -+ memset (p, '\0', len - 2); -+ p += len - 2; -+ } -+ -+ /* Account for the bytes. */ -+ cmsg->cmsg_len += len; -+} -+ -+ -+static int -+get_opt_end (const uint8_t **result, const uint8_t *startp, -+ const uint8_t *endp) -+{ -+ if (startp >= endp) -+ /* Out of bounds. */ -+ return -1; -+ -+ if (*startp == IP6OPT_PAD1) -+ { -+ /* Just this one byte. */ -+ *result = startp + 1; -+ return 0; -+ } -+ -+ /* Now we know there must be at least two bytes. */ -+ if (startp + 2 > endp -+ /* Now we can get the length byte. */ -+ || startp + startp[1] + 2 > endp) -+ return -1; -+ -+ *result = startp + startp[1] + 2; -+ -+ return 0; -+} -+ -+ -+/* RFC 2292, 6.3.1 -+ -+ This function returns the number of bytes required to hold an option -+ when it is stored as ancillary data, including the cmsghdr structure -+ at the beginning, and any padding at the end (to make its size a -+ multiple of 8 bytes). The argument is the size of the structure -+ defining the option, which must include any pad bytes at the -+ beginning (the value y in the alignment term "xn + y"), the type -+ byte, the length byte, and the option data. */ -+int -+inet6_option_space (nbytes) -+ int nbytes; -+{ -+ /* Add room for the extension header. */ -+ nbytes += sizeof (struct ip6_ext); -+ -+ return CMSG_SPACE (roundup (nbytes, 8)); -+} -+ -+ -+/* RFC 2292, 6.3.2 -+ -+ This function is called once per ancillary data object that will -+ contain either Hop-by-Hop or Destination options. It returns 0 on -+ success or -1 on an error. */ -+int -+inet6_option_init (bp, cmsgp, type) -+ void *bp; -+ struct cmsghdr **cmsgp; -+ int type; -+{ -+ /* Only Hop-by-Hop or Destination options allowed. */ -+ if (type != IPV6_HOPOPTS && type != IPV6_DSTOPTS) -+ return -1; -+ -+ /* BP is a pointer to the previously allocated space. */ -+ struct cmsghdr *newp = (struct cmsghdr *) bp; -+ -+ /* Initialize the message header. -+ -+ Length: No data yet, only the cmsghdr struct. */ -+ newp->cmsg_len = CMSG_LEN (0); -+ /* Originating protocol: obviously IPv6. */ -+ newp->cmsg_level = IPPROTO_IPV6; -+ /* Message type. */ -+ newp->cmsg_type = type; -+ -+ /* Pass up the result. */ -+ *cmsgp = newp; -+ -+ return 0; -+} -+ -+ -+/* RFC 2292, 6.3.3 -+ -+ This function appends a Hop-by-Hop option or a Destination option -+ into an ancillary data object that has been initialized by -+ inet6_option_init(). This function returns 0 if it succeeds or -1 on -+ an error. */ -+int -+inet6_option_append (cmsg, typep, multx, plusy) -+ struct cmsghdr *cmsg; -+ const uint8_t *typep; -+ int multx; -+ int plusy; -+{ -+ /* typep is a pointer to the 8-bit option type. It is assumed that this -+ field is immediately followed by the 8-bit option data length field, -+ which is then followed immediately by the option data. -+ -+ The option types IP6OPT_PAD1 and IP6OPT_PADN also must be handled. */ -+ int len = typep[0] == IP6OPT_PAD1 ? 1 : typep[1] + 2; -+ -+ /* Get the pointer to the space in the message. */ -+ uint8_t *ptr = inet6_option_alloc (cmsg, len, multx, plusy); -+ if (ptr == NULL) -+ /* Some problem with the parameters. */ -+ return -1; -+ -+ /* Copy the content. */ -+ memcpy (ptr, typep, len); -+ -+ return 0; -+} -+ -+ -+/* RFC 2292, 6.3.4 -+ -+ This function appends a Hop-by-Hop option or a Destination option -+ into an ancillary data object that has been initialized by -+ inet6_option_init(). This function returns a pointer to the 8-bit -+ option type field that starts the option on success, or NULL on an -+ error. */ -+uint8_t * -+inet6_option_alloc (cmsg, datalen, multx, plusy) -+ struct cmsghdr *cmsg; -+ int datalen; -+ int multx; -+ int plusy; -+{ -+ /* The RFC limits the value of the alignment values. */ -+ if ((multx != 1 && multx != 2 && multx != 4 && multx != 8) -+ || ! (plusy >= 0 && plusy <= 7)) -+ return NULL; -+ -+ /* Current data size. */ -+ int dsize = cmsg->cmsg_len - CMSG_LEN (0); -+ -+ /* The first two bytes of the option are for the extended header. */ -+ if (__builtin_expect (dsize == 0, 0)) -+ { -+ cmsg->cmsg_len += sizeof (struct ip6_ext); -+ dsize = sizeof (struct ip6_ext); -+ } -+ -+ /* First add padding. */ -+ add_pad (cmsg, ((multx - (dsize & (multx - 1))) & (multx - 1)) + plusy); -+ -+ /* Return the pointer to the start of the option space. */ -+ uint8_t *result = CMSG_DATA (cmsg) + cmsg->cmsg_len - CMSG_LEN (0); -+ cmsg->cmsg_len += datalen; -+ -+ /* The extended option header length is measured in 8-byte groups. -+ To represent the current length we might have to add padding. */ -+ dsize = cmsg->cmsg_len - CMSG_LEN (0); -+ add_pad (cmsg, (8 - (dsize & (8 - 1))) & (8 - 1)); -+ -+ /* Record the new length of the option. */ -+ assert (((cmsg->cmsg_len - CMSG_LEN (0)) % 8) == 0); -+ int len8b = (cmsg->cmsg_len - CMSG_LEN (0)) / 8 - 1; -+ if (len8b >= 256) -+ /* Too long. */ -+ return NULL; -+ -+ ((struct ip6_ext *) CMSG_DATA (cmsg))->ip6e_len = len8b; -+ -+ return result; -+} -+libc_hidden_def (inet6_option_alloc) -+ -+ -+/* RFC 2292, 6.3.5 -+ -+ This function processes the next Hop-by-Hop option or Destination -+ option in an ancillary data object. If another option remains to be -+ processed, the return value of the function is 0 and *tptrp points to -+ the 8-bit option type field (which is followed by the 8-bit option -+ data length, followed by the option data). If no more options remain -+ to be processed, the return value is -1 and *tptrp is NULL. If an -+ error occurs, the return value is -1 and *tptrp is not NULL. */ -+int -+inet6_option_next (cmsg, tptrp) -+ const struct cmsghdr *cmsg; -+ uint8_t **tptrp; -+{ -+ /* Make sure it is an option of the right type. */ -+ if (cmsg->cmsg_level != IPPROTO_IPV6 -+ || (cmsg->cmsg_type != IPV6_HOPOPTS && cmsg->cmsg_type != IPV6_DSTOPTS)) -+ return -1; -+ -+ /* Pointer to the extension header. We only compute the address, we -+ don't access anything yet. */ -+ const struct ip6_ext *ip6e = (const struct ip6_ext *) CMSG_DATA (cmsg); -+ -+ /* Make sure the message is long enough. */ -+ if (cmsg->cmsg_len < CMSG_LEN (sizeof (struct ip6_ext)) -+ /* Now we can access the extension header. */ -+ || cmsg->cmsg_len < CMSG_LEN ((ip6e->ip6e_len + 1) * 8)) -+ /* Too small. */ -+ return -1; -+ -+ /* Determine the address of the byte past the message. */ -+ const uint8_t *endp = CMSG_DATA (cmsg) + (ip6e->ip6e_len + 1) * 8; -+ -+ const uint8_t *result; -+ if (tptrp == NULL) -+ /* This is the first call, return the first option if there is one. */ -+ result = (const uint8_t *) (ip6e + 1); -+ else -+ { -+ /* Make sure *TPTRP points to a beginning of a new option in -+ the message. The upper limit is checked in get_opt_end. */ -+ if (*tptrp < (const uint8_t *) (ip6e + 1)) -+ return -1; -+ -+ /* Get the beginning of the next option. */ -+ if (get_opt_end (&result, *tptrp, endp) != 0) -+ return -1; -+ } -+ -+ /* We know where the next option starts. */ -+ *tptrp = (uint8_t *) result; -+ -+ /* Check the option is fully represented in the message. */ -+ return get_opt_end (&result, result, endp); -+} -+ -+ -+/* RFC 2292, 6.3.6 -+ -+ This function is similar to the previously described -+ inet6_option_next() function, except this function lets the caller -+ specify the option type to be searched for, instead of always -+ returning the next option in the ancillary data object. cmsg is a -+ pointer to cmsghdr structure of which cmsg_level equals IPPROTO_IPV6 -+ and cmsg_type equals either IPV6_HOPOPTS or IPV6_DSTOPTS. */ -+int -+inet6_option_find (cmsg, tptrp, type) -+ const struct cmsghdr *cmsg; -+ uint8_t **tptrp; -+ int type; -+{ -+ /* Make sure it is an option of the right type. */ -+ if (cmsg->cmsg_level != IPPROTO_IPV6 -+ || (cmsg->cmsg_type != IPV6_HOPOPTS && cmsg->cmsg_type != IPV6_DSTOPTS)) -+ return -1; -+ -+ /* Pointer to the extension header. We only compute the address, we -+ don't access anything yet. */ -+ const struct ip6_ext *ip6e = (const struct ip6_ext *) CMSG_DATA (cmsg); -+ -+ /* Make sure the message is long enough. */ -+ if (cmsg->cmsg_len < CMSG_LEN (sizeof (struct ip6_ext)) -+ /* Now we can access the extension header. */ -+ || cmsg->cmsg_len < CMSG_LEN ((ip6e->ip6e_len + 1) * 8)) -+ /* Too small. */ -+ return -1; -+ -+ /* Determine the address of the byte past the message. */ -+ const uint8_t *endp = CMSG_DATA (cmsg) + (ip6e->ip6e_len + 1) * 8; -+ -+ const uint8_t *next; -+ if (tptrp == NULL) -+ /* This is the first call, return the first option if there is one. */ -+ next = (const uint8_t *) (ip6e + 1); -+ else -+ { -+ /* Make sure *TPTRP points to a beginning of a new option in -+ the message. The upper limit is checked in get_opt_end. */ -+ if (*tptrp < (const uint8_t *) (ip6e + 1)) -+ return -1; -+ -+ /* Get the beginning of the next option. */ -+ if (get_opt_end (&next, *tptrp, endp) != 0) -+ return -1; -+ } -+ -+ /* Now search for the appropriate typed entry. */ -+ const uint8_t *result; -+ do -+ { -+ result = next; -+ -+ /* Get the end of this entry. */ -+ if (get_opt_end (&next, result, endp) != 0) -+ return -1; -+ } -+ while (*result != type); -+ -+ /* We know where the next option starts. */ -+ *tptrp = (uint8_t *) result; -+ -+ /* Success. */ -+ return 0; -+} ---- glibc-2.3.2/inet/inet_mkadr.c 2002-11-24 21:23:24.000000000 -0500 -+++ glibc-2.3.2/inet/inet_mkadr.c 2003-09-19 22:37:01.000000000 -0400 -@@ -43,17 +43,17 @@ - inet_makeaddr(net, host) - in_addr_t net, host; - { -- u_int32_t addr; -+ struct in_addr in; - - if (net < 128) -- addr = (net << IN_CLASSA_NSHIFT) | (host & IN_CLASSA_HOST); -+ in.s_addr = (net << IN_CLASSA_NSHIFT) | (host & IN_CLASSA_HOST); - else if (net < 65536) -- addr = (net << IN_CLASSB_NSHIFT) | (host & IN_CLASSB_HOST); -+ in.s_addr = (net << IN_CLASSB_NSHIFT) | (host & IN_CLASSB_HOST); - else if (net < 16777216L) -- addr = (net << IN_CLASSC_NSHIFT) | (host & IN_CLASSC_HOST); -+ in.s_addr = (net << IN_CLASSC_NSHIFT) | (host & IN_CLASSC_HOST); - else -- addr = net | host; -- addr = htonl(addr); -- return (*(struct in_addr *)&addr); -+ in.s_addr = net | host; -+ in.s_addr = htonl(in.s_addr); -+ return in; - } - libc_hidden_def (inet_makeaddr) ---- glibc-2.3.2/inet/netinet/igmp.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/inet/netinet/igmp.h 2003-05-24 14:06:21.000000000 -0400 -@@ -0,0 +1,126 @@ -+/* Copyright (C) 1997, 1999, 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _NETINET_IGMP_H -+#define _NETINET_IGMP_H 1 -+ -+#include -+#include -+ -+#ifdef __USE_BSD -+ -+#include -+ -+__BEGIN_DECLS -+ -+/* -+ * Copyright (c) 1988 Stephen Deering. -+ * Copyright (c) 1992, 1993 -+ * The Regents of the University of California. All rights reserved. -+ * -+ * This code is derived from software contributed to Berkeley by -+ * Stephen Deering of Stanford University. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice, this list of conditions and the following disclaimer. -+ * 2. Redistributions in binary form must reproduce the above copyright -+ * notice, this list of conditions and the following disclaimer in the -+ * documentation and/or other materials provided with the distribution. -+ * 4. Neither the name of the University nor the names of its contributors -+ * may be used to endorse or promote products derived from this software -+ * without specific prior written permission. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -+ * SUCH DAMAGE. -+ * -+ * @(#)igmp.h 8.1 (Berkeley) 6/10/93 -+ * $FreeBSD$ -+ */ -+ -+struct igmp { -+ u_int8_t igmp_type; /* IGMP type */ -+ u_int8_t igmp_code; /* routing code */ -+ u_int16_t igmp_cksum; /* checksum */ -+ struct in_addr igmp_group; /* group address */ -+}; -+ -+#define IGMP_MINLEN 8 -+ -+/* -+ * Message types, including version number. -+ */ -+#define IGMP_MEMBERSHIP_QUERY 0x11 /* membership query */ -+#define IGMP_V1_MEMBERSHIP_REPORT 0x12 /* Ver. 1 membership report */ -+#define IGMP_V2_MEMBERSHIP_REPORT 0x16 /* Ver. 2 membership report */ -+#define IGMP_V2_LEAVE_GROUP 0x17 /* Leave-group message */ -+ -+#define IGMP_DVMRP 0x13 /* DVMRP routing message */ -+#define IGMP_PIM 0x14 /* PIM routing message */ -+#define IGMP_TRACE 0x15 -+ -+#define IGMP_MTRACE_RESP 0x1e /* traceroute resp.(to sender)*/ -+#define IGMP_MTRACE 0x1f /* mcast traceroute messages */ -+ -+#define IGMP_MAX_HOST_REPORT_DELAY 10 /* max delay for response to */ -+ /* query (in seconds) according */ -+ /* to RFC1112 */ -+#define IGMP_TIMER_SCALE 10 /* denotes that the igmp code field */ -+ /* specifies time in 10th of seconds*/ -+ -+/* -+ * States for the IGMP v2 state table. -+ */ -+#define IGMP_DELAYING_MEMBER 1 -+#define IGMP_IDLE_MEMBER 2 -+#define IGMP_LAZY_MEMBER 3 -+#define IGMP_SLEEPING_MEMBER 4 -+#define IGMP_AWAKENING_MEMBER 5 -+ -+/* -+ * States for IGMP router version cache. -+ */ -+#define IGMP_v1_ROUTER 1 -+#define IGMP_v2_ROUTER 2 -+ -+/* -+ * The following four defininitions are for backwards compatibility. -+ * They should be removed as soon as all applications are updated to -+ * use the new constant names. -+ */ -+#define IGMP_HOST_MEMBERSHIP_QUERY IGMP_MEMBERSHIP_QUERY -+#define IGMP_HOST_MEMBERSHIP_REPORT IGMP_V1_MEMBERSHIP_REPORT -+#define IGMP_HOST_NEW_MEMBERSHIP_REPORT IGMP_V2_MEMBERSHIP_REPORT -+#define IGMP_HOST_LEAVE_MESSAGE IGMP_V2_LEAVE_GROUP -+ -+__END_DECLS -+ -+#endif -+ -+#endif /* netinet/igmp.h */ ---- glibc-2.3.2/inet/netinet/in.h 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/inet/netinet/in.h 2003-08-21 08:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991-1999, 2000, 2001 Free Software Foundation, Inc. -+/* Copyright (C) 1991-1999, 2000, 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -21,6 +21,7 @@ - - #include - #include -+#include - #include - - -@@ -79,6 +80,8 @@ - #define IPPROTO_PIM IPPROTO_PIM - IPPROTO_COMP = 108, /* Compression Header Protocol. */ - #define IPPROTO_COMP IPPROTO_COMP -+ IPPROTO_SCTP = 132, /* Stream Control Transmission Protocol. */ -+#define IPPROTO_SCTP IPPROTO_SCTP - IPPROTO_RAW = 255, /* Raw IP packets. */ - #define IPPROTO_RAW IPPROTO_RAW - IPPROTO_MAX -@@ -364,6 +367,23 @@ - unsigned int ipi6_ifindex; /* send/recv interface index */ - }; - -+ -+#ifdef __USE_GNU -+/* Hop-by-Hop and Destination Options Processing. */ -+extern int inet6_option_space (int __nbytes); -+extern int inet6_option_init (void *__bp, struct cmsghdr **__cmsgp, -+ int __type); -+extern int inet6_option_append (struct cmsghdr *__cmsg, -+ __const uint8_t *__typep, int __multx, -+ int __plusy); -+extern uint8_t *inet6_option_alloc (struct cmsghdr *__cmsg, int __datalen, -+ int __multx, int __plusy); -+extern int inet6_option_next (__const struct cmsghdr *__cmsg, -+ uint8_t **__tptrp); -+extern int inet6_option_find (__const struct cmsghdr *__cmsg, -+ uint8_t **__tptrp, int __type); -+#endif /* use GNU */ -+ - __END_DECLS - - #endif /* netinet/in.h */ ---- glibc-2.3.2/inet/netinet/ip6.h 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/inet/netinet/ip6.h 2003-08-21 08:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991-1997, 2001 Free Software Foundation, Inc. -+/* Copyright (C) 1991-1997, 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -47,51 +47,58 @@ - #define ip6_hlim ip6_ctlun.ip6_un1.ip6_un1_hlim - #define ip6_hops ip6_ctlun.ip6_un1.ip6_un1_hlim - -+/* Generic extension header. */ -+struct ip6_ext -+ { -+ uint8_t ip6e_nxt; /* next header. */ -+ uint8_t ip6e_len; /* length in units of 8 octets. */ -+ }; -+ - /* Hop-by-Hop options header. */ - struct ip6_hbh - { -- uint8_t ip6h_nxt; /* next hesder. */ -- uint8_t ip6h_len; /* length in units of 8 octets. */ -+ uint8_t ip6h_nxt; /* next header. */ -+ uint8_t ip6h_len; /* length in units of 8 octets. */ - /* followed by options */ - }; - - /* Destination options header */ - struct ip6_dest - { -- uint8_t ip6d_nxt; /* next header */ -- uint8_t ip6d_len; /* length in units of 8 octets */ -+ uint8_t ip6d_nxt; /* next header */ -+ uint8_t ip6d_len; /* length in units of 8 octets */ - /* followed by options */ - }; - - /* Routing header */ - struct ip6_rthdr - { -- uint8_t ip6r_nxt; /* next header */ -- uint8_t ip6r_len; /* length in units of 8 octets */ -- uint8_t ip6r_type; /* routing type */ -- uint8_t ip6r_segleft; /* segments left */ -+ uint8_t ip6r_nxt; /* next header */ -+ uint8_t ip6r_len; /* length in units of 8 octets */ -+ uint8_t ip6r_type; /* routing type */ -+ uint8_t ip6r_segleft; /* segments left */ - /* followed by routing type specific data */ - }; - - /* Type 0 Routing header */ - struct ip6_rthdr0 - { -- uint8_t ip6r0_nxt; /* next header */ -- uint8_t ip6r0_len; /* length in units of 8 octets */ -- uint8_t ip6r0_type; /* always zero */ -- uint8_t ip6r0_segleft; /* segments left */ -- uint8_t ip6r0_reserved; /* reserved field */ -- uint8_t ip6r0_slmap[3]; /* strict/loose bit map */ -+ uint8_t ip6r0_nxt; /* next header */ -+ uint8_t ip6r0_len; /* length in units of 8 octets */ -+ uint8_t ip6r0_type; /* always zero */ -+ uint8_t ip6r0_segleft; /* segments left */ -+ uint8_t ip6r0_reserved; /* reserved field */ -+ uint8_t ip6r0_slmap[3]; /* strict/loose bit map */ - struct in6_addr ip6r0_addr[1]; /* up to 23 addresses */ - }; - - /* Fragment header */ - struct ip6_frag - { -- uint8_t ip6f_nxt; /* next header */ -- uint8_t ip6f_reserved; /* reserved field */ -- uint16_t ip6f_offlg; /* offset, reserved, and flag */ -- uint32_t ip6f_ident; /* identification */ -+ uint8_t ip6f_nxt; /* next header */ -+ uint8_t ip6f_reserved; /* reserved field */ -+ uint16_t ip6f_offlg; /* offset, reserved, and flag */ -+ uint32_t ip6f_ident; /* identification */ - }; - - #if BYTE_ORDER == BIG_ENDIAN -@@ -104,4 +111,8 @@ - #define IP6F_MORE_FRAG 0x0100 /* more-fragments flag */ - #endif - -+/* Special option types for padding. */ -+#define IP6OPT_PAD1 0 -+#define IP6OPT_PADN 1 -+ - #endif /* netinet/ip6.h */ ---- glibc-2.3.2/inet/rcmd.c 2003-02-20 20:50:13.000000000 -0500 -+++ glibc-2.3.2/inet/rcmd.c 2003-09-19 22:37:01.000000000 -0400 -@@ -551,7 +551,7 @@ - cp = _("not regular file"); - else - { -- res = fopen (file, "r"); -+ res = fopen (file, "rc"); - if (!res) - cp = _("cannot open"); - else if (__fxstat64 (_STAT_VER, fileno (res), &st) < 0) ---- glibc-2.3.2/inet/ruserpass.c 2002-08-07 22:08:14.000000000 -0400 -+++ glibc-2.3.2/inet/ruserpass.c 2003-09-19 22:37:01.000000000 -0400 -@@ -114,7 +114,7 @@ - buf = alloca (strlen (hdir) + 8); - - __stpcpy (__stpcpy (buf, hdir), "/.netrc"); -- cfile = fopen(buf, "r"); -+ cfile = fopen(buf, "rc"); - if (cfile == NULL) { - if (errno != ENOENT) - warn("%s", buf); ---- glibc-2.3.2/inet/test-ifaddrs.c 2002-12-02 17:36:09.000000000 -0500 -+++ glibc-2.3.2/inet/test-ifaddrs.c 2003-04-12 11:39:42.000000000 -0400 -@@ -69,6 +69,10 @@ - #endif - case AF_UNSPEC: - return "---"; -+ -+ case AF_PACKET: -+ return ""; -+ - default: - ++failures; - printf ("sa_family=%d %08x\n", sa->sa_family, ---- glibc-2.3.2/intl/Makefile 2002-12-11 19:55:10.000000000 -0500 -+++ glibc-2.3.2/intl/Makefile 2003-08-21 08:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+# Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -22,8 +22,8 @@ - headers = libintl.h - routines = bindtextdom dcgettext dgettext gettext \ - dcigettext dcngettext dngettext ngettext \ -- finddomain loadmsgcat localealias textdomain \ -- l10nflist explodename plural plural-exp -+ finddomain loadmsgcat localealias textdomain -+aux = l10nflist explodename plural plural-exp hash-string - distribute = gmo.h gettextP.h hash-string.h loadinfo.h locale.alias \ - plural.y plural-exp.h po2test.sed tst-gettext.sh tst-translit.sh \ - translit.po tst-gettext2.sh tstlang1.po tstlang2.po tstcodeset.po\ -@@ -77,7 +77,7 @@ - - $(objpfx)msgs.h: po2test.sed ../po/de.po - $(make-target-directory) -- sed -f $^ > $@ -+ LC_ALL=C sed -f $^ > $@ - - CFLAGS-tst-gettext.c = -DTESTSTRS_H=\"$(objpfx)msgs.h\" - CFLAGS-tst-gettext2.c = -DOBJPFX=\"$(objpfx)\" ---- glibc-2.3.2/intl/dcigettext.c 2002-12-11 19:55:10.000000000 -0500 -+++ glibc-2.3.2/intl/dcigettext.c 2003-08-21 08:37:02.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Implementation of the internal dcigettext function. -- Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -695,7 +695,7 @@ - { - /* Use the hashing table. */ - nls_uint32 len = strlen (msgid); -- nls_uint32 hash_val = hash_string (msgid); -+ nls_uint32 hash_val = __hash_string (msgid); - nls_uint32 idx = hash_val % domain->hash_size; - nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2)); - ---- glibc-2.3.2/intl/hash-string.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/intl/hash-string.c 2003-06-11 17:46:03.000000000 -0400 -@@ -0,0 +1,47 @@ -+/* Implements a string hashing function. -+ Copyright (C) 1995, 1997, 1998, 2000, 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include "hash-string.h" -+ -+ -+/* Defines the so called `hashpjw' function by P.J. Weinberger -+ [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools, -+ 1986, 1987 Bell Telephone Laboratories, Inc.] */ -+unsigned long int -+__hash_string (str_param) -+ const char *str_param; -+{ -+ unsigned long int hval, g; -+ const char *str = str_param; -+ -+ /* Compute the hash value for the given string. */ -+ hval = 0; -+ while (*str != '\0') -+ { -+ hval <<= 4; -+ hval += (unsigned long int) *str++; -+ g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4)); -+ if (g != 0) -+ { -+ hval ^= g >> (HASHWORDBITS - 8); -+ hval ^= g; -+ } -+ } -+ return hval; -+} ---- glibc-2.3.2/intl/hash-string.h 2002-12-11 19:55:10.000000000 -0500 -+++ glibc-2.3.2/intl/hash-string.h 2003-08-21 08:37:02.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Implements a string hashing function. -- Copyright (C) 1995, 1997, 1998, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1995, 1997, 1998, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -34,27 +34,5 @@ - /* Defines the so called `hashpjw' function by P.J. Weinberger - [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools, - 1986, 1987 Bell Telephone Laboratories, Inc.] */ --static unsigned long int hash_string PARAMS ((const char *__str_param)); -- --static inline unsigned long int --hash_string (str_param) -- const char *str_param; --{ -- unsigned long int hval, g; -- const char *str = str_param; -- -- /* Compute the hash value for the given string. */ -- hval = 0; -- while (*str != '\0') -- { -- hval <<= 4; -- hval += (unsigned long int) *str++; -- g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4)); -- if (g != 0) -- { -- hval ^= g >> (HASHWORDBITS - 8); -- hval ^= g; -- } -- } -- return hval; --} -+extern unsigned long int __hash_string PARAMS ((const char *__str_param)) -+ attribute_hidden; ---- glibc-2.3.2/intl/loadmsgcat.c 2002-12-12 01:55:11.000000000 -0500 -+++ glibc-2.3.2/intl/loadmsgcat.c 2003-09-19 22:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Load needed message catalogs. -- Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -87,6 +87,7 @@ - - #ifdef _LIBC - # include "../locale/localeinfo.h" -+# include - #endif - - /* Provide fallback values for macros that ought to be defined in . -@@ -453,11 +454,12 @@ - /* Rename the non ISO C functions. This is required by the standard - because some ISO C functions will require linking with this object - file and the name space must not be polluted. */ --# define open __open --# define close __close --# define read __read --# define mmap __mmap --# define munmap __munmap -+# define open(name, flags) open_not_cancel_2 (name, flags) -+# define close(fd) close_not_cancel_no_status (fd) -+# define read(fd, buf, n) read_not_cancel (fd, buf, n) -+# define mmap(addr, len, prot, flags, fd, offset) \ -+ __mmap (addr, len, prot, flags, fd, offset) -+# define munmap(addr, len) __munmap (addr, len) - #endif - - /* For those losing systems which don't have `alloca' we have to add -@@ -1209,7 +1211,7 @@ - for (i = 0; i < n_sysdep_strings; i++) - { - const char *msgid = inmem_orig_sysdep_tab[i].pointer; -- nls_uint32 hash_val = hash_string (msgid); -+ nls_uint32 hash_val = __hash_string (msgid); - nls_uint32 idx = hash_val % domain->hash_size; - nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2)); - ---- glibc-2.3.2/intl/localealias.c 2002-11-19 22:26:47.000000000 -0500 -+++ glibc-2.3.2/intl/localealias.c 2003-09-19 22:37:01.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Handle aliases for locale names. -- Copyright (C) 1995-1999, 2000,01,02 Free Software Foundation, Inc. -+ Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -219,7 +219,9 @@ - memcpy (&full_fname[fname_len], aliasfile, sizeof aliasfile); - #endif - -- fp = fopen (full_fname, "r"); -+ /* Note the file is opened with cancellation in the I/O functions -+ disabled. */ -+ fp = fopen (full_fname, "rc"); - freea (full_fname); - if (fp == NULL) - return 0; -@@ -243,11 +245,15 @@ - char *alias; - char *value; - char *cp; -+ int complete_line; - - if (FGETS (buf, sizeof buf, fp) == NULL) - /* EOF reached. */ - break; - -+ /* Determine whether the line is complete. */ -+ complete_line = strchr (buf, '\n') != NULL; -+ - cp = buf; - /* Ignore leading white space. */ - while (isspace ((unsigned char) cp[0])) -@@ -334,11 +340,13 @@ - - /* Possibly not the whole line fits into the buffer. Ignore - the rest of the line. */ -- while (strchr (buf, '\n') == NULL) -- if (FGETS (buf, sizeof buf, fp) == NULL) -- /* Make sure the inner loop will be left. The outer loop -- will exit at the `feof' test. */ -- break; -+ if (! complete_line) -+ do -+ if (FGETS (buf, sizeof buf, fp) == NULL) -+ /* Make sure the inner loop will be left. The outer loop -+ will exit at the `feof' test. */ -+ break; -+ while (strchr (buf, '\n') == NULL); - } - - /* Should we test for ferror()? I think we have to silently ignore ---- glibc-2.3.2/intl/plural.c 2002-06-18 17:12:35.000000000 -0400 -+++ glibc-2.3.2/intl/plural.c 2003-05-12 12:13:04.000000000 -0400 -@@ -51,6 +51,7 @@ - - #include - #include -+#include - #include "plural-exp.h" - - /* The main function generated by the parser is called __gettextparse, ---- glibc-2.3.2/intl/plural.y 2002-03-11 03:32:00.000000000 -0500 -+++ glibc-2.3.2/intl/plural.y 2003-05-12 12:13:04.000000000 -0400 -@@ -32,6 +32,7 @@ - - #include - #include -+#include - #include "plural-exp.h" - - /* The main function generated by the parser is called __gettextparse, ---- glibc-2.3.2/intl/po2test.sed 2000-01-22 00:43:54.000000000 -0500 -+++ glibc-2.3.2/intl/po2test.sed 2003-04-12 11:39:42.000000000 -0400 -@@ -1,5 +1,5 @@ - # po2test.sed - Convert Uniforum style .po file to C code for testing. --# Copyright (C) 2000 Free Software Foundation, Inc. -+# Copyright (C) 2000,2003 Free Software Foundation, Inc. - # Ulrich Drepper , 2000. - # - # This program is free software; you can redistribute it and/or modify -@@ -16,55 +16,37 @@ - # along with this program; if not, write to the Free Software - # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - # -+ - # - # We copy the original message as a comment into the .msg file. But enclose - # them with INPUT ( ). - # --/^msgid/ { -- s/msgid[ ]*"\(.*\)"/INPUT ("\1")/ --# Clear flag from last substitution. -- tb --# Append the next line. -- :b -- N --# Look whether second part is a continuation line. -- s/\(.*\)")\(\n\)"\(.*\)"/\1\\\2\3")/ --# Yes, then branch. -- ta -- P -- D --# Note that `D' includes a jump to the start!! --# We found a continuation line. But before printing insert '\'. -- :a -- s/\(.*\)")\(\n.*\)/\1\\\2/ -- P --# We cannot use the sed command `D' here -- s/.*\n\(.*\)/\1/ -- tb --} -+s/^msgid[ ]*"\(.*\)"/INPUT ("\1")/ -+# Clear flag from last substitution and jump if matching -+tb -+ - # - # Copy the translations as well and enclose them with OUTPUT ( ). - # --/^msgstr/ { -- s/msgstr[ ]*"\(.*\)"/OUTPUT ("\1")/ --# Clear flag from last substitution. -- tb -+s/^msgstr[ ]*"\(.*\)"/OUTPUT ("\1")/ -+# Clear flag from last substitution and jump if matching -+tb -+ -+d -+ -+:b - # Append the next line. -- :b -- N --# Look whether second part is a continuation line. -- s/\(.*\)")\(\n\)"\(.*\)"/\1\\\2\3")/ --# Yes, then branch. -- ta -- P -- D --# Note that `D' includes a jump to the start!! --# We found a continuation line. But before printing insert '\'. -- :a -- s/\(.*\)")\(\n.*\)/\1\\\2/ -- P -+$!N -+# Check whether second part is a continuation line. If so, before printing -+# insert '\'. -+s/\(.*\)")\(\n\)"\(.*\)"/\1\\\2\3")/ -+P -+ta -+# No, go to the top and process it. Note that `D' includes a jump to the start!! -+D -+# Yes, we found a continuation line. -+:a - # We cannot use the sed command `D' here -- s/.*\n\(.*\)/\1/ -- tb --} --d -+s/[^\n]*\n// -+# Clear the substitution flag and do the next line. -+tb ---- glibc-2.3.2/intl/tst-gettext2.sh 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/intl/tst-gettext2.sh 2003-09-19 22:37:02.000000000 -0400 -@@ -1,6 +1,6 @@ - #! /bin/sh - # Test of gettext functions. --# Copyright (C) 2000 Free Software Foundation, Inc. -+# Copyright (C) 2000, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - # - -@@ -22,10 +22,6 @@ - common_objpfx=$1 - objpfx=$2 - --GCONV_PATH=${common_objpfx}iconvdata --export GCONV_PATH --LOCPATH=${objpfx}domaindir --export LOCPATH - LC_ALL=C - export LC_ALL - -@@ -64,6 +60,10 @@ - msgfmt -o ${objpfx}domaindir/lang2/LC_MESSAGES/tstlang.mo \ - tstlang2.po - -+GCONV_PATH=${common_objpfx}iconvdata -+export GCONV_PATH -+LOCPATH=${objpfx}domaindir -+export LOCPATH - - # Now run the test. - ${common_objpfx}elf/ld.so --library-path $common_objpfx \ ---- glibc-2.3.2/io/Makefile 2002-10-23 02:21:16.000000000 -0400 -+++ glibc-2.3.2/io/Makefile 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1992-1999,2000,01,02 Free Software Foundation, Inc. -+# Copyright (C) 1992-2002, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -63,7 +63,20 @@ - - include ../Rules - --CFLAGS-fts.c = -Wno-uninitialized -+CFLAGS-fcntl.c = -fexceptions -fasynchronous-unwind-tables -+CFLAGS-poll.c = -fexceptions -fasynchronous-unwind-tables -+CFLAGS-lockf.c = -fexceptions -+CFLAGS-statfs.c = -fexceptions -+CFLAGS-fstatfs.c = -fexceptions -+CFLAGS-statvfs.c = -fexceptions -+CFLAGS-fstatvfs.c = -fexceptions -+CFLAGS-fts.c = -Wno-uninitialized $(uses-callbacks) -fexceptions -+CFLAGS-ftw.c = $(uses-callbacks) -fexceptions -+CFLAGS-ftw64.c = $(uses-callbacks) -fexceptions -+CFLAGS-lockf.c = -fexceptions -+CFLAGS-posix_fallocate.c = -fexceptions -+CFLAGS-posix_fallocate64.c = -fexceptions -+ - CFLAGS-test-stat.c = -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE - CFLAGS-test-lfs.c = -D_LARGEFILE64_SOURCE - -@@ -83,5 +96,6 @@ - tests: $(objpfx)ftwtest.out - - $(objpfx)ftwtest.out: $(objpfx)ftwtest -- $(SHELL) -e ftwtest-sh $(common-objpfx) $( $@ -+ $(SHELL) -e ftwtest-sh $(shell cd $(common-objpfx). && pwd)/ \ -+ $(shell cd $( $@ - endif ---- glibc-2.3.2/io/fcntl.h 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/io/fcntl.h 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991,92,94,95,96,97,98,99,2000,2001 Free Software Foundation, Inc. -+/* Copyright (C) 1991,1992,1994-2001,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -56,41 +56,48 @@ - #endif /* XPG */ - - /* Do the file control operation described by CMD on FD. -- The remaining arguments are interpreted depending on CMD. */ --extern int fcntl (int __fd, int __cmd, ...) __THROW; -+ The remaining arguments are interpreted depending on CMD. -+ -+ This function is a cancellation point and therefore not marked with -+ __THROW. */ -+extern int fcntl (int __fd, int __cmd, ...); - - /* Open FILE and return a new file descriptor for it, or -1 on error. - OFLAG determines the type of access used. If O_CREAT is on OFLAG, -- the third argument is taken as a `mode_t', the mode of the created file. */ -+ the third argument is taken as a `mode_t', the mode of the created file. -+ -+ This function is a cancellation point and therefore not marked with -+ __THROW. */ - #ifndef __USE_FILE_OFFSET64 --extern int open (__const char *__file, int __oflag, ...) __THROW; -+extern int open (__const char *__file, int __oflag, ...); - #else - # ifdef __REDIRECT --extern int __REDIRECT (open, (__const char *__file, int __oflag, ...) __THROW, -- open64); -+extern int __REDIRECT (open, (__const char *__file, int __oflag, ...), open64); - # else - # define open open64 - # endif - #endif - #ifdef __USE_LARGEFILE64 --extern int open64 (__const char *__file, int __oflag, ...) __THROW; -+extern int open64 (__const char *__file, int __oflag, ...); - #endif - --/* Create and open FILE, with mode MODE. -- This takes an `int' MODE argument because that is -- what `mode_t' will be widened to. */ -+/* Create and open FILE, with mode MODE. This takes an `int' MODE -+ argument because that is what `mode_t' will be widened to. -+ -+ This function is a cancellation point and therefore not marked with -+ __THROW. */ - #ifndef __USE_FILE_OFFSET64 --extern int creat (__const char *__file, __mode_t __mode) __THROW; -+extern int creat (__const char *__file, __mode_t __mode); - #else - # ifdef __REDIRECT --extern int __REDIRECT (creat, (__const char *__file, __mode_t __mode) __THROW, -+extern int __REDIRECT (creat, (__const char *__file, __mode_t __mode), - creat64); - # else - # define creat creat64 - # endif - #endif - #ifdef __USE_LARGEFILE64 --extern int creat64 (__const char *__file, __mode_t __mode) __THROW; -+extern int creat64 (__const char *__file, __mode_t __mode); - #endif - - #if !defined F_LOCK && (defined __USE_MISC || (defined __USE_XOPEN_EXTENDED \ -@@ -109,17 +116,16 @@ - # define F_TEST 3 /* Test a region for other processes locks. */ - - # ifndef __USE_FILE_OFFSET64 --extern int lockf (int __fd, int __cmd, __off_t __len) __THROW; -+extern int lockf (int __fd, int __cmd, __off_t __len); - # else - # ifdef __REDIRECT --extern int __REDIRECT (lockf, (int __fd, int __cmd, __off64_t __len) __THROW, -- lockf64); -+extern int __REDIRECT (lockf, (int __fd, int __cmd, __off64_t __len), lockf64); - # else - # define lockf lockf64 - # endif - # endif - # ifdef __USE_LARGEFILE64 --extern int lockf64 (int __fd, int __cmd, __off64_t __len) __THROW; -+extern int lockf64 (int __fd, int __cmd, __off64_t __len); - # endif - #endif - -@@ -127,38 +133,40 @@ - /* Advice the system about the expected behaviour of the application with - respect to the file associated with FD. */ - # ifndef __USE_FILE_OFFSET64 --extern int posix_fadvise (int __fd, __off_t __offset, size_t __len, -+extern int posix_fadvise (int __fd, __off_t __offset, __off_t __len, - int __advise) __THROW; - # else - # ifdef __REDIRECT - extern int __REDIRECT (posix_fadvise, (int __fd, __off64_t __offset, -- size_t __len, int __advise) __THROW, -+ __off64_t __len, int __advise) __THROW, - posix_fadvise64); - # else - # define posix_fadvise posix_fadvise64 - # endif - # endif - # ifdef __USE_LARGEFILE64 --extern int posix_fadvise64 (int __fd, __off64_t __offset, size_t __len, -+extern int posix_fadvise64 (int __fd, __off64_t __offset, __off64_t __len, - int __advise) __THROW; - # endif - - --/* Reserve storage for the data of the file associated with FD. */ -+/* Reserve storage for the data of the file associated with FD. -+ -+ This function is a possible cancellation points and therefore not -+ marked with __THROW. */ - # ifndef __USE_FILE_OFFSET64 --extern int posix_fallocate (int __fd, __off_t __offset, size_t __len) __THROW; -+extern int posix_fallocate (int __fd, __off_t __offset, __off_t __len); - # else - # ifdef __REDIRECT - extern int __REDIRECT (posix_fallocate, (int __fd, __off64_t __offset, -- size_t __len) __THROW, -+ __off64_t __len), - posix_fallocate64); - # else - # define posix_fallocate posix_fallocate64 - # endif - # endif - # ifdef __USE_LARGEFILE64 --extern int posix_fallocate64 (int __fd, __off64_t __offset, size_t __len) -- __THROW; -+extern int posix_fallocate64 (int __fd, __off64_t __offset, __off64_t __len); - # endif - #endif - ---- glibc-2.3.2/io/fts.c 2002-04-08 03:02:07.000000000 -0400 -+++ glibc-2.3.2/io/fts.c 2003-03-18 16:46:07.000000000 -0500 -@@ -581,8 +581,9 @@ - FTSENT *cur, *tail; - DIR *dirp; - void *oldaddr; -- int cderrno, descend, len, level, maxlen, nlinks, saved_errno, -+ int cderrno, descend, len, level, nlinks, saved_errno, - nostat, doadjust; -+ size_t maxlen; - char *cp; - - /* Set current node pointer. */ ---- glibc-2.3.2/io/fts.h 2001-11-05 15:57:28.000000000 -0500 -+++ glibc-2.3.2/io/fts.h 2003-09-19 22:37:02.000000000 -0400 -@@ -120,11 +120,11 @@ - } FTSENT; - - __BEGIN_DECLS --FTSENT *fts_children (FTS *, int) __THROW; --int fts_close (FTS *) __THROW; -+FTSENT *fts_children (FTS *, int); -+int fts_close (FTS *); - FTS *fts_open (char * const *, int, -- int (*)(const FTSENT **, const FTSENT **)) __THROW; --FTSENT *fts_read (FTS *) __THROW; -+ int (*)(const FTSENT **, const FTSENT **)); -+FTSENT *fts_read (FTS *); - int fts_set (FTS *, FTSENT *, int) __THROW; - __END_DECLS - ---- glibc-2.3.2/io/ftw.c 2003-02-08 13:25:54.000000000 -0500 -+++ glibc-2.3.2/io/ftw.c 2003-08-21 08:37:02.000000000 -0400 -@@ -258,6 +258,7 @@ - - - static inline int -+__attribute ((always_inline)) - open_dir_stream (struct ftw_data *data, struct dir_data *dirp) - { - int result = 0; -@@ -348,7 +349,8 @@ - } - - --static inline int -+static int -+internal_function - process_entry (struct ftw_data *data, struct dir_data *dir, const char *name, - size_t namlen) - { -@@ -482,17 +484,6 @@ - { - if (__fchdir (dirfd (dir.stream)) < 0) - { -- if (errno == ENOSYS) -- { -- if (__chdir (data->dirbuf) < 0) -- result = -1; -- } -- else -- result = -1; -- } -- -- if (result != 0) -- { - int save_err = errno; - __closedir (dir.stream); - __set_errno (save_err); -@@ -501,7 +492,7 @@ - data->actdir = data->maxdir - 1; - data->dirstreams[data->actdir] = NULL; - -- return result; -+ return -1; - } - } - ---- glibc-2.3.2/io/ftw.h 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/io/ftw.h 2003-04-24 20:05:57.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1992, 1996, 1997, 1998, 1999 Free Software Foundation, Inc. -+/* Copyright (C) 1992,1996,1997,1998,1999,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -103,40 +103,45 @@ - # endif - #endif - --/* Call a function on every element in a directory tree. */ -+/* Call a function on every element in a directory tree. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - #ifndef __USE_FILE_OFFSET64 --extern int ftw (__const char *__dir, __ftw_func_t __func, int __descriptors) -- __THROW; -+extern int ftw (__const char *__dir, __ftw_func_t __func, int __descriptors); - #else - # ifdef __REDIRECT - extern int __REDIRECT (ftw, (__const char *__dir, __ftw_func_t __func, -- int __descriptors) __THROW, ftw64); -+ int __descriptors), ftw64); - # else - # define ftw ftw64 - # endif - #endif - #ifdef __USE_LARGEFILE64 - extern int ftw64 (__const char *__dir, __ftw64_func_t __func, -- int __descriptors) __THROW; -+ int __descriptors); - #endif - - #ifdef __USE_XOPEN_EXTENDED - /* Call a function on every element in a directory tree. FLAG allows -- to specify the behaviour more detailed. */ -+ to specify the behaviour more detailed. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - # ifndef __USE_FILE_OFFSET64 - extern int nftw (__const char *__dir, __nftw_func_t __func, int __descriptors, -- int __flag) __THROW; -+ int __flag); - # else - # ifdef __REDIRECT - extern int __REDIRECT (nftw, (__const char *__dir, __nftw_func_t __func, -- int __descriptors, int __flag) __THROW, nftw64); -+ int __descriptors, int __flag), nftw64); - # else - # define nftw nftw64 - # endif - # endif - # ifdef __USE_LARGEFILE64 - extern int nftw64 (__const char *__dir, __nftw64_func_t __func, -- int __descriptors, int __flag) __THROW; -+ int __descriptors, int __flag); - # endif - #endif - ---- glibc-2.3.2/io/test-utime.c 2002-12-12 04:24:33.000000000 -0500 -+++ glibc-2.3.2/io/test-utime.c 2003-08-21 08:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1994, 1996, 1997, 2000, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1994,1996,1997,2000,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -76,6 +76,12 @@ - return 1; - } - -+ /* The clocks used to set the modification time and that used in the -+ time() call need not be the same. They need not have the same -+ precision. Therefore we delay the following operation by one -+ second which makes sure we can compare with second precision. */ -+ sleep (1); -+ - if (utime (file, NULL)) - { - perror ("utime NULL"); -@@ -83,6 +89,8 @@ - return 1; - } - -+ sleep (1); -+ - now2 = time (NULL); - if (now2 == (time_t)-1) - { ---- glibc-2.3.2/libio/Makefile 2002-10-25 04:02:04.000000000 -0400 -+++ glibc-2.3.2/libio/Makefile 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1995,96,97,98,99,2000,01,02 Free Software Foundation, Inc. -+# Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -53,7 +53,8 @@ - tst-mmap-setvbuf bug-ungetwc1 bug-ungetwc2 tst-atime tst-eof \ - tst-freopen bug-rewind bug-rewind2 bug-ungetc bug-fseek \ - tst-mmap-eofsync tst-mmap-fflushsync bug-mmap-fflush \ -- tst-mmap2-eofsync tst-mmap-offend bug-fopena+ bug-wfflush -+ tst-mmap2-eofsync tst-mmap-offend bug-fopena+ bug-wfflush \ -+ bug-ungetc2 bug-ftell - test-srcs = test-freopen - - all: # Make this the default target; it will be defined in Rules. -@@ -75,10 +76,64 @@ - endif - - # Support for exception handling. --CFLAGS-genops.c = $(exceptions) --CFLAGS-wgenops.c = $(exceptions) - CFLAGS-fileops.c = $(exceptions) -+CFLAGS-fputc.c = $(exceptions) -+CFLAGS-fputwc.c = $(exceptions) -+CFLAGS-freopen64.c = $(exceptions) -+CFLAGS-freopen.c = $(exceptions) -+CFLAGS-fseek.c = $(exceptions) -+CFLAGS-fseeko64.c = $(exceptions) -+CFLAGS-fseeko.c = $(exceptions) -+CFLAGS-ftello64.c = $(exceptions) -+CFLAGS-ftello.c = $(exceptions) -+CFLAGS-fwide.c = $(exceptions) -+CFLAGS-genops.c = $(exceptions) -+CFLAGS-getc.c = $(exceptions) -+CFLAGS-getchar.c = $(exceptions) -+CFLAGS-getwc.c = $(exceptions) -+CFLAGS-getwchar.c = $(exceptions) -+CFLAGS-iofclose.c = $(exceptions) -+CFLAGS-iofflush.c = $(exceptions) -+CFLAGS-iofgetpos64.c = $(exceptions) -+CFLAGS-iofgetpos.c = $(exceptions) -+CFLAGS-iofgets.c = $(exceptions) -+CFLAGS-iofgetws.c = $(exceptions) -+CFLAGS-iofputs.c = $(exceptions) -+CFLAGS-iofputws.c = $(exceptions) -+CFLAGS-iofread.c = $(exceptions) -+CFLAGS-iofsetpos64.c = $(exceptions) -+CFLAGS-iofsetpos.c = $(exceptions) -+CFLAGS-ioftell.c = $(exceptions) -+CFLAGS-iofwrite.c = $(exceptions) -+CFLAGS-iogetdelim.c = $(exceptions) -+CFLAGS-iogetline.c = $(exceptions) -+CFLAGS-iogets.c = $(exceptions) -+CFLAGS-iogetwline.c = $(exceptions) -+CFLAGS-ioputs.c = $(exceptions) -+CFLAGS-ioseekoff.c = $(exceptions) -+CFLAGS-ioseekpos.c = $(exceptions) -+CFLAGS-iosetbuffer.c = $(exceptions) -+CFLAGS-iosetvbuf.c = $(exceptions) -+CFLAGS-ioungetc.c = $(exceptions) -+CFLAGS-ioungetwc.c = $(exceptions) -+CFLAGS-oldfileops.c = $(exceptions) -+CFLAGS-oldiofclose.c = $(exceptions) -+CFLAGS-oldiofgetpos64.c = $(exceptions) -+CFLAGS-oldiofgetpos.c = $(exceptions) -+CFLAGS-oldiofsetpos64.c = $(exceptions) -+CFLAGS-oldiofsetpos.c = $(exceptions) -+CFLAGS-peekc.c = $(exceptions) -+CFLAGS-putc.c = $(exceptions) -+CFLAGS-putchar.c = $(exceptions) -+CFLAGS-putwc.c = $(exceptions) -+CFLAGS-putwchar.c = $(exceptions) -+CFLAGS-rewind.c = $(exceptions) - CFLAGS-wfileops.c = $(exceptions) -+CFLAGS-wgenops.c = $(exceptions) -+CFLAGS-oldiofopen.c = $(exceptions) -+CFLAGS-iofopen.c = $(exceptions) -+CFLAGS-iofopen64.c = $(exceptions) -+CFLAGS-oldtmpfile.c = $(exceptions) - # XXX Do we need filedoalloc and wfiledoalloc? Others? - - CFLAGS-tst_putwc.c = -DOBJPFX=\"$(objpfx)\" -@@ -93,6 +148,7 @@ - tst-ungetwc2-ENV = LOCPATH=$(common-objpfx)localedata - bug-ungetwc2-ENV = LOCPATH=$(common-objpfx)localedata - tst-swscanf-ENV = LOCPATH=$(common-objpfx)localedata -+bug-ftell-ENV = LOCPATH=$(common-objpfx)localedata - - generated = tst-fopenloc.mtrace tst-fopenloc.check - ---- glibc-2.3.2/libio/Versions 2000-09-01 04:39:09.000000000 -0400 -+++ glibc-2.3.2/libio/Versions 2003-08-21 08:37:02.000000000 -0400 -@@ -145,4 +145,8 @@ - # w* - wprintf; wscanf; - } -+ GLIBC_PRIVATE { -+ # Used by NPTL and librt -+ __libc_fatal; -+ } - } ---- glibc-2.3.2/libio/bits/stdio.h 2001-08-02 19:39:43.000000000 -0400 -+++ glibc-2.3.2/libio/bits/stdio.h 2003-05-12 12:13:04.000000000 -0400 -@@ -31,14 +31,14 @@ - #ifdef __USE_EXTERN_INLINES - /* Write formatted output to stdout from argument list ARG. */ - __STDIO_INLINE int --vprintf (__const char *__restrict __fmt, _G_va_list __arg) __THROW -+vprintf (__const char *__restrict __fmt, _G_va_list __arg) - { - return vfprintf (stdout, __fmt, __arg); - } - - /* Read a character from stdin. */ - __STDIO_INLINE int --getchar (void) __THROW -+getchar (void) - { - return _IO_getc (stdin); - } -@@ -47,14 +47,14 @@ - # if defined __USE_POSIX || defined __USE_MISC - /* This is defined in POSIX.1:1996. */ - __STDIO_INLINE int --getc_unlocked (FILE *__fp) __THROW -+getc_unlocked (FILE *__fp) - { - return _IO_getc_unlocked (__fp); - } - - /* This is defined in POSIX.1:1996. */ - __STDIO_INLINE int --getchar_unlocked (void) __THROW -+getchar_unlocked (void) - { - return _IO_getc_unlocked (stdin); - } -@@ -63,7 +63,7 @@ - - /* Write a character to stdout. */ - __STDIO_INLINE int --putchar (int __c) __THROW -+putchar (int __c) - { - return _IO_putc (__c, stdout); - } -@@ -72,7 +72,7 @@ - # ifdef __USE_MISC - /* Faster version when locking is not necessary. */ - __STDIO_INLINE int --fputc_unlocked (int __c, FILE *__stream) __THROW -+fputc_unlocked (int __c, FILE *__stream) - { - return _IO_putc_unlocked (__c, __stream); - } -@@ -82,14 +82,14 @@ - # if defined __USE_POSIX || defined __USE_MISC - /* This is defined in POSIX.1:1996. */ - __STDIO_INLINE int --putc_unlocked (int __c, FILE *__stream) __THROW -+putc_unlocked (int __c, FILE *__stream) - { - return _IO_putc_unlocked (__c, __stream); - } - - /* This is defined in POSIX.1:1996. */ - __STDIO_INLINE int --putchar_unlocked (int __c) __THROW -+putchar_unlocked (int __c) - { - return _IO_putc_unlocked (__c, stdout); - } -@@ -99,7 +99,7 @@ - # ifdef __USE_GNU - /* Like `getdelim', but reads up to a newline. */ - __STDIO_INLINE _IO_ssize_t --getline (char **__lineptr, size_t *__n, FILE *__stream) __THROW -+getline (char **__lineptr, size_t *__n, FILE *__stream) - { - return __getdelim (__lineptr, __n, '\n', __stream); - } ---- glibc-2.3.2/libio/bug-ftell.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/libio/bug-ftell.c 2003-09-08 03:04:11.000000000 -0400 -@@ -0,0 +1,57 @@ -+#include -+#include -+#include -+#include -+ -+ -+static int -+do_test (void) -+{ -+ if (setlocale (LC_ALL, "de_DE.UTF-8") == NULL) -+ { -+ puts ("setlocale failed"); -+ return 1; -+ } -+ -+ FILE *fp = tmpfile (); -+ if (fp == NULL) -+ { -+ puts ("tmpfile failed"); -+ return 1; -+ } -+ -+ if (fputws (L"hello", fp) == EOF) -+ { -+ puts ("fputws failed"); -+ return 1; -+ } -+ -+ rewind (fp); -+ -+ const wchar_t *cp; -+ unsigned int cnt; -+ for (cp = L"hello", cnt = 1; *cp != L'\0'; ++cp, ++cnt) -+ { -+ wint_t wc = fgetwc (fp); -+ if (wc != (wint_t) *cp) -+ { -+ printf ("fgetwc failed: got L'%lc', expected L'%lc'\n", wc, *cp); -+ return 1; -+ } -+ off_t o = ftello (fp); -+ if (o != cnt) -+ { -+ printf ("ftello failed: got %lu, expected %u\n", -+ (unsigned long int) o, cnt); -+ return 1; -+ } -+ printf ("round %u OK\n", cnt); -+ } -+ -+ fclose (fp); -+ -+ return 0; -+} -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" ---- glibc-2.3.2/libio/bug-ungetc2.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/libio/bug-ungetc2.c 2003-09-06 01:41:42.000000000 -0400 -@@ -0,0 +1,98 @@ -+#include -+#include -+ -+ -+static int -+check (FILE *fp, off_t o) -+{ -+ int result = 0; -+ if (feof (fp)) -+ { -+ puts ("feof !"); -+ result = 1; -+ } -+ if (ferror (fp)) -+ { -+ puts ("ferror !"); -+ result = 1; -+ } -+ if (ftello (fp) != o) -+ { -+ printf ("position = %lu, not %lu\n", (unsigned long int) ftello (fp), -+ (unsigned long int) o); -+ result = 1; -+ } -+ return result; -+} -+ -+ -+static int -+do_test (void) -+{ -+ FILE *fp = tmpfile (); -+ if (fp == NULL) -+ { -+ puts ("tmpfile failed"); -+ return 1; -+ } -+ if (check (fp, 0) != 0) -+ return 1; -+ -+ puts ("going to write"); -+ if (fputs ("hello", fp) == EOF) -+ { -+ puts ("fputs failed"); -+ return 1; -+ } -+ if (check (fp, 5) != 0) -+ return 1; -+ -+ puts ("going to rewind"); -+ rewind (fp); -+ if (check (fp, 0) != 0) -+ return 1; -+ -+ puts ("going to read char"); -+ int c = fgetc (fp); -+ if (c != 'h') -+ { -+ printf ("read %c, not %c\n", c, 'h'); -+ return 1; -+ } -+ if (check (fp, 1) != 0) -+ return 1; -+ -+ puts ("going to put back"); -+ if (ungetc (' ', fp) == EOF) -+ { -+ puts ("ungetc failed"); -+ return 1; -+ } -+ if (check (fp, 0) != 0) -+ return 1; -+ -+ puts ("going to write again"); -+ if (fputs ("world", fp) == EOF) -+ { -+ puts ("2nd fputs failed"); -+ return 1; -+ } -+ if (check (fp, 5) != 0) -+ return 1; -+ -+ puts ("going to rewind again"); -+ rewind (fp); -+ if (check (fp, 0) != 0) -+ return 1; -+ -+ if (fclose (fp) != 0) -+ { -+ puts ("fclose failed"); -+ return 1; -+ } -+ -+ return 0; -+} -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" ---- glibc-2.3.2/libio/fileops.c 2003-01-08 00:18:32.000000000 -0500 -+++ glibc-2.3.2/libio/fileops.c 2003-09-19 22:37:02.000000000 -0400 -@@ -47,6 +47,7 @@ - # include "../iconv/gconv_charset.h" - # include "../iconv/gconv_int.h" - # include -+# include - #endif - #ifndef errno - extern int errno; -@@ -58,11 +59,11 @@ - - #ifdef _LIBC - # define open(Name, Flags, Prot) __open (Name, Flags, Prot) --# define close(FD) __close (FD) - # define lseek(FD, Offset, Whence) __lseek (FD, Offset, Whence) - # define read(FD, Buf, NBytes) __read (FD, Buf, NBytes) - # define write(FD, Buf, NBytes) __write (FD, Buf, NBytes) - # define _IO_do_write _IO_new_do_write /* For macro uses. */ -+# define _IO_file_close_it _IO_new_file_close_it - #else - # define _IO_new_do_write _IO_do_write - # define _IO_new_file_attach _IO_file_attach -@@ -214,9 +215,6 @@ - } - INTDEF2(_IO_new_file_finish, _IO_file_finish) - --#if defined __GNUC__ && __GNUC__ >= 2 --__inline__ --#endif - _IO_FILE * - _IO_file_open (fp, filename, posix_mode, prot, read_write, is32not64) - _IO_FILE *fp; -@@ -227,10 +225,12 @@ - int is32not64; - { - int fdesc; --#ifdef _G_OPEN64 -- fdesc = (is32not64 -- ? open (filename, posix_mode, prot) -- : _G_OPEN64 (filename, posix_mode, prot)); -+#ifdef _LIBC -+ if (__builtin_expect (fp->_flags2 & _IO_FLAGS2_NOTCANCEL, 0)) -+ fdesc = open_not_cancel (filename, -+ posix_mode | (is32not64 ? 0 : O_LARGEFILE), prot); -+ else -+ fdesc = open (filename, posix_mode | (is32not64 ? 0 : O_LARGEFILE), prot); - #else - fdesc = open (filename, posix_mode, prot); - #endif -@@ -242,7 +242,7 @@ - if (_IO_SEEKOFF (fp, (_IO_off64_t)0, _IO_seek_end, _IOS_INPUT|_IOS_OUTPUT) - == _IO_pos_BAD && errno != ESPIPE) - { -- close (fdesc); -+ close_not_cancel (fdesc); - return NULL; - } - INTUSE(_IO_link_in) ((struct _IO_FILE_plus *) fp); -@@ -292,7 +292,7 @@ - #ifdef _LIBC - last_recognized = mode; - #endif -- for (i = 1; i < 5; ++i) -+ for (i = 1; i < 6; ++i) - { - switch (*++mode) - { -@@ -319,6 +319,9 @@ - case 'm': - fp->_flags2 |= _IO_FLAGS2_MMAP; - continue; -+ case 'c': -+ fp->_flags2 |= _IO_FLAGS2_NOTCANCEL; -+ break; - default: - /* Ignore. */ - continue; -@@ -353,6 +356,7 @@ - /* Something went wrong, we cannot load the conversion modules. - This means we cannot proceed since the user explicitly asked - for these. */ -+ (void) INTUSE(_IO_file_close_it) (fp); - __set_errno (EINVAL); - return NULL; - } -@@ -397,10 +401,6 @@ - - /* Set the mode now. */ - result->_mode = 1; -- -- /* We don't need the step data structure anymore. */ -- __gconv_release_cache (fcts.towc, fcts.towc_nsteps); -- __gconv_release_cache (fcts.tomb, fcts.tomb_nsteps); - } - } - #endif /* GNU libc */ -@@ -456,7 +456,7 @@ - _IO_FILE *result; - - /* Change the function table. */ -- _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps); -+ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_file_jumps; - fp->_wide_data->_wide_vtable = &_IO_wfile_jumps; - - /* And perform the normal operation. */ -@@ -566,16 +566,13 @@ - traditional Unix systems did this for stdout. stderr better - not be line buffered. So we do just that here - explicitly. --drepper */ -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, -- _IO_stdout); -- _IO_flockfile (_IO_stdout); -+ _IO_acquire_lock (_IO_stdout); - - if ((_IO_stdout->_flags & (_IO_LINKED | _IO_NO_WRITES | _IO_LINE_BUF)) - == (_IO_LINKED | _IO_LINE_BUF)) - _IO_OVERFLOW (_IO_stdout, EOF); - -- _IO_funlockfile (_IO_stdout); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (_IO_stdout); - #endif - } - -@@ -708,7 +705,7 @@ - fp->_IO_buf_base = fp->_IO_buf_end = NULL; - _IO_setg (fp, NULL, NULL, NULL); - if (fp->_mode <= 0) -- _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps); -+ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_file_jumps; - else - _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_wfile_jumps; - fp->_wide_data->_wide_vtable = &_IO_wfile_jumps; -@@ -801,7 +798,7 @@ - /* We couldn't use mmap, so revert to the vanilla file operations. */ - - if (fp->_mode <= 0) -- _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps); -+ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_file_jumps; - else - _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_wfile_jumps; - fp->_wide_data->_wide_vtable = &_IO_wfile_jumps; -@@ -844,6 +841,15 @@ - makes room for subsequent output. - Otherwise, set the read pointers to _IO_read_end (leaving that - alone, so it can continue to correspond to the external position). */ -+ if (__builtin_expect (_IO_in_backup (f), 0)) -+ { -+ size_t nbackup = f->_IO_read_end - f->_IO_read_ptr; -+ INTUSE(_IO_free_backup_area) (f); -+ f->_IO_read_base -= MIN (nbackup, -+ f->_IO_read_base - f->_IO_buf_base); -+ f->_IO_read_ptr = f->_IO_read_base; -+ } -+ - if (f->_IO_read_ptr == f->_IO_buf_end) - f->_IO_read_end = f->_IO_read_ptr = f->_IO_buf_base; - f->_IO_write_ptr = f->_IO_read_ptr; -@@ -1207,7 +1213,9 @@ - void *buf; - _IO_ssize_t size; - { -- return read (fp->_fileno, buf, size); -+ return (__builtin_expect (fp->_flags2 & _IO_FLAGS2_NOTCANCEL, 0) -+ ? read_not_cancel (fp->_fileno, buf, size) -+ : read (fp->_fileno, buf, size)); - } - INTDEF(_IO_file_read) - -@@ -1245,14 +1253,18 @@ - /* In addition to closing the file descriptor we have to unmap the file. */ - (void) __munmap (fp->_IO_buf_base, fp->_IO_buf_end - fp->_IO_buf_base); - fp->_IO_buf_base = fp->_IO_buf_end = NULL; -- return close (fp->_fileno); -+ /* Cancelling close should be avoided if possible since it leaves an -+ unrecoverable state behind. */ -+ return close_not_cancel (fp->_fileno); - } - - int - _IO_file_close (fp) - _IO_FILE *fp; - { -- return close (fp->_fileno); -+ /* Cancelling close should be avoided if possible since it leaves an -+ unrecoverable state behind. */ -+ return close_not_cancel (fp->_fileno); - } - INTDEF(_IO_file_close) - -@@ -1265,7 +1277,10 @@ - _IO_ssize_t to_do = n; - while (to_do > 0) - { -- _IO_ssize_t count = write (f->_fileno, data, to_do); -+ _IO_ssize_t count = (__builtin_expect (f->_flags2 -+ & _IO_FLAGS2_NOTCANCEL, 0) -+ ? write_not_cancel (f->_fileno, data, to_do) -+ : write (f->_fileno, data, to_do)); - if (count < 0) - { - f->_flags |= _IO_ERR_SEEN; -@@ -1548,6 +1563,7 @@ - - #ifdef _LIBC - # undef _IO_do_write -+# undef _IO_file_close_it - versioned_symbol (libc, _IO_new_do_write, _IO_do_write, GLIBC_2_1); - versioned_symbol (libc, _IO_new_file_attach, _IO_file_attach, GLIBC_2_1); - versioned_symbol (libc, _IO_new_file_close_it, _IO_file_close_it, GLIBC_2_1); -@@ -1586,7 +1602,7 @@ - JUMP_INIT(showmanyc, _IO_default_showmanyc), - JUMP_INIT(imbue, _IO_default_imbue) - }; --INTVARDEF(_IO_file_jumps) -+libc_hidden_data_def (_IO_file_jumps) - - struct _IO_jump_t _IO_file_jumps_mmap = - { ---- glibc-2.3.2/libio/fputc.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/fputc.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1996, 1997, 1998 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1996, 1997, 1998, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -35,11 +35,9 @@ - { - int result; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - result = _IO_putc_unlocked (c, fp); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - ---- glibc-2.3.2/libio/fputwc.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/fputwc.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1996, 1997, 1998, 1999 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1996,1997,1998,1999,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -35,13 +35,11 @@ - { - int result; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - if (_IO_fwide (fp, 1) < 0) - result = WEOF; - else - result = _IO_putwc_unlocked (wc, fp); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } ---- glibc-2.3.2/libio/freopen.c 2002-10-03 04:11:25.000000000 -0400 -+++ glibc-2.3.2/libio/freopen.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,95,96,97,98,2000,2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,95,96,97,98,2000,2001,2002,2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -43,8 +44,7 @@ - CHECK_FILE (fp, NULL); - if (!(fp->_flags & _IO_IS_FILEBUF)) - return NULL; -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - if (filename == NULL && _IO_fileno (fp) >= 0) - { - fd = __dup (_IO_fileno (fp)); -@@ -67,9 +67,9 @@ - #endif - { - INTUSE(_IO_file_close_it) (fp); -- _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps); -- if (fp->_vtable_offset == 0 && fp->_wide_data != NULL) -- fp->_wide_data->_wide_vtable = &INTUSE(_IO_wfile_jumps); -+ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_file_jumps; -+ if (_IO_vtable_offset (fp) == 0 && fp->_wide_data != NULL) -+ fp->_wide_data->_wide_vtable = &_IO_wfile_jumps; - result = INTUSE(_IO_file_fopen) (fp, filename, mode, 1); - if (result != NULL) - result = __fopen_maybe_mmap (result); -@@ -83,7 +83,6 @@ - if (filename != NULL) - free ((char *) filename); - } -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } ---- glibc-2.3.2/libio/freopen64.c 2002-10-03 04:11:32.000000000 -0400 -+++ glibc-2.3.2/libio/freopen64.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993,1995,1996,1997,1998,2000,2001,2002 -+/* Copyright (C) 1993,1995,1996,1997,1998,2000,2001,2002, 2003 - Free Software Foundation, Inc. - This file is part of the GNU C Library. - -@@ -44,8 +44,7 @@ - CHECK_FILE (fp, NULL); - if (!(fp->_flags & _IO_IS_FILEBUF)) - return NULL; -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - if (filename == NULL && _IO_fileno (fp) >= 0) - { - fd = __dup (_IO_fileno (fp)); -@@ -53,9 +52,9 @@ - filename = fd_to_filename (fd); - } - INTUSE(_IO_file_close_it) (fp); -- _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps); -- if (fp->_vtable_offset == 0 && fp->_wide_data != NULL) -- fp->_wide_data->_wide_vtable = &INTUSE(_IO_wfile_jumps); -+ _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &_IO_file_jumps; -+ if (_IO_vtable_offset (fp) == 0 && fp->_wide_data != NULL) -+ fp->_wide_data->_wide_vtable = &_IO_wfile_jumps; - result = INTUSE(_IO_file_fopen) (fp, filename, mode, 0); - if (result != NULL) - result = __fopen_maybe_mmap (result); -@@ -68,8 +67,7 @@ - if (filename != NULL) - free ((char *) filename); - } -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - #else - __set_errno (ENOSYS); ---- glibc-2.3.2/libio/fseek.c 2002-08-04 14:19:41.000000000 -0400 -+++ glibc-2.3.2/libio/fseek.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,1995,1996,1997,1998,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -36,11 +37,9 @@ - { - int result; - CHECK_FILE (fp, -1); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - result = _IO_fseek (fp, offset, whence); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - libc_hidden_def (fseek) ---- glibc-2.3.2/libio/fseeko.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/fseeko.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1995,1996,1997,1998,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -36,10 +36,8 @@ - { - int result; - CHECK_FILE (fp, -1); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - result = _IO_fseek (fp, offset, whence); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } ---- glibc-2.3.2/libio/fseeko64.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/fseeko64.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1995,1996,1997,1998,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -38,11 +38,9 @@ - #ifdef _G_LSEEK64 - int result; - CHECK_FILE (fp, -1); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - result = _IO_fseek (fp, offset, whence); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - #else - __set_errno (ENOSYS); ---- glibc-2.3.2/libio/ftello.c 2002-11-05 02:37:46.000000000 -0500 -+++ glibc-2.3.2/libio/ftello.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1995-2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -37,16 +37,14 @@ - { - _IO_off64_t pos; - CHECK_FILE (fp, -1L); -- _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0); - if (_IO_in_backup (fp)) - { - if (fp->_mode <= 0) - pos -= fp->_IO_save_end - fp->_IO_save_base; - } -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - if (pos == _IO_pos_BAD) - { - #ifdef EIO ---- glibc-2.3.2/libio/ftello64.c 2002-11-05 02:37:15.000000000 -0500 -+++ glibc-2.3.2/libio/ftello64.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1995-2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -38,16 +38,14 @@ - #ifdef _G_LSEEK64 - _IO_off64_t pos; - CHECK_FILE (fp, -1L); -- _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0); - if (_IO_in_backup (fp)) - { - if (fp->_mode <= 0) - pos -= fp->_IO_save_end - fp->_IO_save_base; - } -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - if (pos == _IO_pos_BAD) - { - #ifdef EIO ---- glibc-2.3.2/libio/fwide.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/fwide.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1999, 2000 Free Software Foundation, Inc. -+/* Copyright (C) 1999, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -44,13 +44,9 @@ - or the orientation already has been determined. */ - return fp->_mode; - -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -- -+ _IO_acquire_lock (fp); - result = _IO_fwide (fp, mode); -- -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - - return result; - } ---- glibc-2.3.2/libio/genops.c 2003-01-08 00:22:10.000000000 -0500 -+++ glibc-2.3.2/libio/genops.c 2003-08-21 08:37:02.000000000 -0400 -@@ -324,7 +324,7 @@ - _IO_FILE *fp; - { - #if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T -- if (fp->_vtable_offset == 0 && _IO_fwide (fp, -1) != -1) -+ if (_IO_vtable_offset (fp) == 0 && _IO_fwide (fp, -1) != -1) - return EOF; - #endif - -@@ -357,7 +357,7 @@ - _IO_FILE *fp; - { - #if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T -- if (fp->_vtable_offset == 0 && _IO_fwide (fp, -1) != -1) -+ if (_IO_vtable_offset (fp) == 0 && _IO_fwide (fp, -1) != -1) - return EOF; - #endif - -@@ -602,12 +602,9 @@ - INTDEF(_IO_init) - - void --_IO_no_init (fp, flags, orientation, wd, jmp) -+_IO_old_init (fp, flags) - _IO_FILE *fp; - int flags; -- int orientation; -- struct _IO_wide_data *wd; -- struct _IO_jump_t *jmp; - { - fp->_flags = _IO_MAGIC|flags; - fp->_flags2 = 0; -@@ -633,6 +630,17 @@ - if (fp->_lock != NULL) - _IO_lock_init (*fp->_lock); - #endif -+} -+ -+void -+_IO_no_init (fp, flags, orientation, wd, jmp) -+ _IO_FILE *fp; -+ int flags; -+ int orientation; -+ struct _IO_wide_data *wd; -+ struct _IO_jump_t *jmp; -+{ -+ _IO_old_init (fp, flags); - fp->_mode = orientation; - #if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T - if (orientation >= 0) -@@ -826,7 +834,7 @@ - - if (((fp->_mode <= 0 && fp->_IO_write_ptr > fp->_IO_write_base) - #if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T -- || (fp->_vtable_offset == 0 -+ || (_IO_vtable_offset (fp) == 0 - && fp->_mode > 0 && (fp->_wide_data->_IO_write_ptr - > fp->_wide_data->_IO_write_base)) - #endif ---- glibc-2.3.2/libio/getc.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/getc.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993, 95, 96, 97, 98, 99 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -36,11 +37,9 @@ - { - int result; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - result = _IO_getc_unlocked (fp); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - ---- glibc-2.3.2/libio/getchar.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/getchar.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1996, 1997, 1998 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1996, 1997, 1998, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -34,12 +34,9 @@ - getchar () - { - int result; -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, -- _IO_stdin); -- _IO_flockfile (_IO_stdin); -+ _IO_acquire_lock (_IO_stdin); - result = _IO_getc_unlocked (_IO_stdin); -- _IO_funlockfile (_IO_stdin); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (_IO_stdin); - return result; - } - ---- glibc-2.3.2/libio/getwc.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/getwc.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2000, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -37,11 +38,9 @@ - { - wint_t result; - CHECK_FILE (fp, WEOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - result = _IO_getwc_unlocked (fp); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - ---- glibc-2.3.2/libio/getwchar.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/getwchar.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1996, 1997, 1998, 1999 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1996,1997,1998,1999,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -34,11 +34,8 @@ - getwchar () - { - wint_t result; -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, -- _IO_stdin); -- _IO_flockfile (_IO_stdin); -+ _IO_acquire_lock (_IO_stdin); - result = _IO_getwc_unlocked (_IO_stdin); -- _IO_funlockfile (_IO_stdin); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (_IO_stdin); - return result; - } ---- glibc-2.3.2/libio/iofclose.c 2002-04-02 22:00:56.000000000 -0500 -+++ glibc-2.3.2/libio/iofclose.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993,1995,1997-2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1995,1997-2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -49,7 +49,7 @@ - /* We desperately try to help programs which are using streams in a - strange way and mix old and new functions. Detect old streams - here. */ -- if (fp->_vtable_offset != 0) -+ if (_IO_vtable_offset (fp) != 0) - return _IO_old_fclose (fp); - #endif - -@@ -57,15 +57,13 @@ - if (fp->_IO_file_flags & _IO_IS_FILEBUF) - INTUSE(_IO_un_link) ((struct _IO_FILE_plus *) fp); - -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - if (fp->_IO_file_flags & _IO_IS_FILEBUF) - status = INTUSE(_IO_file_close_it) (fp); - else - status = fp->_flags & _IO_ERR_SEEN ? -1 : 0; - _IO_FINISH (fp); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - if (fp->_mode > 0) - { - #if _LIBC ---- glibc-2.3.2/libio/iofdopen.c 2002-08-30 02:56:29.000000000 -0400 -+++ glibc-2.3.2/libio/iofdopen.c 2003-04-12 11:39:42.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,1994,1997-1999,2000,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1994,1997,1998,1999,2000,2002,2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -152,12 +153,12 @@ - (use_mmap && (read_write & _IO_NO_WRITES)) - ? &_IO_wfile_jumps_maybe_mmap : - #endif -- &INTUSE(_IO_wfile_jumps)); -+ &_IO_wfile_jumps); - _IO_JUMPS (&new_f->fp) = - #ifdef _G_HAVE_MMAP - (use_mmap && (read_write & _IO_NO_WRITES)) ? &_IO_file_jumps_maybe_mmap : - #endif -- &INTUSE(_IO_file_jumps); -+ &_IO_file_jumps; - INTUSE(_IO_file_init) (&new_f->fp); - #if !_IO_UNIFIED_JUMPTABLES - new_f->fp.vtable = NULL; ---- glibc-2.3.2/libio/iofflush.c 2002-11-24 21:23:25.000000000 -0500 -+++ glibc-2.3.2/libio/iofflush.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,1995,1996,1997,1998,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -38,11 +39,9 @@ - { - int result; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - result = _IO_SYNC (fp) ? EOF : 0; -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - } ---- glibc-2.3.2/libio/iofgetpos.c 2002-11-05 02:38:25.000000000 -0500 -+++ glibc-2.3.2/libio/iofgetpos.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1995-2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -38,8 +38,7 @@ - _IO_off64_t pos; - int result = 0; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0); - if (_IO_in_backup (fp)) - { -@@ -72,8 +71,7 @@ - posp->__state = fp->_wide_data->_IO_state; - } - -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - ---- glibc-2.3.2/libio/iofgetpos64.c 2002-11-05 02:38:14.000000000 -0500 -+++ glibc-2.3.2/libio/iofgetpos64.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1995-2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -37,17 +37,15 @@ - { - #ifdef _G_LSEEK64 - _IO_off64_t pos; -+ int result = 0; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0); - if (_IO_in_backup (fp)) - { - if (fp->_mode <= 0) - pos -= fp->_IO_save_end - fp->_IO_save_base; - } -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); - if (pos == _IO_pos_BAD) - { - /* ANSI explicitly requires setting errno to a positive value on -@@ -56,14 +54,18 @@ - if (errno == 0) - __set_errno (EIO); - # endif -- return EOF; -+ result = EOF; - } -- posp->__pos = pos; -- if (fp->_mode > 0 -- && (*fp->_codecvt->__codecvt_do_encoding) (fp->_codecvt) < 0) -- /* This is a stateful encoding, safe the state. */ -- posp->__state = fp->_wide_data->_IO_state; -- return 0; -+ else -+ { -+ posp->__pos = pos; -+ if (fp->_mode > 0 -+ && (*fp->_codecvt->__codecvt_do_encoding) (fp->_codecvt) < 0) -+ /* This is a stateful encoding, safe the state. */ -+ posp->__state = fp->_wide_data->_IO_state; -+ } -+ _IO_release_lock (fp); -+ return result; - #else - __set_errno (ENOSYS); - return EOF; ---- glibc-2.3.2/libio/iofgets.c 2002-08-26 17:15:51.000000000 -0400 -+++ glibc-2.3.2/libio/iofgets.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993, 95, 96, 97, 98, 99, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -40,8 +41,7 @@ - CHECK_FILE (fp, NULL); - if (n <= 0) - return NULL; -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - /* This is very tricky since a file descriptor may be in the - non-blocking mode. The error flag doesn't mean much in this - case. We return an error only when there is a new error. */ -@@ -59,8 +59,7 @@ - result = buf; - } - fp->_IO_file_flags |= old_error; -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - ---- glibc-2.3.2/libio/iofgetws.c 2001-08-08 19:09:25.000000000 -0400 -+++ glibc-2.3.2/libio/iofgetws.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993, 95, 96, 97, 98, 99, 2001 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2001 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -40,8 +41,7 @@ - CHECK_FILE (fp, NULL); - if (n <= 0) - return NULL; -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - /* This is very tricky since a file descriptor may be in the - non-blocking mode. The error flag doesn't mean much in this - case. We return an error only when there is a new error. */ -@@ -58,7 +58,6 @@ - result = buf; - } - fp->_IO_file_flags |= old_error; -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } ---- glibc-2.3.2/libio/iofopen.c 2002-08-30 02:45:05.000000000 -0400 -+++ glibc-2.3.2/libio/iofopen.c 2003-04-12 11:39:42.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,1997,1998,1999,2000,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1997,1998,1999,2000,2002,2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -80,11 +81,11 @@ - new_f->fp.file._lock = &new_f->lock; - #endif - #if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T -- _IO_no_init (&new_f->fp.file, 0, 0, &new_f->wd, &INTUSE(_IO_wfile_jumps)); -+ _IO_no_init (&new_f->fp.file, 0, 0, &new_f->wd, &_IO_wfile_jumps); - #else - _IO_no_init (&new_f->fp.file, 1, 0, NULL, NULL); - #endif -- _IO_JUMPS (&new_f->fp) = &INTUSE(_IO_file_jumps); -+ _IO_JUMPS (&new_f->fp) = &_IO_file_jumps; - INTUSE(_IO_file_init) (&new_f->fp); - #if !_IO_UNIFIED_JUMPTABLES - new_f->fp.vtable = NULL; ---- glibc-2.3.2/libio/iofputs.c 2002-08-26 17:15:51.000000000 -0400 -+++ glibc-2.3.2/libio/iofputs.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,1996,1997,1998,1999,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1996, 1997, 1998, 1999, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -36,13 +37,11 @@ - _IO_size_t len = strlen (str); - int result = EOF; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -- if ((fp->_vtable_offset != 0 || _IO_fwide (fp, -1) == -1) -+ _IO_acquire_lock (fp); -+ if ((_IO_vtable_offset (fp) != 0 || _IO_fwide (fp, -1) == -1) - && _IO_sputn (fp, str, len) == len) - result = 1; -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - libc_hidden_def (_IO_fputs) ---- glibc-2.3.2/libio/iofputws.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/iofputws.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,1996,1997,1998,1999,2000 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1996, 1997, 1998, 1999, 2000, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -36,12 +37,10 @@ - _IO_size_t len = __wcslen (str); - int result = EOF; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - if (_IO_fwide (fp, 1) == 1 - && _IO_sputn (fp, (char *) str, len) == len) - result = 1; -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } ---- glibc-2.3.2/libio/iofread.c 2002-08-26 17:15:51.000000000 -0400 -+++ glibc-2.3.2/libio/iofread.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,1995,1997,1998,1999,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1997, 1998, 1999, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -39,11 +40,9 @@ - CHECK_FILE (fp, 0); - if (bytes_requested == 0) - return 0; -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - bytes_read = INTUSE(_IO_sgetn) (fp, (char *) buf, bytes_requested); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return bytes_requested == bytes_read ? count : bytes_read / size; - } - INTDEF(_IO_fread) ---- glibc-2.3.2/libio/iofsetpos.c 2002-11-05 02:33:34.000000000 -0500 -+++ glibc-2.3.2/libio/iofsetpos.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993, 1995, 1997-2000, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1997, 1998, 1999, 2000, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -36,8 +37,7 @@ - { - int result; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - if (_IO_seekpos_unlocked (fp, posp->__pos, _IOS_INPUT|_IOS_OUTPUT) - == _IO_pos_BAD) - { -@@ -57,8 +57,7 @@ - /* This is a stateful encoding, restore the state. */ - fp->_wide_data->_IO_state = posp->__state; - } -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - ---- glibc-2.3.2/libio/iofsetpos64.c 2002-11-05 02:33:14.000000000 -0500 -+++ glibc-2.3.2/libio/iofsetpos64.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993, 1995, 1997-2000, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1997, 1998, 1999, 2000, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -37,8 +38,7 @@ - #ifdef _G_LSEEK64 - int result; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - if (_IO_seekpos_unlocked (fp, posp->__pos, _IOS_INPUT|_IOS_OUTPUT) - == _IO_pos_BAD) - { -@@ -58,8 +58,7 @@ - /* This is a stateful encoding, safe the state. */ - fp->_wide_data->_IO_state = posp->__state; - } -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - #else - __set_errno (ENOSYS); ---- glibc-2.3.2/libio/ioftell.c 2002-11-05 02:38:39.000000000 -0500 -+++ glibc-2.3.2/libio/ioftell.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1995-2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1995-2000,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -36,16 +36,14 @@ - { - _IO_off64_t pos; - CHECK_FILE (fp, -1L); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0); - if (_IO_in_backup (fp)) - { -- if (fp->_vtable_offset != 0 || fp->_mode <= 0) -+ if (_IO_vtable_offset (fp) != 0 || fp->_mode <= 0) - pos -= fp->_IO_save_end - fp->_IO_save_base; - } -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - if (pos == _IO_pos_BAD) - { - #ifdef EIO ---- glibc-2.3.2/libio/iofwide.c 2002-03-13 00:16:37.000000000 -0500 -+++ glibc-2.3.2/libio/iofwide.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -100,20 +100,18 @@ - /* Normalize the value. */ - mode = mode < 0 ? -1 : (mode == 0 ? 0 : 1); - -- if (mode == 0) -- /* The caller simply wants to know about the current orientation. */ -- return fp->_mode; -- - #if defined SHARED && defined _LIBC \ - && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1) - if (__builtin_expect (&_IO_stdin_used == NULL, 0) -- && (fp == _IO_stdin || fp == _IO_stdout || fp == _IO_stderr)) -+ && (fp == _IO_stdin || fp == _IO_stdout || fp == _IO_stderr)) - /* This is for a stream in the glibc 2.0 format. */ - return -1; - #endif - -- if (fp->_mode != 0) -- /* The orientation already has been determined. */ -+ /* The orientation already has been determined. */ -+ if (fp->_mode != 0 -+ /* Or the caller simply wants to know about the current orientation. */ -+ || mode == 0) - return fp->_mode; - - /* Set the orientation appropriately. */ ---- glibc-2.3.2/libio/iofwrite.c 2002-11-24 21:23:25.000000000 -0500 -+++ glibc-2.3.2/libio/iofwrite.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,96,97,98,99,2000,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1996, 1997, 1998, 1999, 2000, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -39,12 +40,10 @@ - CHECK_FILE (fp, 0); - if (request == 0) - return 0; -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -- if (fp->_vtable_offset != 0 || _IO_fwide (fp, -1) == -1) -+ _IO_acquire_lock (fp); -+ if (_IO_vtable_offset (fp) != 0 || _IO_fwide (fp, -1) == -1) - written = _IO_sputn (fp, (const char *) buf, request); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - if (written == request) - return count; - else ---- glibc-2.3.2/libio/iogetdelim.c 2001-12-29 10:26:50.000000000 -0500 -+++ glibc-2.3.2/libio/iogetdelim.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1994, 1996, 1997, 1998, 2001 Free Software Foundation, Inc. -+/* Copyright (C) 1994,1996,1997,1998,2001,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -55,8 +55,7 @@ - return -1; - } - CHECK_FILE (fp, -1); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - if (_IO_ferror_unlocked (fp)) - { - result = -1; -@@ -120,8 +119,7 @@ - result = cur_len; - - unlock_return: -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - ---- glibc-2.3.2/libio/iogets.c 2002-02-25 01:46:02.000000000 -0500 -+++ glibc-2.3.2/libio/iogets.c 2003-09-19 22:37:02.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1996, 1997, 1998, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1996,1997,1998,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -36,9 +36,7 @@ - int ch; - char *retval; - -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, -- _IO_stdin); -- _IO_flockfile (_IO_stdin); -+ _IO_acquire_lock (_IO_stdin); - ch = _IO_getc_unlocked (_IO_stdin); - if (ch == EOF) - { -@@ -67,8 +65,7 @@ - buf[count] = 0; - retval = buf; - unlock_return: -- _IO_funlockfile (_IO_stdin); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (_IO_stdin); - return retval; - } - ---- glibc-2.3.2/libio/iopopen.c 2003-01-08 00:16:51.000000000 -0500 -+++ glibc-2.3.2/libio/iopopen.c 2003-08-21 08:37:02.000000000 -0400 -@@ -39,6 +39,7 @@ - #ifdef _LIBC - # include - # include -+# include - #endif - #include - #include -@@ -74,7 +75,7 @@ - - #ifndef _IO_waitpid - #ifdef _LIBC --#define _IO_waitpid __waitpid -+#define _IO_waitpid waitpid_not_cancel - #else - #define _IO_waitpid waitpid - #endif -@@ -89,7 +90,7 @@ - - #ifndef _IO_close - #ifdef _LIBC --#define _IO_close __close -+#define _IO_close close_not_cancel - #else - #define _IO_close close - #endif ---- glibc-2.3.2/libio/ioputs.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/ioputs.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1996, 1997, 1998, 1999 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1996,1997,1998,1999,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -34,17 +34,15 @@ - { - int result = EOF; - _IO_size_t len = strlen (str); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, -- _IO_stdout); -- _IO_flockfile (_IO_stdout); -+ _IO_acquire_lock (_IO_stdout); - -- if ((_IO_stdout->_vtable_offset != 0 || _IO_fwide (_IO_stdout, -1) == -1) -+ if ((_IO_vtable_offset (_IO_stdout) != 0 -+ || _IO_fwide (_IO_stdout, -1) == -1) - && _IO_sputn (_IO_stdout, str, len) == len - && _IO_putc_unlocked ('\n', _IO_stdout) != EOF) - result = len + 1; - -- _IO_funlockfile (_IO_stdout); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (_IO_stdout); - return result; - } - ---- glibc-2.3.2/libio/ioseekoff.c 2002-11-05 02:36:56.000000000 -0500 -+++ glibc-2.3.2/libio/ioseekoff.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,1997,1998,1999,2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1997, 1998, 1999, 2001, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -56,7 +57,7 @@ - { - if (dir == _IO_seek_cur && _IO_in_backup (fp)) - { -- if (fp->_vtable_offset != 0 || fp->_mode <= 0) -+ if (_IO_vtable_offset (fp) != 0 || fp->_mode <= 0) - offset -= fp->_IO_read_end - fp->_IO_read_ptr; - else - abort (); -@@ -80,12 +81,8 @@ - { - _IO_off64_t retval; - -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -- -+ _IO_acquire_lock (fp); - retval = _IO_seekoff_unlocked (fp, offset, dir, mode); -- -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return retval; - } ---- glibc-2.3.2/libio/ioseekpos.c 2002-11-05 02:32:43.000000000 -0500 -+++ glibc-2.3.2/libio/ioseekpos.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1997, 1998, 1999, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1997,1998,1999,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -59,12 +59,8 @@ - { - _IO_off64_t retval; - -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -- -+ _IO_acquire_lock (fp); - retval = _IO_seekpos_unlocked (fp, pos, mode); -- -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return retval; - } ---- glibc-2.3.2/libio/iosetbuffer.c 2002-02-24 23:46:33.000000000 -0500 -+++ glibc-2.3.2/libio/iosetbuffer.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,95,96,97,98,99,2000,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -34,17 +35,15 @@ - _IO_size_t size; - { - CHECK_FILE (fp, ); -- _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - fp->_flags &= ~_IO_LINE_BUF; - if (!buf) - size = 0; - (void) _IO_SETBUF (fp, buf, size); -- if (fp->_vtable_offset == 0 && fp->_mode == 0 && _IO_CHECK_WIDE (fp)) -+ if (_IO_vtable_offset (fp) == 0 && fp->_mode == 0 && _IO_CHECK_WIDE (fp)) - /* We also have to set the buffer using the wide char function. */ - (void) _IO_WSETBUF (fp, buf, size); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - } - INTDEF(_IO_setbuffer) - ---- glibc-2.3.2/libio/iosetvbuf.c 2002-06-21 20:58:29.000000000 -0400 -+++ glibc-2.3.2/libio/iosetvbuf.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,96,97,98,99,2000,2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -40,8 +41,7 @@ - { - int result; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - switch (mode) - { - case _IOFBF: -@@ -96,8 +96,7 @@ - result = _IO_SETBUF (fp, buf, size) == NULL ? EOF : 0; - - unlock_return: -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - INTDEF(_IO_setvbuf) ---- glibc-2.3.2/libio/ioungetc.c 2002-02-24 23:44:09.000000000 -0500 -+++ glibc-2.3.2/libio/ioungetc.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993,1996,1997,1998,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1996,1997,1998,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -36,11 +36,9 @@ - CHECK_FILE (fp, EOF); - if (c == EOF) - return EOF; -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - result = INTUSE(_IO_sputbackc) (fp, (unsigned char) c); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - ---- glibc-2.3.2/libio/ioungetwc.c 2002-02-25 01:54:37.000000000 -0500 -+++ glibc-2.3.2/libio/ioungetwc.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993, 1996-1999, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1996, 1997, 1998, 1999, 2001, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -35,14 +36,12 @@ - { - int result; - CHECK_FILE (fp, WEOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - _IO_fwide (fp, 1); - if (c == WEOF) - result = WEOF; - else - result = INTUSE(_IO_sputbackwc) (fp, c); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } ---- glibc-2.3.2/libio/iovdprintf.c 2002-08-02 17:46:58.000000000 -0400 -+++ glibc-2.3.2/libio/iovdprintf.c 2003-04-12 11:39:43.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1995, 1997-2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1995,1997-2000,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -41,8 +41,8 @@ - #ifdef _IO_MTSAFE_IO - tmpfil.file._lock = NULL; - #endif -- _IO_no_init (&tmpfil.file, _IO_USER_LOCK, 0, &wd, &INTUSE(_IO_wfile_jumps)); -- _IO_JUMPS (&tmpfil) = &INTUSE(_IO_file_jumps); -+ _IO_no_init (&tmpfil.file, _IO_USER_LOCK, 0, &wd, &_IO_wfile_jumps); -+ _IO_JUMPS (&tmpfil) = &_IO_file_jumps; - INTUSE(_IO_file_init) (&tmpfil); - #if !_IO_UNIFIED_JUMPTABLES - tmpfil.vtable = NULL; ---- glibc-2.3.2/libio/iovsprintf.c 2002-02-25 02:01:40.000000000 -0500 -+++ glibc-2.3.2/libio/iovsprintf.c 2003-06-03 09:36:22.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1997-2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1997-2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -42,7 +42,7 @@ - #endif - _IO_no_init (&sf._sbf._f, _IO_USER_LOCK, -1, NULL, NULL); - _IO_JUMPS ((struct _IO_FILE_plus *) &sf._sbf) = &_IO_str_jumps; -- INTUSE(_IO_str_init_static) (&sf, string, -1, string); -+ _IO_str_init_static_internal (&sf, string, -1, string); - ret = INTUSE(_IO_vfprintf) ((_IO_FILE *) &sf._sbf, format, args); - _IO_putc_unlocked ('\0', (_IO_FILE *) &sf._sbf); - return ret; ---- glibc-2.3.2/libio/iovsscanf.c 2002-02-25 01:59:37.000000000 -0500 -+++ glibc-2.3.2/libio/iovsscanf.c 2003-06-03 09:36:22.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1997-2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1997-2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -41,7 +41,7 @@ - #endif - _IO_no_init (&sf._sbf._f, _IO_USER_LOCK, -1, NULL, NULL); - _IO_JUMPS ((struct _IO_FILE_plus *) &sf._sbf) = &_IO_str_jumps; -- INTUSE(_IO_str_init_static) (&sf, (char*)string, 0, NULL); -+ _IO_str_init_static_internal (&sf, (char*)string, 0, NULL); - ret = INTUSE(_IO_vfscanf) ((_IO_FILE *) &sf._sbf, format, args, NULL); - return ret; - } ---- glibc-2.3.2/libio/libio.h 2002-08-30 02:45:05.000000000 -0400 -+++ glibc-2.3.2/libio/libio.h 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991-1995, 1997-2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1991-1995, 1997-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Per Bothner . - -@@ -138,6 +138,7 @@ - #define _IO_USER_LOCK 0x8000 - - #define _IO_FLAGS2_MMAP 1 -+#define _IO_FLAGS2_NOTCANCEL 2 - - /* These are "formatting flags" matching the iostream fmtflags enum values. */ - #define _IO_SKIPWS 01 -@@ -502,7 +503,7 @@ - __result = (__fp)->_mode; \ - } \ - else if (__builtin_constant_p (__mode) && (__mode) == 0) \ -- __result = (__fp)->_mode; \ -+ __result = _IO_fwide_maybe_incompatible ? -1 : (__fp)->_mode; \ - else \ - __result = _IO_fwide (__fp, __result); \ - __result; }) ---- glibc-2.3.2/libio/libioP.h 2003-01-08 00:18:05.000000000 -0500 -+++ glibc-2.3.2/libio/libioP.h 2003-09-19 22:37:03.000000000 -0400 -@@ -110,8 +110,10 @@ - # define _IO_JUMPS_FUNC(THIS) \ - (*(struct _IO_jump_t **) ((void *) &_IO_JUMPS ((struct _IO_FILE_plus *) (THIS)) \ - + (THIS)->_vtable_offset)) -+# define _IO_vtable_offset(THIS) (THIS)->_vtable_offset - #else - # define _IO_JUMPS_FUNC(THIS) _IO_JUMPS ((struct _IO_FILE_plus *) (THIS)) -+# define _IO_vtable_offset(THIS) 0 - #endif - #define _IO_WIDE_JUMPS_FUNC(THIS) _IO_WIDE_JUMPS(THIS) - #ifdef _G_USING_THUNKS -@@ -450,9 +452,11 @@ - extern void _IO_default_imbue __P ((_IO_FILE *, void *)); - - extern struct _IO_jump_t _IO_file_jumps; -+libc_hidden_proto (_IO_file_jumps) - extern struct _IO_jump_t _IO_file_jumps_mmap attribute_hidden; - extern struct _IO_jump_t _IO_file_jumps_maybe_mmap attribute_hidden; --extern struct _IO_jump_t _IO_wfile_jumps attribute_hidden; -+extern struct _IO_jump_t _IO_wfile_jumps; -+libc_hidden_proto (_IO_wfile_jumps) - extern struct _IO_jump_t _IO_wfile_jumps_mmap attribute_hidden; - extern struct _IO_jump_t _IO_wfile_jumps_maybe_mmap attribute_hidden; - extern struct _IO_jump_t _IO_old_file_jumps attribute_hidden; -@@ -477,6 +481,7 @@ - extern int _IO_old_fgetpos64 __P ((_IO_FILE *, _IO_fpos64_t *)); - extern int _IO_new_fsetpos64 __P ((_IO_FILE *, const _IO_fpos64_t *)); - extern int _IO_old_fsetpos64 __P ((_IO_FILE *, const _IO_fpos64_t *)); -+extern void _IO_old_init __P ((_IO_FILE *fp, int flags)); - - - #if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T -@@ -616,8 +621,7 @@ - extern _IO_ssize_t _IO_str_count __P ((_IO_FILE *)); - - /* And the wide character versions. */ --extern void _IO_wstr_init_static __P ((_IO_FILE *, wchar_t *, int, wchar_t *)); --extern void _IO_wstr_init_readonly __P ((_IO_FILE *, const char *, int)); -+extern void _IO_wstr_init_static __P ((_IO_FILE *, wchar_t *, _IO_size_t, wchar_t *)); - extern _IO_ssize_t _IO_wstr_count __P ((_IO_FILE *)); - extern _IO_wint_t _IO_wstr_overflow __P ((_IO_FILE *, _IO_wint_t)); - extern _IO_wint_t _IO_wstr_underflow __P ((_IO_FILE *)); -@@ -707,7 +711,7 @@ - extern _IO_off64_t _IO_str_seekoff_internal __P ((_IO_FILE *, _IO_off64_t, - int, int)); - extern void _IO_str_init_static_internal __P ((struct _IO_strfile_ *, char *, -- int, char *)); -+ _IO_size_t, char *)); - - extern struct _IO_jump_t _IO_file_jumps_internal attribute_hidden; - extern struct _IO_jump_t _IO_wfile_jumps_internal attribute_hidden; -@@ -966,3 +970,12 @@ - #else - # define CHECK_FILE(FILE, RET) COERCE_FILE (FILE) - #endif -+ -+static inline void -+__attribute__ ((__always_inline__)) -+_IO_acquire_lock_fct (_IO_FILE **p) -+{ -+ _IO_FILE *fp = *p; -+ if ((fp->_flags & _IO_USER_LOCK) == 0) -+ _IO_funlockfile (fp); -+} ---- glibc-2.3.2/libio/memstream.c 2002-08-10 14:08:29.000000000 -0400 -+++ glibc-2.3.2/libio/memstream.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1995,1996,1997,1999,2000,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1995-1997,1999,2000,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -32,8 +32,6 @@ - - static int _IO_mem_sync __P ((_IO_FILE* fp)); - static void _IO_mem_finish __P ((_IO_FILE* fp, int)); --static int _IO_wmem_sync __P ((_IO_FILE* fp)); --static void _IO_wmem_finish __P ((_IO_FILE* fp, int)); - - - static struct _IO_jump_t _IO_mem_jumps = -@@ -60,30 +58,6 @@ - JUMP_INIT(imbue, _IO_default_imbue) - }; - --static struct _IO_jump_t _IO_wmem_jumps = --{ -- JUMP_INIT_DUMMY, -- JUMP_INIT (finish, (_IO_finish_t) _IO_wmem_finish), -- JUMP_INIT (overflow, (_IO_overflow_t) _IO_wstr_overflow), -- JUMP_INIT (underflow, (_IO_underflow_t) _IO_wstr_underflow), -- JUMP_INIT (uflow, (_IO_underflow_t) INTUSE(_IO_wdefault_uflow)), -- JUMP_INIT (pbackfail, (_IO_pbackfail_t) _IO_wstr_pbackfail), -- JUMP_INIT (xsputn, (_IO_xsputn_t) INTUSE(_IO_wdefault_xsputn)), -- JUMP_INIT (xsgetn, (_IO_xsgetn_t) INTUSE(_IO_wdefault_xsgetn)), -- JUMP_INIT (seekoff, _IO_wstr_seekoff), -- JUMP_INIT (seekpos, _IO_default_seekpos), -- JUMP_INIT (setbuf, _IO_default_setbuf), -- JUMP_INIT (sync, (_IO_sync_t) _IO_wmem_sync), -- JUMP_INIT (doallocate, INTUSE(_IO_wdefault_doallocate)), -- JUMP_INIT (read, _IO_default_read), -- JUMP_INIT (write, _IO_default_write), -- JUMP_INIT (seek, _IO_default_seek), -- JUMP_INIT (close, _IO_default_close), -- JUMP_INIT (stat, _IO_default_stat), -- JUMP_INIT(showmanyc, _IO_default_showmanyc), -- JUMP_INIT(imbue, _IO_default_imbue) --}; -- - /* Open a stream that writes into a malloc'd buffer that is expanded as - necessary. *BUFLOC and *SIZELOC are updated with the buffer's location - and the number of characters written on fflush or fclose. */ -@@ -112,9 +86,9 @@ - buf = malloc (_IO_BUFSIZ); - if (buf == NULL) - return NULL; -- _IO_no_init (&new_f->fp._sf._sbf._f, 0, 0, &new_f->wd, &_IO_wmem_jumps); -+ _IO_init (&new_f->fp._sf._sbf._f, 0); - _IO_JUMPS ((struct _IO_FILE_plus *) &new_f->fp._sf._sbf) = &_IO_mem_jumps; -- INTUSE(_IO_str_init_static) (&new_f->fp._sf, buf, _IO_BUFSIZ, buf); -+ _IO_str_init_static_internal (&new_f->fp._sf, buf, _IO_BUFSIZ, buf); - new_f->fp._sf._sbf._f._flags &= ~_IO_USER_BUF; - new_f->fp._sf._s._allocate_buffer = (_IO_alloc_type) malloc; - new_f->fp._sf._s._free_buffer = (_IO_free_type) free; -@@ -172,55 +146,3 @@ - - INTUSE(_IO_default_finish) (fp, 0); - } -- -- --static int --_IO_wmem_sync (fp) -- _IO_FILE* fp; --{ -- struct _IO_FILE_memstream *mp = (struct _IO_FILE_memstream *) fp; -- int res; -- -- res = _IO_default_sync (fp); -- if (res < 0) -- return res; -- -- if (fp->_wide_data->_IO_write_ptr == fp->_wide_data->_IO_write_end) -- { -- _IO_wstr_overflow (fp, L'\0'); -- --fp->_wide_data->_IO_write_ptr; -- } -- else -- *fp->_wide_data->_IO_write_ptr = '\0'; -- -- *mp->bufloc = (char *) fp->_wide_data->_IO_write_base; -- *mp->sizeloc = (fp->_wide_data->_IO_write_ptr -- - fp->_wide_data->_IO_write_base); -- -- return 0; --} -- -- --static void --_IO_wmem_finish (fp, dummy) -- _IO_FILE* fp; -- int dummy; --{ -- struct _IO_FILE_memstream *mp = (struct _IO_FILE_memstream *) fp; -- -- *mp->bufloc = (char *) realloc (fp->_wide_data->_IO_write_base, -- (fp->_wide_data->_IO_write_ptr -- - fp->_wide_data->_IO_write_base + 1) -- * sizeof (wchar_t)); -- if (*mp->bufloc != NULL) -- { -- ((wchar_t *) (*mp->bufloc))[fp->_wide_data->_IO_write_ptr -- - fp->_wide_data->_IO_write_base] = '\0'; -- *mp->sizeloc = (fp->_wide_data->_IO_write_ptr -- - fp->_wide_data->_IO_write_base); -- } -- -- fp->_wide_data->_IO_buf_base = NULL; -- -- INTUSE(_IO_default_finish) (fp, 0); --} ---- glibc-2.3.2/libio/obprintf.c 2002-02-25 02:01:53.000000000 -0500 -+++ glibc-2.3.2/libio/obprintf.c 2003-06-03 09:36:22.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Print output of stream to given obstack. -- Copyright (C) 1996,1997,1999,2000,2001,2002 Free Software Foundation, Inc. -+ Copyright (C) 1996,1997,1999-2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1996. - -@@ -153,9 +153,9 @@ - assert (size != 0); - } - -- INTUSE(_IO_str_init_static) ((struct _IO_strfile_ *) &new_f.ofile, -- obstack_base (obstack), -- size, obstack_next_free (obstack)); -+ _IO_str_init_static_internal ((struct _IO_strfile_ *) &new_f.ofile, -+ obstack_base (obstack), -+ size, obstack_next_free (obstack)); - /* Now allocate the rest of the current chunk. */ - assert (size == (new_f.ofile.file.file._IO_write_end - - new_f.ofile.file.file._IO_write_base)); ---- glibc-2.3.2/libio/oldfileops.c 2002-09-24 01:11:47.000000000 -0400 -+++ glibc-2.3.2/libio/oldfileops.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993,95,97,98,99,2000,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,95,97,98,99,2000,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Per Bothner . - -@@ -128,6 +128,16 @@ - fp->file._vtable_offset = ((int) sizeof (struct _IO_FILE) - - (int) sizeof (struct _IO_FILE_complete)); - fp->file._fileno = -1; -+ -+#if defined SHARED && defined _LIBC -+ if (__builtin_expect (&_IO_stdin_used != NULL, 1) -+ || (fp != (struct _IO_FILE_plus *) _IO_stdin -+ && fp != (struct _IO_FILE_plus *) _IO_stdout -+ && fp != (struct _IO_FILE_plus *) _IO_stderr)) -+ /* The object is dynamically allocated and large enough. Initialize -+ the _mode element as well. */ -+ ((struct _IO_FILE_complete *) fp)->_mode = -1; -+#endif - } - - int ---- glibc-2.3.2/libio/oldiofclose.c 2002-02-25 02:30:49.000000000 -0500 -+++ glibc-2.3.2/libio/oldiofclose.c 2003-09-19 22:37:03.000000000 -0400 -@@ -52,15 +52,13 @@ - if (fp->_IO_file_flags & _IO_IS_FILEBUF) - INTUSE(_IO_un_link) ((struct _IO_FILE_plus *) fp); - -- _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - if (fp->_IO_file_flags & _IO_IS_FILEBUF) - status = _IO_old_file_close_it (fp); - else - status = fp->_flags & _IO_ERR_SEEN ? -1 : 0; - _IO_FINISH (fp); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - if (_IO_have_backup (fp)) - INTUSE(_IO_free_backup_area) (fp); - if (fp != _IO_stdin && fp != _IO_stdout && fp != _IO_stderr) ---- glibc-2.3.2/libio/oldiofdopen.c 2002-04-09 03:30:11.000000000 -0400 -+++ glibc-2.3.2/libio/oldiofdopen.c 2003-05-12 12:13:04.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993,94,97,99,2000,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,94,97,99,2000,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -114,7 +114,7 @@ - #ifdef _IO_MTSAFE_IO - new_f->fp.file._lock = &new_f->lock; - #endif -- INTUSE(_IO_init) (&new_f->fp.file, 0); -+ _IO_old_init (&new_f->fp.file, 0); - _IO_JUMPS (&new_f->fp) = &_IO_old_file_jumps; - _IO_old_file_init (&new_f->fp); - #if !_IO_UNIFIED_JUMPTABLES ---- glibc-2.3.2/libio/oldiofgetpos.c 2002-11-05 02:41:48.000000000 -0500 -+++ glibc-2.3.2/libio/oldiofgetpos.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,95,96,97,98,99,2000, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -38,13 +39,11 @@ - { - _IO_off_t pos; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0); - if (_IO_in_backup (fp)) - pos -= fp->_IO_save_end - fp->_IO_save_base; -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - if (pos == _IO_pos_BAD) - { - /* ANSI explicitly requires setting errno to a positive value on ---- glibc-2.3.2/libio/oldiofgetpos64.c 2002-11-05 02:41:38.000000000 -0500 -+++ glibc-2.3.2/libio/oldiofgetpos64.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,95,96,97,98,99,2000, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -39,13 +40,11 @@ - #ifdef _G_LSEEK64 - _IO_off64_t pos; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0); - if (_IO_in_backup (fp)) - pos -= fp->_IO_save_end - fp->_IO_save_base; -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - if (pos == _IO_pos_BAD) - { - /* ANSI explicitly requires setting errno to a positive value on ---- glibc-2.3.2/libio/oldiofopen.c 2002-02-25 02:31:13.000000000 -0500 -+++ glibc-2.3.2/libio/oldiofopen.c 2003-05-12 12:13:04.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1997, 1999, 2000, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1997,1999,2000,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -53,7 +53,7 @@ - #ifdef _IO_MTSAFE_IO - new_f->fp.file._lock = &new_f->lock; - #endif -- INTUSE(_IO_init) (&new_f->fp.file, 0); -+ _IO_old_init (&new_f->fp.file, 0); - _IO_JUMPS (&new_f->fp) = &_IO_old_file_jumps; - _IO_old_file_init (&new_f->fp); - #if !_IO_UNIFIED_JUMPTABLES ---- glibc-2.3.2/libio/oldiofsetpos.c 2002-11-05 02:34:01.000000000 -0500 -+++ glibc-2.3.2/libio/oldiofsetpos.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,95,97,98,99,2000,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1997, 1998, 1999, 2000, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -37,8 +38,7 @@ - { - int result; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - if (_IO_seekpos_unlocked (fp, posp->__pos, _IOS_INPUT|_IOS_OUTPUT) - == _IO_pos_BAD) - { -@@ -52,8 +52,7 @@ - } - else - result = 0; -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - ---- glibc-2.3.2/libio/oldiofsetpos64.c 2002-11-05 02:34:11.000000000 -0500 -+++ glibc-2.3.2/libio/oldiofsetpos64.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1993,95,97,98,99,2000,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1995, 1997, 1998, 1999, 2000, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -39,8 +40,7 @@ - #ifdef _G_LSEEK64 - int result; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - if (_IO_seekpos_unlocked (fp, posp->__pos, _IOS_INPUT|_IOS_OUTPUT) - == _IO_pos_BAD) - { -@@ -54,8 +54,7 @@ - } - else - result = 0; -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - #else - __set_errno (ENOSYS); ---- glibc-2.3.2/libio/oldtmpfile.c 2002-04-08 03:02:09.000000000 -0400 -+++ glibc-2.3.2/libio/oldtmpfile.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991, 1993, 1996-1999, 2000 Free Software Foundation, Inc. -+/* Copyright (C) 1991, 1993, 1996-2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -43,7 +43,7 @@ - - /* Note that this relies on the Unix semantics that - a file is not really removed until it is closed. */ -- (void) remove (buf); -+ (void) __unlink (buf); - - if ((f = _IO_old_fdopen (fd, "w+b")) == NULL) - __close (fd); ---- glibc-2.3.2/libio/peekc.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/peekc.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1995,1996,1997,1998,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -36,10 +36,8 @@ - { - int result; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - result = _IO_peekc_unlocked (fp); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } ---- glibc-2.3.2/libio/putc.c 2002-02-25 02:22:50.000000000 -0500 -+++ glibc-2.3.2/libio/putc.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1991,1995,1996,1997,1998,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1991, 1995, 1996, 1997, 1998, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -28,11 +29,9 @@ - { - int result; - CHECK_FILE (fp, EOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - result = _IO_putc_unlocked (c, fp); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - INTDEF(_IO_putc) ---- glibc-2.3.2/libio/putchar.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/putchar.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. -+/* Copyright (C) 1991,1995,1996,1997,1998,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -26,12 +26,9 @@ - int c; - { - int result; -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, -- _IO_stdout); -- _IO_flockfile (_IO_stdout); -+ _IO_acquire_lock (_IO_stdout); - result = _IO_putc_unlocked (c, _IO_stdout); -- _IO_funlockfile (_IO_stdout); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (_IO_stdout); - return result; - } - ---- glibc-2.3.2/libio/putwc.c 2002-08-10 14:08:29.000000000 -0400 -+++ glibc-2.3.2/libio/putwc.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1991,95,96,97,98,99,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1991, 1995, 1996, 1997, 1998, 1999, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -26,11 +27,9 @@ - { - wint_t result; - CHECK_FILE (fp, WEOF); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - result = _IO_putwc_unlocked (wc, fp); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - return result; - } - libc_hidden_def (putwc) ---- glibc-2.3.2/libio/putwchar.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/putwchar.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991, 95, 96, 97, 98, 99 Free Software Foundation, Inc. -+/* Copyright (C) 1991,95,96,97,98,99,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -24,11 +24,8 @@ - wchar_t wc; - { - wint_t result; -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, -- _IO_stdout); -- _IO_flockfile (_IO_stdout); -+ _IO_acquire_lock (_IO_stdout); - result = _IO_putwc_unlocked (wc, _IO_stdout); -- _IO_funlockfile (_IO_stdout); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (_IO_stdout); - return result; - } ---- glibc-2.3.2/libio/rewind.c 2002-08-10 14:08:29.000000000 -0400 -+++ glibc-2.3.2/libio/rewind.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993,96,97,98,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,96,97,98,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -33,11 +33,9 @@ - _IO_FILE *fp; - { - CHECK_FILE (fp, ); -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); -- _IO_flockfile (fp); -+ _IO_acquire_lock (fp); - _IO_rewind (fp); - _IO_clearerr (fp); -- _IO_funlockfile (fp); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (fp); - } - libc_hidden_def (rewind) ---- glibc-2.3.2/libio/stdfiles.c 2002-03-12 20:05:41.000000000 -0500 -+++ glibc-2.3.2/libio/stdfiles.c 2003-04-12 11:39:43.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993-1997,1999,2000,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993-1997,1999,2000,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -39,30 +39,30 @@ - # define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \ - static _IO_lock_t _IO_stdfile_##FD##_lock = _IO_lock_initializer; \ - static struct _IO_wide_data _IO_wide_data_##FD \ -- = { ._wide_vtable = &INTUSE(_IO_wfile_jumps) }; \ -+ = { ._wide_vtable = &_IO_wfile_jumps }; \ - struct _IO_FILE_plus NAME \ - = {FILEBUF_LITERAL(CHAIN, FLAGS, FD, &_IO_wide_data_##FD), \ -- &INTUSE(_IO_file_jumps)}; -+ &_IO_file_jumps}; - # else - # define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \ - static _IO_lock_t _IO_stdfile_##FD##_lock = _IO_lock_initializer; \ - struct _IO_FILE_plus NAME \ - = {FILEBUF_LITERAL(CHAIN, FLAGS, FD, NULL), \ -- &INTUSE(_IO_file_jumps)}; -+ &_IO_file_jumps}; - # endif - #else - # if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T - # define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \ - static struct _IO_wide_data _IO_wide_data_##FD \ -- = { ._wide_vtable = &INTUSE(_IO_wfile_jumps) }; \ -+ = { ._wide_vtable = &_IO_wfile_jumps }; \ - struct _IO_FILE_plus NAME \ - = {FILEBUF_LITERAL(CHAIN, FLAGS, FD, &_IO_wide_data_##FD), \ -- &INTUSE(_IO_file_jumps)}; -+ &_IO_file_jumps}; - # else - # define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \ - struct _IO_FILE_plus NAME \ - = {FILEBUF_LITERAL(CHAIN, FLAGS, FD, NULL), \ -- &INTUSE(_IO_file_jumps)}; -+ &_IO_file_jumps}; - # endif - #endif - ---- glibc-2.3.2/libio/stdio.h 2002-08-27 21:55:38.000000000 -0400 -+++ glibc-2.3.2/libio/stdio.h 2003-09-19 22:37:03.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Define ISO C stdio on top of C++ iostreams. -- Copyright (C) 1991,1994-1999,2000,01,02 Free Software Foundation, Inc. -+ Copyright (C) 1991,1994-2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -156,25 +156,28 @@ - - - __BEGIN_NAMESPACE_STD --/* Create a temporary file and open it read/write. */ -+/* Create a temporary file and open it read/write. -+ -+ This function is a possible cancellation points and therefore not -+ marked with __THROW. */ - #ifndef __USE_FILE_OFFSET64 --extern FILE *tmpfile (void) __THROW; -+extern FILE *tmpfile (void); - #else - # ifdef __REDIRECT --extern FILE *__REDIRECT (tmpfile, (void) __THROW, tmpfile64); -+extern FILE *__REDIRECT (tmpfile, (void), tmpfile64); - # else - # define tmpfile tmpfile64 - # endif - #endif - -+#ifdef __USE_LARGEFILE64 -+extern FILE *tmpfile64 (void); -+#endif -+ - /* Generate a temporary filename. */ - extern char *tmpnam (char *__s) __THROW; - __END_NAMESPACE_STD - --#ifdef __USE_LARGEFILE64 --extern FILE *tmpfile64 (void) __THROW; --#endif -- - #ifdef __USE_MISC - /* This is the reentrant variant of `tmpnam'. The only difference is - that it does not allow S to be NULL. */ -@@ -196,41 +199,61 @@ - - - __BEGIN_NAMESPACE_STD --/* Close STREAM. */ --extern int fclose (FILE *__stream) __THROW; --/* Flush STREAM, or all streams if STREAM is NULL. */ --extern int fflush (FILE *__stream) __THROW; -+/* Close STREAM. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int fclose (FILE *__stream); -+/* Flush STREAM, or all streams if STREAM is NULL. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int fflush (FILE *__stream); - __END_NAMESPACE_STD - - #ifdef __USE_MISC --/* Faster versions when locking is not required. */ --extern int fflush_unlocked (FILE *__stream) __THROW; -+/* Faster versions when locking is not required. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ -+extern int fflush_unlocked (FILE *__stream); - #endif - - #ifdef __USE_GNU --/* Close all streams. */ --extern int fcloseall (void) __THROW; -+/* Close all streams. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ -+extern int fcloseall (void); - #endif - - - __BEGIN_NAMESPACE_STD - #ifndef __USE_FILE_OFFSET64 --/* Open a file and create a new stream for it. */ -+/* Open a file and create a new stream for it. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - extern FILE *fopen (__const char *__restrict __filename, -- __const char *__restrict __modes) __THROW; --/* Open a file, replacing an existing stream with it. */ -+ __const char *__restrict __modes); -+/* Open a file, replacing an existing stream with it. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - extern FILE *freopen (__const char *__restrict __filename, - __const char *__restrict __modes, -- FILE *__restrict __stream) __THROW; -+ FILE *__restrict __stream); - #else - # ifdef __REDIRECT - extern FILE *__REDIRECT (fopen, (__const char *__restrict __filename, -- __const char *__restrict __modes) __THROW, -- fopen64); -+ __const char *__restrict __modes), fopen64); - extern FILE *__REDIRECT (freopen, (__const char *__restrict __filename, - __const char *__restrict __modes, -- FILE *__restrict __stream) __THROW, -- freopen64); -+ FILE *__restrict __stream), freopen64); - # else - # define fopen fopen64 - # define freopen freopen64 -@@ -239,10 +262,10 @@ - __END_NAMESPACE_STD - #ifdef __USE_LARGEFILE64 - extern FILE *fopen64 (__const char *__restrict __filename, -- __const char *__restrict __modes) __THROW; -+ __const char *__restrict __modes); - extern FILE *freopen64 (__const char *__restrict __filename, - __const char *__restrict __modes, -- FILE *__restrict __stream) __THROW; -+ FILE *__restrict __stream); - #endif - - #ifdef __USE_POSIX -@@ -291,21 +314,32 @@ - - - __BEGIN_NAMESPACE_STD --/* Write formatted output to STREAM. */ -+/* Write formatted output to STREAM. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - extern int fprintf (FILE *__restrict __stream, -- __const char *__restrict __format, ...) __THROW; --/* Write formatted output to stdout. */ --extern int printf (__const char *__restrict __format, ...) __THROW; -+ __const char *__restrict __format, ...); -+/* Write formatted output to stdout. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int printf (__const char *__restrict __format, ...); - /* Write formatted output to S. */ - extern int sprintf (char *__restrict __s, - __const char *__restrict __format, ...) __THROW; - --/* Write formatted output to S from argument list ARG. */ -+/* Write formatted output to S from argument list ARG. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - extern int vfprintf (FILE *__restrict __s, __const char *__restrict __format, -- _G_va_list __arg) __THROW; --/* Write formatted output to stdout from argument list ARG. */ --extern int vprintf (__const char *__restrict __format, _G_va_list __arg) -- __THROW; -+ _G_va_list __arg); -+/* Write formatted output to stdout from argument list ARG. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int vprintf (__const char *__restrict __format, _G_va_list __arg); - /* Write formatted output to S from argument list ARG. */ - extern int vsprintf (char *__restrict __s, __const char *__restrict __format, - _G_va_list __arg) __THROW; -@@ -337,21 +371,32 @@ - __const char *__restrict __fmt, ...) - __THROW __attribute__ ((__format__ (__printf__, 2, 3))); - --/* Write formatted output to a file descriptor. */ -+/* Write formatted output to a file descriptor. -+ -+ These functions are not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation they are cancellation points and -+ therefore not marked with __THROW. */ - extern int vdprintf (int __fd, __const char *__restrict __fmt, - _G_va_list __arg) -- __THROW __attribute__ ((__format__ (__printf__, 2, 0))); -+ __attribute__ ((__format__ (__printf__, 2, 0))); - extern int dprintf (int __fd, __const char *__restrict __fmt, ...) -- __THROW __attribute__ ((__format__ (__printf__, 2, 3))); -+ __attribute__ ((__format__ (__printf__, 2, 3))); - #endif - - - __BEGIN_NAMESPACE_STD --/* Read formatted input from STREAM. */ -+/* Read formatted input from STREAM. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - extern int fscanf (FILE *__restrict __stream, -- __const char *__restrict __format, ...) __THROW; --/* Read formatted input from stdin. */ --extern int scanf (__const char *__restrict __format, ...) __THROW; -+ __const char *__restrict __format, ...); -+/* Read formatted input from stdin. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int scanf (__const char *__restrict __format, ...); - /* Read formatted input from S. */ - extern int sscanf (__const char *__restrict __s, - __const char *__restrict __format, ...) __THROW; -@@ -359,14 +404,20 @@ - - #ifdef __USE_ISOC99 - __BEGIN_NAMESPACE_C99 --/* Read formatted input from S into argument list ARG. */ -+/* Read formatted input from S into argument list ARG. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format, - _G_va_list __arg) -- __THROW __attribute__ ((__format__ (__scanf__, 2, 0))); -+ __attribute__ ((__format__ (__scanf__, 2, 0))); -+ -+/* Read formatted input from stdin into argument list ARG. - --/* Read formatted input from stdin into argument list ARG. */ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ - extern int vscanf (__const char *__restrict __format, _G_va_list __arg) -- __THROW __attribute__ ((__format__ (__scanf__, 1, 0))); -+ __attribute__ ((__format__ (__scanf__, 1, 0))); - - /* Read formatted input from S into argument list ARG. */ - extern int vsscanf (__const char *__restrict __s, -@@ -377,12 +428,18 @@ - - - __BEGIN_NAMESPACE_STD --/* Read a character from STREAM. */ --extern int fgetc (FILE *__stream) __THROW; --extern int getc (FILE *__stream) __THROW; -+/* Read a character from STREAM. - --/* Read a character from stdin. */ --extern int getchar (void) __THROW; -+ These functions are possible cancellation points and therefore not -+ marked with __THROW. */ -+extern int fgetc (FILE *__stream); -+extern int getc (FILE *__stream); -+ -+/* Read a character from stdin. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int getchar (void); - __END_NAMESPACE_STD - - /* The C standard explicitly says this is a macro, so we always do the -@@ -390,24 +447,41 @@ - #define getc(_fp) _IO_getc (_fp) - - #if defined __USE_POSIX || defined __USE_MISC --/* These are defined in POSIX.1:1996. */ --extern int getc_unlocked (FILE *__stream) __THROW; --extern int getchar_unlocked (void) __THROW; -+/* These are defined in POSIX.1:1996. -+ -+ These functions are possible cancellation points and therefore not -+ marked with __THROW. */ -+extern int getc_unlocked (FILE *__stream); -+extern int getchar_unlocked (void); - #endif /* Use POSIX or MISC. */ - - #ifdef __USE_MISC --/* Faster version when locking is not necessary. */ --extern int fgetc_unlocked (FILE *__stream) __THROW; -+/* Faster version when locking is not necessary. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ -+extern int fgetc_unlocked (FILE *__stream); - #endif /* Use MISC. */ - - - __BEGIN_NAMESPACE_STD --/* Write a character to STREAM. */ --extern int fputc (int __c, FILE *__stream) __THROW; --extern int putc (int __c, FILE *__stream) __THROW; -+/* Write a character to STREAM. -+ -+ These functions are possible cancellation points and therefore not -+ marked with __THROW. - --/* Write a character to stdout. */ --extern int putchar (int __c) __THROW; -+ These functions is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int fputc (int __c, FILE *__stream); -+extern int putc (int __c, FILE *__stream); -+ -+/* Write a character to stdout. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int putchar (int __c); - __END_NAMESPACE_STD - - /* The C standard explicitly says this can be a macro, -@@ -415,40 +489,59 @@ - #define putc(_ch, _fp) _IO_putc (_ch, _fp) - - #ifdef __USE_MISC --/* Faster version when locking is not necessary. */ --extern int fputc_unlocked (int __c, FILE *__stream) __THROW; -+/* Faster version when locking is not necessary. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ -+extern int fputc_unlocked (int __c, FILE *__stream); - #endif /* Use MISC. */ - - #if defined __USE_POSIX || defined __USE_MISC --/* These are defined in POSIX.1:1996. */ --extern int putc_unlocked (int __c, FILE *__stream) __THROW; --extern int putchar_unlocked (int __c) __THROW; -+/* These are defined in POSIX.1:1996. -+ -+ These functions are possible cancellation points and therefore not -+ marked with __THROW. */ -+extern int putc_unlocked (int __c, FILE *__stream); -+extern int putchar_unlocked (int __c); - #endif /* Use POSIX or MISC. */ - - --#if defined __USE_SVID || defined __USE_MISC || defined __USE_XOPEN -+#if defined __USE_SVID || defined __USE_MISC \ -+ || (defined __USE_XOPEN && !defined __USE_XOPEN2K) - /* Get a word (int) from STREAM. */ --extern int getw (FILE *__stream) __THROW; -+extern int getw (FILE *__stream); - - /* Write a word (int) to STREAM. */ --extern int putw (int __w, FILE *__stream) __THROW; -+extern int putw (int __w, FILE *__stream); - #endif - - - __BEGIN_NAMESPACE_STD --/* Get a newline-terminated string of finite length from STREAM. */ --extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream) -- __THROW; -+/* Get a newline-terminated string of finite length from STREAM. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream); - - /* Get a newline-terminated string from stdin, removing the newline. -- DO NOT USE THIS FUNCTION!! There is no limit on how much it will read. */ --extern char *gets (char *__s) __THROW; -+ DO NOT USE THIS FUNCTION!! There is no limit on how much it will read. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern char *gets (char *__s); - __END_NAMESPACE_STD - - #ifdef __USE_GNU --/* This function does the same as `fgets' but does not lock the stream. */ -+/* This function does the same as `fgets' but does not lock the stream. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ - extern char *fgets_unlocked (char *__restrict __s, int __n, -- FILE *__restrict __stream) __THROW; -+ FILE *__restrict __stream); - #endif - - -@@ -457,64 +550,107 @@ - (and null-terminate it). *LINEPTR is a pointer returned from malloc (or - NULL), pointing to *N characters of space. It is realloc'd as - necessary. Returns the number of characters read (not including the -- null terminator), or -1 on error or EOF. */ -+ null terminator), or -1 on error or EOF. -+ -+ These functions are not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation they are cancellation points and -+ therefore not marked with __THROW. */ - extern _IO_ssize_t __getdelim (char **__restrict __lineptr, - size_t *__restrict __n, int __delimiter, -- FILE *__restrict __stream) __THROW; -+ FILE *__restrict __stream); - extern _IO_ssize_t getdelim (char **__restrict __lineptr, - size_t *__restrict __n, int __delimiter, -- FILE *__restrict __stream) __THROW; -+ FILE *__restrict __stream); -+ -+/* Like `getdelim', but reads up to a newline. - --/* Like `getdelim', but reads up to a newline. */ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ - extern _IO_ssize_t getline (char **__restrict __lineptr, - size_t *__restrict __n, -- FILE *__restrict __stream) __THROW; -+ FILE *__restrict __stream); - #endif - - - __BEGIN_NAMESPACE_STD --/* Write a string to STREAM. */ --extern int fputs (__const char *__restrict __s, FILE *__restrict __stream) -- __THROW; -+/* Write a string to STREAM. -+ -+ This function is a possible cancellation points and therefore not -+ marked with __THROW. */ -+extern int fputs (__const char *__restrict __s, FILE *__restrict __stream); - --/* Write a string, followed by a newline, to stdout. */ --extern int puts (__const char *__s) __THROW; -+/* Write a string, followed by a newline, to stdout. - -+ This function is a possible cancellation points and therefore not -+ marked with __THROW. */ -+extern int puts (__const char *__s); - --/* Push a character back onto the input buffer of STREAM. */ --extern int ungetc (int __c, FILE *__stream) __THROW; - -+/* Push a character back onto the input buffer of STREAM. - --/* Read chunks of generic data from STREAM. */ -+ This function is a possible cancellation points and therefore not -+ marked with __THROW. */ -+extern int ungetc (int __c, FILE *__stream); -+ -+ -+/* Read chunks of generic data from STREAM. -+ -+ This function is a possible cancellation points and therefore not -+ marked with __THROW. */ - extern size_t fread (void *__restrict __ptr, size_t __size, -- size_t __n, FILE *__restrict __stream) __THROW; --/* Write chunks of generic data to STREAM. */ -+ size_t __n, FILE *__restrict __stream); -+/* Write chunks of generic data to STREAM. -+ -+ This function is a possible cancellation points and therefore not -+ marked with __THROW. */ - extern size_t fwrite (__const void *__restrict __ptr, size_t __size, -- size_t __n, FILE *__restrict __s) __THROW; -+ size_t __n, FILE *__restrict __s); - __END_NAMESPACE_STD - - #ifdef __USE_GNU --/* This function does the same as `fputs' but does not lock the stream. */ -+/* This function does the same as `fputs' but does not lock the stream. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ - extern int fputs_unlocked (__const char *__restrict __s, -- FILE *__restrict __stream) __THROW; -+ FILE *__restrict __stream); - #endif - - #ifdef __USE_MISC --/* Faster versions when locking is not necessary. */ -+/* Faster versions when locking is not necessary. -+ -+ These functions are not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation they are cancellation points and -+ therefore not marked with __THROW. */ - extern size_t fread_unlocked (void *__restrict __ptr, size_t __size, -- size_t __n, FILE *__restrict __stream) __THROW; -+ size_t __n, FILE *__restrict __stream); - extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __size, -- size_t __n, FILE *__restrict __stream) __THROW; -+ size_t __n, FILE *__restrict __stream); - #endif - - - __BEGIN_NAMESPACE_STD --/* Seek to a certain position on STREAM. */ --extern int fseek (FILE *__stream, long int __off, int __whence) __THROW; --/* Return the current position of STREAM. */ --extern long int ftell (FILE *__stream) __THROW; --/* Rewind to the beginning of STREAM. */ --extern void rewind (FILE *__stream) __THROW; -+/* Seek to a certain position on STREAM. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int fseek (FILE *__stream, long int __off, int __whence); -+/* Return the current position of STREAM. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern long int ftell (FILE *__stream); -+/* Rewind to the beginning of STREAM. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern void rewind (FILE *__stream); - __END_NAMESPACE_STD - - /* The Single Unix Specification, Version 2, specifies an alternative, -@@ -524,16 +660,22 @@ - - #ifdef __USE_LARGEFILE - # ifndef __USE_FILE_OFFSET64 --/* Seek to a certain position on STREAM. */ --extern int fseeko (FILE *__stream, __off_t __off, int __whence) __THROW; --/* Return the current position of STREAM. */ --extern __off_t ftello (FILE *__stream) __THROW; -+/* Seek to a certain position on STREAM. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int fseeko (FILE *__stream, __off_t __off, int __whence); -+/* Return the current position of STREAM. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern __off_t ftello (FILE *__stream); - # else - # ifdef __REDIRECT - extern int __REDIRECT (fseeko, -- (FILE *__stream, __off64_t __off, int __whence) __THROW, -+ (FILE *__stream, __off64_t __off, int __whence), - fseeko64); --extern __off64_t __REDIRECT (ftello, (FILE *__stream) __THROW, ftello64); -+extern __off64_t __REDIRECT (ftello, (FILE *__stream), ftello64); - # else - # define fseeko fseeko64 - # define ftello ftello64 -@@ -543,18 +685,22 @@ - - __BEGIN_NAMESPACE_STD - #ifndef __USE_FILE_OFFSET64 --/* Get STREAM's position. */ --extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos) -- __THROW; --/* Set STREAM's position. */ --extern int fsetpos (FILE *__stream, __const fpos_t *__pos) __THROW; -+/* Get STREAM's position. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos); -+/* Set STREAM's position. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int fsetpos (FILE *__stream, __const fpos_t *__pos); - #else - # ifdef __REDIRECT - extern int __REDIRECT (fgetpos, (FILE *__restrict __stream, -- fpos_t *__restrict __pos) __THROW, fgetpos64); -+ fpos_t *__restrict __pos), fgetpos64); - extern int __REDIRECT (fsetpos, -- (FILE *__stream, __const fpos_t *__pos) __THROW, -- fsetpos64); -+ (FILE *__stream, __const fpos_t *__pos), fsetpos64); - # else - # define fgetpos fgetpos64 - # define fsetpos fsetpos64 -@@ -563,11 +709,10 @@ - __END_NAMESPACE_STD - - #ifdef __USE_LARGEFILE64 --extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence) __THROW; --extern __off64_t ftello64 (FILE *__stream) __THROW; --extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos) -- __THROW; --extern int fsetpos64 (FILE *__stream, __const fpos64_t *__pos) __THROW; -+extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence); -+extern __off64_t ftello64 (FILE *__stream); -+extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos); -+extern int fsetpos64 (FILE *__stream, __const fpos64_t *__pos); - #endif - - __BEGIN_NAMESPACE_STD -@@ -588,8 +733,11 @@ - - - __BEGIN_NAMESPACE_STD --/* Print a message describing the meaning of the value of errno. */ --extern void perror (__const char *__s) __THROW; -+/* Print a message describing the meaning of the value of errno. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern void perror (__const char *__s); - __END_NAMESPACE_STD - - /* Provide the declarations for `sys_errlist' and `sys_nerr' if they -@@ -612,11 +760,17 @@ - - #if (defined __USE_POSIX2 || defined __USE_SVID || defined __USE_BSD || \ - defined __USE_MISC) --/* Create a new stream connected to a pipe running the given command. */ --extern FILE *popen (__const char *__command, __const char *__modes) __THROW; -+/* Create a new stream connected to a pipe running the given command. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern FILE *popen (__const char *__command, __const char *__modes); -+ -+/* Close a stream opened by popen and return the status of its child. - --/* Close a stream opened by popen and return the status of its child. */ --extern int pclose (FILE *__stream) __THROW; -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern int pclose (FILE *__stream); - #endif - - -@@ -628,7 +782,7 @@ - - #ifdef __USE_XOPEN - /* Return the name of the current user. */ --extern char *cuserid (char *__s) __THROW; -+extern char *cuserid (char *__s); - #endif /* Use X/Open, but not issue 6. */ - - ---- glibc-2.3.2/libio/strops.c 2002-02-25 01:49:21.000000000 -0500 -+++ glibc-2.3.2/libio/strops.c 2003-06-03 09:36:22.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993, 1997-2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993, 1997-2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -63,33 +63,22 @@ - #endif - - void --_IO_str_init_static (sf, ptr, size, pstart) -+_IO_str_init_static_internal (sf, ptr, size, pstart) - _IO_strfile *sf; - char *ptr; -- int size; -+ _IO_size_t size; - char *pstart; - { - _IO_FILE *fp = &sf->_sbf._f; -+ char *end; - - if (size == 0) -- size = strlen (ptr); -- else if (size < 0) -- { -- /* If size is negative 'the characters are assumed to -- continue indefinitely.' This is kind of messy ... */ -- int s; -- size = 512; -- /* Try increasing powers of 2, as long as we don't wrap around. */ -- for (; s = 2*size, s > 0 && ptr + s > ptr && s < 0x4000000L; ) -- size = s; -- /* Try increasing size as much as we can without wrapping around. */ -- for (s = size >> 1; s > 0; s >>= 1) -- { -- if (ptr + size + s > ptr) -- size += s; -- } -- } -- INTUSE(_IO_setb) (fp, ptr, ptr + size, 0); -+ end = __rawmemchr (ptr, '\0'); -+ else if ((_IO_size_t) ptr + size > (_IO_size_t) ptr) -+ end = ptr + size; -+ else -+ end = (char *) -1; -+ INTUSE(_IO_setb) (fp, ptr, end, 0); - - fp->_IO_write_base = ptr; - fp->_IO_read_base = ptr; -@@ -97,19 +86,28 @@ - if (pstart) - { - fp->_IO_write_ptr = pstart; -- fp->_IO_write_end = ptr + size; -+ fp->_IO_write_end = end; - fp->_IO_read_end = pstart; - } - else - { - fp->_IO_write_ptr = ptr; - fp->_IO_write_end = ptr; -- fp->_IO_read_end = ptr+size; -+ fp->_IO_read_end = end; - } - /* A null _allocate_buffer function flags the strfile as being static. */ - sf->_s._allocate_buffer = (_IO_alloc_type) 0; - } --INTDEF(_IO_str_init_static) -+ -+void -+_IO_str_init_static (sf, ptr, size, pstart) -+ _IO_strfile *sf; -+ char *ptr; -+ int size; -+ char *pstart; -+{ -+ return _IO_str_init_static_internal (sf, ptr, size < 0 ? -1 : size, pstart); -+} - - void - _IO_str_init_readonly (sf, ptr, size) -@@ -117,7 +115,7 @@ - const char *ptr; - int size; - { -- INTUSE(_IO_str_init_static) (sf, (char *) ptr, size, NULL); -+ _IO_str_init_static_internal (sf, (char *) ptr, size < 0 ? -1 : size, NULL); - sf->_sbf._f._IO_file_flags |= _IO_NO_WRITES; - } - ---- glibc-2.3.2/libio/swprintf.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/swprintf.c 2003-03-15 15:02:08.000000000 -0500 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1991,1995,1997,1998,1999,2000 Free Software Foundation, Inc. -+/* Copyright (C) 1991,1995,1997,1998,1999,2000,2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -22,10 +23,7 @@ - /* Write formatted output into S, according to the format string FORMAT. */ - /* VARARGS3 */ - int --swprintf (s, n, format) -- wchar_t *s; -- size_t n; -- const wchar_t *format; -+swprintf (wchar_t *s, size_t n, const wchar_t *format, ...) - { - va_list arg; - int done; ---- glibc-2.3.2/libio/swscanf.c 2001-07-07 15:21:03.000000000 -0400 -+++ glibc-2.3.2/libio/swscanf.c 2003-03-15 15:02:08.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991, 1995, 1996, 1998, 1999 Free Software Foundation, Inc. -+/* Copyright (C) 1991,1995,1996,1998,1999,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -22,9 +22,7 @@ - /* Read formatted input from S, according to the format string FORMAT. */ - /* VARARGS2 */ - int --swscanf (s, format) -- const wchar_t *s; -- const wchar_t *format; -+swscanf (const wchar_t *s, const wchar_t *format, ...) - { - va_list arg; - int done; ---- glibc-2.3.2/libio/vasprintf.c 2002-02-25 02:02:03.000000000 -0500 -+++ glibc-2.3.2/libio/vasprintf.c 2003-06-03 09:36:23.000000000 -0400 -@@ -54,7 +54,7 @@ - #endif - _IO_no_init ((_IO_FILE *) &sf._sbf, _IO_USER_LOCK, -1, NULL, NULL); - _IO_JUMPS ((struct _IO_FILE_plus *) &sf._sbf) = &_IO_str_jumps; -- INTUSE(_IO_str_init_static) (&sf, string, init_string_size, string); -+ _IO_str_init_static_internal (&sf, string, init_string_size, string); - sf._sbf._f._flags &= ~_IO_USER_BUF; - sf._s._allocate_buffer = (_IO_alloc_type) malloc; - sf._s._free_buffer = (_IO_free_type) free; ---- glibc-2.3.2/libio/vsnprintf.c 2002-02-25 02:02:12.000000000 -0500 -+++ glibc-2.3.2/libio/vsnprintf.c 2003-06-03 09:36:23.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1994,1997,1999,2000,2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1994,1997,1999-2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -126,7 +126,7 @@ - _IO_no_init (&sf.f._sbf._f, _IO_USER_LOCK, -1, NULL, NULL); - _IO_JUMPS ((struct _IO_FILE_plus *) &sf.f._sbf) = &_IO_strn_jumps; - string[0] = '\0'; -- INTUSE(_IO_str_init_static) (&sf.f, string, maxlen - 1, string); -+ _IO_str_init_static_internal (&sf.f, string, maxlen - 1, string); - ret = INTUSE(_IO_vfprintf) ((_IO_FILE *) &sf.f._sbf, format, args); - - if (sf.f._sbf._f._IO_buf_base != sf.overflow_buf) ---- glibc-2.3.2/libio/wfileops.c 2002-11-05 02:28:51.000000000 -0500 -+++ glibc-2.3.2/libio/wfileops.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993,95,97,98,99,2000,2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,95,97,98,99,2000,2001,2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Ulrich Drepper . - Based on the single byte version by Per Bothner . -@@ -153,6 +153,7 @@ - fp->_wide_data->_IO_buf_end, - &fp->_wide_data->_IO_read_end); - -+ fp->_IO_read_base = fp->_IO_read_ptr; - fp->_IO_read_ptr = (char *) read_stop; - - /* If we managed to generate some text return the next character. */ -@@ -217,16 +218,13 @@ - traditional Unix systems did this for stdout. stderr better - not be line buffered. So we do just that here - explicitly. --drepper */ -- _IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, -- _IO_stdout); -- _IO_flockfile (_IO_stdout); -+ _IO_acquire_lock (_IO_stdout); - - if ((_IO_stdout->_flags & (_IO_LINKED | _IO_NO_WRITES | _IO_LINE_BUF)) - == (_IO_LINKED | _IO_LINE_BUF)) - _IO_OVERFLOW (_IO_stdout, EOF); - -- _IO_funlockfile (_IO_stdout); -- _IO_cleanup_region_end (0); -+ _IO_release_lock (_IO_stdout); - #endif - } - -@@ -879,7 +877,7 @@ - JUMP_INIT(showmanyc, _IO_default_showmanyc), - JUMP_INIT(imbue, _IO_default_imbue) - }; --INTVARDEF(_IO_wfile_jumps) -+libc_hidden_data_def (_IO_wfile_jumps) - - - struct _IO_jump_t _IO_wfile_jumps_mmap = ---- glibc-2.3.2/libio/wstrops.c 2002-08-24 22:41:38.000000000 -0400 -+++ glibc-2.3.2/libio/wstrops.c 2003-06-03 09:36:23.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1993,1997,1998,1999,2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1993,1997-1999,2001-2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -67,28 +67,20 @@ - _IO_wstr_init_static (fp, ptr, size, pstart) - _IO_FILE *fp; - wchar_t *ptr; -- int size; -+ _IO_size_t size; - wchar_t *pstart; - { -+ wchar_t *end; -+ - if (size == 0) -- size = __wcslen (ptr); -- else if (size < 0) -- { -- /* If size is negative 'the characters are assumed to -- continue indefinitely.' This is kind of messy ... */ -- int s; -- size = 512; -- /* Try increasing powers of 2, as long as we don't wrap around. */ -- for (; s = 2*size, s > 0 && ptr + s > ptr && s < 0x4000000L; ) -- size = s; -- /* Try increasing size as much as we can without wrapping around. */ -- for (s = size >> 1; s > 0; s >>= 1) -- { -- if (ptr + size + s > ptr) -- size += s; -- } -- } -- INTUSE(_IO_wsetb) (fp, ptr, ptr + size, 0); -+ end = ptr + __wcslen (ptr); -+ else if ((_IO_size_t) ptr + size * sizeof (wchar_t) > (_IO_size_t) ptr) -+ end = ptr + size; -+ else -+ /* Even for misaligned ptr make sure there is integral number of wide -+ characters. */ -+ end = ptr + (-1 - (_IO_size_t) ptr) / sizeof (wchar_t); -+ INTUSE(_IO_wsetb) (fp, ptr, end, 0); - - fp->_wide_data->_IO_write_base = ptr; - fp->_wide_data->_IO_read_base = ptr; -@@ -96,29 +88,19 @@ - if (pstart) - { - fp->_wide_data->_IO_write_ptr = pstart; -- fp->_wide_data->_IO_write_end = ptr + size; -+ fp->_wide_data->_IO_write_end = end; - fp->_wide_data->_IO_read_end = pstart; - } - else - { - fp->_wide_data->_IO_write_ptr = ptr; - fp->_wide_data->_IO_write_end = ptr; -- fp->_wide_data->_IO_read_end = ptr + size; -+ fp->_wide_data->_IO_read_end = end; - } - /* A null _allocate_buffer function flags the strfile as being static. */ - (((_IO_strfile *) fp)->_s._allocate_buffer) = (_IO_alloc_type)0; - } - --void --_IO_wstr_init_readonly (fp, ptr, size) -- _IO_FILE *fp; -- const char *ptr; -- int size; --{ -- _IO_wstr_init_static (fp, (wchar_t *) ptr, size, NULL); -- fp->_IO_file_flags |= _IO_NO_WRITES; --} -- - _IO_wint_t - _IO_wstr_overflow (fp, c) - _IO_FILE *fp; ---- glibc-2.3.2/linuxthreads/ChangeLog 2003-02-27 17:40:10.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/ChangeLog 2003-09-19 22:37:03.000000000 -0400 -@@ -1,4 +1,558 @@ --2003-02-27 Roland McGrath -+2003-09-18 Jakub Jelinek -+ -+ * sysdeps/pthread/pthread.h (pthread_getattr_np): Clarify usage. -+ -+ * tst-attr1.c: New test. -+ * Makefile (tests): Add tst-attr1. -+ -+2003-09-17 Philip Blundell -+ -+ * sysdeps/unix/sysv/linux/arm/vfork.S: Branch to fork if -+ libpthread is loaded. Elide backwards compatibility code when not -+ required. -+ -+2003-09-17 Jakub Jelinek -+ -+ * descr.h (manager_thread): Rename to... -+ (__pthread_manager_threadp): ... this. -+ * pthread.c (manager_thread): Define to __pthread_manager_threadp. -+ (__pthread_manager_threadp): New variable. -+ * internals.h (__manager_thread): Define to -+ __pthread_manager_threadp if USE_TLS. -+ -+2003-09-15 Jakub Jelinek -+ -+ * sysdeps/i386/Makefile (CFLAGS-cancel.c, CFLAGS-manager.c, -+ CFLAGS-pthread.c, CFLAGS-sighandler.c): Add -+ -mpreferred-stack-boundary=4. -+ -+2003-09-16 Ulrich Drepper -+ -+ * attr.c (pthread_getattr_np): Correctly fill in the stack-related -+ values for the initial thread. -+ -+2003-09-17 Jakub Jelinek -+ -+ * pthread.c (manager_thread): Remove static, add attribute_hidden. -+ (thread_self_stack): Rename to... -+ (__pthread_self_stack): ... this. Remove static. -+ (pthread_handle_sigcancel): Use check_thread_self (). -+ (pthread_handle_sigrestart): Likewise. -+ * sighandler.c (__pthread_sighandler, __pthread_sighandler_rt): -+ Likewise. -+ * descr.h (manager_thread): Declare. -+ * internals.h (__pthread_self_stack): New prototype. -+ (__manager_thread): Define. -+ (check_thread_self): New function. -+ -+2003-09-15 Jakub Jelinek -+ -+ * Makefile (CFLAGS-mutex.c): Add $(uses-callbacks). -+ (CFLAGS-sighandler.c): Change $(exceptions) into $(uses-callbacks). -+ -+2003-09-12 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New. -+ (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and -+ __SLONGWORD_TYPE otherwise. -+ -+2003-09-11 Steven Munroe -+ -+ * sysdeps/powerpc/powerpc64/pt-machine.h [MEMORY_BARRIER]: Use lwsync. -+ [READ_MEMORY_BARRIER]: Define. -+ [WRITE_MEMORY_BARRIER]: Define. -+ -+2003-09-10 Jakub Jelinek -+ -+ * sysdeps/pthread/pthread-functions.h (struct pthread_functions): Move -+ ptr___pthread_cond_timedwait to the end of the structure to avoid -+ breaking Wine unnecessarily. -+ -+2003-09-08 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove. -+ -+2003-09-02 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/alpha/bits/local_lim.h: New file. -+ * sysdeps/unix/sysv/linux/alpha/Versions: New file. -+ * sysdeps/unix/sysv/linux/ia64/bits/local_lim.h: New file. -+ * sysdeps/unix/sysv/linux/ia64/Versions: New file. -+ * sysdeps/unix/sysv/linux/sparc/bits/local_lim.h: New file. -+ * sysdeps/unix/sysv/linux/sparc/Versions: New file. -+ * attr.c (__old_pthread_attr_setstacksize, -+ __old_pthread_attr_setstack): New functions. -+ (pthread_attr_setstacksize): If PTHREAD_STACK_MIN != 16384, export -+ as @@GLIBC_2.3.2 and also export compatibility @GLIBC_2.1. -+ (pthread_attr_setstack): If PTHREAD_STACK_MIN != 16384, export -+ as @@GLIBC_2.3.2 and also export compatibility @GLIBC_2.2. -+ * tststack.c: Include limits.h and sys/param.h. -+ (main): Set size to MAX (70 * 1024, PTHREAD_STACK_MIN). -+ -+ * barrier.c (__pthread_barrierattr_getpshared): Always -+ return PTHREAD_PROCESS_PRIVATE. -+ (pthread_barrierattr_setpshared): Return EINVAL if pshared -+ is neither PTHREAD_PROCESS_PRIVATE nor PTHREAD_PROCESS_SHARED. -+ -+2003-09-02 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/i386/dl-sysdep.h -+ (DL_SYSINFO_IMPLEMENTATION): Add CFI and make sure the code ends -+ up in .text. -+ -+ * barrier.c (pthread_barrierattr_setpshared): We don't handle -+ inter-process barriers. -+ -+2003-09-01 Jakub Jelinek -+ -+ * Makefile (tests): Add tst-tls1. -+ (module-names): Add tst-tls1mod{,a,b,c,d,e,f}. -+ ($(objpfx)tst-tls1mod{,a,b,c,d,e,f}.so-no-z-defs): Set to yes. -+ ($(objpfx)tst-tls1): New. -+ ($(objpfx)tst-tls2.out): Likewise. -+ (tests): Depend on $(objpfx)tst-tls2.out. -+ * tst-tls1.c: New test. -+ * tst-tls1.h: New. -+ * tst-tls1mod.c: New. -+ * tst-tls1moda.c: New. -+ * tst-tls1modb.c: New. -+ * tst-tls1modc.c: New. -+ * tst-tls1modd.c: New. -+ * tst-tls1mode.c: New. -+ * tst-tls1modf.c: New. -+ * tst-tls2.sh: New test. -+ -+ * internals.h (__pthread_cond_timedwait): New prototype. -+ * sysdeps/pthread/pthread-functions.h (struct pthread_functions): Add -+ ptr___pthread_cond_timedwait. -+ * pthread.c (__pthread_functions): Initialize them. -+ * forward.c (pthread_cond_timedwait@GLIBC_2.0, -+ pthread_cond_timedwait@@GLIBC_2.3.2): New forwards. -+ * Versions (libc): Export pthread_cond_timedwait@GLIBC_2.0, -+ pthread_cond_timedwait@@GLIBC_2.3.2. -+ -+2003-08-27 Ulrich Drepper -+ -+ * sysdeps/pthread/pthread.h: Don't mark pthread_exit, -+ pthread_join, pthread_cond_wait, and pthread_cond_timedwait with -+ __THROW to match NPTL. -+ -+2003-08-13 Ulrich Drepper -+ -+ * sysdeps/pthread/Makefile [subdir=rt] (CPPFLAGS): Add -+ -DBROKEN_THREAD_SIGNALS. -+ -+2003-08-11 Steven Munroe -+ -+ * manager.c (pthread_start_thread) [!(USE_TLS && HAVE___THREAD)]: -+ Correct spelling of per thread resolver state. -+ -+2003-08-07 Jakub Jelinek -+ -+ * sysdeps/pthread/bits/libc-lock.h [_LIBC && SHARED] -+ (__rtld_lock_default_lock_recursive, -+ __rtld_lock_default_unlock_recursive): Define. -+ [_LIBC && SHARED] (__rtld_lock_lock_recursive, -+ __rtld_lock_unlock_recursive): Define using -+ GL(_dl_rtld_*lock_recursive). -+ * pthread.c (pthread_initialize): Initialize _dl_rtld_lock_recursive -+ and _dl_rtld_unlock_recursive. Lock GL(_dl_load_lock) the same -+ number of times as GL(_dl_load_lock) using non-mt implementation was -+ nested. -+ -+2003-07-31 Jakub Jelinek -+ -+ * sysdeps/pthread/bits/typesizes.h (__SSIZE_T_TYPE): Define. -+ * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__SSIZE_T_TYPE): -+ Likewise. -+ * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__SSIZE_T_TYPE): -+ Likewise. -+ * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New file. -+ -+ * sysdeps/pthread/pthread.h (pthread_attr_setstackaddr, -+ pthread_attr_setstacksize): Change PTHREAD_STACK_SIZE to -+ PTHREAD_STACK_MIN in comments. -+ -+ * sysdeps/alpha/pt-machine.h (PT_EI): Add -+ __attribute__((always_inline)). -+ * sysdeps/arm/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/cris/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/hppa/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/i386/i686/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/i386/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/ia64/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/m68k/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/mips/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/powerpc/powerpc32/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/powerpc/powerpc64/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/s390/s390-32/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/s390/s390-64/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/sh/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/sparc/sparc32/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/sparc/sparc64/pt-machine.h (PT_EI): Likewise. -+ * sysdeps/x86_64/pt-machine.h (PT_EI): Likewise. -+ * spinlock.h (__pthread_set_own_extricate_if): Likewise. -+ * sysdeps/ia64/tls.h (TLS_INIT_TP): Cast tcbp to __typeof -+ (__thread_self). -+ * Examples/ex13.c (main): Change res type to void * to avoid -+ warnings. -+ * tst-cancel.c (cleanup, inner, tf1, tf2, tf3): Comment out. -+ -+2003-07-30 Jakub Jelinek -+ -+ * pthread.c (init_one_static_tls, __pthread_init_static_tls): New -+ functions. -+ (pthread_initialize): Initialize GL(dl_init_static_tls). -+ -+2003-06-19 Daniel Jacobowitz -+ -+ * sysdeps/pthread/timer_create.c (timer_create): Call timer_delref -+ before __timer_dealloc. -+ * sysdeps/pthread/timer_routines.c (__timer_thread_find_matching): -+ Don't call list_unlink. -+ -+2003-07-29 Roland McGrath -+ -+ * Makefile [$(build-shared) = yes] (tests): Depend on $(test-modules). -+ -+2003-07-25 Roland McGrath -+ -+ * manager.c (pthread_start_thread): Fix typo in last change. -+ -+2003-07-14 Guido Guenther -+ -+ * sysdeps/unix/sysv/linux/mips/sysdep-cancel.h: Add IS_IN_librt, -+ use L() for local labels. -+ -+2003-07-22 Jakub Jelinek -+ -+ * descr.h (struct _pthread_descr_struct): Provide p_res member -+ even if USE_TLS && HAVE___THREAD. -+ * sysdeps/pthread/res-state.c (__res_state): Return __resp -+ if USE___THREAD. -+ * manager.c: Include resolv.h. -+ (pthread_start_thread): Initialize __resp. -+ * libc-tls-loc.c (__res_state): Return __resp. -+ * Makefile (tests): Add tst-_res1. -+ (modules-names, extra-objs, test-extras, test-modules): Add support -+ for test modules. -+ ($(objpfx)tst-_res1mod2.so): Depend on $(objpfx)tst-_res1mod1.so. -+ ($(objpfx)tst-_res1): Depend on $(objpfx)tst-_res1mod2.so and -+ -lpthread. -+ * tst-_res1.c: New test. -+ * tst-_res1mod1.c: New test. -+ * tst-_res1mod2.c: New test. -+ -+2003-07-20 Ulrich Drepper -+ -+ * sysdeps/pthread/bits/libc-lock.h: Define __libc_cleanup_push and -+ __libc_cleanup_pop. -+ -+ * tst-cancel-wrappers.sh: lseek and llseek are no cancellation points. -+ -+2003-07-14 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h: Fix typo -+ in test for compilation in libc. -+ -+2003-07-04 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h (PSEUDO): Use -+ different symbol for the cancellation syscall wrapper and -+ non-cancellation syscall wrapper. -+ (PSEUDO_END): Define. -+ -+2003-07-05 Richard Henderson -+ -+ * sysdeps/alpha/elf/pt-initfini.c: Avoid .ent/.end. -+ -+2003-06-20 Kaz Kojima -+ -+ * sysdeps/unix/sysv/linux/sh/sysdep-cancel.h: Support cancellation -+ in librt. -+ -+2003-06-21 Andreas Schwab -+ -+ * sysdeps/unix/sysv/linux/m68k/sysdep-cancel.h: Support cancellation -+ in librt. -+ -+2003-06-20 Richard Henderson -+ -+ * sysdeps/unix/sysv/linux/alpha/Makefile (libpthread-routines): -+ Remove ptw-osf_sigprocmask. -+ -+2003-06-18 Jakub Jelinek -+ -+ * internals.h (__librt_multiple_threads, __librt_enable_asynccancel, -+ __librt_disable_asynccancel): Declare. -+ (LIBC_CANCEL_ASYNC, LIBC_CANCEL_RESET, LIBC_CANCEL_HANDLED): Define -+ for IS_IN_librt. -+ * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h: Support cancellation -+ in librt. -+ * sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep-cancel.h: Likewise. -+ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h: Likewise. -+ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h: Likewise. -+ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h: Likewise. -+ * sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h: Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h: Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h: Likewise. -+ * sysdeps/x86_64/tcb-offsets.sym: New file. -+ * sysdeps/x86_64/Makefile: New file. -+ * sysdeps/x86_64/tls.h (tcbhead_t): Add multiple_threads. -+ * Versions (libc): Export __librt_enable_asynccancel, -+ __librt_disable_asynccancel and __librt_multiple_threads as -+ GLIBC_PRIVATE. -+ * libc-cancellation.c (__librt_multiple_threads, -+ __librt_enable_asynccancel, __librt_disable_asynccancel): New aliases. -+ -+2003-06-12 Steven Munroe -+ -+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h -+ (SINGLE_THREAD_P): Replace @ got notation with @toc. -+ -+2003-06-11 Ulrich Drepper -+ -+ * sysdeps/powerpc/pspinlock.c (__pthread_spin_init): Fix -+ initializer [PR libc/5052]. -+ -+2003-06-09 Andreas Schwab -+ -+ * Makefile: Move inclusion of ../Rules down after extra-objs is -+ fully known. -+ -+2003-06-06 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/arm/sysdep-cancel.h: New sequences for -+ 5+ arg syscalls only needed for PIC. -+ Patch by Ralph Siemsen . -+ -+2003-06-05 Richard Henderson -+ -+ * sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h (PSEUDO): Use -+ and require CFI assembler directives. -+ * sysdeps/unix/sysv/linux/alpha/vfork.S: Likewise. -+ -+2003-05-30 Andreas Jaeger -+ -+ * sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h -+ (SAVESTK_0): Add CFI directives. -+ (SAVESTK_3): Likewise. -+ (SAVESTK_5): Likewise. -+ (RESTSTK_0): Likewise. -+ (RESTSTK_3): Likewise. -+ (RESTSTK_5): Likewise. -+ -+2003-05-05 Ulrich Drepper -+ -+ * sysdeps/i386/tls.h (TLS_DO_SET_THREAD_AREA): Add \n to error -+ messages. -+ -+2003-05-04 Roland McGrath -+ -+ * Makefile ($(objpfx)../libc.so): New target. -+ -+2003-04-26 Ulrich Drepper -+ -+ * pthread.c (__pthread_initialize_manager): Remove one last -+ p_multiple_threads call. -+ -+2003-04-22 Jakub Jelinek -+ -+ * pthread.c (__pthread_initialize_manager): Subtract -+ TLS_PRE_TCB_SIZE bytes from tcbp to get to descr. -+ * manager.c (pthread_handle_create): Subtract or add TLS_PRE_TCB_SIZE -+ instead of sizeof (pthread_descr). -+ (pthread_free): Add TLS_PRE_TCB_SIZE instead of sizeof (pthread_descr). -+ * sysdeps/powerpc/tls.h (TLS_INIT_TCB_SIZE, TLS_TCB_SIZE): Define to 0. -+ (TLS_INIT_TCB_ALIGN, TLS_TCB_ALIGN): Define to alignment of -+ pthread_descr. -+ (TLS_PRE_TCB_SIZE): Increase to cover tcbhead_t preceeded by pad -+ to TLS_TCB_ALIGN. -+ (INSTALL_DTV, GET_DTV, THREAD_DTV): tcbhead_t is immediately before -+ tcbp. -+ (TLS_INIT_TP, THREAD_SELF, INIT_THREAD_SELF): Don't add TLS_TCB_SIZE -+ unneccessarily. -+ (NO_TLS_OFFSET): Define. -+ -+2003-04-22 Roland McGrath -+ -+ * Makeconfig (shared-thread-library): Reverse link order to work -+ around linker bug. -+ -+2003-04-20 Ulrich Drepper -+ -+ * sysdeps/i386/useldt.h (DO_SET_THREAD_AREA): Make sure the -+ compiler knows we use the ldt_entry variable and that the syscall -+ modifies the memory. -+ -+ * internals.h: Split pthread_functions definition into... -+ * sysdeps/pthread/pthread-functions.h: ...new file. -+ -+ * sysdeps/i386/useldt.h: Include . -+ -+2003-04-13 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h: Rename macros to -+ match changes in NPTL sysdep-cancel.h. -+ -+2003-04-11 Roland McGrath -+ -+ * Makefile (multidir): Don't set the variable here with $(shell ...). -+ ($(objpfx)multidir.mk): New target, generated makefile; include that. -+ (generated): Append it. -+ -+2003-04-10 Jakub Jelinek -+ -+ * Makefile (multidir, crti-objs, crtn-objs): New variables. -+ (generated-dirs): Add pathname component of multidir. -+ (omit-deps, extra-objs): Include $(multidir)/crt? as well. -+ ($(objpfx)libpthread.so): Depend on $(multidir)/crt?.o as well. -+ ($(objpfx)$(multidir), $(objpfx)$(multidir)/crti.o, -+ $(objpfx)$(multidir)/crtn.o): New. -+ * sysdeps/unix/sysv/linux/sparc/Makefile: Removed. -+ * sysdeps/unix/sysv/linux/x86_64/Makefile (LDFLAGS-pthread.so, -+ before-compile, generated): Don't generate and use specs. -+ ($(objpfx)specs): Remove. -+ -+2003-04-11 Martin Schwidefsky -+ -+ * sysdeps/s390/pspinlock.c (__pthread_spin_unlock): Fix asm contraints. -+ -+2003-04-03 Ulrich Drepper -+ -+ * sysdeps/unix/sysv/linux/arm/sysdep-cancel.h (PSEUDO): Add -+ missing ; after ENTRY use [PR libc/4997]. -+ -+2003-04-03 Jakub Jelinek -+ -+ * pthread.c (pthread_initialize): Unblock __pthread_sig_cancel -+ in case the parent blocked it. -+ -+2003-04-02 Jakub Jelinek -+ -+ * Makefile (libpthread-routines): Add pthread_atfork. -+ (libpthread-static-only-routines): Add pthread_atfork. -+ -+2003-04-01 Jakub Jelinek -+ -+ * pthread.c (__pthread_wait_for_restart_signal): Use -+ __pthread_sigsuspend instead of sigsuspend. -+ * internals.h (__pthread_sigsuspend): New prototype. -+ * Makefile (libpthread-routines): Add pt-sigsuspend. -+ (tests): Add tst-cancel7. -+ * sysdeps/unix/sysv/linux/pt-sigsuspend.c: New file. -+ * sysdeps/unix/sysv/linux/alpha/pt-sigsuspend.S: New file. -+ * sysdeps/unix/sysv/linux/ia64/pt-sigsuspend.c: New file. -+ * sysdeps/unix/sysv/linux/s390/s390-64/pt-sigsuspend.c: New file. -+ * sysdeps/unix/sysv/linux/sparc/sparc64/pt-sigsuspend.c: New file. -+ * sysdeps/unix/sysv/linux/x86_64/pt-sigsuspend.c: New file. -+ * tst-cancel7.c: New test. -+ -+2003-03-31 Alexandre Oliva -+ -+ * alloca_cutoff.c: Include internals.h. -+ * sysdeps/pthread/errno-loc.c: Include linuxthreads/internals.h. -+ * sysdeps/pthread/herrno-loc.c: Likewise. -+ * sysdeps/pthread/res-state.c: Likewise. -+ -+2003-03-25 Ulrich Drepper -+ -+ * sysdeps/pthread/bits/typesizes.h: New file. -+ * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file. -+ * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file. -+ -+2003-03-24 Daniel Jacobowitz -+ -+ * sysdeps/unix/sysv/linux/arm/sysdep-cancel.h -+ (DOARGS_5, DOARGS_6, DOARGS_7): Rewritten. -+ -+2003-03-22 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/fork.c (__fork): Add libc_hidden_def. -+ -+2003-03-21 Daniel Jacobowitz -+ -+ * sysdeps/unix/sysv/linux/arm/sysdep-cancel.h -+ (SINGLE_THREAD_P_PIC): Use "reg" instead of "lr". -+ -+2003-03-21 Jakub Jelinek -+ -+ * sysdeps/i386/tls.h [__ASSUME_SET_THREAD_AREA_SYSCALL] -+ (TLS_SETUP_GS_SEGMENT): Fix a typo. -+ -+2003-03-19 Ulrich Drepper -+ -+ * sysdeps/pthread/Makefile: Fix cut&paste error. -+ -+2003-03-18 Roland McGrath -+ -+ * Versions (libpthread: GLIBC_2.2): Remove -+ pthread_barrierattr_getpshared, never really existed. -+ (libpthread: GLIBC_2.0): Move __pthread_initialize to ... -+ (libpthread: GLIBC_PRIVATE): ... here. -+ -+2003-03-14 Jakub Jelinek -+ -+ * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile: New file. -+ * sysdeps/unix/sysv/linux/sparc/Makefile ($(objpfx)specs): Use full -+ path for crt[in].o. -+ -+2003-03-14 Alexandre Oliva -+ -+ * sysdeps/mips/pspinlock.c (__pthread_spin_lock): Don't .set -+ mips2 on new abi. -+ * sysdeps/mips/pt-machine.h (__compare_and_swap): Likewise. -+ Handle 64-bit longs on n64. -+ -+2003-03-07 Jakub Jelinek -+ -+ * sysdeps/ia64/pspinlock.c (__pthread_spin_lock, -+ __pthread_spin_trylock): Rewritten. -+ -+2003-03-06 Ulrich Drepper -+ -+ * tst-cancel4.c (tf_sleep): Lower sleep time a bit to not upset -+ recent kernels. -+ -+2003-03-02 Ulrich Drepper -+ -+ * sysdeps/pthread/timer_create.c (timer_create): Return correct -+ error for CPU clocks. -+ -+ * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define -+ _POSIX_MONOTONIC_CLOCK. -+ * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise. -+ -+2003-03-01 Roland McGrath -+ -+ * sysdeps/powerpc/powerpc64/pt-machine.h -+ (THREAD_GETMEM, THREAD_GETMEM_NC, THREAD_SETMEM, THREAD_SETMEM_NC): -+ New macros. -+ * sysdeps/powerpc/tls.h: Don't define those here. -+ -+ * sysdeps/powerpc/tls.h [! USE_TLS && !__powerpc64__]: Define -+ tcbhead_t with multiple_threads member. -+ [USE_TLS] (tcbhead_t): Define minimal one-word version. -+ [USE_TLS && !__powerpc64__] (TLS_MULTIPLE_THREADS_IN_TCB): Define. -+ * sysdeps/powerpc/tcb-offsets.sym [USE_TLS]: Use tls.h macros to -+ derive thread register offset of p_multiple_threads member. -+ -+ * descr.h (struct _pthread_descr_struct) [!USE_TLS || !TLS_DTV_AT_TP]: -+ Conditionalize p_header member on this. -+ [TLS_MULTIPLE_THREADS_IN_TCB]: Add p_multiple_threads alternatively. -+ * sysdeps/ia64/tls.h [USE_TLS] (TLS_MULTIPLE_THREADS_IN_TCB): Define. -+ * sysdeps/sh/tls.h: Likewise. -+ * sysdeps/ia64/tcb-offsets.sym [USE_TLS]: Use p_multiple_threads. -+ * sysdeps/sh/tcb-offsets.sym: Likewise. -+ * sysdeps/unix/sysv/linux/sh/sysdep-cancel.h -+ (SINGLE_THREAD_P): Likewise. -+ * sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h -+ (SINGLE_THREAD_P): Likewise. -+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h -+ (SINGLE_THREAD_P): Likewise. -+ * pthread.c (__pthread_initialize_manager): Likewise. -+ * manager.c (pthread_handle_create): Likewise. - - * sysdeps/powerpc/tls.h [HAVE_TLS_SUPPORT]: Define USE_TLS and all - related macros. ---- glibc-2.3.2/linuxthreads/Examples/ex13.c 2002-09-25 01:28:41.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/Examples/ex13.c 2003-08-21 08:37:03.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Test for Pthreads/mutexes. -- Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Kurt Garloff , 2000. - -@@ -80,7 +80,7 @@ - struct thr_ctrl threadctrl; - pthread_t thread; - int err; -- int *res = &threadctrl.retval; -+ void *res = &threadctrl.retval; - pthread_mutexattr_t mutattr; - pthread_mutexattr_init (&mutattr); - pthread_mutex_init (&threadctrl.mutex, &mutattr); -@@ -106,7 +106,7 @@ - abort (); - }; - dump_mut (&threadctrl.mutex); -- pthread_join (thread, (void **) &res); -+ pthread_join (thread, &res); - printf ("OK\n"); - return 0; - } ---- glibc-2.3.2/linuxthreads/Makeconfig 2002-12-31 00:56:27.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/Makeconfig 2003-04-24 20:05:57.000000000 -0400 -@@ -3,8 +3,8 @@ - - have-thread-library = yes - --shared-thread-library = $(common-objpfx)linuxthreads/libpthread.so \ -- $(common-objpfx)linuxthreads/libpthread_nonshared.a -+shared-thread-library = $(common-objpfx)linuxthreads/libpthread_nonshared.a \ -+ $(common-objpfx)linuxthreads/libpthread.so - static-thread-library = $(common-objpfx)linuxthreads/libpthread.a - bounded-thread-library = $(common-objpfx)linuxthreads/libpthread_b.a - ---- glibc-2.3.2/linuxthreads/Makefile 2003-02-21 20:01:16.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/Makefile 2003-09-19 22:37:03.000000000 -0400 -@@ -21,6 +21,8 @@ - # - subdir := linuxthreads - -+all: # Make this the default target; it will be defined in Rules. -+ - linuxthreads-version := $(shell sed -n 's/^.*$(subdir)-\([0-9.]*\).*$$/\1/p' \ - Banner) - -@@ -36,8 +38,8 @@ - install-lib-ldscripts := libpthread.so - - libpthread-routines := attr cancel condvar join manager mutex ptfork \ -- ptlongjmp pthread signals specific errno lockfile \ -- semaphore spinlock rwlock pt-machine \ -+ ptlongjmp pthread pt-sigsuspend signals specific errno \ -+ lockfile semaphore spinlock rwlock pt-machine \ - oldsemaphore events getcpuclockid pspinlock barrier \ - ptclock_gettime ptclock_settime sighandler \ - pthandles libc-tls-loc pt-allocrtsig \ -@@ -47,11 +49,12 @@ - ptw-lseek64 ptw-llseek ptw-msync ptw-nanosleep \ - ptw-open ptw-open64 ptw-pause ptw-pread ptw-pread64 \ - ptw-pwrite ptw-pwrite64 ptw-tcdrain ptw-wait \ -- ptw-waitpid pt-system old_pthread_atfork -+ ptw-waitpid pt-system old_pthread_atfork pthread_atfork - # Don't generate deps for calls with no sources. See sysdeps/unix/Makefile. - omit-deps = $(unix-syscalls:%=ptw-%) - - libpthread-shared-only-routines = pt-allocrtsig -+libpthread-static-only-routines = pthread_atfork - - libpthread-nonshared = pthread_atfork - -@@ -78,7 +81,24 @@ - - ifeq ($(build-shared),yes) - --extra-objs += crti.o crtn.o -+# Set the `multidir' variable by grabbing the variable from the compiler. -+# We do it once and save the result in a generated makefile. -+-include $(objpfx)multidir.mk -+$(objpfx)multidir.mk: $(common-objpfx)config.make -+ dir=`$(CC) $(CFLAGS) $(CPPFLAGS) -print-multi-directory`; \ -+ echo "multidir := $$dir" > $@T -+ mv -f $@T $@ -+generated += multidir.mk -+ -+crti-objs := crti.o -+crtn-objs := crtn.o -+ifneq (,$(patsubst .,,$(multidir))) -+generated-dirs := $(firstword $(subst /, , $(multidir))) -+crti-objs += $(multidir)/crti.o -+crtn-objs += $(multidir)/crtn.o -+omit-deps += $(multidir)/crti $(multidir)/crtn -+endif -+extra-objs += $(crti-objs) $(crtn-objs) - omit-deps += crti crtn - - CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions -@@ -89,7 +109,7 @@ - tststack $(tests-nodelete-$(have-z-nodelete)) ecmutex ex14 ex15 ex16 \ - ex17 ex18 tst-cancel tst-context bug-sleep \ - tst-cancel1 tst-cancel2 tst-cancel3 tst-cancel4 tst-cancel5 \ -- tst-cancel6 tst-popen tst-popen2 -+ tst-cancel6 tst-cancel7 tst-popen tst-popen2 tst-attr1 - test-srcs = tst-signal - # These tests are linked with libc before libpthread - tests-reverse += tst-cancel5 -@@ -101,9 +121,31 @@ - - ifeq (yes,$(build-shared)) - tests-nodelete-yes = unload -+tests += tst-tls1 tst-_res1 - endif - --include ../Rules -+modules-names = tst-_res1mod1 tst-_res1mod2 \ -+ tst-tls1mod tst-tls1moda tst-tls1modb tst-tls1modc \ -+ tst-tls1modd tst-tls1mode tst-tls1modf -+extra-objs += $(addsuffix .os,$(strip $(modules-names))) -+test-extras += $(modules-names) -+test-modules = $(addprefix $(objpfx),$(addsuffix .so,$(modules-names))) -+ -+tst-tls1mod.so-no-z-defs = yes -+tst-tls1moda.so-no-z-defs = yes -+tst-tls1modb.so-no-z-defs = yes -+tst-tls1modc.so-no-z-defs = yes -+tst-tls1modd.so-no-z-defs = yes -+tst-tls1mode.so-no-z-defs = yes -+tst-tls1modf.so-no-z-defs = yes -+ -+$(test-modules): $(objpfx)%.so: $(objpfx)%.os $(common-objpfx)shlib.lds -+ $(build-module) -+ -+ifeq ($(build-shared),yes) -+# Build all the modules even when not actually running test programs. -+tests: $(test-modules) -+endif - - # What we install as libpthread.so for programs to link against is in fact a - # link script. It contains references for the various libraries we need. -@@ -131,9 +173,9 @@ - - - extra-B-pthread.so = -B$(common-objpfx)linuxthreads/ --$(objpfx)libpthread.so: $(objpfx)crti.o $(objpfx)crtn.o --$(objpfx)libpthread.so: +preinit += $(objpfx)crti.o --$(objpfx)libpthread.so: +postinit += $(objpfx)crtn.o -+$(objpfx)libpthread.so: $(addprefix $(objpfx),$(crti-objs) $(crtn-objs)) -+$(objpfx)libpthread.so: +preinit += $(addprefix $(objpfx),$(crti-objs)) -+$(objpfx)libpthread.so: +postinit += $(addprefix $(objpfx),$(crtn-objs)) - - znodelete-yes = -DHAVE_Z_NODELETE - CFLAGS-mutex.c += -D__NO_WEAK_PTHREAD_ALIASES -@@ -142,7 +184,8 @@ - CFLAGS-ptfork.c += -D__NO_WEAK_PTHREAD_ALIASES - CFLAGS-cancel.c += -D__NO_WEAK_PTHREAD_ALIASES -D_RPC_THREAD_SAFE_ - CFLAGS-unload.c += -DPREFIX=\"$(objpfx)\" --CFLAGS-sighandler.c += $(exceptions) -+CFLAGS-mutex.c += $(uses-callbacks) -+CFLAGS-sighandler.c += $(uses-callbacks) - - ifeq (yes,$(versioning)) - -include $(common-objpfx)tls.make -@@ -186,6 +229,8 @@ - libc-link.so = $(common-objpfx)libc.so - endif - -+include ../Rules -+ - # Depend on libc.so so a DT_NEEDED is generated in the shared objects. - # This ensures they will load libc.so for needed symbols if loaded by - # a statically-linked program that hasn't already loaded it. -@@ -204,6 +249,7 @@ - $(addprefix $(objpfx), $(tests-reverse)): \ - $(objpfx)../libc.so $(objpfx)libpthread.so \ - $(objpfx)libpthread_nonshared.a -+$(objpfx)../libc.so: $(common-objpfx)libc.so ; - $(addprefix $(objpfx),$(librt-tests)): $(common-objpfx)rt/librt.so - $(objpfx)unload: $(common-objpfx)dlfcn/libdl.so - $(objpfx)unload.out: $(objpfx)libpthread.so $(objpfx)libpthread_nonshared.a -@@ -248,6 +294,17 @@ - $(objpfx)crtn.o: $(objpfx)crtn.S $(objpfx)defs.h - $(compile.S) -g0 $(ASFLAGS-.os) -o $@ - -+ifneq ($(multidir),.) -+$(objpfx)$(multidir): -+ @mkdir -p $(objpfx)$(multidir) -+ -+$(objpfx)$(multidir)/crti.o: $(objpfx)crti.o $(objpfx)$(multidir) -+ ln -f $< $@ -+ -+$(objpfx)$(multidir)/crtn.o: $(objpfx)crtn.o $(objpfx)$(multidir) -+ ln -f $< $@ -+endif -+ - generated += crti.S crtn.S defs.h pt-initfini.s - endif - -@@ -256,6 +313,21 @@ - $(resolvobjdir)/libresolv.a - endif - -+ifeq (yes,$(build-shared)) -+$(objpfx)tst-_res1mod2.so: $(objpfx)tst-_res1mod1.so -+$(objpfx)tst-_res1: $(objpfx)tst-_res1mod2.so $(shared-thread-library) -+ -+$(objpfx)tst-tls1: $(objpfx)tst-tls1mod.so $(shared-thread-library) -+ -+tests: $(objpfx)tst-tls2.out -+$(objpfx)tst-tls2.out: tst-tls2.sh $(objpfx)tst-tls1 \ -+ $(objpfx)tst-tls1moda.so $(objpfx)tst-tls1modb.so \ -+ $(objpfx)tst-tls1modc.so $(objpfx)tst-tls1modd.so \ -+ $(objpfx)tst-tls1mode.so $(objpfx)tst-tls1modf.so -+ $(SHELL) -e tst-tls2.sh $(common-objpfx) $(elf-objpfx) \ -+ $(rtld-installed-name) -+endif -+ - ifeq (no,$(cross-compiling)) - ifeq (yes,$(build-shared)) - tests: $(objpfx)tst-signal.out $(objpfx)tst-cancel-wrappers.out ---- glibc-2.3.2/linuxthreads/Versions 2003-01-02 17:33:45.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/Versions 2003-09-19 22:37:03.000000000 -0400 -@@ -7,6 +7,7 @@ - pthread_attr_setschedparam; pthread_attr_setschedpolicy; - pthread_attr_setscope; pthread_cond_broadcast; pthread_cond_destroy; - pthread_cond_init; pthread_cond_signal; pthread_cond_wait; -+ pthread_cond_timedwait; - pthread_condattr_destroy; pthread_condattr_init; pthread_equal; - pthread_exit; pthread_getschedparam; pthread_mutex_destroy; - pthread_mutex_init; pthread_mutex_lock; pthread_mutex_unlock; -@@ -20,7 +21,7 @@ - # Changed pthread_cond_t. - pthread_cond_init; pthread_cond_destroy; - pthread_cond_wait; pthread_cond_signal; -- pthread_cond_broadcast; -+ pthread_cond_broadcast; pthread_cond_timedwait; - } - GLIBC_PRIVATE { - # Internal libc interface to libpthread -@@ -31,7 +32,8 @@ - - __libc_creat; __libc_poll; __libc_pselect; __libc_select; - __libc_sigpause; __libc_sigsuspend; __libc_sigwait; __libc_sigwaitinfo; -- __libc_waitid; __libc___xpg_sigpause; -+ __libc_waitid; __libc___xpg_sigpause; __librt_enable_asynccancel; -+ __librt_disable_asynccancel; __librt_multiple_threads; - } - } - -@@ -80,7 +82,7 @@ - sigwait; - - # Protected names for functions used in other shared objects. -- __pthread_atfork; __pthread_initialize; __pthread_getspecific; -+ __pthread_atfork; __pthread_getspecific; - __pthread_key_create; __pthread_mutex_destroy; __pthread_mutex_init; - __pthread_mutex_lock; __pthread_mutex_trylock; __pthread_mutex_unlock; - __pthread_mutexattr_destroy; __pthread_mutexattr_init; -@@ -147,7 +149,7 @@ - pthread_getcpuclockid; - pthread_barrier_destroy; pthread_barrier_init; pthread_barrier_wait; - pthread_barrierattr_destroy; pthread_barrierattr_init; -- pthread_barrierattr_getpshared; pthread_barrierattr_setpshared; -+ pthread_barrierattr_setpshared; - pthread_mutex_timedlock; - pthread_rwlock_timedrdlock; pthread_rwlock_timedwrlock; - -@@ -170,6 +172,7 @@ - } - GLIBC_PRIVATE { - # Internal libc interface to libpthread -+ __pthread_initialize; - __pthread_kill_other_threads_np; - } - } ---- glibc-2.3.2/linuxthreads/alloca_cutoff.c 2002-12-28 05:06:33.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/alloca_cutoff.c 2003-04-12 11:39:43.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Determine whether block of given size can be allocated on the stack or not. -- Copyright (C) 2002 Free Software Foundation, Inc. -+ Copyright (C) 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include "internals.h" - #include - - int ---- glibc-2.3.2/linuxthreads/attr.c 2002-12-17 17:49:21.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/attr.c 2003-09-19 22:37:03.000000000 -0400 -@@ -15,6 +15,9 @@ - /* Handling of thread attributes */ - - #include -+#include -+#include -+#include - #include - #include - #include -@@ -220,7 +223,44 @@ - attr->__stacksize = stacksize; - return 0; - } -+ -+#if PTHREAD_STACK_MIN == 16384 - weak_alias (__pthread_attr_setstacksize, pthread_attr_setstacksize) -+#else -+versioned_symbol (libpthread, __pthread_attr_setstacksize, -+ pthread_attr_setstacksize, GLIBC_2_3_3); -+ -+# if SHLIB_COMPAT(libpthread, GLIBC_2_1, GLIBC_2_3_3) -+ -+int __old_pthread_attr_setstacksize(pthread_attr_t *attr, size_t stacksize) -+{ -+# ifdef FLOATING_STACKS -+ /* We have to check against the maximum allowed stack size. This is no -+ problem if the manager is already started and we determined it. If -+ this hasn't happened, we have to find the limit outself. */ -+ if (__pthread_max_stacksize == 0) -+ __pthread_init_max_stacksize (); -+ -+ if (stacksize > __pthread_max_stacksize) -+ return EINVAL; -+# else -+ /* We have a fixed size limit. */ -+ if (stacksize > STACK_SIZE) -+ return EINVAL; -+# endif -+ -+ /* We don't accept value smaller than old PTHREAD_STACK_MIN. */ -+ if (stacksize < 16384) -+ return EINVAL; -+ -+ attr->__stacksize = stacksize; -+ return 0; -+} -+compat_symbol (libpthread, __old_pthread_attr_setstacksize, -+ pthread_attr_setstacksize, GLIBC_2_1); -+# endif -+#endif -+ - - int __pthread_attr_getstacksize(const pthread_attr_t *attr, size_t *stacksize) - { -@@ -251,7 +291,41 @@ - - return err; - } -+ -+#if PTHREAD_STACK_MIN == 16384 - weak_alias (__pthread_attr_setstack, pthread_attr_setstack) -+#else -+versioned_symbol (libpthread, __pthread_attr_setstack, pthread_attr_setstack, -+ GLIBC_2_3_3); -+# if SHLIB_COMPAT(libpthread, GLIBC_2_2, GLIBC_2_3_3) -+int __old_pthread_attr_setstack (pthread_attr_t *attr, void *stackaddr, -+ size_t stacksize) -+{ -+ int err; -+ -+ if ((((uintptr_t) stackaddr) -+ & (__alignof__ (struct _pthread_descr_struct) - 1)) != 0) -+ err = EINVAL; -+ else -+ err = __old_pthread_attr_setstacksize (attr, stacksize); -+ if (err == 0) -+ { -+# ifndef _STACK_GROWS_UP -+ attr->__stackaddr = (char *) stackaddr + stacksize; -+# else -+ attr->__stackaddr = stackaddr; -+# endif -+ attr->__stackaddr_set = 1; -+ } -+ -+ return err; -+} -+ -+compat_symbol (libpthread, __old_pthread_attr_setstack, pthread_attr_setstack, -+ GLIBC_2_2); -+ -+# endif -+#endif - - int __pthread_attr_getstack (const pthread_attr_t *attr, void **stackaddr, - size_t *stacksize) -@@ -273,6 +347,7 @@ - { - pthread_handle handle = thread_handle (thread); - pthread_descr descr; -+ int ret = 0; - - if (handle == NULL) - return ENOENT; -@@ -293,6 +368,7 @@ - - attr->__inheritsched = descr->p_inheritsched; - attr->__scope = PTHREAD_SCOPE_SYSTEM; -+ - #ifdef _STACK_GROWS_DOWN - # ifdef USE_TLS - attr->__stacksize = descr->p_stackaddr - (char *)descr->p_guardaddr -@@ -328,5 +404,70 @@ - # endif - #endif - -+#ifdef USE_TLS -+ if (attr->__stackaddr == NULL) -+#else -+ if (descr == &__pthread_initial_thread) -+#endif -+ { -+ /* Defined in ld.so. */ -+ extern void *__libc_stack_end; -+ -+ /* Stack size limit. */ -+ struct rlimit rl; -+ -+ /* The safest way to get the top of the stack is to read -+ /proc/self/maps and locate the line into which -+ __libc_stack_end falls. */ -+ FILE *fp = fopen ("/proc/self/maps", "rc"); -+ if (fp == NULL) -+ ret = errno; -+ /* We need the limit of the stack in any case. */ -+ else if (getrlimit (RLIMIT_STACK, &rl) != 0) -+ ret = errno; -+ else -+ { -+ /* We need no locking. */ -+ __fsetlocking (fp, FSETLOCKING_BYCALLER); -+ -+ /* Until we found an entry (which should always be the case) -+ mark the result as a failure. */ -+ ret = ENOENT; -+ -+ char *line = NULL; -+ size_t linelen = 0; -+ -+ while (! feof_unlocked (fp)) -+ { -+ if (__getdelim (&line, &linelen, '\n', fp) <= 0) -+ break; -+ -+ uintptr_t from; -+ uintptr_t to; -+ if (sscanf (line, "%" SCNxPTR "-%" SCNxPTR, &from, &to) == 2 -+ && from <= (uintptr_t) __libc_stack_end -+ && (uintptr_t) __libc_stack_end < to) -+ { -+ /* Found the entry. Now we have the info we need. */ -+ attr->__stacksize = rl.rlim_cur; -+ attr->__stackaddr = (void *) to; -+ -+ /* The limit might be too high. This is a bogus -+ situation but try to avoid making it worse. */ -+ if ((size_t) attr->__stacksize > (size_t) attr->__stackaddr) -+ attr->__stacksize = (size_t) attr->__stackaddr; -+ -+ /* We succeed and no need to look further. */ -+ ret = 0; -+ break; -+ } -+ } -+ -+ fclose (fp); -+ free (line); -+ } -+ } -+ - return 0; -+ - } ---- glibc-2.3.2/linuxthreads/barrier.c 2002-08-27 00:52:34.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/barrier.c 2003-09-19 22:37:03.000000000 -0400 -@@ -1,5 +1,5 @@ - /* POSIX barrier implementation for LinuxThreads. -- Copyright (C) 2000 Free Software Foundation, Inc. -+ Copyright (C) 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Kaz Kylheku , 2000. - -@@ -110,7 +110,7 @@ - __pthread_barrierattr_getpshared(const pthread_barrierattr_t *attr, - int *pshared) - { -- *pshared = attr->__pshared; -+ *pshared = PTHREAD_PROCESS_PRIVATE; - return 0; - } - -@@ -120,6 +120,9 @@ - if (pshared != PTHREAD_PROCESS_PRIVATE && pshared != PTHREAD_PROCESS_SHARED) - return EINVAL; - -- attr->__pshared = pshared; -+ /* For now it is not possible to shared a conditional variable. */ -+ if (pshared != PTHREAD_PROCESS_PRIVATE) -+ return ENOSYS; -+ - return 0; - } ---- glibc-2.3.2/linuxthreads/descr.h 2002-12-28 05:06:33.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/descr.h 2003-09-19 22:37:03.000000000 -0400 -@@ -23,6 +23,7 @@ - #include - #include - #include -+#include - - /* Fast thread-specific data internal to libc. */ - enum __libc_tsd_key_t { _LIBC_TSD_KEY_MALLOC = 0, -@@ -106,22 +107,30 @@ - - union dtv; - -- --struct _pthread_descr_struct { -- /* XXX Remove this union for IA-64 style TLS module */ -- union { -- struct { -+struct _pthread_descr_struct -+{ -+#if !defined USE_TLS || !TLS_DTV_AT_TP -+ /* This overlaps tcbhead_t (see tls.h), as used for TLS without threads. */ -+ union -+ { -+ struct -+ { - void *tcb; /* Pointer to the TCB. This is not always - the address of this thread descriptor. */ - union dtv *dtvp; - pthread_descr self; /* Pointer to this structure */ - int multiple_threads; --#ifdef NEED_DL_SYSINFO -+# ifdef NEED_DL_SYSINFO - uintptr_t sysinfo; --#endif -+# endif - } data; - void *__padding[16]; - } p_header; -+# define p_multiple_threads p_header.data.multiple_threads -+#elif TLS_MULTIPLE_THREADS_IN_TCB -+ int p_multiple_threads; -+#endif -+ - pthread_descr p_nextlive, p_prevlive; - /* Double chaining of active threads */ - pthread_descr p_nextwaiting; /* Next element in the queue holding the thr */ -@@ -154,8 +163,8 @@ - int * p_h_errnop; /* pointer to used h_errno variable */ - int p_h_errno; /* error returned by last netdb function */ - struct __res_state *p_resp; /* Pointer to resolver state */ -- struct __res_state p_res; /* per-thread resolver state */ - #endif -+ struct __res_state p_res; /* per-thread resolver state */ - int p_userstack; /* nonzero if the user provided the stack */ - void *p_guardaddr; /* address of guard area or NULL */ - size_t p_guardsize; /* size of guard area */ -@@ -208,6 +217,7 @@ - /* Descriptor of the manager thread */ - - extern struct _pthread_descr_struct __pthread_manager_thread; -+extern pthread_descr __pthread_manager_threadp attribute_hidden; - - /* Indicate whether at least one thread has a user-defined stack (if 1), - or all threads have stacks supplied by LinuxThreads (if 0). */ ---- glibc-2.3.2/linuxthreads/forward.c 2003-01-02 17:33:45.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/forward.c 2003-09-19 22:37:03.000000000 -0400 -@@ -128,6 +128,15 @@ - #endif - versioned_symbol (libc, __pthread_cond_wait, pthread_cond_wait, GLIBC_2_3_2); - -+FORWARD (__pthread_cond_timedwait, -+ (pthread_cond_t *cond, pthread_mutex_t *mutex, -+ const struct timespec *abstime), (cond, mutex, abstime), 0) -+#if SHLIB_COMPAT(libc, GLIBC_2_0, GLIBC_2_3_2) -+strong_alias (__pthread_cond_timedwait, __pthread_cond_timedwait_2_0) -+compat_symbol (libc, __pthread_cond_timedwait_2_0, pthread_cond_timedwait, GLIBC_2_0); -+#endif -+versioned_symbol (libc, __pthread_cond_timedwait, pthread_cond_timedwait, GLIBC_2_3_2); -+ - - FORWARD (pthread_equal, (pthread_t thread1, pthread_t thread2), - (thread1, thread2), 1) ---- glibc-2.3.2/linuxthreads/internals.h 2003-01-06 19:02:26.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/internals.h 2003-09-19 22:37:03.000000000 -0400 -@@ -29,6 +29,7 @@ - #include "descr.h" - - #include "semaphore.h" -+#include - - #ifndef THREAD_GETMEM - # define THREAD_GETMEM(descr, member) descr->member -@@ -256,6 +257,7 @@ - - /* Defined and used in libc.so. */ - extern int __libc_multiple_threads attribute_hidden; -+extern int __librt_multiple_threads; - - /* Debugging */ - -@@ -352,12 +354,16 @@ - const pthread_condattr_t *cond_attr); - extern int __pthread_cond_destroy (pthread_cond_t *cond); - extern int __pthread_cond_wait (pthread_cond_t *cond, pthread_mutex_t *mutex); -+extern int __pthread_cond_timedwait (pthread_cond_t *cond, -+ pthread_mutex_t *mutex, -+ const struct timespec *abstime); - extern int __pthread_cond_signal (pthread_cond_t *cond); - extern int __pthread_cond_broadcast (pthread_cond_t *cond); - extern int __pthread_condattr_init (pthread_condattr_t *attr); - extern int __pthread_condattr_destroy (pthread_condattr_t *attr); - extern pthread_t __pthread_self (void); - extern pthread_descr __pthread_thread_self (void); -+extern pthread_descr __pthread_self_stack (void) attribute_hidden; - extern int __pthread_equal (pthread_t thread1, pthread_t thread2); - extern void __pthread_exit (void *retval); - extern int __pthread_getschedparam (pthread_t thread, int *policy, -@@ -377,6 +383,8 @@ - - extern void __pthread_wait_for_restart_signal(pthread_descr self); - -+extern void __pthread_sigsuspend (const sigset_t *mask) attribute_hidden; -+ - extern int __pthread_yield (void); - - extern int __pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock, -@@ -465,9 +473,12 @@ - extern void __libc_disable_asynccancel (int oldtype) - internal_function attribute_hidden; - -+/* The two functions are in libc.so and are exported. */ -+extern int __librt_enable_asynccancel (void); -+extern void __librt_disable_asynccancel (int oldtype) internal_function; -+ - extern void __pthread_cleanup_upto (__jmp_buf target, - char *targetframe) attribute_hidden; --struct fork_block; - extern pid_t __pthread_fork (struct fork_block *b) attribute_hidden; - - #if !defined NOT_IN_libc -@@ -478,7 +489,7 @@ - # define LIBC_CANCEL_HANDLED() \ - __asm (".globl " __SYMBOL_PREFIX "__libc_enable_asynccancel"); \ - __asm (".globl " __SYMBOL_PREFIX "__libc_disable_asynccancel") --#elif defined NOT_IN_libc && defined IS_IN_libpthread -+#elif defined IS_IN_libpthread - # define LIBC_CANCEL_ASYNC() \ - __pthread_enable_asynccancel () - # define LIBC_CANCEL_RESET(oldtype) \ -@@ -486,70 +497,20 @@ - # define LIBC_CANCEL_HANDLED() \ - __asm (".globl " __SYMBOL_PREFIX "__pthread_enable_asynccancel"); \ - __asm (".globl " __SYMBOL_PREFIX "__pthread_disable_asynccancel") -+#elif defined IS_IN_librt -+# define LIBC_CANCEL_ASYNC() \ -+ __librt_enable_asynccancel () -+# define LIBC_CANCEL_RESET(oldtype) \ -+ __librt_disable_asynccancel (oldtype) -+# define LIBC_CANCEL_HANDLED() \ -+ __asm (".globl " __SYMBOL_PREFIX "__librt_enable_asynccancel"); \ -+ __asm (".globl " __SYMBOL_PREFIX "__librt_disable_asynccancel") - #else - # define LIBC_CANCEL_ASYNC() 0 /* Just a dummy value. */ - # define LIBC_CANCEL_RESET(val) ((void)(val)) /* Nothing, but evaluate it. */ - # define LIBC_CANCEL_HANDLED() /* Nothing. */ - #endif - --/* Data type shared with libc. The libc uses it to pass on calls to -- the thread functions. */ --struct pthread_functions --{ -- pid_t (*ptr_pthread_fork) (struct fork_block *); -- int (*ptr_pthread_attr_destroy) (pthread_attr_t *); -- int (*ptr___pthread_attr_init_2_0) (pthread_attr_t *); -- int (*ptr___pthread_attr_init_2_1) (pthread_attr_t *); -- int (*ptr_pthread_attr_getdetachstate) (const pthread_attr_t *, int *); -- int (*ptr_pthread_attr_setdetachstate) (pthread_attr_t *, int); -- int (*ptr_pthread_attr_getinheritsched) (const pthread_attr_t *, int *); -- int (*ptr_pthread_attr_setinheritsched) (pthread_attr_t *, int); -- int (*ptr_pthread_attr_getschedparam) (const pthread_attr_t *, -- struct sched_param *); -- int (*ptr_pthread_attr_setschedparam) (pthread_attr_t *, -- const struct sched_param *); -- int (*ptr_pthread_attr_getschedpolicy) (const pthread_attr_t *, int *); -- int (*ptr_pthread_attr_setschedpolicy) (pthread_attr_t *, int); -- int (*ptr_pthread_attr_getscope) (const pthread_attr_t *, int *); -- int (*ptr_pthread_attr_setscope) (pthread_attr_t *, int); -- int (*ptr_pthread_condattr_destroy) (pthread_condattr_t *); -- int (*ptr_pthread_condattr_init) (pthread_condattr_t *); -- int (*ptr___pthread_cond_broadcast) (pthread_cond_t *); -- int (*ptr___pthread_cond_destroy) (pthread_cond_t *); -- int (*ptr___pthread_cond_init) (pthread_cond_t *, -- const pthread_condattr_t *); -- int (*ptr___pthread_cond_signal) (pthread_cond_t *); -- int (*ptr___pthread_cond_wait) (pthread_cond_t *, pthread_mutex_t *); -- int (*ptr_pthread_equal) (pthread_t, pthread_t); -- void (*ptr___pthread_exit) (void *); -- int (*ptr_pthread_getschedparam) (pthread_t, int *, struct sched_param *); -- int (*ptr_pthread_setschedparam) (pthread_t, int, -- const struct sched_param *); -- int (*ptr_pthread_mutex_destroy) (pthread_mutex_t *); -- int (*ptr_pthread_mutex_init) (pthread_mutex_t *, -- const pthread_mutexattr_t *); -- int (*ptr_pthread_mutex_lock) (pthread_mutex_t *); -- int (*ptr_pthread_mutex_trylock) (pthread_mutex_t *); -- int (*ptr_pthread_mutex_unlock) (pthread_mutex_t *); -- pthread_t (*ptr_pthread_self) (void); -- int (*ptr_pthread_setcancelstate) (int, int *); -- int (*ptr_pthread_setcanceltype) (int, int *); -- void (*ptr_pthread_do_exit) (void *retval, char *currentframe); -- void (*ptr_pthread_cleanup_upto) (__jmp_buf target, -- char *targetframe); -- pthread_descr (*ptr_pthread_thread_self) (void); -- int (*ptr_pthread_internal_tsd_set) (int key, const void *pointer); -- void * (*ptr_pthread_internal_tsd_get) (int key); -- void ** __attribute__ ((__const__)) -- (*ptr_pthread_internal_tsd_address) (int key); -- int (*ptr_pthread_sigaction) (int sig, const struct sigaction * act, -- struct sigaction *oact); -- int (*ptr_pthread_sigwait) (const sigset_t *set, int *sig); -- int (*ptr_pthread_raise) (int sig); --}; -- --/* Variable in libc.so. */ --extern struct pthread_functions __libc_pthread_functions attribute_hidden; - extern int * __libc_pthread_init (const struct pthread_functions *functions); - - #if !defined NOT_IN_libc && !defined FLOATING_STACKS -@@ -562,4 +523,30 @@ - # endif - #endif - -+#ifndef USE_TLS -+# define __manager_thread (&__pthread_manager_thread) -+#else -+# define __manager_thread __pthread_manager_threadp -+#endif -+ -+extern inline __attribute__((always_inline)) pthread_descr -+check_thread_self (void) -+{ -+ pthread_descr self = thread_self (); -+#if defined THREAD_SELF && defined INIT_THREAD_SELF -+ if (self == __manager_thread) -+ { -+ /* A new thread might get a cancel signal before it is fully -+ initialized, so that the thread register might still point to the -+ manager thread. Double check that this is really the manager -+ thread. */ -+ self = __pthread_self_stack(); -+ if (self != __manager_thread) -+ /* Oops, thread_self() isn't working yet.. */ -+ INIT_THREAD_SELF(self, self->p_nr); -+ } -+#endif -+ return self; -+} -+ - #endif /* internals.h */ ---- glibc-2.3.2/linuxthreads/libc-cancellation.c 2003-01-02 18:26:04.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/libc-cancellation.c 2003-08-21 08:37:03.000000000 -0400 -@@ -31,7 +31,8 @@ - weak_extern (__pthread_do_exit) - # endif - --int __libc_multiple_threads attribute_hidden; -+int __libc_multiple_threads attribute_hidden __attribute__((nocommon)); -+strong_alias (__libc_multiple_threads, __librt_multiple_threads); - - /* The next two functions are similar to pthread_setcanceltype() but - more specialized for the use in the cancelable functions like write(). -@@ -49,6 +50,7 @@ - (PTHREAD_CANCELED, CURRENT_STACK_FRAME), 0); - return oldtype; - } -+strong_alias (__libc_enable_asynccancel, __librt_enable_asynccancel) - - void - internal_function attribute_hidden -@@ -57,5 +59,6 @@ - pthread_descr self = thread_self(); - LIBC_THREAD_SETMEM(self, p_canceltype, oldtype); - } -+strong_alias (__libc_disable_asynccancel, __librt_disable_asynccancel) - - #endif ---- glibc-2.3.2/linuxthreads/libc-tls-loc.c 2002-11-14 22:37:05.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/libc-tls-loc.c 2003-08-21 08:37:03.000000000 -0400 -@@ -43,7 +43,7 @@ - struct __res_state * - __res_state (void) - { -- return &_res; -+ return __resp; - } - - #endif ---- glibc-2.3.2/linuxthreads/manager.c 2003-01-12 03:37:35.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/manager.c 2003-08-21 08:37:03.000000000 -0400 -@@ -28,6 +28,7 @@ - #include - #include /* for waitpid macros */ - #include /* for __uselocale */ -+#include /* for __resp */ - - #include - #include "pthread.h" -@@ -287,6 +288,9 @@ - /* Initialize thread-locale current locale to point to the global one. - With __thread support, the variable's initializer takes care of this. */ - __uselocale (LC_GLOBAL_LOCALE); -+#else -+ /* Initialize __resp. */ -+ __resp = &self->p_res; - #endif - /* Make gdb aware of new thread */ - if (__pthread_threads_debug && __pthread_sig_debug > 0) { -@@ -591,8 +595,8 @@ - if (new_thread == NULL) - return EAGAIN; - # if TLS_DTV_AT_TP -- /* pthread_descr is right below TP. */ -- --new_thread; -+ /* pthread_descr is below TP. */ -+ new_thread = (pthread_descr) ((char *) new_thread - TLS_PRE_TCB_SIZE); - # endif - #else - /* Prevent warnings. */ -@@ -612,7 +616,7 @@ - { - #ifdef USE_TLS - # if TLS_DTV_AT_TP -- ++new_thread; -+ new_thread = (pthread_descr) ((char *) new_thread + TLS_PRE_TCB_SIZE); - # endif - _dl_deallocate_tls (new_thread, true); - #endif -@@ -638,13 +642,13 @@ - new_thread_id = sseg + pthread_threads_counter; - /* Initialize the thread descriptor. Elements which have to be - initialized to zero already have this value. */ --#if defined USE_TLS && TLS_DTV_AT_TP -- new_thread->p_header.data.tcb = new_thread + 1; --#else -+#if !defined USE_TLS || !TLS_DTV_AT_TP - new_thread->p_header.data.tcb = new_thread; --#endif - new_thread->p_header.data.self = new_thread; -- new_thread->p_header.data.multiple_threads = 1; -+#endif -+#if TLS_MULTIPLE_THREADS_IN_TCB || !defined USE_TLS || !TLS_DTV_AT_TP -+ new_thread->p_multiple_threads = 1; -+#endif - new_thread->p_tid = new_thread_id; - new_thread->p_lock = &(__pthread_handles[sseg].h_lock); - new_thread->p_cancelstate = PTHREAD_CANCEL_ENABLE; -@@ -806,7 +810,7 @@ - } - #ifdef USE_TLS - # if TLS_DTV_AT_TP -- ++new_thread; -+ new_thread = (pthread_descr) ((char *) new_thread + TLS_PRE_TCB_SIZE); - # endif - _dl_deallocate_tls (new_thread, true); - #endif -@@ -896,7 +900,7 @@ - - #ifdef USE_TLS - # if TLS_DTV_AT_TP -- ++th; -+ th = (pthread_descr) ((char *) th + TLS_PRE_TCB_SIZE); - # endif - _dl_deallocate_tls (th, true); - #endif ---- glibc-2.3.2/linuxthreads/pthread.c 2003-01-16 13:14:41.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/pthread.c 2003-09-19 22:37:04.000000000 -0400 -@@ -55,7 +55,8 @@ - #ifdef USE_TLS - - /* We need only a few variables. */ --static pthread_descr manager_thread; -+#define manager_thread __pthread_manager_threadp -+pthread_descr __pthread_manager_threadp attribute_hidden; - - #else - -@@ -260,6 +261,7 @@ - .ptr___pthread_cond_init = __pthread_cond_init, - .ptr___pthread_cond_signal = __pthread_cond_signal, - .ptr___pthread_cond_wait = __pthread_cond_wait, -+ .ptr___pthread_cond_timedwait = __pthread_cond_timedwait, - .ptr_pthread_equal = __pthread_equal, - .ptr___pthread_exit = __pthread_exit, - .ptr_pthread_getschedparam = __pthread_getschedparam, -@@ -462,6 +464,44 @@ - # endif - #endif - -+#ifdef USE_TLS -+static inline void __attribute__((always_inline)) -+init_one_static_tls (pthread_descr descr, struct link_map *map) -+{ -+# if TLS_TCB_AT_TP -+ dtv_t *dtv = GET_DTV (descr); -+ void *dest = (char *) descr - map->l_tls_offset; -+# elif TLS_DTV_AT_TP -+ dtv_t *dtv = GET_DTV ((pthread_descr) ((char *) descr + TLS_PRE_TCB_SIZE)); -+ void *dest = (char *) descr + map->l_tls_offset + TLS_PRE_TCB_SIZE; -+# else -+# error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined" -+# endif -+ -+ /* Fill in the DTV slot so that a later LD/GD access will find it. */ -+ dtv[map->l_tls_modid].pointer = dest; -+ -+ /* Initialize the memory. */ -+ memset (__mempcpy (dest, map->l_tls_initimage, map->l_tls_initimage_size), -+ '\0', map->l_tls_blocksize - map->l_tls_initimage_size); -+} -+ -+static void -+__pthread_init_static_tls (struct link_map *map) -+{ -+ size_t i; -+ -+ for (i = 0; i < PTHREAD_THREADS_MAX; ++i) -+ if (__pthread_handles[i].h_descr != NULL && i != 1) -+ { -+ __pthread_lock (&__pthread_handles[i].h_lock, NULL); -+ if (__pthread_handles[i].h_descr != NULL) -+ init_one_static_tls (__pthread_handles[i].h_descr, map); -+ __pthread_unlock (&__pthread_handles[i].h_lock); -+ } -+} -+#endif -+ - static void pthread_initialize(void) - { - struct sigaction sa; -@@ -529,6 +569,10 @@ - sigemptyset(&mask); - sigaddset(&mask, __pthread_sig_restart); - sigprocmask(SIG_BLOCK, &mask, NULL); -+ /* And unblock __pthread_sig_cancel if it has been blocked. */ -+ sigdelset(&mask, __pthread_sig_restart); -+ sigaddset(&mask, __pthread_sig_cancel); -+ sigprocmask(SIG_UNBLOCK, &mask, NULL); - /* Register an exit function to kill all other threads. */ - /* Do it early so that user-registered atexit functions are called - before pthread_*exit_process. */ -@@ -546,6 +590,19 @@ - /* Transfer the old value from the dynamic linker's internal location. */ - *__libc_dl_error_tsd () = *(*GL(dl_error_catch_tsd)) (); - GL(dl_error_catch_tsd) = &__libc_dl_error_tsd; -+ -+ /* Make __rtld_lock_{,un}lock_recursive use pthread_mutex_{,un}lock, -+ keep the lock count from the ld.so implementation. */ -+ GL(dl_rtld_lock_recursive) = (void *) __pthread_mutex_lock; -+ GL(dl_rtld_unlock_recursive) = (void *) __pthread_mutex_unlock; -+ unsigned int rtld_lock_count = GL(dl_load_lock).mutex.__m_count; -+ GL(dl_load_lock).mutex.__m_count = 0; -+ while (rtld_lock_count-- > 0) -+ __pthread_mutex_lock (&GL(dl_load_lock).mutex); -+#endif -+ -+#ifdef USE_TLS -+ GL(dl_init_static_tls) = &__pthread_init_static_tls; - #endif - } - -@@ -566,8 +623,10 @@ - #endif - - __pthread_multiple_threads = 1; -- __pthread_main_thread->p_header.data.multiple_threads = 1; -- * __libc_multiple_threads_ptr = 1; -+#if TLS_MULTIPLE_THREADS_IN_TCB || !defined USE_TLS || !TLS_DTV_AT_TP -+ __pthread_main_thread->p_multiple_threads = 1; -+#endif -+ *__libc_multiple_threads_ptr = 1; - - #ifndef HAVE_Z_NODELETE - if (__builtin_expect (&__dso_handle != NULL, 1)) -@@ -606,14 +665,18 @@ - # elif TLS_DTV_AT_TP - /* pthread_descr is located right below tcbhead_t which _dl_allocate_tls - returns. */ -- mgr = (pthread_descr) tcbp - 1; -+ mgr = (pthread_descr) ((char *) tcbp - TLS_PRE_TCB_SIZE); - # endif - __pthread_handles[1].h_descr = manager_thread = mgr; - - /* Initialize the descriptor. */ -+#if !defined USE_TLS || !TLS_DTV_AT_TP - mgr->p_header.data.tcb = tcbp; - mgr->p_header.data.self = mgr; - mgr->p_header.data.multiple_threads = 1; -+#elif TLS_MULTIPLE_THREADS_IN_TCB -+ mgr->p_multiple_threads = 1; -+#endif - mgr->p_lock = &__pthread_handles[1].h_lock; - # ifndef HAVE___THREAD - mgr->p_errnop = &mgr->p_errno; -@@ -834,7 +897,7 @@ - - #else - --static pthread_descr thread_self_stack(void) -+pthread_descr __pthread_self_stack(void) - { - char *sp = CURRENT_STACK_FRAME; - pthread_handle h; -@@ -961,7 +1024,7 @@ - - static void pthread_handle_sigrestart(int sig) - { -- pthread_descr self = thread_self(); -+ pthread_descr self = check_thread_self(); - THREAD_SETMEM(self, p_signal, sig); - if (THREAD_GETMEM(self, p_signal_jmp) != NULL) - siglongjmp(*THREAD_GETMEM(self, p_signal_jmp), 1); -@@ -974,31 +1037,13 @@ - - static void pthread_handle_sigcancel(int sig) - { -- pthread_descr self = thread_self(); -+ pthread_descr self = check_thread_self(); - sigjmp_buf * jmpbuf; - - if (self == manager_thread) - { --#ifdef THREAD_SELF -- /* A new thread might get a cancel signal before it is fully -- initialized, so that the thread register might still point to the -- manager thread. Double check that this is really the manager -- thread. */ -- pthread_descr real_self = thread_self_stack(); -- if (real_self == manager_thread) -- { -- __pthread_manager_sighandler(sig); -- return; -- } -- /* Oops, thread_self() isn't working yet.. */ -- self = real_self; --# ifdef INIT_THREAD_SELF -- INIT_THREAD_SELF(self, self->p_nr); --# endif --#else - __pthread_manager_sighandler(sig); - return; --#endif - } - if (__builtin_expect (__pthread_exit_requested, 0)) { - /* Main thread should accumulate times for thread manager and its -@@ -1138,7 +1183,8 @@ - sigdelset(&mask, __pthread_sig_restart); /* Unblock the restart signal */ - THREAD_SETMEM(self, p_signal, 0); - do { -- sigsuspend(&mask); /* Wait for signal */ -+ __pthread_sigsuspend(&mask); /* Wait for signal. Must not be a -+ cancellation point. */ - } while (THREAD_GETMEM(self, p_signal) !=__pthread_sig_restart); - - READ_MEMORY_BARRIER(); /* See comment in __pthread_restart_new */ ---- glibc-2.3.2/linuxthreads/sighandler.c 2002-05-03 03:29:18.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sighandler.c 2003-09-19 22:37:04.000000000 -0400 -@@ -22,7 +22,8 @@ - { - pthread_descr self; - char * in_sighandler; -- self = thread_self(); -+ self = check_thread_self(); -+ - /* If we're in a sigwait operation, just record the signal received - and return without calling the user's handler */ - if (THREAD_GETMEM(self, p_sigwaiting)) { -@@ -46,7 +47,8 @@ - { - pthread_descr self; - char * in_sighandler; -- self = thread_self(); -+ self = check_thread_self(); -+ - /* If we're in a sigwait operation, just record the signal received - and return without calling the user's handler */ - if (THREAD_GETMEM(self, p_sigwaiting)) { ---- glibc-2.3.2/linuxthreads/spinlock.h 2001-05-24 19:23:00.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/spinlock.h 2003-08-21 08:37:03.000000000 -0400 -@@ -196,7 +196,7 @@ - } - - --static inline void -+static inline __attribute__((always_inline)) void - __pthread_set_own_extricate_if (pthread_descr self, pthread_extricate_if *peif) - { - /* Only store a non-null peif if the thread has cancellation enabled. ---- glibc-2.3.2/linuxthreads/sysdeps/alpha/elf/pt-initfini.c 2002-02-08 20:55:16.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/alpha/elf/pt-initfini.c 2003-08-21 08:37:03.000000000 -0400 -@@ -45,18 +45,16 @@ - /*@_init_PROLOG_BEGINS*/ \n\ - .section .init, \"ax\", @progbits \n\ - .globl _init \n\ -- .ent _init \n\ -+ .type _init,@function \n\ -+ .usepv _init,std \n\ - _init: \n\ - ldgp $29, 0($27) \n\ - subq $30, 16, $30 \n\ - stq $26, 0($30) \n\ - stq $29, 8($30) \n\ -- .prologue 1 \n\ - jsr $26, __pthread_initialize_minimal \n\ - ldq $29, 8($30) \n\ - .align 3 \n\ -- .end _init \n\ -- .size _init, 0 \n\ - /*@_init_PROLOG_ENDS*/ \n\ - \n\ - /*@_init_EPILOG_BEGINS*/ \n\ -@@ -70,7 +68,8 @@ - /*@_fini_PROLOG_BEGINS*/ \n\ - .section .fini, \"ax\", @progbits \n\ - .globl _fini \n\ -- .ent _fini \n\ -+ .type _fini,@function \n\ -+ .usepv _fini,std \n\ - _fini: \n\ - ldgp $29, 0($27) \n\ - subq $30, 16, $30 \n\ -@@ -78,8 +77,6 @@ - stq $29, 8($30) \n\ - .prologue 1 \n\ - .align 3 \n\ -- .end _fini \n\ -- .size _fini, 0 \n\ - /*@_fini_PROLOG_ENDS*/ \n\ - \n\ - /*@_fini_EPILOG_BEGINS*/ \n\ ---- glibc-2.3.2/linuxthreads/sysdeps/alpha/pt-machine.h 2002-09-09 01:18:20.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/alpha/pt-machine.h 2003-08-21 08:37:03.000000000 -0400 -@@ -1,6 +1,7 @@ - /* Machine-dependent pthreads configuration and inline functions. - Alpha version. -- Copyright (C) 1996, 1997, 1998, 2000, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996, 1997, 1998, 2000, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson . - -@@ -23,7 +24,7 @@ - #define _PT_MACHINE_H 1 - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - #ifdef __linux__ ---- glibc-2.3.2/linuxthreads/sysdeps/arm/pt-machine.h 2002-08-27 00:52:35.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/arm/pt-machine.h 2003-08-21 08:37:03.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Machine-dependent pthreads configuration and inline functions. - ARM version. -- Copyright (C) 1997, 1998, 2000, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1997, 1998, 2000, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Philip Blundell . - -@@ -23,7 +23,7 @@ - #define _PT_MACHINE_H 1 - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/cris/pt-machine.h 2002-08-27 00:52:35.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/cris/pt-machine.h 2003-08-21 08:37:03.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Machine-dependent pthreads configuration and inline functions. - CRIS version. -- Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -22,7 +22,7 @@ - #define _PT_MACHINE_H 1 - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/hppa/pt-machine.h 2002-08-27 00:52:35.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/hppa/pt-machine.h 2003-08-21 08:37:03.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Machine-dependent pthreads configuration and inline functions. - hppa version. -- Copyright (C) 2000, 2002 Free Software Foundation, Inc. -+ Copyright (C) 2000, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson . - -@@ -25,7 +25,7 @@ - #include - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/i386/Makefile 2002-12-28 16:07:50.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/i386/Makefile 2003-09-19 22:37:04.000000000 -0400 -@@ -6,15 +6,15 @@ - # Most files must not be compiled without frame pointer since we need - # the frame base address which is stored in %ebp unless the frame pointer - # is optimized out. --CFLAGS-cancel.c += -fno-omit-frame-pointer -+CFLAGS-cancel.c += -fno-omit-frame-pointer -mpreferred-stack-boundary=4 - CFLAGS-condvar.c += -fno-omit-frame-pointer - CFLAGS-join.c += -fno-omit-frame-pointer --CFLAGS-manager.c += -fno-omit-frame-pointer -+CFLAGS-manager.c += -fno-omit-frame-pointer -mpreferred-stack-boundary=4 - CFLAGS-oldsemaphore.c += -fno-omit-frame-pointer --CFLAGS-pthread.c += -fno-omit-frame-pointer -+CFLAGS-pthread.c += -fno-omit-frame-pointer -mpreferred-stack-boundary=4 - CFLAGS-ptlongjmp.c += -fno-omit-frame-pointer - CFLAGS-semaphore.c += -fno-omit-frame-pointer --CFLAGS-sighandler.c += -fno-omit-frame-pointer -+CFLAGS-sighandler.c += -fno-omit-frame-pointer -mpreferred-stack-boundary=4 - endif - - ifeq ($(subdir),csu) ---- glibc-2.3.2/linuxthreads/sysdeps/i386/i686/pt-machine.h 2003-02-25 19:46:32.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/i386/i686/pt-machine.h 2003-08-21 08:37:03.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Machine-dependent pthreads configuration and inline functions. - i686 version. -- Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson . - -@@ -23,7 +23,7 @@ - #define _PT_MACHINE_H 1 - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - #include "kernel-features.h" - ---- glibc-2.3.2/linuxthreads/sysdeps/i386/pt-machine.h 2003-02-25 19:46:32.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/i386/pt-machine.h 2003-08-21 08:37:03.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Machine-dependent pthreads configuration and inline functions. - i386 version. -- Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson . - -@@ -24,7 +24,7 @@ - - #ifndef __ASSEMBLER__ - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/i386/tls.h 2003-02-25 19:46:32.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/i386/tls.h 2003-05-12 12:13:04.000000000 -0400 -@@ -119,7 +119,7 @@ - # include "useldt.h" /* For the structure. */ - # define TLS_DO_MODIFY_LDT_KERNEL_CHECK(doit) \ - (__builtin_expect (GL(dl_osversion) < 131939, 0) \ -- ? "kernel too old for thread-local storage support" \ -+ ? "kernel too old for thread-local storage support\n" \ - : (doit)) - # endif - -@@ -142,7 +142,7 @@ - "d" (sizeof (ldt_entry))); \ - __builtin_expect (result, 0) == 0 \ - ? ({ asm ("movw %w0, %%gs" : : "q" ((nr) * 8 + 7)); NULL; }) \ -- : "cannot set up LDT for thread-local storage"; \ -+ : "cannot set up LDT for thread-local storage\n"; \ - })) - - # define TLS_DO_SET_THREAD_AREA(descr, secondcall) \ -@@ -171,8 +171,8 @@ - - # ifdef __ASSUME_SET_THREAD_AREA_SYSCALL - # define TLS_SETUP_GS_SEGMENT(descr, secondcall) \ -- (TLS_DO_SET_THREAD_AREA (descr, firstcall) \ -- ? "set_thread_area failed when setting up thread-local storage" : NULL) -+ (TLS_DO_SET_THREAD_AREA (descr, secondcall) \ -+ ? "set_thread_area failed when setting up thread-local storage\n" : NULL) - # elif defined __NR_set_thread_area - # define TLS_SETUP_GS_SEGMENT(descr, secondcall) \ - (TLS_DO_SET_THREAD_AREA (descr, secondcall) \ ---- glibc-2.3.2/linuxthreads/sysdeps/i386/useldt.h 2002-12-18 17:49:52.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/i386/useldt.h 2003-04-24 20:05:57.000000000 -0400 -@@ -22,6 +22,7 @@ - #ifndef __ASSEMBLER__ - #include /* For offsetof. */ - #include /* For abort(). */ -+#include - - - /* We don't want to include the kernel header. So duplicate the -@@ -109,7 +110,9 @@ - "int $0x80\n\t" \ - USETLS_LOAD_EBX \ - : "=&a" (__result) \ -- : USETLS_EBX_ARG (&ldt_entry), "i" (__NR_set_thread_area)); \ -+ : USETLS_EBX_ARG (&ldt_entry), "i" (__NR_set_thread_area), \ -+ "m" (ldt_entry) \ -+ : "memory"); \ - if (__result == 0) \ - asm ("movw %w0, %%gs" :: "q" (__gs)); \ - else \ -@@ -127,7 +130,9 @@ - "int $0x80\n\t" \ - USETLS_LOAD_EBX \ - : "=&a" (__result) \ -- : USETLS_EBX_ARG (&ldt_entry), "i" (__NR_set_thread_area)); \ -+ : USETLS_EBX_ARG (&ldt_entry), "i" (__NR_set_thread_area), \ -+ "m" (ldt_entry) \ -+ : "memory"); \ - if (__result == 0) \ - { \ - __gs = (ldt_entry.entry_number << 3) + 3; \ -@@ -307,4 +312,3 @@ - /* Maximum size of the stack if the rlimit is unlimited. */ - #define ARCH_STACK_MAX_SIZE 8*1024*1024 - #endif -- ---- glibc-2.3.2/linuxthreads/sysdeps/ia64/pspinlock.c 2002-08-27 00:52:35.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/ia64/pspinlock.c 2003-03-15 15:02:09.000000000 -0500 -@@ -1,5 +1,5 @@ - /* POSIX spinlock implementation. ia64 version. -- Copyright (C) 2000 Free Software Foundation, Inc. -+ Copyright (C) 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jes Sorensen - -@@ -21,6 +21,7 @@ - #include - #include - #include "internals.h" -+#include - - /* This implementation is inspired by the implementation used in the - Linux kernel. */ -@@ -28,21 +29,15 @@ - int - __pthread_spin_lock (pthread_spinlock_t *lock) - { -- asm volatile -- ("mov ar.ccv = r0\n\t" -- "mov r3 = 1\n\t" -- ";;\n" -- "1:\n\t" -- "ld4 r2 = %0\n\t" -- ";;\n\t" -- "cmp4.eq p0, p7 = r0, r2\n\t" -- "(p7) br.cond.spnt.few 1b \n\t" -- "cmpxchg4.acq r2 = %0, r3, ar.ccv\n\t" -- ";;\n\t" -- "cmp4.eq p0, p7 = r0, r2\n\t" -- "(p7) br.cond.spnt.few 1b\n\t" -- ";;\n" -- :: "m" (lock) : "r2", "r3", "p7", "memory"); -+ int *p = (int *) lock; -+ -+ while (__builtin_expect (__sync_val_compare_and_swap_si (p, 0, 1), 0)) -+ { -+ /* Spin without using the atomic instruction. */ -+ do -+ __asm __volatile ("" : : : "memory"); -+ while (*p); -+ } - return 0; - } - weak_alias (__pthread_spin_lock, pthread_spin_lock) -@@ -51,16 +46,7 @@ - int - __pthread_spin_trylock (pthread_spinlock_t *lock) - { -- int oldval; -- -- asm volatile -- ("mov ar.ccv = r0\n\t" -- "mov r2 = 1\n\t" -- ";;\n\t" -- "cmpxchg4.acq %0 = %1, r2, ar.ccv\n\t" -- ";;\n" -- : "=r" (oldval) : "m" (lock) : "r2", "memory"); -- return oldval > 0 ? 0 : EBUSY; -+ return __sync_val_compare_and_swap_si ((int *) lock, 0, 1) == 0 ? 0 : EBUSY; - } - weak_alias (__pthread_spin_trylock, pthread_spin_trylock) - ---- glibc-2.3.2/linuxthreads/sysdeps/ia64/pt-machine.h 2003-01-30 16:03:05.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/ia64/pt-machine.h 2003-08-21 08:37:03.000000000 -0400 -@@ -24,7 +24,7 @@ - #include - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/ia64/tcb-offsets.sym 2003-01-16 13:20:08.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/ia64/tcb-offsets.sym 2003-04-28 08:20:35.000000000 -0400 -@@ -3,7 +3,7 @@ - - -- - #ifdef USE_TLS --MULTIPLE_THREADS_OFFSET offsetof (struct _pthread_descr_struct, p_header.data.multiple_threads) - sizeof (struct _pthread_descr_struct) -+MULTIPLE_THREADS_OFFSET offsetof (struct _pthread_descr_struct, p_multiple_threads) - sizeof (struct _pthread_descr_struct) - #else - MULTIPLE_THREADS_OFFSET offsetof (tcbhead_t, multiple_threads) - #endif ---- glibc-2.3.2/linuxthreads/sysdeps/ia64/tls.h 2003-01-16 13:20:08.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/ia64/tls.h 2003-08-21 08:37:03.000000000 -0400 -@@ -84,7 +84,7 @@ - special attention since 'errno' is not yet available and if the - operation can cause a failure 'errno' must not be touched. */ - # define TLS_INIT_TP(tcbp, secondcall) \ -- (__thread_self = (tcbp), NULL) -+ (__thread_self = (__typeof (__thread_self)) (tcbp), NULL) - - /* Return the address of the dtv for the current thread. */ - # define THREAD_DTV() \ -@@ -98,6 +98,8 @@ - # define INIT_THREAD_SELF(descr, nr) \ - (__thread_self = (struct _pthread_descr_struct *)(descr) + 1) - -+# define TLS_MULTIPLE_THREADS_IN_TCB 1 -+ - /* Get the thread descriptor definition. */ - # include - ---- glibc-2.3.2/linuxthreads/sysdeps/m68k/pt-machine.h 2002-08-27 00:52:36.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/m68k/pt-machine.h 2003-08-21 08:37:03.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Machine-dependent pthreads configuration and inline functions. - m68k version. -- Copyright (C) 1996, 1998, 2000, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996, 1998, 2000, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson . - -@@ -23,7 +23,7 @@ - #define _PT_MACHINE_H 1 - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/mips/pspinlock.c 2002-08-27 00:52:36.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/mips/pspinlock.c 2003-03-15 15:02:09.000000000 -0500 -@@ -1,5 +1,5 @@ - /* POSIX spinlock implementation. MIPS version. -- Copyright (C) 2000, 2002 Free Software Foundation, Inc. -+ Copyright (C) 2000, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -32,7 +32,9 @@ - ("\t\t\t# spin_lock\n" - "1:\n\t" - ".set push\n\t" -+#if _MIPS_SIM == _MIPS_SIM_ABI32 - ".set mips2\n\t" -+#endif - "ll %1,%3\n\t" - "li %2,1\n\t" - "bnez %1,1b\n\t" ---- glibc-2.3.2/linuxthreads/sysdeps/mips/pt-machine.h 2002-08-27 00:52:36.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/mips/pt-machine.h 2003-08-21 08:37:03.000000000 -0400 -@@ -1,6 +1,7 @@ - /* Machine-dependent pthreads configuration and inline functions. - -- Copyright (C) 1996, 1997, 1998, 2000, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996, 1997, 1998, 2000, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ralf Baechle . - Based on the Alpha version by Richard Henderson . -@@ -26,7 +27,7 @@ - #include - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); -@@ -60,12 +61,22 @@ - ("/* Inline compare & swap */\n" - "1:\n\t" - ".set push\n\t" -+#if _MIPS_SIM == _MIPS_SIM_ABI32 - ".set mips2\n\t" -+#endif -+#if defined _ABI64 && _MIPS_SIM == _ABI64 -+ "lld %1,%5\n\t" -+#else - "ll %1,%5\n\t" -+#endif - "move %0,$0\n\t" - "bne %1,%3,2f\n\t" - "move %0,%4\n\t" -+#if defined _ABI64 && _MIPS_SIM == _ABI64 -+ "scd %0,%2\n\t" -+#else - "sc %0,%2\n\t" -+#endif - ".set pop\n\t" - "beqz %0,1b\n" - "2:\n\t" ---- glibc-2.3.2/linuxthreads/sysdeps/powerpc/powerpc32/pt-machine.h 2003-02-17 15:32:09.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/powerpc/powerpc32/pt-machine.h 2003-08-21 08:37:03.000000000 -0400 -@@ -1,6 +1,7 @@ - /* Machine-dependent pthreads configuration and inline functions. - powerpc version. -- Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2003 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -25,7 +26,7 @@ - #define _PT_MACHINE_H 1 - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/powerpc/powerpc64/pt-machine.h 2002-09-14 04:55:04.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/powerpc/powerpc64/pt-machine.h 2003-09-19 22:37:04.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Machine-dependent pthreads configuration and inline functions. - powerpc version. -- Copyright (C) 2002 Free Software Foundation, Inc. -+ Copyright (C) 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -25,7 +25,7 @@ - #define _PT_MACHINE_H 1 - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); -@@ -34,7 +34,9 @@ - /* For multiprocessor systems, we want to ensure all memory accesses - are completed before we reset a lock. On other systems, we still - need to make sure that the compiler has flushed everything to memory. */ --#define MEMORY_BARRIER() __asm__ __volatile__ ("sync" : : : "memory") -+#define MEMORY_BARRIER() __asm__ __volatile__ ("lwsync" : : : "memory") -+#define READ_MEMORY_BARRIER() __asm__ __volatile__ ("lwsync" : : : "memory") -+#define WRITE_MEMORY_BARRIER() __asm__ __volatile__ ("eieio" : : : "memory") - - /* We want the OS to assign stack addresses. */ - #define FLOATING_STACKS 1 -@@ -57,6 +59,16 @@ - /* Initialize the thread-unique value. */ - #define INIT_THREAD_SELF(descr, nr) (__thread_self = (descr)) - -+/* Access to data in the thread descriptor is easy. */ -+#define THREAD_GETMEM(descr, member) \ -+ ((void) (descr), THREAD_SELF->member) -+#define THREAD_GETMEM_NC(descr, member) \ -+ ((void) (descr), THREAD_SELF->member) -+#define THREAD_SETMEM(descr, member, value) \ -+ ((void) (descr), THREAD_SELF->member = (value)) -+#define THREAD_SETMEM_NC(descr, member, value) \ -+ ((void) (descr), THREAD_SELF->member = (value)) -+ - /* Compare-and-swap for semaphores. */ - /* note that test-and-set(x) is the same as !compare-and-swap(x, 0, 1) */ - ---- glibc-2.3.2/linuxthreads/sysdeps/powerpc/pspinlock.c 2002-08-27 00:52:36.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/powerpc/pspinlock.c 2003-08-21 08:37:03.000000000 -0400 -@@ -1,5 +1,5 @@ - /* POSIX spinlock implementation. PowerPC version. -- Copyright (C) 2000 Free Software Foundation, Inc. -+ Copyright (C) 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -55,7 +55,7 @@ - /* We can ignore the `pshared' parameter. Since we are busy-waiting - all processes which can access the memory location `lock' points - to can use the spinlock. */ -- *lock = 1; -+ *lock = 0; - return 0; - } - weak_alias (__pthread_spin_init, pthread_spin_init) ---- glibc-2.3.2/linuxthreads/sysdeps/powerpc/tcb-offsets.sym 2003-02-17 15:32:09.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/powerpc/tcb-offsets.sym 2003-04-28 08:20:35.000000000 -0400 -@@ -1,4 +1,24 @@ - #include - #include - --MULTIPLE_THREADS_OFFSET offsetof (tcbhead_t, multiple_threads) -+-- -+ -+-- This could go into powerpc32/ instead and conditionalize #include of it. -+#ifndef __powerpc64__ -+ -+# ifdef USE_TLS -+ -+-- Abuse tls.h macros to derive offsets relative to the thread register. -+# undef __thread_register -+# define __thread_register ((void *) 0) -+# define thread_offsetof(mem) ((void *) &THREAD_SELF->p_##mem - (void *) 0) -+ -+# else -+ -+# define thread_offsetof(mem) offsetof (tcbhead_t, mem) -+ -+# endif -+ -+MULTIPLE_THREADS_OFFSET thread_offsetof (multiple_threads) -+ -+#endif ---- glibc-2.3.2/linuxthreads/sysdeps/powerpc/tls.h 2003-02-27 17:40:10.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/powerpc/tls.h 2003-04-28 08:20:35.000000000 -0400 -@@ -32,15 +32,6 @@ - void *pointer; - } dtv_t; - --typedef struct --{ -- void *tcb; /* Pointer to the TCB. Not necessary the -- thread descriptor used by libpthread. */ -- dtv_t *dtv; -- void *self; /* Pointer to the thread descriptor. */ -- int multiple_threads; --} tcbhead_t; -- - #else /* __ASSEMBLER__ */ - # include - #endif /* __ASSEMBLER__ */ -@@ -52,28 +43,38 @@ - - # ifndef __ASSEMBLER__ - -+/* This layout is actually wholly private and not affected by the ABI. -+ Nor does it overlap the pthread data structure, so we need nothing -+ extra here at all. */ -+typedef struct -+{ -+ dtv_t *dtv; -+} tcbhead_t; -+ - /* This is the size of the initial TCB. */ --# define TLS_INIT_TCB_SIZE sizeof (tcbhead_t) -+# define TLS_INIT_TCB_SIZE 0 - - /* Alignment requirements for the initial TCB. */ --# define TLS_INIT_TCB_ALIGN __alignof__ (tcbhead_t) -+# define TLS_INIT_TCB_ALIGN __alignof__ (struct _pthread_descr_struct) - - /* This is the size of the TCB. */ --# define TLS_TCB_SIZE sizeof (tcbhead_t) -+# define TLS_TCB_SIZE 0 - - /* Alignment requirements for the TCB. */ --# define TLS_TCB_ALIGN __alignof__ (tcbhead_t) -+# define TLS_TCB_ALIGN __alignof__ (struct _pthread_descr_struct) - - /* This is the size we need before TCB. */ --# define TLS_PRE_TCB_SIZE sizeof (struct _pthread_descr_struct) -+# define TLS_PRE_TCB_SIZE \ -+ (sizeof (struct _pthread_descr_struct) \ -+ + ((sizeof (tcbhead_t) + TLS_TCB_ALIGN - 1) & ~(TLS_TCB_ALIGN - 1))) - --/* The following assumes that TP (R13) is points to the end of the -+/* The following assumes that TP (R2 or R13) is points to the end of the - TCB + 0x7000 (per the ABI). This implies that TCB address is -- R13-(TLS_TCB_SIZE + 0x7000). As we define TLS_DTV_AT_TP we can -+ TP - 0x7000. As we define TLS_DTV_AT_TP we can - assume that the pthread_descr is allocated immediately ahead of the - TCB. This implies that the pthread_descr address is -- R13-(TLS_PRE_TCB_SIZE + TLS_TCB_SIZE + 0x7000). */ --# define TLS_TCB_OFFSET 0x7000 -+ TP - (TLS_PRE_TCB_SIZE + 0x7000). */ -+#define TLS_TCB_OFFSET 0x7000 - - /* The DTV is allocated at the TP; the TCB is placed elsewhere. */ - /* This is not really true for powerpc64. We are following alpha -@@ -83,13 +84,13 @@ - /* Install the dtv pointer. The pointer passed is to the element with - index -1 which contain the length. */ - # define INSTALL_DTV(TCBP, DTVP) \ -- (((tcbhead_t *) (TCBP))->dtv = (DTVP) + 1) -+ (((tcbhead_t *) (TCBP))[-1].dtv = (DTVP) + 1) - - /* Install new dtv for current thread. */ - # define INSTALL_NEW_DTV(DTV) (THREAD_DTV() = (DTV)) - - /* Return dtv of given thread descriptor. */ --# define GET_DTV(TCBP) (((tcbhead_t *) (TCBP))->dtv) -+# define GET_DTV(TCBP) (((tcbhead_t *) (TCBP))[-1].dtv) - - /* The global register variable is declared in pt-machine.h with - the wrong type, but the compiler doesn't like us declaring another. */ -@@ -99,47 +100,57 @@ - special attention since 'errno' is not yet available and if the - operation can cause a failure 'errno' must not be touched. */ - # define TLS_INIT_TP(TCBP, SECONDCALL) \ -- (__thread_register = (void *) (TCBP) + TLS_TCB_OFFSET + TLS_TCB_SIZE, 0) -+ (__thread_register = (void *) (TCBP) + TLS_TCB_OFFSET, NULL) - - /* Return the address of the dtv for the current thread. */ - # define THREAD_DTV() \ -- (((tcbhead_t *) (__thread_register - TLS_TCB_OFFSET - TLS_TCB_SIZE))->dtv) -+ (((tcbhead_t *) (__thread_register - TLS_TCB_OFFSET))[-1].dtv) - - /* Return the thread descriptor for the current thread. */ - # undef THREAD_SELF - # define THREAD_SELF \ - ((pthread_descr) (__thread_register \ -- - TLS_TCB_OFFSET - TLS_TCB_SIZE - TLS_PRE_TCB_SIZE)) -+ - TLS_TCB_OFFSET - TLS_PRE_TCB_SIZE)) - - # undef INIT_THREAD_SELF - # define INIT_THREAD_SELF(DESCR, NR) \ - (__thread_register = ((void *) (DESCR) \ -- + TLS_TCB_OFFSET + TLS_TCB_SIZE + TLS_PRE_TCB_SIZE)) -+ + TLS_TCB_OFFSET + TLS_PRE_TCB_SIZE)) -+ -+/* Make sure we have the p_multiple_threads member in the thread structure. -+ See below. */ -+# ifndef __powerpc64__ -+# define TLS_MULTIPLE_THREADS_IN_TCB 1 -+# endif - - /* Get the thread descriptor definition. */ - # include - --/* Generic bits of LinuxThreads may call these macros with -- DESCR set to NULL. We are expected to be able to reference -- the "current" value. */ -- --# define THREAD_GETMEM(descr, member) \ -- ((void) sizeof (descr), THREAD_SELF->member) --# define THREAD_SETMEM(descr, member, value) \ -- ((void) sizeof (descr), THREAD_SELF->member = (value)) -- --#define THREAD_GETMEM_NC(descr, member) THREAD_GETMEM (descr, member) --#define THREAD_SETMEM_NC(descr, member, value) \ -- THREAD_SETMEM ((descr), member, (value)) -+/* l_tls_offset == 0 is perfectly valid on PPC, so we have to use some -+ different value to mean unset l_tls_offset. */ -+# define NO_TLS_OFFSET -1 - - # endif /* __ASSEMBLER__ */ - --#else /* Not HAVE_TLS_SUPPORT. */ -+#elif !defined __ASSEMBLER__ && !defined __powerpc64__ -+ -+/* This overlaps the start of the pthread_descr. On PPC32, system -+ calls and such use this to find the multiple_threads flag and need -+ to use the same offset relative to the thread register in both -+ single-threaded and multi-threaded code. On PPC64, the global -+ variable is always used, so single-threaded code without TLS -+ never needs to initialize the thread register at all. */ -+typedef struct -+{ -+ void *tcb; /* Never used. */ -+ dtv_t *dtv; /* Never used. */ -+ void *self; /* Used only if multithreaded, and rarely. */ -+ int multiple_threads; /* Only this member is really used. */ -+} tcbhead_t; - - #define NONTLS_INIT_TP \ - do { \ -- static const tcbhead_t nontls_init_tp \ -- = { .multiple_threads = 0 }; \ -+ static const tcbhead_t nontls_init_tp = { .multiple_threads = 0 }; \ - __thread_self = (__typeof (__thread_self)) &nontls_init_tp; \ - } while (0) - ---- glibc-2.3.2/linuxthreads/sysdeps/pthread/Makefile 2003-02-12 16:40:09.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/pthread/Makefile 2003-08-21 08:37:03.000000000 -0400 -@@ -1,5 +1,6 @@ - ifeq ($(subdir),rt) - librt-sysdep_routines += timer_routines -+CPPFLAGS += -DBROKEN_THREAD_SIGNALS - - ifeq (yes,$(build-shared)) - $(objpfx)tst-timer: $(objpfx)librt.so $(shared-thread-library) -@@ -9,5 +10,5 @@ - endif - - ifeq ($(subdir),posix) --CFLAGS-confstr.c += -DLIBPTHREAD_VERSION="\"$(shell sed 's/\(.*\) by .*/\1/' ../nptl/Banner)\"" -+CFLAGS-confstr.c += -DLIBPTHREAD_VERSION="\"$(shell sed 's/\(.*\) by .*/\1/' ../linuxthreads/Banner)\"" - endif ---- glibc-2.3.2/linuxthreads/sysdeps/pthread/bits/#libc-tsd.h# 2003-01-03 17:10:19.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/pthread/bits/#libc-tsd.h# 1969-12-31 19:00:00.000000000 -0500 -@@ -1,59 +0,0 @@ --/* libc-internal interface for thread-specific data. LinuxThreads version. -- Copyright (C) 1997,98,99,2001,02 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public License as -- published by the Free Software Foundation; either version 2.1 of the -- License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; see the file COPYING.LIB. If not, -- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -- Boston, MA 02111-1307, USA. */ -- --#ifndef _BITS_LIBC_TSD_H --#define _BITS_LIBC_TSD_H 1 -- --#include --#include -- --#if USE_TLS && HAVE___THREAD -- --/* When __thread works, the generic definition is what we want. */ --# include -- --#else -- --# include -- --# ifndef SHARED --extern void ** __pthread_internal_tsd_address (int); --extern void *__pthread_internal_tsd_get (int); --extern int __pthread_internal_tsd_set (int, const void *); -- --weak_extern (__pthread_internal_tsd_address) --weak_extern (__pthread_internal_tsd_get) --weak_extern (__pthread_internal_tsd_set) --# endif -- --#define __libc_tsd_define(CLASS, KEY) CLASS void *__libc_tsd_##KEY##_data; --#define __libc_tsd_address(KEY) \ -- __libc_maybe_call2 (pthread_internal_tsd_address, \ -- (_LIBC_TSD_KEY_##KEY), &__libc_tsd_##KEY##_data) --#define __libc_tsd_get(KEY) \ -- __libc_maybe_call2 (pthread_internal_tsd_get, \ -- (_LIBC_TSD_KEY_##KEY), __libc_tsd_##KEY##_data) --#define __libc_tsd_set(KEY, VALUE) \ -- __libc_maybe_call2 (pthread_internal_tsd_set, \ -- (_LIBC_TSD_KEY_##KEY, (VALUE)), \ -- (__libc_tsd_##KEY##_data = (VALUE), 0)) -- --#endif -- --#endif /* bits/libc-tsd.h */ ---- glibc-2.3.2/linuxthreads/sysdeps/pthread/bits/libc-lock.h 2003-02-05 04:52:34.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/pthread/bits/libc-lock.h 2003-08-21 08:37:03.000000000 -0400 -@@ -180,7 +180,6 @@ - - /* Lock the recursive named lock variable. */ - #define __libc_lock_lock_recursive(NAME) __libc_lock_lock ((NAME).mutex) --#define __rtld_lock_lock_recursive(NAME) __libc_lock_lock_recursive (NAME) - - /* Try to lock the named lock variable. */ - #define __libc_lock_trylock(NAME) \ -@@ -203,8 +202,23 @@ - - /* Unlock the recursive named lock variable. */ - #define __libc_lock_unlock_recursive(NAME) __libc_lock_unlock ((NAME).mutex) --#define __rtld_lock_unlock_recursive(NAME) __libc_lock_unlock_recursive (NAME) - -+#if defined _LIBC && defined SHARED -+# define __rtld_lock_default_lock_recursive(lock) \ -+ ++((pthread_mutex_t *)(lock))->__m_count; -+ -+# define __rtld_lock_default_unlock_recursive(lock) \ -+ --((pthread_mutex_t *)(lock))->__m_count; -+ -+# define __rtld_lock_lock_recursive(NAME) \ -+ GL(dl_rtld_lock_recursive) (&(NAME).mutex) -+ -+# define __rtld_lock_unlock_recursive(NAME) \ -+ GL(dl_rtld_unlock_recursive) (&(NAME).mutex) -+#else -+#define __rtld_lock_lock_recursive(NAME) __libc_lock_lock_recursive (NAME) -+#define __rtld_lock_unlock_recursive(NAME) __libc_lock_unlock_recursive (NAME) -+#endif - - /* Define once control variable. */ - #if PTHREAD_ONCE_INIT == 0 -@@ -250,6 +264,20 @@ - _pthread_cleanup_pop_restore (&_buffer, (DOIT)); \ - } - -+#define __libc_cleanup_push(fct, arg) \ -+ { struct _pthread_cleanup_buffer _buffer; \ -+ int _avail = _pthread_cleanup_push != NULL; \ -+ if (_avail) { \ -+ _pthread_cleanup_push (&_buffer, (fct), (arg)); \ -+ } -+ -+#define __libc_cleanup_pop(execute) \ -+ if (_avail) { \ -+ _pthread_cleanup_pop (&_buffer, execute); \ -+ } \ -+ } -+ -+ - /* Create thread-specific key. */ - #define __libc_key_create(KEY, DESTRUCTOR) \ - (__libc_maybe_call (__pthread_key_create, (KEY, DESTRUCTOR), 1)) -@@ -352,6 +380,8 @@ - weak_extern (BP_SYM (__pthread_once)) - weak_extern (__pthread_initialize) - weak_extern (__pthread_atfork) -+weak_extern (BP_SYM (_pthread_cleanup_push)) -+weak_extern (BP_SYM (_pthread_cleanup_pop)) - weak_extern (BP_SYM (_pthread_cleanup_push_defer)) - weak_extern (BP_SYM (_pthread_cleanup_pop_restore)) - # else -@@ -377,6 +407,8 @@ - # pragma weak __pthread_atfork - # pragma weak _pthread_cleanup_push_defer - # pragma weak _pthread_cleanup_pop_restore -+# pragma weak _pthread_cleanup_push -+# pragma weak _pthread_cleanup_pop - # endif - #endif - ---- glibc-2.3.2/linuxthreads/sysdeps/pthread/bits/typesizes.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/pthread/bits/typesizes.h 2003-08-21 08:37:03.000000000 -0400 -@@ -0,0 +1,66 @@ -+/* bits/typesizes.h -- underlying types for *_t. Generic version. -+ Copyright (C) 2002, 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _BITS_TYPES_H -+# error "Never include directly; use instead." -+#endif -+ -+#ifndef _BITS_TYPESIZES_H -+#define _BITS_TYPESIZES_H 1 -+ -+/* See for the meaning of these macros. This file exists so -+ that need not vary across different GNU platforms. */ -+ -+#define __DEV_T_TYPE __UQUAD_TYPE -+#define __UID_T_TYPE __U32_TYPE -+#define __GID_T_TYPE __U32_TYPE -+#define __INO_T_TYPE __ULONGWORD_TYPE -+#define __INO64_T_TYPE __UQUAD_TYPE -+#define __MODE_T_TYPE __U32_TYPE -+#define __NLINK_T_TYPE __UWORD_TYPE -+#define __OFF_T_TYPE __SLONGWORD_TYPE -+#define __OFF64_T_TYPE __SQUAD_TYPE -+#define __PID_T_TYPE __S32_TYPE -+#define __RLIM_T_TYPE __ULONGWORD_TYPE -+#define __RLIM64_T_TYPE __UQUAD_TYPE -+#define __BLKCNT_T_TYPE __SLONGWORD_TYPE -+#define __BLKCNT64_T_TYPE __SQUAD_TYPE -+#define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE -+#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE -+#define __FSFILCNT_T_TYPE __ULONGWORD_TYPE -+#define __FSFILCNT64_T_TYPE __UQUAD_TYPE -+#define __ID_T_TYPE __U32_TYPE -+#define __CLOCK_T_TYPE __SLONGWORD_TYPE -+#define __TIME_T_TYPE __SLONGWORD_TYPE -+#define __USECONDS_T_TYPE __U32_TYPE -+#define __SUSECONDS_T_TYPE __SLONGWORD_TYPE -+#define __DADDR_T_TYPE __S32_TYPE -+#define __SWBLK_T_TYPE __SLONGWORD_TYPE -+#define __KEY_T_TYPE __S32_TYPE -+#define __CLOCKID_T_TYPE __S32_TYPE -+#define __TIMER_T_TYPE __S32_TYPE -+#define __BLKSIZE_T_TYPE __SLONGWORD_TYPE -+#define __FSID_T_TYPE struct { int __val[2]; } -+#define __SSIZE_T_TYPE __SWORD_TYPE -+ -+/* Number of descriptors that can fit in an `fd_set'. */ -+#define __FD_SETSIZE 1024 -+ -+ -+#endif /* bits/typesizes.h */ ---- glibc-2.3.2/linuxthreads/sysdeps/pthread/errno-loc.c 2002-12-31 14:14:22.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/pthread/errno-loc.c 2003-04-12 11:39:43.000000000 -0400 -@@ -1,6 +1,6 @@ - /* MT support function to get address of `errno' variable, linuxthreads - version. -- Copyright (C) 1996, 1998, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996, 1998, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -20,6 +20,7 @@ - - #include - #include -+#include - #include - - #if ! USE___THREAD ---- glibc-2.3.2/linuxthreads/sysdeps/pthread/herrno-loc.c 2002-12-31 14:14:22.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/pthread/herrno-loc.c 2003-04-12 11:39:43.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996, 97, 98, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1996, 97, 98, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -18,6 +18,7 @@ - - #include - #include -+#include - #include - - #if ! USE___THREAD ---- glibc-2.3.2/linuxthreads/sysdeps/pthread/pthread-functions.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/pthread/pthread-functions.h 2003-09-19 22:37:04.000000000 -0400 -@@ -0,0 +1,91 @@ -+/* Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Ulrich Drepper , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _PTHREAD_FUNCTIONS_H -+#define _PTHREAD_FUNCTIONS_H 1 -+ -+#include -+#include -+#include -+ -+struct fork_block; -+ -+/* Data type shared with libc. The libc uses it to pass on calls to -+ the thread functions. Wine pokes directly into this structure, -+ so if possible avoid breaking it and append new hooks to the end. */ -+struct pthread_functions -+{ -+ pid_t (*ptr_pthread_fork) (struct fork_block *); -+ int (*ptr_pthread_attr_destroy) (pthread_attr_t *); -+ int (*ptr___pthread_attr_init_2_0) (pthread_attr_t *); -+ int (*ptr___pthread_attr_init_2_1) (pthread_attr_t *); -+ int (*ptr_pthread_attr_getdetachstate) (const pthread_attr_t *, int *); -+ int (*ptr_pthread_attr_setdetachstate) (pthread_attr_t *, int); -+ int (*ptr_pthread_attr_getinheritsched) (const pthread_attr_t *, int *); -+ int (*ptr_pthread_attr_setinheritsched) (pthread_attr_t *, int); -+ int (*ptr_pthread_attr_getschedparam) (const pthread_attr_t *, -+ struct sched_param *); -+ int (*ptr_pthread_attr_setschedparam) (pthread_attr_t *, -+ const struct sched_param *); -+ int (*ptr_pthread_attr_getschedpolicy) (const pthread_attr_t *, int *); -+ int (*ptr_pthread_attr_setschedpolicy) (pthread_attr_t *, int); -+ int (*ptr_pthread_attr_getscope) (const pthread_attr_t *, int *); -+ int (*ptr_pthread_attr_setscope) (pthread_attr_t *, int); -+ int (*ptr_pthread_condattr_destroy) (pthread_condattr_t *); -+ int (*ptr_pthread_condattr_init) (pthread_condattr_t *); -+ int (*ptr___pthread_cond_broadcast) (pthread_cond_t *); -+ int (*ptr___pthread_cond_destroy) (pthread_cond_t *); -+ int (*ptr___pthread_cond_init) (pthread_cond_t *, -+ const pthread_condattr_t *); -+ int (*ptr___pthread_cond_signal) (pthread_cond_t *); -+ int (*ptr___pthread_cond_wait) (pthread_cond_t *, pthread_mutex_t *); -+ int (*ptr_pthread_equal) (pthread_t, pthread_t); -+ void (*ptr___pthread_exit) (void *); -+ int (*ptr_pthread_getschedparam) (pthread_t, int *, struct sched_param *); -+ int (*ptr_pthread_setschedparam) (pthread_t, int, -+ const struct sched_param *); -+ int (*ptr_pthread_mutex_destroy) (pthread_mutex_t *); -+ int (*ptr_pthread_mutex_init) (pthread_mutex_t *, -+ const pthread_mutexattr_t *); -+ int (*ptr_pthread_mutex_lock) (pthread_mutex_t *); -+ int (*ptr_pthread_mutex_trylock) (pthread_mutex_t *); -+ int (*ptr_pthread_mutex_unlock) (pthread_mutex_t *); -+ pthread_t (*ptr_pthread_self) (void); -+ int (*ptr_pthread_setcancelstate) (int, int *); -+ int (*ptr_pthread_setcanceltype) (int, int *); -+ void (*ptr_pthread_do_exit) (void *retval, char *currentframe); -+ void (*ptr_pthread_cleanup_upto) (__jmp_buf target, -+ char *targetframe); -+ pthread_descr (*ptr_pthread_thread_self) (void); -+ int (*ptr_pthread_internal_tsd_set) (int key, const void *pointer); -+ void * (*ptr_pthread_internal_tsd_get) (int key); -+ void ** __attribute__ ((__const__)) -+ (*ptr_pthread_internal_tsd_address) (int key); -+ int (*ptr_pthread_sigaction) (int sig, const struct sigaction * act, -+ struct sigaction *oact); -+ int (*ptr_pthread_sigwait) (const sigset_t *set, int *sig); -+ int (*ptr_pthread_raise) (int sig); -+ int (*ptr___pthread_cond_timedwait) (pthread_cond_t *, pthread_mutex_t *, -+ const struct timespec *); -+}; -+ -+/* Variable in libc.so. */ -+extern struct pthread_functions __libc_pthread_functions attribute_hidden; -+ -+#endif /* pthread-functions.h */ ---- glibc-2.3.2/linuxthreads/sysdeps/pthread/pthread.h 2003-01-02 18:26:03.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/pthread/pthread.h 2003-09-19 22:37:04.000000000 -0400 -@@ -172,13 +172,12 @@ - extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) __THROW; - - /* Terminate calling thread. */ --extern void pthread_exit (void *__retval) -- __THROW __attribute__ ((__noreturn__)); -+extern void pthread_exit (void *__retval) __attribute__ ((__noreturn__)); - - /* Make calling thread wait for termination of the thread TH. The - exit status of the thread is stored in *THREAD_RETURN, if THREAD_RETURN - is not NULL. */ --extern int pthread_join (pthread_t __th, void **__thread_return) __THROW; -+extern int pthread_join (pthread_t __th, void **__thread_return); - - /* Indicate that the thread TH is never to be joined with PTHREAD_JOIN. - The resources of TH will therefore be freed immediately when it -@@ -256,7 +255,7 @@ - /* Set the starting address of the stack of the thread to be created. - Depending on whether the stack grows up or down the value must either - be higher or lower than all the address in the memory block. The -- minimal size of the block must be PTHREAD_STACK_SIZE. */ -+ minimal size of the block must be PTHREAD_STACK_MIN. */ - extern int pthread_attr_setstackaddr (pthread_attr_t *__attr, - void *__stackaddr) __THROW; - -@@ -279,7 +278,7 @@ - #endif - - /* Add information about the minimum stack size needed for the thread -- to be started. This size must never be less than PTHREAD_STACK_SIZE -+ to be started. This size must never be less than PTHREAD_STACK_MIN - and must also not exceed the system limits. */ - extern int pthread_attr_setstacksize (pthread_attr_t *__attr, - size_t __stacksize) __THROW; -@@ -290,7 +289,9 @@ - __THROW; - - #ifdef __USE_GNU --/* Get thread attributes corresponding to the already running thread TH. */ -+/* Initialize thread attribute *ATTR with attributes corresponding to the -+ already running thread TH. It shall be called on unitialized ATTR -+ and destroyed with pthread_attr_destroy when no longer needed. */ - extern int pthread_getattr_np (pthread_t __th, pthread_attr_t *__attr) __THROW; - #endif - -@@ -403,7 +404,7 @@ - /* Wait for condition variable COND to be signaled or broadcast. - MUTEX is assumed to be locked before. */ - extern int pthread_cond_wait (pthread_cond_t *__restrict __cond, -- pthread_mutex_t *__restrict __mutex) __THROW; -+ pthread_mutex_t *__restrict __mutex); - - /* Wait for condition variable COND to be signaled or broadcast until - ABSTIME. MUTEX is assumed to be locked before. ABSTIME is an -@@ -412,7 +413,7 @@ - extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond, - pthread_mutex_t *__restrict __mutex, - __const struct timespec *__restrict -- __abstime) __THROW; -+ __abstime); - - /* Functions for handling condition variable attributes. */ - ---- glibc-2.3.2/linuxthreads/sysdeps/pthread/res-state.c 2002-12-31 14:14:22.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/pthread/res-state.c 2003-08-21 08:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996, 97, 98, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1996, 97, 98, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -18,6 +18,7 @@ - - #include - #include -+#include - #include - - #if ! USE___THREAD -@@ -38,7 +39,9 @@ - pthread_descr self = thread_self(); - return LIBC_THREAD_GETMEM (self, p_resp); - } --#endif - return &_res; -+#else -+ return __resp; -+#endif - } - libc_hidden_def (__res_state) ---- glibc-2.3.2/linuxthreads/sysdeps/pthread/timer_create.c 2002-08-27 00:52:36.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/pthread/timer_create.c 2003-08-21 08:37:03.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 2000 Free Software Foundation, Inc. -+/* Copyright (C) 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Kaz Kylheku . - -@@ -37,15 +37,23 @@ - struct timer_node *newtimer = NULL; - struct thread_node *thread = NULL; - -- if (clock_id != CLOCK_REALTIME -+ if (0 - #ifdef _POSIX_CPUTIME -- && clock_id != CLOCK_PROCESS_CPUTIME_ID -+ || clock_id == CLOCK_PROCESS_CPUTIME_ID - #endif - #ifdef _POSIX_THREAD_CPUTIME -- && clock_id != CLOCK_THREAD_CPUTIME_ID -+ || clock_id == CLOCK_THREAD_CPUTIME_ID - #endif - ) - { -+ /* We don't allow timers for CPU clocks. At least not in the -+ moment. */ -+ __set_errno (ENOTSUP); -+ return -1; -+ } -+ -+ if (clock_id != CLOCK_REALTIME) -+ { - __set_errno (EINVAL); - return -1; - } -@@ -170,7 +178,10 @@ - if (thread != NULL) - __timer_thread_dealloc (thread); - if (newtimer != NULL) -- __timer_dealloc (newtimer); -+ { -+ timer_delref (newtimer); -+ __timer_dealloc (newtimer); -+ } - } - - pthread_mutex_unlock (&__timer_mutex); ---- glibc-2.3.2/linuxthreads/sysdeps/pthread/timer_routines.c 2002-08-28 21:46:13.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/pthread/timer_routines.c 2003-08-21 08:37:03.000000000 -0400 -@@ -538,10 +538,7 @@ - - if (thread_attr_compare (desired_attr, &candidate->attr) - && desired_clock_id == candidate->clock_id) -- { -- list_unlink (iter); -- return candidate; -- } -+ return candidate; - - iter = list_next (iter); - } ---- glibc-2.3.2/linuxthreads/sysdeps/s390/pspinlock.c 2002-08-27 00:52:36.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/sysdeps/s390/pspinlock.c 2003-04-12 11:39:43.000000000 -0400 -@@ -64,7 +64,7 @@ - { - asm volatile(" xc 0(4,%0),0(%0)\n" - " bcr 15,0" -- : "=a" (lock) ); -+ : : "a" (lock) : "memory" ); - return 0; - } - weak_alias (__pthread_spin_unlock, pthread_spin_unlock) ---- glibc-2.3.2/linuxthreads/sysdeps/s390/s390-32/pt-machine.h 2003-01-30 16:03:05.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/s390/s390-32/pt-machine.h 2003-08-21 08:37:03.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Machine-dependent pthreads configuration and inline functions. - S390 version. -- Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. - Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com). - This file is part of the GNU C Library. - -@@ -23,7 +23,7 @@ - #define _PT_MACHINE_H 1 - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/s390/s390-64/pt-machine.h 2003-01-30 16:03:05.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/s390/s390-64/pt-machine.h 2003-08-21 08:37:04.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Machine-dependent pthreads configuration and inline functions. - 64 bit S/390 version. -- Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com). - This file is part of the GNU C Library. - -@@ -23,7 +23,7 @@ - #define _PT_MACHINE_H 1 - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/sh/pt-machine.h 2003-01-30 16:03:05.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/sh/pt-machine.h 2003-08-21 08:37:04.000000000 -0400 -@@ -24,7 +24,7 @@ - - #ifndef __ASSEMBLER__ - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/sh/tcb-offsets.sym 2003-02-07 21:29:53.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/sh/tcb-offsets.sym 2003-04-28 08:20:35.000000000 -0400 -@@ -3,7 +3,7 @@ - - -- - #ifdef USE_TLS --MULTIPLE_THREADS_OFFSET offsetof (struct _pthread_descr_struct, p_header.data.multiple_threads) -+MULTIPLE_THREADS_OFFSET offsetof (struct _pthread_descr_struct, p_multiple_threads) - TLS_PRE_TCB_SIZE sizeof (struct _pthread_descr_struct) - #else - MULTIPLE_THREADS_OFFSET offsetof (tcbhead_t, multiple_threads) ---- glibc-2.3.2/linuxthreads/sysdeps/sh/tls.h 2003-02-07 21:29:53.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/sh/tls.h 2003-03-15 15:02:10.000000000 -0500 -@@ -112,6 +112,8 @@ - __asm __volatile ("ldc %0,gbr" : : "r" (__self + 1)); \ - 0; }) - -+# define TLS_MULTIPLE_THREADS_IN_TCB 1 -+ - /* Get the thread descriptor definition. This must be after the - the definition of THREAD_SELF for TLS. */ - # include ---- glibc-2.3.2/linuxthreads/sysdeps/sparc/sparc32/pt-machine.h 2003-01-30 16:03:05.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/sparc/sparc32/pt-machine.h 2003-08-21 08:37:04.000000000 -0400 -@@ -23,7 +23,7 @@ - #define _PT_MACHINE_H 1 - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/sparc/sparc64/pt-machine.h 2003-01-30 16:03:05.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/sparc/sparc64/pt-machine.h 2003-08-21 08:37:04.000000000 -0400 -@@ -23,7 +23,7 @@ - #define _PT_MACHINE_H 1 - - #ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - #endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/Makefile 2003-01-06 18:49:01.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/Makefile 2003-08-21 08:37:04.000000000 -0400 -@@ -1,3 +1,3 @@ - ifeq ($(subdir),linuxthreads) --libpthread-routines += ptw-sysdep ptw-sigblock ptw-sigprocmask ptw-osf_sigprocmask -+libpthread-routines += ptw-sysdep ptw-sigblock ptw-sigprocmask - endif ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/Versions 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/Versions 2003-09-02 23:01:51.000000000 -0400 -@@ -0,0 +1,6 @@ -+libpthread { -+ GLIBC_2.3.3 { -+ # Changed PTHREAD_STACK_MIN. -+ pthread_attr_setstack; pthread_attr_setstacksize; -+ } -+} ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/bits/local_lim.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/bits/local_lim.h 2003-09-02 23:01:32.000000000 -0400 -@@ -0,0 +1,86 @@ -+/* Minimum guaranteed maximum values for system limits. Linux/Alpha version. -+ Copyright (C) 1993-1998, 2000, 2002, 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public License as -+ published by the Free Software Foundation; either version 2.1 of the -+ License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. */ -+ -+/* The kernel header pollutes the namespace with the NR_OPEN symbol -+ and defines LINK_MAX although filesystems have different maxima. A -+ similar thing is true for OPEN_MAX: the limit can be changed at -+ runtime and therefore the macro must not be defined. Remove this -+ after including the header if necessary. */ -+#ifndef NR_OPEN -+# define __undef_NR_OPEN -+#endif -+#ifndef LINK_MAX -+# define __undef_LINK_MAX -+#endif -+#ifndef OPEN_MAX -+# define __undef_OPEN_MAX -+#endif -+ -+/* The kernel sources contain a file with all the needed information. */ -+#include -+ -+/* Have to remove NR_OPEN? */ -+#ifdef __undef_NR_OPEN -+# undef NR_OPEN -+# undef __undef_NR_OPEN -+#endif -+/* Have to remove LINK_MAX? */ -+#ifdef __undef_LINK_MAX -+# undef LINK_MAX -+# undef __undef_LINK_MAX -+#endif -+/* Have to remove OPEN_MAX? */ -+#ifdef __undef_OPEN_MAX -+# undef OPEN_MAX -+# undef __undef_OPEN_MAX -+#endif -+ -+/* The number of data keys per process. */ -+#define _POSIX_THREAD_KEYS_MAX 128 -+/* This is the value this implementation supports. */ -+#define PTHREAD_KEYS_MAX 1024 -+ -+/* Controlling the iterations of destructors for thread-specific data. */ -+#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4 -+/* Number of iterations this implementation does. */ -+#define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS -+ -+/* The number of threads per process. */ -+#define _POSIX_THREAD_THREADS_MAX 64 -+/* This is the value this implementation supports. */ -+#define PTHREAD_THREADS_MAX 16384 -+ -+/* Maximum amount by which a process can descrease its asynchronous I/O -+ priority level. */ -+#define AIO_PRIO_DELTA_MAX 20 -+ -+/* Minimum size for a thread. We are free to choose a reasonable value. */ -+#define PTHREAD_STACK_MIN 24576 -+ -+/* Maximum number of POSIX timers available. */ -+#define TIMER_MAX 256 -+ -+/* Maximum number of timer expiration overruns. */ -+#define DELAYTIMER_MAX 2147483647 -+ -+/* Maximum tty name length. */ -+#define TTY_NAME_MAX 32 -+ -+/* Maximum login name length. This is arbitrary. */ -+#define LOGIN_NAME_MAX 256 ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h 2003-08-21 08:37:04.000000000 -0400 -@@ -0,0 +1,66 @@ -+/* bits/typesizes.h -- underlying types for *_t. Linux/Alpha version. -+ Copyright (C) 2002, 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _BITS_TYPES_H -+# error "Never include directly; use instead." -+#endif -+ -+#ifndef _BITS_TYPESIZES_H -+#define _BITS_TYPESIZES_H 1 -+ -+/* See for the meaning of these macros. This file exists so -+ that need not vary across different GNU platforms. */ -+ -+#define __DEV_T_TYPE __U64_TYPE -+#define __UID_T_TYPE __U32_TYPE -+#define __GID_T_TYPE __U32_TYPE -+#define __INO_T_TYPE __U32_TYPE -+#define __INO64_T_TYPE __U64_TYPE -+#define __MODE_T_TYPE __U32_TYPE -+#define __NLINK_T_TYPE __U32_TYPE -+#define __OFF_T_TYPE __SLONGWORD_TYPE -+#define __OFF64_T_TYPE __S64_TYPE -+#define __PID_T_TYPE __S32_TYPE -+#define __RLIM_T_TYPE __ULONGWORD_TYPE -+#define __RLIM64_T_TYPE __U64_TYPE -+#define __BLKCNT_T_TYPE __U32_TYPE -+#define __BLKCNT64_T_TYPE __U64_TYPE -+#define __FSBLKCNT_T_TYPE __S32_TYPE -+#define __FSBLKCNT64_T_TYPE __S64_TYPE -+#define __FSFILCNT_T_TYPE __U32_TYPE -+#define __FSFILCNT64_T_TYPE __U64_TYPE -+#define __ID_T_TYPE __U32_TYPE -+#define __CLOCK_T_TYPE __SLONGWORD_TYPE -+#define __TIME_T_TYPE __SLONGWORD_TYPE -+#define __USECONDS_T_TYPE __U32_TYPE -+#define __SUSECONDS_T_TYPE __S64_TYPE -+#define __DADDR_T_TYPE __S32_TYPE -+#define __SWBLK_T_TYPE __SLONGWORD_TYPE -+#define __KEY_T_TYPE __S32_TYPE -+#define __CLOCKID_T_TYPE __S32_TYPE -+#define __TIMER_T_TYPE __S32_TYPE -+#define __BLKSIZE_T_TYPE __U32_TYPE -+#define __FSID_T_TYPE struct { int __val[2]; } -+#define __SSIZE_T_TYPE __SWORD_TYPE -+ -+/* Number of descriptors that can fit in an `fd_set'. */ -+#define __FD_SETSIZE 1024 -+ -+ -+#endif /* bits/typesizes.h */ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/pt-sigsuspend.S 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/pt-sigsuspend.S 2003-04-01 19:10:44.000000000 -0500 -@@ -0,0 +1,28 @@ -+/* Internal sigsuspend system call for LinuxThreads. Alpha version. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+ -+#undef PSEUDO_PREPARE_ARGS -+#define PSEUDO_PREPARE_ARGS ldq a0, 0(a0); -+ -+ .hidden __pthread_sigsuspend -+PSEUDO_NOERRNO(__pthread_sigsuspend, sigsuspend, 1) -+ ret -+PSEUDO_END_NOERRNO(__pthread_sigsuspend) ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h 2003-01-12 14:19:43.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -40,10 +40,11 @@ - # define PSEUDO(name, syscall_name, args) \ - .globl name; \ - .align 4; \ -- .ent name, 0; \ -+ .type name, @function; \ -+ .usepv name, std; \ -+ cfi_startproc; \ - __LABEL(name) \ - ldgp gp, 0(pv); \ -- .prologue 1; \ - PSEUDO_PROF; \ - PSEUDO_PREPARE_ARGS \ - SINGLE_THREAD_P(t0); \ -@@ -55,7 +56,9 @@ - .subsection 2; \ - __LABEL($pseudo_cancel) \ - subq sp, 64, sp; \ -+ cfi_def_cfa_offset(64); \ - stq ra, 0(sp); \ -+ cfi_offset(ra, -64); \ - SAVE_ARGS_##args; \ - CENABLE; \ - LOAD_ARGS_##args; \ -@@ -67,19 +70,27 @@ - ldq ra, 0(sp); \ - ldq v0, 8(sp); \ - addq sp, 64, sp; \ -+ cfi_remember_state; \ -+ cfi_restore(ra); \ -+ cfi_def_cfa_offset(0); \ - ret; \ -+ cfi_restore_state; \ - __LABEL($multi_error) \ - CDISABLE; \ - ldq ra, 0(sp); \ - ldq v0, 8(sp); \ - addq sp, 64, sp; \ -+ cfi_restore(ra); \ -+ cfi_def_cfa_offset(0); \ - __LABEL($syscall_error) \ - SYSCALL_ERROR_HANDLER; \ -- END(name); \ - .previous - - # undef PSEUDO_END --# define PSEUDO_END(sym) -+# define PSEUDO_END(sym) \ -+ .subsection 2; \ -+ cfi_endproc; \ -+ .size sym, .-sym - - # define SAVE_ARGS_0 /* Nothing. */ - # define SAVE_ARGS_1 SAVE_ARGS_0; stq a0, 8(sp) ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S 2003-02-11 01:24:43.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S 2003-08-21 08:37:04.000000000 -0400 -@@ -19,12 +19,13 @@ - - #include - -- .globl __vfork - .align 4 -- .ent __vfork,0 --__LABEL(__vfork) -+ .globl __vfork -+ .type __vfork, @function -+ .usepv __vfork, std -+ cfi_startproc -+__vfork: - ldgp gp, 0(pv) -- .prologue 1 - PSEUDO_PROF - - #ifdef SHARED -@@ -46,18 +47,24 @@ - fork and vfork object files. */ - $do_fork: - subq sp, 16, sp -+ cfi_adjust_cfa_offset(16) - stq ra, 0(sp) -+ cfi_offset(ra, -16) - jsr ra, HIDDEN_JUMPTARGET (__fork) - ldgp gp, 0(ra) - ldq ra, 0(sp) - addq sp, 16, sp -+ cfi_restore(ra) -+ cfi_adjust_cfa_offset(-16) - ret - - $syscall_error: - SYSCALL_ERROR_HANDLER - #endif - --PSEUDO_END(__vfork) -+ cfi_endproc -+ .size __vfork, .-__vfork -+ - libc_hidden_def (__vfork) - - weak_alias (__vfork, vfork) ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/arm/sysdep-cancel.h 2003-01-12 04:13:57.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/arm/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -24,6 +24,17 @@ - - #if !defined NOT_IN_libc || defined IS_IN_libpthread - -+/* We push lr onto the stack, so we have to use ldmib instead of ldmia -+ to find the saved arguments. */ -+# ifdef PIC -+# undef DOARGS_5 -+# undef DOARGS_6 -+# undef DOARGS_7 -+# define DOARGS_5 str r4, [sp, $-4]!; ldr r4, [sp, $8]; -+# define DOARGS_6 mov ip, sp; stmfd sp!, {r4, r5}; ldmib ip, {r4, r5}; -+# define DOARGS_7 mov ip, sp; stmfd sp!, {r4, r5, r6}; ldmib ip, {r4, r5, r6}; -+# endif -+ - # undef PSEUDO_RET - # define PSEUDO_RET \ - ldrcc pc, [sp], $4; \ -@@ -34,7 +45,7 @@ - # define PSEUDO(name, syscall_name, args) \ - .section ".text"; \ - PSEUDO_PROLOGUE; \ -- ENTRY (name) \ -+ ENTRY (name); \ - SINGLE_THREAD_P_INT; \ - bne .Lpseudo_cancel; \ - DO_CALL (syscall_name, args); \ -@@ -110,7 +121,7 @@ - ldr reg, 2b; \ - 3: \ - add ip, pc, ip; \ -- ldr ip, [ip, lr]; \ -+ ldr ip, [ip, reg]; \ - teq ip, #0; - # define SINGLE_THREAD_P_INT \ - str lr, [sp, $-4]!; \ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/arm/vfork.S 2003-01-14 20:03:38.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/arm/vfork.S 2003-09-19 22:37:04.000000000 -0400 -@@ -20,37 +20,60 @@ - #include - #define _ERRNO_H 1 - #include -+#include - --/* Clone the calling process, but without copying the whole address --pace. -+/* Clone the calling process, but without copying the whole address space. - The calling process is suspended until the new process exits or is -- replaced by a call to `execve'. Return -1 for errors, 0 to the new --rocess, -+ replaced by a call to `execve'. Return -1 for errors, 0 to the new process, - and the process ID of the new process to the old process. */ - - PSEUDO_PROLOGUE - - ENTRY (__vfork) - -- SINGLE_THREAD_P -- bne HIDDEN_JUMPTARGET (__fork) - #ifdef __NR_vfork -+ -+#ifdef SHARED -+ ldr ip, 1f -+ ldr r0, 2f -+3: add ip, pc, ip -+ ldr r0, [ip, r0] -+#else -+ ldr r0, 1f -+#endif -+ movs r0, r0 -+ bne HIDDEN_JUMPTARGET (__fork) -+ - swi __NR_vfork - cmn a1, #4096 - RETINSTR(movcc, pc, lr) - -+#ifndef __ASSUME_VFORK_SYSCALL - /* Check if vfork syscall is known at all. */ -- ldr a2, =-ENOSYS -- teq a1, a2 -+ cmn a1, #ENOSYS - bne PLTJMP(C_SYMBOL_NAME(__syscall_error)) - #endif - -+#endif -+ -+#ifndef __ASSUME_VFORK_SYSCALL - /* If we don't have vfork, fork is close enough. */ - swi __NR_fork - cmn a1, #4096 - RETINSTR(movcc, pc, lr) -+#elif !defined __NR_vfork -+# error "__NR_vfork not available and __ASSUME_VFORK_SYSCALL defined" -+#endif - b PLTJMP(C_SYMBOL_NAME(__syscall_error)) - -+#ifdef SHARED -+1: .word _GLOBAL_OFFSET_TABLE_ - 3b - 8 -+2: .word __libc_pthread_functions(GOTOFF) -+#else -+ .weak pthread_create -+1: .word pthread_create -+#endif -+ - PSEUDO_END (__vfork) - libc_hidden_def (__vfork) - ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h 2002-11-28 20:48:24.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h 2003-03-15 15:02:10.000000000 -0500 -@@ -1,5 +1,5 @@ - /* Define POSIX options for Linux. -- Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -132,4 +132,7 @@ - /* POSIX message queues are not yet supported. */ - #undef _POSIX_MESSAGE_PASSING - -+/* The monotonic clock might be available. */ -+#define _POSIX_MONOTONIC_CLOCK 0 -+ - #endif /* posix_opt.h */ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/fork.c 2003-01-02 18:26:04.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/fork.c 2003-04-12 11:39:43.000000000 -0400 -@@ -39,4 +39,5 @@ - return __libc_maybe_call2 (pthread_fork, (&__fork_block), ARCH_FORK ()); - } - weak_alias (__libc_fork, __fork) -+libc_hidden_def (__fork) - weak_alias (__libc_fork, fork) ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h 2002-11-28 20:47:54.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h 2003-03-15 15:02:10.000000000 -0500 -@@ -1,5 +1,5 @@ - /* Define POSIX options for Linux/ix86. -- Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -138,4 +138,7 @@ - /* POSIX message queues are not yet supported. */ - #undef _POSIX_MESSAGE_PASSING - -+/* The monotonic clock might be available. */ -+#define _POSIX_MONOTONIC_CLOCK 0 -+ - #endif /* posix_opt.h */ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/i386/dl-sysdep.h 2002-12-28 02:04:12.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/i386/dl-sysdep.h 2003-09-19 22:37:04.000000000 -0400 -@@ -1,5 +1,5 @@ - /* System-specific settings for dynamic linker code. IA-32 version. -- Copyright (C) 2002 Free Software Foundation, Inc. -+ Copyright (C) 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -49,12 +49,16 @@ - extern void _dl_sysinfo_int80 (void) attribute_hidden; - # define DL_SYSINFO_DEFAULT (uintptr_t) _dl_sysinfo_int80 - # define DL_SYSINFO_IMPLEMENTATION \ -- asm (".type _dl_sysinfo_int80,@function\n\t" \ -+ asm (".text\n\t" \ -+ ".type _dl_sysinfo_int80,@function\n\t" \ - ".hidden _dl_sysinfo_int80\n" \ -+ CFI_STARTPROC "\n" \ - "_dl_sysinfo_int80:\n\t" \ - "int $0x80;\n\t" \ - "ret;\n\t" \ -- ".size _dl_sysinfo_int80,.-_dl_sysinfo_int80"); -+ CFI_ENDPROC "\n" \ -+ ".size _dl_sysinfo_int80,.-_dl_sysinfo_int80\n\t" \ -+ ".previous"); - #endif - - #endif /* dl-sysdep.h */ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/i386/sysdep-cancel.h 2002-12-31 14:16:42.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/i386/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 2002 Free Software Foundation, Inc. -+/* Copyright (C) 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek , 2002. - -@@ -24,7 +24,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ -@@ -39,12 +39,12 @@ - L(pseudo_cancel): \ - CENABLE \ - SAVE_OLDTYPE_##args \ -- PUSHARGS_##args \ -+ PUSHCARGS_##args \ - DOCARGS_##args \ - movl $SYS_ify (syscall_name), %eax; \ - int $0x80 \ -- POPARGS_##args; \ -- POPCARGS_##args \ -+ POPCARGS_##args; \ -+ POPSTATE_##args \ - cmpl $-4095, %eax; \ - jae SYSCALL_ERROR_LABEL; \ - L(pseudo_end): -@@ -56,12 +56,41 @@ - # define SAVE_OLDTYPE_4 SAVE_OLDTYPE_2 - # define SAVE_OLDTYPE_5 SAVE_OLDTYPE_2 - --# define DOCARGS_0 DOARGS_0 --# define DOCARGS_1 DOARGS_1 -+# define PUSHCARGS_0 /* No arguments to push. */ -+# define DOCARGS_0 /* No arguments to frob. */ -+# define POPCARGS_0 /* No arguments to pop. */ -+# define _PUSHCARGS_0 /* No arguments to push. */ -+# define _POPCARGS_0 /* No arguments to pop. */ -+ -+# define PUSHCARGS_1 movl %ebx, %edx; PUSHCARGS_0 -+# define DOCARGS_1 _DOARGS_1 (4) -+# define POPCARGS_1 POPCARGS_0; movl %edx, %ebx -+# define _PUSHCARGS_1 pushl %ebx; L(PUSHBX2): _PUSHCARGS_0 -+# define _POPCARGS_1 _POPCARGS_0; popl %ebx; L(POPBX2): -+ -+# define PUSHCARGS_2 PUSHCARGS_1 - # define DOCARGS_2 _DOARGS_2 (12) -+# define POPCARGS_2 POPCARGS_1 -+# define _PUSHCARGS_2 _PUSHCARGS_1 -+# define _POPCARGS_2 _POPCARGS_1 -+ -+# define PUSHCARGS_3 _PUSHCARGS_2 - # define DOCARGS_3 _DOARGS_3 (20) -+# define POPCARGS_3 _POPCARGS_3 -+# define _PUSHCARGS_3 _PUSHCARGS_2 -+# define _POPCARGS_3 _POPCARGS_2 -+ -+# define PUSHCARGS_4 _PUSHCARGS_4 - # define DOCARGS_4 _DOARGS_4 (28) -+# define POPCARGS_4 _POPCARGS_4 -+# define _PUSHCARGS_4 pushl %esi; L(PUSHSI2): _PUSHCARGS_3 -+# define _POPCARGS_4 _POPCARGS_3; popl %esi; L(POPSI2): -+ -+# define PUSHCARGS_5 _PUSHCARGS_5 - # define DOCARGS_5 _DOARGS_5 (36) -+# define POPCARGS_5 _POPCARGS_5 -+# define _PUSHCARGS_5 pushl %edi; L(PUSHDI2): _PUSHCARGS_4 -+# define _POPCARGS_5 _POPCARGS_4; popl %edi; L(POPDI2): - - # ifdef IS_IN_libpthread - # define CENABLE call __pthread_enable_asynccancel; -@@ -70,17 +99,19 @@ - # define CENABLE call __libc_enable_asynccancel; - # define CDISABLE call __libc_disable_asynccancel - # endif --# define POPCARGS_0 pushl %eax; movl %ecx, %eax; CDISABLE; popl %eax; --# define POPCARGS_1 POPCARGS_0 --# define POPCARGS_2 xchgl (%esp), %eax; CDISABLE; popl %eax; --# define POPCARGS_3 POPCARGS_2 --# define POPCARGS_4 POPCARGS_2 --# define POPCARGS_5 POPCARGS_2 -+# define POPSTATE_0 pushl %eax; movl %ecx, %eax; CDISABLE; popl %eax; -+# define POPSTATE_1 POPSTATE_0 -+# define POPSTATE_2 xchgl (%esp), %eax; CDISABLE; popl %eax; -+# define POPSTATE_3 POPSTATE_2 -+# define POPSTATE_4 POPSTATE_2 -+# define POPSTATE_5 POPSTATE_2 - - #if !defined NOT_IN_libc - # define __local_multiple_threads __libc_multiple_threads --#else -+#elif defined IS_IN_libpthread - # define __local_multiple_threads __pthread_multiple_threads -+#else -+# define __local_multiple_threads __librt_multiple_threads - #endif - - # ifndef __ASSEMBLER__ -@@ -89,7 +120,12 @@ - __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ - p_header.data.multiple_threads) == 0, 1) - # else --extern int __local_multiple_threads attribute_hidden; -+extern int __local_multiple_threads -+# if !defined NOT_IN_libc || defined IS_IN_libpthread -+ attribute_hidden; -+# else -+ ; -+# endif - # define SINGLE_THREAD_P __builtin_expect (__local_multiple_threads == 0, 1) - # endif - # else -@@ -98,16 +134,23 @@ - # elif defined FLOATING_STACKS && USE___THREAD - # define SINGLE_THREAD_P cmpl $0, %gs:MULTIPLE_THREADS_OFFSET - # else -+# if !defined NOT_IN_libc || defined IS_IN_libpthread -+# define __SINGLE_THREAD_CMP cmpl $0, __local_multiple_threads@GOTOFF(%ecx) -+# else -+# define __SINGLE_THREAD_CMP \ -+ movl __local_multiple_threads@GOT(%ecx), %ecx;\ -+ cmpl $0, (%ecx) -+# endif - # if !defined HAVE_HIDDEN || !USE___THREAD - # define SINGLE_THREAD_P \ - SETUP_PIC_REG (cx); \ - addl $_GLOBAL_OFFSET_TABLE_, %ecx; \ -- cmpl $0, __local_multiple_threads@GOTOFF(%ecx) -+ __SINGLE_THREAD_CMP - # else - # define SINGLE_THREAD_P \ - call __i686.get_pc_thunk.cx; \ - addl $_GLOBAL_OFFSET_TABLE_, %ecx; \ -- cmpl $0, __local_multiple_threads@GOTOFF(%ecx) -+ __SINGLE_THREAD_CMP - # endif - # endif - # endif ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/Versions 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/Versions 2003-09-02 23:02:33.000000000 -0400 -@@ -0,0 +1,6 @@ -+libpthread { -+ GLIBC_2.3.3 { -+ # Changed PTHREAD_STACK_MIN. -+ pthread_attr_setstack; pthread_attr_setstacksize; -+ } -+} ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/bits/local_lim.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/bits/local_lim.h 2003-09-02 23:03:30.000000000 -0400 -@@ -0,0 +1,86 @@ -+/* Minimum guaranteed maximum values for system limits. Linux/Alpha version. -+ Copyright (C) 1993-1998, 2000, 2002, 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public License as -+ published by the Free Software Foundation; either version 2.1 of the -+ License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. */ -+ -+/* The kernel header pollutes the namespace with the NR_OPEN symbol -+ and defines LINK_MAX although filesystems have different maxima. A -+ similar thing is true for OPEN_MAX: the limit can be changed at -+ runtime and therefore the macro must not be defined. Remove this -+ after including the header if necessary. */ -+#ifndef NR_OPEN -+# define __undef_NR_OPEN -+#endif -+#ifndef LINK_MAX -+# define __undef_LINK_MAX -+#endif -+#ifndef OPEN_MAX -+# define __undef_OPEN_MAX -+#endif -+ -+/* The kernel sources contain a file with all the needed information. */ -+#include -+ -+/* Have to remove NR_OPEN? */ -+#ifdef __undef_NR_OPEN -+# undef NR_OPEN -+# undef __undef_NR_OPEN -+#endif -+/* Have to remove LINK_MAX? */ -+#ifdef __undef_LINK_MAX -+# undef LINK_MAX -+# undef __undef_LINK_MAX -+#endif -+/* Have to remove OPEN_MAX? */ -+#ifdef __undef_OPEN_MAX -+# undef OPEN_MAX -+# undef __undef_OPEN_MAX -+#endif -+ -+/* The number of data keys per process. */ -+#define _POSIX_THREAD_KEYS_MAX 128 -+/* This is the value this implementation supports. */ -+#define PTHREAD_KEYS_MAX 1024 -+ -+/* Controlling the iterations of destructors for thread-specific data. */ -+#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4 -+/* Number of iterations this implementation does. */ -+#define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS -+ -+/* The number of threads per process. */ -+#define _POSIX_THREAD_THREADS_MAX 64 -+/* This is the value this implementation supports. */ -+#define PTHREAD_THREADS_MAX 16384 -+ -+/* Maximum amount by which a process can descrease its asynchronous I/O -+ priority level. */ -+#define AIO_PRIO_DELTA_MAX 20 -+ -+/* Minimum size for a thread. We are free to choose a reasonable value. */ -+#define PTHREAD_STACK_MIN 196608 -+ -+/* Maximum number of POSIX timers available. */ -+#define TIMER_MAX 256 -+ -+/* Maximum number of timer expiration overruns. */ -+#define DELAYTIMER_MAX 2147483647 -+ -+/* Maximum tty name length. */ -+#define TTY_NAME_MAX 32 -+ -+/* Maximum login name length. This is arbitrary. */ -+#define LOGIN_NAME_MAX 256 ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/pt-sigsuspend.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/pt-sigsuspend.c 2003-04-01 19:10:45.000000000 -0500 -@@ -0,0 +1,33 @@ -+/* Internal sigsuspend system call for LinuxThreads. IA64 version. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+ -+#include -+#include -+#include -+ -+void -+__pthread_sigsuspend (const sigset_t *set) -+{ -+ INTERNAL_SYSCALL_DECL (err); -+ INTERNAL_SYSCALL (rt_sigsuspend, err, 2, set, _NSIG / 8); -+} ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h 2003-01-09 14:43:34.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -23,7 +23,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ -@@ -38,6 +38,11 @@ - cmp.eq p6,p0=-1,r10; \ - (p6) br.cond.spnt.few __syscall_error; \ - ret;; \ -+ .endp name; \ -+ .proc __GC_##name; \ -+ .globl __GC_##name; \ -+ .hidden __GC_##name; \ -+__GC_##name: \ - .Lpseudo_cancel: \ - .prologue; \ - .regstk args, 5, args, 0; \ -@@ -62,12 +67,13 @@ - mov ar.pfs = loc0; \ - .Lpseudo_end: \ - ret; \ -- .endp name; \ -+ .endp __GC_##name; \ - .section .gnu.linkonce.t.__syscall_error_##args, "ax"; \ - .align 32; \ - .proc __syscall_error_##args; \ - .global __syscall_error_##args; \ - .hidden __syscall_error_##args; \ -+ .size __syscall_error_##args, 64; \ - __syscall_error_##args: \ - .prologue; \ - .regstk args, 5, args, 0; \ -@@ -82,12 +88,18 @@ - mov r8 = -1; \ - mov ar.pfs = loc0 - -+#undef PSEUDO_END -+#define PSEUDO_END(name) .endp -+ - # ifdef IS_IN_libpthread - # define CENABLE br.call.sptk.many b0 = __pthread_enable_asynccancel - # define CDISABLE br.call.sptk.many b0 = __pthread_disable_asynccancel --# else -+# elif !defined NOT_IN_libc - # define CENABLE br.call.sptk.many b0 = __libc_enable_asynccancel - # define CDISABLE br.call.sptk.many b0 = __libc_disable_asynccancel -+# else -+# define CENABLE br.call.sptk.many b0 = __librt_enable_asynccancel -+# define CDISABLE br.call.sptk.many b0 = __librt_disable_asynccancel - # endif - - #define COPY_ARGS_0 /* Nothing */ -@@ -101,8 +113,7 @@ - - # ifndef __ASSEMBLER__ - # define SINGLE_THREAD_P \ -- __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ -- p_header.data.multiple_threads) == 0, 1) -+ __builtin_expect (THREAD_GETMEM (THREAD_SELF, p_multiple_threads) == 0, 1) - # else - # define SINGLE_THREAD_P \ - adds r14 = MULTIPLE_THREADS_OFFSET, r13 ;; ld4 r14 = [r14] ;; cmp4.ne p6, p7 = 0, r14 ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/m68k/sysdep-cancel.h 2003-01-05 15:04:06.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/m68k/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -22,7 +22,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ -@@ -84,7 +84,7 @@ - # define CENABLE jbsr __pthread_enable_asynccancel - # define CDISABLE jbsr __pthread_disable_asynccancel - # endif --# else -+# elif !defined NOT_IN_libc - # ifdef PIC - # define CENABLE jbsr __libc_enable_asynccancel@PLTPC - # define CDISABLE jbsr __libc_disable_asynccancel@PLTPC -@@ -92,12 +92,22 @@ - # define CENABLE jbsr __libc_enable_asynccancel - # define CDISABLE jbsr __libc_disable_asynccancel - # endif -+# else -+# ifdef PIC -+# define CENABLE jbsr __librt_enable_asynccancel@PLTPC -+# define CDISABLE jbsr __librt_disable_asynccancel@PLTPC -+# else -+# define CENABLE jbsr __librt_enable_asynccancel -+# define CDISABLE jbsr __librt_disable_asynccancel -+# endif - # endif - - # if !defined NOT_IN_libc - # define __local_multiple_threads __libc_multiple_threads --# else -+# elif defined IS_IN_libpthread - # define __local_multiple_threads __pthread_multiple_threads -+# else -+# define __local_multiple_threads __librt_multiple_threads - # endif - - # ifndef __ASSEMBLER__ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h 2003-01-27 13:55:20.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -22,7 +22,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - #ifdef __PIC__ - # undef PSEUDO -@@ -35,14 +35,14 @@ - .cpload t9; \ - .set reorder; \ - SINGLE_THREAD_P(t0); \ -- bne zero, t0, Lpseudo_cancel; \ -+ bne zero, t0, L(pseudo_cancel); \ - .set noreorder; \ - li v0, SYS_ify(syscall_name); \ - syscall; \ - .set reorder; \ - bne a3, zero, SYSCALL_ERROR_LABEL; \ - ret; \ -- Lpseudo_cancel: \ -+ L(pseudo_cancel): \ - SAVESTK_##args; \ - sw ra, 28(sp); \ - sw gp, 32(sp); \ -@@ -65,7 +65,7 @@ - lw ra, 28(sp); /* restore return address */ \ - RESTORESTK; \ - bne a3, zero, SYSCALL_ERROR_LABEL; \ -- Lpseudo_end: -+ L(pseudo_end): - #endif - - # define PUSHARGS_0 /* nothing to do */ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h 2003-02-17 15:32:09.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -23,7 +23,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ -@@ -78,15 +78,17 @@ - # ifdef IS_IN_libpthread - # define CENABLE bl JUMPTARGET(__pthread_enable_asynccancel) - # define CDISABLE bl JUMPTARGET(__pthread_disable_asynccancel) --# else -+# elif !defined NOT_IN_libc - # define CENABLE bl JUMPTARGET(__libc_enable_asynccancel) - # define CDISABLE bl JUMPTARGET(__libc_disable_asynccancel) -+# else -+# define CENABLE bl JUMPTARGET(__librt_enable_asynccancel) -+# define CDISABLE bl JUMPTARGET(__librt_disable_asynccancel) - # endif - - # ifndef __ASSEMBLER__ - # define SINGLE_THREAD_P \ -- __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ -- p_header.data.multiple_threads) == 0, 1) -+ __builtin_expect (THREAD_GETMEM (THREAD_SELF, p_multiple_threads) == 0, 1) - # else - # define SINGLE_THREAD_P \ - lwz 10,MULTIPLE_THREADS_OFFSET(2); \ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h 2003-01-12 03:09:45.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -22,7 +22,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ -@@ -78,18 +78,31 @@ - # define CENABLE bl JUMPTARGET(__pthread_enable_asynccancel) - # define CDISABLE bl JUMPTARGET(__pthread_disable_asynccancel) - # define __local_multiple_threads __pthread_multiple_threads --# else -+# elif !defined NOT_IN_libc - # define CENABLE bl JUMPTARGET(__libc_enable_asynccancel) - # define CDISABLE bl JUMPTARGET(__libc_disable_asynccancel) - # define __local_multiple_threads __libc_multiple_threads -+# else -+# define CENABLE bl JUMPTARGET(__librt_enable_asynccancel); nop -+# define CDISABLE bl JUMPTARGET(__librt_disable_asynccancel); nop -+# define __local_multiple_threads __librt_multiple_threads - # endif - - # ifndef __ASSEMBLER__ --extern int __local_multiple_threads attribute_hidden; -+extern int __local_multiple_threads -+# if !defined NOT_IN_libc || defined IS_IN_libpthread -+ attribute_hidden; -+# else -+ ; -+# endif - # define SINGLE_THREAD_P __builtin_expect (__local_multiple_threads == 0, 1) - # else - # define SINGLE_THREAD_P \ -- ld 10,__local_multiple_threads@got(2); \ -+ .section ".toc","aw"; \ -+.LC__local_multiple_threads:; \ -+ .tc __local_multiple_threads[TC],__local_multiple_threads; \ -+ .previous; \ -+ ld 10,.LC__local_multiple_threads@toc(2); \ - ld 10,0(10); \ - cmpdi 10,0 - # endif ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/pt-sigsuspend.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/pt-sigsuspend.c 2003-04-01 19:10:44.000000000 -0500 -@@ -0,0 +1,56 @@ -+/* Internal sigsuspend system call for LinuxThreads. Generic Linux version. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+ -+#include -+#include -+#include -+ -+#include "kernel-features.h" -+ -+void -+__pthread_sigsuspend (const sigset_t *set) -+{ -+ INTERNAL_SYSCALL_DECL (err); -+#if !__ASSUME_REALTIME_SIGNALS -+ static int __pthread_missing_rt_sigs; -+ -+# ifdef __NR_rt_sigsuspend -+ /* First try the RT signals. */ -+ if (!__pthread_missing_rt_sigs) -+ { -+ /* XXX The size argument hopefully will have to be changed to the -+ real size of the user-level sigset_t. */ -+ int r; -+ r = INTERNAL_SYSCALL (rt_sigsuspend, err, 2, set, _NSIG / 8); -+ if (INTERNAL_SYSCALL_ERRNO (r, err) != ENOSYS) -+ return; -+ -+ __pthread_missing_rt_sigs = 1; -+ } -+# endif -+ -+ INTERNAL_SYSCALL (sigsuspend, err, 3, 0, 0, set->__val[0]); -+#else -+ INTERNAL_SYSCALL (rt_sigsuspend, err, 2, set, _NSIG / 8); -+#endif -+} ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/bits/typesizes.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/bits/typesizes.h 2003-09-19 22:37:04.000000000 -0400 -@@ -0,0 +1,72 @@ -+/* bits/typesizes.h -- underlying types for *_t. Linux/s390 version. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _BITS_TYPES_H -+# error "Never include directly; use instead." -+#endif -+ -+#ifndef _BITS_TYPESIZES_H -+#define _BITS_TYPESIZES_H 1 -+ -+/* See for the meaning of these macros. This file exists so -+ that need not vary across different GNU platforms. */ -+ -+#define __DEV_T_TYPE __UQUAD_TYPE -+#define __UID_T_TYPE __U32_TYPE -+#define __GID_T_TYPE __U32_TYPE -+#define __INO_T_TYPE __ULONGWORD_TYPE -+#define __INO64_T_TYPE __UQUAD_TYPE -+#define __MODE_T_TYPE __U32_TYPE -+#define __NLINK_T_TYPE __UWORD_TYPE -+#define __OFF_T_TYPE __SLONGWORD_TYPE -+#define __OFF64_T_TYPE __SQUAD_TYPE -+#define __PID_T_TYPE __S32_TYPE -+#define __RLIM_T_TYPE __ULONGWORD_TYPE -+#define __RLIM64_T_TYPE __UQUAD_TYPE -+#define __BLKCNT_T_TYPE __SLONGWORD_TYPE -+#define __BLKCNT64_T_TYPE __SQUAD_TYPE -+#define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE -+#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE -+#define __FSFILCNT_T_TYPE __ULONGWORD_TYPE -+#define __FSFILCNT64_T_TYPE __UQUAD_TYPE -+#define __ID_T_TYPE __U32_TYPE -+#define __CLOCK_T_TYPE __SLONGWORD_TYPE -+#define __TIME_T_TYPE __SLONGWORD_TYPE -+#define __USECONDS_T_TYPE __U32_TYPE -+#define __SUSECONDS_T_TYPE __SLONGWORD_TYPE -+#define __DADDR_T_TYPE __S32_TYPE -+#define __SWBLK_T_TYPE __SLONGWORD_TYPE -+#define __KEY_T_TYPE __S32_TYPE -+#define __CLOCKID_T_TYPE __S32_TYPE -+#define __TIMER_T_TYPE __S32_TYPE -+#define __BLKSIZE_T_TYPE __SLONGWORD_TYPE -+#define __FSID_T_TYPE struct { int __val[2]; } -+#if defined __GNUC__ && __GNUC__ <= 2 -+/* Compatibility with g++ 2.95.x. */ -+#define __SSIZE_T_TYPE __SWORD_TYPE -+#else -+/* size_t is unsigned long int on s390 -m31. */ -+#define __SSIZE_T_TYPE __SLONGWORD_TYPE -+#endif -+ -+/* Number of descriptors that can fit in an `fd_set'. */ -+#define __FD_SETSIZE 1024 -+ -+ -+#endif /* bits/typesizes.h */ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-32/sysdep-cancel.h 2003-01-13 20:04:15.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-32/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -23,7 +23,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ -@@ -62,9 +62,12 @@ - # ifdef IS_IN_libpthread - # define CENABLE __pthread_enable_asynccancel - # define CDISABLE __pthread_disable_asynccancel --# else -+# elif !defined NOT_IN_libc - # define CENABLE __libc_enable_asynccancel - # define CDISABLE __libc_disable_asynccancel -+# else -+# define CENABLE __librt_enable_asynccancel -+# define CDISABLE __librt_disable_asynccancel - # endif - - #define STM_0 /* Nothing */ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/pt-sigsuspend.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/pt-sigsuspend.c 2003-04-01 19:10:45.000000000 -0500 -@@ -0,0 +1 @@ -+#include "../../ia64/pt-sigsuspend.c" ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h 2003-01-28 05:20:09.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -23,7 +23,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ -@@ -58,10 +58,13 @@ - # define CENABLE __pthread_enable_asynccancel - # define CDISABLE __pthread_disable_asynccancel - # define __local_multiple_threads __pthread_multiple_threads --# else -+# elif !defined NOT_IN_libc - # define CENABLE __libc_enable_asynccancel - # define CDISABLE __libc_disable_asynccancel - # define __local_multiple_threads __libc_multiple_threads -+# else -+# define CENABLE __librt_enable_asynccancel -+# define CDISABLE __librt_disable_asynccancel - # endif - - #define STM_0 /* Nothing */ -@@ -78,14 +81,31 @@ - #define LM_4 lmg %r2,%r5,16+160(%r15); - #define LM_5 lmg %r2,%r5,16+160(%r15); - --# ifndef __ASSEMBLER__ -+# if !defined NOT_IN_libc || defined IS_IN_libpthread -+# ifndef __ASSEMBLER__ - extern int __local_multiple_threads attribute_hidden; --# define SINGLE_THREAD_P \ -+# define SINGLE_THREAD_P \ - __builtin_expect (__local_multiple_threads == 0, 1) --# else --# define SINGLE_THREAD_P \ -+# else -+# define SINGLE_THREAD_P \ - larl %r1,__local_multiple_threads; \ - icm %r0,15,0(%r1); -+# endif -+ -+# else -+ -+# ifndef __ASSEMBLER__ -+# define SINGLE_THREAD_P \ -+ __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ -+ p_header.data.multiple_threads) == 0, 1) -+# else -+# define SINGLE_THREAD_P \ -+ ear %r1,%a0; \ -+ sllg %r1,%r1,32; \ -+ ear %r1,%a1; \ -+ icm %r1,15,MULTIPLE_THREADS_OFFSET(%r1); -+# endif -+ - # endif - - #elif !defined __ASSEMBLER__ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sh/sysdep-cancel.h 2003-02-07 21:29:53.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sh/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -23,7 +23,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - # define _IMM12 #-12 - # define _IMM16 #-16 -@@ -92,10 +92,13 @@ - # define __local_enable_asynccancel __pthread_enable_asynccancel - # define __local_disable_asynccancel __pthread_disable_asynccancel - # define __local_multiple_threads __pthread_multiple_threads --# else -+# elif !defined NOT_IN_libc - # define __local_enable_asynccancel __libc_enable_asynccancel - # define __local_disable_asynccancel __libc_disable_asynccancel - # define __local_multiple_threads __libc_multiple_threads -+# else -+# define __local_enable_asynccancel __librt_enable_asynccancel -+# define __local_disable_asynccancel __librt_disable_asynccancel - # endif - - # define CENABLE \ -@@ -121,8 +124,7 @@ - # ifndef __ASSEMBLER__ - # if defined FLOATING_STACKS && USE___THREAD && defined PIC - # define SINGLE_THREAD_P \ -- __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ -- p_header.data.multiple_threads) == 0, 1) -+ __builtin_expect (THREAD_GETMEM (THREAD_SELF, p_multiple_threads) == 0, 1) - # else - extern int __local_multiple_threads attribute_hidden; - # define SINGLE_THREAD_P __builtin_expect (__local_multiple_threads == 0, 1) ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/Makefile 2003-02-21 13:55:30.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/Makefile 1969-12-31 19:00:00.000000000 -0500 -@@ -1,11 +0,0 @@ --ifeq ($(subdir),linuxthreads) --# gcc has /usr/lib{,64}/crti.o hardcoded in the specs file, because otherwise --# it would normally find {64,32}bit crt[in].o. --LDFLAGS-pthread.so += -specs=$(objpfx)specs --before-compile += $(objpfx)specs --generated += specs --$(objpfx)specs: -- $(CC) $(CFLAGS) $(CPPFLAGS) -dumpspecs \ -- | sed 's,\(/usr/lib\(\|64\)/\|^\|\([^/a-z]\)\)\(crt[in]\.o\),\3./\4,g' > $@.new -- mv -f $@.new $@ --endif ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/Versions 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/Versions 2003-09-02 23:04:33.000000000 -0400 -@@ -0,0 +1,6 @@ -+libpthread { -+ GLIBC_2.3.3 { -+ # Changed PTHREAD_STACK_MIN. -+ pthread_attr_setstack; pthread_attr_setstacksize; -+ } -+} ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/bits/local_lim.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/bits/local_lim.h 2003-09-02 23:04:08.000000000 -0400 -@@ -0,0 +1,86 @@ -+/* Minimum guaranteed maximum values for system limits. Linux/SPARC version. -+ Copyright (C) 1993-1998, 2000, 2002, 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public License as -+ published by the Free Software Foundation; either version 2.1 of the -+ License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. */ -+ -+/* The kernel header pollutes the namespace with the NR_OPEN symbol -+ and defines LINK_MAX although filesystems have different maxima. A -+ similar thing is true for OPEN_MAX: the limit can be changed at -+ runtime and therefore the macro must not be defined. Remove this -+ after including the header if necessary. */ -+#ifndef NR_OPEN -+# define __undef_NR_OPEN -+#endif -+#ifndef LINK_MAX -+# define __undef_LINK_MAX -+#endif -+#ifndef OPEN_MAX -+# define __undef_OPEN_MAX -+#endif -+ -+/* The kernel sources contain a file with all the needed information. */ -+#include -+ -+/* Have to remove NR_OPEN? */ -+#ifdef __undef_NR_OPEN -+# undef NR_OPEN -+# undef __undef_NR_OPEN -+#endif -+/* Have to remove LINK_MAX? */ -+#ifdef __undef_LINK_MAX -+# undef LINK_MAX -+# undef __undef_LINK_MAX -+#endif -+/* Have to remove OPEN_MAX? */ -+#ifdef __undef_OPEN_MAX -+# undef OPEN_MAX -+# undef __undef_OPEN_MAX -+#endif -+ -+/* The number of data keys per process. */ -+#define _POSIX_THREAD_KEYS_MAX 128 -+/* This is the value this implementation supports. */ -+#define PTHREAD_KEYS_MAX 1024 -+ -+/* Controlling the iterations of destructors for thread-specific data. */ -+#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4 -+/* Number of iterations this implementation does. */ -+#define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS -+ -+/* The number of threads per process. */ -+#define _POSIX_THREAD_THREADS_MAX 64 -+/* This is the value this implementation supports. */ -+#define PTHREAD_THREADS_MAX 16384 -+ -+/* Maximum amount by which a process can descrease its asynchronous I/O -+ priority level. */ -+#define AIO_PRIO_DELTA_MAX 20 -+ -+/* Minimum size for a thread. We are free to choose a reasonable value. */ -+#define PTHREAD_STACK_MIN 24576 -+ -+/* Maximum number of POSIX timers available. */ -+#define TIMER_MAX 256 -+ -+/* Maximum number of timer expiration overruns. */ -+#define DELAYTIMER_MAX 2147483647 -+ -+/* Maximum tty name length. */ -+#define TTY_NAME_MAX 32 -+ -+/* Maximum login name length. This is arbitrary. */ -+#define LOGIN_NAME_MAX 256 ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h 2003-08-21 08:37:04.000000000 -0400 -@@ -0,0 +1,66 @@ -+/* bits/typesizes.h -- underlying types for *_t. Linux/SPARC version. -+ Copyright (C) 2002, 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _BITS_TYPES_H -+# error "Never include directly; use instead." -+#endif -+ -+#ifndef _BITS_TYPESIZES_H -+#define _BITS_TYPESIZES_H 1 -+ -+/* See for the meaning of these macros. This file exists so -+ that need not vary across different GNU platforms. */ -+ -+#define __DEV_T_TYPE __UQUAD_TYPE -+#define __UID_T_TYPE __U32_TYPE -+#define __GID_T_TYPE __U32_TYPE -+#define __INO_T_TYPE __ULONGWORD_TYPE -+#define __INO64_T_TYPE __UQUAD_TYPE -+#define __MODE_T_TYPE __U32_TYPE -+#define __NLINK_T_TYPE __U32_TYPE -+#define __OFF_T_TYPE __SLONGWORD_TYPE -+#define __OFF64_T_TYPE __SQUAD_TYPE -+#define __PID_T_TYPE __S32_TYPE -+#define __RLIM_T_TYPE __ULONGWORD_TYPE -+#define __RLIM64_T_TYPE __UQUAD_TYPE -+#define __BLKCNT_T_TYPE __SLONGWORD_TYPE -+#define __BLKCNT64_T_TYPE __SQUAD_TYPE -+#define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE -+#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE -+#define __FSFILCNT_T_TYPE __ULONGWORD_TYPE -+#define __FSFILCNT64_T_TYPE __UQUAD_TYPE -+#define __ID_T_TYPE __U32_TYPE -+#define __CLOCK_T_TYPE __SLONGWORD_TYPE -+#define __TIME_T_TYPE __SLONGWORD_TYPE -+#define __USECONDS_T_TYPE __U32_TYPE -+#define __SUSECONDS_T_TYPE __S32_TYPE -+#define __DADDR_T_TYPE __S32_TYPE -+#define __SWBLK_T_TYPE __SLONGWORD_TYPE -+#define __KEY_T_TYPE __S32_TYPE -+#define __CLOCKID_T_TYPE __S32_TYPE -+#define __TIMER_T_TYPE __S32_TYPE -+#define __BLKSIZE_T_TYPE __SLONGWORD_TYPE -+#define __FSID_T_TYPE struct { int __val[2]; } -+#define __SSIZE_T_TYPE __SWORD_TYPE -+ -+/* Number of descriptors that can fit in an `fd_set'. */ -+#define __FD_SETSIZE 1024 -+ -+ -+#endif /* bits/typesizes.h */ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h 2003-01-27 15:47:53.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -23,7 +23,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ -@@ -68,9 +68,12 @@ - # ifdef IS_IN_libpthread - # define CENABLE call __pthread_enable_asynccancel - # define CDISABLE call __pthread_disable_asynccancel --# else -+# elif !defined NOT_IN_libc - # define CENABLE call __libc_enable_asynccancel - # define CDISABLE call __libc_disable_asynccancel -+# else -+# define CENABLE call __librt_enable_asynccancel -+# define CDISABLE call __librt_disable_asynccancel - # endif - - #define COPY_ARGS_0 /* Nothing */ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile 2003-03-14 18:36:52.000000000 -0500 -@@ -0,0 +1,5 @@ -+# glibc makefile fragment for linuxthreads on sparc/sparc64. -+ -+ifeq ($(subdir),linuxthreads) -+libpthread-routines += ptw-sigprocmask -+endif ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/pt-sigsuspend.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/pt-sigsuspend.c 2003-04-01 19:10:44.000000000 -0500 -@@ -0,0 +1 @@ -+#include "../../ia64/pt-sigsuspend.c" ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h 2003-02-21 13:55:30.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -23,7 +23,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ -@@ -67,9 +67,12 @@ - # ifdef IS_IN_libpthread - # define CENABLE call __pthread_enable_asynccancel - # define CDISABLE call __pthread_disable_asynccancel --# else -+# elif !defined NOT_IN_libc - # define CENABLE call __libc_enable_asynccancel - # define CDISABLE call __libc_disable_asynccancel -+# else -+# define CENABLE call __librt_enable_asynccancel -+# define CDISABLE call __librt_disable_asynccancel - # endif - - #define COPY_ARGS_0 /* Nothing */ ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/Makefile 2003-02-21 13:55:30.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/Makefile 2003-04-12 11:39:43.000000000 -0400 -@@ -1,12 +1,3 @@ - ifeq ($(subdir),linuxthreads) - CFLAGS-pt-initfini.s = -g0 -fPIC -fno-inline-functions -fno-asynchronous-unwind-tables --# gcc -m64 has /usr/lib64/crti.o hardcoded in the specs file, because otherwise --# it would normally find 32bit crti.o. --LDFLAGS-pthread.so += -specs=$(objpfx)specs --before-compile += $(objpfx)specs --generated += specs --$(objpfx)specs: -- $(CC) $(CFLAGS) $(CPPFLAGS) -dumpspecs \ -- | sed 's,\(/usr/lib\(\|64\)/\|^\|\([^/a-z]\)\)\(crt[in]\.o\),\3./\4,g' > $@.new -- mv -f $@.new $@ - endif ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/pt-sigsuspend.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/pt-sigsuspend.c 2003-04-01 19:10:45.000000000 -0500 -@@ -0,0 +1 @@ -+#include "../ia64/pt-sigsuspend.c" ---- glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h 2003-02-12 16:45:53.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h 2003-08-21 08:37:04.000000000 -0400 -@@ -24,7 +24,7 @@ - # include - #endif - --#if !defined NOT_IN_libc || defined IS_IN_libpthread -+#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt - - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ -@@ -74,38 +74,54 @@ - # define POPARGS_6 POPARGS_5 movq 48(%rsp), %r9; - - /* We always have to align the stack before calling a function. */ --# define SAVESTK_0 subq $24, %rsp; -+# define SAVESTK_0 subq $24, %rsp;cfi_adjust_cfa_offset(24); - # define SAVESTK_1 SAVESTK_0 - # define SAVESTK_2 SAVESTK_1 --# define SAVESTK_3 subq $40, %rsp; -+# define SAVESTK_3 subq $40, %rsp;cfi_adjust_cfa_offset(40); - # define SAVESTK_4 SAVESTK_3 --# define SAVESTK_5 subq $56, %rsp; -+# define SAVESTK_5 subq $56, %rsp;cfi_adjust_cfa_offset(56); - # define SAVESTK_6 SAVESTK_5 - --# define RESTSTK_0 addq $24,%rsp; -+# define RESTSTK_0 addq $24,%rsp;cfi_adjust_cfa_offset(-24); - # define RESTSTK_1 RESTSTK_0 - # define RESTSTK_2 RESTSTK_1 --# define RESTSTK_3 addq $40, %rsp; -+# define RESTSTK_3 addq $40, %rsp;cfi_adjust_cfa_offset(-40); - # define RESTSTK_4 RESTSTK_3 --# define RESTSTK_5 addq $56, %rsp; -+# define RESTSTK_5 addq $56, %rsp;cfi_adjust_cfa_offset(-56); - # define RESTSTK_6 RESTSTK_5 - - # ifdef IS_IN_libpthread - # define CENABLE call __pthread_enable_asynccancel; - # define CDISABLE call __pthread_disable_asynccancel; - # define __local_multiple_threads __pthread_multiple_threads --# else -+# elif !defined NOT_IN_libc - # define CENABLE call __libc_enable_asynccancel; - # define CDISABLE call __libc_disable_asynccancel; - # define __local_multiple_threads __libc_multiple_threads -+# else -+# define CENABLE call __librt_enable_asynccancel@plt; -+# define CDISABLE call __librt_disable_asynccancel@plt; - # endif - --# ifndef __ASSEMBLER__ -+# if defined IS_IN_libpthread || !defined NOT_IN_libc -+# ifndef __ASSEMBLER__ - extern int __local_multiple_threads attribute_hidden; - # define SINGLE_THREAD_P \ - __builtin_expect (__local_multiple_threads == 0, 1) -+# else -+# define SINGLE_THREAD_P cmpl $0, __local_multiple_threads(%rip) -+# endif -+ - # else --# define SINGLE_THREAD_P cmpl $0, __local_multiple_threads(%rip) -+ -+# ifndef __ASSEMBLER__ -+# define SINGLE_THREAD_P \ -+ __builtin_expect (THREAD_GETMEM (THREAD_SELF, \ -+ p_header.data.multiple_threads) == 0, 1) -+# else -+# define SINGLE_THREAD_P cmpl $0, %fs:MULTIPLE_THREADS_OFFSET -+# endif -+ - # endif - - #elif !defined __ASSEMBLER__ ---- glibc-2.3.2/linuxthreads/sysdeps/x86_64/Makefile 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/x86_64/Makefile 2003-06-17 18:24:24.000000000 -0400 -@@ -0,0 +1,3 @@ -+ifeq ($(subdir),csu) -+gen-as-const-headers += tcb-offsets.sym -+endif ---- glibc-2.3.2/linuxthreads/sysdeps/x86_64/pt-machine.h 2002-12-17 19:57:21.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/x86_64/pt-machine.h 2003-08-21 08:37:05.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Machine-dependent pthreads configuration and inline functions. - x86-64 version. -- Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -28,7 +28,7 @@ - - - # ifndef PT_EI --# define PT_EI extern inline -+# define PT_EI extern inline __attribute__ ((always_inline)) - # endif - - extern long int testandset (int *spinlock); ---- glibc-2.3.2/linuxthreads/sysdeps/x86_64/tcb-offsets.sym 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/x86_64/tcb-offsets.sym 2003-06-17 18:23:41.000000000 -0400 -@@ -0,0 +1,4 @@ -+#include -+#include -+ -+MULTIPLE_THREADS_OFFSET offsetof (tcbhead_t, multiple_threads) ---- glibc-2.3.2/linuxthreads/sysdeps/x86_64/tls.h 2002-12-28 02:04:09.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/sysdeps/x86_64/tls.h 2003-08-21 08:37:05.000000000 -0400 -@@ -39,6 +39,7 @@ - thread descriptor used by libpthread. */ - dtv_t *dtv; - void *self; /* Pointer to the thread descriptor. */ -+ int multiple_threads; - } tcbhead_t; - #endif - ---- glibc-2.3.2/linuxthreads/tst-_res1.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-_res1.c 2003-07-22 19:07:47.000000000 -0400 -@@ -0,0 +1,69 @@ -+/* Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Jakub Jelinek , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+/* Test whether _res in glibc 2.1.x and earlier (before __res_state() -+ was introduced) works. Portable programs should never do the -+ dirty things below. */ -+ -+#include -+#include -+#include -+#include -+ -+void *tf (void *resp) -+{ -+ if (resp == &_res || resp == __res_state ()) -+ abort (); -+ _res.retry = 24; -+ return NULL; -+} -+ -+void do_test (struct __res_state *resp) -+{ -+ if (resp != &_res || resp != __res_state ()) -+ abort (); -+ if (_res.retry != 12) -+ abort (); -+} -+ -+int main (void) -+{ -+#undef _res -+ extern struct __res_state _res; -+ pthread_t th; -+ -+ _res.retry = 12; -+ if (pthread_create (&th, NULL, tf, &_res) != 0) -+ { -+ puts ("create failed"); -+ exit (1); -+ } -+ -+ do_test (&_res); -+ -+ if (pthread_join (th, NULL) != 0) -+ { -+ puts ("join failed"); -+ exit (1); -+ } -+ -+ do_test (&_res); -+ -+ exit (0); -+} ---- glibc-2.3.2/linuxthreads/tst-_res1mod1.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-_res1mod1.c 2003-07-22 19:07:47.000000000 -0400 -@@ -0,0 +1,23 @@ -+/* Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Jakub Jelinek , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#undef _res -+ -+struct __res_state _res; ---- glibc-2.3.2/linuxthreads/tst-_res1mod2.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-_res1mod2.c 2003-07-22 19:07:47.000000000 -0400 -@@ -0,0 +1 @@ -+/* Nothing. */ ---- glibc-2.3.2/linuxthreads/tst-attr1.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-attr1.c 2003-09-18 15:15:05.000000000 -0400 -@@ -0,0 +1,358 @@ -+/* pthread_getattr_np test. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Jakub Jelinek , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+ -+static void * -+tf (void *arg) -+{ -+ pthread_attr_t a, *ap, a2; -+ int err; -+ void *result = NULL; -+ -+ if (arg == NULL) -+ { -+ ap = &a2; -+ err = pthread_attr_init (ap); -+ if (err) -+ { -+ error (0, err, "pthread_attr_init failed"); -+ return tf; -+ } -+ } -+ else -+ ap = (pthread_attr_t *) arg; -+ -+ err = pthread_getattr_np (pthread_self (), &a); -+ if (err) -+ { -+ error (0, err, "pthread_getattr_np failed"); -+ result = tf; -+ } -+ -+ int detachstate1, detachstate2; -+ err = pthread_attr_getdetachstate (&a, &detachstate1); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getdetachstate failed"); -+ result = tf; -+ } -+ else -+ { -+ err = pthread_attr_getdetachstate (ap, &detachstate2); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getdetachstate failed"); -+ result = tf; -+ } -+ else if (detachstate1 != detachstate2) -+ { -+ error (0, 0, "detachstate differs %d != %d", -+ detachstate1, detachstate2); -+ result = tf; -+ } -+ } -+ -+ void *stackaddr; -+ size_t stacksize; -+ err = pthread_attr_getstack (&a, &stackaddr, &stacksize); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getstack failed"); -+ result = tf; -+ } -+ else if ((void *) &a < stackaddr -+ || (void *) &a >= stackaddr + stacksize) -+ { -+ error (0, 0, "pthread_attr_getstack returned range does not cover thread's stack"); -+ result = tf; -+ } -+ else -+ printf ("thread stack %p-%p (0x%zx)\n", stackaddr, stackaddr + stacksize, -+ stacksize); -+ -+ size_t guardsize1, guardsize2; -+ err = pthread_attr_getguardsize (&a, &guardsize1); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getguardsize failed"); -+ result = tf; -+ } -+ else -+ { -+ err = pthread_attr_getguardsize (ap, &guardsize2); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getguardsize failed"); -+ result = tf; -+ } -+ else if (guardsize1 != guardsize2) -+ { -+ error (0, 0, "guardsize differs %zd != %zd", -+ guardsize1, guardsize2); -+ result = tf; -+ } -+ else -+ printf ("thread guardsize %zd\n", guardsize1); -+ } -+ -+ int scope1, scope2; -+ err = pthread_attr_getscope (&a, &scope1); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getscope failed"); -+ result = tf; -+ } -+ else -+ { -+ err = pthread_attr_getscope (ap, &scope2); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getscope failed"); -+ result = tf; -+ } -+ else if (scope1 != scope2) -+ { -+ error (0, 0, "scope differs %d != %d", -+ scope1, scope2); -+ result = tf; -+ } -+ } -+ -+ err = pthread_attr_destroy (&a); -+ if (err) -+ { -+ error (0, err, "pthread_attr_destroy failed"); -+ result = tf; -+ } -+ -+ if (ap == &a2) -+ { -+ err = pthread_attr_destroy (ap); -+ if (err) -+ { -+ error (0, err, "pthread_attr_destroy failed"); -+ result = tf; -+ } -+ } -+ -+ return result; -+} -+ -+ -+static int -+do_test (void) -+{ -+ int result = 0; -+ pthread_attr_t a; -+ -+ int err = pthread_attr_init (&a); -+ if (err) -+ { -+ error (0, err, "pthread_attr_init failed"); -+ result = 1; -+ } -+ -+ err = pthread_attr_destroy (&a); -+ if (err) -+ { -+ error (0, err, "pthread_attr_destroy failed"); -+ result = 1; -+ } -+ -+ err = pthread_getattr_np (pthread_self (), &a); -+ if (err) -+ { -+ error (0, err, "pthread_getattr_np failed"); -+ result = 1; -+ } -+ -+ int detachstate; -+ err = pthread_attr_getdetachstate (&a, &detachstate); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getdetachstate failed"); -+ result = 1; -+ } -+ else if (detachstate != PTHREAD_CREATE_JOINABLE) -+ { -+ error (0, 0, "initial thread not joinable"); -+ result = 1; -+ } -+ -+ void *stackaddr; -+ size_t stacksize; -+ err = pthread_attr_getstack (&a, &stackaddr, &stacksize); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getstack failed"); -+ result = 1; -+ } -+ else if ((void *) &a < stackaddr -+ || (void *) &a >= stackaddr + stacksize) -+ { -+ error (0, 0, "pthread_attr_getstack returned range does not cover main's stack"); -+ result = 1; -+ } -+ else -+ printf ("initial thread stack %p-%p (0x%zx)\n", stackaddr, -+ stackaddr + stacksize, stacksize); -+ -+ size_t guardsize; -+ err = pthread_attr_getguardsize (&a, &guardsize); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getguardsize failed"); -+ result = 1; -+ } -+ else if (guardsize != 0) -+ { -+ error (0, 0, "pthread_attr_getguardsize returned %zd != 0", -+ guardsize); -+ result = 1; -+ } -+ -+ int scope; -+ err = pthread_attr_getscope (&a, &scope); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getscope failed"); -+ result = 1; -+ } -+ else if (scope != PTHREAD_SCOPE_SYSTEM) -+ { -+ error (0, 0, "pthread_attr_getscope returned %d != PTHREAD_SCOPE_SYSTEM", -+ scope); -+ result = 1; -+ } -+ -+ int inheritsched; -+ err = pthread_attr_getinheritsched (&a, &inheritsched); -+ if (err) -+ { -+ error (0, err, "pthread_attr_getinheritsched failed"); -+ result = 1; -+ } -+ else if (inheritsched != PTHREAD_INHERIT_SCHED) -+ { -+ error (0, 0, "pthread_attr_getinheritsched returned %d != PTHREAD_INHERIT_SCHED", -+ inheritsched); -+ result = 1; -+ } -+ -+ err = pthread_attr_destroy (&a); -+ if (err) -+ { -+ error (0, err, "pthread_attr_destroy failed"); -+ result = 1; -+ } -+ -+ pthread_t th; -+ err = pthread_create (&th, NULL, tf, NULL); -+ if (err) -+ { -+ error (0, err, "pthread_create #1 failed"); -+ result = 1; -+ } -+ else -+ { -+ void *ret; -+ err = pthread_join (th, &ret); -+ if (err) -+ { -+ error (0, err, "pthread_join #1 failed"); -+ result = 1; -+ } -+ else if (ret != NULL) -+ result = 1; -+ } -+ -+ err = pthread_attr_init (&a); -+ if (err) -+ { -+ error (0, err, "pthread_attr_init failed"); -+ result = 1; -+ } -+ -+ err = pthread_create (&th, &a, tf, &a); -+ if (err) -+ { -+ error (0, err, "pthread_create #2 failed"); -+ result = 1; -+ } -+ else -+ { -+ void *ret; -+ err = pthread_join (th, &ret); -+ if (err) -+ { -+ error (0, err, "pthread_join #2 failed"); -+ result = 1; -+ } -+ else if (ret != NULL) -+ result = 1; -+ } -+ -+ err = pthread_attr_setguardsize (&a, 16 * sysconf (_SC_PAGESIZE)); -+ if (err) -+ { -+ error (0, err, "pthread_attr_setguardsize failed"); -+ result = 1; -+ } -+ -+ err = pthread_create (&th, &a, tf, &a); -+ if (err) -+ { -+ error (0, err, "pthread_create #3 failed"); -+ result = 1; -+ } -+ else -+ { -+ void *ret; -+ err = pthread_join (th, &ret); -+ if (err) -+ { -+ error (0, err, "pthread_join #3 failed"); -+ result = 1; -+ } -+ else if (ret != NULL) -+ result = 1; -+ } -+ -+ err = pthread_attr_destroy (&a); -+ if (err) -+ { -+ error (0, err, "pthread_attr_destroy failed"); -+ result = 1; -+ } -+ -+ return result; -+} -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" ---- glibc-2.3.2/linuxthreads/tst-cancel-wrappers.sh 2003-01-14 19:55:09.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-cancel-wrappers.sh 2003-08-21 08:37:03.000000000 -0400 -@@ -27,8 +27,6 @@ - C["creat"]=1 - C["fcntl"]=1 - C["fsync"]=1 --C["llseek"]=1 --C["lseek"]=1 - C["msgrcv"]=1 - C["msgsnd"]=1 - C["msync"]=1 ---- glibc-2.3.2/linuxthreads/tst-cancel.c 2001-04-12 17:55:11.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/tst-cancel.c 2003-08-21 08:37:03.000000000 -0400 -@@ -12,6 +12,7 @@ - pthread_barrier_t bar; - - -+#ifdef NOT_YET - static void - cleanup (void *arg) - { -@@ -52,7 +53,7 @@ - return NULL; - pthread_cleanup_pop (0); - } -- -+#endif - - /* This does not work yet. */ - volatile int cleanupokcnt; -@@ -63,7 +64,7 @@ - ++cleanupokcnt; - } - -- -+#ifdef NOT_YET - static void * - t3 (void *arg) - { -@@ -72,7 +73,7 @@ - pthread_exit (NULL); - pthread_cleanup_pop (0); - } -- -+#endif - - static void - innerok (int a) -@@ -170,7 +171,7 @@ - err = pthread_create (&td, NULL, t4, (void *) 7); - if (err != 0) - { -- printf ("cannot create thread t3: %s\n", strerror (err)); -+ printf ("cannot create thread t4: %s\n", strerror (err)); - exit (1); - } - ---- glibc-2.3.2/linuxthreads/tst-cancel4.c 2002-12-28 02:49:20.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-cancel4.c 2003-03-15 15:02:09.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (C) 2002 Free Software Foundation, Inc. -+/* Copyright (C) 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2002. - -@@ -154,7 +154,7 @@ - exit (1); - } - -- sleep (10000000); -+ sleep (1000000); - - printf ("%s: sleep returns\n", __FUNCTION__); - ---- glibc-2.3.2/linuxthreads/tst-cancel7.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-cancel7.c 2003-04-01 19:10:44.000000000 -0500 -@@ -0,0 +1,111 @@ -+/* Test for pthread cancellation of mutex blocks. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Jakub Jelinek , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+#include -+ -+pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; -+pthread_barrier_t b; -+int value = 0; -+ -+static void * -+tf (void *arg) -+{ -+ int r = pthread_barrier_wait (&b); -+ if (r != 0 && r != PTHREAD_BARRIER_SERIAL_THREAD) -+ { -+ printf ("%s: barrier_wait failed\n", __FUNCTION__); -+ exit (1); -+ } -+ -+ pthread_mutex_lock (&lock); -+ ++value; -+ pthread_testcancel (); -+ ++value; -+ pthread_mutex_unlock (&lock); -+ return NULL; -+} -+ -+ -+static int -+do_test (void) -+{ -+ pthread_mutex_lock (&lock); -+ -+ if (pthread_barrier_init (&b, NULL, 2) != 0) -+ { -+ puts ("barrier init failed"); -+ return 1; -+ } -+ -+ pthread_t th; -+ if (pthread_create (&th, NULL, tf, NULL) != 0) -+ { -+ puts ("pthread_create failed"); -+ return 1; -+ } -+ -+ int r = pthread_barrier_wait (&b); -+ if (r != 0 && r != PTHREAD_BARRIER_SERIAL_THREAD) -+ { -+ printf ("%s: barrier_wait failed\n", __FUNCTION__); -+ exit (1); -+ } -+ -+ if (pthread_cancel (th) != 0) -+ { -+ puts ("pthread_cancel failed"); -+ return 1; -+ } -+ -+ pthread_mutex_unlock (&lock); -+ -+ void *status; -+ if (pthread_join (th, &status) != 0) -+ { -+ puts ("join failed"); -+ return 1; -+ } -+ -+ if (status != PTHREAD_CANCELED) -+ { -+ puts ("thread not canceled"); -+ return 1; -+ } -+ -+ if (value == 0) -+ { -+ puts ("thread cancelled in the pthread_mutex_lock call"); -+ return 1; -+ } -+ -+ if (value != 1) -+ { -+ puts ("thread not cancelled in pthread_testcancel call"); -+ return 1; -+ } -+ -+ return 0; -+} -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" ---- glibc-2.3.2/linuxthreads/tst-tls1.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-tls1.c 2003-09-01 20:29:30.000000000 -0400 -@@ -0,0 +1,91 @@ -+/* Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Jakub Jelinek , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+/* Check alignment, overlapping and layout of TLS variables. */ -+#include -+#include -+#include -+#include -+#include -+ -+#include "tst-tls1.h" -+ -+#ifdef TLS_REGISTER -+ -+struct tls_obj tls_registry[64]; -+ -+static int -+tls_addr_cmp (const void *a, const void *b) -+{ -+ if (((struct tls_obj *)a)->addr < ((struct tls_obj *)b)->addr) -+ return -1; -+ if (((struct tls_obj *)a)->addr > ((struct tls_obj *)b)->addr) -+ return 1; -+ return 0; -+} -+ -+static int -+do_test (void) -+{ -+ size_t cnt, i; -+ int res = 0; -+ uintptr_t min_addr = ~(uintptr_t) 0, max_addr = 0; -+ -+ for (cnt = 0; tls_registry[cnt].name; ++cnt); -+ -+ qsort (tls_registry, cnt, sizeof (struct tls_obj), tls_addr_cmp); -+ -+ for (i = 0; i < cnt; ++i) -+ { -+ printf ("%s = %p, size %zd, align %zd", -+ tls_registry[i].name, (void *) tls_registry[i].addr, -+ tls_registry[i].size, tls_registry[i].align); -+ if (tls_registry[i].addr & (tls_registry[i].align - 1)) -+ { -+ fputs (", WRONG ALIGNMENT", stdout); -+ res = 1; -+ } -+ if (i > 0 -+ && (tls_registry[i - 1].addr + tls_registry[i - 1].size -+ > tls_registry[i].addr)) -+ { -+ fputs (", ADDRESS OVERLAP", stdout); -+ res = 1; -+ } -+ puts (""); -+ min_addr = MIN (tls_registry[i].addr, min_addr); -+ max_addr = MAX (tls_registry[i].addr + tls_registry[i].size, -+ max_addr); -+ } -+ -+ if (cnt > 1) -+ printf ("Initial TLS used block size %zd\n", -+ (size_t) (max_addr - min_addr)); -+ return res; -+} -+ -+#define TEST_FUNCTION do_test () -+ -+#else -+ -+#define TEST_FUNCTION 0 -+ -+#endif -+ -+#include "../test-skeleton.c" ---- glibc-2.3.2/linuxthreads/tst-tls1.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-tls1.h 2003-09-01 20:29:30.000000000 -0400 -@@ -0,0 +1,28 @@ -+#include -+#include -+#include -+ -+#if USE_TLS && HAVE___THREAD -+ -+struct tls_obj -+{ -+ const char *name; -+ uintptr_t addr; -+ size_t size; -+ size_t align; -+}; -+extern struct tls_obj tls_registry[]; -+ -+#define TLS_REGISTER(x) \ -+static void __attribute__((constructor)) \ -+tls_register_##x (void) \ -+{ \ -+ size_t i; \ -+ for (i = 0; tls_registry[i].name; ++i); \ -+ tls_registry[i].name = #x; \ -+ tls_registry[i].addr = (uintptr_t) &x; \ -+ tls_registry[i].size = sizeof (x); \ -+ tls_registry[i].align = __alignof__ (x); \ -+} -+ -+#endif ---- glibc-2.3.2/linuxthreads/tst-tls1mod.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-tls1mod.c 2003-09-01 20:29:31.000000000 -0400 -@@ -0,0 +1,6 @@ -+#include -+ -+#ifdef TLS_REGISTER -+/* Ensure tls_registry is exported from the binary. */ -+void *tst_tls1mod attribute_hidden = tls_registry; -+#endif ---- glibc-2.3.2/linuxthreads/tst-tls1moda.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-tls1moda.c 2003-09-01 20:29:30.000000000 -0400 -@@ -0,0 +1,6 @@ -+#include -+ -+#ifdef TLS_REGISTER -+static __thread char a [32] __attribute__ ((aligned (64))); -+TLS_REGISTER (a) -+#endif ---- glibc-2.3.2/linuxthreads/tst-tls1modb.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-tls1modb.c 2003-09-01 20:29:31.000000000 -0400 -@@ -0,0 +1,6 @@ -+#include -+ -+#ifdef TLS_REGISTER -+static __thread int b; -+TLS_REGISTER (b) -+#endif ---- glibc-2.3.2/linuxthreads/tst-tls1modc.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-tls1modc.c 2003-09-01 20:29:31.000000000 -0400 -@@ -0,0 +1,6 @@ -+#include -+ -+#ifdef TLS_REGISTER -+static __thread int c; -+TLS_REGISTER (c) -+#endif ---- glibc-2.3.2/linuxthreads/tst-tls1modd.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-tls1modd.c 2003-09-01 20:29:31.000000000 -0400 -@@ -0,0 +1,6 @@ -+#include -+ -+#ifdef TLS_REGISTER -+static __thread int d; -+TLS_REGISTER (d) -+#endif ---- glibc-2.3.2/linuxthreads/tst-tls1mode.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-tls1mode.c 2003-09-01 20:29:31.000000000 -0400 -@@ -0,0 +1,8 @@ -+#include -+ -+#ifdef TLS_REGISTER -+static __thread int e1 = 24; -+static __thread char e2 [32] __attribute__ ((aligned (64))); -+TLS_REGISTER (e1) -+TLS_REGISTER (e2) -+#endif ---- glibc-2.3.2/linuxthreads/tst-tls1modf.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-tls1modf.c 2003-09-01 20:29:31.000000000 -0400 -@@ -0,0 +1,9 @@ -+#include -+ -+#ifdef TLS_REGISTER -+char tst_tls1modf[60] attribute_hidden = { 26 }; -+static __thread int f1 = 24; -+static __thread char f2 [32] __attribute__ ((aligned (64))); -+TLS_REGISTER (f1) -+TLS_REGISTER (f2) -+#endif ---- glibc-2.3.2/linuxthreads/tst-tls2.sh 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads/tst-tls2.sh 2003-09-01 20:29:31.000000000 -0400 -@@ -0,0 +1,53 @@ -+#!/bin/sh -+ -+common_objpfx=$1; shift -+elf_objpfx=$1; shift -+rtld_installed_name=$1; shift -+logfile=$common_objpfx/linuxthreads/tst-tls2.out -+ -+# We have to find libc and linuxthreads -+library_path=${common_objpfx}:${common_objpfx}linuxthreads -+tst_tls1="${elf_objpfx}${rtld_installed_name} --library-path ${library_path} \ -+ ${common_objpfx}/linuxthreads/tst-tls1" -+ -+LC_ALL=C -+export LC_ALL -+LANG=C -+export LANG -+ -+> $logfile -+fail=0 -+ -+for aligned in a e f; do -+ echo "preload tst-tls1mod{$aligned,b,c,d}.so" >> $logfile -+ echo "===============" >> $logfile -+ LD_PRELOAD=`echo ${common_objpfx}linuxthreads/tst-tls1mod{$aligned,b,c,d}.so \ -+ | sed 's/:$//;s/: /:/g'` ${tst_tls1} >> $logfile || fail=1 -+ echo >> $logfile -+ -+ echo "preload tst-tls1mod{b,$aligned,c,d}.so" >> $logfile -+ echo "===============" >> $logfile -+ LD_PRELOAD=`echo ${common_objpfx}linuxthreads/tst-tls1mod{b,$aligned,c,d}.so \ -+ | sed 's/:$//;s/: /:/g'` ${tst_tls1} >> $logfile || fail=1 -+ echo >> $logfile -+ -+ echo "preload tst-tls1mod{b,c,d,$aligned}.so" >> $logfile -+ echo "===============" >> $logfile -+ LD_PRELOAD=`echo ${common_objpfx}linuxthreads/tst-tls1mod{b,c,d,$aligned}.so \ -+ | sed 's/:$//;s/: /:/g'` ${tst_tls1} >> $logfile || fail=1 -+ echo >> $logfile -+done -+ -+echo "preload tst-tls1mod{d,a,b,c,e}" >> $logfile -+echo "===============" >> $logfile -+LD_PRELOAD=`echo ${common_objpfx}linuxthreads/tst-tls1mod{d,a,b,c,e}.so \ -+ | sed 's/:$//;s/: /:/g'` ${tst_tls1} >> $logfile || fail=1 -+echo >> $logfile -+ -+echo "preload tst-tls1mod{d,a,b,e,f}" >> $logfile -+echo "===============" >> $logfile -+LD_PRELOAD=`echo ${common_objpfx}linuxthreads/tst-tls1mod{d,a,b,e,f}.so \ -+ | sed 's/:$//;s/: /:/g'` ${tst_tls1} >> $logfile || fail=1 -+echo >> $logfile -+ -+exit $fail ---- glibc-2.3.2/linuxthreads/tststack.c 2002-08-27 00:52:35.000000000 -0400 -+++ glibc-2.3.2/linuxthreads/tststack.c 2003-09-19 22:37:04.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Tests for variable stack size handling. -- Copyright (C) 2000 Free Software Foundation, Inc. -+ Copyright (C) 2000, 2003 Free Software Foundation, Inc. - Contributed by Ulrich Drepper , 2000. - - The GNU C Library is free software; you can redistribute it and/or -@@ -20,6 +20,8 @@ - #include - #include - #include -+#include -+#include - - static void *f1 (void *); - static void *f2 (void *); -@@ -34,7 +36,7 @@ - void *res2; - - pthread_attr_init (&attr); -- if (pthread_attr_setstacksize (&attr, 70*1024) != 0) -+ if (pthread_attr_setstacksize (&attr, MAX (70*1024, PTHREAD_STACK_MIN)) != 0) - { - puts ("invalid stack size"); - return 1; ---- glibc-2.3.2/linuxthreads_db/ChangeLog 2003-01-30 05:15:38.000000000 -0500 -+++ glibc-2.3.2/linuxthreads_db/ChangeLog 2003-09-19 22:37:04.000000000 -0400 -@@ -1,3 +1,25 @@ -+2003-08-18 Daniel Jacobowitz -+ -+ * td_thr_getfpregs.c (td_thr_getfpregs): Use the main thread if -+ the descriptor is uninitialized. -+ * td_thr_getgregs.c (td_thr_getgregs): Likewise. -+ -+2003-03-15 Roland McGrath -+ -+ * thread_db.h (td_err_e): Add TD_NOTLS and TD_TLSDEFER. -+ (td_thr_tlsbase): Declare it. -+ * td_thr_tlsbase.c: New file. -+ * Makefile (libthread_db-routines): Add it. -+ * Versions (libthread_db: GLIBC_2.3.3): New set, add td_thr_tlsbase. -+ * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Use td_thr_tlsbase. -+ -+2003-02-27 Roland McGrath -+ -+ * td_thr_tls_get_addr.c (td_thr_tls_get_addr): Handle TLS_DTV_AT_TP. -+ -+ * td_ta_thr_iter.c (handle_descr) [!defined USE_TLS || !TLS_DTV_AT_TP]: -+ Conditionalize p_header use on this. -+ - 2003-01-29 Roland McGrath - - * td_ta_new.c (td_ta_new): Cap the `sizeof_descr' value read from the ---- glibc-2.3.2/linuxthreads_db/Makefile 2003-01-05 05:00:22.000000000 -0500 -+++ glibc-2.3.2/linuxthreads_db/Makefile 2003-03-18 16:46:07.000000000 -0500 -@@ -39,7 +39,8 @@ - td_thr_event_enable td_thr_set_event \ - td_thr_clear_event td_thr_event_getmsg \ - td_ta_set_event td_ta_event_getmsg \ -- td_ta_clear_event td_symbol_list td_thr_tls_get_addr -+ td_ta_clear_event td_symbol_list \ -+ td_thr_tlsbase td_thr_tls_get_addr - - libthread_db-inhibit-o = $(filter-out .os,$(object-suffixes)) - ---- glibc-2.3.2/linuxthreads_db/Versions 2002-07-10 19:08:40.000000000 -0400 -+++ glibc-2.3.2/linuxthreads_db/Versions 2003-03-18 16:46:07.000000000 -0500 -@@ -18,4 +18,7 @@ - GLIBC_2.3 { - td_thr_tls_get_addr; - } -+ GLIBC_2.3.3 { -+ td_thr_tlsbase; -+ } - } ---- glibc-2.3.2/linuxthreads_db/td_ta_thr_iter.c 2002-07-15 23:34:26.000000000 -0400 -+++ glibc-2.3.2/linuxthreads_db/td_ta_thr_iter.c 2003-03-15 15:02:11.000000000 -0500 -@@ -1,5 +1,5 @@ - /* Iterate over a process's threads. -- Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1999,2000,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -40,7 +40,9 @@ - memset (&pds, '\0', sizeof (pds)); - - /* Empty thread descriptor the thread library would create. */ -+#if !defined USE_TLS || !TLS_DTV_AT_TP - pds.p_header.data.self = &pds; -+#endif - pds.p_nextlive = pds.p_prevlive = &pds; - pds.p_tid = PTHREAD_THREADS_MAX; - /* The init code also sets up p_lock, p_errnop, p_herrnop, and ---- glibc-2.3.2/linuxthreads_db/td_thr_getfpregs.c 2002-07-15 23:25:16.000000000 -0400 -+++ glibc-2.3.2/linuxthreads_db/td_thr_getfpregs.c 2003-09-19 22:37:04.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Get a thread's floating-point register set. -- Copyright (C) 1999, 2001 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -30,7 +30,10 @@ - - if (th->th_unique == NULL) - { -- memset (regset, '\0', sizeof (*regset)); -+ /* No data yet. Use the main thread. */ -+ pid_t pid = ps_getpid (th->th_ta_p->ph); -+ if (ps_lgetfpregs (th->th_ta_p->ph, pid, regset) != PS_OK) -+ return TD_ERR; - return TD_OK; - } - ---- glibc-2.3.2/linuxthreads_db/td_thr_getgregs.c 2002-07-15 23:24:27.000000000 -0400 -+++ glibc-2.3.2/linuxthreads_db/td_thr_getgregs.c 2003-09-19 22:37:04.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Get a thread's general register set. -- Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. -+ Copyright (C) 1999, 2000, 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1999. - -@@ -30,8 +30,10 @@ - - if (th->th_unique == NULL) - { -- /* No data yet. */ -- memset (gregs, '\0', sizeof (prgregset_t)); -+ /* No data yet. Use the main thread. */ -+ pid_t pid = ps_getpid (th->th_ta_p->ph); -+ if (ps_lgetregs (th->th_ta_p->ph, pid, gregs) != PS_OK) -+ return TD_ERR; - return TD_OK; - } - ---- glibc-2.3.2/linuxthreads_db/td_thr_tls_get_addr.c 2002-09-28 13:41:11.000000000 -0400 -+++ glibc-2.3.2/linuxthreads_db/td_thr_tls_get_addr.c 2003-03-18 16:46:07.000000000 -0500 -@@ -1,5 +1,5 @@ - /* Get address of thread local variable. -- Copyright (C) 2002 Free Software Foundation, Inc. -+ Copyright (C) 2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2002. - -@@ -18,14 +18,9 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -- --#include "link.h" -+#include - #include "thread_dbP.h" - --/* Value used for dtv entries for which the allocation is delayed. */ --# define TLS_DTV_UNALLOCATED ((void *) -1l) -- -- - td_err_e - td_thr_tls_get_addr (const td_thrhandle_t *th __attribute__ ((unused)), - void *map_address __attribute__ ((unused)), -@@ -33,37 +28,17 @@ - void **address __attribute__ ((unused))) - { - #if USE_TLS -- size_t modid; -- union dtv pdtv, *dtvp; -- -- LOG ("td_thr_tls_get_addr"); -- -- /* Get the DTV pointer from the thread descriptor. */ -- if (ps_pdread (th->th_ta_p->ph, -- &((struct _pthread_descr_struct *) th->th_unique)->p_header.data.dtvp, -- &dtvp, sizeof dtvp) != PS_OK) -- return TD_ERR; /* XXX Other error value? */ -- - /* Read the module ID from the link_map. */ -+ size_t modid; - if (ps_pdread (th->th_ta_p->ph, - &((struct link_map *) map_address)->l_tls_modid, - &modid, sizeof modid) != PS_OK) - return TD_ERR; /* XXX Other error value? */ - -- /* Get the corresponding entry in the DTV. */ -- if (ps_pdread (th->th_ta_p->ph, dtvp + modid, -- &pdtv, sizeof (union dtv)) != PS_OK) -- return TD_ERR; /* XXX Other error value? */ -- -- /* It could be that the memory for this module is not allocated for -- the given thread. */ -- if (pdtv.pointer == TLS_DTV_UNALLOCATED) -- /* There is not much we can do. */ -- return TD_NOTALLOC; -- -- *address = (char *) pdtv.pointer + offset; -- -- return TD_OK; -+ td_err_e result = td_thr_tlsbase (th, modid, address); -+ if (result == TD_OK) -+ *address += offset; -+ return result; - #else - return TD_ERR; - #endif ---- glibc-2.3.2/linuxthreads_db/td_thr_tlsbase.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/linuxthreads_db/td_thr_tlsbase.c 2003-03-15 18:09:01.000000000 -0500 -@@ -0,0 +1,67 @@ -+/* Locate TLS data for a thread. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include "thread_dbP.h" -+ -+/* Value used for dtv entries for which the allocation is delayed. */ -+# define TLS_DTV_UNALLOCATED ((void *) -1l) -+ -+td_err_e -+td_thr_tlsbase (const td_thrhandle_t *th, -+ unsigned long int modid, -+ psaddr_t *base) -+{ -+ if (modid < 1) -+ return TD_NOTLS; -+ -+#if USE_TLS -+ union dtv pdtv, *dtvp; -+ -+ LOG ("td_thr_tlsbase"); -+ -+ psaddr_t dtvpp = th->th_unique; -+#if TLS_TCB_AT_TP -+ dtvpp += offsetof (struct _pthread_descr_struct, p_header.data.dtvp); -+#elif TLS_DTV_AT_TP -+ dtvpp += TLS_PRE_TCB_SIZE + offsetof (tcbhead_t, dtv); -+#else -+# error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined." -+#endif -+ -+ /* Get the DTV pointer from the thread descriptor. */ -+ if (ps_pdread (th->th_ta_p->ph, dtvpp, &dtvp, sizeof dtvp) != PS_OK) -+ return TD_ERR; /* XXX Other error value? */ -+ -+ /* Get the corresponding entry in the DTV. */ -+ if (ps_pdread (th->th_ta_p->ph, dtvp + modid, -+ &pdtv, sizeof (union dtv)) != PS_OK) -+ return TD_ERR; /* XXX Other error value? */ -+ -+ /* It could be that the memory for this module is not allocated for -+ the given thread. */ -+ if (pdtv.pointer == TLS_DTV_UNALLOCATED) -+ return TD_TLSDEFER; -+ -+ *base = (char *) pdtv.pointer; -+ -+ return TD_OK; -+#else -+ return TD_ERR; -+#endif -+} ---- glibc-2.3.2/linuxthreads_db/thread_db.h 2002-09-24 19:33:07.000000000 -0400 -+++ glibc-2.3.2/linuxthreads_db/thread_db.h 2003-03-18 16:46:07.000000000 -0500 -@@ -1,4 +1,5 @@ --/* Copyright (C) 1999, 2001, 2002 Free Software Foundation, Inc. -+/* thread_db.h -- interface to libthread_db.so library for debugging -lpthread -+ Copyright (C) 1999,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -52,8 +53,10 @@ - TD_MALLOC, /* Out of memory. */ - TD_PARTIALREG, /* Not entire register set was read or written. */ - TD_NOXREGS, /* X register set not available for given thread. */ -- TD_NOTALLOC, /* TLS memory not yet allocated. */ -- TD_VERSION /* Version if libpthread and libthread_db do not match. */ -+ TD_TLSDEFER, /* Thread has not yet allocated TLS for given module. */ -+ TD_NOTALLOC = TD_TLSDEFER, -+ TD_VERSION, /* Version if libpthread and libthread_db do not match. */ -+ TD_NOTLS /* There is TLS segment in the given module. */ - } td_err_e; - - -@@ -402,6 +405,11 @@ - const void *__addr); - - -+/* Get address of the given module's TLS storage area for the given thread. */ -+extern td_err_e td_thr_tlsbase (const td_thrhandle_t *__th, -+ unsigned long int __modid, -+ psaddr_t *__base); -+ - /* Get address of thread local variable. */ - extern td_err_e td_thr_tls_get_addr (const td_thrhandle_t *__th, - void *__map_address, size_t __offset, ---- glibc-2.3.2/locale/Makefile 2002-10-17 13:05:53.000000000 -0400 -+++ glibc-2.3.2/locale/Makefile 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1991,92,1995-1999,2000,2001,2002 Free Software Foundation, Inc. -+# Copyright (C) 1991,1992,1995-2002,2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -42,7 +42,7 @@ - categories = ctype messages monetary numeric time paper name \ - address telephone measurement identification collate - aux = $(categories:%=lc-%) $(categories:%=C-%) SYS_libc C_name \ -- xlocale localename global-locale -+ xlocale localename global-locale coll-lookup - others = localedef locale - #others-static = localedef locale - install-bin = localedef locale ---- glibc-2.3.2/locale/Versions 2002-08-27 21:04:45.000000000 -0400 -+++ glibc-2.3.2/locale/Versions 2003-03-15 15:02:11.000000000 -0500 -@@ -59,13 +59,12 @@ - iswcntrl_l; iswctype_l; iswdigit_l; iswgraph_l; iswlower_l; - iswprint_l; iswpunct_l; iswspace_l; iswupper_l; iswxdigit_l; - isxdigit_l; strcasecmp_l; strcoll_l; strfmon_l; strncasecmp_l; -- strtod_l; strtof_l; strtol_l; strtold_l; strtoll_l; strtoul_l; -- strtoull_l; strxfrm_l; toascii_l; tolower_l; toupper_l; -+ strtod_l; strtof_l; strtol_l; strtold_l; strtoul_l; -+ strxfrm_l; toascii_l; tolower_l; toupper_l; - towctrans_l; towlower_l; towupper_l; wcscasecmp_l; wcscoll_l; - wcsncasecmp_l; wcstod_l; wcstof_l; wcstol_l; wcstold_l; - wcstoll_l; wcstoul_l; wcstoull_l; wcsxfrm_l; wctype_l; - wctrans_l; nl_langinfo_l; -- - } - GLIBC_PRIVATE { - # global variables ---- glibc-2.3.2/locale/coll-lookup.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/locale/coll-lookup.c 2003-06-13 16:41:58.000000000 -0400 -@@ -0,0 +1,81 @@ -+/* Copyright (C) 2000, 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Bruno Haible , 2000. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+ -+/* Lookup in a table of int32_t, with default value 0. */ -+int32_t -+internal_function -+__collidx_table_lookup (const char *table, uint32_t wc) -+{ -+ uint32_t shift1 = ((const uint32_t *) table)[0]; -+ uint32_t index1 = wc >> shift1; -+ uint32_t bound = ((const uint32_t *) table)[1]; -+ if (index1 < bound) -+ { -+ uint32_t lookup1 = ((const uint32_t *) table)[5 + index1]; -+ if (lookup1 != 0) -+ { -+ uint32_t shift2 = ((const uint32_t *) table)[2]; -+ uint32_t mask2 = ((const uint32_t *) table)[3]; -+ uint32_t index2 = (wc >> shift2) & mask2; -+ uint32_t lookup2 = ((const uint32_t *)(table + lookup1))[index2]; -+ if (lookup2 != 0) -+ { -+ uint32_t mask3 = ((const uint32_t *) table)[4]; -+ uint32_t index3 = wc & mask3; -+ int32_t lookup3 = ((const int32_t *)(table + lookup2))[index3]; -+ -+ return lookup3; -+ } -+ } -+ } -+ return 0; -+} -+ -+ -+/* Lookup in a table of uint32_t, with default value 0xffffffff. */ -+uint32_t -+internal_function -+__collseq_table_lookup (const char *table, uint32_t wc) -+{ -+ uint32_t shift1 = ((const uint32_t *) table)[0]; -+ uint32_t index1 = wc >> shift1; -+ uint32_t bound = ((const uint32_t *) table)[1]; -+ if (index1 < bound) -+ { -+ uint32_t lookup1 = ((const uint32_t *) table)[5 + index1]; -+ if (lookup1 != 0) -+ { -+ uint32_t shift2 = ((const uint32_t *) table)[2]; -+ uint32_t mask2 = ((const uint32_t *) table)[3]; -+ uint32_t index2 = (wc >> shift2) & mask2; -+ uint32_t lookup2 = ((const uint32_t *)(table + lookup1))[index2]; -+ if (lookup2 != 0) -+ { -+ uint32_t mask3 = ((const uint32_t *) table)[4]; -+ uint32_t index3 = wc & mask3; -+ uint32_t lookup3 = ((const uint32_t *)(table + lookup2))[index3]; -+ -+ return lookup3; -+ } -+ } -+ } -+ return ~((uint32_t) 0); -+} ---- glibc-2.3.2/locale/coll-lookup.h 2001-07-07 15:21:04.000000000 -0400 -+++ glibc-2.3.2/locale/coll-lookup.h 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 2000 Free Software Foundation, Inc. -+/* Copyright (C) 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Bruno Haible , 2000. - -@@ -17,85 +17,12 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - --/* Word tables are accessed by cutting wc in three blocks of bits: -- - the high 32-q-p bits, -- - the next q bits, -- - the next p bits. -- -- +------------------+-----+-----+ -- wc = + 32-q-p | q | p | -- +------------------+-----+-----+ -- -- p and q are variable. For 16-bit Unicode it is sufficient to -- choose p and q such that q+p <= 16. -- -- The table contains the following uint32_t words: -- - q+p, -- - s = upper exclusive bound for wc >> (q+p), -- - p, -- - 2^q-1, -- - 2^p-1, -- - 1st-level table: s offsets, pointing into the 2nd-level table, -- - 2nd-level table: k*2^q offsets, pointing into the 3rd-level table, -- - 3rd-level table: j*2^p words, each containing 32 bits of data. --*/ -- - #include - - /* Lookup in a table of int32_t, with default value 0. */ --static inline int32_t --collidx_table_lookup (const char *table, uint32_t wc) --{ -- uint32_t shift1 = ((const uint32_t *) table)[0]; -- uint32_t index1 = wc >> shift1; -- uint32_t bound = ((const uint32_t *) table)[1]; -- if (index1 < bound) -- { -- uint32_t lookup1 = ((const uint32_t *) table)[5 + index1]; -- if (lookup1 != 0) -- { -- uint32_t shift2 = ((const uint32_t *) table)[2]; -- uint32_t mask2 = ((const uint32_t *) table)[3]; -- uint32_t index2 = (wc >> shift2) & mask2; -- uint32_t lookup2 = ((const uint32_t *)(table + lookup1))[index2]; -- if (lookup2 != 0) -- { -- uint32_t mask3 = ((const uint32_t *) table)[4]; -- uint32_t index3 = wc & mask3; -- int32_t lookup3 = ((const int32_t *)(table + lookup2))[index3]; -- -- return lookup3; -- } -- } -- } -- return 0; --} -+extern int32_t __collidx_table_lookup (const char *table, uint32_t wc) -+ internal_function; - - /* Lookup in a table of uint32_t, with default value 0xffffffff. */ --static inline uint32_t --collseq_table_lookup (const char *table, uint32_t wc) --{ -- uint32_t shift1 = ((const uint32_t *) table)[0]; -- uint32_t index1 = wc >> shift1; -- uint32_t bound = ((const uint32_t *) table)[1]; -- if (index1 < bound) -- { -- uint32_t lookup1 = ((const uint32_t *) table)[5 + index1]; -- if (lookup1 != 0) -- { -- uint32_t shift2 = ((const uint32_t *) table)[2]; -- uint32_t mask2 = ((const uint32_t *) table)[3]; -- uint32_t index2 = (wc >> shift2) & mask2; -- uint32_t lookup2 = ((const uint32_t *)(table + lookup1))[index2]; -- if (lookup2 != 0) -- { -- uint32_t mask3 = ((const uint32_t *) table)[4]; -- uint32_t index3 = wc & mask3; -- uint32_t lookup3 = ((const uint32_t *)(table + lookup2))[index3]; -- -- return lookup3; -- } -- } -- } -- return ~((uint32_t) 0); --} -+extern uint32_t __collseq_table_lookup (const char *table, uint32_t wc) -+ internal_function; ---- glibc-2.3.2/locale/findlocale.c 2002-09-01 14:02:00.000000000 -0400 -+++ glibc-2.3.2/locale/findlocale.c 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1996. - -@@ -28,6 +28,7 @@ - - #include "localeinfo.h" - #include "../iconv/gconv_charset.h" -+#include "../iconv/gconv_int.h" - - - #ifdef NL_CURRENT_INDIRECT ---- glibc-2.3.2/locale/iso-639.def 2002-08-02 16:28:38.000000000 -0400 -+++ glibc-2.3.2/locale/iso-639.def 2003-08-21 08:37:05.000000000 -0400 -@@ -6,171 +6,462 @@ - * If you find something missing or wrong contact - */ - --DEFINE_LANGUAGE_CODE ("Afar", aa, aar, aar) - DEFINE_LANGUAGE_CODE ("Abkhazian", ab, abk, abk) -+DEFINE_LANGUAGE_CODE3 ("Achinese", ace, ace) -+DEFINE_LANGUAGE_CODE3 ("Acoli", ach, ach) -+DEFINE_LANGUAGE_CODE3 ("Adangme", ada, ada) -+DEFINE_LANGUAGE_CODE3 ("Adygei", ady, ady) -+DEFINE_LANGUAGE_CODE ("Afar", aa, aar, aar) -+DEFINE_LANGUAGE_CODE3 ("Afrihili", afh, afh) - DEFINE_LANGUAGE_CODE ("Afrikaans", af, afr, afr) -+DEFINE_LANGUAGE_CODE3 ("Afro-Asiatic (Other)", afa, afa) -+DEFINE_LANGUAGE_CODE ("Akan", ak, aka, aka) -+DEFINE_LANGUAGE_CODE3 ("Akkadian", akk, akk) - DEFINE_LANGUAGE_CODE ("Albanian", sq, sqi, alb) -+DEFINE_LANGUAGE_CODE3 ("Aleut", ale, ale) -+DEFINE_LANGUAGE_CODE3 ("Alonquian languages", alg, alg) -+DEFINE_LANGUAGE_CODE3 ("Altaic (Other)", tut, tut) - DEFINE_LANGUAGE_CODE ("Amharic", am, amh, amh) -+DEFINE_LANGUAGE_CODE3 ("Apache language", apa, apa) - DEFINE_LANGUAGE_CODE ("Arabic", ar, ara, ara) -+DEFINE_LANGUAGE_CODE ("Argonese", an, arg, arg) -+DEFINE_LANGUAGE_CODE3 ("Aramaic", arc, arc) -+DEFINE_LANGUAGE_CODE3 ("Arapaho", arp, arp) -+DEFINE_LANGUAGE_CODE3 ("Araucanian", arn, arn) -+DEFINE_LANGUAGE_CODE3 ("Arawak", arw, arw) - DEFINE_LANGUAGE_CODE ("Armenian", hy, hye, arm) -+DEFINE_LANGUAGE_CODE3 ("Artificial (Other)", art, art) - DEFINE_LANGUAGE_CODE ("Assamese", as, asm, asm) -+DEFINE_LANGUAGE_CODE3 ("Asturian; Bable", ast, ast) -+DEFINE_LANGUAGE_CODE3 ("Athapascan languages", ath, ath) -+DEFINE_LANGUAGE_CODE3 ("Australian languages", aus, aus) -+DEFINE_LANGUAGE_CODE3 ("Austronesian (Other)", map, map) -+DEFINE_LANGUAGE_CODE ("Avaric", av, ava, ava) - DEFINE_LANGUAGE_CODE ("Avestan", ae, ave, ave) -+DEFINE_LANGUAGE_CODE3 ("Awadhi", awa, awa) - DEFINE_LANGUAGE_CODE ("Aymara", ay, aym, aym) - DEFINE_LANGUAGE_CODE ("Azerbaijani", az, aze, aze) -+DEFINE_LANGUAGE_CODE3 ("Balinese", ban, ban) -+DEFINE_LANGUAGE_CODE3 ("Baltic (Other)", bat, bat) -+DEFINE_LANGUAGE_CODE3 ("Baluchi", bal, bal) -+DEFINE_LANGUAGE_CODE ("Bambara", bm, bam, bam) -+DEFINE_LANGUAGE_CODE3 ("Bamileke languages", bai, bai) -+DEFINE_LANGUAGE_CODE3 ("Banda", bad, bad) -+DEFINE_LANGUAGE_CODE3 ("Bantu (Other)", bnt, bnt) -+DEFINE_LANGUAGE_CODE3 ("Basa", bas, bas) - DEFINE_LANGUAGE_CODE ("Bashkir", ba, bak, bak) - DEFINE_LANGUAGE_CODE ("Basque", eu, eus, baq) -+DEFINE_LANGUAGE_CODE3 ("Batak (Indonesia)", btk, btk) -+DEFINE_LANGUAGE_CODE3 ("Beja", bej, bej) - DEFINE_LANGUAGE_CODE ("Belarusian", be, bel, bel) -+DEFINE_LANGUAGE_CODE3 ("Bemba", bem, bem) - DEFINE_LANGUAGE_CODE ("Bengali", bn, ben, ben) -+DEFINE_LANGUAGE_CODE3 ("Berber (Other)", ber, ber) -+DEFINE_LANGUAGE_CODE3 ("Bhojpuri", bho, bho) - DEFINE_LANGUAGE_CODE ("Bihari", bh, bih, bih) -+DEFINE_LANGUAGE_CODE3 ("Bikol", bik, bik) -+DEFINE_LANGUAGE_CODE3 ("Bini", bin, bin) - DEFINE_LANGUAGE_CODE ("Bislama", bi, bis, bis) - DEFINE_LANGUAGE_CODE ("Bosnian", bs, bos, bos) -+DEFINE_LANGUAGE_CODE3 ("Braj", bra, bra) - DEFINE_LANGUAGE_CODE ("Breton", br, bre, bre) -+DEFINE_LANGUAGE_CODE3 ("Buginese", bug, bug) - DEFINE_LANGUAGE_CODE ("Bulgarian", bg, bul, bul) -+DEFINE_LANGUAGE_CODE3 ("Buriat", bua, bua) - DEFINE_LANGUAGE_CODE ("Burmese", my, mya, bur) -+DEFINE_LANGUAGE_CODE3 ("Caddo", cad, cad) -+DEFINE_LANGUAGE_CODE3 ("Carib", car, car) - DEFINE_LANGUAGE_CODE ("Catalan", ca, cat, cat) -+DEFINE_LANGUAGE_CODE3 ("Caucasian (Other)", cau, cau) -+DEFINE_LANGUAGE_CODE3 ("Cebuano", ceb, ceb) -+DEFINE_LANGUAGE_CODE3 ("Celtic (Other)", cel, cel) -+DEFINE_LANGUAGE_CODE3 ("Central American Indian (Other)", cai, cai) -+DEFINE_LANGUAGE_CODE3 ("Chagatai", chg, chg) -+DEFINE_LANGUAGE_CODE3 ("Canmic languages", cmc, cmc) - DEFINE_LANGUAGE_CODE ("Chamorro", ch, cha, cha) - DEFINE_LANGUAGE_CODE ("Chechen", ce, che, che) -+DEFINE_LANGUAGE_CODE3 ("Cherokee", chr, chr) -+DEFINE_LANGUAGE_CODE ("Chewa; Chechewa; Nyanja", ny, nya, nya) -+DEFINE_LANGUAGE_CODE3 ("Cheyenne", chy, chy) -+DEFINE_LANGUAGE_CODE3 ("Chibcha", chb, chb) - DEFINE_LANGUAGE_CODE ("Chinese", zh, zho, chi) -+DEFINE_LANGUAGE_CODE3 ("Chinook jargon", chn, chn) -+DEFINE_LANGUAGE_CODE3 ("Chipewyan", chp, chp) -+DEFINE_LANGUAGE_CODE3 ("Choctaw", cho, cho) - DEFINE_LANGUAGE_CODE ("Church Slavic", cu, chu, chu) -+DEFINE_LANGUAGE_CODE3 ("Chuukese", chk, chk) - DEFINE_LANGUAGE_CODE ("Chuvash", cv, chv, chv) -+DEFINE_LANGUAGE_CODE3 ("Coptic", cop, cop) - DEFINE_LANGUAGE_CODE ("Cornish", kw, cor, cor) - DEFINE_LANGUAGE_CODE ("Corsican", co, cos, cos) -+DEFINE_LANGUAGE_CODE ("Cree", cr, cre, cre) -+DEFINE_LANGUAGE_CODE3 ("Creek", mus, mus) -+DEFINE_LANGUAGE_CODE3 ("Creoles and pidgins (Other)", crp, crp) -+DEFINE_LANGUAGE_CODE3 ("Creoles and pidgins, English-based (Other)", cpe, cpe) -+DEFINE_LANGUAGE_CODE3 ("Creoles and pidgins, French-based (Other)", cpf, cpf) -+DEFINE_LANGUAGE_CODE3 ("Creoles and pidgins, Portuguese-based (Other)", cpp, cpp) -+DEFINE_LANGUAGE_CODE3 ("Crimean Tatar; Crimean Turkish", crh, crh) -+DEFINE_LANGUAGE_CODE ("Croatian", hr, hrv, scr) -+DEFINE_LANGUAGE_CODE3 ("Cushitic (Other)", cus, cus) - DEFINE_LANGUAGE_CODE ("Czech", cs, ces, cze) -+DEFINE_LANGUAGE_CODE3 ("Dakota", dak, dak) - DEFINE_LANGUAGE_CODE ("Danish", da, dan, dan) --DEFINE_LANGUAGE_CODE ("Dutch", nl, nld, dut) -+DEFINE_LANGUAGE_CODE3 ("Dargwa", dar, dar) -+DEFINE_LANGUAGE_CODE3 ("Dayak", day, day) -+DEFINE_LANGUAGE_CODE3 ("Delaware", del, del) -+DEFINE_LANGUAGE_CODE3 ("Dinka", din, din) -+DEFINE_LANGUAGE_CODE ("Divehi", dv, div, div) -+DEFINE_LANGUAGE_CODE3 ("Dogri", doi, doi) -+DEFINE_LANGUAGE_CODE3 ("Dogrib", dgr, dgr) -+DEFINE_LANGUAGE_CODE3 ("Dravidian (Other)", dra, dra) -+DEFINE_LANGUAGE_CODE3 ("Duala", dua, dua) -+DEFINE_LANGUAGE_CODE ("Dutch; Flemish", nl, nld, dut) -+DEFINE_LANGUAGE_CODE3 ("Dutch, Middle", dum, dum) -+DEFINE_LANGUAGE_CODE3 ("Dyula", dyu, dyu) - DEFINE_LANGUAGE_CODE ("Dzongkha", dz, dzo, dzo) -+DEFINE_LANGUAGE_CODE3 ("Efik", efi, efi) -+DEFINE_LANGUAGE_CODE3 ("Egyptian (Ancient)", egy, egy) -+DEFINE_LANGUAGE_CODE3 ("Ekajuk", eka, eka) -+DEFINE_LANGUAGE_CODE3 ("Elamite", elx, elx) - DEFINE_LANGUAGE_CODE ("English", en, eng, eng) -+DEFINE_LANGUAGE_CODE3 ("English, Middle", enm, enm) -+DEFINE_LANGUAGE_CODE3 ("English, Old", ang, ang) -+DEFINE_LANGUAGE_CODE3 ("Erzya", myv, myv) - DEFINE_LANGUAGE_CODE ("Esperanto", eo, epo, epo) - DEFINE_LANGUAGE_CODE ("Estonian", et, est, est) -+DEFINE_LANGUAGE_CODE ("Ewe", ee, ewe, ewe) -+DEFINE_LANGUAGE_CODE3 ("Ewondo", ewo, ewo) -+DEFINE_LANGUAGE_CODE3 ("Fang", fan, fan) -+DEFINE_LANGUAGE_CODE3 ("Fanti", fat, fat) - DEFINE_LANGUAGE_CODE ("Faroese", fo, fao, fao) - DEFINE_LANGUAGE_CODE ("Fijian", fj, fij, fij) - DEFINE_LANGUAGE_CODE ("Finnish", fi, fin, fin) -+DEFINE_LANGUAGE_CODE3 ("Finno-Ugrian (Other)", fiu, fiu) -+DEFINE_LANGUAGE_CODE3 ("Fon", fon, fon) - DEFINE_LANGUAGE_CODE ("French", fr, fra, fre) -+DEFINE_LANGUAGE_CODE3 ("French, Middle", frm, frm) -+DEFINE_LANGUAGE_CODE3 ("French, Old", fro, fro) - DEFINE_LANGUAGE_CODE ("Frisian", fy, fry, fry) --DEFINE_LANGUAGE_CODE ("Georgian", ka, kat, geo) --DEFINE_LANGUAGE_CODE ("German", de, deu, ger) -+DEFINE_LANGUAGE_CODE3 ("Friulian", fur, fur) -+DEFINE_LANGUAGE_CODE ("Fulah", ff, ful, ful) -+DEFINE_LANGUAGE_CODE3 ("Ga", gaa, gaa) - DEFINE_LANGUAGE_CODE ("Gaelic (Scots)", gd, gla, gla) --DEFINE_LANGUAGE_CODE ("Irish", ga, gle, gle) - DEFINE_LANGUAGE_CODE ("Gallegan", gl, glg, glg) --DEFINE_LANGUAGE_CODE3 ("Ganda", lug, lug) --DEFINE_LANGUAGE_CODE ("Manx", gv, glv, glv) --DEFINE_LANGUAGE_CODE ("Greek, Modern ()", el, gre, ell) -+DEFINE_LANGUAGE_CODE ("Ganda", lg, lug, lug) -+DEFINE_LANGUAGE_CODE3 ("Gayo", gay, gay) -+DEFINE_LANGUAGE_CODE3 ("Gbaya", gba, gba) -+DEFINE_LANGUAGE_CODE3 ("Geez", gez, gez) -+DEFINE_LANGUAGE_CODE ("Georgian", ka, kat, geo) -+DEFINE_LANGUAGE_CODE ("German", de, deu, ger) -+DEFINE_LANGUAGE_CODE3 ("German, Low; Saxon, Low", nds, nds) -+DEFINE_LANGUAGE_CODE3 ("German, Middle High", gmh, gmh) -+DEFINE_LANGUAGE_CODE3 ("German, Old High", goh, goh) -+DEFINE_LANGUAGE_CODE3 ("Germanic (Other)", gem, gem) -+DEFINE_LANGUAGE_CODE ("Gikuyu; Kikuyu", ki, kik, kik) -+DEFINE_LANGUAGE_CODE3 ("Gilbertese", gil, gil) -+DEFINE_LANGUAGE_CODE3 ("Gondi", gon, gon) -+DEFINE_LANGUAGE_CODE3 ("Gorontalo", gor, gor) -+DEFINE_LANGUAGE_CODE3 ("Gothic", got, got) -+DEFINE_LANGUAGE_CODE3 ("Grebo", grb, grb) -+DEFINE_LANGUAGE_CODE3 ("Greek, Ancient", grc, grc) -+DEFINE_LANGUAGE_CODE ("Greek, Modern", el, gre, ell) - DEFINE_LANGUAGE_CODE ("Guarani", gn, grn, grn) - DEFINE_LANGUAGE_CODE ("Gujarati", gu, guj, guj) -+DEFINE_LANGUAGE_CODE3 ("Gwich´in", gwi, gwi) -+DEFINE_LANGUAGE_CODE3 ("Haida", hai, hai) -+DEFINE_LANGUAGE_CODE ("Haitian; Haitian Creole", ht, hat, hat) -+DEFINE_LANGUAGE_CODE ("Hausa", ha, hau, hau) -+DEFINE_LANGUAGE_CODE3 ("Hawaiian", haw, haw) - DEFINE_LANGUAGE_CODE ("Hebrew", he, heb, heb) - DEFINE_LANGUAGE_CODE ("Herero", hz, her, her) -+DEFINE_LANGUAGE_CODE3 ("Hiligaynon", hil, hil) -+DEFINE_LANGUAGE_CODE3 ("Himachali", him, him) - DEFINE_LANGUAGE_CODE ("Hindi", hi, hin, hin) - DEFINE_LANGUAGE_CODE ("Hiri Motu", ho, hmo, hmo) -+DEFINE_LANGUAGE_CODE3 ("Hittite", hit, hit) -+DEFINE_LANGUAGE_CODE3 ("Hmong", hmn, hmn) - DEFINE_LANGUAGE_CODE ("Hungarian", hu, hun, hun) -+DEFINE_LANGUAGE_CODE3 ("Hupa", hup, hup) -+DEFINE_LANGUAGE_CODE3 ("Iban", iba, iba) - DEFINE_LANGUAGE_CODE ("Icelandic", is, isl, ice) --DEFINE_LANGUAGE_CODE ("Inuktitut", iu, iku, iku) --DEFINE_LANGUAGE_CODE ("Interlingue", ie, ile, ile) --DEFINE_LANGUAGE_CODE ("Interlingua", ia, ina, ina) -+DEFINE_LANGUAGE_CODE ("Ido", io, ido, ido) -+DEFINE_LANGUAGE_CODE ("Igbo", ig, ibo, ibo) -+DEFINE_LANGUAGE_CODE3 ("Ijo", ijo, ijo) -+DEFINE_LANGUAGE_CODE3 ("Iloko", ilo, ilo) -+DEFINE_LANGUAGE_CODE3 ("Inari Sami", smn, smn) -+DEFINE_LANGUAGE_CODE3 ("Indic (Other)", inc, inc) -+DEFINE_LANGUAGE_CODE3 ("Indo-European (Other)", ine, ine) - DEFINE_LANGUAGE_CODE ("Indonesian", id, ind, ind) -+DEFINE_LANGUAGE_CODE3 ("Ingush", inh, inh) -+DEFINE_LANGUAGE_CODE ("Interlingua", ia, ina, ina) -+DEFINE_LANGUAGE_CODE ("Interlingue", ie, ile, ile) -+DEFINE_LANGUAGE_CODE ("Inuktitut", iu, iku, iku) - DEFINE_LANGUAGE_CODE ("Inupiaq", ik, ipk, ipk) -+DEFINE_LANGUAGE_CODE3 ("Iranian (Other)", ira, ira) -+DEFINE_LANGUAGE_CODE ("Irish", ga, gle, gle) -+DEFINE_LANGUAGE_CODE3 ("Irish, Middle", mga, mga) -+DEFINE_LANGUAGE_CODE3 ("Irish, Old", sga, sga) -+DEFINE_LANGUAGE_CODE3 ("Iroquoian languages", iro, iro) - DEFINE_LANGUAGE_CODE ("Italian", it, ita, ita) --DEFINE_LANGUAGE_CODE ("Javanese", jv, jaw, jav) - DEFINE_LANGUAGE_CODE ("Japanese", ja, jpn, jpn) -+DEFINE_LANGUAGE_CODE ("Javanese", jv, jaw, jav) -+DEFINE_LANGUAGE_CODE3 ("Judeo-Arabic", jrb, jrb) -+DEFINE_LANGUAGE_CODE3 ("Judeo-Persian", jpr, jpr) -+DEFINE_LANGUAGE_CODE3 ("Kabardian", kbd, kbd) -+DEFINE_LANGUAGE_CODE3 ("Kabyle", kab, kab) -+DEFINE_LANGUAGE_CODE3 ("Kachin", kac, kac) - DEFINE_LANGUAGE_CODE ("Kalaallisut (Greenlandic)", kl, kal, kal) -+DEFINE_LANGUAGE_CODE3 ("Kamba", kam, kam) - DEFINE_LANGUAGE_CODE ("Kannada", kn, kan, kan) -+DEFINE_LANGUAGE_CODE ("Kanuri", kr, kau, kau) -+DEFINE_LANGUAGE_CODE3 ("Karachay-Balkar", krc, krc) -+DEFINE_LANGUAGE_CODE3 ("Kara-Kalpak", kaa, kaa) -+DEFINE_LANGUAGE_CODE3 ("Karen", kar, kar) - DEFINE_LANGUAGE_CODE ("Kashmiri", ks, kas, kas) -+DEFINE_LANGUAGE_CODE3 ("Kashubian", csb, csb) -+DEFINE_LANGUAGE_CODE3 ("Kawi", kaw, kaw) - DEFINE_LANGUAGE_CODE ("Kazakh", kk, kaz, kaz) -+DEFINE_LANGUAGE_CODE3 ("Khasi", kha, kha) - DEFINE_LANGUAGE_CODE ("Khmer", km, khm, khm) -+DEFINE_LANGUAGE_CODE3 ("Khoisan (Other)", khi, khi) -+DEFINE_LANGUAGE_CODE3 ("Khotanese", kho, kho) - DEFINE_LANGUAGE_CODE ("Kikuyu", ki, kik, kik) -+DEFINE_LANGUAGE_CODE3 ("Kimbundu", kmb, kmb) - DEFINE_LANGUAGE_CODE ("Kinyarwanda", rw, kin, kin) - DEFINE_LANGUAGE_CODE ("Kirghiz", ky, kir, kir) - DEFINE_LANGUAGE_CODE ("Komi", kv, kom, kom) -+DEFINE_LANGUAGE_CODE ("Kongo", kg, kon, kon) -+DEFINE_LANGUAGE_CODE3 ("Konkani", kok, kok) - DEFINE_LANGUAGE_CODE ("Korean", ko, kor, kor) -+DEFINE_LANGUAGE_CODE3 ("Kosraean", kos, kos) -+DEFINE_LANGUAGE_CODE3 ("Kpelle", kpe, kpe) -+DEFINE_LANGUAGE_CODE3 ("Kru", kro, kro) - DEFINE_LANGUAGE_CODE ("Kuanyama", kj, kua, kua) -+DEFINE_LANGUAGE_CODE3 ("Kumyk", kum, kum) - DEFINE_LANGUAGE_CODE ("Kurdish", ku, kur, kur) -+DEFINE_LANGUAGE_CODE3 ("Kurukh", kru, kru) -+DEFINE_LANGUAGE_CODE3 ("Kutenai", kut, kut) -+DEFINE_LANGUAGE_CODE3 ("Ladino", lad, lad) -+DEFINE_LANGUAGE_CODE3 ("Lahnda", lah, lah) -+DEFINE_LANGUAGE_CODE3 ("Lamba", lam, lam) - DEFINE_LANGUAGE_CODE ("Lao", lo, lao, lao) - DEFINE_LANGUAGE_CODE ("Latin", la, lat, lat) - DEFINE_LANGUAGE_CODE ("Latvian", lv, lav, lav) -+DEFINE_LANGUAGE_CODE ("Letzeburgesch", lb, ltz, ltz) -+DEFINE_LANGUAGE_CODE3 ("Lezghian", lez, lez) -+DEFINE_LANGUAGE_CODE ("Limburgan; Limburger; Limburgish", li, lim, lim) - DEFINE_LANGUAGE_CODE ("Lingala", ln, lin, lin) - DEFINE_LANGUAGE_CODE ("Lithuanian", lt, lit, lit) --DEFINE_LANGUAGE_CODE ("Letzeburgesch", lb, ltz, ltz) -+DEFINE_LANGUAGE_CODE3 ("Lozi", loz, loz) -+DEFINE_LANGUAGE_CODE ("Luba-Katanga", lu, lub, lub) -+DEFINE_LANGUAGE_CODE3 ("Luba-Lulua", lua, lua) -+DEFINE_LANGUAGE_CODE3 ("Luiseno", lui, lui) -+DEFINE_LANGUAGE_CODE3 ("Lule Sami", smj, smj) -+DEFINE_LANGUAGE_CODE3 ("Lunda", lun, lun) -+DEFINE_LANGUAGE_CODE3 ("Luo (Kenya and Tanzania)", luo, luo) -+DEFINE_LANGUAGE_CODE3 ("Lushai", lus, lus) - DEFINE_LANGUAGE_CODE ("Macedonian", mk, mkd, mac) --DEFINE_LANGUAGE_CODE ("Marshall", mh, mah, mah) -+DEFINE_LANGUAGE_CODE3 ("Madurese", mad, mad) -+DEFINE_LANGUAGE_CODE3 ("Magahi", mag, mag) -+DEFINE_LANGUAGE_CODE3 ("Maithili", mai, mai) -+DEFINE_LANGUAGE_CODE3 ("Makasar", mak, mak) -+DEFINE_LANGUAGE_CODE ("Malagasy", mg, mlg, mlg) -+DEFINE_LANGUAGE_CODE ("Malay", ms, msa, may) - DEFINE_LANGUAGE_CODE ("Malayalam", ml, mal, mal) -+DEFINE_LANGUAGE_CODE ("Maltese", mt, mlt, mlt) -+DEFINE_LANGUAGE_CODE3 ("Manchu", mnc, mnc) -+DEFINE_LANGUAGE_CODE3 ("Mandar", mdr, mdr) -+DEFINE_LANGUAGE_CODE3 ("Mandingo", man, man) -+DEFINE_LANGUAGE_CODE3 ("Manipuri", mni, mni) -+DEFINE_LANGUAGE_CODE3 ("Manobo languages", mno, mno) -+DEFINE_LANGUAGE_CODE ("Manx", gv, glv, glv) - DEFINE_LANGUAGE_CODE ("Maori", mi, mri, mao) - DEFINE_LANGUAGE_CODE ("Marathi", mr, mar, mar) --DEFINE_LANGUAGE_CODE ("Malay", ms, msa, may) --DEFINE_LANGUAGE_CODE ("Malagasy", mg, mlg, mlg) --DEFINE_LANGUAGE_CODE ("Maltese", mt, mlt, mlt) -+DEFINE_LANGUAGE_CODE3 ("Mari", chm, chm) -+DEFINE_LANGUAGE_CODE ("Marshallese", mh, mah, mah) -+DEFINE_LANGUAGE_CODE3 ("Marwari", mwr, mwr) -+DEFINE_LANGUAGE_CODE3 ("Masai", mas, mas) -+DEFINE_LANGUAGE_CODE3 ("Mayan languages", myn, myn) -+DEFINE_LANGUAGE_CODE3 ("Mende", men, men) -+DEFINE_LANGUAGE_CODE3 ("Micmac", mic, mic) -+DEFINE_LANGUAGE_CODE3 ("Minangkabau", min, min) -+DEFINE_LANGUAGE_CODE3 ("Miscellaneous languages", mis, mis) -+DEFINE_LANGUAGE_CODE3 ("Mohawk", moh, moh) -+DEFINE_LANGUAGE_CODE3 ("Moksha", mdf, mdf) - DEFINE_LANGUAGE_CODE ("Moldavian", mo, mol, mol) -+DEFINE_LANGUAGE_CODE3 ("Mon-Khmer (Other)", mkh, mkh) -+DEFINE_LANGUAGE_CODE3 ("Mongo", lol, lol) - DEFINE_LANGUAGE_CODE ("Mongolian", mn, mon, mon) -+DEFINE_LANGUAGE_CODE3 ("Mossi", mos, mos) -+DEFINE_LANGUAGE_CODE3 ("Munda languages", mun, mun) -+DEFINE_LANGUAGE_CODE3 ("Nahuatl", nah, nah) - DEFINE_LANGUAGE_CODE ("Nauru", na, nau, nau) - DEFINE_LANGUAGE_CODE ("Navajo", nv, nav, nav) --DEFINE_LANGUAGE_CODE ("Ndebele, South", nr, nbl, nbl) - DEFINE_LANGUAGE_CODE ("Ndebele, North", nd, nde, nde) -+DEFINE_LANGUAGE_CODE ("Ndebele, South", nr, nbl, nbl) - DEFINE_LANGUAGE_CODE ("Ndonga", ng, ndo, ndo) -+DEFINE_LANGUAGE_CODE3 ("Neapolitan", nap, nap) - DEFINE_LANGUAGE_CODE ("Nepali", ne, nep, nep) -+DEFINE_LANGUAGE_CODE3 ("Newari", new, new) -+DEFINE_LANGUAGE_CODE3 ("Nias", nia, nia) -+DEFINE_LANGUAGE_CODE3 ("Niger-Kordofanian (Other)", nic, nic) -+DEFINE_LANGUAGE_CODE3 ("Nilo-Saharan (Other)", ssa, ssa) -+DEFINE_LANGUAGE_CODE3 ("Niuean", niu, niu) -+DEFINE_LANGUAGE_CODE3 ("Nogai", nog, nog) -+DEFINE_LANGUAGE_CODE3 ("Norse, Old", non, non) -+DEFINE_LANGUAGE_CODE3 ("North American Indian (Other)", nai, nai) -+DEFINE_LANGUAGE_CODE ("Northern Sami", se, sme, sme) - DEFINE_LANGUAGE_CODE ("Norwegian", no, nor, nor) --DEFINE_LANGUAGE_CODE ("Norwegian Nynorsk", nn, nno, nno) - DEFINE_LANGUAGE_CODE ("Norwegian Bokmål", nb, nob, nob) --DEFINE_LANGUAGE_CODE ("Chichewa; Nyanja", ny, nya, nya) --DEFINE_LANGUAGE_CODE ("Occitan (post 1500); Provençal", oc, oci, oci) -+DEFINE_LANGUAGE_CODE ("Norwegian Nynorsk", nn, nno, nno) -+DEFINE_LANGUAGE_CODE3 ("Nubian languages", nub, nub) -+DEFINE_LANGUAGE_CODE3 ("Nyamwezi", nym, nym) -+DEFINE_LANGUAGE_CODE3 ("Nyankole", nyn, nyn) -+DEFINE_LANGUAGE_CODE3 ("Nyoro", nyo, nyo) -+DEFINE_LANGUAGE_CODE3 ("Nzima", nzi, nzi) -+DEFINE_LANGUAGE_CODE ("Ojibwa", oj, oji, oji) - DEFINE_LANGUAGE_CODE ("Oriya", or, ori, ori) - DEFINE_LANGUAGE_CODE ("Oromo", om, orm, orm) -+DEFINE_LANGUAGE_CODE3 ("Osage", osa, osa) - DEFINE_LANGUAGE_CODE ("Ossetian; Ossetic", os, oss, oss) -+DEFINE_LANGUAGE_CODE3 ("Otomian languages", oto, oto) -+DEFINE_LANGUAGE_CODE3 ("Pahlavi", pal, pal) -+DEFINE_LANGUAGE_CODE3 ("Palauan", pau, pau) -+DEFINE_LANGUAGE_CODE ("Pali", pi, pli, pli) -+DEFINE_LANGUAGE_CODE3 ("Pampanga", pam, pam) -+DEFINE_LANGUAGE_CODE3 ("Pangasinan", pag, pag) - DEFINE_LANGUAGE_CODE ("Panjabi", pa, pan, pan) -+DEFINE_LANGUAGE_CODE3 ("Papiamento", pap, pap) -+DEFINE_LANGUAGE_CODE3 ("Papuan (Other)", paa, paa) - DEFINE_LANGUAGE_CODE ("Persian", fa, fas, per) --DEFINE_LANGUAGE_CODE ("Pali", pi, pli, pli) -+DEFINE_LANGUAGE_CODE3 ("Persian, Old (ca.600-400 B.C.E.)", peo, peo) -+DEFINE_LANGUAGE_CODE3 ("Philippine (Other)", phi, phi) -+DEFINE_LANGUAGE_CODE3 ("Phoenician", phn, phn) -+DEFINE_LANGUAGE_CODE3 ("Pohnpeian", pon, pon) - DEFINE_LANGUAGE_CODE ("Polish", pl, pol, pol) - DEFINE_LANGUAGE_CODE ("Portuguese", pt, por, por) -+DEFINE_LANGUAGE_CODE3 ("Prakrit", pra, pra) -+DEFINE_LANGUAGE_CODE ("Provençal; Occitan (post 1500)", oc, oci, oci) -+DEFINE_LANGUAGE_CODE3 ("Provençal, Old (to 1500)", pro, pro) - DEFINE_LANGUAGE_CODE ("Pushto", ps, pus, pus) - DEFINE_LANGUAGE_CODE ("Quechua", qu, que, que) - DEFINE_LANGUAGE_CODE ("Raeto-Romance", rm, roh, roh) -+DEFINE_LANGUAGE_CODE3 ("Rajasthani", raj, raj) -+DEFINE_LANGUAGE_CODE3 ("Rapanui", rap, rap) -+DEFINE_LANGUAGE_CODE3 ("Rarotongan", rar, rar) -+DEFINE_LANGUAGE_CODE3 ("Romance (Other)", roa, roa) - DEFINE_LANGUAGE_CODE ("Romanian", ro, ron, rum) -+DEFINE_LANGUAGE_CODE3 ("Romany", rom, rom) - DEFINE_LANGUAGE_CODE ("Rundi", rn, run, run) - DEFINE_LANGUAGE_CODE ("Russian", ru, rus, rus) -+DEFINE_LANGUAGE_CODE3 ("Salishan languages", sal, sal) -+DEFINE_LANGUAGE_CODE3 ("Samaritan Aramaic", sam, sam) -+DEFINE_LANGUAGE_CODE3 ("Sami languages (Other)", smi, smi) -+DEFINE_LANGUAGE_CODE ("Samoan", sm, smo, smo) -+DEFINE_LANGUAGE_CODE3 ("Sandawe", sad, sad) - DEFINE_LANGUAGE_CODE ("Sango", sg, sag, sag) - DEFINE_LANGUAGE_CODE ("Sanskrit", sa, san, san) -+DEFINE_LANGUAGE_CODE3 ("Santali", sat, sat) -+DEFINE_LANGUAGE_CODE ("Sardinian", sc, srd, srd) -+DEFINE_LANGUAGE_CODE3 ("Sasak", sas, sas) -+DEFINE_LANGUAGE_CODE3 ("Scots", sco, sco) -+DEFINE_LANGUAGE_CODE3 ("Selkup", sel, sel) -+DEFINE_LANGUAGE_CODE3 ("Semitic (Other)", sem, sem) - DEFINE_LANGUAGE_CODE ("Serbian", sr, srp, scc) --DEFINE_LANGUAGE_CODE ("Croatian", hr, hrv, scr) -+DEFINE_LANGUAGE_CODE3 ("Serer", srr, srr) -+DEFINE_LANGUAGE_CODE3 ("Shan", shn, shn) -+DEFINE_LANGUAGE_CODE ("Shona", sn, sna, sna) -+DEFINE_LANGUAGE_CODE ("Sichuan Yi", ii, iii, iii) -+DEFINE_LANGUAGE_CODE3 ("Sidamo", sid, sid) -+DEFINE_LANGUAGE_CODE3 ("Siksika", bla, bla) -+DEFINE_LANGUAGE_CODE ("Sindhi", sd, snd, snd) - DEFINE_LANGUAGE_CODE ("Sinhalese", si, sin, sin) -+DEFINE_LANGUAGE_CODE3 ("Sino-Tibetan (Other)", sit, sit) -+DEFINE_LANGUAGE_CODE3 ("Siouan languages", sio, sio) -+DEFINE_LANGUAGE_CODE3 ("Skolt Sami", sms, sms) -+DEFINE_LANGUAGE_CODE3 ("Slave (Athapascan)", den, den) -+DEFINE_LANGUAGE_CODE3 ("Slavic (Other)", sla, sla) - DEFINE_LANGUAGE_CODE ("Slovak", sk, slk, slo) - DEFINE_LANGUAGE_CODE ("Slovenian", sl, slv, slv) --DEFINE_LANGUAGE_CODE ("Northern Sami", se, sme, sme) --DEFINE_LANGUAGE_CODE ("Samoan", sm, smo, smo) --DEFINE_LANGUAGE_CODE ("Shona", sn, sna, sna) --DEFINE_LANGUAGE_CODE ("Sindhi", sd, snd, snd) -+DEFINE_LANGUAGE_CODE3 ("Sogdian", sog, sog) - DEFINE_LANGUAGE_CODE ("Somali", so, som, som) -+DEFINE_LANGUAGE_CODE3 ("Songhai", son, son) -+DEFINE_LANGUAGE_CODE3 ("Soninke", snk, snk) -+DEFINE_LANGUAGE_CODE3 ("Sorbian languages", wen, wen) - DEFINE_LANGUAGE_CODE3 ("Sotho, Northern", nso, nso) - DEFINE_LANGUAGE_CODE ("Sotho, Southern", st, sot, sot) -+DEFINE_LANGUAGE_CODE3 ("South American Indian (Other)", sai, sai) -+DEFINE_LANGUAGE_CODE3 ("Southern Sami", sma, sma) - DEFINE_LANGUAGE_CODE ("Spanish", es, spa, spa) --DEFINE_LANGUAGE_CODE ("Sardinian", sc, srd, srd) --DEFINE_LANGUAGE_CODE ("Swati", ss, ssw, ssw) -+DEFINE_LANGUAGE_CODE3 ("Sukuma", suk, suk) -+DEFINE_LANGUAGE_CODE3 ("Sumerian", sux, sux) - DEFINE_LANGUAGE_CODE ("Sundanese", su, sun, sun) -+DEFINE_LANGUAGE_CODE3 ("Susu", sus, sus) - DEFINE_LANGUAGE_CODE ("Swahili", sw, swa, swa) -+DEFINE_LANGUAGE_CODE ("Swati", ss, ssw, ssw) - DEFINE_LANGUAGE_CODE ("Swedish", sv, swe, swe) -+DEFINE_LANGUAGE_CODE3 ("Syriac", syr, syr) -+DEFINE_LANGUAGE_CODE ("Tagalog", tl, tgl, tgl) - DEFINE_LANGUAGE_CODE ("Tahitian", ty, tah, tah) -+DEFINE_LANGUAGE_CODE3 ("Tai (Other)", tai, tai) -+DEFINE_LANGUAGE_CODE ("Tajik", tg, tgk, tgk) -+DEFINE_LANGUAGE_CODE3 ("Tamashek", tmh, tmh) - DEFINE_LANGUAGE_CODE ("Tamil", ta, tam, tam) - DEFINE_LANGUAGE_CODE ("Tatar", tt, tat, tat) - DEFINE_LANGUAGE_CODE ("Telugu", te, tel, tel) --DEFINE_LANGUAGE_CODE ("Tajik", tg, tgk, tgk) --DEFINE_LANGUAGE_CODE ("Tagalog", tl, tgl, tgl) -+DEFINE_LANGUAGE_CODE3 ("Tereno", ter, ter) -+DEFINE_LANGUAGE_CODE3 ("Tetum", tet, tet) - DEFINE_LANGUAGE_CODE ("Thai", th, tha, tha) - DEFINE_LANGUAGE_CODE ("Tibetan", bo, bod, tib) -+DEFINE_LANGUAGE_CODE3 ("Tigre", tig, tig) - DEFINE_LANGUAGE_CODE ("Tigrinya", ti, tir, tir) -+DEFINE_LANGUAGE_CODE3 ("Timne", tem, tem) -+DEFINE_LANGUAGE_CODE3 ("Tiv", tiv, tiv) -+DEFINE_LANGUAGE_CODE3 ("Tlingit", tli, tli) -+DEFINE_LANGUAGE_CODE3 ("Tok Pisin", tpi, tpi) -+DEFINE_LANGUAGE_CODE3 ("Tokelau", tkl, tkl) -+DEFINE_LANGUAGE_CODE3 ("Tonga (Nyasa)", tog, tog) - DEFINE_LANGUAGE_CODE ("Tonga (Tonga Islands)", to, ton, ton) --DEFINE_LANGUAGE_CODE ("Tswana", tn, tsn, tsn) -+DEFINE_LANGUAGE_CODE3 ("Tsimshian", tsi, tsi) - DEFINE_LANGUAGE_CODE ("Tsonga", ts, tso, tso) -+DEFINE_LANGUAGE_CODE ("Tswana", tn, tsn, tsn) -+DEFINE_LANGUAGE_CODE3 ("Tumbuka", tum, tum) -+DEFINE_LANGUAGE_CODE3 ("Tupi languages", tup, tup) - DEFINE_LANGUAGE_CODE ("Turkish", tr, tur, tur) -+DEFINE_LANGUAGE_CODE3 ("Turkish, Ottoman (1500-1928)", ota, ota) - DEFINE_LANGUAGE_CODE ("Turkmen", tk, tuk, tuk) -+DEFINE_LANGUAGE_CODE3 ("Tuvalu", tvl, tvl) -+DEFINE_LANGUAGE_CODE3 ("Tuvinian", tyv, tyv) - DEFINE_LANGUAGE_CODE ("Twi", tw, twi, twi) -+DEFINE_LANGUAGE_CODE3 ("Udmurt", udm, udm) -+DEFINE_LANGUAGE_CODE3 ("Ugaritic", uga, uga) - DEFINE_LANGUAGE_CODE ("Uighur", ug, uig, uig) - DEFINE_LANGUAGE_CODE ("Ukrainian", uk, ukr, ukr) -+DEFINE_LANGUAGE_CODE3 ("Umbundu", umb, umb) - DEFINE_LANGUAGE_CODE ("Urdu", ur, urd, urd) - DEFINE_LANGUAGE_CODE ("Uzbek", uz, uzb, uzb) -+DEFINE_LANGUAGE_CODE3 ("Vai", vai, vai) - DEFINE_LANGUAGE_CODE3 ("Venda", ven, ven) - DEFINE_LANGUAGE_CODE ("Vietnamese", vi, vie, vie) - DEFINE_LANGUAGE_CODE ("Volapük", vo, vol, vol) -+DEFINE_LANGUAGE_CODE3 ("Votic", vot, vot) -+DEFINE_LANGUAGE_CODE3 ("Wakashan languages", wak, wak) -+DEFINE_LANGUAGE_CODE3 ("Walamo", wal, wal) - DEFINE_LANGUAGE_CODE ("Walloon", wa, wln, wln) -+DEFINE_LANGUAGE_CODE3 ("Waray", war, war) -+DEFINE_LANGUAGE_CODE3 ("Washo", was, was) - DEFINE_LANGUAGE_CODE ("Welsh", cy, cym, wel) - DEFINE_LANGUAGE_CODE ("Wolof", wo, wol, wol) - DEFINE_LANGUAGE_CODE ("Xhosa", xh, xho, xho) -+DEFINE_LANGUAGE_CODE3 ("Yakut", sah, sah) -+DEFINE_LANGUAGE_CODE3 ("Yao", yao, yao) -+DEFINE_LANGUAGE_CODE3 ("Yapese", yap, yap) - DEFINE_LANGUAGE_CODE ("Yiddish", yi, yid, yid) - DEFINE_LANGUAGE_CODE ("Yoruba", yo, yor, yor) -+DEFINE_LANGUAGE_CODE3 ("Yupik languages", ypk, ypk) -+DEFINE_LANGUAGE_CODE3 ("Zande", znd, znd) -+DEFINE_LANGUAGE_CODE3 ("Zapotec", zap, zap) -+DEFINE_LANGUAGE_CODE3 ("Zenaga", zen, zen) - DEFINE_LANGUAGE_CODE ("Zhuang", za, zha, zha) - DEFINE_LANGUAGE_CODE ("Zulu", zu, zul, zul) -+DEFINE_LANGUAGE_CODE3 ("Zuni", zun, zun) ---- glibc-2.3.2/locale/loadarchive.c 2002-11-05 14:11:23.000000000 -0500 -+++ glibc-2.3.2/locale/loadarchive.c 2003-09-19 22:37:04.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Code to load locale data from the locale archive file. -- Copyright (C) 2002 Free Software Foundation, Inc. -+ Copyright (C) 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -32,6 +32,7 @@ - - #include "localeinfo.h" - #include "locarchive.h" -+#include - - /* Define the hash function. We define the function as static inline. */ - #define compute_hashval static inline compute_hashval -@@ -202,7 +203,7 @@ - archmapped = &headmap; - - /* The archive has never been opened. */ -- fd = __open64 (archfname, O_RDONLY); -+ fd = open_not_cancel_2 (archfname, O_RDONLY|O_LARGEFILE); - if (fd < 0) - /* Cannot open the archive, for whatever reason. */ - return NULL; -@@ -212,7 +213,7 @@ - /* stat failed, very strange. */ - close_and_out: - if (fd >= 0) -- __close (fd); -+ close_not_cancel_no_status (fd); - return NULL; - } - -@@ -252,7 +253,7 @@ - { - /* We've mapped the whole file already, so we can be - sure we won't need this file descriptor later. */ -- __close (fd); -+ close_not_cancel_no_status (fd); - fd = -1; - } - -@@ -393,7 +394,7 @@ - if (fd == -1) - { - struct stat64 st; -- fd = __open64 (archfname, O_RDONLY); -+ fd = open_not_cancel_2 (archfname, O_RDONLY|O_LARGEFILE); - if (fd == -1) - /* Cannot open the archive, for whatever reason. */ - return NULL; -@@ -446,7 +447,7 @@ - - /* We don't need the file descriptor any longer. */ - if (fd >= 0) -- __close (fd); -+ close_not_cancel_no_status (fd); - fd = -1; - - /* We succeeded in mapping all the necessary regions of the archive. ---- glibc-2.3.2/locale/loadlocale.c 2002-08-28 20:40:34.000000000 -0400 -+++ glibc-2.3.2/locale/loadlocale.c 2003-09-19 22:37:04.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Functions to read locale data files. -- Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1996. - -@@ -30,6 +30,7 @@ - #endif - #include - -+#include - #include "localeinfo.h" - - -@@ -142,7 +143,7 @@ - file->decided = 1; - file->data = NULL; - -- fd = __open (file->filename, O_RDONLY); -+ fd = open_not_cancel_2 (file->filename, O_RDONLY); - if (__builtin_expect (fd, 0) < 0) - /* Cannot open the file. */ - return; -@@ -150,7 +151,7 @@ - if (__builtin_expect (__fxstat64 (_STAT_VER, fd, &st), 0) < 0) - { - puntfd: -- __close (fd); -+ close_not_cancel_no_status (fd); - return; - } - if (__builtin_expect (S_ISDIR (st.st_mode), 0)) -@@ -160,7 +161,7 @@ - char *newp; - size_t filenamelen; - -- __close (fd); -+ close_not_cancel_no_status (fd); - - filenamelen = strlen (file->filename); - newp = (char *) alloca (filenamelen -@@ -170,7 +171,7 @@ - _nl_category_names[category], - _nl_category_name_sizes[category] + 1); - -- fd = __open (newp, O_RDONLY); -+ fd = open_not_cancel_2 (newp, O_RDONLY); - if (__builtin_expect (fd, 0) < 0) - return; - -@@ -206,7 +207,7 @@ - char *p = (char *) filedata; - while (to_read > 0) - { -- nread = __read (fd, p, to_read); -+ nread = read_not_cancel (fd, p, to_read); - if (__builtin_expect (nread, 1) <= 0) - { - free (filedata); -@@ -225,7 +226,7 @@ - #endif /* _POSIX_MAPPED_FILES */ - - /* We have mapped the data, so we no longer need the descriptor. */ -- __close (fd); -+ close_not_cancel_no_status (fd); - - if (__builtin_expect (filedata == NULL, 0)) - /* We failed to map or read the data. */ ---- glibc-2.3.2/locale/programs/3level.h 2001-08-07 14:51:49.000000000 -0400 -+++ glibc-2.3.2/locale/programs/3level.h 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 2000-2001 Free Software Foundation, Inc. -+/* Copyright (C) 2000-2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Bruno Haible , 2000. - -@@ -80,6 +80,7 @@ - - /* Retrieve an entry. */ - static inline ELEMENT -+__attribute ((always_inline)) - CONCAT(TABLE,_get) (struct TABLE *t, uint32_t wc) - { - uint32_t index1 = wc >> (t->q + t->p); ---- glibc-2.3.2/locale/programs/ld-collate.c 2002-05-01 12:44:51.000000000 -0400 -+++ glibc-2.3.2/locale/programs/ld-collate.c 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1995. - -@@ -42,6 +42,7 @@ - #define obstack_chunk_free free - - static inline void -+__attribute ((always_inline)) - obstack_int32_grow (struct obstack *obstack, int32_t data) - { - if (sizeof (int32_t) == sizeof (int)) -@@ -51,6 +52,7 @@ - } - - static inline void -+__attribute ((always_inline)) - obstack_int32_grow_fast (struct obstack *obstack, int32_t data) - { - if (sizeof (int32_t) == sizeof (int)) -@@ -249,6 +251,7 @@ - - /* We need UTF-8 encoding of numbers. */ - static inline int -+__attribute ((always_inline)) - utf8_encode (char *buf, int val) - { - int retval; -@@ -606,10 +609,10 @@ - find_element (struct linereader *ldfile, struct locale_collate_t *collate, - const char *str, size_t len) - { -- struct element_t *result = NULL; -+ void *result = NULL; - - /* Search for the entries among the collation sequences already define. */ -- if (find_entry (&collate->seq_table, str, len, (void **) &result) != 0) -+ if (find_entry (&collate->seq_table, str, len, &result) != 0) - { - /* Nope, not define yet. So we see whether it is a - collation symbol. */ -@@ -625,8 +628,7 @@ - result = sym->order = new_element (collate, NULL, 0, NULL, - NULL, 0, 0); - } -- else if (find_entry (&collate->elem_table, str, len, -- (void **) &result) != 0) -+ else if (find_entry (&collate->elem_table, str, len, &result) != 0) - { - /* It's also no collation element. So it is a character - element defined later. */ -@@ -636,7 +638,7 @@ - } - } - -- return result; -+ return (struct element_t *) result; - } - - -@@ -944,8 +946,8 @@ - { - /* It's no character, so look through the collation elements and - symbol list. */ -- if (find_entry (&collate->elem_table, symstr, symlen, -- (void **) &elem) != 0) -+ void *ptr = elem; -+ if (find_entry (&collate->elem_table, symstr, symlen, &ptr) != 0) - { - void *result; - struct symbol_t *sym = NULL; -@@ -976,12 +978,15 @@ - insert_entry (&collate->seq_table, symstr, symlen, elem); - } - } -+ else -+ /* Copy the result back. */ -+ elem = ptr; - } - else - { - /* Otherwise the symbols stands for a character. */ -- if (find_entry (&collate->seq_table, symstr, symlen, -- (void **) &elem) != 0) -+ void *ptr = elem; -+ if (find_entry (&collate->seq_table, symstr, symlen, &ptr) != 0) - { - uint32_t wcs[2] = { wc, 0 }; - -@@ -998,6 +1003,9 @@ - } - else - { -+ /* Copy the result back. */ -+ elem = ptr; -+ - /* Maybe the character was used before the definition. In this case - we have to insert the byte sequences now. */ - if (elem->mbs == NULL && seq != NULL) -@@ -1169,8 +1177,9 @@ - /* Now we are ready to insert the new value in the - sequence. Find out whether the element is - already known. */ -+ void *ptr; - if (find_entry (&collate->seq_table, seq->name, namelen, -- (void **) &elem) != 0) -+ &ptr) != 0) - { - uint32_t wcs[2] = { seq->ucs4, 0 }; - -@@ -1186,6 +1195,9 @@ - /* This cannot happen. */ - assert (! "Internal error"); - } -+ else -+ /* Copy the result. */ -+ elem = ptr; - - /* Test whether this element is not already in the list. */ - if (elem->next != NULL || (collate->cursor != NULL -@@ -1324,9 +1336,12 @@ - sprintf (buf + preflen, base == 10 ? "%ld" : "%lX", from); - - /* Look whether this name is already defined. */ -- if (find_entry (&collate->seq_table, buf, symlen, -- (void **) &elem) == 0) -+ void *ptr; -+ if (find_entry (&collate->seq_table, buf, symlen, &ptr) == 0) - { -+ /* Copy back the result. */ -+ elem = ptr; -+ - if (elem->next != NULL || (collate->cursor != NULL - && elem->next == collate->cursor)) - { -@@ -3009,7 +3024,7 @@ - size_t newname_len = arg->val.str.lenmb; - const char *symname; - size_t symname_len; -- struct symbol_t *symval; -+ void *symval; /* Actually struct symbol_t* */ - - arg = lr_token (ldfile, charmap, result, repertoire, verbose); - if (arg->tok != tok_bsymbol) -@@ -3045,7 +3060,7 @@ - - /* See whether the symbol name is already defined. */ - if (find_entry (&collate->sym_table, symname, symname_len, -- (void **) &symval) != 0) -+ &symval) != 0) - { - lr_error (ldfile, _("\ - %s: unknown symbol `%s' in equivalent definition"), -@@ -3294,6 +3309,7 @@ - size_t lenmb; - struct element_t *insp; - int no_error = 1; -+ void *ptr; - - if (arg->tok == tok_bsymbol) - { -@@ -3307,18 +3323,20 @@ - lenmb = 9; - } - -- if (find_entry (&collate->seq_table, startmb, lenmb, -- (void **) &insp) == 0) -+ if (find_entry (&collate->seq_table, startmb, lenmb, &ptr) == 0) - /* Yes, the symbol exists. Simply point the cursor - to it. */ -- collate->cursor = insp; -+ collate->cursor = (struct element_t *) ptr; - else - { - struct symbol_t *symbp; -+ void *ptr; - - if (find_entry (&collate->sym_table, startmb, lenmb, -- (void **) &symbp) == 0) -+ &ptr) == 0) - { -+ symbp = ptr; -+ - if (symbp->order->last != NULL - || symbp->order->next != NULL) - collate->cursor = symbp->order; -@@ -3334,8 +3352,10 @@ - } - } - else if (find_entry (&collate->elem_table, startmb, lenmb, -- (void **) &insp) == 0) -+ &ptr) == 0) - { -+ insp = (struct element_t *) ptr; -+ - if (insp->last != NULL || insp->next != NULL) - collate->cursor = insp; - else -@@ -3517,10 +3537,12 @@ - collation symbols since these are purely abstract - values and don't need directions associated. */ - struct element_t *seqp; -+ void *ptr; - -- if (find_entry (&collate->seq_table, symstr, symlen, -- (void **) &seqp) == 0) -+ if (find_entry (&collate->seq_table, symstr, symlen, &ptr) == 0) - { -+ seqp = ptr; -+ - /* It's already defined. First check whether this - is really a collating symbol. */ - if (seqp->is_character) -@@ -3561,8 +3583,9 @@ - { - /* It is possible that we already have this collation sequence. - In this case we move the entry. */ -- struct element_t *seqp; -+ struct element_t *seqp = NULL; - void *sym; -+ void *ptr; - - /* If the symbol after which we have to insert was not found - ignore all entries. */ -@@ -3572,17 +3595,19 @@ - break; - } - -- if (find_entry (&collate->seq_table, symstr, symlen, -- (void **) &seqp) == 0) -- goto move_entry; -+ if (find_entry (&collate->seq_table, symstr, symlen, &ptr) == 0) -+ { -+ seqp = (struct element_t *) ptr; -+ goto move_entry; -+ } - - if (find_entry (&collate->sym_table, symstr, symlen, &sym) == 0 - && (seqp = ((struct symbol_t *) sym)->order) != NULL) - goto move_entry; - -- if (find_entry (&collate->elem_table, symstr, symlen, -- (void **) &seqp) == 0 -- && (seqp->last != NULL || seqp->next != NULL -+ if (find_entry (&collate->elem_table, symstr, symlen, &ptr) == 0 -+ && (seqp = (struct element_t *) ptr, -+ seqp->last != NULL || seqp->next != NULL - || (collate->start != NULL && seqp == collate->start))) - { - move_entry: ---- glibc-2.3.2/locale/programs/ld-time.c 2002-04-16 20:45:08.000000000 -0400 -+++ glibc-2.3.2/locale/programs/ld-time.c 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1995. - -@@ -170,7 +170,7 @@ - if (!time->cat##_defined) \ - { \ - const char *initval[] = { noparen val }; \ -- int i; \ -+ unsigned int i; \ - \ - if (! be_quiet && ! nothing) \ - WITH_CUR_LOCALE (error (0, 0, _("%s: field `%s' not defined"), \ -@@ -670,7 +670,7 @@ - idx[1 + last_idx] = idx[last_idx]; - for (num = 0; num < time->num_era; ++num) - { -- size_t l; -+ size_t l, l2; - - iov[2 + cnt].iov_base = (void *) &time->era_entries[num].direction; - iov[2 + cnt].iov_len = sizeof (int32_t); -@@ -697,14 +697,16 @@ - iov[2 + cnt].iov_len = sizeof (int32_t); - ++cnt; - -- l = (strchr (time->era_entries[num].format, '\0') -+ l = ((char *) rawmemchr (time->era_entries[num].format, '\0') - - time->era_entries[num].name) + 1; -- l = (l + 3) & ~3; -- iov[2 + cnt].iov_base = (void *) time->era_entries[num].name; -- iov[2 + cnt].iov_len = l; -+ l2 = (l + 3) & ~3; -+ iov[2 + cnt].iov_base = alloca (l2); -+ memset (mempcpy (iov[2 + cnt].iov_base, time->era_entries[num].name, l), -+ '\0', l2 - l); -+ iov[2 + cnt].iov_len = l2; - ++cnt; - -- idx[1 + last_idx] += 8 * sizeof (int32_t) + l; -+ idx[1 + last_idx] += 8 * sizeof (int32_t) + l2; - - assert (idx[1 + last_idx] % 4 == 0); - ---- glibc-2.3.2/locale/programs/linereader.c 2002-10-17 13:45:12.000000000 -0400 -+++ glibc-2.3.2/locale/programs/linereader.c 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1996. - -@@ -111,6 +111,35 @@ - - - void -+lr_ignore_rest (struct linereader *lr, int verbose) -+{ -+ if (verbose) -+ { -+ while (isspace (lr->buf[lr->idx]) && lr->buf[lr->idx] != '\n' -+ && lr->buf[lr->idx] != lr->comment_char) -+ if (lr->buf[lr->idx] == '\0') -+ { -+ if (lr_next (lr) < 0) -+ return; -+ } -+ else -+ ++lr->idx; -+ -+ if (lr->buf[lr->idx] != '\n' && ! feof (lr->fp) -+ && lr->buf[lr->idx] != lr->comment_char) -+ lr_error (lr, _("trailing garbage at end of line")); -+ } -+ -+ /* Ignore continued line. */ -+ while (lr->bufact > 0 && lr->buf[lr->bufact - 1] != '\n') -+ if (lr_next (lr) < 0) -+ break; -+ -+ lr->idx = lr->bufact; -+} -+ -+ -+void - lr_close (struct linereader *lr) - { - fclose (lr->fp); ---- glibc-2.3.2/locale/programs/linereader.h 2002-02-05 18:20:05.000000000 -0500 -+++ glibc-2.3.2/locale/programs/linereader.h 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper, . - -@@ -95,6 +95,7 @@ - struct localedef_t *locale, - const struct repertoire_t *repertoire, - int verbose); -+extern void lr_ignore_rest (struct linereader *lr, int verbose); - - - #define lr_error(lr, fmt, args...) \ -@@ -103,6 +104,7 @@ - - - static inline int -+__attribute ((always_inline)) - lr_getc (struct linereader *lr) - { - if (lr->idx == lr->bufact) -@@ -120,6 +122,7 @@ - - - static inline int -+__attribute ((always_inline)) - lr_ungetc (struct linereader *lr, int ch) - { - if (lr->idx == 0) -@@ -142,33 +145,4 @@ - } - - --static inline void --lr_ignore_rest (struct linereader *lr, int verbose) --{ -- if (verbose) -- { -- while (isspace (lr->buf[lr->idx]) && lr->buf[lr->idx] != '\n' -- && lr->buf[lr->idx] != lr->comment_char) -- if (lr->buf[lr->idx] == '\0') -- { -- if (lr_next (lr) < 0) -- return; -- } -- else -- ++lr->idx; -- -- if (lr->buf[lr->idx] != '\n' && ! feof (lr->fp) -- && lr->buf[lr->idx] != lr->comment_char) -- lr_error (lr, _("trailing garbage at end of line")); -- } -- -- /* Ignore continued line. */ -- while (lr->bufact > 0 && lr->buf[lr->bufact - 1] != '\n') -- if (lr_next (lr) < 0) -- break; -- -- lr->idx = lr->bufact; --} -- -- - #endif /* linereader.h */ ---- glibc-2.3.2/locale/programs/locale.c 2003-01-02 15:02:12.000000000 -0500 -+++ glibc-2.3.2/locale/programs/locale.c 2003-05-24 14:06:21.000000000 -0400 -@@ -191,8 +191,10 @@ - - /* Set locale. Do not set LC_ALL because the other categories must - not be affected (according to POSIX.2). */ -- setlocale (LC_CTYPE, ""); -- setlocale (LC_MESSAGES, ""); -+ if (setlocale (LC_CTYPE, "") == NULL) -+ error (0, errno, gettext ("Cannot set LC_CTYPE to default locale")); -+ if (setlocale (LC_MESSAGES, "") == NULL) -+ error (0, errno, gettext ("Cannot set LC_MESSAGES to default locale")); - - /* Initialize the message catalog. */ - textdomain (PACKAGE); -@@ -203,7 +205,9 @@ - /* `-a' requests the names of all available locales. */ - if (do_all != 0) - { -- setlocale (LC_COLLATE, ""); -+ if (setlocale (LC_COLLATE, "") == NULL) -+ error (0, errno, -+ gettext ("Cannot set LC_COLLATE to default locale")); - write_locales (); - exit (EXIT_SUCCESS); - } -@@ -218,7 +222,8 @@ - - /* Specific information about the current locale are requested. - Change to this locale now. */ -- setlocale (LC_ALL, ""); -+ if (setlocale (LC_ALL, "") == NULL) -+ error (0, errno, gettext ("Cannot set LC_ALL to default locale")); - - /* If no real argument is given we have to print the contents of the - current locale definition variables. These are LANG and the LC_*. */ -@@ -864,7 +869,7 @@ - printf ("%s=", item->name); - - if (val != NULL) -- printf ("%d", *val == CHAR_MAX ? -1 : *val); -+ printf ("%d", *val == '\177' ? -1 : *val); - putchar ('\n'); - } - break; -@@ -878,12 +883,12 @@ - - while (cnt > 1) - { -- printf ("%d;", *val == CHAR_MAX ? -1 : *val); -+ printf ("%d;", *val == '\177' ? -1 : *val); - --cnt; - ++val; - } - -- printf ("%d\n", cnt == 0 || *val == CHAR_MAX ? -1 : *val); -+ printf ("%d\n", cnt == 0 || *val == '\177' ? -1 : *val); - } - break; - case word: ---- glibc-2.3.2/locale/programs/locarchive.c 2002-10-23 02:21:17.000000000 -0400 -+++ glibc-2.3.2/locale/programs/locarchive.c 2003-03-18 16:46:07.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (C) 2002 Free Software Foundation, Inc. -+/* Copyright (C) 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2002. - -@@ -1402,8 +1402,7 @@ - struct locarhead *head; - struct namehashent *namehashtab; - struct nameent *names; -- int cnt; -- int used; -+ size_t cnt, used; - - /* Open the archive. This call never returns if we cannot - successfully open the archive. */ ---- glibc-2.3.2/locale/programs/locfile.c 2003-01-13 03:55:06.000000000 -0500 -+++ glibc-2.3.2/locale/programs/locfile.c 2003-08-21 08:37:05.000000000 -0400 -@@ -764,3 +764,63 @@ - - free (fname); - } -+ -+ -+/* General handling of `copy'. */ -+void -+handle_copy (struct linereader *ldfile, const struct charmap_t *charmap, -+ const char *repertoire_name, struct localedef_t *result, -+ enum token_t token, int locale, const char *locale_name, -+ int ignore_content) -+{ -+ struct token *now; -+ int warned = 0; -+ -+ now = lr_token (ldfile, charmap, result, NULL, verbose); -+ if (now->tok != tok_string) -+ lr_error (ldfile, _("expect string argument for `copy'")); -+ else if (!ignore_content) -+ { -+ if (now->val.str.startmb == NULL) -+ lr_error (ldfile, _("\ -+locale name should consist only of portable characters")); -+ else -+ { -+ (void) add_to_readlist (locale, now->val.str.startmb, -+ repertoire_name, 1, NULL); -+ result->copy_name[locale] = now->val.str.startmb; -+ } -+ } -+ -+ lr_ignore_rest (ldfile, now->tok == tok_string); -+ -+ /* The rest of the line must be empty and the next keyword must be -+ `END xxx'. */ -+ while ((now = lr_token (ldfile, charmap, result, NULL, verbose))->tok -+ != tok_end && now->tok != tok_eof) -+ { -+ if (warned == 0) -+ { -+ lr_error (ldfile, _("\ -+no other keyword shall be specified when `copy' is used")); -+ warned = 1; -+ } -+ -+ lr_ignore_rest (ldfile, 0); -+ } -+ -+ if (now->tok != tok_eof) -+ { -+ /* Handle `END xxx'. */ -+ now = lr_token (ldfile, charmap, result, NULL, verbose); -+ -+ if (now->tok != token) -+ lr_error (ldfile, _("\ -+`%1$s' definition does not end with `END %1$s'"), locale_name); -+ -+ lr_ignore_rest (ldfile, now->tok == token); -+ } -+ else -+ /* When we come here we reached the end of the file. */ -+ lr_error (ldfile, _("%s: premature end of file"), locale_name); -+} ---- glibc-2.3.2/locale/programs/locfile.h 2002-04-17 01:11:34.000000000 -0400 -+++ glibc-2.3.2/locale/programs/locfile.h 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1996. - -@@ -45,64 +45,12 @@ - - - /* General handling of `copy'. */ --static inline void --handle_copy (struct linereader *ldfile, const struct charmap_t *charmap, -- const char *repertoire_name, struct localedef_t *result, -- enum token_t token, int locale, const char *locale_name, -- int ignore_content) --{ -- struct token *now; -- int warned = 0; -- -- now = lr_token (ldfile, charmap, result, NULL, verbose); -- if (now->tok != tok_string) -- lr_error (ldfile, _("expect string argument for `copy'")); -- else if (!ignore_content) -- { -- if (now->val.str.startmb == NULL) -- lr_error (ldfile, _("\ --locale name should consist only of portable characters")); -- else -- { -- (void) add_to_readlist (locale, now->val.str.startmb, -- repertoire_name, 1, NULL); -- result->copy_name[locale] = now->val.str.startmb; -- } -- } -- -- lr_ignore_rest (ldfile, now->tok == tok_string); -- -- /* The rest of the line must be empty and the next keyword must be -- `END xxx'. */ -- while ((now = lr_token (ldfile, charmap, result, NULL, verbose))->tok -- != tok_end && now->tok != tok_eof) -- { -- if (warned == 0) -- { -- lr_error (ldfile, _("\ --no other keyword shall be specified when `copy' is used")); -- warned = 1; -- } -- -- lr_ignore_rest (ldfile, 0); -- } -- -- if (now->tok != tok_eof) -- { -- /* Handle `END xxx'. */ -- now = lr_token (ldfile, charmap, result, NULL, verbose); -- -- if (now->tok != token) -- lr_error (ldfile, _("\ --`%1$s' definition does not end with `END %1$s'"), locale_name); -- -- lr_ignore_rest (ldfile, now->tok == token); -- } -- else -- /* When we come here we reached the end of the file. */ -- lr_error (ldfile, _("%s: premature end of file"), locale_name); --} -- -+extern void handle_copy (struct linereader *ldfile, -+ const struct charmap_t *charmap, -+ const char *repertoire_name, -+ struct localedef_t *result, enum token_t token, -+ int locale, const char *locale_name, -+ int ignore_content); - - /* Found in locfile.c. */ - extern int locfile_read (struct localedef_t *result, ---- glibc-2.3.2/locale/setlocale.c 2002-12-04 04:53:49.000000000 -0500 -+++ glibc-2.3.2/locale/setlocale.c 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991, 92, 95-99, 2000, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1991, 92, 1995-2000, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -128,7 +128,7 @@ - - - /* Construct a new composite name. */ --static inline char * -+static char * - new_composite_name (int category, const char *newnames[__LC_LAST]) - { - size_t last_len = 0; ---- glibc-2.3.2/locale/tst-C-locale.c 2002-09-03 14:39:41.000000000 -0400 -+++ glibc-2.3.2/locale/tst-C-locale.c 2003-03-18 16:46:07.000000000 -0500 -@@ -1,5 +1,5 @@ - /* Tests of C and POSIX locale contents. -- Copyright (C) 2000,01,02 Free Software Foundation, Inc. -+ Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2000. - -@@ -450,8 +450,8 @@ - } - - --int --main (void) -+static int -+do_test (void) - { - int result; - -@@ -475,3 +475,6 @@ - - return result; - } -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" ---- glibc-2.3.2/locale/weight.h 2001-07-07 15:21:04.000000000 -0400 -+++ glibc-2.3.2/locale/weight.h 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc. -+/* Copyright (C) 1996,1997,1998,1999,2000,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Ulrich Drepper, . - -@@ -19,6 +19,7 @@ - - /* Find index of weight. */ - static inline int32_t -+__attribute ((always_inline)) - findidx (const unsigned char **cpp) - { - int_fast32_t i = table[*(*cpp)++]; ---- glibc-2.3.2/locale/weightwc.h 2001-08-07 00:23:14.000000000 -0400 -+++ glibc-2.3.2/locale/weightwc.h 2003-08-21 08:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996-2000, 2001 Free Software Foundation, Inc. -+/* Copyright (C) 1996-2000, 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Ulrich Drepper, . - -@@ -19,6 +19,7 @@ - - /* Find index of weight. */ - static inline int32_t -+__attribute ((always_inline)) - findidx (const wint_t **cpp) - { - int32_t i; -@@ -26,7 +27,7 @@ - wint_t ch; - - ch = *(*cpp)++; -- i = collidx_table_lookup ((const char *) table, ch); -+ i = __collidx_table_lookup ((const char *) table, ch); - - if (i >= 0) - /* This is an index into the weight table. Cool. */ ---- glibc-2.3.2/localedata/ChangeLog 2003-01-30 15:21:47.000000000 -0500 -+++ glibc-2.3.2/localedata/ChangeLog 2003-09-19 22:37:05.000000000 -0400 -@@ -1,3 +1,186 @@ -+2003-09-17 Ulrich Drepper -+ -+ * locales/lo_LA: Fix duplicated collation entries. -+ Patch by Anousak Souphavanh . -+ -+2003-09-01 Petter Reinholdtsen -+ -+ * locales/iw_IL: Add comment stating why there are two locales for -+ Hebrew in Israel, and that he_IL replaces iw_IL. -+ * locales/he_IL: Likewise. -+ -+2003-08-25 Ulrich Drepper -+ -+ * locales/an_ES: Fix locale header information. -+ * locales/wa_BE: Likewise. -+ * locales/yi_US: Likewise. -+ Patch by Jordi Mallach . -+ -+2003-08-14 Ulrich Drepper -+ -+ * charmaps/WINDOWS-31J: New file. -+ * charmaps/EUC-JP-MS: New file -+ Patch by MORIYAMA Masayuki . -+ -+2003-07-27 Andreas Jaeger -+ -+ * collate-test.c: Include error.h for error prototype. -+ * xfrm-test.c: Likewise. -+ -+2003-07-13 Petter Reinholdtsen -+ -+ * collate-test.c (main): Correct handling of files with more then -+ 100 lines. Print error message if argument is missing, instead of -+ segfaulting. -+ * xfrm-test.c: Likewise. -+ -+2003-07-02 Ulrich Drepper -+ -+ * locales/lo_LA: Update collation info for U0EAF and U0EC6. -+ Update era_t_fmt, era_d_t_fmt, country_name, and lang_name fields. -+ Patch by Anousak Souphavanh . -+ -+2003-06-25 Petter Reinholdtsen -+ -+ * locales/an_ES: Change default charset from ISO-8859-1 to -+ ISO-8859-15 as the locale need the EURO sign. -+ -+ * SUPPORTED (SUPPORTED-LOCALES): Add an_ES.ISO-8859-15. -+ -+2003-06-21 Petter Reinholdtsen -+ -+ * locales/no_NO [LC_COLLATE]: Add missing eth letter, sorted as -+ latin letter d. -+ -+2003-06-16 Bruno Haible -+ -+ * charmaps/ISO-8859-15: Add aliases ISO_8859-15, LATIN-9. -+ * charmaps/ISO-8859-16: Add aliases ISO_8859-16:2001, ISO_8859-16. -+ * charmaps/IBM1047: Add alias IBM-1047. -+ * charmaps/GBK: Add aliases CP936, MS936, WINDOWS-936. -+ -+2003-06-15 Petter Reinholdtsen -+ -+ * locales/fi_FI [LC_TIME]: Correct month names to make the dates -+ gramatically correct. Patch from Eero Häkkinen. [PR libc/5013]. -+ -+2003-06-16 Ulrich Drepper -+ -+ * locales/an_ES: New file. Contributed by Jordi Mallach Péez. -+ -+2003-06-15 Petter Reinholdtsen -+ -+ * tst-fmon.c (main): Remove unused variable 'monval'. -+ -+ * tst-fmon.sh: Make sure all tests are executed before an error -+ code is reported to make. -+ * tst-numeric.sh: Likewise. -+ -+2003-06-15 Petter Reinholdtsen -+ -+ * locales/is_IS [LC_TIME]: Use lower case letters in month and -+ week day names. Patch from Bjarni Ingi Gislason. -+ -+2003-05-31 Petter Reinholdtsen -+ -+ * locales/fi_FI: Add URL to a reference documenting Finish in -+ Finland -+ * locales/fi_FI [LC_MONETARY]: Correct mon_thousands_sep from -+ period (U002E) to non-break space (U00A0). -+ suggestion from Eero Häkkinen. -+ [LC_NUMERIC]: Correct thousands_sep from period (U002E) to -+ non-break space (U00A0). Based on suggestion from Eero Häkkinen. -+ -+2003-06-11 Ulrich Drepper -+ -+ * locales/lo_LA: New file. -+ Contributed by Anousak Souphavanh . -+ * SUPPORTED (SUPPORTED-LOCALES): Add lo_LA.UTF8. -+ -+2003-05-29 Petter Reinholdtsen -+ -+ * locales/uk_UA: Correct mail address of Denys Dmytriyenko. -+ -+2003-05-10 Ulrich Drepper -+ -+ * locales/st_ZA: New file. -+ * locales/xh_ZA: New file. -+ * locales/zu_ZA: New file. -+ Contributed by Dwayne Bailey . -+ -+2003-05-06 Ulrich Drepper -+ -+ * locales/de_DE: Use two-letter abday values. -+ * tst-langinfo.sh: Update after de_DE locale change. -+ -+2003-05-05 Jakub Jelinek -+ -+ * tests-mbwc/tst_wcsxfrm.c (tst_wcsxfrm): Use %zu instead of %d -+ format specifier when printing ret. -+ -+2003-04-30 Petter Reinholdtsen -+ -+ * tst-fmon.c: Report name of locale if setlocale() fails. -+ * tst-numeric.c: Likewise. -+ -+ * tst-fmon.sh: Ignore lines starting with hash '#' in the data file. -+ * tst-numeric.sh: Likewise. -+ -+2003-04-30 Petter Reinholdtsen -+ -+ * sort-test.sh: Output 'diff -u' when sorting test failed, to make -+ it easier to find out what was wrong with the sorting order. -+ -+2003-04-16 Petter Reinholdtsen -+ -+ * Makefile (tests): Add LC_NUMERIC test tst-numeric.out. -+ (tst-numeric.out): Define. -+ * tst-numeric.c: New file. -+ * tst-numeric.sh: New file. -+ * tst-numeric.data: New file. -+ -+2003-04-21 Ulrich Drepper -+ -+ * locales/ar_BH: Fix spelling of Bahrain. -+ -+2003-04-16 Ulrich Drepper -+ -+ * locales/uk_UA: Fix sorting. -+ Patch by Leonid Kanter . -+ -+2003-04-15 Petter Reinholdtsen -+ -+ * locales/ar_SD [LC_MONETARY]: Use international currency symbol -+ 'SDD' for Sudan. -+ * locales/es_EC [LC_MONETARY]: Use international currency symbol -+ 'USD' for Ecuador. -+ Source is CIA World Fact book. -+ -+2003-04-05 Petter Reinholdtsen -+ -+ * locales/sr_YU [LC_MONETARY]: Change int_curr_symbol from 'YUN' -+ to 'YUM' to match changes commited to ISO-4217 2002-02-13 and get -+ the locale building again. -+ * locales/sr_YU@cyrillic: Likewise. -+ -+2003-04-14 Ulrich Drepper -+ -+ * locales/mn_MN: Fix country_post and country_ab2. -+ -+2003-03-17 Ulrich Drepper -+ -+ * localedata/en_ZA: Changed %x for LC_TIME to use dd/mm/ccyy. -+ Added ^ to LC_MESSAGES regex "^[yY].*". -+ Confirmed LC_PAPER and LC_MEASUREMENT settings. -+ Added country and language names to LC_ADDRESS. -+ Added missing info for LC_TELEPHONE. -+ Patch by Dwayne Bailey . -+ -+2003-03-14 Ulrich Drepper -+ -+ * localedata/mn_MN: New file. -+ Contributed by Sanlig Badral . -+ - 2003-01-30 Ulrich Drepper - - * Makefile (LOCALES): Add vi_VN.TCVN5712-1. ---- glibc-2.3.2/localedata/Makefile 2003-01-30 15:09:21.000000000 -0500 -+++ glibc-2.3.2/localedata/Makefile 2003-04-28 08:20:36.000000000 -0400 -@@ -39,7 +39,7 @@ - - test-srcs := collate-test xfrm-test tst-fmon tst-rpmatch tst-trans \ - tst-mbswcs1 tst-mbswcs2 tst-mbswcs3 tst-mbswcs4 tst-mbswcs5 \ -- tst-ctype tst-wctype tst-langinfo -+ tst-ctype tst-wctype tst-langinfo tst-numeric - test-input := de_DE.ISO-8859-1 en_US.ISO-8859-1 da_DK.ISO-8859-1 \ - hr_HR.ISO-8859-2 sv_SE.ISO-8859-1 - test-input-data = $(addsuffix .in, $(basename $(test-input))) -@@ -65,6 +65,7 @@ - tst-fmon.data $(test-input-data) $(ld-test-srcs) \ - th_TH.in cs_CZ.in tst-mbswcs.sh tst-trans.sh tst-ctype.sh \ - tst-ctype-de_DE.ISO-8859-1.in \ -+ tst-numeric.sh tst-numeric.data \ - $(wildcard tests-mbwc/*.[ch]) \ - $(addprefix tst-fmon-locales/tstfmon_,$(fmon-tests)) \ - gen-locale.sh show-ucs-data.c tst-langinfo.sh \ -@@ -130,7 +131,7 @@ - LOCALES := de_DE.ISO-8859-1 de_DE.UTF-8 en_US.ANSI_X3.4-1968 \ - en_US.ISO-8859-1 ja_JP.EUC-JP da_DK.ISO-8859-1 \ - hr_HR.ISO-8859-2 sv_SE.ISO-8859-1 ja_JP.SJIS fr_FR.ISO-8859-1 \ -- vi_VN.TCVN5712-1 -+ vi_VN.TCVN5712-1 no_NO.ISO-8859-1 nn_NO.ISO-8859-1 - LOCALE_SRCS := $(shell echo "$(LOCALES)"|sed 's/\([^ .]*\)[^ ]*/\1/g') - CHARMAPS := $(shell echo "$(LOCALES)" | \ - sed -e 's/[^ .]*[.]\([^ ]*\)/\1/g' -e s/SJIS/SHIFT_JIS/g) -@@ -151,7 +152,7 @@ - tests: $(objpfx)sort-test.out $(objpfx)tst-fmon.out $(objpfx)tst-locale.out \ - $(objpfx)tst-rpmatch.out $(objpfx)tst-trans.out \ - $(objpfx)tst-mbswcs.out $(objpfx)tst-ctype.out $(objpfx)tst-wctype.out \ -- $(objpfx)tst-langinfo.out -+ $(objpfx)tst-langinfo.out $(objpfx)tst-numeric.out - - $(objpfx)sort-test.out: sort-test.sh $(objpfx)collate-test $(objpfx)xfrm-test \ - $(test-input-data) $(addprefix $(objpfx),$(CTYPE_FILES)) -@@ -162,6 +163,11 @@ - $(addprefix $(objpfx),$(CTYPE_FILES)) - $(SHELL) -e $< $(common-objpfx) '$(run-program-prefix)' tst-fmon.data \ - > $@ -+$(objpfx)tst-numeric.out: tst-numeric.sh $(objpfx)tst-numeric tst-numeric.data \ -+ $(objpfx)sort-test.out \ -+ $(addprefix $(objpfx),$(CTYPE_FILES)) -+ $(SHELL) -e $< $(common-objpfx) '$(run-program-prefix)' tst-numeric.data \ -+ > $@ - $(objpfx)tst-locale.out: tst-locale.sh $(common-objpfx)locale/localedef \ - $(ld-test-srcs) $(addprefix $(objpfx),$(CTYPE_FILES)) - $(SHELL) -e $< $(common-objpfx) '$(built-program-cmd)' > $@ ---- glibc-2.3.2/localedata/SUPPORTED 2002-02-23 14:30:27.000000000 -0500 -+++ glibc-2.3.2/localedata/SUPPORTED 2003-08-21 08:37:05.000000000 -0400 -@@ -3,6 +3,7 @@ - # appropriate message. - SUPPORTED-LOCALES=\ - af_ZA/ISO-8859-1 \ -+an_ES/ISO-8859-15 \ - ar_AE/ISO-8859-6 \ - ar_BH/ISO-8859-6 \ - ar_DZ/ISO-8859-6 \ -@@ -112,6 +113,7 @@ - ko_KR.EUC-KR/EUC-KR \ - ko_KR.UTF-8/UTF-8 \ - kw_GB/ISO-8859-1 \ -+lo_LA/UTF-8 \ - lt_LT/ISO-8859-13 \ - lv_LV/ISO-8859-13 \ - mi_NZ/ISO-8859-13 \ ---- glibc-2.3.2/localedata/charmaps/EUC-JP-MS 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/localedata/charmaps/EUC-JP-MS 2003-08-14 04:49:27.000000000 -0400 -@@ -0,0 +1,15282 @@ -+ EUC-JP-MS -+ % -+ / -+ 1 -+ 3 -+ -+% EUC-JP-MS character map -+% MORIYAMA Masayuki , 2003. -+% Last changed: 2003-07-18 -+ -+CHARMAP -+% -+% ASCII or JIS X 0201 Roman -+% -+ /x00 NULL -+ /x01 START OF HEADING -+ /x02 START OF TEXT -+ /x03 END OF TEXT -+ /x04 END OF TRANSMISSION -+ /x05 ENQUIRY -+ /x06 ACKNOWLEDGE -+ /x07 BELL -+ /x08 BACKSPACE -+ /x09 HORIZONTAL TABULATION -+ /x0a LINE FEED -+ /x0b VERTICAL TABULATION -+ /x0c FORM FEED -+ /x0d CARRIAGE RETURN -+ /x0e SHIFT OUT -+ /x0f SHIFT IN -+ /x10 DATA LINK ESCAPE -+ /x11 DEVICE CONTROL ONE -+ /x12 DEVICE CONTROL TWO -+ /x13 DEVICE CONTROL THREE -+ /x14 DEVICE CONTROL FOUR -+ /x15 NEGATIVE ACKNOWLEDGE -+ /x16 SYNCHRONOUS IDLE -+ /x17 END OF TRANSMISSION BLOCK -+ /x18 CANCEL -+ /x19 END OF MEDIUM -+ /x1a SUBSTITUTE -+ /x1b ESCAPE -+ /x1c FILE SEPARATOR -+ /x1d GROUP SEPARATOR -+ /x1e RECORD SEPARATOR -+ /x1f UNIT SEPARATOR -+ /x20 SPACE -+ /x21 EXCLAMATION MARK -+ /x22 QUOTATION MARK -+ /x23 NUMBER SIGN -+ /x24 DOLLAR SIGN -+ /x25 PERCENT SIGN -+ /x26 AMPERSAND -+ /x27 APOSTROPHE -+ /x28 LEFT PARENTHESIS -+ /x29 RIGHT PARENTHESIS -+ /x2a ASTERISK -+ /x2b PLUS SIGN -+ /x2c COMMA -+ /x2d HYPHEN-MINUS -+ /x2e FULL STOP -+ /x2f SOLIDUS -+ /x30 DIGIT ZERO -+ /x31 DIGIT ONE -+ /x32 DIGIT TWO -+ /x33 DIGIT THREE -+ /x34 DIGIT FOUR -+ /x35 DIGIT FIVE -+ /x36 DIGIT SIX -+ /x37 DIGIT SEVEN -+ /x38 DIGIT EIGHT -+ /x39 DIGIT NINE -+ /x3a COLON -+ /x3b SEMICOLON -+ /x3c LESS-THAN SIGN -+ /x3d EQUALS SIGN -+ /x3e GREATER-THAN SIGN -+ /x3f QUESTION MARK -+ /x40 COMMERCIAL AT -+ /x41 LATIN CAPITAL LETTER A -+ /x42 LATIN CAPITAL LETTER B -+ /x43 LATIN CAPITAL LETTER C -+ /x44 LATIN CAPITAL LETTER D -+ /x45 LATIN CAPITAL LETTER E -+ /x46 LATIN CAPITAL LETTER F -+ /x47 LATIN CAPITAL LETTER G -+ /x48 LATIN CAPITAL LETTER H -+ /x49 LATIN CAPITAL LETTER I -+ /x4a LATIN CAPITAL LETTER J -+ /x4b LATIN CAPITAL LETTER K -+ /x4c LATIN CAPITAL LETTER L -+ /x4d LATIN CAPITAL LETTER M -+ /x4e LATIN CAPITAL LETTER N -+ /x4f LATIN CAPITAL LETTER O -+ /x50 LATIN CAPITAL LETTER P -+ /x51 LATIN CAPITAL LETTER Q -+ /x52 LATIN CAPITAL LETTER R -+ /x53 LATIN CAPITAL LETTER S -+ /x54 LATIN CAPITAL LETTER T -+ /x55 LATIN CAPITAL LETTER U -+ /x56 LATIN CAPITAL LETTER V -+ /x57 LATIN CAPITAL LETTER W -+ /x58 LATIN CAPITAL LETTER X -+ /x59 LATIN CAPITAL LETTER Y -+ /x5a LATIN CAPITAL LETTER Z -+ /x5b LEFT SQUARE BRACKET -+ /x5c REVERSE SOLIDUS -+ /x5d RIGHT SQUARE BRACKET -+ /x5e CIRCUMFLEX ACCENT -+ /x5f LOW LINE -+ /x60 GRAVE ACCENT -+ /x61 LATIN SMALL LETTER A -+ /x62 LATIN SMALL LETTER B -+ /x63 LATIN SMALL LETTER C -+ /x64 LATIN SMALL LETTER D -+ /x65 LATIN SMALL LETTER E -+ /x66 LATIN SMALL LETTER F -+ /x67 LATIN SMALL LETTER G -+ /x68 LATIN SMALL LETTER H -+ /x69 LATIN SMALL LETTER I -+ /x6a LATIN SMALL LETTER J -+ /x6b LATIN SMALL LETTER K -+ /x6c LATIN SMALL LETTER L -+ /x6d LATIN SMALL LETTER M -+ /x6e LATIN SMALL LETTER N -+ /x6f LATIN SMALL LETTER O -+ /x70 LATIN SMALL LETTER P -+ /x71 LATIN SMALL LETTER Q -+ /x72 LATIN SMALL LETTER R -+ /x73 LATIN SMALL LETTER S -+ /x74 LATIN SMALL LETTER T -+ /x75 LATIN SMALL LETTER U -+ /x76 LATIN SMALL LETTER V -+ /x77 LATIN SMALL LETTER W -+ /x78 LATIN SMALL LETTER X -+ /x79 LATIN SMALL LETTER Y -+ /x7a LATIN SMALL LETTER Z -+ /x7b LEFT CURLY BRACKET -+ /x7c VERTICAL LINE -+ /x7d RIGHT CURLY BRACKET -+ /x7e TILDE -+ /x7f DELETE -+ -+% -+% C1 area is mapped to itself. Excluding SS2 and SS3. -+% -+ /x80 PADDING CHARACTER (PAD) -+ /x81 HIGH OCTET PRESET (HOP) -+ /x82 BREAK PERMITTED HERE (BPH) -+ /x83 NO BREAK HERE (NBH) -+ /x84 INDEX (IND) -+ /x85 NEXT LINE (NEL) -+ /x86 START OF SELECTED AREA (SSA) -+ /x87 END OF SELECTED AREA (ESA) -+ /x88 CHARACTER TABULATION SET (HTS) -+ /x89 CHARACTER TABULATION WITH JUSTIFICATION (HTJ) -+ /x8a LINE TABULATION SET (VTS) -+ /x8b PARTIAL LINE FORWARD (PLD) -+ /x8c PARTIAL LINE BACKWARD (PLU) -+ /x8d REVERSE LINE FEED (RI) -+ /x90 DEVICE CONTROL STRING (DCS) -+ /x91 PRIVATE USE ONE (PU1) -+ /x92 PRIVATE USE TWO (PU2) -+ /x93 SET TRANSMIT STATE (STS) -+ /x94 CANCEL CHARACTER (CCH) -+ /x95 MESSAGE WAITING (MW) -+ /x96 START OF GUARDED AREA (SPA) -+ /x97 END OF GUARDED AREA (EPA) -+ /x98 START OF STRING (SOS) -+ /x99 SINGLE GRAPHIC CHARACTER INTRODUCER (SGCI) -+ /x9a SINGLE CHARACTER INTRODUCER (SCI) -+ /x9b CONTROL SEQUENCE INTRODUCER (CSI) -+ /x9c STRING TERMINATOR (ST) -+ /x9d OPERATING SYSTEM COMMAND (OSC) -+ /x9e PRIVACY MESSAGE (PM) -+ /x9f APPLICATION PROGRAM COMMAND (APC) -+ -+% -+% JIS X 0201 Kana -+% -+ /x8e/xa1 HALFWIDTH IDEOGRAPHIC FULL STOP -+ /x8e/xa2 HALFWIDTH LEFT CORNER BRACKET -+ /x8e/xa3 HALFWIDTH RIGHT CORNER BRACKET -+ /x8e/xa4 HALFWIDTH IDEOGRAPHIC COMMA -+ /x8e/xa5 HALFWIDTH KATAKANA MIDDLE DOT -+ /x8e/xa6 HALFWIDTH KATAKANA LETTER WO -+ /x8e/xa7 HALFWIDTH KATAKANA LETTER SMALL A -+ /x8e/xa8 HALFWIDTH KATAKANA LETTER SMALL I -+ /x8e/xa9 HALFWIDTH KATAKANA LETTER SMALL U -+ /x8e/xaa HALFWIDTH KATAKANA LETTER SMALL E -+ /x8e/xab HALFWIDTH KATAKANA LETTER SMALL O -+ /x8e/xac HALFWIDTH KATAKANA LETTER SMALL YA -+ /x8e/xad HALFWIDTH KATAKANA LETTER SMALL YU -+ /x8e/xae HALFWIDTH KATAKANA LETTER SMALL YO -+ /x8e/xaf HALFWIDTH KATAKANA LETTER SMALL TU -+ /x8e/xb0 HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK -+ /x8e/xb1 HALFWIDTH KATAKANA LETTER A -+ /x8e/xb2 HALFWIDTH KATAKANA LETTER I -+ /x8e/xb3 HALFWIDTH KATAKANA LETTER U -+ /x8e/xb4 HALFWIDTH KATAKANA LETTER E -+ /x8e/xb5 HALFWIDTH KATAKANA LETTER O -+ /x8e/xb6 HALFWIDTH KATAKANA LETTER KA -+ /x8e/xb7 HALFWIDTH KATAKANA LETTER KI -+ /x8e/xb8 HALFWIDTH KATAKANA LETTER KU -+ /x8e/xb9 HALFWIDTH KATAKANA LETTER KE -+ /x8e/xba HALFWIDTH KATAKANA LETTER KO -+ /x8e/xbb HALFWIDTH KATAKANA LETTER SA -+ /x8e/xbc HALFWIDTH KATAKANA LETTER SI -+ /x8e/xbd HALFWIDTH KATAKANA LETTER SU -+ /x8e/xbe HALFWIDTH KATAKANA LETTER SE -+ /x8e/xbf HALFWIDTH KATAKANA LETTER SO -+ /x8e/xc0 HALFWIDTH KATAKANA LETTER TA -+ /x8e/xc1 HALFWIDTH KATAKANA LETTER TI -+ /x8e/xc2 HALFWIDTH KATAKANA LETTER TU -+ /x8e/xc3 HALFWIDTH KATAKANA LETTER TE -+ /x8e/xc4 HALFWIDTH KATAKANA LETTER TO -+ /x8e/xc5 HALFWIDTH KATAKANA LETTER NA -+ /x8e/xc6 HALFWIDTH KATAKANA LETTER NI -+ /x8e/xc7 HALFWIDTH KATAKANA LETTER NU -+ /x8e/xc8 HALFWIDTH KATAKANA LETTER NE -+ /x8e/xc9 HALFWIDTH KATAKANA LETTER NO -+ /x8e/xca HALFWIDTH KATAKANA LETTER HA -+ /x8e/xcb HALFWIDTH KATAKANA LETTER HI -+ /x8e/xcc HALFWIDTH KATAKANA LETTER HU -+ /x8e/xcd HALFWIDTH KATAKANA LETTER HE -+ /x8e/xce HALFWIDTH KATAKANA LETTER HO -+ /x8e/xcf HALFWIDTH KATAKANA LETTER MA -+ /x8e/xd0 HALFWIDTH KATAKANA LETTER MI -+ /x8e/xd1 HALFWIDTH KATAKANA LETTER MU -+ /x8e/xd2 HALFWIDTH KATAKANA LETTER ME -+ /x8e/xd3 HALFWIDTH KATAKANA LETTER MO -+ /x8e/xd4 HALFWIDTH KATAKANA LETTER YA -+ /x8e/xd5 HALFWIDTH KATAKANA LETTER YU -+ /x8e/xd6 HALFWIDTH KATAKANA LETTER YO -+ /x8e/xd7 HALFWIDTH KATAKANA LETTER RA -+ /x8e/xd8 HALFWIDTH KATAKANA LETTER RI -+ /x8e/xd9 HALFWIDTH KATAKANA LETTER RU -+ /x8e/xda HALFWIDTH KATAKANA LETTER RE -+ /x8e/xdb HALFWIDTH KATAKANA LETTER RO -+ /x8e/xdc HALFWIDTH KATAKANA LETTER WA -+ /x8e/xdd HALFWIDTH KATAKANA LETTER N -+ /x8e/xde HALFWIDTH KATAKANA VOICED SOUND MARK -+ /x8e/xdf HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK -+ -+% -+% JIS X 0208 -+% -+ /xa1/xa1 IDEOGRAPHIC SPACE -+ /xa1/xa2 IDEOGRAPHIC COMMA -+ /xa1/xa3 IDEOGRAPHIC FULL STOP -+ /xa1/xa4 FULLWIDTH COMMA -+ /xa1/xa5 FULLWIDTH FULL STOP -+ /xa1/xa6 KATAKANA MIDDLE DOT -+ /xa1/xa7 FULLWIDTH COLON -+ /xa1/xa8 FULLWIDTH SEMICOLON -+ /xa1/xa9 FULLWIDTH QUESTION MARK -+ /xa1/xaa FULLWIDTH EXCLAMATION MARK -+ /xa1/xab KATAKANA-HIRAGANA VOICED SOUND MARK -+ /xa1/xac KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK -+ /xa1/xad ACUTE ACCENT -+ /xa1/xae FULLWIDTH GRAVE ACCENT -+ /xa1/xaf DIAERESIS -+ /xa1/xb0 FULLWIDTH CIRCUMFLEX ACCENT -+ /xa1/xb1 FULLWIDTH MACRON -+ /xa1/xb2 FULLWIDTH LOW LINE -+ /xa1/xb3 KATAKANA ITERATION MARK -+ /xa1/xb4 KATAKANA VOICED ITERATION MARK -+ /xa1/xb5 HIRAGANA ITERATION MARK -+ /xa1/xb6 HIRAGANA VOICED ITERATION MARK -+ /xa1/xb7 DITTO MARK -+ /xa1/xb8 -+ /xa1/xb9 IDEOGRAPHIC ITERATION MARK -+ /xa1/xba IDEOGRAPHIC CLOSING MARK -+ /xa1/xbb IDEOGRAPHIC NUMBER ZERO -+ /xa1/xbc KATAKANA-HIRAGANA PROLONGED SOUND MARK -+ /xa1/xbd HORIZONTAL BAR -+ /xa1/xbe HYPHEN -+ /xa1/xbf FULLWIDTH SOLIDUS -+ /xa1/xc0 FULLWIDTH REVERSE SOLIDUS -+ /xa1/xc1 FULLWIDTH TILDE -+ /xa1/xc2 PARALLEL TO -+ /xa1/xc3 FULLWIDTH VERTICAL LINE -+ /xa1/xc4 HORIZONTAL ELLIPSIS -+ /xa1/xc5 TWO DOT LEADER -+ /xa1/xc6 LEFT SINGLE QUOTATION MARK -+ /xa1/xc7 RIGHT SINGLE QUOTATION MARK -+ /xa1/xc8 LEFT DOUBLE QUOTATION MARK -+ /xa1/xc9 RIGHT DOUBLE QUOTATION MARK -+ /xa1/xca FULLWIDTH LEFT PARENTHESIS -+ /xa1/xcb FULLWIDTH RIGHT PARENTHESIS -+ /xa1/xcc LEFT TORTOISE SHELL BRACKET -+ /xa1/xcd RIGHT TORTOISE SHELL BRACKET -+ /xa1/xce FULLWIDTH LEFT SQUARE BRACKET -+ /xa1/xcf FULLWIDTH RIGHT SQUARE BRACKET -+ /xa1/xd0 FULLWIDTH LEFT CURLY BRACKET -+ /xa1/xd1 FULLWIDTH RIGHT CURLY BRACKET -+ /xa1/xd2 LEFT ANGLE BRACKET -+ /xa1/xd3 RIGHT ANGLE BRACKET -+ /xa1/xd4 LEFT DOUBLE ANGLE BRACKET -+ /xa1/xd5 RIGHT DOUBLE ANGLE BRACKET -+ /xa1/xd6 LEFT CORNER BRACKET -+ /xa1/xd7 RIGHT CORNER BRACKET -+ /xa1/xd8 LEFT WHITE CORNER BRACKET -+ /xa1/xd9 RIGHT WHITE CORNER BRACKET -+ /xa1/xda LEFT BLACK LENTICULAR BRACKET -+ /xa1/xdb RIGHT BLACK LENTICULAR BRACKET -+ /xa1/xdc FULLWIDTH PLUS SIGN -+ /xa1/xdd FULLWIDTH HYPHEN-MINUS -+ /xa1/xde PLUS-MINUS SIGN -+ /xa1/xdf MULTIPLICATION SIGN -+ /xa1/xe0 DIVISION SIGN -+ /xa1/xe1 FULLWIDTH EQUALS SIGN -+ /xa1/xe2 NOT EQUAL TO -+ /xa1/xe3 FULLWIDTH LESS-THAN SIGN -+ /xa1/xe4 FULLWIDTH GREATER-THAN SIGN -+ /xa1/xe5 LESS-THAN OVER EQUAL TO -+ /xa1/xe6 GREATER-THAN OVER EQUAL TO -+ /xa1/xe7 INFINITY -+ /xa1/xe8 THEREFORE -+ /xa1/xe9 MALE SIGN -+ /xa1/xea FEMALE SIGN -+ /xa1/xeb DEGREE SIGN -+ /xa1/xec PRIME -+ /xa1/xed DOUBLE PRIME -+ /xa1/xee DEGREE CELSIUS -+ /xa1/xef FULLWIDTH YEN SIGN -+ /xa1/xf0 FULLWIDTH DOLLAR SIGN -+ /xa1/xf1 FULLWIDTH CENT SIGN -+ /xa1/xf2 FULLWIDTH POUND SIGN -+ /xa1/xf3 FULLWIDTH PERCENT SIGN -+ /xa1/xf4 FULLWIDTH NUMBER SIGN -+ /xa1/xf5 FULLWIDTH AMPERSAND -+ /xa1/xf6 FULLWIDTH ASTERISK -+ /xa1/xf7 FULLWIDTH COMMERCIAL AT -+ /xa1/xf8 SECTION SIGN -+ /xa1/xf9 WHITE STAR -+ /xa1/xfa BLACK STAR -+ /xa1/xfb WHITE CIRCLE -+ /xa1/xfc BLACK CIRCLE -+ /xa1/xfd BULLSEYE -+ /xa1/xfe WHITE DIAMOND -+ /xa2/xa1 BLACK DIAMOND -+ /xa2/xa2 WHITE SQUARE -+ /xa2/xa3 BLACK SQUARE -+ /xa2/xa4 WHITE UP-POINTING TRIANGLE -+ /xa2/xa5 BLACK UP-POINTING TRIANGLE -+ /xa2/xa6 WHITE DOWN-POINTING TRIANGLE -+ /xa2/xa7 BLACK DOWN-POINTING TRIANGLE -+ /xa2/xa8 REFERENCE MARK -+ /xa2/xa9 POSTAL MARK -+ /xa2/xaa RIGHTWARDS ARROW -+ /xa2/xab LEFTWARDS ARROW -+ /xa2/xac UPWARDS ARROW -+ /xa2/xad DOWNWARDS ARROW -+ /xa2/xae GETA MARK -+ /xa2/xba ELEMENT OF -+ /xa2/xbb CONTAINS AS MEMBER -+ /xa2/xbc SUBSET OF OR EQUAL TO -+ /xa2/xbd SUPERSET OF OR EQUAL TO -+ /xa2/xbe SUBSET OF -+ /xa2/xbf SUPERSET OF -+ /xa2/xc0 UNION -+ /xa2/xc1 INTERSECTION -+ /xa2/xca LOGICAL AND -+ /xa2/xcb LOGICAL OR -+ /xa2/xcc FULLWIDTH NOT SIGN -+ /xa2/xcd RIGHTWARDS DOUBLE ARROW -+ /xa2/xce LEFT RIGHT DOUBLE ARROW -+ /xa2/xcf FOR ALL -+ /xa2/xd0 THERE EXISTS -+ /xa2/xdc ANGLE -+ /xa2/xdd UP TACK -+ /xa2/xde ARC -+ /xa2/xdf PARTIAL DIFFERENTIAL -+ /xa2/xe0 NABLA -+ /xa2/xe1 IDENTICAL TO -+ /xa2/xe2 APPROXIMATELY EQUAL TO OR THE IMAGE OF -+ /xa2/xe3 MUCH LESS-THAN -+ /xa2/xe4 MUCH GREATER-THAN -+ /xa2/xe5 SQUARE ROOT -+ /xa2/xe6 REVERSED TILDE -+ /xa2/xe7 PROPORTIONAL TO -+ /xa2/xe8 BECAUSE -+ /xa2/xe9 INTEGRAL -+ /xa2/xea DOUBLE INTEGRAL -+ /xa2/xf2 ANGSTROM SIGN -+ /xa2/xf3 PER MILLE SIGN -+ /xa2/xf4 MUSIC SHARP SIGN -+ /xa2/xf5 MUSIC FLAT SIGN -+ /xa2/xf6 EIGHTH NOTE -+ /xa2/xf7 DAGGER -+ /xa2/xf8 DOUBLE DAGGER -+ /xa2/xf9 PILCROW SIGN -+ /xa2/xfe LARGE CIRCLE -+ /xa3/xb0 FULLWIDTH DIGIT ZERO -+ /xa3/xb1 FULLWIDTH DIGIT ONE -+ /xa3/xb2 FULLWIDTH DIGIT TWO -+ /xa3/xb3 FULLWIDTH DIGIT THREE -+ /xa3/xb4 FULLWIDTH DIGIT FOUR -+ /xa3/xb5 FULLWIDTH DIGIT FIVE -+ /xa3/xb6 FULLWIDTH DIGIT SIX -+ /xa3/xb7 FULLWIDTH DIGIT SEVEN -+ /xa3/xb8 FULLWIDTH DIGIT EIGHT -+ /xa3/xb9 FULLWIDTH DIGIT NINE -+ /xa3/xc1 FULLWIDTH LATIN CAPITAL LETTER A -+ /xa3/xc2 FULLWIDTH LATIN CAPITAL LETTER B -+ /xa3/xc3 FULLWIDTH LATIN CAPITAL LETTER C -+ /xa3/xc4 FULLWIDTH LATIN CAPITAL LETTER D -+ /xa3/xc5 FULLWIDTH LATIN CAPITAL LETTER E -+ /xa3/xc6 FULLWIDTH LATIN CAPITAL LETTER F -+ /xa3/xc7 FULLWIDTH LATIN CAPITAL LETTER G -+ /xa3/xc8 FULLWIDTH LATIN CAPITAL LETTER H -+ /xa3/xc9 FULLWIDTH LATIN CAPITAL LETTER I -+ /xa3/xca FULLWIDTH LATIN CAPITAL LETTER J -+ /xa3/xcb FULLWIDTH LATIN CAPITAL LETTER K -+ /xa3/xcc FULLWIDTH LATIN CAPITAL LETTER L -+ /xa3/xcd FULLWIDTH LATIN CAPITAL LETTER M -+ /xa3/xce FULLWIDTH LATIN CAPITAL LETTER N -+ /xa3/xcf FULLWIDTH LATIN CAPITAL LETTER O -+ /xa3/xd0 FULLWIDTH LATIN CAPITAL LETTER P -+ /xa3/xd1 FULLWIDTH LATIN CAPITAL LETTER Q -+ /xa3/xd2 FULLWIDTH LATIN CAPITAL LETTER R -+ /xa3/xd3 FULLWIDTH LATIN CAPITAL LETTER S -+ /xa3/xd4 FULLWIDTH LATIN CAPITAL LETTER T -+ /xa3/xd5 FULLWIDTH LATIN CAPITAL LETTER U -+ /xa3/xd6 FULLWIDTH LATIN CAPITAL LETTER V -+ /xa3/xd7 FULLWIDTH LATIN CAPITAL LETTER W -+ /xa3/xd8 FULLWIDTH LATIN CAPITAL LETTER X -+ /xa3/xd9 FULLWIDTH LATIN CAPITAL LETTER Y -+ /xa3/xda FULLWIDTH LATIN CAPITAL LETTER Z -+ /xa3/xe1 FULLWIDTH LATIN SMALL LETTER A -+ /xa3/xe2 FULLWIDTH LATIN SMALL LETTER B -+ /xa3/xe3 FULLWIDTH LATIN SMALL LETTER C -+ /xa3/xe4 FULLWIDTH LATIN SMALL LETTER D -+ /xa3/xe5 FULLWIDTH LATIN SMALL LETTER E -+ /xa3/xe6 FULLWIDTH LATIN SMALL LETTER F -+ /xa3/xe7 FULLWIDTH LATIN SMALL LETTER G -+ /xa3/xe8 FULLWIDTH LATIN SMALL LETTER H -+ /xa3/xe9 FULLWIDTH LATIN SMALL LETTER I -+ /xa3/xea FULLWIDTH LATIN SMALL LETTER J -+ /xa3/xeb FULLWIDTH LATIN SMALL LETTER K -+ /xa3/xec FULLWIDTH LATIN SMALL LETTER L -+ /xa3/xed FULLWIDTH LATIN SMALL LETTER M -+ /xa3/xee FULLWIDTH LATIN SMALL LETTER N -+ /xa3/xef FULLWIDTH LATIN SMALL LETTER O -+ /xa3/xf0 FULLWIDTH LATIN SMALL LETTER P -+ /xa3/xf1 FULLWIDTH LATIN SMALL LETTER Q -+ /xa3/xf2 FULLWIDTH LATIN SMALL LETTER R -+ /xa3/xf3 FULLWIDTH LATIN SMALL LETTER S -+ /xa3/xf4 FULLWIDTH LATIN SMALL LETTER T -+ /xa3/xf5 FULLWIDTH LATIN SMALL LETTER U -+ /xa3/xf6 FULLWIDTH LATIN SMALL LETTER V -+ /xa3/xf7 FULLWIDTH LATIN SMALL LETTER W -+ /xa3/xf8 FULLWIDTH LATIN SMALL LETTER X -+ /xa3/xf9 FULLWIDTH LATIN SMALL LETTER Y -+ /xa3/xfa FULLWIDTH LATIN SMALL LETTER Z -+ /xa4/xa1 HIRAGANA LETTER SMALL A -+ /xa4/xa2 HIRAGANA LETTER A -+ /xa4/xa3 HIRAGANA LETTER SMALL I -+ /xa4/xa4 HIRAGANA LETTER I -+ /xa4/xa5 HIRAGANA LETTER SMALL U -+ /xa4/xa6 HIRAGANA LETTER U -+ /xa4/xa7 HIRAGANA LETTER SMALL E -+ /xa4/xa8 HIRAGANA LETTER E -+ /xa4/xa9 HIRAGANA LETTER SMALL O -+ /xa4/xaa HIRAGANA LETTER O -+ /xa4/xab HIRAGANA LETTER KA -+ /xa4/xac HIRAGANA LETTER GA -+ /xa4/xad HIRAGANA LETTER KI -+ /xa4/xae HIRAGANA LETTER GI -+ /xa4/xaf HIRAGANA LETTER KU -+ /xa4/xb0 HIRAGANA LETTER GU -+ /xa4/xb1 HIRAGANA LETTER KE -+ /xa4/xb2 HIRAGANA LETTER GE -+ /xa4/xb3 HIRAGANA LETTER KO -+ /xa4/xb4 HIRAGANA LETTER GO -+ /xa4/xb5 HIRAGANA LETTER SA -+ /xa4/xb6 HIRAGANA LETTER ZA -+ /xa4/xb7 HIRAGANA LETTER SI -+ /xa4/xb8 HIRAGANA LETTER ZI -+ /xa4/xb9 HIRAGANA LETTER SU -+ /xa4/xba HIRAGANA LETTER ZU -+ /xa4/xbb HIRAGANA LETTER SE -+ /xa4/xbc HIRAGANA LETTER ZE -+ /xa4/xbd HIRAGANA LETTER SO -+ /xa4/xbe HIRAGANA LETTER ZO -+ /xa4/xbf HIRAGANA LETTER TA -+ /xa4/xc0 HIRAGANA LETTER DA -+ /xa4/xc1 HIRAGANA LETTER TI -+ /xa4/xc2 HIRAGANA LETTER DI -+ /xa4/xc3 HIRAGANA LETTER SMALL TU -+ /xa4/xc4 HIRAGANA LETTER TU -+ /xa4/xc5 HIRAGANA LETTER DU -+ /xa4/xc6 HIRAGANA LETTER TE -+ /xa4/xc7 HIRAGANA LETTER DE -+ /xa4/xc8 HIRAGANA LETTER TO -+ /xa4/xc9 HIRAGANA LETTER DO -+ /xa4/xca HIRAGANA LETTER NA -+ /xa4/xcb HIRAGANA LETTER NI -+ /xa4/xcc HIRAGANA LETTER NU -+ /xa4/xcd HIRAGANA LETTER NE -+ /xa4/xce HIRAGANA LETTER NO -+ /xa4/xcf HIRAGANA LETTER HA -+ /xa4/xd0 HIRAGANA LETTER BA -+ /xa4/xd1 HIRAGANA LETTER PA -+ /xa4/xd2 HIRAGANA LETTER HI -+ /xa4/xd3 HIRAGANA LETTER BI -+ /xa4/xd4 HIRAGANA LETTER PI -+ /xa4/xd5 HIRAGANA LETTER HU -+ /xa4/xd6 HIRAGANA LETTER BU -+ /xa4/xd7 HIRAGANA LETTER PU -+ /xa4/xd8 HIRAGANA LETTER HE -+ /xa4/xd9 HIRAGANA LETTER BE -+ /xa4/xda HIRAGANA LETTER PE -+ /xa4/xdb HIRAGANA LETTER HO -+ /xa4/xdc HIRAGANA LETTER BO -+ /xa4/xdd HIRAGANA LETTER PO -+ /xa4/xde HIRAGANA LETTER MA -+ /xa4/xdf HIRAGANA LETTER MI -+ /xa4/xe0 HIRAGANA LETTER MU -+ /xa4/xe1 HIRAGANA LETTER ME -+ /xa4/xe2 HIRAGANA LETTER MO -+ /xa4/xe3 HIRAGANA LETTER SMALL YA -+ /xa4/xe4 HIRAGANA LETTER YA -+ /xa4/xe5 HIRAGANA LETTER SMALL YU -+ /xa4/xe6 HIRAGANA LETTER YU -+ /xa4/xe7 HIRAGANA LETTER SMALL YO -+ /xa4/xe8 HIRAGANA LETTER YO -+ /xa4/xe9 HIRAGANA LETTER RA -+ /xa4/xea HIRAGANA LETTER RI -+ /xa4/xeb HIRAGANA LETTER RU -+ /xa4/xec HIRAGANA LETTER RE -+ /xa4/xed HIRAGANA LETTER RO -+ /xa4/xee HIRAGANA LETTER SMALL WA -+ /xa4/xef HIRAGANA LETTER WA -+ /xa4/xf0 HIRAGANA LETTER WI -+ /xa4/xf1 HIRAGANA LETTER WE -+ /xa4/xf2 HIRAGANA LETTER WO -+ /xa4/xf3 HIRAGANA LETTER N -+ /xa5/xa1 KATAKANA LETTER SMALL A -+ /xa5/xa2 KATAKANA LETTER A -+ /xa5/xa3 KATAKANA LETTER SMALL I -+ /xa5/xa4 KATAKANA LETTER I -+ /xa5/xa5 KATAKANA LETTER SMALL U -+ /xa5/xa6 KATAKANA LETTER U -+ /xa5/xa7 KATAKANA LETTER SMALL E -+ /xa5/xa8 KATAKANA LETTER E -+ /xa5/xa9 KATAKANA LETTER SMALL O -+ /xa5/xaa KATAKANA LETTER O -+ /xa5/xab KATAKANA LETTER KA -+ /xa5/xac KATAKANA LETTER GA -+ /xa5/xad KATAKANA LETTER KI -+ /xa5/xae KATAKANA LETTER GI -+ /xa5/xaf KATAKANA LETTER KU -+ /xa5/xb0 KATAKANA LETTER GU -+ /xa5/xb1 KATAKANA LETTER KE -+ /xa5/xb2 KATAKANA LETTER GE -+ /xa5/xb3 KATAKANA LETTER KO -+ /xa5/xb4 KATAKANA LETTER GO -+ /xa5/xb5 KATAKANA LETTER SA -+ /xa5/xb6 KATAKANA LETTER ZA -+ /xa5/xb7 KATAKANA LETTER SI -+ /xa5/xb8 KATAKANA LETTER ZI -+ /xa5/xb9 KATAKANA LETTER SU -+ /xa5/xba KATAKANA LETTER ZU -+ /xa5/xbb KATAKANA LETTER SE -+ /xa5/xbc KATAKANA LETTER ZE -+ /xa5/xbd KATAKANA LETTER SO -+ /xa5/xbe KATAKANA LETTER ZO -+ /xa5/xbf KATAKANA LETTER TA -+ /xa5/xc0 KATAKANA LETTER DA -+ /xa5/xc1 KATAKANA LETTER TI -+ /xa5/xc2 KATAKANA LETTER DI -+ /xa5/xc3 KATAKANA LETTER SMALL TU -+ /xa5/xc4 KATAKANA LETTER TU -+ /xa5/xc5 KATAKANA LETTER DU -+ /xa5/xc6 KATAKANA LETTER TE -+ /xa5/xc7 KATAKANA LETTER DE -+ /xa5/xc8 KATAKANA LETTER TO -+ /xa5/xc9 KATAKANA LETTER DO -+ /xa5/xca KATAKANA LETTER NA -+ /xa5/xcb KATAKANA LETTER NI -+ /xa5/xcc KATAKANA LETTER NU -+ /xa5/xcd KATAKANA LETTER NE -+ /xa5/xce KATAKANA LETTER NO -+ /xa5/xcf KATAKANA LETTER HA -+ /xa5/xd0 KATAKANA LETTER BA -+ /xa5/xd1 KATAKANA LETTER PA -+ /xa5/xd2 KATAKANA LETTER HI -+ /xa5/xd3 KATAKANA LETTER BI -+ /xa5/xd4 KATAKANA LETTER PI -+ /xa5/xd5 KATAKANA LETTER HU -+ /xa5/xd6 KATAKANA LETTER BU -+ /xa5/xd7 KATAKANA LETTER PU -+ /xa5/xd8 KATAKANA LETTER HE -+ /xa5/xd9 KATAKANA LETTER BE -+ /xa5/xda KATAKANA LETTER PE -+ /xa5/xdb KATAKANA LETTER HO -+ /xa5/xdc KATAKANA LETTER BO -+ /xa5/xdd KATAKANA LETTER PO -+ /xa5/xde KATAKANA LETTER MA -+ /xa5/xdf KATAKANA LETTER MI -+ /xa5/xe0 KATAKANA LETTER MU -+ /xa5/xe1 KATAKANA LETTER ME -+ /xa5/xe2 KATAKANA LETTER MO -+ /xa5/xe3 KATAKANA LETTER SMALL YA -+ /xa5/xe4 KATAKANA LETTER YA -+ /xa5/xe5 KATAKANA LETTER SMALL YU -+ /xa5/xe6 KATAKANA LETTER YU -+ /xa5/xe7 KATAKANA LETTER SMALL YO -+ /xa5/xe8 KATAKANA LETTER YO -+ /xa5/xe9 KATAKANA LETTER RA -+ /xa5/xea KATAKANA LETTER RI -+ /xa5/xeb KATAKANA LETTER RU -+ /xa5/xec KATAKANA LETTER RE -+ /xa5/xed KATAKANA LETTER RO -+ /xa5/xee KATAKANA LETTER SMALL WA -+ /xa5/xef KATAKANA LETTER WA -+ /xa5/xf0 KATAKANA LETTER WI -+ /xa5/xf1 KATAKANA LETTER WE -+ /xa5/xf2 KATAKANA LETTER WO -+ /xa5/xf3 KATAKANA LETTER N -+ /xa5/xf4 KATAKANA LETTER VU -+ /xa5/xf5 KATAKANA LETTER SMALL KA -+ /xa5/xf6 KATAKANA LETTER SMALL KE -+ /xa6/xa1 GREEK CAPITAL LETTER ALPHA -+ /xa6/xa2 GREEK CAPITAL LETTER BETA -+ /xa6/xa3 GREEK CAPITAL LETTER GAMMA -+ /xa6/xa4 GREEK CAPITAL LETTER DELTA -+ /xa6/xa5 GREEK CAPITAL LETTER EPSILON -+ /xa6/xa6 GREEK CAPITAL LETTER ZETA -+ /xa6/xa7 GREEK CAPITAL LETTER ETA -+ /xa6/xa8 GREEK CAPITAL LETTER THETA -+ /xa6/xa9 GREEK CAPITAL LETTER IOTA -+ /xa6/xaa GREEK CAPITAL LETTER KAPPA -+ /xa6/xab GREEK CAPITAL LETTER LAMDA -+ /xa6/xac GREEK CAPITAL LETTER MU -+ /xa6/xad GREEK CAPITAL LETTER NU -+ /xa6/xae GREEK CAPITAL LETTER XI -+ /xa6/xaf GREEK CAPITAL LETTER OMICRON -+ /xa6/xb0 GREEK CAPITAL LETTER PI -+ /xa6/xb1 GREEK CAPITAL LETTER RHO -+ /xa6/xb2 GREEK CAPITAL LETTER SIGMA -+ /xa6/xb3 GREEK CAPITAL LETTER TAU -+ /xa6/xb4 GREEK CAPITAL LETTER UPSILON -+ /xa6/xb5 GREEK CAPITAL LETTER PHI -+ /xa6/xb6 GREEK CAPITAL LETTER CHI -+ /xa6/xb7 GREEK CAPITAL LETTER PSI -+ /xa6/xb8 GREEK CAPITAL LETTER OMEGA -+ /xa6/xc1 GREEK SMALL LETTER ALPHA -+ /xa6/xc2 GREEK SMALL LETTER BETA -+ /xa6/xc3 GREEK SMALL LETTER GAMMA -+ /xa6/xc4 GREEK SMALL LETTER DELTA -+ /xa6/xc5 GREEK SMALL LETTER EPSILON -+ /xa6/xc6 GREEK SMALL LETTER ZETA -+ /xa6/xc7 GREEK SMALL LETTER ETA -+ /xa6/xc8 GREEK SMALL LETTER THETA -+ /xa6/xc9 GREEK SMALL LETTER IOTA -+ /xa6/xca GREEK SMALL LETTER KAPPA -+ /xa6/xcb GREEK SMALL LETTER LAMDA -+ /xa6/xcc GREEK SMALL LETTER MU -+ /xa6/xcd GREEK SMALL LETTER NU -+ /xa6/xce GREEK SMALL LETTER XI -+ /xa6/xcf GREEK SMALL LETTER OMICRON -+ /xa6/xd0 GREEK SMALL LETTER PI -+ /xa6/xd1 GREEK SMALL LETTER RHO -+ /xa6/xd2 GREEK SMALL LETTER SIGMA -+ /xa6/xd3 GREEK SMALL LETTER TAU -+ /xa6/xd4 GREEK SMALL LETTER UPSILON -+ /xa6/xd5 GREEK SMALL LETTER PHI -+ /xa6/xd6 GREEK SMALL LETTER CHI -+ /xa6/xd7 GREEK SMALL LETTER PSI -+ /xa6/xd8 GREEK SMALL LETTER OMEGA -+ /xa7/xa1 CYRILLIC CAPITAL LETTER A -+ /xa7/xa2 CYRILLIC CAPITAL LETTER BE -+ /xa7/xa3 CYRILLIC CAPITAL LETTER VE -+ /xa7/xa4 CYRILLIC CAPITAL LETTER GHE -+ /xa7/xa5 CYRILLIC CAPITAL LETTER DE -+ /xa7/xa6 CYRILLIC CAPITAL LETTER IE -+ /xa7/xa7 CYRILLIC CAPITAL LETTER IO -+ /xa7/xa8 CYRILLIC CAPITAL LETTER ZHE -+ /xa7/xa9 CYRILLIC CAPITAL LETTER ZE -+ /xa7/xaa CYRILLIC CAPITAL LETTER I -+ /xa7/xab CYRILLIC CAPITAL LETTER SHORT I -+ /xa7/xac CYRILLIC CAPITAL LETTER KA -+ /xa7/xad CYRILLIC CAPITAL LETTER EL -+ /xa7/xae CYRILLIC CAPITAL LETTER EM -+ /xa7/xaf CYRILLIC CAPITAL LETTER EN -+ /xa7/xb0 CYRILLIC CAPITAL LETTER O -+ /xa7/xb1 CYRILLIC CAPITAL LETTER PE -+ /xa7/xb2 CYRILLIC CAPITAL LETTER ER -+ /xa7/xb3 CYRILLIC CAPITAL LETTER ES -+ /xa7/xb4 CYRILLIC CAPITAL LETTER TE -+ /xa7/xb5 CYRILLIC CAPITAL LETTER U -+ /xa7/xb6 CYRILLIC CAPITAL LETTER EF -+ /xa7/xb7 CYRILLIC CAPITAL LETTER HA -+ /xa7/xb8 CYRILLIC CAPITAL LETTER TSE -+ /xa7/xb9 CYRILLIC CAPITAL LETTER CHE -+ /xa7/xba CYRILLIC CAPITAL LETTER SHA -+ /xa7/xbb CYRILLIC CAPITAL LETTER SHCHA -+ /xa7/xbc CYRILLIC CAPITAL LETTER HARD SIGN -+ /xa7/xbd CYRILLIC CAPITAL LETTER YERU -+ /xa7/xbe CYRILLIC CAPITAL LETTER SOFT SIGN -+ /xa7/xbf CYRILLIC CAPITAL LETTER E -+ /xa7/xc0 CYRILLIC CAPITAL LETTER YU -+ /xa7/xc1 CYRILLIC CAPITAL LETTER YA -+ /xa7/xd1 CYRILLIC SMALL LETTER A -+ /xa7/xd2 CYRILLIC SMALL LETTER BE -+ /xa7/xd3 CYRILLIC SMALL LETTER VE -+ /xa7/xd4 CYRILLIC SMALL LETTER GHE -+ /xa7/xd5 CYRILLIC SMALL LETTER DE -+ /xa7/xd6 CYRILLIC SMALL LETTER IE -+ /xa7/xd7 CYRILLIC SMALL LETTER IO -+ /xa7/xd8 CYRILLIC SMALL LETTER ZHE -+ /xa7/xd9 CYRILLIC SMALL LETTER ZE -+ /xa7/xda CYRILLIC SMALL LETTER I -+ /xa7/xdb CYRILLIC SMALL LETTER SHORT I -+ /xa7/xdc CYRILLIC SMALL LETTER KA -+ /xa7/xdd CYRILLIC SMALL LETTER EL -+ /xa7/xde CYRILLIC SMALL LETTER EM -+ /xa7/xdf CYRILLIC SMALL LETTER EN -+ /xa7/xe0 CYRILLIC SMALL LETTER O -+ /xa7/xe1 CYRILLIC SMALL LETTER PE -+ /xa7/xe2 CYRILLIC SMALL LETTER ER -+ /xa7/xe3 CYRILLIC SMALL LETTER ES -+ /xa7/xe4 CYRILLIC SMALL LETTER TE -+ /xa7/xe5 CYRILLIC SMALL LETTER U -+ /xa7/xe6 CYRILLIC SMALL LETTER EF -+ /xa7/xe7 CYRILLIC SMALL LETTER HA -+ /xa7/xe8 CYRILLIC SMALL LETTER TSE -+ /xa7/xe9 CYRILLIC SMALL LETTER CHE -+ /xa7/xea CYRILLIC SMALL LETTER SHA -+ /xa7/xeb CYRILLIC SMALL LETTER SHCHA -+ /xa7/xec CYRILLIC SMALL LETTER HARD SIGN -+ /xa7/xed CYRILLIC SMALL LETTER YERU -+ /xa7/xee CYRILLIC SMALL LETTER SOFT SIGN -+ /xa7/xef CYRILLIC SMALL LETTER E -+ /xa7/xf0 CYRILLIC SMALL LETTER YU -+ /xa7/xf1 CYRILLIC SMALL LETTER YA -+ /xa8/xa1 BOX DRAWINGS LIGHT HORIZONTAL -+ /xa8/xa2 BOX DRAWINGS LIGHT VERTICAL -+ /xa8/xa3 BOX DRAWINGS LIGHT DOWN AND RIGHT -+ /xa8/xa4 BOX DRAWINGS LIGHT DOWN AND LEFT -+ /xa8/xa5 BOX DRAWINGS LIGHT UP AND LEFT -+ /xa8/xa6 BOX DRAWINGS LIGHT UP AND RIGHT -+ /xa8/xa7 BOX DRAWINGS LIGHT VERTICAL AND RIGHT -+ /xa8/xa8 BOX DRAWINGS LIGHT DOWN AND HORIZONTAL -+ /xa8/xa9 BOX DRAWINGS LIGHT VERTICAL AND LEFT -+ /xa8/xaa BOX DRAWINGS LIGHT UP AND HORIZONTAL -+ /xa8/xab BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL -+ /xa8/xac BOX DRAWINGS HEAVY HORIZONTAL -+ /xa8/xad BOX DRAWINGS HEAVY VERTICAL -+ /xa8/xae BOX DRAWINGS HEAVY DOWN AND RIGHT -+ /xa8/xaf BOX DRAWINGS HEAVY DOWN AND LEFT -+ /xa8/xb0 BOX DRAWINGS HEAVY UP AND LEFT -+ /xa8/xb1 BOX DRAWINGS HEAVY UP AND RIGHT -+ /xa8/xb2 BOX DRAWINGS HEAVY VERTICAL AND RIGHT -+ /xa8/xb3 BOX DRAWINGS HEAVY DOWN AND HORIZONTAL -+ /xa8/xb4 BOX DRAWINGS HEAVY VERTICAL AND LEFT -+ /xa8/xb5 BOX DRAWINGS HEAVY UP AND HORIZONTAL -+ /xa8/xb6 BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL -+ /xa8/xb7 BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT -+ /xa8/xb8 BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY -+ /xa8/xb9 BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT -+ /xa8/xba BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY -+ /xa8/xbb BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY -+ /xa8/xbc BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY -+ /xa8/xbd BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT -+ /xa8/xbe BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY -+ /xa8/xbf BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT -+ /xa8/xc0 BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT -+ /xad/xa1 CIRCLED DIGIT ONE -+ /xad/xa2 CIRCLED DIGIT TWO -+ /xad/xa3 CIRCLED DIGIT THREE -+ /xad/xa4 CIRCLED DIGIT FOUR -+ /xad/xa5 CIRCLED DIGIT FIVE -+ /xad/xa6 CIRCLED DIGIT SIX -+ /xad/xa7 CIRCLED DIGIT SEVEN -+ /xad/xa8 CIRCLED DIGIT EIGHT -+ /xad/xa9 CIRCLED DIGIT NINE -+ /xad/xaa CIRCLED NUMBER TEN -+ /xad/xab CIRCLED NUMBER ELEVEN -+ /xad/xac CIRCLED NUMBER TWELVE -+ /xad/xad CIRCLED NUMBER THIRTEEN -+ /xad/xae CIRCLED NUMBER FOURTEEN -+ /xad/xaf CIRCLED NUMBER FIFTEEN -+ /xad/xb0 CIRCLED NUMBER SIXTEEN -+ /xad/xb1 CIRCLED NUMBER SEVENTEEN -+ /xad/xb2 CIRCLED NUMBER EIGHTEEN -+ /xad/xb3 CIRCLED NUMBER NINETEEN -+ /xad/xb4 CIRCLED NUMBER TWENTY -+ /xad/xb5 ROMAN NUMERAL ONE -+ /xad/xb6 ROMAN NUMERAL TWO -+ /xad/xb7 ROMAN NUMERAL THREE -+ /xad/xb8 ROMAN NUMERAL FOUR -+ /xad/xb9 ROMAN NUMERAL FIVE -+ /xad/xba ROMAN NUMERAL SIX -+ /xad/xbb ROMAN NUMERAL SEVEN -+ /xad/xbc ROMAN NUMERAL EIGHT -+ /xad/xbd ROMAN NUMERAL NINE -+ /xad/xbe ROMAN NUMERAL TEN -+ /xad/xc0 SQUARE MIRI -+ /xad/xc1 SQUARE KIRO -+ /xad/xc2 SQUARE SENTI -+ /xad/xc3 SQUARE MEETORU -+ /xad/xc4 SQUARE GURAMU -+ /xad/xc5 SQUARE TON -+ /xad/xc6 SQUARE AARU -+ /xad/xc7 SQUARE HEKUTAARU -+ /xad/xc8 SQUARE RITTORU -+ /xad/xc9 SQUARE WATTO -+ /xad/xca SQUARE KARORII -+ /xad/xcb SQUARE DORU -+ /xad/xcc SQUARE SENTO -+ /xad/xcd SQUARE PAASENTO -+ /xad/xce SQUARE MIRIBAARU -+ /xad/xcf SQUARE PEEZI -+ /xad/xd0 SQUARE MM -+ /xad/xd1 SQUARE CM -+ /xad/xd2 SQUARE KM -+ /xad/xd3 SQUARE MG -+ /xad/xd4 SQUARE KG -+ /xad/xd5 SQUARE CC -+ /xad/xd6 SQUARE M SQUARED -+ /xad/xdf SQUARE ERA NAME HEISEI -+ /xad/xe0 REVERSED DOUBLE PRIME QUOTATION MARK -+ /xad/xe1 LOW DOUBLE PRIME QUOTATION MARK -+ /xad/xe2 NUMERO SIGN -+ /xad/xe3 SQUARE KK -+ /xad/xe4 TELEPHONE SIGN -+ /xad/xe5 CIRCLED IDEOGRAPH HIGH -+ /xad/xe6 CIRCLED IDEOGRAPH CENTRE -+ /xad/xe7 CIRCLED IDEOGRAPH LOW -+ /xad/xe8 CIRCLED IDEOGRAPH LEFT -+ /xad/xe9 CIRCLED IDEOGRAPH RIGHT -+ /xad/xea PARENTHESIZED IDEOGRAPH STOCK -+ /xad/xeb PARENTHESIZED IDEOGRAPH HAVE -+ /xad/xec PARENTHESIZED IDEOGRAPH REPRESENT -+ /xad/xed SQUARE ERA NAME MEIZI -+ /xad/xee SQUARE ERA NAME TAISYOU -+ /xad/xef SQUARE ERA NAME SYOUWA -+%IRREVERSIBLE% /xad/xf0 APPROXIMATELY EQUAL TO OR THE IMAGE OF -+%IRREVERSIBLE% /xad/xf1 IDENTICAL TO -+%IRREVERSIBLE% /xad/xf2 INTEGRAL -+ /xad/xf3 CONTOUR INTEGRAL -+ /xad/xf4 N-ARY SUMMATION -+%IRREVERSIBLE% /xad/xf5 SQUARE ROOT -+%IRREVERSIBLE% /xad/xf6 UP TACK -+%IRREVERSIBLE% /xad/xf7 ANGLE -+ /xad/xf8 RIGHT ANGLE -+ /xad/xf9 RIGHT TRIANGLE -+%IRREVERSIBLE% /xad/xfa BECAUSE -+%IRREVERSIBLE% /xad/xfb INTERSECTION -+%IRREVERSIBLE% /xad/xfc UNION -+ /xb0/xa1 -+ /xb0/xa2 -+ /xb0/xa3 -+ /xb0/xa4 -+ /xb0/xa5 -+ /xb0/xa6 -+ /xb0/xa7 -+ /xb0/xa8 -+ /xb0/xa9 -+ /xb0/xaa -+ /xb0/xab -+ /xb0/xac -+ /xb0/xad -+ /xb0/xae -+ /xb0/xaf -+ /xb0/xb0 -+ /xb0/xb1 -+ /xb0/xb2 -+ /xb0/xb3 -+ /xb0/xb4 -+ /xb0/xb5 -+ /xb0/xb6 -+ /xb0/xb7 -+ /xb0/xb8 -+ /xb0/xb9 -+ /xb0/xba -+ /xb0/xbb -+ /xb0/xbc -+ /xb0/xbd -+ /xb0/xbe -+ /xb0/xbf -+ /xb0/xc0 -+ /xb0/xc1 -+ /xb0/xc2 -+ /xb0/xc3 -+ /xb0/xc4 -+ /xb0/xc5 -+ /xb0/xc6 -+ /xb0/xc7 -+ /xb0/xc8 -+ /xb0/xc9 -+ /xb0/xca -+ /xb0/xcb -+ /xb0/xcc -+ /xb0/xcd -+ /xb0/xce -+ /xb0/xcf -+ /xb0/xd0 -+ /xb0/xd1 -+ /xb0/xd2 -+ /xb0/xd3 -+ /xb0/xd4 -+ /xb0/xd5 -+ /xb0/xd6 -+ /xb0/xd7 -+ /xb0/xd8 -+ /xb0/xd9 -+ /xb0/xda -+ /xb0/xdb -+ /xb0/xdc -+ /xb0/xdd -+ /xb0/xde -+ /xb0/xdf -+ /xb0/xe0 -+ /xb0/xe1 -+ /xb0/xe2 -+ /xb0/xe3 -+ /xb0/xe4 -+ /xb0/xe5 -+ /xb0/xe6 -+ /xb0/xe7 -+ /xb0/xe8 -+ /xb0/xe9 -+ /xb0/xea -+ /xb0/xeb -+ /xb0/xec -+ /xb0/xed -+ /xb0/xee -+ /xb0/xef -+ /xb0/xf0 -+ /xb0/xf1 -+ /xb0/xf2 -+ /xb0/xf3 -+ /xb0/xf4 -+ /xb0/xf5 -+ /xb0/xf6 -+ /xb0/xf7 -+ /xb0/xf8 -+ /xb0/xf9 -+ /xb0/xfa -+ /xb0/xfb -+ /xb0/xfc -+ /xb0/xfd -+ /xb0/xfe -+ /xb1/xa1 -+ /xb1/xa2 -+ /xb1/xa3 -+ /xb1/xa4 -+ /xb1/xa5 -+ /xb1/xa6 -+ /xb1/xa7 -+ /xb1/xa8 -+ /xb1/xa9 -+ /xb1/xaa -+ /xb1/xab -+ /xb1/xac -+ /xb1/xad -+ /xb1/xae -+ /xb1/xaf -+ /xb1/xb0 -+ /xb1/xb1 -+ /xb1/xb2 -+ /xb1/xb3 -+ /xb1/xb4 -+ /xb1/xb5 -+ /xb1/xb6 -+ /xb1/xb7 -+ /xb1/xb8 -+ /xb1/xb9 -+ /xb1/xba -+ /xb1/xbb -+ /xb1/xbc -+ /xb1/xbd -+ /xb1/xbe -+ /xb1/xbf -+ /xb1/xc0 -+ /xb1/xc1 -+ /xb1/xc2 -+ /xb1/xc3 -+ /xb1/xc4 -+ /xb1/xc5 -+ /xb1/xc6 -+ /xb1/xc7 -+ /xb1/xc8 -+ /xb1/xc9 -+ /xb1/xca -+ /xb1/xcb -+ /xb1/xcc -+ /xb1/xcd -+ /xb1/xce -+ /xb1/xcf -+ /xb1/xd0 -+ /xb1/xd1 -+ /xb1/xd2 -+ /xb1/xd3 -+ /xb1/xd4 -+ /xb1/xd5 -+ /xb1/xd6 -+ /xb1/xd7 -+ /xb1/xd8 -+ /xb1/xd9 -+ /xb1/xda -+ /xb1/xdb -+ /xb1/xdc -+ /xb1/xdd -+ /xb1/xde -+ /xb1/xdf -+ /xb1/xe0 -+ /xb1/xe1 -+ /xb1/xe2 -+ /xb1/xe3 -+ /xb1/xe4 -+ /xb1/xe5 -+ /xb1/xe6 -+ /xb1/xe7 -+ /xb1/xe8 -+ /xb1/xe9 -+ /xb1/xea -+ /xb1/xeb -+ /xb1/xec -+ /xb1/xed -+ /xb1/xee -+ /xb1/xef -+ /xb1/xf0 -+ /xb1/xf1 -+ /xb1/xf2 -+ /xb1/xf3 -+ /xb1/xf4 -+ /xb1/xf5 -+ /xb1/xf6 -+ /xb1/xf7 -+ /xb1/xf8 -+ /xb1/xf9 -+ /xb1/xfa -+ /xb1/xfb -+ /xb1/xfc -+ /xb1/xfd -+ /xb1/xfe -+ /xb2/xa1 -+ /xb2/xa2 -+ /xb2/xa3 -+ /xb2/xa4 -+ /xb2/xa5 -+ /xb2/xa6 -+ /xb2/xa7 -+ /xb2/xa8 -+ /xb2/xa9 -+ /xb2/xaa -+ /xb2/xab -+ /xb2/xac -+ /xb2/xad -+ /xb2/xae -+ /xb2/xaf -+ /xb2/xb0 -+ /xb2/xb1 -+ /xb2/xb2 -+ /xb2/xb3 -+ /xb2/xb4 -+ /xb2/xb5 -+ /xb2/xb6 -+ /xb2/xb7 -+ /xb2/xb8 -+ /xb2/xb9 -+ /xb2/xba -+ /xb2/xbb -+ /xb2/xbc -+ /xb2/xbd -+ /xb2/xbe -+ /xb2/xbf -+ /xb2/xc0 -+ /xb2/xc1 -+ /xb2/xc2 -+ /xb2/xc3 -+ /xb2/xc4 -+ /xb2/xc5 -+ /xb2/xc6 -+ /xb2/xc7 -+ /xb2/xc8 -+ /xb2/xc9 -+ /xb2/xca -+ /xb2/xcb -+ /xb2/xcc -+ /xb2/xcd -+ /xb2/xce -+ /xb2/xcf -+ /xb2/xd0 -+ /xb2/xd1 -+ /xb2/xd2 -+ /xb2/xd3 -+ /xb2/xd4 -+ /xb2/xd5 -+ /xb2/xd6 -+ /xb2/xd7 -+ /xb2/xd8 -+ /xb2/xd9 -+ /xb2/xda -+ /xb2/xdb -+ /xb2/xdc -+ /xb2/xdd -+ /xb2/xde -+ /xb2/xdf -+ /xb2/xe0 -+ /xb2/xe1 -+ /xb2/xe2 -+ /xb2/xe3 -+ /xb2/xe4 -+ /xb2/xe5 -+ /xb2/xe6 -+ /xb2/xe7 -+ /xb2/xe8 -+ /xb2/xe9 -+ /xb2/xea -+ /xb2/xeb -+ /xb2/xec -+ /xb2/xed -+ /xb2/xee -+ /xb2/xef -+ /xb2/xf0 -+ /xb2/xf1 -+ /xb2/xf2 -+ /xb2/xf3 -+ /xb2/xf4 -+ /xb2/xf5 -+ /xb2/xf6 -+ /xb2/xf7 -+ /xb2/xf8 -+ /xb2/xf9 -+ /xb2/xfa -+ /xb2/xfb -+ /xb2/xfc -+ /xb2/xfd -+ /xb2/xfe -+ /xb3/xa1 -+ /xb3/xa2 -+ /xb3/xa3 -+ /xb3/xa4 -+ /xb3/xa5 -+ /xb3/xa6 -+ /xb3/xa7 -+ /xb3/xa8 -+ /xb3/xa9 -+ /xb3/xaa -+ /xb3/xab -+ /xb3/xac -+ /xb3/xad -+ /xb3/xae -+ /xb3/xaf -+ /xb3/xb0 -+ /xb3/xb1 -+ /xb3/xb2 -+ /xb3/xb3 -+ /xb3/xb4 -+ /xb3/xb5 -+ /xb3/xb6 -+ /xb3/xb7 -+ /xb3/xb8 -+ /xb3/xb9 -+ /xb3/xba -+ /xb3/xbb -+ /xb3/xbc -+ /xb3/xbd -+ /xb3/xbe -+ /xb3/xbf -+ /xb3/xc0 -+ /xb3/xc1 -+ /xb3/xc2 -+ /xb3/xc3 -+ /xb3/xc4 -+ /xb3/xc5 -+ /xb3/xc6 -+ /xb3/xc7 -+ /xb3/xc8 -+ /xb3/xc9 -+ /xb3/xca -+ /xb3/xcb -+ /xb3/xcc -+ /xb3/xcd -+ /xb3/xce -+ /xb3/xcf -+ /xb3/xd0 -+ /xb3/xd1 -+ /xb3/xd2 -+ /xb3/xd3 -+ /xb3/xd4 -+ /xb3/xd5 -+ /xb3/xd6 -+ /xb3/xd7 -+ /xb3/xd8 -+ /xb3/xd9 -+ /xb3/xda -+ /xb3/xdb -+ /xb3/xdc -+ /xb3/xdd -+ /xb3/xde -+ /xb3/xdf -+ /xb3/xe0 -+ /xb3/xe1 -+ /xb3/xe2 -+ /xb3/xe3 -+ /xb3/xe4 -+ /xb3/xe5 -+ /xb3/xe6 -+ /xb3/xe7 -+ /xb3/xe8 -+ /xb3/xe9 -+ /xb3/xea -+ /xb3/xeb -+ /xb3/xec -+ /xb3/xed -+ /xb3/xee -+ /xb3/xef -+ /xb3/xf0 -+ /xb3/xf1 -+ /xb3/xf2 -+ /xb3/xf3 -+ /xb3/xf4 -+ /xb3/xf5 -+ /xb3/xf6 -+ /xb3/xf7 -+ /xb3/xf8 -+ /xb3/xf9 -+ /xb3/xfa -+ /xb3/xfb -+ /xb3/xfc -+ /xb3/xfd -+ /xb3/xfe -+ /xb4/xa1 -+ /xb4/xa2 -+ /xb4/xa3 -+ /xb4/xa4 -+ /xb4/xa5 -+ /xb4/xa6 -+ /xb4/xa7 -+ /xb4/xa8 -+ /xb4/xa9 -+ /xb4/xaa -+ /xb4/xab -+ /xb4/xac -+ /xb4/xad -+ /xb4/xae -+ /xb4/xaf -+ /xb4/xb0 -+ /xb4/xb1 -+ /xb4/xb2 -+ /xb4/xb3 -+ /xb4/xb4 -+ /xb4/xb5 -+ /xb4/xb6 -+ /xb4/xb7 -+ /xb4/xb8 -+ /xb4/xb9 -+ /xb4/xba -+ /xb4/xbb -+ /xb4/xbc -+ /xb4/xbd -+ /xb4/xbe -+ /xb4/xbf -+ /xb4/xc0 -+ /xb4/xc1 -+ /xb4/xc2 -+ /xb4/xc3 -+ /xb4/xc4 -+ /xb4/xc5 -+ /xb4/xc6 -+ /xb4/xc7 -+ /xb4/xc8 -+ /xb4/xc9 -+ /xb4/xca -+ /xb4/xcb -+ /xb4/xcc -+ /xb4/xcd -+ /xb4/xce -+ /xb4/xcf -+ /xb4/xd0 -+ /xb4/xd1 -+ /xb4/xd2 -+ /xb4/xd3 -+ /xb4/xd4 -+ /xb4/xd5 -+ /xb4/xd6 -+ /xb4/xd7 -+ /xb4/xd8 -+ /xb4/xd9 -+ /xb4/xda -+ /xb4/xdb -+ /xb4/xdc -+ /xb4/xdd -+ /xb4/xde -+ /xb4/xdf -+ /xb4/xe0 -+ /xb4/xe1 -+ /xb4/xe2 -+ /xb4/xe3 -+ /xb4/xe4 -+ /xb4/xe5 -+ /xb4/xe6 -+ /xb4/xe7 -+ /xb4/xe8 -+ /xb4/xe9 -+ /xb4/xea -+ /xb4/xeb -+ /xb4/xec -+ /xb4/xed -+ /xb4/xee -+ /xb4/xef -+ /xb4/xf0 -+ /xb4/xf1 -+ /xb4/xf2 -+ /xb4/xf3 -+ /xb4/xf4 -+ /xb4/xf5 -+ /xb4/xf6 -+ /xb4/xf7 -+ /xb4/xf8 -+ /xb4/xf9 -+ /xb4/xfa -+ /xb4/xfb -+ /xb4/xfc -+ /xb4/xfd -+ /xb4/xfe -+ /xb5/xa1 -+ /xb5/xa2 -+ /xb5/xa3 -+ /xb5/xa4 -+ /xb5/xa5 -+ /xb5/xa6 -+ /xb5/xa7 -+ /xb5/xa8 -+ /xb5/xa9 -+ /xb5/xaa -+ /xb5/xab -+ /xb5/xac -+ /xb5/xad -+ /xb5/xae -+ /xb5/xaf -+ /xb5/xb0 -+ /xb5/xb1 -+ /xb5/xb2 -+ /xb5/xb3 -+ /xb5/xb4 -+ /xb5/xb5 -+ /xb5/xb6 -+ /xb5/xb7 -+ /xb5/xb8 -+ /xb5/xb9 -+ /xb5/xba -+ /xb5/xbb -+ /xb5/xbc -+ /xb5/xbd -+ /xb5/xbe -+ /xb5/xbf -+ /xb5/xc0 -+ /xb5/xc1 -+ /xb5/xc2 -+ /xb5/xc3 -+ /xb5/xc4 -+ /xb5/xc5 -+ /xb5/xc6 -+ /xb5/xc7 -+ /xb5/xc8 -+ /xb5/xc9 -+ /xb5/xca -+ /xb5/xcb -+ /xb5/xcc -+ /xb5/xcd -+ /xb5/xce -+ /xb5/xcf -+ /xb5/xd0 -+ /xb5/xd1 -+ /xb5/xd2 -+ /xb5/xd3 -+ /xb5/xd4 -+ /xb5/xd5 -+ /xb5/xd6 -+ /xb5/xd7 -+ /xb5/xd8 -+ /xb5/xd9 -+ /xb5/xda -+ /xb5/xdb -+ /xb5/xdc -+ /xb5/xdd -+ /xb5/xde -+ /xb5/xdf -+ /xb5/xe0 -+ /xb5/xe1 -+ /xb5/xe2 -+ /xb5/xe3 -+ /xb5/xe4 -+ /xb5/xe5 -+ /xb5/xe6 -+ /xb5/xe7 -+ /xb5/xe8 -+ /xb5/xe9 -+ /xb5/xea -+ /xb5/xeb -+ /xb5/xec -+ /xb5/xed -+ /xb5/xee -+ /xb5/xef -+ /xb5/xf0 -+ /xb5/xf1 -+ /xb5/xf2 -+ /xb5/xf3 -+ /xb5/xf4 -+ /xb5/xf5 -+ /xb5/xf6 -+ /xb5/xf7 -+ /xb5/xf8 -+ /xb5/xf9 -+ /xb5/xfa -+ /xb5/xfb -+ /xb5/xfc -+ /xb5/xfd -+ /xb5/xfe -+ /xb6/xa1 -+ /xb6/xa2 -+ /xb6/xa3 -+ /xb6/xa4 -+ /xb6/xa5 -+ /xb6/xa6 -+ /xb6/xa7 -+ /xb6/xa8 -+ /xb6/xa9 -+ /xb6/xaa -+ /xb6/xab -+ /xb6/xac -+ /xb6/xad -+ /xb6/xae -+ /xb6/xaf -+ /xb6/xb0 -+ /xb6/xb1 -+ /xb6/xb2 -+ /xb6/xb3 -+ /xb6/xb4 -+ /xb6/xb5 -+ /xb6/xb6 -+ /xb6/xb7 -+ /xb6/xb8 -+ /xb6/xb9 -+ /xb6/xba -+ /xb6/xbb -+ /xb6/xbc -+ /xb6/xbd -+ /xb6/xbe -+ /xb6/xbf -+ /xb6/xc0 -+ /xb6/xc1 -+ /xb6/xc2 -+ /xb6/xc3 -+ /xb6/xc4 -+ /xb6/xc5 -+ /xb6/xc6 -+ /xb6/xc7 -+ /xb6/xc8 -+ /xb6/xc9 -+ /xb6/xca -+ /xb6/xcb -+ /xb6/xcc -+ /xb6/xcd -+ /xb6/xce -+ /xb6/xcf -+ /xb6/xd0 -+ /xb6/xd1 -+ /xb6/xd2 -+ /xb6/xd3 -+ /xb6/xd4 -+ /xb6/xd5 -+ /xb6/xd6 -+ /xb6/xd7 -+ /xb6/xd8 -+ /xb6/xd9 -+ /xb6/xda -+ /xb6/xdb -+ /xb6/xdc -+ /xb6/xdd -+ /xb6/xde -+ /xb6/xdf -+ /xb6/xe0 -+ /xb6/xe1 -+ /xb6/xe2 -+ /xb6/xe3 -+ /xb6/xe4 -+ /xb6/xe5 -+ /xb6/xe6 -+ /xb6/xe7 -+ /xb6/xe8 -+ /xb6/xe9 -+ /xb6/xea -+ /xb6/xeb -+ /xb6/xec -+ /xb6/xed -+ /xb6/xee -+ /xb6/xef -+ /xb6/xf0 -+ /xb6/xf1 -+ /xb6/xf2 -+ /xb6/xf3 -+ /xb6/xf4 -+ /xb6/xf5 -+ /xb6/xf6 -+ /xb6/xf7 -+ /xb6/xf8 -+ /xb6/xf9 -+ /xb6/xfa -+ /xb6/xfb -+ /xb6/xfc -+ /xb6/xfd -+ /xb6/xfe -+ /xb7/xa1 -+ /xb7/xa2 -+ /xb7/xa3 -+ /xb7/xa4 -+ /xb7/xa5 -+ /xb7/xa6 -+ /xb7/xa7 -+ /xb7/xa8 -+ /xb7/xa9 -+ /xb7/xaa -+ /xb7/xab -+ /xb7/xac -+ /xb7/xad -+ /xb7/xae -+ /xb7/xaf -+ /xb7/xb0 -+ /xb7/xb1 -+ /xb7/xb2 -+ /xb7/xb3 -+ /xb7/xb4 -+ /xb7/xb5 -+ /xb7/xb6 -+ /xb7/xb7 -+ /xb7/xb8 -+ /xb7/xb9 -+ /xb7/xba -+ /xb7/xbb -+ /xb7/xbc -+ /xb7/xbd -+ /xb7/xbe -+ /xb7/xbf -+ /xb7/xc0 -+ /xb7/xc1 -+ /xb7/xc2 -+ /xb7/xc3 -+ /xb7/xc4 -+ /xb7/xc5 -+ /xb7/xc6 -+ /xb7/xc7 -+ /xb7/xc8 -+ /xb7/xc9 -+ /xb7/xca -+ /xb7/xcb -+ /xb7/xcc -+ /xb7/xcd -+ /xb7/xce -+ /xb7/xcf -+ /xb7/xd0 -+ /xb7/xd1 -+ /xb7/xd2 -+ /xb7/xd3 -+ /xb7/xd4 -+ /xb7/xd5 -+ /xb7/xd6 -+ /xb7/xd7 -+ /xb7/xd8 -+ /xb7/xd9 -+ /xb7/xda -+ /xb7/xdb -+ /xb7/xdc -+ /xb7/xdd -+ /xb7/xde -+ /xb7/xdf -+ /xb7/xe0 -+ /xb7/xe1 -+ /xb7/xe2 -+ /xb7/xe3 -+ /xb7/xe4 -+ /xb7/xe5 -+ /xb7/xe6 -+ /xb7/xe7 -+ /xb7/xe8 -+ /xb7/xe9 -+ /xb7/xea -+ /xb7/xeb -+ /xb7/xec -+ /xb7/xed -+ /xb7/xee -+ /xb7/xef -+ /xb7/xf0 -+ /xb7/xf1 -+ /xb7/xf2 -+ /xb7/xf3 -+ /xb7/xf4 -+ /xb7/xf5 -+ /xb7/xf6 -+ /xb7/xf7 -+ /xb7/xf8 -+ /xb7/xf9 -+ /xb7/xfa -+ /xb7/xfb -+ /xb7/xfc -+ /xb7/xfd -+ /xb7/xfe -+ /xb8/xa1 -+ /xb8/xa2 -+ /xb8/xa3 -+ /xb8/xa4 -+ /xb8/xa5 -+ /xb8/xa6 -+ /xb8/xa7 -+ /xb8/xa8 -+ /xb8/xa9 -+ /xb8/xaa -+ /xb8/xab -+ /xb8/xac -+ /xb8/xad -+ /xb8/xae -+ /xb8/xaf -+ /xb8/xb0 -+ /xb8/xb1 -+ /xb8/xb2 -+ /xb8/xb3 -+ /xb8/xb4 -+ /xb8/xb5 -+ /xb8/xb6 -+ /xb8/xb7 -+ /xb8/xb8 -+ /xb8/xb9 -+ /xb8/xba -+ /xb8/xbb -+ /xb8/xbc -+ /xb8/xbd -+ /xb8/xbe -+ /xb8/xbf -+ /xb8/xc0 -+ /xb8/xc1 -+ /xb8/xc2 -+ /xb8/xc3 -+ /xb8/xc4 -+ /xb8/xc5 -+ /xb8/xc6 -+ /xb8/xc7 -+ /xb8/xc8 -+ /xb8/xc9 -+ /xb8/xca -+ /xb8/xcb -+ /xb8/xcc -+ /xb8/xcd -+ /xb8/xce -+ /xb8/xcf -+ /xb8/xd0 -+ /xb8/xd1 -+ /xb8/xd2 -+ /xb8/xd3 -+ /xb8/xd4 -+ /xb8/xd5 -+ /xb8/xd6 -+ /xb8/xd7 -+ /xb8/xd8 -+ /xb8/xd9 -+ /xb8/xda -+ /xb8/xdb -+ /xb8/xdc -+ /xb8/xdd -+ /xb8/xde -+ /xb8/xdf -+ /xb8/xe0 -+ /xb8/xe1 -+ /xb8/xe2 -+ /xb8/xe3 -+ /xb8/xe4 -+ /xb8/xe5 -+ /xb8/xe6 -+ /xb8/xe7 -+ /xb8/xe8 -+ /xb8/xe9 -+ /xb8/xea -+ /xb8/xeb -+ /xb8/xec -+ /xb8/xed -+ /xb8/xee -+ /xb8/xef -+ /xb8/xf0 -+ /xb8/xf1 -+ /xb8/xf2 -+ /xb8/xf3 -+ /xb8/xf4 -+ /xb8/xf5 -+ /xb8/xf6 -+ /xb8/xf7 -+ /xb8/xf8 -+ /xb8/xf9 -+ /xb8/xfa -+ /xb8/xfb -+ /xb8/xfc -+ /xb8/xfd -+ /xb8/xfe -+ /xb9/xa1 -+ /xb9/xa2 -+ /xb9/xa3 -+ /xb9/xa4 -+ /xb9/xa5 -+ /xb9/xa6 -+ /xb9/xa7 -+ /xb9/xa8 -+ /xb9/xa9 -+ /xb9/xaa -+ /xb9/xab -+ /xb9/xac -+ /xb9/xad -+ /xb9/xae -+ /xb9/xaf -+ /xb9/xb0 -+ /xb9/xb1 -+ /xb9/xb2 -+ /xb9/xb3 -+ /xb9/xb4 -+ /xb9/xb5 -+ /xb9/xb6 -+ /xb9/xb7 -+ /xb9/xb8 -+ /xb9/xb9 -+ /xb9/xba -+ /xb9/xbb -+ /xb9/xbc -+ /xb9/xbd -+ /xb9/xbe -+ /xb9/xbf -+ /xb9/xc0 -+ /xb9/xc1 -+ /xb9/xc2 -+ /xb9/xc3 -+ /xb9/xc4 -+ /xb9/xc5 -+ /xb9/xc6 -+ /xb9/xc7 -+ /xb9/xc8 -+ /xb9/xc9 -+ /xb9/xca -+ /xb9/xcb -+ /xb9/xcc -+ /xb9/xcd -+ /xb9/xce -+ /xb9/xcf -+ /xb9/xd0 -+ /xb9/xd1 -+ /xb9/xd2 -+ /xb9/xd3 -+ /xb9/xd4 -+ /xb9/xd5 -+ /xb9/xd6 -+ /xb9/xd7 -+ /xb9/xd8 -+ /xb9/xd9 -+ /xb9/xda -+ /xb9/xdb -+ /xb9/xdc -+ /xb9/xdd -+ /xb9/xde -+ /xb9/xdf -+ /xb9/xe0 -+ /xb9/xe1 -+ /xb9/xe2 -+ /xb9/xe3 -+ /xb9/xe4 -+ /xb9/xe5 -+ /xb9/xe6 -+ /xb9/xe7 -+ /xb9/xe8 -+ /xb9/xe9 -+ /xb9/xea -+ /xb9/xeb -+ /xb9/xec -+ /xb9/xed -+ /xb9/xee -+ /xb9/xef -+ /xb9/xf0 -+ /xb9/xf1 -+ /xb9/xf2 -+ /xb9/xf3 -+ /xb9/xf4 -+ /xb9/xf5 -+ /xb9/xf6 -+ /xb9/xf7 -+ /xb9/xf8 -+ /xb9/xf9 -+ /xb9/xfa -+ /xb9/xfb -+ /xb9/xfc -+ /xb9/xfd -+ /xb9/xfe -+ /xba/xa1 -+ /xba/xa2 -+ /xba/xa3 -+ /xba/xa4 -+ /xba/xa5 -+ /xba/xa6 -+ /xba/xa7 -+ /xba/xa8 -+ /xba/xa9 -+ /xba/xaa -+ /xba/xab -+ /xba/xac -+ /xba/xad -+ /xba/xae -+ /xba/xaf -+ /xba/xb0 -+ /xba/xb1 -+ /xba/xb2 -+ /xba/xb3 -+ /xba/xb4 -+ /xba/xb5 -+ /xba/xb6 -+ /xba/xb7 -+ /xba/xb8 -+ /xba/xb9 -+ /xba/xba -+ /xba/xbb -+ /xba/xbc -+ /xba/xbd -+ /xba/xbe -+ /xba/xbf -+ /xba/xc0 -+ /xba/xc1 -+ /xba/xc2 -+ /xba/xc3 -+ /xba/xc4 -+ /xba/xc5 -+ /xba/xc6 -+ /xba/xc7 -+ /xba/xc8 -+ /xba/xc9 -+ /xba/xca -+ /xba/xcb -+ /xba/xcc -+ /xba/xcd -+ /xba/xce -+ /xba/xcf -+ /xba/xd0 -+ /xba/xd1 -+ /xba/xd2 -+ /xba/xd3 -+ /xba/xd4 -+ /xba/xd5 -+ /xba/xd6 -+ /xba/xd7 -+ /xba/xd8 -+ /xba/xd9 -+ /xba/xda -+ /xba/xdb -+ /xba/xdc -+ /xba/xdd -+ /xba/xde -+ /xba/xdf -+ /xba/xe0 -+ /xba/xe1 -+ /xba/xe2 -+ /xba/xe3 -+ /xba/xe4 -+ /xba/xe5 -+ /xba/xe6 -+ /xba/xe7 -+ /xba/xe8 -+ /xba/xe9 -+ /xba/xea -+ /xba/xeb -+ /xba/xec -+ /xba/xed -+ /xba/xee -+ /xba/xef -+ /xba/xf0 -+ /xba/xf1 -+ /xba/xf2 -+ /xba/xf3 -+ /xba/xf4 -+ /xba/xf5 -+ /xba/xf6 -+ /xba/xf7 -+ /xba/xf8 -+ /xba/xf9 -+ /xba/xfa -+ /xba/xfb -+ /xba/xfc -+ /xba/xfd -+ /xba/xfe -+ /xbb/xa1 -+ /xbb/xa2 -+ /xbb/xa3 -+ /xbb/xa4 -+ /xbb/xa5 -+ /xbb/xa6 -+ /xbb/xa7 -+ /xbb/xa8 -+ /xbb/xa9 -+ /xbb/xaa -+ /xbb/xab -+ /xbb/xac -+ /xbb/xad -+ /xbb/xae -+ /xbb/xaf -+ /xbb/xb0 -+ /xbb/xb1 -+ /xbb/xb2 -+ /xbb/xb3 -+ /xbb/xb4 -+ /xbb/xb5 -+ /xbb/xb6 -+ /xbb/xb7 -+ /xbb/xb8 -+ /xbb/xb9 -+ /xbb/xba -+ /xbb/xbb -+ /xbb/xbc -+ /xbb/xbd -+ /xbb/xbe -+ /xbb/xbf -+ /xbb/xc0 -+ /xbb/xc1 -+ /xbb/xc2 -+ /xbb/xc3 -+ /xbb/xc4 -+ /xbb/xc5 -+ /xbb/xc6 -+ /xbb/xc7 -+ /xbb/xc8 -+ /xbb/xc9 -+ /xbb/xca -+ /xbb/xcb -+ /xbb/xcc -+ /xbb/xcd -+ /xbb/xce -+ /xbb/xcf -+ /xbb/xd0 -+ /xbb/xd1 -+ /xbb/xd2 -+ /xbb/xd3 -+ /xbb/xd4 -+ /xbb/xd5 -+ /xbb/xd6 -+ /xbb/xd7 -+ /xbb/xd8 -+ /xbb/xd9 -+ /xbb/xda -+ /xbb/xdb -+ /xbb/xdc -+ /xbb/xdd -+ /xbb/xde -+ /xbb/xdf -+ /xbb/xe0 -+ /xbb/xe1 -+ /xbb/xe2 -+ /xbb/xe3 -+ /xbb/xe4 -+ /xbb/xe5 -+ /xbb/xe6 -+ /xbb/xe7 -+ /xbb/xe8 -+ /xbb/xe9 -+ /xbb/xea -+ /xbb/xeb -+ /xbb/xec -+ /xbb/xed -+ /xbb/xee -+ /xbb/xef -+ /xbb/xf0 -+ /xbb/xf1 -+ /xbb/xf2 -+ /xbb/xf3 -+ /xbb/xf4 -+ /xbb/xf5 -+ /xbb/xf6 -+ /xbb/xf7 -+ /xbb/xf8 -+ /xbb/xf9 -+ /xbb/xfa -+ /xbb/xfb -+ /xbb/xfc -+ /xbb/xfd -+ /xbb/xfe -+ /xbc/xa1 -+ /xbc/xa2 -+ /xbc/xa3 -+ /xbc/xa4 -+ /xbc/xa5 -+ /xbc/xa6 -+ /xbc/xa7 -+ /xbc/xa8 -+ /xbc/xa9 -+ /xbc/xaa -+ /xbc/xab -+ /xbc/xac -+ /xbc/xad -+ /xbc/xae -+ /xbc/xaf -+ /xbc/xb0 -+ /xbc/xb1 -+ /xbc/xb2 -+ /xbc/xb3 -+ /xbc/xb4 -+ /xbc/xb5 -+ /xbc/xb6 -+ /xbc/xb7 -+ /xbc/xb8 -+ /xbc/xb9 -+ /xbc/xba -+ /xbc/xbb -+ /xbc/xbc -+ /xbc/xbd -+ /xbc/xbe -+ /xbc/xbf -+ /xbc/xc0 -+ /xbc/xc1 -+ /xbc/xc2 -+ /xbc/xc3 -+ /xbc/xc4 -+ /xbc/xc5 -+ /xbc/xc6 -+ /xbc/xc7 -+ /xbc/xc8 -+ /xbc/xc9 -+ /xbc/xca -+ /xbc/xcb -+ /xbc/xcc -+ /xbc/xcd -+ /xbc/xce -+ /xbc/xcf -+ /xbc/xd0 -+ /xbc/xd1 -+ /xbc/xd2 -+ /xbc/xd3 -+ /xbc/xd4 -+ /xbc/xd5 -+ /xbc/xd6 -+ /xbc/xd7 -+ /xbc/xd8 -+ /xbc/xd9 -+ /xbc/xda -+ /xbc/xdb -+ /xbc/xdc -+ /xbc/xdd -+ /xbc/xde -+ /xbc/xdf -+ /xbc/xe0 -+ /xbc/xe1 -+ /xbc/xe2 -+ /xbc/xe3 -+ /xbc/xe4 -+ /xbc/xe5 -+ /xbc/xe6 -+ /xbc/xe7 -+ /xbc/xe8 -+ /xbc/xe9 -+ /xbc/xea -+ /xbc/xeb -+ /xbc/xec -+ /xbc/xed -+ /xbc/xee -+ /xbc/xef -+ /xbc/xf0 -+ /xbc/xf1 -+ /xbc/xf2 -+ /xbc/xf3 -+ /xbc/xf4 -+ /xbc/xf5 -+ /xbc/xf6 -+ /xbc/xf7 -+ /xbc/xf8 -+ /xbc/xf9 -+ /xbc/xfa -+ /xbc/xfb -+ /xbc/xfc -+ /xbc/xfd -+ /xbc/xfe -+ /xbd/xa1 -+ /xbd/xa2 -+ /xbd/xa3 -+ /xbd/xa4 -+ /xbd/xa5 -+ /xbd/xa6 -+ /xbd/xa7 -+ /xbd/xa8 -+ /xbd/xa9 -+ /xbd/xaa -+ /xbd/xab -+ /xbd/xac -+ /xbd/xad -+ /xbd/xae -+ /xbd/xaf -+ /xbd/xb0 -+ /xbd/xb1 -+ /xbd/xb2 -+ /xbd/xb3 -+ /xbd/xb4 -+ /xbd/xb5 -+ /xbd/xb6 -+ /xbd/xb7 -+ /xbd/xb8 -+ /xbd/xb9 -+ /xbd/xba -+ /xbd/xbb -+ /xbd/xbc -+ /xbd/xbd -+ /xbd/xbe -+ /xbd/xbf -+ /xbd/xc0 -+ /xbd/xc1 -+ /xbd/xc2 -+ /xbd/xc3 -+ /xbd/xc4 -+ /xbd/xc5 -+ /xbd/xc6 -+ /xbd/xc7 -+ /xbd/xc8 -+ /xbd/xc9 -+ /xbd/xca -+ /xbd/xcb -+ /xbd/xcc -+ /xbd/xcd -+ /xbd/xce -+ /xbd/xcf -+ /xbd/xd0 -+ /xbd/xd1 -+ /xbd/xd2 -+ /xbd/xd3 -+ /xbd/xd4 -+ /xbd/xd5 -+ /xbd/xd6 -+ /xbd/xd7 -+ /xbd/xd8 -+ /xbd/xd9 -+ /xbd/xda -+ /xbd/xdb -+ /xbd/xdc -+ /xbd/xdd -+ /xbd/xde -+ /xbd/xdf -+ /xbd/xe0 -+ /xbd/xe1 -+ /xbd/xe2 -+ /xbd/xe3 -+ /xbd/xe4 -+ /xbd/xe5 -+ /xbd/xe6 -+ /xbd/xe7 -+ /xbd/xe8 -+ /xbd/xe9 -+ /xbd/xea -+ /xbd/xeb -+ /xbd/xec -+ /xbd/xed -+ /xbd/xee -+ /xbd/xef -+ /xbd/xf0 -+ /xbd/xf1 -+ /xbd/xf2 -+ /xbd/xf3 -+ /xbd/xf4 -+ /xbd/xf5 -+ /xbd/xf6 -+ /xbd/xf7 -+ /xbd/xf8 -+ /xbd/xf9 -+ /xbd/xfa -+ /xbd/xfb -+ /xbd/xfc -+ /xbd/xfd -+ /xbd/xfe -+ /xbe/xa1 -+ /xbe/xa2 -+ /xbe/xa3 -+ /xbe/xa4 -+ /xbe/xa5 -+ /xbe/xa6 -+ /xbe/xa7 -+ /xbe/xa8 -+ /xbe/xa9 -+ /xbe/xaa -+ /xbe/xab -+ /xbe/xac -+ /xbe/xad -+ /xbe/xae -+ /xbe/xaf -+ /xbe/xb0 -+ /xbe/xb1 -+ /xbe/xb2 -+ /xbe/xb3 -+ /xbe/xb4 -+ /xbe/xb5 -+ /xbe/xb6 -+ /xbe/xb7 -+ /xbe/xb8 -+ /xbe/xb9 -+ /xbe/xba -+ /xbe/xbb -+ /xbe/xbc -+ /xbe/xbd -+ /xbe/xbe -+ /xbe/xbf -+ /xbe/xc0 -+ /xbe/xc1 -+ /xbe/xc2 -+ /xbe/xc3 -+ /xbe/xc4 -+ /xbe/xc5 -+ /xbe/xc6 -+ /xbe/xc7 -+ /xbe/xc8 -+ /xbe/xc9 -+ /xbe/xca -+ /xbe/xcb -+ /xbe/xcc -+ /xbe/xcd -+ /xbe/xce -+ /xbe/xcf -+ /xbe/xd0 -+ /xbe/xd1 -+ /xbe/xd2 -+ /xbe/xd3 -+ /xbe/xd4 -+ /xbe/xd5 -+ /xbe/xd6 -+ /xbe/xd7 -+ /xbe/xd8 -+ /xbe/xd9 -+ /xbe/xda -+ /xbe/xdb -+ /xbe/xdc -+ /xbe/xdd -+ /xbe/xde -+ /xbe/xdf -+ /xbe/xe0 -+ /xbe/xe1 -+ /xbe/xe2 -+ /xbe/xe3 -+ /xbe/xe4 -+ /xbe/xe5 -+ /xbe/xe6 -+ /xbe/xe7 -+ /xbe/xe8 -+ /xbe/xe9 -+ /xbe/xea -+ /xbe/xeb -+ /xbe/xec -+ /xbe/xed -+ /xbe/xee -+ /xbe/xef -+ /xbe/xf0 -+ /xbe/xf1 -+ /xbe/xf2 -+ /xbe/xf3 -+ /xbe/xf4 -+ /xbe/xf5 -+ /xbe/xf6 -+ /xbe/xf7 -+ /xbe/xf8 -+ /xbe/xf9 -+ /xbe/xfa -+ /xbe/xfb -+ /xbe/xfc -+ /xbe/xfd -+ /xbe/xfe -+ /xbf/xa1 -+ /xbf/xa2 -+ /xbf/xa3 -+ /xbf/xa4 -+ /xbf/xa5 -+ /xbf/xa6 -+ /xbf/xa7 -+ /xbf/xa8 -+ /xbf/xa9 -+ /xbf/xaa -+ /xbf/xab -+ /xbf/xac -+ /xbf/xad -+ /xbf/xae -+ /xbf/xaf -+ /xbf/xb0 -+ /xbf/xb1 -+ /xbf/xb2 -+ /xbf/xb3 -+ /xbf/xb4 -+ /xbf/xb5 -+ /xbf/xb6 -+ /xbf/xb7 -+ /xbf/xb8 -+ /xbf/xb9 -+ /xbf/xba -+ /xbf/xbb -+ /xbf/xbc -+ /xbf/xbd -+ /xbf/xbe -+ /xbf/xbf -+ /xbf/xc0 -+ /xbf/xc1 -+ /xbf/xc2 -+ /xbf/xc3 -+ /xbf/xc4 -+ /xbf/xc5 -+ /xbf/xc6 -+ /xbf/xc7 -+ /xbf/xc8 -+ /xbf/xc9 -+ /xbf/xca -+ /xbf/xcb -+ /xbf/xcc -+ /xbf/xcd -+ /xbf/xce -+ /xbf/xcf -+ /xbf/xd0 -+ /xbf/xd1 -+ /xbf/xd2 -+ /xbf/xd3 -+ /xbf/xd4 -+ /xbf/xd5 -+ /xbf/xd6 -+ /xbf/xd7 -+ /xbf/xd8 -+ /xbf/xd9 -+ /xbf/xda -+ /xbf/xdb -+ /xbf/xdc -+ /xbf/xdd -+ /xbf/xde -+ /xbf/xdf -+ /xbf/xe0 -+ /xbf/xe1 -+ /xbf/xe2 -+ /xbf/xe3 -+ /xbf/xe4 -+ /xbf/xe5 -+ /xbf/xe6 -+ /xbf/xe7 -+ /xbf/xe8 -+ /xbf/xe9 -+ /xbf/xea -+ /xbf/xeb -+ /xbf/xec -+ /xbf/xed -+ /xbf/xee -+ /xbf/xef -+ /xbf/xf0 -+ /xbf/xf1 -+ /xbf/xf2 -+ /xbf/xf3 -+ /xbf/xf4 -+ /xbf/xf5 -+ /xbf/xf6 -+ /xbf/xf7 -+ /xbf/xf8 -+ /xbf/xf9 -+ /xbf/xfa -+ /xbf/xfb -+ /xbf/xfc -+ /xbf/xfd -+ /xbf/xfe -+ /xc0/xa1 -+ /xc0/xa2 -+ /xc0/xa3 -+ /xc0/xa4 -+ /xc0/xa5 -+ /xc0/xa6 -+ /xc0/xa7 -+ /xc0/xa8 -+ /xc0/xa9 -+ /xc0/xaa -+ /xc0/xab -+ /xc0/xac -+ /xc0/xad -+ /xc0/xae -+ /xc0/xaf -+ /xc0/xb0 -+ /xc0/xb1 -+ /xc0/xb2 -+ /xc0/xb3 -+ /xc0/xb4 -+ /xc0/xb5 -+ /xc0/xb6 -+ /xc0/xb7 -+ /xc0/xb8 -+ /xc0/xb9 -+ /xc0/xba -+ /xc0/xbb -+ /xc0/xbc -+ /xc0/xbd -+ /xc0/xbe -+ /xc0/xbf -+ /xc0/xc0 -+ /xc0/xc1 -+ /xc0/xc2 -+ /xc0/xc3 -+ /xc0/xc4 -+ /xc0/xc5 -+ /xc0/xc6 -+ /xc0/xc7 -+ /xc0/xc8 -+ /xc0/xc9 -+ /xc0/xca -+ /xc0/xcb -+ /xc0/xcc -+ /xc0/xcd -+ /xc0/xce -+ /xc0/xcf -+ /xc0/xd0 -+ /xc0/xd1 -+ /xc0/xd2 -+ /xc0/xd3 -+ /xc0/xd4 -+ /xc0/xd5 -+ /xc0/xd6 -+ /xc0/xd7 -+ /xc0/xd8 -+ /xc0/xd9 -+ /xc0/xda -+ /xc0/xdb -+ /xc0/xdc -+ /xc0/xdd -+ /xc0/xde -+ /xc0/xdf -+ /xc0/xe0 -+ /xc0/xe1 -+ /xc0/xe2 -+ /xc0/xe3 -+ /xc0/xe4 -+ /xc0/xe5 -+ /xc0/xe6 -+ /xc0/xe7 -+ /xc0/xe8 -+ /xc0/xe9 -+ /xc0/xea -+ /xc0/xeb -+ /xc0/xec -+ /xc0/xed -+ /xc0/xee -+ /xc0/xef -+ /xc0/xf0 -+ /xc0/xf1 -+ /xc0/xf2 -+ /xc0/xf3 -+ /xc0/xf4 -+ /xc0/xf5 -+ /xc0/xf6 -+ /xc0/xf7 -+ /xc0/xf8 -+ /xc0/xf9 -+ /xc0/xfa -+ /xc0/xfb -+ /xc0/xfc -+ /xc0/xfd -+ /xc0/xfe -+ /xc1/xa1 -+ /xc1/xa2 -+ /xc1/xa3 -+ /xc1/xa4 -+ /xc1/xa5 -+ /xc1/xa6 -+ /xc1/xa7 -+ /xc1/xa8 -+ /xc1/xa9 -+ /xc1/xaa -+ /xc1/xab -+ /xc1/xac -+ /xc1/xad -+ /xc1/xae -+ /xc1/xaf -+ /xc1/xb0 -+ /xc1/xb1 -+ /xc1/xb2 -+ /xc1/xb3 -+ /xc1/xb4 -+ /xc1/xb5 -+ /xc1/xb6 -+ /xc1/xb7 -+ /xc1/xb8 -+ /xc1/xb9 -+ /xc1/xba -+ /xc1/xbb -+ /xc1/xbc -+ /xc1/xbd -+ /xc1/xbe -+ /xc1/xbf -+ /xc1/xc0 -+ /xc1/xc1 -+ /xc1/xc2 -+ /xc1/xc3 -+ /xc1/xc4 -+ /xc1/xc5 -+ /xc1/xc6 -+ /xc1/xc7 -+ /xc1/xc8 -+ /xc1/xc9 -+ /xc1/xca -+ /xc1/xcb -+ /xc1/xcc -+ /xc1/xcd -+ /xc1/xce -+ /xc1/xcf -+ /xc1/xd0 -+ /xc1/xd1 -+ /xc1/xd2 -+ /xc1/xd3 -+ /xc1/xd4 -+ /xc1/xd5 -+ /xc1/xd6 -+ /xc1/xd7 -+ /xc1/xd8 -+ /xc1/xd9 -+ /xc1/xda -+ /xc1/xdb -+ /xc1/xdc -+ /xc1/xdd -+ /xc1/xde -+ /xc1/xdf -+ /xc1/xe0 -+ /xc1/xe1 -+ /xc1/xe2 -+ /xc1/xe3 -+ /xc1/xe4 -+ /xc1/xe5 -+ /xc1/xe6 -+ /xc1/xe7 -+ /xc1/xe8 -+ /xc1/xe9 -+ /xc1/xea -+ /xc1/xeb -+ /xc1/xec -+ /xc1/xed -+ /xc1/xee -+ /xc1/xef -+ /xc1/xf0 -+ /xc1/xf1 -+ /xc1/xf2 -+ /xc1/xf3 -+ /xc1/xf4 -+ /xc1/xf5 -+ /xc1/xf6 -+ /xc1/xf7 -+ /xc1/xf8 -+ /xc1/xf9 -+ /xc1/xfa -+ /xc1/xfb -+ /xc1/xfc -+ /xc1/xfd -+ /xc1/xfe -+ /xc2/xa1 -+ /xc2/xa2 -+ /xc2/xa3 -+ /xc2/xa4 -+ /xc2/xa5 -+ /xc2/xa6 -+ /xc2/xa7 -+ /xc2/xa8 -+ /xc2/xa9 -+ /xc2/xaa -+ /xc2/xab -+ /xc2/xac -+ /xc2/xad -+ /xc2/xae -+ /xc2/xaf -+ /xc2/xb0 -+ /xc2/xb1 -+ /xc2/xb2 -+ /xc2/xb3 -+ /xc2/xb4 -+ /xc2/xb5 -+ /xc2/xb6 -+ /xc2/xb7 -+ /xc2/xb8 -+ /xc2/xb9 -+ /xc2/xba -+ /xc2/xbb -+ /xc2/xbc -+ /xc2/xbd -+ /xc2/xbe -+ /xc2/xbf -+ /xc2/xc0 -+ /xc2/xc1 -+ /xc2/xc2 -+ /xc2/xc3 -+ /xc2/xc4 -+ /xc2/xc5 -+ /xc2/xc6 -+ /xc2/xc7 -+ /xc2/xc8 -+ /xc2/xc9 -+ /xc2/xca -+ /xc2/xcb -+ /xc2/xcc -+ /xc2/xcd -+ /xc2/xce -+ /xc2/xcf -+ /xc2/xd0 -+ /xc2/xd1 -+ /xc2/xd2 -+ /xc2/xd3 -+ /xc2/xd4 -+ /xc2/xd5 -+ /xc2/xd6 -+ /xc2/xd7 -+ /xc2/xd8 -+ /xc2/xd9 -+ /xc2/xda -+ /xc2/xdb -+ /xc2/xdc -+ /xc2/xdd -+ /xc2/xde -+ /xc2/xdf -+ /xc2/xe0 -+ /xc2/xe1 -+ /xc2/xe2 -+ /xc2/xe3 -+ /xc2/xe4 -+ /xc2/xe5 -+ /xc2/xe6 -+ /xc2/xe7 -+ /xc2/xe8 -+ /xc2/xe9 -+ /xc2/xea -+ /xc2/xeb -+ /xc2/xec -+ /xc2/xed -+ /xc2/xee -+ /xc2/xef -+ /xc2/xf0 -+ /xc2/xf1 -+ /xc2/xf2 -+ /xc2/xf3 -+ /xc2/xf4 -+ /xc2/xf5 -+ /xc2/xf6 -+ /xc2/xf7 -+ /xc2/xf8 -+ /xc2/xf9 -+ /xc2/xfa -+ /xc2/xfb -+ /xc2/xfc -+ /xc2/xfd -+ /xc2/xfe -+ /xc3/xa1 -+ /xc3/xa2 -+ /xc3/xa3 -+ /xc3/xa4 -+ /xc3/xa5 -+ /xc3/xa6 -+ /xc3/xa7 -+ /xc3/xa8 -+ /xc3/xa9 -+ /xc3/xaa -+ /xc3/xab -+ /xc3/xac -+ /xc3/xad -+ /xc3/xae -+ /xc3/xaf -+ /xc3/xb0 -+ /xc3/xb1 -+ /xc3/xb2 -+ /xc3/xb3 -+ /xc3/xb4 -+ /xc3/xb5 -+ /xc3/xb6 -+ /xc3/xb7 -+ /xc3/xb8 -+ /xc3/xb9 -+ /xc3/xba -+ /xc3/xbb -+ /xc3/xbc -+ /xc3/xbd -+ /xc3/xbe -+ /xc3/xbf -+ /xc3/xc0 -+ /xc3/xc1 -+ /xc3/xc2 -+ /xc3/xc3 -+ /xc3/xc4 -+ /xc3/xc5 -+ /xc3/xc6 -+ /xc3/xc7 -+ /xc3/xc8 -+ /xc3/xc9 -+ /xc3/xca -+ /xc3/xcb -+ /xc3/xcc -+ /xc3/xcd -+ /xc3/xce -+ /xc3/xcf -+ /xc3/xd0 -+ /xc3/xd1 -+ /xc3/xd2 -+ /xc3/xd3 -+ /xc3/xd4 -+ /xc3/xd5 -+ /xc3/xd6 -+ /xc3/xd7 -+ /xc3/xd8 -+ /xc3/xd9 -+ /xc3/xda -+ /xc3/xdb -+ /xc3/xdc -+ /xc3/xdd -+ /xc3/xde -+ /xc3/xdf -+ /xc3/xe0 -+ /xc3/xe1 -+ /xc3/xe2 -+ /xc3/xe3 -+ /xc3/xe4 -+ /xc3/xe5 -+ /xc3/xe6 -+ /xc3/xe7 -+ /xc3/xe8 -+ /xc3/xe9 -+ /xc3/xea -+ /xc3/xeb -+ /xc3/xec -+ /xc3/xed -+ /xc3/xee -+ /xc3/xef -+ /xc3/xf0 -+ /xc3/xf1 -+ /xc3/xf2 -+ /xc3/xf3 -+ /xc3/xf4 -+ /xc3/xf5 -+ /xc3/xf6 -+ /xc3/xf7 -+ /xc3/xf8 -+ /xc3/xf9 -+ /xc3/xfa -+ /xc3/xfb -+ /xc3/xfc -+ /xc3/xfd -+ /xc3/xfe -+ /xc4/xa1 -+ /xc4/xa2 -+ /xc4/xa3 -+ /xc4/xa4 -+ /xc4/xa5 -+ /xc4/xa6 -+ /xc4/xa7 -+ /xc4/xa8 -+ /xc4/xa9 -+ /xc4/xaa -+ /xc4/xab -+ /xc4/xac -+ /xc4/xad -+ /xc4/xae -+ /xc4/xaf -+ /xc4/xb0 -+ /xc4/xb1 -+ /xc4/xb2 -+ /xc4/xb3 -+ /xc4/xb4 -+ /xc4/xb5 -+ /xc4/xb6 -+ /xc4/xb7 -+ /xc4/xb8 -+ /xc4/xb9 -+ /xc4/xba -+ /xc4/xbb -+ /xc4/xbc -+ /xc4/xbd -+ /xc4/xbe -+ /xc4/xbf -+ /xc4/xc0 -+ /xc4/xc1 -+ /xc4/xc2 -+ /xc4/xc3 -+ /xc4/xc4 -+ /xc4/xc5 -+ /xc4/xc6 -+ /xc4/xc7 -+ /xc4/xc8 -+ /xc4/xc9 -+ /xc4/xca -+ /xc4/xcb -+ /xc4/xcc -+ /xc4/xcd -+ /xc4/xce -+ /xc4/xcf -+ /xc4/xd0 -+ /xc4/xd1 -+ /xc4/xd2 -+ /xc4/xd3 -+ /xc4/xd4 -+ /xc4/xd5 -+ /xc4/xd6 -+ /xc4/xd7 -+ /xc4/xd8 -+ /xc4/xd9 -+ /xc4/xda -+ /xc4/xdb -+ /xc4/xdc -+ /xc4/xdd -+ /xc4/xde -+ /xc4/xdf -+ /xc4/xe0 -+ /xc4/xe1 -+ /xc4/xe2 -+ /xc4/xe3 -+ /xc4/xe4 -+ /xc4/xe5 -+ /xc4/xe6 -+ /xc4/xe7 -+ /xc4/xe8 -+ /xc4/xe9 -+ /xc4/xea -+ /xc4/xeb -+ /xc4/xec -+ /xc4/xed -+ /xc4/xee -+ /xc4/xef -+ /xc4/xf0 -+ /xc4/xf1 -+ /xc4/xf2 -+ /xc4/xf3 -+ /xc4/xf4 -+ /xc4/xf5 -+ /xc4/xf6 -+ /xc4/xf7 -+ /xc4/xf8 -+ /xc4/xf9 -+ /xc4/xfa -+ /xc4/xfb -+ /xc4/xfc -+ /xc4/xfd -+ /xc4/xfe -+ /xc5/xa1 -+ /xc5/xa2 -+ /xc5/xa3 -+ /xc5/xa4 -+ /xc5/xa5 -+ /xc5/xa6 -+ /xc5/xa7 -+ /xc5/xa8 -+ /xc5/xa9 -+ /xc5/xaa -+ /xc5/xab -+ /xc5/xac -+ /xc5/xad -+ /xc5/xae -+ /xc5/xaf -+ /xc5/xb0 -+ /xc5/xb1 -+ /xc5/xb2 -+ /xc5/xb3 -+ /xc5/xb4 -+ /xc5/xb5 -+ /xc5/xb6 -+ /xc5/xb7 -+ /xc5/xb8 -+ /xc5/xb9 -+ /xc5/xba -+ /xc5/xbb -+ /xc5/xbc -+ /xc5/xbd -+ /xc5/xbe -+ /xc5/xbf -+ /xc5/xc0 -+ /xc5/xc1 -+ /xc5/xc2 -+ /xc5/xc3 -+ /xc5/xc4 -+ /xc5/xc5 -+ /xc5/xc6 -+ /xc5/xc7 -+ /xc5/xc8 -+ /xc5/xc9 -+ /xc5/xca -+ /xc5/xcb -+ /xc5/xcc -+ /xc5/xcd -+ /xc5/xce -+ /xc5/xcf -+ /xc5/xd0 -+ /xc5/xd1 -+ /xc5/xd2 -+ /xc5/xd3 -+ /xc5/xd4 -+ /xc5/xd5 -+ /xc5/xd6 -+ /xc5/xd7 -+ /xc5/xd8 -+ /xc5/xd9 -+ /xc5/xda -+ /xc5/xdb -+ /xc5/xdc -+ /xc5/xdd -+ /xc5/xde -+ /xc5/xdf -+ /xc5/xe0 -+ /xc5/xe1 -+ /xc5/xe2 -+ /xc5/xe3 -+ /xc5/xe4 -+ /xc5/xe5 -+ /xc5/xe6 -+ /xc5/xe7 -+ /xc5/xe8 -+ /xc5/xe9 -+ /xc5/xea -+ /xc5/xeb -+ /xc5/xec -+ /xc5/xed -+ /xc5/xee -+ /xc5/xef -+ /xc5/xf0 -+ /xc5/xf1 -+ /xc5/xf2 -+ /xc5/xf3 -+ /xc5/xf4 -+ /xc5/xf5 -+ /xc5/xf6 -+ /xc5/xf7 -+ /xc5/xf8 -+ /xc5/xf9 -+ /xc5/xfa -+ /xc5/xfb -+ /xc5/xfc -+ /xc5/xfd -+ /xc5/xfe -+ /xc6/xa1 -+ /xc6/xa2 -+ /xc6/xa3 -+ /xc6/xa4 -+ /xc6/xa5 -+ /xc6/xa6 -+ /xc6/xa7 -+ /xc6/xa8 -+ /xc6/xa9 -+ /xc6/xaa -+ /xc6/xab -+ /xc6/xac -+ /xc6/xad -+ /xc6/xae -+ /xc6/xaf -+ /xc6/xb0 -+ /xc6/xb1 -+ /xc6/xb2 -+ /xc6/xb3 -+ /xc6/xb4 -+ /xc6/xb5 -+ /xc6/xb6 -+ /xc6/xb7 -+ /xc6/xb8 -+ /xc6/xb9 -+ /xc6/xba -+ /xc6/xbb -+ /xc6/xbc -+ /xc6/xbd -+ /xc6/xbe -+ /xc6/xbf -+ /xc6/xc0 -+ /xc6/xc1 -+ /xc6/xc2 -+ /xc6/xc3 -+ /xc6/xc4 -+ /xc6/xc5 -+ /xc6/xc6 -+ /xc6/xc7 -+ /xc6/xc8 -+ /xc6/xc9 -+ /xc6/xca -+ /xc6/xcb -+ /xc6/xcc -+ /xc6/xcd -+ /xc6/xce -+ /xc6/xcf -+ /xc6/xd0 -+ /xc6/xd1 -+ /xc6/xd2 -+ /xc6/xd3 -+ /xc6/xd4 -+ /xc6/xd5 -+ /xc6/xd6 -+ /xc6/xd7 -+ /xc6/xd8 -+ /xc6/xd9 -+ /xc6/xda -+ /xc6/xdb -+ /xc6/xdc -+ /xc6/xdd -+ /xc6/xde -+ /xc6/xdf -+ /xc6/xe0 -+ /xc6/xe1 -+ /xc6/xe2 -+ /xc6/xe3 -+ /xc6/xe4 -+ /xc6/xe5 -+ /xc6/xe6 -+ /xc6/xe7 -+ /xc6/xe8 -+ /xc6/xe9 -+ /xc6/xea -+ /xc6/xeb -+ /xc6/xec -+ /xc6/xed -+ /xc6/xee -+ /xc6/xef -+ /xc6/xf0 -+ /xc6/xf1 -+ /xc6/xf2 -+ /xc6/xf3 -+ /xc6/xf4 -+ /xc6/xf5 -+ /xc6/xf6 -+ /xc6/xf7 -+ /xc6/xf8 -+ /xc6/xf9 -+ /xc6/xfa -+ /xc6/xfb -+ /xc6/xfc -+ /xc6/xfd -+ /xc6/xfe -+ /xc7/xa1 -+ /xc7/xa2 -+ /xc7/xa3 -+ /xc7/xa4 -+ /xc7/xa5 -+ /xc7/xa6 -+ /xc7/xa7 -+ /xc7/xa8 -+ /xc7/xa9 -+ /xc7/xaa -+ /xc7/xab -+ /xc7/xac -+ /xc7/xad -+ /xc7/xae -+ /xc7/xaf -+ /xc7/xb0 -+ /xc7/xb1 -+ /xc7/xb2 -+ /xc7/xb3 -+ /xc7/xb4 -+ /xc7/xb5 -+ /xc7/xb6 -+ /xc7/xb7 -+ /xc7/xb8 -+ /xc7/xb9 -+ /xc7/xba -+ /xc7/xbb -+ /xc7/xbc -+ /xc7/xbd -+ /xc7/xbe -+ /xc7/xbf -+ /xc7/xc0 -+ /xc7/xc1 -+ /xc7/xc2 -+ /xc7/xc3 -+ /xc7/xc4 -+ /xc7/xc5 -+ /xc7/xc6 -+ /xc7/xc7 -+ /xc7/xc8 -+ /xc7/xc9 -+ /xc7/xca -+ /xc7/xcb -+ /xc7/xcc -+ /xc7/xcd -+ /xc7/xce -+ /xc7/xcf -+ /xc7/xd0 -+ /xc7/xd1 -+ /xc7/xd2 -+ /xc7/xd3 -+ /xc7/xd4 -+ /xc7/xd5 -+ /xc7/xd6 -+ /xc7/xd7 -+ /xc7/xd8 -+ /xc7/xd9 -+ /xc7/xda -+ /xc7/xdb -+ /xc7/xdc -+ /xc7/xdd -+ /xc7/xde -+ /xc7/xdf -+ /xc7/xe0 -+ /xc7/xe1 -+ /xc7/xe2 -+ /xc7/xe3 -+ /xc7/xe4 -+ /xc7/xe5 -+ /xc7/xe6 -+ /xc7/xe7 -+ /xc7/xe8 -+ /xc7/xe9 -+ /xc7/xea -+ /xc7/xeb -+ /xc7/xec -+ /xc7/xed -+ /xc7/xee -+ /xc7/xef -+ /xc7/xf0 -+ /xc7/xf1 -+ /xc7/xf2 -+ /xc7/xf3 -+ /xc7/xf4 -+ /xc7/xf5 -+ /xc7/xf6 -+ /xc7/xf7 -+ /xc7/xf8 -+ /xc7/xf9 -+ /xc7/xfa -+ /xc7/xfb -+ /xc7/xfc -+ /xc7/xfd -+ /xc7/xfe -+ /xc8/xa1 -+ /xc8/xa2 -+ /xc8/xa3 -+ /xc8/xa4 -+ /xc8/xa5 -+ /xc8/xa6 -+ /xc8/xa7 -+ /xc8/xa8 -+ /xc8/xa9 -+ /xc8/xaa -+ /xc8/xab -+ /xc8/xac -+ /xc8/xad -+ /xc8/xae -+ /xc8/xaf -+ /xc8/xb0 -+ /xc8/xb1 -+ /xc8/xb2 -+ /xc8/xb3 -+ /xc8/xb4 -+ /xc8/xb5 -+ /xc8/xb6 -+ /xc8/xb7 -+ /xc8/xb8 -+ /xc8/xb9 -+ /xc8/xba -+ /xc8/xbb -+ /xc8/xbc -+ /xc8/xbd -+ /xc8/xbe -+ /xc8/xbf -+ /xc8/xc0 -+ /xc8/xc1 -+ /xc8/xc2 -+ /xc8/xc3 -+ /xc8/xc4 -+ /xc8/xc5 -+ /xc8/xc6 -+ /xc8/xc7 -+ /xc8/xc8 -+ /xc8/xc9 -+ /xc8/xca -+ /xc8/xcb -+ /xc8/xcc -+ /xc8/xcd -+ /xc8/xce -+ /xc8/xcf -+ /xc8/xd0 -+ /xc8/xd1 -+ /xc8/xd2 -+ /xc8/xd3 -+ /xc8/xd4 -+ /xc8/xd5 -+ /xc8/xd6 -+ /xc8/xd7 -+ /xc8/xd8 -+ /xc8/xd9 -+ /xc8/xda -+ /xc8/xdb -+ /xc8/xdc -+ /xc8/xdd -+ /xc8/xde -+ /xc8/xdf -+ /xc8/xe0 -+ /xc8/xe1 -+ /xc8/xe2 -+ /xc8/xe3 -+ /xc8/xe4 -+ /xc8/xe5 -+ /xc8/xe6 -+ /xc8/xe7 -+ /xc8/xe8 -+ /xc8/xe9 -+ /xc8/xea -+ /xc8/xeb -+ /xc8/xec -+ /xc8/xed -+ /xc8/xee -+ /xc8/xef -+ /xc8/xf0 -+ /xc8/xf1 -+ /xc8/xf2 -+ /xc8/xf3 -+ /xc8/xf4 -+ /xc8/xf5 -+ /xc8/xf6 -+ /xc8/xf7 -+ /xc8/xf8 -+ /xc8/xf9 -+ /xc8/xfa -+ /xc8/xfb -+ /xc8/xfc -+ /xc8/xfd -+ /xc8/xfe -+ /xc9/xa1 -+ /xc9/xa2 -+ /xc9/xa3 -+ /xc9/xa4 -+ /xc9/xa5 -+ /xc9/xa6 -+ /xc9/xa7 -+ /xc9/xa8 -+ /xc9/xa9 -+ /xc9/xaa -+ /xc9/xab -+ /xc9/xac -+ /xc9/xad -+ /xc9/xae -+ /xc9/xaf -+ /xc9/xb0 -+ /xc9/xb1 -+ /xc9/xb2 -+ /xc9/xb3 -+ /xc9/xb4 -+ /xc9/xb5 -+ /xc9/xb6 -+ /xc9/xb7 -+ /xc9/xb8 -+ /xc9/xb9 -+ /xc9/xba -+ /xc9/xbb -+ /xc9/xbc -+ /xc9/xbd -+ /xc9/xbe -+ /xc9/xbf -+ /xc9/xc0 -+ /xc9/xc1 -+ /xc9/xc2 -+ /xc9/xc3 -+ /xc9/xc4 -+ /xc9/xc5 -+ /xc9/xc6 -+ /xc9/xc7 -+ /xc9/xc8 -+ /xc9/xc9 -+ /xc9/xca -+ /xc9/xcb -+ /xc9/xcc -+ /xc9/xcd -+ /xc9/xce -+ /xc9/xcf -+ /xc9/xd0 -+ /xc9/xd1 -+ /xc9/xd2 -+ /xc9/xd3 -+ /xc9/xd4 -+ /xc9/xd5 -+ /xc9/xd6 -+ /xc9/xd7 -+ /xc9/xd8 -+ /xc9/xd9 -+ /xc9/xda -+ /xc9/xdb -+ /xc9/xdc -+ /xc9/xdd -+ /xc9/xde -+ /xc9/xdf -+ /xc9/xe0 -+ /xc9/xe1 -+ /xc9/xe2 -+ /xc9/xe3 -+ /xc9/xe4 -+ /xc9/xe5 -+ /xc9/xe6 -+ /xc9/xe7 -+ /xc9/xe8 -+ /xc9/xe9 -+ /xc9/xea -+ /xc9/xeb -+ /xc9/xec -+ /xc9/xed -+ /xc9/xee -+ /xc9/xef -+ /xc9/xf0 -+ /xc9/xf1 -+ /xc9/xf2 -+ /xc9/xf3 -+ /xc9/xf4 -+ /xc9/xf5 -+ /xc9/xf6 -+ /xc9/xf7 -+ /xc9/xf8 -+ /xc9/xf9 -+ /xc9/xfa -+ /xc9/xfb -+ /xc9/xfc -+ /xc9/xfd -+ /xc9/xfe -+ /xca/xa1 -+ /xca/xa2 -+ /xca/xa3 -+ /xca/xa4 -+ /xca/xa5 -+ /xca/xa6 -+ /xca/xa7 -+ /xca/xa8 -+ /xca/xa9 -+ /xca/xaa -+ /xca/xab -+ /xca/xac -+ /xca/xad -+ /xca/xae -+ /xca/xaf -+ /xca/xb0 -+ /xca/xb1 -+ /xca/xb2 -+ /xca/xb3 -+ /xca/xb4 -+ /xca/xb5 -+ /xca/xb6 -+ /xca/xb7 -+ /xca/xb8 -+ /xca/xb9 -+ /xca/xba -+ /xca/xbb -+ /xca/xbc -+ /xca/xbd -+ /xca/xbe -+ /xca/xbf -+ /xca/xc0 -+ /xca/xc1 -+ /xca/xc2 -+ /xca/xc3 -+ /xca/xc4 -+ /xca/xc5 -+ /xca/xc6 -+ /xca/xc7 -+ /xca/xc8 -+ /xca/xc9 -+ /xca/xca -+ /xca/xcb -+ /xca/xcc -+ /xca/xcd -+ /xca/xce -+ /xca/xcf -+ /xca/xd0 -+ /xca/xd1 -+ /xca/xd2 -+ /xca/xd3 -+ /xca/xd4 -+ /xca/xd5 -+ /xca/xd6 -+ /xca/xd7 -+ /xca/xd8 -+ /xca/xd9 -+ /xca/xda -+ /xca/xdb -+ /xca/xdc -+ /xca/xdd -+ /xca/xde -+ /xca/xdf -+ /xca/xe0 -+ /xca/xe1 -+ /xca/xe2 -+ /xca/xe3 -+ /xca/xe4 -+ /xca/xe5 -+ /xca/xe6 -+ /xca/xe7 -+ /xca/xe8 -+ /xca/xe9 -+ /xca/xea -+ /xca/xeb -+ /xca/xec -+ /xca/xed -+ /xca/xee -+ /xca/xef -+ /xca/xf0 -+ /xca/xf1 -+ /xca/xf2 -+ /xca/xf3 -+ /xca/xf4 -+ /xca/xf5 -+ /xca/xf6 -+ /xca/xf7 -+ /xca/xf8 -+ /xca/xf9 -+ /xca/xfa -+ /xca/xfb -+ /xca/xfc -+ /xca/xfd -+ /xca/xfe -+ /xcb/xa1 -+ /xcb/xa2 -+ /xcb/xa3 -+ /xcb/xa4 -+ /xcb/xa5 -+ /xcb/xa6 -+ /xcb/xa7 -+ /xcb/xa8 -+ /xcb/xa9 -+ /xcb/xaa -+ /xcb/xab -+ /xcb/xac -+ /xcb/xad -+ /xcb/xae -+ /xcb/xaf -+ /xcb/xb0 -+ /xcb/xb1 -+ /xcb/xb2 -+ /xcb/xb3 -+ /xcb/xb4 -+ /xcb/xb5 -+ /xcb/xb6 -+ /xcb/xb7 -+ /xcb/xb8 -+ /xcb/xb9 -+ /xcb/xba -+ /xcb/xbb -+ /xcb/xbc -+ /xcb/xbd -+ /xcb/xbe -+ /xcb/xbf -+ /xcb/xc0 -+ /xcb/xc1 -+ /xcb/xc2 -+ /xcb/xc3 -+ /xcb/xc4 -+ /xcb/xc5 -+ /xcb/xc6 -+ /xcb/xc7 -+ /xcb/xc8 -+ /xcb/xc9 -+ /xcb/xca -+ /xcb/xcb -+ /xcb/xcc -+ /xcb/xcd -+ /xcb/xce -+ /xcb/xcf -+ /xcb/xd0 -+ /xcb/xd1 -+ /xcb/xd2 -+ /xcb/xd3 -+ /xcb/xd4 -+ /xcb/xd5 -+ /xcb/xd6 -+ /xcb/xd7 -+ /xcb/xd8 -+ /xcb/xd9 -+ /xcb/xda -+ /xcb/xdb -+ /xcb/xdc -+ /xcb/xdd -+ /xcb/xde -+ /xcb/xdf -+ /xcb/xe0 -+ /xcb/xe1 -+ /xcb/xe2 -+ /xcb/xe3 -+ /xcb/xe4 -+ /xcb/xe5 -+ /xcb/xe6 -+ /xcb/xe7 -+ /xcb/xe8 -+ /xcb/xe9 -+ /xcb/xea -+ /xcb/xeb -+ /xcb/xec -+ /xcb/xed -+ /xcb/xee -+ /xcb/xef -+ /xcb/xf0 -+ /xcb/xf1 -+ /xcb/xf2 -+ /xcb/xf3 -+ /xcb/xf4 -+ /xcb/xf5 -+ /xcb/xf6 -+ /xcb/xf7 -+ /xcb/xf8 -+ /xcb/xf9 -+ /xcb/xfa -+ /xcb/xfb -+ /xcb/xfc -+ /xcb/xfd -+ /xcb/xfe -+ /xcc/xa1 -+ /xcc/xa2 -+ /xcc/xa3 -+ /xcc/xa4 -+ /xcc/xa5 -+ /xcc/xa6 -+ /xcc/xa7 -+ /xcc/xa8 -+ /xcc/xa9 -+ /xcc/xaa -+ /xcc/xab -+ /xcc/xac -+ /xcc/xad -+ /xcc/xae -+ /xcc/xaf -+ /xcc/xb0 -+ /xcc/xb1 -+ /xcc/xb2 -+ /xcc/xb3 -+ /xcc/xb4 -+ /xcc/xb5 -+ /xcc/xb6 -+ /xcc/xb7 -+ /xcc/xb8 -+ /xcc/xb9 -+ /xcc/xba -+ /xcc/xbb -+ /xcc/xbc -+ /xcc/xbd -+ /xcc/xbe -+ /xcc/xbf -+ /xcc/xc0 -+ /xcc/xc1 -+ /xcc/xc2 -+ /xcc/xc3 -+ /xcc/xc4 -+ /xcc/xc5 -+ /xcc/xc6 -+ /xcc/xc7 -+ /xcc/xc8 -+ /xcc/xc9 -+ /xcc/xca -+ /xcc/xcb -+ /xcc/xcc -+ /xcc/xcd -+ /xcc/xce -+ /xcc/xcf -+ /xcc/xd0 -+ /xcc/xd1 -+ /xcc/xd2 -+ /xcc/xd3 -+ /xcc/xd4 -+ /xcc/xd5 -+ /xcc/xd6 -+ /xcc/xd7 -+ /xcc/xd8 -+ /xcc/xd9 -+ /xcc/xda -+ /xcc/xdb -+ /xcc/xdc -+ /xcc/xdd -+ /xcc/xde -+ /xcc/xdf -+ /xcc/xe0 -+ /xcc/xe1 -+ /xcc/xe2 -+ /xcc/xe3 -+ /xcc/xe4 -+ /xcc/xe5 -+ /xcc/xe6 -+ /xcc/xe7 -+ /xcc/xe8 -+ /xcc/xe9 -+ /xcc/xea -+ /xcc/xeb -+ /xcc/xec -+ /xcc/xed -+ /xcc/xee -+ /xcc/xef -+ /xcc/xf0 -+ /xcc/xf1 -+ /xcc/xf2 -+ /xcc/xf3 -+ /xcc/xf4 -+ /xcc/xf5 -+ /xcc/xf6 -+ /xcc/xf7 -+ /xcc/xf8 -+ /xcc/xf9 -+ /xcc/xfa -+ /xcc/xfb -+ /xcc/xfc -+ /xcc/xfd -+ /xcc/xfe -+ /xcd/xa1 -+ /xcd/xa2 -+ /xcd/xa3 -+ /xcd/xa4 -+ /xcd/xa5 -+ /xcd/xa6 -+ /xcd/xa7 -+ /xcd/xa8 -+ /xcd/xa9 -+ /xcd/xaa -+ /xcd/xab -+ /xcd/xac -+ /xcd/xad -+ /xcd/xae -+ /xcd/xaf -+ /xcd/xb0 -+ /xcd/xb1 -+ /xcd/xb2 -+ /xcd/xb3 -+ /xcd/xb4 -+ /xcd/xb5 -+ /xcd/xb6 -+ /xcd/xb7 -+ /xcd/xb8 -+ /xcd/xb9 -+ /xcd/xba -+ /xcd/xbb -+ /xcd/xbc -+ /xcd/xbd -+ /xcd/xbe -+ /xcd/xbf -+ /xcd/xc0 -+ /xcd/xc1 -+ /xcd/xc2 -+ /xcd/xc3 -+ /xcd/xc4 -+ /xcd/xc5 -+ /xcd/xc6 -+ /xcd/xc7 -+ /xcd/xc8 -+ /xcd/xc9 -+ /xcd/xca -+ /xcd/xcb -+ /xcd/xcc -+ /xcd/xcd -+ /xcd/xce -+ /xcd/xcf -+ /xcd/xd0 -+ /xcd/xd1 -+ /xcd/xd2 -+ /xcd/xd3 -+ /xcd/xd4 -+ /xcd/xd5 -+ /xcd/xd6 -+ /xcd/xd7 -+ /xcd/xd8 -+ /xcd/xd9 -+ /xcd/xda -+ /xcd/xdb -+ /xcd/xdc -+ /xcd/xdd -+ /xcd/xde -+ /xcd/xdf -+ /xcd/xe0 -+ /xcd/xe1 -+ /xcd/xe2 -+ /xcd/xe3 -+ /xcd/xe4 -+ /xcd/xe5 -+ /xcd/xe6 -+ /xcd/xe7 -+ /xcd/xe8 -+ /xcd/xe9 -+ /xcd/xea -+ /xcd/xeb -+ /xcd/xec -+ /xcd/xed -+ /xcd/xee -+ /xcd/xef -+ /xcd/xf0 -+ /xcd/xf1 -+ /xcd/xf2 -+ /xcd/xf3 -+ /xcd/xf4 -+ /xcd/xf5 -+ /xcd/xf6 -+ /xcd/xf7 -+ /xcd/xf8 -+ /xcd/xf9 -+ /xcd/xfa -+ /xcd/xfb -+ /xcd/xfc -+ /xcd/xfd -+ /xcd/xfe -+ /xce/xa1 -+ /xce/xa2 -+ /xce/xa3 -+ /xce/xa4 -+ /xce/xa5 -+ /xce/xa6 -+ /xce/xa7 -+ /xce/xa8 -+ /xce/xa9 -+ /xce/xaa -+ /xce/xab -+ /xce/xac -+ /xce/xad -+ /xce/xae -+ /xce/xaf -+ /xce/xb0 -+ /xce/xb1 -+ /xce/xb2 -+ /xce/xb3 -+ /xce/xb4 -+ /xce/xb5 -+ /xce/xb6 -+ /xce/xb7 -+ /xce/xb8 -+ /xce/xb9 -+ /xce/xba -+ /xce/xbb -+ /xce/xbc -+ /xce/xbd -+ /xce/xbe -+ /xce/xbf -+ /xce/xc0 -+ /xce/xc1 -+ /xce/xc2 -+ /xce/xc3 -+ /xce/xc4 -+ /xce/xc5 -+ /xce/xc6 -+ /xce/xc7 -+ /xce/xc8 -+ /xce/xc9 -+ /xce/xca -+ /xce/xcb -+ /xce/xcc -+ /xce/xcd -+ /xce/xce -+ /xce/xcf -+ /xce/xd0 -+ /xce/xd1 -+ /xce/xd2 -+ /xce/xd3 -+ /xce/xd4 -+ /xce/xd5 -+ /xce/xd6 -+ /xce/xd7 -+ /xce/xd8 -+ /xce/xd9 -+ /xce/xda -+ /xce/xdb -+ /xce/xdc -+ /xce/xdd -+ /xce/xde -+ /xce/xdf -+ /xce/xe0 -+ /xce/xe1 -+ /xce/xe2 -+ /xce/xe3 -+ /xce/xe4 -+ /xce/xe5 -+ /xce/xe6 -+ /xce/xe7 -+ /xce/xe8 -+ /xce/xe9 -+ /xce/xea -+ /xce/xeb -+ /xce/xec -+ /xce/xed -+ /xce/xee -+ /xce/xef -+ /xce/xf0 -+ /xce/xf1 -+ /xce/xf2 -+ /xce/xf3 -+ /xce/xf4 -+ /xce/xf5 -+ /xce/xf6 -+ /xce/xf7 -+ /xce/xf8 -+ /xce/xf9 -+ /xce/xfa -+ /xce/xfb -+ /xce/xfc -+ /xce/xfd -+ /xce/xfe -+ /xcf/xa1 -+ /xcf/xa2 -+ /xcf/xa3 -+ /xcf/xa4 -+ /xcf/xa5 -+ /xcf/xa6 -+ /xcf/xa7 -+ /xcf/xa8 -+ /xcf/xa9 -+ /xcf/xaa -+ /xcf/xab -+ /xcf/xac -+ /xcf/xad -+ /xcf/xae -+ /xcf/xaf -+ /xcf/xb0 -+ /xcf/xb1 -+ /xcf/xb2 -+ /xcf/xb3 -+ /xcf/xb4 -+ /xcf/xb5 -+ /xcf/xb6 -+ /xcf/xb7 -+ /xcf/xb8 -+ /xcf/xb9 -+ /xcf/xba -+ /xcf/xbb -+ /xcf/xbc -+ /xcf/xbd -+ /xcf/xbe -+ /xcf/xbf -+ /xcf/xc0 -+ /xcf/xc1 -+ /xcf/xc2 -+ /xcf/xc3 -+ /xcf/xc4 -+ /xcf/xc5 -+ /xcf/xc6 -+ /xcf/xc7 -+ /xcf/xc8 -+ /xcf/xc9 -+ /xcf/xca -+ /xcf/xcb -+ /xcf/xcc -+ /xcf/xcd -+ /xcf/xce -+ /xcf/xcf -+ /xcf/xd0 -+ /xcf/xd1 -+ /xcf/xd2 -+ /xcf/xd3 -+ /xd0/xa1 -+ /xd0/xa2 -+ /xd0/xa3 -+ /xd0/xa4 -+ /xd0/xa5 -+ /xd0/xa6 -+ /xd0/xa7 -+ /xd0/xa8 -+ /xd0/xa9 -+ /xd0/xaa -+ /xd0/xab -+ /xd0/xac -+ /xd0/xad -+ /xd0/xae -+ /xd0/xaf -+ /xd0/xb0 -+ /xd0/xb1 -+ /xd0/xb2 -+ /xd0/xb3 -+ /xd0/xb4 -+ /xd0/xb5 -+ /xd0/xb6 -+ /xd0/xb7 -+ /xd0/xb8 -+ /xd0/xb9 -+ /xd0/xba -+ /xd0/xbb -+ /xd0/xbc -+ /xd0/xbd -+ /xd0/xbe -+ /xd0/xbf -+ /xd0/xc0 -+ /xd0/xc1 -+ /xd0/xc2 -+ /xd0/xc3 -+ /xd0/xc4 -+ /xd0/xc5 -+ /xd0/xc6 -+ /xd0/xc7 -+ /xd0/xc8 -+ /xd0/xc9 -+ /xd0/xca -+ /xd0/xcb -+ /xd0/xcc -+ /xd0/xcd -+ /xd0/xce -+ /xd0/xcf -+ /xd0/xd0 -+ /xd0/xd1 -+ /xd0/xd2 -+ /xd0/xd3 -+ /xd0/xd4 -+ /xd0/xd5 -+ /xd0/xd6 -+ /xd0/xd7 -+ /xd0/xd8 -+ /xd0/xd9 -+ /xd0/xda -+ /xd0/xdb -+ /xd0/xdc -+ /xd0/xdd -+ /xd0/xde -+ /xd0/xdf -+ /xd0/xe0 -+ /xd0/xe1 -+ /xd0/xe2 -+ /xd0/xe3 -+ /xd0/xe4 -+ /xd0/xe5 -+ /xd0/xe6 -+ /xd0/xe7 -+ /xd0/xe8 -+ /xd0/xe9 -+ /xd0/xea -+ /xd0/xeb -+ /xd0/xec -+ /xd0/xed -+ /xd0/xee -+ /xd0/xef -+ /xd0/xf0 -+ /xd0/xf1 -+ /xd0/xf2 -+ /xd0/xf3 -+ /xd0/xf4 -+ /xd0/xf5 -+ /xd0/xf6 -+ /xd0/xf7 -+ /xd0/xf8 -+ /xd0/xf9 -+ /xd0/xfa -+ /xd0/xfb -+ /xd0/xfc -+ /xd0/xfd -+ /xd0/xfe -+ /xd1/xa1 -+ /xd1/xa2 -+ /xd1/xa3 -+ /xd1/xa4 -+ /xd1/xa5 -+ /xd1/xa6 -+ /xd1/xa7 -+ /xd1/xa8 -+ /xd1/xa9 -+ /xd1/xaa -+ /xd1/xab -+ /xd1/xac -+ /xd1/xad -+ /xd1/xae -+ /xd1/xaf -+ /xd1/xb0 -+ /xd1/xb1 -+ /xd1/xb2 -+ /xd1/xb3 -+ /xd1/xb4 -+ /xd1/xb5 -+ /xd1/xb6 -+ /xd1/xb7 -+ /xd1/xb8 -+ /xd1/xb9 -+ /xd1/xba -+ /xd1/xbb -+ /xd1/xbc -+ /xd1/xbd -+ /xd1/xbe -+ /xd1/xbf -+ /xd1/xc0 -+ /xd1/xc1 -+ /xd1/xc2 -+ /xd1/xc3 -+ /xd1/xc4 -+ /xd1/xc5 -+ /xd1/xc6 -+ /xd1/xc7 -+ /xd1/xc8 -+ /xd1/xc9 -+ /xd1/xca -+ /xd1/xcb -+ /xd1/xcc -+ /xd1/xcd -+ /xd1/xce -+ /xd1/xcf -+ /xd1/xd0 -+ /xd1/xd1 -+ /xd1/xd2 -+ /xd1/xd3 -+ /xd1/xd4 -+ /xd1/xd5 -+ /xd1/xd6 -+ /xd1/xd7 -+ /xd1/xd8 -+ /xd1/xd9 -+ /xd1/xda -+ /xd1/xdb -+ /xd1/xdc -+ /xd1/xdd -+ /xd1/xde -+ /xd1/xdf -+ /xd1/xe0 -+ /xd1/xe1 -+ /xd1/xe2 -+ /xd1/xe3 -+ /xd1/xe4 -+ /xd1/xe5 -+ /xd1/xe6 -+ /xd1/xe7 -+ /xd1/xe8 -+ /xd1/xe9 -+ /xd1/xea -+ /xd1/xeb -+ /xd1/xec -+ /xd1/xed -+ /xd1/xee -+ /xd1/xef -+ /xd1/xf0 -+ /xd1/xf1 -+ /xd1/xf2 -+ /xd1/xf3 -+ /xd1/xf4 -+ /xd1/xf5 -+ /xd1/xf6 -+ /xd1/xf7 -+ /xd1/xf8 -+ /xd1/xf9 -+ /xd1/xfa -+ /xd1/xfb -+ /xd1/xfc -+ /xd1/xfd -+ /xd1/xfe -+ /xd2/xa1 -+ /xd2/xa2 -+ /xd2/xa3 -+ /xd2/xa4 -+ /xd2/xa5 -+ /xd2/xa6 -+ /xd2/xa7 -+ /xd2/xa8 -+ /xd2/xa9 -+ /xd2/xaa -+ /xd2/xab -+ /xd2/xac -+ /xd2/xad -+ /xd2/xae -+ /xd2/xaf -+ /xd2/xb0 -+ /xd2/xb1 -+ /xd2/xb2 -+ /xd2/xb3 -+ /xd2/xb4 -+ /xd2/xb5 -+ /xd2/xb6 -+ /xd2/xb7 -+ /xd2/xb8 -+ /xd2/xb9 -+ /xd2/xba -+ /xd2/xbb -+ /xd2/xbc -+ /xd2/xbd -+ /xd2/xbe -+ /xd2/xbf -+ /xd2/xc0 -+ /xd2/xc1 -+ /xd2/xc2 -+ /xd2/xc3 -+ /xd2/xc4 -+ /xd2/xc5 -+ /xd2/xc6 -+ /xd2/xc7 -+ /xd2/xc8 -+ /xd2/xc9 -+ /xd2/xca -+ /xd2/xcb -+ /xd2/xcc -+ /xd2/xcd -+ /xd2/xce -+ /xd2/xcf -+ /xd2/xd0 -+ /xd2/xd1 -+ /xd2/xd2 -+ /xd2/xd3 -+ /xd2/xd4 -+ /xd2/xd5 -+ /xd2/xd6 -+ /xd2/xd7 -+ /xd2/xd8 -+ /xd2/xd9 -+ /xd2/xda -+ /xd2/xdb -+ /xd2/xdc -+ /xd2/xdd -+ /xd2/xde -+ /xd2/xdf -+ /xd2/xe0 -+ /xd2/xe1 -+ /xd2/xe2 -+ /xd2/xe3 -+ /xd2/xe4 -+ /xd2/xe5 -+ /xd2/xe6 -+ /xd2/xe7 -+ /xd2/xe8 -+ /xd2/xe9 -+ /xd2/xea -+ /xd2/xeb -+ /xd2/xec -+ /xd2/xed -+ /xd2/xee -+ /xd2/xef -+ /xd2/xf0 -+ /xd2/xf1 -+ /xd2/xf2 -+ /xd2/xf3 -+ /xd2/xf4 -+ /xd2/xf5 -+ /xd2/xf6 -+ /xd2/xf7 -+ /xd2/xf8 -+ /xd2/xf9 -+ /xd2/xfa -+ /xd2/xfb -+ /xd2/xfc -+ /xd2/xfd -+ /xd2/xfe -+ /xd3/xa1 -+ /xd3/xa2 -+ /xd3/xa3 -+ /xd3/xa4 -+ /xd3/xa5 -+ /xd3/xa6 -+ /xd3/xa7 -+ /xd3/xa8 -+ /xd3/xa9 -+ /xd3/xaa -+ /xd3/xab -+ /xd3/xac -+ /xd3/xad -+ /xd3/xae -+ /xd3/xaf -+ /xd3/xb0 -+ /xd3/xb1 -+ /xd3/xb2 -+ /xd3/xb3 -+ /xd3/xb4 -+ /xd3/xb5 -+ /xd3/xb6 -+ /xd3/xb7 -+ /xd3/xb8 -+ /xd3/xb9 -+ /xd3/xba -+ /xd3/xbb -+ /xd3/xbc -+ /xd3/xbd -+ /xd3/xbe -+ /xd3/xbf -+ /xd3/xc0 -+ /xd3/xc1 -+ /xd3/xc2 -+ /xd3/xc3 -+ /xd3/xc4 -+ /xd3/xc5 -+ /xd3/xc6 -+ /xd3/xc7 -+ /xd3/xc8 -+ /xd3/xc9 -+ /xd3/xca -+ /xd3/xcb -+ /xd3/xcc -+ /xd3/xcd -+ /xd3/xce -+ /xd3/xcf -+ /xd3/xd0 -+ /xd3/xd1 -+ /xd3/xd2 -+ /xd3/xd3 -+ /xd3/xd4 -+ /xd3/xd5 -+ /xd3/xd6 -+ /xd3/xd7 -+ /xd3/xd8 -+ /xd3/xd9 -+ /xd3/xda -+ /xd3/xdb -+ /xd3/xdc -+ /xd3/xdd -+ /xd3/xde -+ /xd3/xdf -+ /xd3/xe0 -+ /xd3/xe1 -+ /xd3/xe2 -+ /xd3/xe3 -+ /xd3/xe4 -+ /xd3/xe5 -+ /xd3/xe6 -+ /xd3/xe7 -+ /xd3/xe8 -+ /xd3/xe9 -+ /xd3/xea -+ /xd3/xeb -+ /xd3/xec -+ /xd3/xed -+ /xd3/xee -+ /xd3/xef -+ /xd3/xf0 -+ /xd3/xf1 -+ /xd3/xf2 -+ /xd3/xf3 -+ /xd3/xf4 -+ /xd3/xf5 -+ /xd3/xf6 -+ /xd3/xf7 -+ /xd3/xf8 -+ /xd3/xf9 -+ /xd3/xfa -+ /xd3/xfb -+ /xd3/xfc -+ /xd3/xfd -+ /xd3/xfe -+ /xd4/xa1 -+ /xd4/xa2 -+ /xd4/xa3 -+ /xd4/xa4 -+ /xd4/xa5 -+ /xd4/xa6 -+ /xd4/xa7 -+ /xd4/xa8 -+ /xd4/xa9 -+ /xd4/xaa -+ /xd4/xab -+ /xd4/xac -+ /xd4/xad -+ /xd4/xae -+ /xd4/xaf -+ /xd4/xb0 -+ /xd4/xb1 -+ /xd4/xb2 -+ /xd4/xb3 -+ /xd4/xb4 -+ /xd4/xb5 -+ /xd4/xb6 -+ /xd4/xb7 -+ /xd4/xb8 -+ /xd4/xb9 -+ /xd4/xba -+ /xd4/xbb -+ /xd4/xbc -+ /xd4/xbd -+ /xd4/xbe -+ /xd4/xbf -+ /xd4/xc0 -+ /xd4/xc1 -+ /xd4/xc2 -+ /xd4/xc3 -+ /xd4/xc4 -+ /xd4/xc5 -+ /xd4/xc6 -+ /xd4/xc7 -+ /xd4/xc8 -+ /xd4/xc9 -+ /xd4/xca -+ /xd4/xcb -+ /xd4/xcc -+ /xd4/xcd -+ /xd4/xce -+ /xd4/xcf -+ /xd4/xd0 -+ /xd4/xd1 -+ /xd4/xd2 -+ /xd4/xd3 -+ /xd4/xd4 -+ /xd4/xd5 -+ /xd4/xd6 -+ /xd4/xd7 -+ /xd4/xd8 -+ /xd4/xd9 -+ /xd4/xda -+ /xd4/xdb -+ /xd4/xdc -+ /xd4/xdd -+ /xd4/xde -+ /xd4/xdf -+ /xd4/xe0 -+ /xd4/xe1 -+ /xd4/xe2 -+ /xd4/xe3 -+ /xd4/xe4 -+ /xd4/xe5 -+ /xd4/xe6 -+ /xd4/xe7 -+ /xd4/xe8 -+ /xd4/xe9 -+ /xd4/xea -+ /xd4/xeb -+ /xd4/xec -+ /xd4/xed -+ /xd4/xee -+ /xd4/xef -+ /xd4/xf0 -+ /xd4/xf1 -+ /xd4/xf2 -+ /xd4/xf3 -+ /xd4/xf4 -+ /xd4/xf5 -+ /xd4/xf6 -+ /xd4/xf7 -+ /xd4/xf8 -+ /xd4/xf9 -+ /xd4/xfa -+ /xd4/xfb -+ /xd4/xfc -+ /xd4/xfd -+ /xd4/xfe -+ /xd5/xa1 -+ /xd5/xa2 -+ /xd5/xa3 -+ /xd5/xa4 -+ /xd5/xa5 -+ /xd5/xa6 -+ /xd5/xa7 -+ /xd5/xa8 -+ /xd5/xa9 -+ /xd5/xaa -+ /xd5/xab -+ /xd5/xac -+ /xd5/xad -+ /xd5/xae -+ /xd5/xaf -+ /xd5/xb0 -+ /xd5/xb1 -+ /xd5/xb2 -+ /xd5/xb3 -+ /xd5/xb4 -+ /xd5/xb5 -+ /xd5/xb6 -+ /xd5/xb7 -+ /xd5/xb8 -+ /xd5/xb9 -+ /xd5/xba -+ /xd5/xbb -+ /xd5/xbc -+ /xd5/xbd -+ /xd5/xbe -+ /xd5/xbf -+ /xd5/xc0 -+ /xd5/xc1 -+ /xd5/xc2 -+ /xd5/xc3 -+ /xd5/xc4 -+ /xd5/xc5 -+ /xd5/xc6 -+ /xd5/xc7 -+ /xd5/xc8 -+ /xd5/xc9 -+ /xd5/xca -+ /xd5/xcb -+ /xd5/xcc -+ /xd5/xcd -+ /xd5/xce -+ /xd5/xcf -+ /xd5/xd0 -+ /xd5/xd1 -+ /xd5/xd2 -+ /xd5/xd3 -+ /xd5/xd4 -+ /xd5/xd5 -+ /xd5/xd6 -+ /xd5/xd7 -+ /xd5/xd8 -+ /xd5/xd9 -+ /xd5/xda -+ /xd5/xdb -+ /xd5/xdc -+ /xd5/xdd -+ /xd5/xde -+ /xd5/xdf -+ /xd5/xe0 -+ /xd5/xe1 -+ /xd5/xe2 -+ /xd5/xe3 -+ /xd5/xe4 -+ /xd5/xe5 -+ /xd5/xe6 -+ /xd5/xe7 -+ /xd5/xe8 -+ /xd5/xe9 -+ /xd5/xea -+ /xd5/xeb -+ /xd5/xec -+ /xd5/xed -+ /xd5/xee -+ /xd5/xef -+ /xd5/xf0 -+ /xd5/xf1 -+ /xd5/xf2 -+ /xd5/xf3 -+ /xd5/xf4 -+ /xd5/xf5 -+ /xd5/xf6 -+ /xd5/xf7 -+ /xd5/xf8 -+ /xd5/xf9 -+ /xd5/xfa -+ /xd5/xfb -+ /xd5/xfc -+ /xd5/xfd -+ /xd5/xfe -+ /xd6/xa1 -+ /xd6/xa2 -+ /xd6/xa3 -+ /xd6/xa4 -+ /xd6/xa5 -+ /xd6/xa6 -+ /xd6/xa7 -+ /xd6/xa8 -+ /xd6/xa9 -+ /xd6/xaa -+ /xd6/xab -+ /xd6/xac -+ /xd6/xad -+ /xd6/xae -+ /xd6/xaf -+ /xd6/xb0 -+ /xd6/xb1 -+ /xd6/xb2 -+ /xd6/xb3 -+ /xd6/xb4 -+ /xd6/xb5 -+ /xd6/xb6 -+ /xd6/xb7 -+ /xd6/xb8 -+ /xd6/xb9 -+ /xd6/xba -+ /xd6/xbb -+ /xd6/xbc -+ /xd6/xbd -+ /xd6/xbe -+ /xd6/xbf -+ /xd6/xc0 -+ /xd6/xc1 -+ /xd6/xc2 -+ /xd6/xc3 -+ /xd6/xc4 -+ /xd6/xc5 -+ /xd6/xc6 -+ /xd6/xc7 -+ /xd6/xc8 -+ /xd6/xc9 -+ /xd6/xca -+ /xd6/xcb -+ /xd6/xcc -+ /xd6/xcd -+ /xd6/xce -+ /xd6/xcf -+ /xd6/xd0 -+ /xd6/xd1 -+ /xd6/xd2 -+ /xd6/xd3 -+ /xd6/xd4 -+ /xd6/xd5 -+ /xd6/xd6 -+ /xd6/xd7 -+ /xd6/xd8 -+ /xd6/xd9 -+ /xd6/xda -+ /xd6/xdb -+ /xd6/xdc -+ /xd6/xdd -+ /xd6/xde -+ /xd6/xdf -+ /xd6/xe0 -+ /xd6/xe1 -+ /xd6/xe2 -+ /xd6/xe3 -+ /xd6/xe4 -+ /xd6/xe5 -+ /xd6/xe6 -+ /xd6/xe7 -+ /xd6/xe8 -+ /xd6/xe9 -+ /xd6/xea -+ /xd6/xeb -+ /xd6/xec -+ /xd6/xed -+ /xd6/xee -+ /xd6/xef -+ /xd6/xf0 -+ /xd6/xf1 -+ /xd6/xf2 -+ /xd6/xf3 -+ /xd6/xf4 -+ /xd6/xf5 -+ /xd6/xf6 -+ /xd6/xf7 -+ /xd6/xf8 -+ /xd6/xf9 -+ /xd6/xfa -+ /xd6/xfb -+ /xd6/xfc -+ /xd6/xfd -+ /xd6/xfe -+ /xd7/xa1 -+ /xd7/xa2 -+ /xd7/xa3 -+ /xd7/xa4 -+ /xd7/xa5 -+ /xd7/xa6 -+ /xd7/xa7 -+ /xd7/xa8 -+ /xd7/xa9 -+ /xd7/xaa -+ /xd7/xab -+ /xd7/xac -+ /xd7/xad -+ /xd7/xae -+ /xd7/xaf -+ /xd7/xb0 -+ /xd7/xb1 -+ /xd7/xb2 -+ /xd7/xb3 -+ /xd7/xb4 -+ /xd7/xb5 -+ /xd7/xb6 -+ /xd7/xb7 -+ /xd7/xb8 -+ /xd7/xb9 -+ /xd7/xba -+ /xd7/xbb -+ /xd7/xbc -+ /xd7/xbd -+ /xd7/xbe -+ /xd7/xbf -+ /xd7/xc0 -+ /xd7/xc1 -+ /xd7/xc2 -+ /xd7/xc3 -+ /xd7/xc4 -+ /xd7/xc5 -+ /xd7/xc6 -+ /xd7/xc7 -+ /xd7/xc8 -+ /xd7/xc9 -+ /xd7/xca -+ /xd7/xcb -+ /xd7/xcc -+ /xd7/xcd -+ /xd7/xce -+ /xd7/xcf -+ /xd7/xd0 -+ /xd7/xd1 -+ /xd7/xd2 -+ /xd7/xd3 -+ /xd7/xd4 -+ /xd7/xd5 -+ /xd7/xd6 -+ /xd7/xd7 -+ /xd7/xd8 -+ /xd7/xd9 -+ /xd7/xda -+ /xd7/xdb -+ /xd7/xdc -+ /xd7/xdd -+ /xd7/xde -+ /xd7/xdf -+ /xd7/xe0 -+ /xd7/xe1 -+ /xd7/xe2 -+ /xd7/xe3 -+ /xd7/xe4 -+ /xd7/xe5 -+ /xd7/xe6 -+ /xd7/xe7 -+ /xd7/xe8 -+ /xd7/xe9 -+ /xd7/xea -+ /xd7/xeb -+ /xd7/xec -+ /xd7/xed -+ /xd7/xee -+ /xd7/xef -+ /xd7/xf0 -+ /xd7/xf1 -+ /xd7/xf2 -+ /xd7/xf3 -+ /xd7/xf4 -+ /xd7/xf5 -+ /xd7/xf6 -+ /xd7/xf7 -+ /xd7/xf8 -+ /xd7/xf9 -+ /xd7/xfa -+ /xd7/xfb -+ /xd7/xfc -+ /xd7/xfd -+ /xd7/xfe -+ /xd8/xa1 -+ /xd8/xa2 -+ /xd8/xa3 -+ /xd8/xa4 -+ /xd8/xa5 -+ /xd8/xa6 -+ /xd8/xa7 -+ /xd8/xa8 -+ /xd8/xa9 -+ /xd8/xaa -+ /xd8/xab -+ /xd8/xac -+ /xd8/xad -+ /xd8/xae -+ /xd8/xaf -+ /xd8/xb0 -+ /xd8/xb1 -+ /xd8/xb2 -+ /xd8/xb3 -+ /xd8/xb4 -+ /xd8/xb5 -+ /xd8/xb6 -+ /xd8/xb7 -+ /xd8/xb8 -+ /xd8/xb9 -+ /xd8/xba -+ /xd8/xbb -+ /xd8/xbc -+ /xd8/xbd -+ /xd8/xbe -+ /xd8/xbf -+ /xd8/xc0 -+ /xd8/xc1 -+ /xd8/xc2 -+ /xd8/xc3 -+ /xd8/xc4 -+ /xd8/xc5 -+ /xd8/xc6 -+ /xd8/xc7 -+ /xd8/xc8 -+ /xd8/xc9 -+ /xd8/xca -+ /xd8/xcb -+ /xd8/xcc -+ /xd8/xcd -+ /xd8/xce -+ /xd8/xcf -+ /xd8/xd0 -+ /xd8/xd1 -+ /xd8/xd2 -+ /xd8/xd3 -+ /xd8/xd4 -+ /xd8/xd5 -+ /xd8/xd6 -+ /xd8/xd7 -+ /xd8/xd8 -+ /xd8/xd9 -+ /xd8/xda -+ /xd8/xdb -+ /xd8/xdc -+ /xd8/xdd -+ /xd8/xde -+ /xd8/xdf -+ /xd8/xe0 -+ /xd8/xe1 -+ /xd8/xe2 -+ /xd8/xe3 -+ /xd8/xe4 -+ /xd8/xe5 -+ /xd8/xe6 -+ /xd8/xe7 -+ /xd8/xe8 -+ /xd8/xe9 -+ /xd8/xea -+ /xd8/xeb -+ /xd8/xec -+ /xd8/xed -+ /xd8/xee -+ /xd8/xef -+ /xd8/xf0 -+ /xd8/xf1 -+ /xd8/xf2 -+ /xd8/xf3 -+ /xd8/xf4 -+ /xd8/xf5 -+ /xd8/xf6 -+ /xd8/xf7 -+ /xd8/xf8 -+ /xd8/xf9 -+ /xd8/xfa -+ /xd8/xfb -+ /xd8/xfc -+ /xd8/xfd -+ /xd8/xfe -+ /xd9/xa1 -+ /xd9/xa2 -+ /xd9/xa3 -+ /xd9/xa4 -+ /xd9/xa5 -+ /xd9/xa6 -+ /xd9/xa7 -+ /xd9/xa8 -+ /xd9/xa9 -+ /xd9/xaa -+ /xd9/xab -+ /xd9/xac -+ /xd9/xad -+ /xd9/xae -+ /xd9/xaf -+ /xd9/xb0 -+ /xd9/xb1 -+ /xd9/xb2 -+ /xd9/xb3 -+ /xd9/xb4 -+ /xd9/xb5 -+ /xd9/xb6 -+ /xd9/xb7 -+ /xd9/xb8 -+ /xd9/xb9 -+ /xd9/xba -+ /xd9/xbb -+ /xd9/xbc -+ /xd9/xbd -+ /xd9/xbe -+ /xd9/xbf -+ /xd9/xc0 -+ /xd9/xc1 -+ /xd9/xc2 -+ /xd9/xc3 -+ /xd9/xc4 -+ /xd9/xc5 -+ /xd9/xc6 -+ /xd9/xc7 -+ /xd9/xc8 -+ /xd9/xc9 -+ /xd9/xca -+ /xd9/xcb -+ /xd9/xcc -+ /xd9/xcd -+ /xd9/xce -+ /xd9/xcf -+ /xd9/xd0 -+ /xd9/xd1 -+ /xd9/xd2 -+ /xd9/xd3 -+ /xd9/xd4 -+ /xd9/xd5 -+ /xd9/xd6 -+ /xd9/xd7 -+ /xd9/xd8 -+ /xd9/xd9 -+ /xd9/xda -+ /xd9/xdb -+ /xd9/xdc -+ /xd9/xdd -+ /xd9/xde -+ /xd9/xdf -+ /xd9/xe0 -+ /xd9/xe1 -+ /xd9/xe2 -+ /xd9/xe3 -+ /xd9/xe4 -+ /xd9/xe5 -+ /xd9/xe6 -+ /xd9/xe7 -+ /xd9/xe8 -+ /xd9/xe9 -+ /xd9/xea -+ /xd9/xeb -+ /xd9/xec -+ /xd9/xed -+ /xd9/xee -+ /xd9/xef -+ /xd9/xf0 -+ /xd9/xf1 -+ /xd9/xf2 -+ /xd9/xf3 -+ /xd9/xf4 -+ /xd9/xf5 -+ /xd9/xf6 -+ /xd9/xf7 -+ /xd9/xf8 -+ /xd9/xf9 -+ /xd9/xfa -+ /xd9/xfb -+ /xd9/xfc -+ /xd9/xfd -+ /xd9/xfe -+ /xda/xa1 -+ /xda/xa2 -+ /xda/xa3 -+ /xda/xa4 -+ /xda/xa5 -+ /xda/xa6 -+ /xda/xa7 -+ /xda/xa8 -+ /xda/xa9 -+ /xda/xaa -+ /xda/xab -+ /xda/xac -+ /xda/xad -+ /xda/xae -+ /xda/xaf -+ /xda/xb0 -+ /xda/xb1 -+ /xda/xb2 -+ /xda/xb3 -+ /xda/xb4 -+ /xda/xb5 -+ /xda/xb6 -+ /xda/xb7 -+ /xda/xb8 -+ /xda/xb9 -+ /xda/xba -+ /xda/xbb -+ /xda/xbc -+ /xda/xbd -+ /xda/xbe -+ /xda/xbf -+ /xda/xc0 -+ /xda/xc1 -+ /xda/xc2 -+ /xda/xc3 -+ /xda/xc4 -+ /xda/xc5 -+ /xda/xc6 -+ /xda/xc7 -+ /xda/xc8 -+ /xda/xc9 -+ /xda/xca -+ /xda/xcb -+ /xda/xcc -+ /xda/xcd -+ /xda/xce -+ /xda/xcf -+ /xda/xd0 -+ /xda/xd1 -+ /xda/xd2 -+ /xda/xd3 -+ /xda/xd4 -+ /xda/xd5 -+ /xda/xd6 -+ /xda/xd7 -+ /xda/xd8 -+ /xda/xd9 -+ /xda/xda -+ /xda/xdb -+ /xda/xdc -+ /xda/xdd -+ /xda/xde -+ /xda/xdf -+ /xda/xe0 -+ /xda/xe1 -+ /xda/xe2 -+ /xda/xe3 -+ /xda/xe4 -+ /xda/xe5 -+ /xda/xe6 -+ /xda/xe7 -+ /xda/xe8 -+ /xda/xe9 -+ /xda/xea -+ /xda/xeb -+ /xda/xec -+ /xda/xed -+ /xda/xee -+ /xda/xef -+ /xda/xf0 -+ /xda/xf1 -+ /xda/xf2 -+ /xda/xf3 -+ /xda/xf4 -+ /xda/xf5 -+ /xda/xf6 -+ /xda/xf7 -+ /xda/xf8 -+ /xda/xf9 -+ /xda/xfa -+ /xda/xfb -+ /xda/xfc -+ /xda/xfd -+ /xda/xfe -+ /xdb/xa1 -+ /xdb/xa2 -+ /xdb/xa3 -+ /xdb/xa4 -+ /xdb/xa5 -+ /xdb/xa6 -+ /xdb/xa7 -+ /xdb/xa8 -+ /xdb/xa9 -+ /xdb/xaa -+ /xdb/xab -+ /xdb/xac -+ /xdb/xad -+ /xdb/xae -+ /xdb/xaf -+ /xdb/xb0 -+ /xdb/xb1 -+ /xdb/xb2 -+ /xdb/xb3 -+ /xdb/xb4 -+ /xdb/xb5 -+ /xdb/xb6 -+ /xdb/xb7 -+ /xdb/xb8 -+ /xdb/xb9 -+ /xdb/xba -+ /xdb/xbb -+ /xdb/xbc -+ /xdb/xbd -+ /xdb/xbe -+ /xdb/xbf -+ /xdb/xc0 -+ /xdb/xc1 -+ /xdb/xc2 -+ /xdb/xc3 -+ /xdb/xc4 -+ /xdb/xc5 -+ /xdb/xc6 -+ /xdb/xc7 -+ /xdb/xc8 -+ /xdb/xc9 -+ /xdb/xca -+ /xdb/xcb -+ /xdb/xcc -+ /xdb/xcd -+ /xdb/xce -+ /xdb/xcf -+ /xdb/xd0 -+ /xdb/xd1 -+ /xdb/xd2 -+ /xdb/xd3 -+ /xdb/xd4 -+ /xdb/xd5 -+ /xdb/xd6 -+ /xdb/xd7 -+ /xdb/xd8 -+ /xdb/xd9 -+ /xdb/xda -+ /xdb/xdb -+ /xdb/xdc -+ /xdb/xdd -+ /xdb/xde -+ /xdb/xdf -+ /xdb/xe0 -+ /xdb/xe1 -+ /xdb/xe2 -+ /xdb/xe3 -+ /xdb/xe4 -+ /xdb/xe5 -+ /xdb/xe6 -+ /xdb/xe7 -+ /xdb/xe8 -+ /xdb/xe9 -+ /xdb/xea -+ /xdb/xeb -+ /xdb/xec -+ /xdb/xed -+ /xdb/xee -+ /xdb/xef -+ /xdb/xf0 -+ /xdb/xf1 -+ /xdb/xf2 -+ /xdb/xf3 -+ /xdb/xf4 -+ /xdb/xf5 -+ /xdb/xf6 -+ /xdb/xf7 -+ /xdb/xf8 -+ /xdb/xf9 -+ /xdb/xfa -+ /xdb/xfb -+ /xdb/xfc -+ /xdb/xfd -+ /xdb/xfe -+ /xdc/xa1 -+ /xdc/xa2 -+ /xdc/xa3 -+ /xdc/xa4 -+ /xdc/xa5 -+ /xdc/xa6 -+ /xdc/xa7 -+ /xdc/xa8 -+ /xdc/xa9 -+ /xdc/xaa -+ /xdc/xab -+ /xdc/xac -+ /xdc/xad -+ /xdc/xae -+ /xdc/xaf -+ /xdc/xb0 -+ /xdc/xb1 -+ /xdc/xb2 -+ /xdc/xb3 -+ /xdc/xb4 -+ /xdc/xb5 -+ /xdc/xb6 -+ /xdc/xb7 -+ /xdc/xb8 -+ /xdc/xb9 -+ /xdc/xba -+ /xdc/xbb -+ /xdc/xbc -+ /xdc/xbd -+ /xdc/xbe -+ /xdc/xbf -+ /xdc/xc0 -+ /xdc/xc1 -+ /xdc/xc2 -+ /xdc/xc3 -+ /xdc/xc4 -+ /xdc/xc5 -+ /xdc/xc6 -+ /xdc/xc7 -+ /xdc/xc8 -+ /xdc/xc9 -+ /xdc/xca -+ /xdc/xcb -+ /xdc/xcc -+ /xdc/xcd -+ /xdc/xce -+ /xdc/xcf -+ /xdc/xd0 -+ /xdc/xd1 -+ /xdc/xd2 -+ /xdc/xd3 -+ /xdc/xd4 -+ /xdc/xd5 -+ /xdc/xd6 -+ /xdc/xd7 -+ /xdc/xd8 -+ /xdc/xd9 -+ /xdc/xda -+ /xdc/xdb -+ /xdc/xdc -+ /xdc/xdd -+ /xdc/xde -+ /xdc/xdf -+ /xdc/xe0 -+ /xdc/xe1 -+ /xdc/xe2 -+ /xdc/xe3 -+ /xdc/xe4 -+ /xdc/xe5 -+ /xdc/xe6 -+ /xdc/xe7 -+ /xdc/xe8 -+ /xdc/xe9 -+ /xdc/xea -+ /xdc/xeb -+ /xdc/xec -+ /xdc/xed -+ /xdc/xee -+ /xdc/xef -+ /xdc/xf0 -+ /xdc/xf1 -+ /xdc/xf2 -+ /xdc/xf3 -+ /xdc/xf4 -+ /xdc/xf5 -+ /xdc/xf6 -+ /xdc/xf7 -+ /xdc/xf8 -+ /xdc/xf9 -+ /xdc/xfa -+ /xdc/xfb -+ /xdc/xfc -+ /xdc/xfd -+ /xdc/xfe -+ /xdd/xa1 -+ /xdd/xa2 -+ /xdd/xa3 -+ /xdd/xa4 -+ /xdd/xa5 -+ /xdd/xa6 -+ /xdd/xa7 -+ /xdd/xa8 -+ /xdd/xa9 -+ /xdd/xaa -+ /xdd/xab -+ /xdd/xac -+ /xdd/xad -+ /xdd/xae -+ /xdd/xaf -+ /xdd/xb0 -+ /xdd/xb1 -+ /xdd/xb2 -+ /xdd/xb3 -+ /xdd/xb4 -+ /xdd/xb5 -+ /xdd/xb6 -+ /xdd/xb7 -+ /xdd/xb8 -+ /xdd/xb9 -+ /xdd/xba -+ /xdd/xbb -+ /xdd/xbc -+ /xdd/xbd -+ /xdd/xbe -+ /xdd/xbf -+ /xdd/xc0 -+ /xdd/xc1 -+ /xdd/xc2 -+ /xdd/xc3 -+ /xdd/xc4 -+ /xdd/xc5 -+ /xdd/xc6 -+ /xdd/xc7 -+ /xdd/xc8 -+ /xdd/xc9 -+ /xdd/xca -+ /xdd/xcb -+ /xdd/xcc -+ /xdd/xcd -+ /xdd/xce -+ /xdd/xcf -+ /xdd/xd0 -+ /xdd/xd1 -+ /xdd/xd2 -+ /xdd/xd3 -+ /xdd/xd4 -+ /xdd/xd5 -+ /xdd/xd6 -+ /xdd/xd7 -+ /xdd/xd8 -+ /xdd/xd9 -+ /xdd/xda -+ /xdd/xdb -+ /xdd/xdc -+ /xdd/xdd -+ /xdd/xde -+ /xdd/xdf -+ /xdd/xe0 -+ /xdd/xe1 -+ /xdd/xe2 -+ /xdd/xe3 -+ /xdd/xe4 -+ /xdd/xe5 -+ /xdd/xe6 -+ /xdd/xe7 -+ /xdd/xe8 -+ /xdd/xe9 -+ /xdd/xea -+ /xdd/xeb -+ /xdd/xec -+ /xdd/xed -+ /xdd/xee -+ /xdd/xef -+ /xdd/xf0 -+ /xdd/xf1 -+ /xdd/xf2 -+ /xdd/xf3 -+ /xdd/xf4 -+ /xdd/xf5 -+ /xdd/xf6 -+ /xdd/xf7 -+ /xdd/xf8 -+ /xdd/xf9 -+ /xdd/xfa -+ /xdd/xfb -+ /xdd/xfc -+ /xdd/xfd -+ /xdd/xfe -+ /xde/xa1 -+ /xde/xa2 -+ /xde/xa3 -+ /xde/xa4 -+ /xde/xa5 -+ /xde/xa6 -+ /xde/xa7 -+ /xde/xa8 -+ /xde/xa9 -+ /xde/xaa -+ /xde/xab -+ /xde/xac -+ /xde/xad -+ /xde/xae -+ /xde/xaf -+ /xde/xb0 -+ /xde/xb1 -+ /xde/xb2 -+ /xde/xb3 -+ /xde/xb4 -+ /xde/xb5 -+ /xde/xb6 -+ /xde/xb7 -+ /xde/xb8 -+ /xde/xb9 -+ /xde/xba -+ /xde/xbb -+ /xde/xbc -+ /xde/xbd -+ /xde/xbe -+ /xde/xbf -+ /xde/xc0 -+ /xde/xc1 -+ /xde/xc2 -+ /xde/xc3 -+ /xde/xc4 -+ /xde/xc5 -+ /xde/xc6 -+ /xde/xc7 -+ /xde/xc8 -+ /xde/xc9 -+ /xde/xca -+ /xde/xcb -+ /xde/xcc -+ /xde/xcd -+ /xde/xce -+ /xde/xcf -+ /xde/xd0 -+ /xde/xd1 -+ /xde/xd2 -+ /xde/xd3 -+ /xde/xd4 -+ /xde/xd5 -+ /xde/xd6 -+ /xde/xd7 -+ /xde/xd8 -+ /xde/xd9 -+ /xde/xda -+ /xde/xdb -+ /xde/xdc -+ /xde/xdd -+ /xde/xde -+ /xde/xdf -+ /xde/xe0 -+ /xde/xe1 -+ /xde/xe2 -+ /xde/xe3 -+ /xde/xe4 -+ /xde/xe5 -+ /xde/xe6 -+ /xde/xe7 -+ /xde/xe8 -+ /xde/xe9 -+ /xde/xea -+ /xde/xeb -+ /xde/xec -+ /xde/xed -+ /xde/xee -+ /xde/xef -+ /xde/xf0 -+ /xde/xf1 -+ /xde/xf2 -+ /xde/xf3 -+ /xde/xf4 -+ /xde/xf5 -+ /xde/xf6 -+ /xde/xf7 -+ /xde/xf8 -+ /xde/xf9 -+ /xde/xfa -+ /xde/xfb -+ /xde/xfc -+ /xde/xfd -+ /xde/xfe -+ /xdf/xa1 -+ /xdf/xa2 -+ /xdf/xa3 -+ /xdf/xa4 -+ /xdf/xa5 -+ /xdf/xa6 -+ /xdf/xa7 -+ /xdf/xa8 -+ /xdf/xa9 -+ /xdf/xaa -+ /xdf/xab -+ /xdf/xac -+ /xdf/xad -+ /xdf/xae -+ /xdf/xaf -+ /xdf/xb0 -+ /xdf/xb1 -+ /xdf/xb2 -+ /xdf/xb3 -+ /xdf/xb4 -+ /xdf/xb5 -+ /xdf/xb6 -+ /xdf/xb7 -+ /xdf/xb8 -+ /xdf/xb9 -+ /xdf/xba -+ /xdf/xbb -+ /xdf/xbc -+ /xdf/xbd -+ /xdf/xbe -+ /xdf/xbf -+ /xdf/xc0 -+ /xdf/xc1 -+ /xdf/xc2 -+ /xdf/xc3 -+ /xdf/xc4 -+ /xdf/xc5 -+ /xdf/xc6 -+ /xdf/xc7 -+ /xdf/xc8 -+ /xdf/xc9 -+ /xdf/xca -+ /xdf/xcb -+ /xdf/xcc -+ /xdf/xcd -+ /xdf/xce -+ /xdf/xcf -+ /xdf/xd0 -+ /xdf/xd1 -+ /xdf/xd2 -+ /xdf/xd3 -+ /xdf/xd4 -+ /xdf/xd5 -+ /xdf/xd6 -+ /xdf/xd7 -+ /xdf/xd8 -+ /xdf/xd9 -+ /xdf/xda -+ /xdf/xdb -+ /xdf/xdc -+ /xdf/xdd -+ /xdf/xde -+ /xdf/xdf -+ /xdf/xe0 -+ /xdf/xe1 -+ /xdf/xe2 -+ /xdf/xe3 -+ /xdf/xe4 -+ /xdf/xe5 -+ /xdf/xe6 -+ /xdf/xe7 -+ /xdf/xe8 -+ /xdf/xe9 -+ /xdf/xea -+ /xdf/xeb -+ /xdf/xec -+ /xdf/xed -+ /xdf/xee -+ /xdf/xef -+ /xdf/xf0 -+ /xdf/xf1 -+ /xdf/xf2 -+ /xdf/xf3 -+ /xdf/xf4 -+ /xdf/xf5 -+ /xdf/xf6 -+ /xdf/xf7 -+ /xdf/xf8 -+ /xdf/xf9 -+ /xdf/xfa -+ /xdf/xfb -+ /xdf/xfc -+ /xdf/xfd -+ /xdf/xfe -+ /xe0/xa1 -+ /xe0/xa2 -+ /xe0/xa3 -+ /xe0/xa4 -+ /xe0/xa5 -+ /xe0/xa6 -+ /xe0/xa7 -+ /xe0/xa8 -+ /xe0/xa9 -+ /xe0/xaa -+ /xe0/xab -+ /xe0/xac -+ /xe0/xad -+ /xe0/xae -+ /xe0/xaf -+ /xe0/xb0 -+ /xe0/xb1 -+ /xe0/xb2 -+ /xe0/xb3 -+ /xe0/xb4 -+ /xe0/xb5 -+ /xe0/xb6 -+ /xe0/xb7 -+ /xe0/xb8 -+ /xe0/xb9 -+ /xe0/xba -+ /xe0/xbb -+ /xe0/xbc -+ /xe0/xbd -+ /xe0/xbe -+ /xe0/xbf -+ /xe0/xc0 -+ /xe0/xc1 -+ /xe0/xc2 -+ /xe0/xc3 -+ /xe0/xc4 -+ /xe0/xc5 -+ /xe0/xc6 -+ /xe0/xc7 -+ /xe0/xc8 -+ /xe0/xc9 -+ /xe0/xca -+ /xe0/xcb -+ /xe0/xcc -+ /xe0/xcd -+ /xe0/xce -+ /xe0/xcf -+ /xe0/xd0 -+ /xe0/xd1 -+ /xe0/xd2 -+ /xe0/xd3 -+ /xe0/xd4 -+ /xe0/xd5 -+ /xe0/xd6 -+ /xe0/xd7 -+ /xe0/xd8 -+ /xe0/xd9 -+ /xe0/xda -+ /xe0/xdb -+ /xe0/xdc -+ /xe0/xdd -+ /xe0/xde -+ /xe0/xdf -+ /xe0/xe0 -+ /xe0/xe1 -+ /xe0/xe2 -+ /xe0/xe3 -+ /xe0/xe4 -+ /xe0/xe5 -+ /xe0/xe6 -+ /xe0/xe7 -+ /xe0/xe8 -+ /xe0/xe9 -+ /xe0/xea -+ /xe0/xeb -+ /xe0/xec -+ /xe0/xed -+ /xe0/xee -+ /xe0/xef -+ /xe0/xf0 -+ /xe0/xf1 -+ /xe0/xf2 -+ /xe0/xf3 -+ /xe0/xf4 -+ /xe0/xf5 -+ /xe0/xf6 -+ /xe0/xf7 -+ /xe0/xf8 -+ /xe0/xf9 -+ /xe0/xfa -+ /xe0/xfb -+ /xe0/xfc -+ /xe0/xfd -+ /xe0/xfe -+ /xe1/xa1 -+ /xe1/xa2 -+ /xe1/xa3 -+ /xe1/xa4 -+ /xe1/xa5 -+ /xe1/xa6 -+ /xe1/xa7 -+ /xe1/xa8 -+ /xe1/xa9 -+ /xe1/xaa -+ /xe1/xab -+ /xe1/xac -+ /xe1/xad -+ /xe1/xae -+ /xe1/xaf -+ /xe1/xb0 -+ /xe1/xb1 -+ /xe1/xb2 -+ /xe1/xb3 -+ /xe1/xb4 -+ /xe1/xb5 -+ /xe1/xb6 -+ /xe1/xb7 -+ /xe1/xb8 -+ /xe1/xb9 -+ /xe1/xba -+ /xe1/xbb -+ /xe1/xbc -+ /xe1/xbd -+ /xe1/xbe -+ /xe1/xbf -+ /xe1/xc0 -+ /xe1/xc1 -+ /xe1/xc2 -+ /xe1/xc3 -+ /xe1/xc4 -+ /xe1/xc5 -+ /xe1/xc6 -+ /xe1/xc7 -+ /xe1/xc8 -+ /xe1/xc9 -+ /xe1/xca -+ /xe1/xcb -+ /xe1/xcc -+ /xe1/xcd -+ /xe1/xce -+ /xe1/xcf -+ /xe1/xd0 -+ /xe1/xd1 -+ /xe1/xd2 -+ /xe1/xd3 -+ /xe1/xd4 -+ /xe1/xd5 -+ /xe1/xd6 -+ /xe1/xd7 -+ /xe1/xd8 -+ /xe1/xd9 -+ /xe1/xda -+ /xe1/xdb -+ /xe1/xdc -+ /xe1/xdd -+ /xe1/xde -+ /xe1/xdf -+ /xe1/xe0 -+ /xe1/xe1 -+ /xe1/xe2 -+ /xe1/xe3 -+ /xe1/xe4 -+ /xe1/xe5 -+ /xe1/xe6 -+ /xe1/xe7 -+ /xe1/xe8 -+ /xe1/xe9 -+ /xe1/xea -+ /xe1/xeb -+ /xe1/xec -+ /xe1/xed -+ /xe1/xee -+ /xe1/xef -+ /xe1/xf0 -+ /xe1/xf1 -+ /xe1/xf2 -+ /xe1/xf3 -+ /xe1/xf4 -+ /xe1/xf5 -+ /xe1/xf6 -+ /xe1/xf7 -+ /xe1/xf8 -+ /xe1/xf9 -+ /xe1/xfa -+ /xe1/xfb -+ /xe1/xfc -+ /xe1/xfd -+ /xe1/xfe -+ /xe2/xa1 -+ /xe2/xa2 -+ /xe2/xa3 -+ /xe2/xa4 -+ /xe2/xa5 -+ /xe2/xa6 -+ /xe2/xa7 -+ /xe2/xa8 -+ /xe2/xa9 -+ /xe2/xaa -+ /xe2/xab -+ /xe2/xac -+ /xe2/xad -+ /xe2/xae -+ /xe2/xaf -+ /xe2/xb0 -+ /xe2/xb1 -+ /xe2/xb2 -+ /xe2/xb3 -+ /xe2/xb4 -+ /xe2/xb5 -+ /xe2/xb6 -+ /xe2/xb7 -+ /xe2/xb8 -+ /xe2/xb9 -+ /xe2/xba -+ /xe2/xbb -+ /xe2/xbc -+ /xe2/xbd -+ /xe2/xbe -+ /xe2/xbf -+ /xe2/xc0 -+ /xe2/xc1 -+ /xe2/xc2 -+ /xe2/xc3 -+ /xe2/xc4 -+ /xe2/xc5 -+ /xe2/xc6 -+ /xe2/xc7 -+ /xe2/xc8 -+ /xe2/xc9 -+ /xe2/xca -+ /xe2/xcb -+ /xe2/xcc -+ /xe2/xcd -+ /xe2/xce -+ /xe2/xcf -+ /xe2/xd0 -+ /xe2/xd1 -+ /xe2/xd2 -+ /xe2/xd3 -+ /xe2/xd4 -+ /xe2/xd5 -+ /xe2/xd6 -+ /xe2/xd7 -+ /xe2/xd8 -+ /xe2/xd9 -+ /xe2/xda -+ /xe2/xdb -+ /xe2/xdc -+ /xe2/xdd -+ /xe2/xde -+ /xe2/xdf -+ /xe2/xe0 -+ /xe2/xe1 -+ /xe2/xe2 -+ /xe2/xe3 -+ /xe2/xe4 -+ /xe2/xe5 -+ /xe2/xe6 -+ /xe2/xe7 -+ /xe2/xe8 -+ /xe2/xe9 -+ /xe2/xea -+ /xe2/xeb -+ /xe2/xec -+ /xe2/xed -+ /xe2/xee -+ /xe2/xef -+ /xe2/xf0 -+ /xe2/xf1 -+ /xe2/xf2 -+ /xe2/xf3 -+ /xe2/xf4 -+ /xe2/xf5 -+ /xe2/xf6 -+ /xe2/xf7 -+ /xe2/xf8 -+ /xe2/xf9 -+ /xe2/xfa -+ /xe2/xfb -+ /xe2/xfc -+ /xe2/xfd -+ /xe2/xfe -+ /xe3/xa1 -+ /xe3/xa2 -+ /xe3/xa3 -+ /xe3/xa4 -+ /xe3/xa5 -+ /xe3/xa6 -+ /xe3/xa7 -+ /xe3/xa8 -+ /xe3/xa9 -+ /xe3/xaa -+ /xe3/xab -+ /xe3/xac -+ /xe3/xad -+ /xe3/xae -+ /xe3/xaf -+ /xe3/xb0 -+ /xe3/xb1 -+ /xe3/xb2 -+ /xe3/xb3 -+ /xe3/xb4 -+ /xe3/xb5 -+ /xe3/xb6 -+ /xe3/xb7 -+ /xe3/xb8 -+ /xe3/xb9 -+ /xe3/xba -+ /xe3/xbb -+ /xe3/xbc -+ /xe3/xbd -+ /xe3/xbe -+ /xe3/xbf -+ /xe3/xc0 -+ /xe3/xc1 -+ /xe3/xc2 -+ /xe3/xc3 -+ /xe3/xc4 -+ /xe3/xc5 -+ /xe3/xc6 -+ /xe3/xc7 -+ /xe3/xc8 -+ /xe3/xc9 -+ /xe3/xca -+ /xe3/xcb -+ /xe3/xcc -+ /xe3/xcd -+ /xe3/xce -+ /xe3/xcf -+ /xe3/xd0 -+ /xe3/xd1 -+ /xe3/xd2 -+ /xe3/xd3 -+ /xe3/xd4 -+ /xe3/xd5 -+ /xe3/xd6 -+ /xe3/xd7 -+ /xe3/xd8 -+ /xe3/xd9 -+ /xe3/xda -+ /xe3/xdb -+ /xe3/xdc -+ /xe3/xdd -+ /xe3/xde -+ /xe3/xdf -+ /xe3/xe0 -+ /xe3/xe1 -+ /xe3/xe2 -+ /xe3/xe3 -+ /xe3/xe4 -+ /xe3/xe5 -+ /xe3/xe6 -+ /xe3/xe7 -+ /xe3/xe8 -+ /xe3/xe9 -+ /xe3/xea -+ /xe3/xeb -+ /xe3/xec -+ /xe3/xed -+ /xe3/xee -+ /xe3/xef -+ /xe3/xf0 -+ /xe3/xf1 -+ /xe3/xf2 -+ /xe3/xf3 -+ /xe3/xf4 -+ /xe3/xf5 -+ /xe3/xf6 -+ /xe3/xf7 -+ /xe3/xf8 -+ /xe3/xf9 -+ /xe3/xfa -+ /xe3/xfb -+ /xe3/xfc -+ /xe3/xfd -+ /xe3/xfe -+ /xe4/xa1 -+ /xe4/xa2 -+ /xe4/xa3 -+ /xe4/xa4 -+ /xe4/xa5 -+ /xe4/xa6 -+ /xe4/xa7 -+ /xe4/xa8 -+ /xe4/xa9 -+ /xe4/xaa -+ /xe4/xab -+ /xe4/xac -+ /xe4/xad -+ /xe4/xae -+ /xe4/xaf -+ /xe4/xb0 -+ /xe4/xb1 -+ /xe4/xb2 -+ /xe4/xb3 -+ /xe4/xb4 -+ /xe4/xb5 -+ /xe4/xb6 -+ /xe4/xb7 -+ /xe4/xb8 -+ /xe4/xb9 -+ /xe4/xba -+ /xe4/xbb -+ /xe4/xbc -+ /xe4/xbd -+ /xe4/xbe -+ /xe4/xbf -+ /xe4/xc0 -+ /xe4/xc1 -+ /xe4/xc2 -+ /xe4/xc3 -+ /xe4/xc4 -+ /xe4/xc5 -+ /xe4/xc6 -+ /xe4/xc7 -+ /xe4/xc8 -+ /xe4/xc9 -+ /xe4/xca -+ /xe4/xcb -+ /xe4/xcc -+ /xe4/xcd -+ /xe4/xce -+ /xe4/xcf -+ /xe4/xd0 -+ /xe4/xd1 -+ /xe4/xd2 -+ /xe4/xd3 -+ /xe4/xd4 -+ /xe4/xd5 -+ /xe4/xd6 -+ /xe4/xd7 -+ /xe4/xd8 -+ /xe4/xd9 -+ /xe4/xda -+ /xe4/xdb -+ /xe4/xdc -+ /xe4/xdd -+ /xe4/xde -+ /xe4/xdf -+ /xe4/xe0 -+ /xe4/xe1 -+ /xe4/xe2 -+ /xe4/xe3 -+ /xe4/xe4 -+ /xe4/xe5 -+ /xe4/xe6 -+ /xe4/xe7 -+ /xe4/xe8 -+ /xe4/xe9 -+ /xe4/xea -+ /xe4/xeb -+ /xe4/xec -+ /xe4/xed -+ /xe4/xee -+ /xe4/xef -+ /xe4/xf0 -+ /xe4/xf1 -+ /xe4/xf2 -+ /xe4/xf3 -+ /xe4/xf4 -+ /xe4/xf5 -+ /xe4/xf6 -+ /xe4/xf7 -+ /xe4/xf8 -+ /xe4/xf9 -+ /xe4/xfa -+ /xe4/xfb -+ /xe4/xfc -+ /xe4/xfd -+ /xe4/xfe -+ /xe5/xa1 -+ /xe5/xa2 -+ /xe5/xa3 -+ /xe5/xa4 -+ /xe5/xa5 -+ /xe5/xa6 -+ /xe5/xa7 -+ /xe5/xa8 -+ /xe5/xa9 -+ /xe5/xaa -+ /xe5/xab -+ /xe5/xac -+ /xe5/xad -+ /xe5/xae -+ /xe5/xaf -+ /xe5/xb0 -+ /xe5/xb1 -+ /xe5/xb2 -+ /xe5/xb3 -+ /xe5/xb4 -+ /xe5/xb5 -+ /xe5/xb6 -+ /xe5/xb7 -+ /xe5/xb8 -+ /xe5/xb9 -+ /xe5/xba -+ /xe5/xbb -+ /xe5/xbc -+ /xe5/xbd -+ /xe5/xbe -+ /xe5/xbf -+ /xe5/xc0 -+ /xe5/xc1 -+ /xe5/xc2 -+ /xe5/xc3 -+ /xe5/xc4 -+ /xe5/xc5 -+ /xe5/xc6 -+ /xe5/xc7 -+ /xe5/xc8 -+ /xe5/xc9 -+ /xe5/xca -+ /xe5/xcb -+ /xe5/xcc -+ /xe5/xcd -+ /xe5/xce -+ /xe5/xcf -+ /xe5/xd0 -+ /xe5/xd1 -+ /xe5/xd2 -+ /xe5/xd3 -+ /xe5/xd4 -+ /xe5/xd5 -+ /xe5/xd6 -+ /xe5/xd7 -+ /xe5/xd8 -+ /xe5/xd9 -+ /xe5/xda -+ /xe5/xdb -+ /xe5/xdc -+ /xe5/xdd -+ /xe5/xde -+ /xe5/xdf -+ /xe5/xe0 -+ /xe5/xe1 -+ /xe5/xe2 -+ /xe5/xe3 -+ /xe5/xe4 -+ /xe5/xe5 -+ /xe5/xe6 -+ /xe5/xe7 -+ /xe5/xe8 -+ /xe5/xe9 -+ /xe5/xea -+ /xe5/xeb -+ /xe5/xec -+ /xe5/xed -+ /xe5/xee -+ /xe5/xef -+ /xe5/xf0 -+ /xe5/xf1 -+ /xe5/xf2 -+ /xe5/xf3 -+ /xe5/xf4 -+ /xe5/xf5 -+ /xe5/xf6 -+ /xe5/xf7 -+ /xe5/xf8 -+ /xe5/xf9 -+ /xe5/xfa -+ /xe5/xfb -+ /xe5/xfc -+ /xe5/xfd -+ /xe5/xfe -+ /xe6/xa1 -+ /xe6/xa2 -+ /xe6/xa3 -+ /xe6/xa4 -+ /xe6/xa5 -+ /xe6/xa6 -+ /xe6/xa7 -+ /xe6/xa8 -+ /xe6/xa9 -+ /xe6/xaa -+ /xe6/xab -+ /xe6/xac -+ /xe6/xad -+ /xe6/xae -+ /xe6/xaf -+ /xe6/xb0 -+ /xe6/xb1 -+ /xe6/xb2 -+ /xe6/xb3 -+ /xe6/xb4 -+ /xe6/xb5 -+ /xe6/xb6 -+ /xe6/xb7 -+ /xe6/xb8 -+ /xe6/xb9 -+ /xe6/xba -+ /xe6/xbb -+ /xe6/xbc -+ /xe6/xbd -+ /xe6/xbe -+ /xe6/xbf -+ /xe6/xc0 -+ /xe6/xc1 -+ /xe6/xc2 -+ /xe6/xc3 -+ /xe6/xc4 -+ /xe6/xc5 -+ /xe6/xc6 -+ /xe6/xc7 -+ /xe6/xc8 -+ /xe6/xc9 -+ /xe6/xca -+ /xe6/xcb -+ /xe6/xcc -+ /xe6/xcd -+ /xe6/xce -+ /xe6/xcf -+ /xe6/xd0 -+ /xe6/xd1 -+ /xe6/xd2 -+ /xe6/xd3 -+ /xe6/xd4 -+ /xe6/xd5 -+ /xe6/xd6 -+ /xe6/xd7 -+ /xe6/xd8 -+ /xe6/xd9 -+ /xe6/xda -+ /xe6/xdb -+ /xe6/xdc -+ /xe6/xdd -+ /xe6/xde -+ /xe6/xdf -+ /xe6/xe0 -+ /xe6/xe1 -+ /xe6/xe2 -+ /xe6/xe3 -+ /xe6/xe4 -+ /xe6/xe5 -+ /xe6/xe6 -+ /xe6/xe7 -+ /xe6/xe8 -+ /xe6/xe9 -+ /xe6/xea -+ /xe6/xeb -+ /xe6/xec -+ /xe6/xed -+ /xe6/xee -+ /xe6/xef -+ /xe6/xf0 -+ /xe6/xf1 -+ /xe6/xf2 -+ /xe6/xf3 -+ /xe6/xf4 -+ /xe6/xf5 -+ /xe6/xf6 -+ /xe6/xf7 -+ /xe6/xf8 -+ /xe6/xf9 -+ /xe6/xfa -+ /xe6/xfb -+ /xe6/xfc -+ /xe6/xfd -+ /xe6/xfe -+ /xe7/xa1 -+ /xe7/xa2 -+ /xe7/xa3 -+ /xe7/xa4 -+ /xe7/xa5 -+ /xe7/xa6 -+ /xe7/xa7 -+ /xe7/xa8 -+ /xe7/xa9 -+ /xe7/xaa -+ /xe7/xab -+ /xe7/xac -+ /xe7/xad -+ /xe7/xae -+ /xe7/xaf -+ /xe7/xb0 -+ /xe7/xb1 -+ /xe7/xb2 -+ /xe7/xb3 -+ /xe7/xb4 -+ /xe7/xb5 -+ /xe7/xb6 -+ /xe7/xb7 -+ /xe7/xb8 -+ /xe7/xb9 -+ /xe7/xba -+ /xe7/xbb -+ /xe7/xbc -+ /xe7/xbd -+ /xe7/xbe -+ /xe7/xbf -+ /xe7/xc0 -+ /xe7/xc1 -+ /xe7/xc2 -+ /xe7/xc3 -+ /xe7/xc4 -+ /xe7/xc5 -+ /xe7/xc6 -+ /xe7/xc7 -+ /xe7/xc8 -+ /xe7/xc9 -+ /xe7/xca -+ /xe7/xcb -+ /xe7/xcc -+ /xe7/xcd -+ /xe7/xce -+ /xe7/xcf -+ /xe7/xd0 -+ /xe7/xd1 -+ /xe7/xd2 -+ /xe7/xd3 -+ /xe7/xd4 -+ /xe7/xd5 -+ /xe7/xd6 -+ /xe7/xd7 -+ /xe7/xd8 -+ /xe7/xd9 -+ /xe7/xda -+ /xe7/xdb -+ /xe7/xdc -+ /xe7/xdd -+ /xe7/xde -+ /xe7/xdf -+ /xe7/xe0 -+ /xe7/xe1 -+ /xe7/xe2 -+ /xe7/xe3 -+ /xe7/xe4 -+ /xe7/xe5 -+ /xe7/xe6 -+ /xe7/xe7 -+ /xe7/xe8 -+ /xe7/xe9 -+ /xe7/xea -+ /xe7/xeb -+ /xe7/xec -+ /xe7/xed -+ /xe7/xee -+ /xe7/xef -+ /xe7/xf0 -+ /xe7/xf1 -+ /xe7/xf2 -+ /xe7/xf3 -+ /xe7/xf4 -+ /xe7/xf5 -+ /xe7/xf6 -+ /xe7/xf7 -+ /xe7/xf8 -+ /xe7/xf9 -+ /xe7/xfa -+ /xe7/xfb -+ /xe7/xfc -+ /xe7/xfd -+ /xe7/xfe -+ /xe8/xa1 -+ /xe8/xa2 -+ /xe8/xa3 -+ /xe8/xa4 -+ /xe8/xa5 -+ /xe8/xa6 -+ /xe8/xa7 -+ /xe8/xa8 -+ /xe8/xa9 -+ /xe8/xaa -+ /xe8/xab -+ /xe8/xac -+ /xe8/xad -+ /xe8/xae -+ /xe8/xaf -+ /xe8/xb0 -+ /xe8/xb1 -+ /xe8/xb2 -+ /xe8/xb3 -+ /xe8/xb4 -+ /xe8/xb5 -+ /xe8/xb6 -+ /xe8/xb7 -+ /xe8/xb8 -+ /xe8/xb9 -+ /xe8/xba -+ /xe8/xbb -+ /xe8/xbc -+ /xe8/xbd -+ /xe8/xbe -+ /xe8/xbf -+ /xe8/xc0 -+ /xe8/xc1 -+ /xe8/xc2 -+ /xe8/xc3 -+ /xe8/xc4 -+ /xe8/xc5 -+ /xe8/xc6 -+ /xe8/xc7 -+ /xe8/xc8 -+ /xe8/xc9 -+ /xe8/xca -+ /xe8/xcb -+ /xe8/xcc -+ /xe8/xcd -+ /xe8/xce -+ /xe8/xcf -+ /xe8/xd0 -+ /xe8/xd1 -+ /xe8/xd2 -+ /xe8/xd3 -+ /xe8/xd4 -+ /xe8/xd5 -+ /xe8/xd6 -+ /xe8/xd7 -+ /xe8/xd8 -+ /xe8/xd9 -+ /xe8/xda -+ /xe8/xdb -+ /xe8/xdc -+ /xe8/xdd -+ /xe8/xde -+ /xe8/xdf -+ /xe8/xe0 -+ /xe8/xe1 -+ /xe8/xe2 -+ /xe8/xe3 -+ /xe8/xe4 -+ /xe8/xe5 -+ /xe8/xe6 -+ /xe8/xe7 -+ /xe8/xe8 -+ /xe8/xe9 -+ /xe8/xea -+ /xe8/xeb -+ /xe8/xec -+ /xe8/xed -+ /xe8/xee -+ /xe8/xef -+ /xe8/xf0 -+ /xe8/xf1 -+ /xe8/xf2 -+ /xe8/xf3 -+ /xe8/xf4 -+ /xe8/xf5 -+ /xe8/xf6 -+ /xe8/xf7 -+ /xe8/xf8 -+ /xe8/xf9 -+ /xe8/xfa -+ /xe8/xfb -+ /xe8/xfc -+ /xe8/xfd -+ /xe8/xfe -+ /xe9/xa1 -+ /xe9/xa2 -+ /xe9/xa3 -+ /xe9/xa4 -+ /xe9/xa5 -+ /xe9/xa6 -+ /xe9/xa7 -+ /xe9/xa8 -+ /xe9/xa9 -+ /xe9/xaa -+ /xe9/xab -+ /xe9/xac -+ /xe9/xad -+ /xe9/xae -+ /xe9/xaf -+ /xe9/xb0 -+ /xe9/xb1 -+ /xe9/xb2 -+ /xe9/xb3 -+ /xe9/xb4 -+ /xe9/xb5 -+ /xe9/xb6 -+ /xe9/xb7 -+ /xe9/xb8 -+ /xe9/xb9 -+ /xe9/xba -+ /xe9/xbb -+ /xe9/xbc -+ /xe9/xbd -+ /xe9/xbe -+ /xe9/xbf -+ /xe9/xc0 -+ /xe9/xc1 -+ /xe9/xc2 -+ /xe9/xc3 -+ /xe9/xc4 -+ /xe9/xc5 -+ /xe9/xc6 -+ /xe9/xc7 -+ /xe9/xc8 -+ /xe9/xc9 -+ /xe9/xca -+ /xe9/xcb -+ /xe9/xcc -+ /xe9/xcd -+ /xe9/xce -+ /xe9/xcf -+ /xe9/xd0 -+ /xe9/xd1 -+ /xe9/xd2 -+ /xe9/xd3 -+ /xe9/xd4 -+ /xe9/xd5 -+ /xe9/xd6 -+ /xe9/xd7 -+ /xe9/xd8 -+ /xe9/xd9 -+ /xe9/xda -+ /xe9/xdb -+ /xe9/xdc -+ /xe9/xdd -+ /xe9/xde -+ /xe9/xdf -+ /xe9/xe0 -+ /xe9/xe1 -+ /xe9/xe2 -+ /xe9/xe3 -+ /xe9/xe4 -+ /xe9/xe5 -+ /xe9/xe6 -+ /xe9/xe7 -+ /xe9/xe8 -+ /xe9/xe9 -+ /xe9/xea -+ /xe9/xeb -+ /xe9/xec -+ /xe9/xed -+ /xe9/xee -+ /xe9/xef -+ /xe9/xf0 -+ /xe9/xf1 -+ /xe9/xf2 -+ /xe9/xf3 -+ /xe9/xf4 -+ /xe9/xf5 -+ /xe9/xf6 -+ /xe9/xf7 -+ /xe9/xf8 -+ /xe9/xf9 -+ /xe9/xfa -+ /xe9/xfb -+ /xe9/xfc -+ /xe9/xfd -+ /xe9/xfe -+ /xea/xa1 -+ /xea/xa2 -+ /xea/xa3 -+ /xea/xa4 -+ /xea/xa5 -+ /xea/xa6 -+ /xea/xa7 -+ /xea/xa8 -+ /xea/xa9 -+ /xea/xaa -+ /xea/xab -+ /xea/xac -+ /xea/xad -+ /xea/xae -+ /xea/xaf -+ /xea/xb0 -+ /xea/xb1 -+ /xea/xb2 -+ /xea/xb3 -+ /xea/xb4 -+ /xea/xb5 -+ /xea/xb6 -+ /xea/xb7 -+ /xea/xb8 -+ /xea/xb9 -+ /xea/xba -+ /xea/xbb -+ /xea/xbc -+ /xea/xbd -+ /xea/xbe -+ /xea/xbf -+ /xea/xc0 -+ /xea/xc1 -+ /xea/xc2 -+ /xea/xc3 -+ /xea/xc4 -+ /xea/xc5 -+ /xea/xc6 -+ /xea/xc7 -+ /xea/xc8 -+ /xea/xc9 -+ /xea/xca -+ /xea/xcb -+ /xea/xcc -+ /xea/xcd -+ /xea/xce -+ /xea/xcf -+ /xea/xd0 -+ /xea/xd1 -+ /xea/xd2 -+ /xea/xd3 -+ /xea/xd4 -+ /xea/xd5 -+ /xea/xd6 -+ /xea/xd7 -+ /xea/xd8 -+ /xea/xd9 -+ /xea/xda -+ /xea/xdb -+ /xea/xdc -+ /xea/xdd -+ /xea/xde -+ /xea/xdf -+ /xea/xe0 -+ /xea/xe1 -+ /xea/xe2 -+ /xea/xe3 -+ /xea/xe4 -+ /xea/xe5 -+ /xea/xe6 -+ /xea/xe7 -+ /xea/xe8 -+ /xea/xe9 -+ /xea/xea -+ /xea/xeb -+ /xea/xec -+ /xea/xed -+ /xea/xee -+ /xea/xef -+ /xea/xf0 -+ /xea/xf1 -+ /xea/xf2 -+ /xea/xf3 -+ /xea/xf4 -+ /xea/xf5 -+ /xea/xf6 -+ /xea/xf7 -+ /xea/xf8 -+ /xea/xf9 -+ /xea/xfa -+ /xea/xfb -+ /xea/xfc -+ /xea/xfd -+ /xea/xfe -+ /xeb/xa1 -+ /xeb/xa2 -+ /xeb/xa3 -+ /xeb/xa4 -+ /xeb/xa5 -+ /xeb/xa6 -+ /xeb/xa7 -+ /xeb/xa8 -+ /xeb/xa9 -+ /xeb/xaa -+ /xeb/xab -+ /xeb/xac -+ /xeb/xad -+ /xeb/xae -+ /xeb/xaf -+ /xeb/xb0 -+ /xeb/xb1 -+ /xeb/xb2 -+ /xeb/xb3 -+ /xeb/xb4 -+ /xeb/xb5 -+ /xeb/xb6 -+ /xeb/xb7 -+ /xeb/xb8 -+ /xeb/xb9 -+ /xeb/xba -+ /xeb/xbb -+ /xeb/xbc -+ /xeb/xbd -+ /xeb/xbe -+ /xeb/xbf -+ /xeb/xc0 -+ /xeb/xc1 -+ /xeb/xc2 -+ /xeb/xc3 -+ /xeb/xc4 -+ /xeb/xc5 -+ /xeb/xc6 -+ /xeb/xc7 -+ /xeb/xc8 -+ /xeb/xc9 -+ /xeb/xca -+ /xeb/xcb -+ /xeb/xcc -+ /xeb/xcd -+ /xeb/xce -+ /xeb/xcf -+ /xeb/xd0 -+ /xeb/xd1 -+ /xeb/xd2 -+ /xeb/xd3 -+ /xeb/xd4 -+ /xeb/xd5 -+ /xeb/xd6 -+ /xeb/xd7 -+ /xeb/xd8 -+ /xeb/xd9 -+ /xeb/xda -+ /xeb/xdb -+ /xeb/xdc -+ /xeb/xdd -+ /xeb/xde -+ /xeb/xdf -+ /xeb/xe0 -+ /xeb/xe1 -+ /xeb/xe2 -+ /xeb/xe3 -+ /xeb/xe4 -+ /xeb/xe5 -+ /xeb/xe6 -+ /xeb/xe7 -+ /xeb/xe8 -+ /xeb/xe9 -+ /xeb/xea -+ /xeb/xeb -+ /xeb/xec -+ /xeb/xed -+ /xeb/xee -+ /xeb/xef -+ /xeb/xf0 -+ /xeb/xf1 -+ /xeb/xf2 -+ /xeb/xf3 -+ /xeb/xf4 -+ /xeb/xf5 -+ /xeb/xf6 -+ /xeb/xf7 -+ /xeb/xf8 -+ /xeb/xf9 -+ /xeb/xfa -+ /xeb/xfb -+ /xeb/xfc -+ /xeb/xfd -+ /xeb/xfe -+ /xec/xa1 -+ /xec/xa2 -+ /xec/xa3 -+ /xec/xa4 -+ /xec/xa5 -+ /xec/xa6 -+ /xec/xa7 -+ /xec/xa8 -+ /xec/xa9 -+ /xec/xaa -+ /xec/xab -+ /xec/xac -+ /xec/xad -+ /xec/xae -+ /xec/xaf -+ /xec/xb0 -+ /xec/xb1 -+ /xec/xb2 -+ /xec/xb3 -+ /xec/xb4 -+ /xec/xb5 -+ /xec/xb6 -+ /xec/xb7 -+ /xec/xb8 -+ /xec/xb9 -+ /xec/xba -+ /xec/xbb -+ /xec/xbc -+ /xec/xbd -+ /xec/xbe -+ /xec/xbf -+ /xec/xc0 -+ /xec/xc1 -+ /xec/xc2 -+ /xec/xc3 -+ /xec/xc4 -+ /xec/xc5 -+ /xec/xc6 -+ /xec/xc7 -+ /xec/xc8 -+ /xec/xc9 -+ /xec/xca -+ /xec/xcb -+ /xec/xcc -+ /xec/xcd -+ /xec/xce -+ /xec/xcf -+ /xec/xd0 -+ /xec/xd1 -+ /xec/xd2 -+ /xec/xd3 -+ /xec/xd4 -+ /xec/xd5 -+ /xec/xd6 -+ /xec/xd7 -+ /xec/xd8 -+ /xec/xd9 -+ /xec/xda -+ /xec/xdb -+ /xec/xdc -+ /xec/xdd -+ /xec/xde -+ /xec/xdf -+ /xec/xe0 -+ /xec/xe1 -+ /xec/xe2 -+ /xec/xe3 -+ /xec/xe4 -+ /xec/xe5 -+ /xec/xe6 -+ /xec/xe7 -+ /xec/xe8 -+ /xec/xe9 -+ /xec/xea -+ /xec/xeb -+ /xec/xec -+ /xec/xed -+ /xec/xee -+ /xec/xef -+ /xec/xf0 -+ /xec/xf1 -+ /xec/xf2 -+ /xec/xf3 -+ /xec/xf4 -+ /xec/xf5 -+ /xec/xf6 -+ /xec/xf7 -+ /xec/xf8 -+ /xec/xf9 -+ /xec/xfa -+ /xec/xfb -+ /xec/xfc -+ /xec/xfd -+ /xec/xfe -+ /xed/xa1 -+ /xed/xa2 -+ /xed/xa3 -+ /xed/xa4 -+ /xed/xa5 -+ /xed/xa6 -+ /xed/xa7 -+ /xed/xa8 -+ /xed/xa9 -+ /xed/xaa -+ /xed/xab -+ /xed/xac -+ /xed/xad -+ /xed/xae -+ /xed/xaf -+ /xed/xb0 -+ /xed/xb1 -+ /xed/xb2 -+ /xed/xb3 -+ /xed/xb4 -+ /xed/xb5 -+ /xed/xb6 -+ /xed/xb7 -+ /xed/xb8 -+ /xed/xb9 -+ /xed/xba -+ /xed/xbb -+ /xed/xbc -+ /xed/xbd -+ /xed/xbe -+ /xed/xbf -+ /xed/xc0 -+ /xed/xc1 -+ /xed/xc2 -+ /xed/xc3 -+ /xed/xc4 -+ /xed/xc5 -+ /xed/xc6 -+ /xed/xc7 -+ /xed/xc8 -+ /xed/xc9 -+ /xed/xca -+ /xed/xcb -+ /xed/xcc -+ /xed/xcd -+ /xed/xce -+ /xed/xcf -+ /xed/xd0 -+ /xed/xd1 -+ /xed/xd2 -+ /xed/xd3 -+ /xed/xd4 -+ /xed/xd5 -+ /xed/xd6 -+ /xed/xd7 -+ /xed/xd8 -+ /xed/xd9 -+ /xed/xda -+ /xed/xdb -+ /xed/xdc -+ /xed/xdd -+ /xed/xde -+ /xed/xdf -+ /xed/xe0 -+ /xed/xe1 -+ /xed/xe2 -+ /xed/xe3 -+ /xed/xe4 -+ /xed/xe5 -+ /xed/xe6 -+ /xed/xe7 -+ /xed/xe8 -+ /xed/xe9 -+ /xed/xea -+ /xed/xeb -+ /xed/xec -+ /xed/xed -+ /xed/xee -+ /xed/xef -+ /xed/xf0 -+ /xed/xf1 -+ /xed/xf2 -+ /xed/xf3 -+ /xed/xf4 -+ /xed/xf5 -+ /xed/xf6 -+ /xed/xf7 -+ /xed/xf8 -+ /xed/xf9 -+ /xed/xfa -+ /xed/xfb -+ /xed/xfc -+ /xed/xfd -+ /xed/xfe -+ /xee/xa1 -+ /xee/xa2 -+ /xee/xa3 -+ /xee/xa4 -+ /xee/xa5 -+ /xee/xa6 -+ /xee/xa7 -+ /xee/xa8 -+ /xee/xa9 -+ /xee/xaa -+ /xee/xab -+ /xee/xac -+ /xee/xad -+ /xee/xae -+ /xee/xaf -+ /xee/xb0 -+ /xee/xb1 -+ /xee/xb2 -+ /xee/xb3 -+ /xee/xb4 -+ /xee/xb5 -+ /xee/xb6 -+ /xee/xb7 -+ /xee/xb8 -+ /xee/xb9 -+ /xee/xba -+ /xee/xbb -+ /xee/xbc -+ /xee/xbd -+ /xee/xbe -+ /xee/xbf -+ /xee/xc0 -+ /xee/xc1 -+ /xee/xc2 -+ /xee/xc3 -+ /xee/xc4 -+ /xee/xc5 -+ /xee/xc6 -+ /xee/xc7 -+ /xee/xc8 -+ /xee/xc9 -+ /xee/xca -+ /xee/xcb -+ /xee/xcc -+ /xee/xcd -+ /xee/xce -+ /xee/xcf -+ /xee/xd0 -+ /xee/xd1 -+ /xee/xd2 -+ /xee/xd3 -+ /xee/xd4 -+ /xee/xd5 -+ /xee/xd6 -+ /xee/xd7 -+ /xee/xd8 -+ /xee/xd9 -+ /xee/xda -+ /xee/xdb -+ /xee/xdc -+ /xee/xdd -+ /xee/xde -+ /xee/xdf -+ /xee/xe0 -+ /xee/xe1 -+ /xee/xe2 -+ /xee/xe3 -+ /xee/xe4 -+ /xee/xe5 -+ /xee/xe6 -+ /xee/xe7 -+ /xee/xe8 -+ /xee/xe9 -+ /xee/xea -+ /xee/xeb -+ /xee/xec -+ /xee/xed -+ /xee/xee -+ /xee/xef -+ /xee/xf0 -+ /xee/xf1 -+ /xee/xf2 -+ /xee/xf3 -+ /xee/xf4 -+ /xee/xf5 -+ /xee/xf6 -+ /xee/xf7 -+ /xee/xf8 -+ /xee/xf9 -+ /xee/xfa -+ /xee/xfb -+ /xee/xfc -+ /xee/xfd -+ /xee/xfe -+ /xef/xa1 -+ /xef/xa2 -+ /xef/xa3 -+ /xef/xa4 -+ /xef/xa5 -+ /xef/xa6 -+ /xef/xa7 -+ /xef/xa8 -+ /xef/xa9 -+ /xef/xaa -+ /xef/xab -+ /xef/xac -+ /xef/xad -+ /xef/xae -+ /xef/xaf -+ /xef/xb0 -+ /xef/xb1 -+ /xef/xb2 -+ /xef/xb3 -+ /xef/xb4 -+ /xef/xb5 -+ /xef/xb6 -+ /xef/xb7 -+ /xef/xb8 -+ /xef/xb9 -+ /xef/xba -+ /xef/xbb -+ /xef/xbc -+ /xef/xbd -+ /xef/xbe -+ /xef/xbf -+ /xef/xc0 -+ /xef/xc1 -+ /xef/xc2 -+ /xef/xc3 -+ /xef/xc4 -+ /xef/xc5 -+ /xef/xc6 -+ /xef/xc7 -+ /xef/xc8 -+ /xef/xc9 -+ /xef/xca -+ /xef/xcb -+ /xef/xcc -+ /xef/xcd -+ /xef/xce -+ /xef/xcf -+ /xef/xd0 -+ /xef/xd1 -+ /xef/xd2 -+ /xef/xd3 -+ /xef/xd4 -+ /xef/xd5 -+ /xef/xd6 -+ /xef/xd7 -+ /xef/xd8 -+ /xef/xd9 -+ /xef/xda -+ /xef/xdb -+ /xef/xdc -+ /xef/xdd -+ /xef/xde -+ /xef/xdf -+ /xef/xe0 -+ /xef/xe1 -+ /xef/xe2 -+ /xef/xe3 -+ /xef/xe4 -+ /xef/xe5 -+ /xef/xe6 -+ /xef/xe7 -+ /xef/xe8 -+ /xef/xe9 -+ /xef/xea -+ /xef/xeb -+ /xef/xec -+ /xef/xed -+ /xef/xee -+ /xef/xef -+ /xef/xf0 -+ /xef/xf1 -+ /xef/xf2 -+ /xef/xf3 -+ /xef/xf4 -+ /xef/xf5 -+ /xef/xf6 -+ /xef/xf7 -+ /xef/xf8 -+ /xef/xf9 -+ /xef/xfa -+ /xef/xfb -+ /xef/xfc -+ /xef/xfd -+ /xef/xfe -+ /xf0/xa1 -+ /xf0/xa2 -+ /xf0/xa3 -+ /xf0/xa4 -+ /xf0/xa5 -+ /xf0/xa6 -+ /xf0/xa7 -+ /xf0/xa8 -+ /xf0/xa9 -+ /xf0/xaa -+ /xf0/xab -+ /xf0/xac -+ /xf0/xad -+ /xf0/xae -+ /xf0/xaf -+ /xf0/xb0 -+ /xf0/xb1 -+ /xf0/xb2 -+ /xf0/xb3 -+ /xf0/xb4 -+ /xf0/xb5 -+ /xf0/xb6 -+ /xf0/xb7 -+ /xf0/xb8 -+ /xf0/xb9 -+ /xf0/xba -+ /xf0/xbb -+ /xf0/xbc -+ /xf0/xbd -+ /xf0/xbe -+ /xf0/xbf -+ /xf0/xc0 -+ /xf0/xc1 -+ /xf0/xc2 -+ /xf0/xc3 -+ /xf0/xc4 -+ /xf0/xc5 -+ /xf0/xc6 -+ /xf0/xc7 -+ /xf0/xc8 -+ /xf0/xc9 -+ /xf0/xca -+ /xf0/xcb -+ /xf0/xcc -+ /xf0/xcd -+ /xf0/xce -+ /xf0/xcf -+ /xf0/xd0 -+ /xf0/xd1 -+ /xf0/xd2 -+ /xf0/xd3 -+ /xf0/xd4 -+ /xf0/xd5 -+ /xf0/xd6 -+ /xf0/xd7 -+ /xf0/xd8 -+ /xf0/xd9 -+ /xf0/xda -+ /xf0/xdb -+ /xf0/xdc -+ /xf0/xdd -+ /xf0/xde -+ /xf0/xdf -+ /xf0/xe0 -+ /xf0/xe1 -+ /xf0/xe2 -+ /xf0/xe3 -+ /xf0/xe4 -+ /xf0/xe5 -+ /xf0/xe6 -+ /xf0/xe7 -+ /xf0/xe8 -+ /xf0/xe9 -+ /xf0/xea -+ /xf0/xeb -+ /xf0/xec -+ /xf0/xed -+ /xf0/xee -+ /xf0/xef -+ /xf0/xf0 -+ /xf0/xf1 -+ /xf0/xf2 -+ /xf0/xf3 -+ /xf0/xf4 -+ /xf0/xf5 -+ /xf0/xf6 -+ /xf0/xf7 -+ /xf0/xf8 -+ /xf0/xf9 -+ /xf0/xfa -+ /xf0/xfb -+ /xf0/xfc -+ /xf0/xfd -+ /xf0/xfe -+ /xf1/xa1 -+ /xf1/xa2 -+ /xf1/xa3 -+ /xf1/xa4 -+ /xf1/xa5 -+ /xf1/xa6 -+ /xf1/xa7 -+ /xf1/xa8 -+ /xf1/xa9 -+ /xf1/xaa -+ /xf1/xab -+ /xf1/xac -+ /xf1/xad -+ /xf1/xae -+ /xf1/xaf -+ /xf1/xb0 -+ /xf1/xb1 -+ /xf1/xb2 -+ /xf1/xb3 -+ /xf1/xb4 -+ /xf1/xb5 -+ /xf1/xb6 -+ /xf1/xb7 -+ /xf1/xb8 -+ /xf1/xb9 -+ /xf1/xba -+ /xf1/xbb -+ /xf1/xbc -+ /xf1/xbd -+ /xf1/xbe -+ /xf1/xbf -+ /xf1/xc0 -+ /xf1/xc1 -+ /xf1/xc2 -+ /xf1/xc3 -+ /xf1/xc4 -+ /xf1/xc5 -+ /xf1/xc6 -+ /xf1/xc7 -+ /xf1/xc8 -+ /xf1/xc9 -+ /xf1/xca -+ /xf1/xcb -+ /xf1/xcc -+ /xf1/xcd -+ /xf1/xce -+ /xf1/xcf -+ /xf1/xd0 -+ /xf1/xd1 -+ /xf1/xd2 -+ /xf1/xd3 -+ /xf1/xd4 -+ /xf1/xd5 -+ /xf1/xd6 -+ /xf1/xd7 -+ /xf1/xd8 -+ /xf1/xd9 -+ /xf1/xda -+ /xf1/xdb -+ /xf1/xdc -+ /xf1/xdd -+ /xf1/xde -+ /xf1/xdf -+ /xf1/xe0 -+ /xf1/xe1 -+ /xf1/xe2 -+ /xf1/xe3 -+ /xf1/xe4 -+ /xf1/xe5 -+ /xf1/xe6 -+ /xf1/xe7 -+ /xf1/xe8 -+ /xf1/xe9 -+ /xf1/xea -+ /xf1/xeb -+ /xf1/xec -+ /xf1/xed -+ /xf1/xee -+ /xf1/xef -+ /xf1/xf0 -+ /xf1/xf1 -+ /xf1/xf2 -+ /xf1/xf3 -+ /xf1/xf4 -+ /xf1/xf5 -+ /xf1/xf6 -+ /xf1/xf7 -+ /xf1/xf8 -+ /xf1/xf9 -+ /xf1/xfa -+ /xf1/xfb -+ /xf1/xfc -+ /xf1/xfd -+ /xf1/xfe -+ /xf2/xa1 -+ /xf2/xa2 -+ /xf2/xa3 -+ /xf2/xa4 -+ /xf2/xa5 -+ /xf2/xa6 -+ /xf2/xa7 -+ /xf2/xa8 -+ /xf2/xa9 -+ /xf2/xaa -+ /xf2/xab -+ /xf2/xac -+ /xf2/xad -+ /xf2/xae -+ /xf2/xaf -+ /xf2/xb0 -+ /xf2/xb1 -+ /xf2/xb2 -+ /xf2/xb3 -+ /xf2/xb4 -+ /xf2/xb5 -+ /xf2/xb6 -+ /xf2/xb7 -+ /xf2/xb8 -+ /xf2/xb9 -+ /xf2/xba -+ /xf2/xbb -+ /xf2/xbc -+ /xf2/xbd -+ /xf2/xbe -+ /xf2/xbf -+ /xf2/xc0 -+ /xf2/xc1 -+ /xf2/xc2 -+ /xf2/xc3 -+ /xf2/xc4 -+ /xf2/xc5 -+ /xf2/xc6 -+ /xf2/xc7 -+ /xf2/xc8 -+ /xf2/xc9 -+ /xf2/xca -+ /xf2/xcb -+ /xf2/xcc -+ /xf2/xcd -+ /xf2/xce -+ /xf2/xcf -+ /xf2/xd0 -+ /xf2/xd1 -+ /xf2/xd2 -+ /xf2/xd3 -+ /xf2/xd4 -+ /xf2/xd5 -+ /xf2/xd6 -+ /xf2/xd7 -+ /xf2/xd8 -+ /xf2/xd9 -+ /xf2/xda -+ /xf2/xdb -+ /xf2/xdc -+ /xf2/xdd -+ /xf2/xde -+ /xf2/xdf -+ /xf2/xe0 -+ /xf2/xe1 -+ /xf2/xe2 -+ /xf2/xe3 -+ /xf2/xe4 -+ /xf2/xe5 -+ /xf2/xe6 -+ /xf2/xe7 -+ /xf2/xe8 -+ /xf2/xe9 -+ /xf2/xea -+ /xf2/xeb -+ /xf2/xec -+ /xf2/xed -+ /xf2/xee -+ /xf2/xef -+ /xf2/xf0 -+ /xf2/xf1 -+ /xf2/xf2 -+ /xf2/xf3 -+ /xf2/xf4 -+ /xf2/xf5 -+ /xf2/xf6 -+ /xf2/xf7 -+ /xf2/xf8 -+ /xf2/xf9 -+ /xf2/xfa -+ /xf2/xfb -+ /xf2/xfc -+ /xf2/xfd -+ /xf2/xfe -+ /xf3/xa1 -+ /xf3/xa2 -+ /xf3/xa3 -+ /xf3/xa4 -+ /xf3/xa5 -+ /xf3/xa6 -+ /xf3/xa7 -+ /xf3/xa8 -+ /xf3/xa9 -+ /xf3/xaa -+ /xf3/xab -+ /xf3/xac -+ /xf3/xad -+ /xf3/xae -+ /xf3/xaf -+ /xf3/xb0 -+ /xf3/xb1 -+ /xf3/xb2 -+ /xf3/xb3 -+ /xf3/xb4 -+ /xf3/xb5 -+ /xf3/xb6 -+ /xf3/xb7 -+ /xf3/xb8 -+ /xf3/xb9 -+ /xf3/xba -+ /xf3/xbb -+ /xf3/xbc -+ /xf3/xbd -+ /xf3/xbe -+ /xf3/xbf -+ /xf3/xc0 -+ /xf3/xc1 -+ /xf3/xc2 -+ /xf3/xc3 -+ /xf3/xc4 -+ /xf3/xc5 -+ /xf3/xc6 -+ /xf3/xc7 -+ /xf3/xc8 -+ /xf3/xc9 -+ /xf3/xca -+ /xf3/xcb -+ /xf3/xcc -+ /xf3/xcd -+ /xf3/xce -+ /xf3/xcf -+ /xf3/xd0 -+ /xf3/xd1 -+ /xf3/xd2 -+ /xf3/xd3 -+ /xf3/xd4 -+ /xf3/xd5 -+ /xf3/xd6 -+ /xf3/xd7 -+ /xf3/xd8 -+ /xf3/xd9 -+ /xf3/xda -+ /xf3/xdb -+ /xf3/xdc -+ /xf3/xdd -+ /xf3/xde -+ /xf3/xdf -+ /xf3/xe0 -+ /xf3/xe1 -+ /xf3/xe2 -+ /xf3/xe3 -+ /xf3/xe4 -+ /xf3/xe5 -+ /xf3/xe6 -+ /xf3/xe7 -+ /xf3/xe8 -+ /xf3/xe9 -+ /xf3/xea -+ /xf3/xeb -+ /xf3/xec -+ /xf3/xed -+ /xf3/xee -+ /xf3/xef -+ /xf3/xf0 -+ /xf3/xf1 -+ /xf3/xf2 -+ /xf3/xf3 -+ /xf3/xf4 -+ /xf3/xf5 -+ /xf3/xf6 -+ /xf3/xf7 -+ /xf3/xf8 -+ /xf3/xf9 -+ /xf3/xfa -+ /xf3/xfb -+ /xf3/xfc -+ /xf3/xfd -+ /xf3/xfe -+ /xf4/xa1 -+ /xf4/xa2 -+ /xf4/xa3 -+ /xf4/xa4 -+ /xf4/xa5 -+ /xf4/xa6 -+ -+% -+% User Defined Characters (EUC Code Set 1) -+% -+ /xf5/xa1 -+ /xf5/xa2 -+ /xf5/xa3 -+ /xf5/xa4 -+ /xf5/xa5 -+ /xf5/xa6 -+ /xf5/xa7 -+ /xf5/xa8 -+ /xf5/xa9 -+ /xf5/xaa -+ /xf5/xab -+ /xf5/xac -+ /xf5/xad -+ /xf5/xae -+ /xf5/xaf -+ /xf5/xb0 -+ /xf5/xb1 -+ /xf5/xb2 -+ /xf5/xb3 -+ /xf5/xb4 -+ /xf5/xb5 -+ /xf5/xb6 -+ /xf5/xb7 -+ /xf5/xb8 -+ /xf5/xb9 -+ /xf5/xba -+ /xf5/xbb -+ /xf5/xbc -+ /xf5/xbd -+ /xf5/xbe -+ /xf5/xbf -+ /xf5/xc0 -+ /xf5/xc1 -+ /xf5/xc2 -+ /xf5/xc3 -+ /xf5/xc4 -+ /xf5/xc5 -+ /xf5/xc6 -+ /xf5/xc7 -+ /xf5/xc8 -+ /xf5/xc9 -+ /xf5/xca -+ /xf5/xcb -+ /xf5/xcc -+ /xf5/xcd -+ /xf5/xce -+ /xf5/xcf -+ /xf5/xd0 -+ /xf5/xd1 -+ /xf5/xd2 -+ /xf5/xd3 -+ /xf5/xd4 -+ /xf5/xd5 -+ /xf5/xd6 -+ /xf5/xd7 -+ /xf5/xd8 -+ /xf5/xd9 -+ /xf5/xda -+ /xf5/xdb -+ /xf5/xdc -+ /xf5/xdd -+ /xf5/xde -+ /xf5/xdf -+ /xf5/xe0 -+ /xf5/xe1 -+ /xf5/xe2 -+ /xf5/xe3 -+ /xf5/xe4 -+ /xf5/xe5 -+ /xf5/xe6 -+ /xf5/xe7 -+ /xf5/xe8 -+ /xf5/xe9 -+ /xf5/xea -+ /xf5/xeb -+ /xf5/xec -+ /xf5/xed -+ /xf5/xee -+ /xf5/xef -+ /xf5/xf0 -+ /xf5/xf1 -+ /xf5/xf2 -+ /xf5/xf3 -+ /xf5/xf4 -+ /xf5/xf5 -+ /xf5/xf6 -+ /xf5/xf7 -+ /xf5/xf8 -+ /xf5/xf9 -+ /xf5/xfa -+ /xf5/xfb -+ /xf5/xfc -+ /xf5/xfd -+ /xf5/xfe -+ /xf6/xa1 -+ /xf6/xa2 -+ /xf6/xa3 -+ /xf6/xa4 -+ /xf6/xa5 -+ /xf6/xa6 -+ /xf6/xa7 -+ /xf6/xa8 -+ /xf6/xa9 -+ /xf6/xaa -+ /xf6/xab -+ /xf6/xac -+ /xf6/xad -+ /xf6/xae -+ /xf6/xaf -+ /xf6/xb0 -+ /xf6/xb1 -+ /xf6/xb2 -+ /xf6/xb3 -+ /xf6/xb4 -+ /xf6/xb5 -+ /xf6/xb6 -+ /xf6/xb7 -+ /xf6/xb8 -+ /xf6/xb9 -+ /xf6/xba -+ /xf6/xbb -+ /xf6/xbc -+ /xf6/xbd -+ /xf6/xbe -+ /xf6/xbf -+ /xf6/xc0 -+ /xf6/xc1 -+ /xf6/xc2 -+ /xf6/xc3 -+ /xf6/xc4 -+ /xf6/xc5 -+ /xf6/xc6 -+ /xf6/xc7 -+ /xf6/xc8 -+ /xf6/xc9 -+ /xf6/xca -+ /xf6/xcb -+ /xf6/xcc -+ /xf6/xcd -+ /xf6/xce -+ /xf6/xcf -+ /xf6/xd0 -+ /xf6/xd1 -+ /xf6/xd2 -+ /xf6/xd3 -+ /xf6/xd4 -+ /xf6/xd5 -+ /xf6/xd6 -+ /xf6/xd7 -+ /xf6/xd8 -+ /xf6/xd9 -+ /xf6/xda -+ /xf6/xdb -+ /xf6/xdc -+ /xf6/xdd -+ /xf6/xde -+ /xf6/xdf -+ /xf6/xe0 -+ /xf6/xe1 -+ /xf6/xe2 -+ /xf6/xe3 -+ /xf6/xe4 -+ /xf6/xe5 -+ /xf6/xe6 -+ /xf6/xe7 -+ /xf6/xe8 -+ /xf6/xe9 -+ /xf6/xea -+ /xf6/xeb -+ /xf6/xec -+ /xf6/xed -+ /xf6/xee -+ /xf6/xef -+ /xf6/xf0 -+ /xf6/xf1 -+ /xf6/xf2 -+ /xf6/xf3 -+ /xf6/xf4 -+ /xf6/xf5 -+ /xf6/xf6 -+ /xf6/xf7 -+ /xf6/xf8 -+ /xf6/xf9 -+ /xf6/xfa -+ /xf6/xfb -+ /xf6/xfc -+ /xf6/xfd -+ /xf6/xfe -+ /xf7/xa1 -+ /xf7/xa2 -+ /xf7/xa3 -+ /xf7/xa4 -+ /xf7/xa5 -+ /xf7/xa6 -+ /xf7/xa7 -+ /xf7/xa8 -+ /xf7/xa9 -+ /xf7/xaa -+ /xf7/xab -+ /xf7/xac -+ /xf7/xad -+ /xf7/xae -+ /xf7/xaf -+ /xf7/xb0 -+ /xf7/xb1 -+ /xf7/xb2 -+ /xf7/xb3 -+ /xf7/xb4 -+ /xf7/xb5 -+ /xf7/xb6 -+ /xf7/xb7 -+ /xf7/xb8 -+ /xf7/xb9 -+ /xf7/xba -+ /xf7/xbb -+ /xf7/xbc -+ /xf7/xbd -+ /xf7/xbe -+ /xf7/xbf -+ /xf7/xc0 -+ /xf7/xc1 -+ /xf7/xc2 -+ /xf7/xc3 -+ /xf7/xc4 -+ /xf7/xc5 -+ /xf7/xc6 -+ /xf7/xc7 -+ /xf7/xc8 -+ /xf7/xc9 -+ /xf7/xca -+ /xf7/xcb -+ /xf7/xcc -+ /xf7/xcd -+ /xf7/xce -+ /xf7/xcf -+ /xf7/xd0 -+ /xf7/xd1 -+ /xf7/xd2 -+ /xf7/xd3 -+ /xf7/xd4 -+ /xf7/xd5 -+ /xf7/xd6 -+ /xf7/xd7 -+ /xf7/xd8 -+ /xf7/xd9 -+ /xf7/xda -+ /xf7/xdb -+ /xf7/xdc -+ /xf7/xdd -+ /xf7/xde -+ /xf7/xdf -+ /xf7/xe0 -+ /xf7/xe1 -+ /xf7/xe2 -+ /xf7/xe3 -+ /xf7/xe4 -+ /xf7/xe5 -+ /xf7/xe6 -+ /xf7/xe7 -+ /xf7/xe8 -+ /xf7/xe9 -+ /xf7/xea -+ /xf7/xeb -+ /xf7/xec -+ /xf7/xed -+ /xf7/xee -+ /xf7/xef -+ /xf7/xf0 -+ /xf7/xf1 -+ /xf7/xf2 -+ /xf7/xf3 -+ /xf7/xf4 -+ /xf7/xf5 -+ /xf7/xf6 -+ /xf7/xf7 -+ /xf7/xf8 -+ /xf7/xf9 -+ /xf7/xfa -+ /xf7/xfb -+ /xf7/xfc -+ /xf7/xfd -+ /xf7/xfe -+ /xf8/xa1 -+ /xf8/xa2 -+ /xf8/xa3 -+ /xf8/xa4 -+ /xf8/xa5 -+ /xf8/xa6 -+ /xf8/xa7 -+ /xf8/xa8 -+ /xf8/xa9 -+ /xf8/xaa -+ /xf8/xab -+ /xf8/xac -+ /xf8/xad -+ /xf8/xae -+ /xf8/xaf -+ /xf8/xb0 -+ /xf8/xb1 -+ /xf8/xb2 -+ /xf8/xb3 -+ /xf8/xb4 -+ /xf8/xb5 -+ /xf8/xb6 -+ /xf8/xb7 -+ /xf8/xb8 -+ /xf8/xb9 -+ /xf8/xba -+ /xf8/xbb -+ /xf8/xbc -+ /xf8/xbd -+ /xf8/xbe -+ /xf8/xbf -+ /xf8/xc0 -+ /xf8/xc1 -+ /xf8/xc2 -+ /xf8/xc3 -+ /xf8/xc4 -+ /xf8/xc5 -+ /xf8/xc6 -+ /xf8/xc7 -+ /xf8/xc8 -+ /xf8/xc9 -+ /xf8/xca -+ /xf8/xcb -+ /xf8/xcc -+ /xf8/xcd -+ /xf8/xce -+ /xf8/xcf -+ /xf8/xd0 -+ /xf8/xd1 -+ /xf8/xd2 -+ /xf8/xd3 -+ /xf8/xd4 -+ /xf8/xd5 -+ /xf8/xd6 -+ /xf8/xd7 -+ /xf8/xd8 -+ /xf8/xd9 -+ /xf8/xda -+ /xf8/xdb -+ /xf8/xdc -+ /xf8/xdd -+ /xf8/xde -+ /xf8/xdf -+ /xf8/xe0 -+ /xf8/xe1 -+ /xf8/xe2 -+ /xf8/xe3 -+ /xf8/xe4 -+ /xf8/xe5 -+ /xf8/xe6 -+ /xf8/xe7 -+ /xf8/xe8 -+ /xf8/xe9 -+ /xf8/xea -+ /xf8/xeb -+ /xf8/xec -+ /xf8/xed -+ /xf8/xee -+ /xf8/xef -+ /xf8/xf0 -+ /xf8/xf1 -+ /xf8/xf2 -+ /xf8/xf3 -+ /xf8/xf4 -+ /xf8/xf5 -+ /xf8/xf6 -+ /xf8/xf7 -+ /xf8/xf8 -+ /xf8/xf9 -+ /xf8/xfa -+ /xf8/xfb -+ /xf8/xfc -+ /xf8/xfd -+ /xf8/xfe -+ /xf9/xa1 -+ /xf9/xa2 -+ /xf9/xa3 -+ /xf9/xa4 -+ /xf9/xa5 -+ /xf9/xa6 -+ /xf9/xa7 -+ /xf9/xa8 -+ /xf9/xa9 -+ /xf9/xaa -+ /xf9/xab -+ /xf9/xac -+ /xf9/xad -+ /xf9/xae -+ /xf9/xaf -+ /xf9/xb0 -+ /xf9/xb1 -+ /xf9/xb2 -+ /xf9/xb3 -+ /xf9/xb4 -+ /xf9/xb5 -+ /xf9/xb6 -+ /xf9/xb7 -+ /xf9/xb8 -+ /xf9/xb9 -+ /xf9/xba -+ /xf9/xbb -+ /xf9/xbc -+ /xf9/xbd -+ /xf9/xbe -+ /xf9/xbf -+ /xf9/xc0 -+ /xf9/xc1 -+ /xf9/xc2 -+ /xf9/xc3 -+ /xf9/xc4 -+ /xf9/xc5 -+ /xf9/xc6 -+ /xf9/xc7 -+ /xf9/xc8 -+ /xf9/xc9 -+ /xf9/xca -+ /xf9/xcb -+ /xf9/xcc -+ /xf9/xcd -+ /xf9/xce -+ /xf9/xcf -+ /xf9/xd0 -+ /xf9/xd1 -+ /xf9/xd2 -+ /xf9/xd3 -+ /xf9/xd4 -+ /xf9/xd5 -+ /xf9/xd6 -+ /xf9/xd7 -+ /xf9/xd8 -+ /xf9/xd9 -+ /xf9/xda -+ /xf9/xdb -+ /xf9/xdc -+ /xf9/xdd -+ /xf9/xde -+ /xf9/xdf -+ /xf9/xe0 -+ /xf9/xe1 -+ /xf9/xe2 -+ /xf9/xe3 -+ /xf9/xe4 -+ /xf9/xe5 -+ /xf9/xe6 -+ /xf9/xe7 -+ /xf9/xe8 -+ /xf9/xe9 -+ /xf9/xea -+ /xf9/xeb -+ /xf9/xec -+ /xf9/xed -+ /xf9/xee -+ /xf9/xef -+ /xf9/xf0 -+ /xf9/xf1 -+ /xf9/xf2 -+ /xf9/xf3 -+ /xf9/xf4 -+ /xf9/xf5 -+ /xf9/xf6 -+ /xf9/xf7 -+ /xf9/xf8 -+ /xf9/xf9 -+ /xf9/xfa -+ /xf9/xfb -+ /xf9/xfc -+ /xf9/xfd -+ /xf9/xfe -+ /xfa/xa1 -+ /xfa/xa2 -+ /xfa/xa3 -+ /xfa/xa4 -+ /xfa/xa5 -+ /xfa/xa6 -+ /xfa/xa7 -+ /xfa/xa8 -+ /xfa/xa9 -+ /xfa/xaa -+ /xfa/xab -+ /xfa/xac -+ /xfa/xad -+ /xfa/xae -+ /xfa/xaf -+ /xfa/xb0 -+ /xfa/xb1 -+ /xfa/xb2 -+ /xfa/xb3 -+ /xfa/xb4 -+ /xfa/xb5 -+ /xfa/xb6 -+ /xfa/xb7 -+ /xfa/xb8 -+ /xfa/xb9 -+ /xfa/xba -+ /xfa/xbb -+ /xfa/xbc -+ /xfa/xbd -+ /xfa/xbe -+ /xfa/xbf -+ /xfa/xc0 -+ /xfa/xc1 -+ /xfa/xc2 -+ /xfa/xc3 -+ /xfa/xc4 -+ /xfa/xc5 -+ /xfa/xc6 -+ /xfa/xc7 -+ /xfa/xc8 -+ /xfa/xc9 -+ /xfa/xca -+ /xfa/xcb -+ /xfa/xcc -+ /xfa/xcd -+ /xfa/xce -+ /xfa/xcf -+ /xfa/xd0 -+ /xfa/xd1 -+ /xfa/xd2 -+ /xfa/xd3 -+ /xfa/xd4 -+ /xfa/xd5 -+ /xfa/xd6 -+ /xfa/xd7 -+ /xfa/xd8 -+ /xfa/xd9 -+ /xfa/xda -+ /xfa/xdb -+ /xfa/xdc -+ /xfa/xdd -+ /xfa/xde -+ /xfa/xdf -+ /xfa/xe0 -+ /xfa/xe1 -+ /xfa/xe2 -+ /xfa/xe3 -+ /xfa/xe4 -+ /xfa/xe5 -+ /xfa/xe6 -+ /xfa/xe7 -+ /xfa/xe8 -+ /xfa/xe9 -+ /xfa/xea -+ /xfa/xeb -+ /xfa/xec -+ /xfa/xed -+ /xfa/xee -+ /xfa/xef -+ /xfa/xf0 -+ /xfa/xf1 -+ /xfa/xf2 -+ /xfa/xf3 -+ /xfa/xf4 -+ /xfa/xf5 -+ /xfa/xf6 -+ /xfa/xf7 -+ /xfa/xf8 -+ /xfa/xf9 -+ /xfa/xfa -+ /xfa/xfb -+ /xfa/xfc -+ /xfa/xfd -+ /xfa/xfe -+ /xfb/xa1 -+ /xfb/xa2 -+ /xfb/xa3 -+ /xfb/xa4 -+ /xfb/xa5 -+ /xfb/xa6 -+ /xfb/xa7 -+ /xfb/xa8 -+ /xfb/xa9 -+ /xfb/xaa -+ /xfb/xab -+ /xfb/xac -+ /xfb/xad -+ /xfb/xae -+ /xfb/xaf -+ /xfb/xb0 -+ /xfb/xb1 -+ /xfb/xb2 -+ /xfb/xb3 -+ /xfb/xb4 -+ /xfb/xb5 -+ /xfb/xb6 -+ /xfb/xb7 -+ /xfb/xb8 -+ /xfb/xb9 -+ /xfb/xba -+ /xfb/xbb -+ /xfb/xbc -+ /xfb/xbd -+ /xfb/xbe -+ /xfb/xbf -+ /xfb/xc0 -+ /xfb/xc1 -+ /xfb/xc2 -+ /xfb/xc3 -+ /xfb/xc4 -+ /xfb/xc5 -+ /xfb/xc6 -+ /xfb/xc7 -+ /xfb/xc8 -+ /xfb/xc9 -+ /xfb/xca -+ /xfb/xcb -+ /xfb/xcc -+ /xfb/xcd -+ /xfb/xce -+ /xfb/xcf -+ /xfb/xd0 -+ /xfb/xd1 -+ /xfb/xd2 -+ /xfb/xd3 -+ /xfb/xd4 -+ /xfb/xd5 -+ /xfb/xd6 -+ /xfb/xd7 -+ /xfb/xd8 -+ /xfb/xd9 -+ /xfb/xda -+ /xfb/xdb -+ /xfb/xdc -+ /xfb/xdd -+ /xfb/xde -+ /xfb/xdf -+ /xfb/xe0 -+ /xfb/xe1 -+ /xfb/xe2 -+ /xfb/xe3 -+ /xfb/xe4 -+ /xfb/xe5 -+ /xfb/xe6 -+ /xfb/xe7 -+ /xfb/xe8 -+ /xfb/xe9 -+ /xfb/xea -+ /xfb/xeb -+ /xfb/xec -+ /xfb/xed -+ /xfb/xee -+ /xfb/xef -+ /xfb/xf0 -+ /xfb/xf1 -+ /xfb/xf2 -+ /xfb/xf3 -+ /xfb/xf4 -+ /xfb/xf5 -+ /xfb/xf6 -+ /xfb/xf7 -+ /xfb/xf8 -+ /xfb/xf9 -+ /xfb/xfa -+ /xfb/xfb -+ /xfb/xfc -+ /xfb/xfd -+ /xfb/xfe -+ /xfc/xa1 -+ /xfc/xa2 -+ /xfc/xa3 -+ /xfc/xa4 -+ /xfc/xa5 -+ /xfc/xa6 -+ /xfc/xa7 -+ /xfc/xa8 -+ /xfc/xa9 -+ /xfc/xaa -+ /xfc/xab -+ /xfc/xac -+ /xfc/xad -+ /xfc/xae -+ /xfc/xaf -+ /xfc/xb0 -+ /xfc/xb1 -+ /xfc/xb2 -+ /xfc/xb3 -+ /xfc/xb4 -+ /xfc/xb5 -+ /xfc/xb6 -+ /xfc/xb7 -+ /xfc/xb8 -+ /xfc/xb9 -+ /xfc/xba -+ /xfc/xbb -+ /xfc/xbc -+ /xfc/xbd -+ /xfc/xbe -+ /xfc/xbf -+ /xfc/xc0 -+ /xfc/xc1 -+ /xfc/xc2 -+ /xfc/xc3 -+ /xfc/xc4 -+ /xfc/xc5 -+ /xfc/xc6 -+ /xfc/xc7 -+ /xfc/xc8 -+ /xfc/xc9 -+ /xfc/xca -+ /xfc/xcb -+ /xfc/xcc -+ /xfc/xcd -+ /xfc/xce -+ /xfc/xcf -+ /xfc/xd0 -+ /xfc/xd1 -+ /xfc/xd2 -+ /xfc/xd3 -+ /xfc/xd4 -+ /xfc/xd5 -+ /xfc/xd6 -+ /xfc/xd7 -+ /xfc/xd8 -+ /xfc/xd9 -+ /xfc/xda -+ /xfc/xdb -+ /xfc/xdc -+ /xfc/xdd -+ /xfc/xde -+ /xfc/xdf -+ /xfc/xe0 -+ /xfc/xe1 -+ /xfc/xe2 -+ /xfc/xe3 -+ /xfc/xe4 -+ /xfc/xe5 -+ /xfc/xe6 -+ /xfc/xe7 -+ /xfc/xe8 -+ /xfc/xe9 -+ /xfc/xea -+ /xfc/xeb -+ /xfc/xec -+ /xfc/xed -+ /xfc/xee -+ /xfc/xef -+ /xfc/xf0 -+ /xfc/xf1 -+ /xfc/xf2 -+ /xfc/xf3 -+ /xfc/xf4 -+ /xfc/xf5 -+ /xfc/xf6 -+ /xfc/xf7 -+ /xfc/xf8 -+ /xfc/xf9 -+ /xfc/xfa -+ /xfc/xfb -+ /xfc/xfc -+ /xfc/xfd -+ /xfc/xfe -+ /xfd/xa1 -+ /xfd/xa2 -+ /xfd/xa3 -+ /xfd/xa4 -+ /xfd/xa5 -+ /xfd/xa6 -+ /xfd/xa7 -+ /xfd/xa8 -+ /xfd/xa9 -+ /xfd/xaa -+ /xfd/xab -+ /xfd/xac -+ /xfd/xad -+ /xfd/xae -+ /xfd/xaf -+ /xfd/xb0 -+ /xfd/xb1 -+ /xfd/xb2 -+ /xfd/xb3 -+ /xfd/xb4 -+ /xfd/xb5 -+ /xfd/xb6 -+ /xfd/xb7 -+ /xfd/xb8 -+ /xfd/xb9 -+ /xfd/xba -+ /xfd/xbb -+ /xfd/xbc -+ /xfd/xbd -+ /xfd/xbe -+ /xfd/xbf -+ /xfd/xc0 -+ /xfd/xc1 -+ /xfd/xc2 -+ /xfd/xc3 -+ /xfd/xc4 -+ /xfd/xc5 -+ /xfd/xc6 -+ /xfd/xc7 -+ /xfd/xc8 -+ /xfd/xc9 -+ /xfd/xca -+ /xfd/xcb -+ /xfd/xcc -+ /xfd/xcd -+ /xfd/xce -+ /xfd/xcf -+ /xfd/xd0 -+ /xfd/xd1 -+ /xfd/xd2 -+ /xfd/xd3 -+ /xfd/xd4 -+ /xfd/xd5 -+ /xfd/xd6 -+ /xfd/xd7 -+ /xfd/xd8 -+ /xfd/xd9 -+ /xfd/xda -+ /xfd/xdb -+ /xfd/xdc -+ /xfd/xdd -+ /xfd/xde -+ /xfd/xdf -+ /xfd/xe0 -+ /xfd/xe1 -+ /xfd/xe2 -+ /xfd/xe3 -+ /xfd/xe4 -+ /xfd/xe5 -+ /xfd/xe6 -+ /xfd/xe7 -+ /xfd/xe8 -+ /xfd/xe9 -+ /xfd/xea -+ /xfd/xeb -+ /xfd/xec -+ /xfd/xed -+ /xfd/xee -+ /xfd/xef -+ /xfd/xf0 -+ /xfd/xf1 -+ /xfd/xf2 -+ /xfd/xf3 -+ /xfd/xf4 -+ /xfd/xf5 -+ /xfd/xf6 -+ /xfd/xf7 -+ /xfd/xf8 -+ /xfd/xf9 -+ /xfd/xfa -+ /xfd/xfb -+ /xfd/xfc -+ /xfd/xfd -+ /xfd/xfe -+ /xfe/xa1 -+ /xfe/xa2 -+ /xfe/xa3 -+ /xfe/xa4 -+ /xfe/xa5 -+ /xfe/xa6 -+ /xfe/xa7 -+ /xfe/xa8 -+ /xfe/xa9 -+ /xfe/xaa -+ /xfe/xab -+ /xfe/xac -+ /xfe/xad -+ /xfe/xae -+ /xfe/xaf -+ /xfe/xb0 -+ /xfe/xb1 -+ /xfe/xb2 -+ /xfe/xb3 -+ /xfe/xb4 -+ /xfe/xb5 -+ /xfe/xb6 -+ /xfe/xb7 -+ /xfe/xb8 -+ /xfe/xb9 -+ /xfe/xba -+ /xfe/xbb -+ /xfe/xbc -+ /xfe/xbd -+ /xfe/xbe -+ /xfe/xbf -+ /xfe/xc0 -+ /xfe/xc1 -+ /xfe/xc2 -+ /xfe/xc3 -+ /xfe/xc4 -+ /xfe/xc5 -+ /xfe/xc6 -+ /xfe/xc7 -+ /xfe/xc8 -+ /xfe/xc9 -+ /xfe/xca -+ /xfe/xcb -+ /xfe/xcc -+ /xfe/xcd -+ /xfe/xce -+ /xfe/xcf -+ /xfe/xd0 -+ /xfe/xd1 -+ /xfe/xd2 -+ /xfe/xd3 -+ /xfe/xd4 -+ /xfe/xd5 -+ /xfe/xd6 -+ /xfe/xd7 -+ /xfe/xd8 -+ /xfe/xd9 -+ /xfe/xda -+ /xfe/xdb -+ /xfe/xdc -+ /xfe/xdd -+ /xfe/xde -+ /xfe/xdf -+ /xfe/xe0 -+ /xfe/xe1 -+ /xfe/xe2 -+ /xfe/xe3 -+ /xfe/xe4 -+ /xfe/xe5 -+ /xfe/xe6 -+ /xfe/xe7 -+ /xfe/xe8 -+ /xfe/xe9 -+ /xfe/xea -+ /xfe/xeb -+ /xfe/xec -+ /xfe/xed -+ /xfe/xee -+ /xfe/xef -+ /xfe/xf0 -+ /xfe/xf1 -+ /xfe/xf2 -+ /xfe/xf3 -+ /xfe/xf4 -+ /xfe/xf5 -+ /xfe/xf6 -+ /xfe/xf7 -+ /xfe/xf8 -+ /xfe/xf9 -+ /xfe/xfa -+ /xfe/xfb -+ /xfe/xfc -+ /xfe/xfd -+ /xfe/xfe -+ -+% -+% JIS X 0212 -+% -+ /x8f/xa2/xaf BREVE -+ /x8f/xa2/xb0 CARON (Mandarin Chinese third tone) -+ /x8f/xa2/xb1 CEDILLA -+ /x8f/xa2/xb2 DOT ABOVE (Mandarin Chinese light tone) -+ /x8f/xa2/xb3 DOUBLE ACUTE ACCENT -+ /x8f/xa2/xb4 MACRON -+ /x8f/xa2/xb5 OGONEK -+ /x8f/xa2/xb6 RING ABOVE -+%IRREVERSIBLE% /x8f/xa2/xb7 FULLWIDTH TILDE -+ /x8f/xa2/xb8 GREEK TONOS -+ /x8f/xa2/xb9 GREEK DIALYTIKA TONOS -+ /x8f/xa2/xc2 INVERTED EXCLAMATION MARK -+ /x8f/xa2/xc3 FULLWIDTH BROKEN BAR -+ /x8f/xa2/xc4 INVERTED QUESTION MARK -+ /x8f/xa2/xeb MASCULINE ORDINAL INDICATOR -+ /x8f/xa2/xec FEMININE ORDINAL INDICATOR -+ /x8f/xa2/xed COPYRIGHT SIGN -+ /x8f/xa2/xee REGISTERED SIGN -+ /x8f/xa2/xef TRADE MARK SIGN -+ /x8f/xa2/xf0 CURRENCY SIGN -+%IRREVERSIBLE% /x8f/xa2/xf1 NUMERO SIGN -+ /x8f/xa6/xe1 GREEK CAPITAL LETTER ALPHA WITH TONOS -+ /x8f/xa6/xe2 GREEK CAPITAL LETTER EPSILON WITH TONOS -+ /x8f/xa6/xe3 GREEK CAPITAL LETTER ETA WITH TONOS -+ /x8f/xa6/xe4 GREEK CAPITAL LETTER IOTA WITH TONOS -+ /x8f/xa6/xe5 GREEK CAPITAL LETTER IOTA WITH DIALYTIKA -+ /x8f/xa6/xe7 GREEK CAPITAL LETTER OMICRON WITH TONOS -+ /x8f/xa6/xe9 GREEK CAPITAL LETTER UPSILON WITH TONOS -+ /x8f/xa6/xea GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA -+ /x8f/xa6/xec GREEK CAPITAL LETTER OMEGA WITH TONOS -+ /x8f/xa6/xf1 GREEK SMALL LETTER ALPHA WITH TONOS -+ /x8f/xa6/xf2 GREEK SMALL LETTER EPSILON WITH TONOS -+ /x8f/xa6/xf3 GREEK SMALL LETTER ETA WITH TONOS -+ /x8f/xa6/xf4 GREEK SMALL LETTER IOTA WITH TONOS -+ /x8f/xa6/xf5 GREEK SMALL LETTER IOTA WITH DIALYTIKA -+ /x8f/xa6/xf6 GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS -+ /x8f/xa6/xf7 GREEK SMALL LETTER OMICRON WITH TONOS -+ /x8f/xa6/xf8 GREEK SMALL LETTER FINAL SIGMA -+ /x8f/xa6/xf9 GREEK SMALL LETTER UPSILON WITH TONOS -+ /x8f/xa6/xfa GREEK SMALL LETTER UPSILON WITH DIALYTIKA -+ /x8f/xa6/xfb GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS -+ /x8f/xa6/xfc GREEK SMALL LETTER OMEGA WITH TONOS -+ /x8f/xa7/xc2 CYRILLIC CAPITAL LETTER DJE -+ /x8f/xa7/xc3 CYRILLIC CAPITAL LETTER GJE -+ /x8f/xa7/xc4 CYRILLIC CAPITAL LETTER UKRAINIAN IE -+ /x8f/xa7/xc5 CYRILLIC CAPITAL LETTER DZE -+ /x8f/xa7/xc6 CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I -+ /x8f/xa7/xc7 CYRILLIC CAPITAL LETTER YI -+ /x8f/xa7/xc8 CYRILLIC CAPITAL LETTER JE -+ /x8f/xa7/xc9 CYRILLIC CAPITAL LETTER LJE -+ /x8f/xa7/xca CYRILLIC CAPITAL LETTER NJE -+ /x8f/xa7/xcb CYRILLIC CAPITAL LETTER TSHE -+ /x8f/xa7/xcc CYRILLIC CAPITAL LETTER KJE -+ /x8f/xa7/xcd CYRILLIC CAPITAL LETTER SHORT U -+ /x8f/xa7/xce CYRILLIC CAPITAL LETTER DZHE -+ /x8f/xa7/xf2 CYRILLIC SMALL LETTER DJE -+ /x8f/xa7/xf3 CYRILLIC SMALL LETTER GJE -+ /x8f/xa7/xf4 CYRILLIC SMALL LETTER UKRAINIAN IE -+ /x8f/xa7/xf5 CYRILLIC SMALL LETTER DZE -+ /x8f/xa7/xf6 CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I -+ /x8f/xa7/xf7 CYRILLIC SMALL LETTER YI -+ /x8f/xa7/xf8 CYRILLIC SMALL LETTER JE -+ /x8f/xa7/xf9 CYRILLIC SMALL LETTER LJE -+ /x8f/xa7/xfa CYRILLIC SMALL LETTER NJE -+ /x8f/xa7/xfb CYRILLIC SMALL LETTER TSHE -+ /x8f/xa7/xfc CYRILLIC SMALL LETTER KJE -+ /x8f/xa7/xfd CYRILLIC SMALL LETTER SHORT U -+ /x8f/xa7/xfe CYRILLIC SMALL LETTER DZHE -+ /x8f/xa9/xa1 LATIN CAPITAL LIGATURE AE -+ /x8f/xa9/xa2 LATIN CAPITAL LETTER D WITH STROKE -+ /x8f/xa9/xa4 LATIN CAPITAL LETTER H WITH STROKE -+ /x8f/xa9/xa6 LATIN CAPITAL LIGATURE IJ -+ /x8f/xa9/xa8 LATIN CAPITAL LETTER L WITH STROKE -+ /x8f/xa9/xa9 LATIN CAPITAL LETTER L WITH MIDDLE DOT -+ /x8f/xa9/xab LATIN CAPITAL LETTER ENG -+ /x8f/xa9/xac LATIN CAPITAL LETTER O WITH STROKE -+ /x8f/xa9/xad LATIN CAPITAL LIGATURE OE -+ /x8f/xa9/xaf LATIN CAPITAL LETTER T WITH STROKE -+ /x8f/xa9/xb0 LATIN CAPITAL LETTER THORN -+ /x8f/xa9/xc1 LATIN SMALL LIGATURE AE -+ /x8f/xa9/xc2 LATIN SMALL LETTER D WITH STROKE -+ /x8f/xa9/xc3 LATIN SMALL LETTER ETH -+ /x8f/xa9/xc4 LATIN SMALL LETTER H WITH STROKE -+ /x8f/xa9/xc5 LATIN SMALL LETTER DOTLESS I -+ /x8f/xa9/xc6 LATIN SMALL LIGATURE IJ -+ /x8f/xa9/xc7 LATIN SMALL LETTER KRA -+ /x8f/xa9/xc8 LATIN SMALL LETTER L WITH STROKE -+ /x8f/xa9/xc9 LATIN SMALL LETTER L WITH MIDDLE DOT -+ /x8f/xa9/xca LATIN SMALL LETTER N PRECEDED BY APOSTROPHE -+ /x8f/xa9/xcb LATIN SMALL LETTER ENG -+ /x8f/xa9/xcc LATIN SMALL LETTER O WITH STROKE -+ /x8f/xa9/xcd LATIN SMALL LIGATURE OE -+ /x8f/xa9/xce LATIN SMALL LETTER SHARP S -+ /x8f/xa9/xcf LATIN SMALL LETTER T WITH STROKE -+ /x8f/xa9/xd0 LATIN SMALL LETTER THORN -+ /x8f/xaa/xa1 LATIN CAPITAL LETTER A WITH ACUTE -+ /x8f/xaa/xa2 LATIN CAPITAL LETTER A WITH GRAVE -+ /x8f/xaa/xa3 LATIN CAPITAL LETTER A WITH DIAERESIS -+ /x8f/xaa/xa4 LATIN CAPITAL LETTER A WITH CIRCUMFLEX -+ /x8f/xaa/xa5 LATIN CAPITAL LETTER A WITH BREVE -+ /x8f/xaa/xa6 LATIN CAPITAL LETTER A WITH CARON -+ /x8f/xaa/xa7 LATIN CAPITAL LETTER A WITH MACRON -+ /x8f/xaa/xa8 LATIN CAPITAL LETTER A WITH OGONEK -+ /x8f/xaa/xa9 LATIN CAPITAL LETTER A WITH RING ABOVE -+ /x8f/xaa/xaa LATIN CAPITAL LETTER A WITH TILDE -+ /x8f/xaa/xab LATIN CAPITAL LETTER C WITH ACUTE -+ /x8f/xaa/xac LATIN CAPITAL LETTER C WITH CIRCUMFLEX -+ /x8f/xaa/xad LATIN CAPITAL LETTER C WITH CARON -+ /x8f/xaa/xae LATIN CAPITAL LETTER C WITH CEDILLA -+ /x8f/xaa/xaf LATIN CAPITAL LETTER C WITH DOT ABOVE -+ /x8f/xaa/xb0 LATIN CAPITAL LETTER D WITH CARON -+ /x8f/xaa/xb1 LATIN CAPITAL LETTER E WITH ACUTE -+ /x8f/xaa/xb2 LATIN CAPITAL LETTER E WITH GRAVE -+ /x8f/xaa/xb3 LATIN CAPITAL LETTER E WITH DIAERESIS -+ /x8f/xaa/xb4 LATIN CAPITAL LETTER E WITH CIRCUMFLEX -+ /x8f/xaa/xb5 LATIN CAPITAL LETTER E WITH CARON -+ /x8f/xaa/xb6 LATIN CAPITAL LETTER E WITH DOT ABOVE -+ /x8f/xaa/xb7 LATIN CAPITAL LETTER E WITH MACRON -+ /x8f/xaa/xb8 LATIN CAPITAL LETTER E WITH OGONEK -+ /x8f/xaa/xba LATIN CAPITAL LETTER G WITH CIRCUMFLEX -+ /x8f/xaa/xbb LATIN CAPITAL LETTER G WITH BREVE -+ /x8f/xaa/xbc LATIN CAPITAL LETTER G WITH CEDILLA -+ /x8f/xaa/xbd LATIN CAPITAL LETTER G WITH DOT ABOVE -+ /x8f/xaa/xbe LATIN CAPITAL LETTER H WITH CIRCUMFLEX -+ /x8f/xaa/xbf LATIN CAPITAL LETTER I WITH ACUTE -+ /x8f/xaa/xc0 LATIN CAPITAL LETTER I WITH GRAVE -+ /x8f/xaa/xc1 LATIN CAPITAL LETTER I WITH DIAERESIS -+ /x8f/xaa/xc2 LATIN CAPITAL LETTER I WITH CIRCUMFLEX -+ /x8f/xaa/xc3 LATIN CAPITAL LETTER I WITH CARON -+ /x8f/xaa/xc4 LATIN CAPITAL LETTER I WITH DOT ABOVE -+ /x8f/xaa/xc5 LATIN CAPITAL LETTER I WITH MACRON -+ /x8f/xaa/xc6 LATIN CAPITAL LETTER I WITH OGONEK -+ /x8f/xaa/xc7 LATIN CAPITAL LETTER I WITH TILDE -+ /x8f/xaa/xc8 LATIN CAPITAL LETTER J WITH CIRCUMFLEX -+ /x8f/xaa/xc9 LATIN CAPITAL LETTER K WITH CEDILLA -+ /x8f/xaa/xca LATIN CAPITAL LETTER L WITH ACUTE -+ /x8f/xaa/xcb LATIN CAPITAL LETTER L WITH CARON -+ /x8f/xaa/xcc LATIN CAPITAL LETTER L WITH CEDILLA -+ /x8f/xaa/xcd LATIN CAPITAL LETTER N WITH ACUTE -+ /x8f/xaa/xce LATIN CAPITAL LETTER N WITH CARON -+ /x8f/xaa/xcf LATIN CAPITAL LETTER N WITH CEDILLA -+ /x8f/xaa/xd0 LATIN CAPITAL LETTER N WITH TILDE -+ /x8f/xaa/xd1 LATIN CAPITAL LETTER O WITH ACUTE -+ /x8f/xaa/xd2 LATIN CAPITAL LETTER O WITH GRAVE -+ /x8f/xaa/xd3 LATIN CAPITAL LETTER O WITH DIAERESIS -+ /x8f/xaa/xd4 LATIN CAPITAL LETTER O WITH CIRCUMFLEX -+ /x8f/xaa/xd5 LATIN CAPITAL LETTER O WITH CARON -+ /x8f/xaa/xd6 LATIN CAPITAL LETTER O WITH DOUBLE ACUTE -+ /x8f/xaa/xd7 LATIN CAPITAL LETTER O WITH MACRON -+ /x8f/xaa/xd8 LATIN CAPITAL LETTER O WITH TILDE -+ /x8f/xaa/xd9 LATIN CAPITAL LETTER R WITH ACUTE -+ /x8f/xaa/xda LATIN CAPITAL LETTER R WITH CARON -+ /x8f/xaa/xdb LATIN CAPITAL LETTER R WITH CEDILLA -+ /x8f/xaa/xdc LATIN CAPITAL LETTER S WITH ACUTE -+ /x8f/xaa/xdd LATIN CAPITAL LETTER S WITH CIRCUMFLEX -+ /x8f/xaa/xde LATIN CAPITAL LETTER S WITH CARON -+ /x8f/xaa/xdf LATIN CAPITAL LETTER S WITH CEDILLA -+ /x8f/xaa/xe0 LATIN CAPITAL LETTER T WITH CARON -+ /x8f/xaa/xe1 LATIN CAPITAL LETTER T WITH CEDILLA -+ /x8f/xaa/xe2 LATIN CAPITAL LETTER U WITH ACUTE -+ /x8f/xaa/xe3 LATIN CAPITAL LETTER U WITH GRAVE -+ /x8f/xaa/xe4 LATIN CAPITAL LETTER U WITH DIAERESIS -+ /x8f/xaa/xe5 LATIN CAPITAL LETTER U WITH CIRCUMFLEX -+ /x8f/xaa/xe6 LATIN CAPITAL LETTER U WITH BREVE -+ /x8f/xaa/xe7 LATIN CAPITAL LETTER U WITH CARON -+ /x8f/xaa/xe8 LATIN CAPITAL LETTER U WITH DOUBLE ACUTE -+ /x8f/xaa/xe9 LATIN CAPITAL LETTER U WITH MACRON -+ /x8f/xaa/xea LATIN CAPITAL LETTER U WITH OGONEK -+ /x8f/xaa/xeb LATIN CAPITAL LETTER U WITH RING ABOVE -+ /x8f/xaa/xec LATIN CAPITAL LETTER U WITH TILDE -+ /x8f/xaa/xed LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE -+ /x8f/xaa/xee LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE -+ /x8f/xaa/xef LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON -+ /x8f/xaa/xf0 LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON -+ /x8f/xaa/xf1 LATIN CAPITAL LETTER W WITH CIRCUMFLEX -+ /x8f/xaa/xf2 LATIN CAPITAL LETTER Y WITH ACUTE -+ /x8f/xaa/xf3 LATIN CAPITAL LETTER Y WITH DIAERESIS -+ /x8f/xaa/xf4 LATIN CAPITAL LETTER Y WITH CIRCUMFLEX -+ /x8f/xaa/xf5 LATIN CAPITAL LETTER Z WITH ACUTE -+ /x8f/xaa/xf6 LATIN CAPITAL LETTER Z WITH CARON -+ /x8f/xaa/xf7 LATIN CAPITAL LETTER Z WITH DOT ABOVE -+ /x8f/xab/xa1 LATIN SMALL LETTER A WITH ACUTE -+ /x8f/xab/xa2 LATIN SMALL LETTER A WITH GRAVE -+ /x8f/xab/xa3 LATIN SMALL LETTER A WITH DIAERESIS -+ /x8f/xab/xa4 LATIN SMALL LETTER A WITH CIRCUMFLEX -+ /x8f/xab/xa5 LATIN SMALL LETTER A WITH BREVE -+ /x8f/xab/xa6 LATIN SMALL LETTER A WITH CARON -+ /x8f/xab/xa7 LATIN SMALL LETTER A WITH MACRON -+ /x8f/xab/xa8 LATIN SMALL LETTER A WITH OGONEK -+ /x8f/xab/xa9 LATIN SMALL LETTER A WITH RING ABOVE -+ /x8f/xab/xaa LATIN SMALL LETTER A WITH TILDE -+ /x8f/xab/xab LATIN SMALL LETTER C WITH ACUTE -+ /x8f/xab/xac LATIN SMALL LETTER C WITH CIRCUMFLEX -+ /x8f/xab/xad LATIN SMALL LETTER C WITH CARON -+ /x8f/xab/xae LATIN SMALL LETTER C WITH CEDILLA -+ /x8f/xab/xaf LATIN SMALL LETTER C WITH DOT ABOVE -+ /x8f/xab/xb0 LATIN SMALL LETTER D WITH CARON -+ /x8f/xab/xb1 LATIN SMALL LETTER E WITH ACUTE -+ /x8f/xab/xb2 LATIN SMALL LETTER E WITH GRAVE -+ /x8f/xab/xb3 LATIN SMALL LETTER E WITH DIAERESIS -+ /x8f/xab/xb4 LATIN SMALL LETTER E WITH CIRCUMFLEX -+ /x8f/xab/xb5 LATIN SMALL LETTER E WITH CARON -+ /x8f/xab/xb6 LATIN SMALL LETTER E WITH DOT ABOVE -+ /x8f/xab/xb7 LATIN SMALL LETTER E WITH MACRON -+ /x8f/xab/xb8 LATIN SMALL LETTER E WITH OGONEK -+ /x8f/xab/xb9 LATIN SMALL LETTER G WITH ACUTE -+ /x8f/xab/xba LATIN SMALL LETTER G WITH CIRCUMFLEX -+ /x8f/xab/xbb LATIN SMALL LETTER G WITH BREVE -+ /x8f/xab/xbd LATIN SMALL LETTER G WITH DOT ABOVE -+ /x8f/xab/xbe LATIN SMALL LETTER H WITH CIRCUMFLEX -+ /x8f/xab/xbf LATIN SMALL LETTER I WITH ACUTE -+ /x8f/xab/xc0 LATIN SMALL LETTER I WITH GRAVE -+ /x8f/xab/xc1 LATIN SMALL LETTER I WITH DIAERESIS -+ /x8f/xab/xc2 LATIN SMALL LETTER I WITH CIRCUMFLEX -+ /x8f/xab/xc3 LATIN SMALL LETTER I WITH CARON -+ /x8f/xab/xc5 LATIN SMALL LETTER I WITH MACRON -+ /x8f/xab/xc6 LATIN SMALL LETTER I WITH OGONEK -+ /x8f/xab/xc7 LATIN SMALL LETTER I WITH TILDE -+ /x8f/xab/xc8 LATIN SMALL LETTER J WITH CIRCUMFLEX -+ /x8f/xab/xc9 LATIN SMALL LETTER K WITH CEDILLA -+ /x8f/xab/xca LATIN SMALL LETTER L WITH ACUTE -+ /x8f/xab/xcb LATIN SMALL LETTER L WITH CARON -+ /x8f/xab/xcc LATIN SMALL LETTER L WITH CEDILLA -+ /x8f/xab/xcd LATIN SMALL LETTER N WITH ACUTE -+ /x8f/xab/xce LATIN SMALL LETTER N WITH CARON -+ /x8f/xab/xcf LATIN SMALL LETTER N WITH CEDILLA -+ /x8f/xab/xd0 LATIN SMALL LETTER N WITH TILDE -+ /x8f/xab/xd1 LATIN SMALL LETTER O WITH ACUTE -+ /x8f/xab/xd2 LATIN SMALL LETTER O WITH GRAVE -+ /x8f/xab/xd3 LATIN SMALL LETTER O WITH DIAERESIS -+ /x8f/xab/xd4 LATIN SMALL LETTER O WITH CIRCUMFLEX -+ /x8f/xab/xd5 LATIN SMALL LETTER O WITH CARON -+ /x8f/xab/xd6 LATIN SMALL LETTER O WITH DOUBLE ACUTE -+ /x8f/xab/xd7 LATIN SMALL LETTER O WITH MACRON -+ /x8f/xab/xd8 LATIN SMALL LETTER O WITH TILDE -+ /x8f/xab/xd9 LATIN SMALL LETTER R WITH ACUTE -+ /x8f/xab/xda LATIN SMALL LETTER R WITH CARON -+ /x8f/xab/xdb LATIN SMALL LETTER R WITH CEDILLA -+ /x8f/xab/xdc LATIN SMALL LETTER S WITH ACUTE -+ /x8f/xab/xdd LATIN SMALL LETTER S WITH CIRCUMFLEX -+ /x8f/xab/xde LATIN SMALL LETTER S WITH CARON -+ /x8f/xab/xdf LATIN SMALL LETTER S WITH CEDILLA -+ /x8f/xab/xe0 LATIN SMALL LETTER T WITH CARON -+ /x8f/xab/xe1 LATIN SMALL LETTER T WITH CEDILLA -+ /x8f/xab/xe2 LATIN SMALL LETTER U WITH ACUTE -+ /x8f/xab/xe3 LATIN SMALL LETTER U WITH GRAVE -+ /x8f/xab/xe4 LATIN SMALL LETTER U WITH DIAERESIS -+ /x8f/xab/xe5 LATIN SMALL LETTER U WITH CIRCUMFLEX -+ /x8f/xab/xe6 LATIN SMALL LETTER U WITH BREVE -+ /x8f/xab/xe7 LATIN SMALL LETTER U WITH CARON -+ /x8f/xab/xe8 LATIN SMALL LETTER U WITH DOUBLE ACUTE -+ /x8f/xab/xe9 LATIN SMALL LETTER U WITH MACRON -+ /x8f/xab/xea LATIN SMALL LETTER U WITH OGONEK -+ /x8f/xab/xeb LATIN SMALL LETTER U WITH RING ABOVE -+ /x8f/xab/xec LATIN SMALL LETTER U WITH TILDE -+ /x8f/xab/xed LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE -+ /x8f/xab/xee LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE -+ /x8f/xab/xef LATIN SMALL LETTER U WITH DIAERESIS AND CARON -+ /x8f/xab/xf0 LATIN SMALL LETTER U WITH DIAERESIS AND MACRON -+ /x8f/xab/xf1 LATIN SMALL LETTER W WITH CIRCUMFLEX -+ /x8f/xab/xf2 LATIN SMALL LETTER Y WITH ACUTE -+ /x8f/xab/xf3 LATIN SMALL LETTER Y WITH DIAERESIS -+ /x8f/xab/xf4 LATIN SMALL LETTER Y WITH CIRCUMFLEX -+ /x8f/xab/xf5 LATIN SMALL LETTER Z WITH ACUTE -+ /x8f/xab/xf6 LATIN SMALL LETTER Z WITH CARON -+ /x8f/xab/xf7 LATIN SMALL LETTER Z WITH DOT ABOVE -+ /x8f/xb0/xa1 -+ /x8f/xb0/xa2 -+ /x8f/xb0/xa3 -+ /x8f/xb0/xa4 -+ /x8f/xb0/xa5 -+ /x8f/xb0/xa6 -+ /x8f/xb0/xa7 -+ /x8f/xb0/xa8 -+ /x8f/xb0/xa9 -+ /x8f/xb0/xaa -+ /x8f/xb0/xab -+ /x8f/xb0/xac -+ /x8f/xb0/xad -+ /x8f/xb0/xae -+ /x8f/xb0/xaf -+ /x8f/xb0/xb0 -+ /x8f/xb0/xb1 -+ /x8f/xb0/xb2 -+ /x8f/xb0/xb3 -+ /x8f/xb0/xb4 -+ /x8f/xb0/xb5 -+ /x8f/xb0/xb6 -+ /x8f/xb0/xb7 -+ /x8f/xb0/xb8 -+ /x8f/xb0/xb9 -+ /x8f/xb0/xba -+ /x8f/xb0/xbb -+ /x8f/xb0/xbc -+ /x8f/xb0/xbd -+ /x8f/xb0/xbe -+ /x8f/xb0/xbf -+ /x8f/xb0/xc0 -+ /x8f/xb0/xc1 -+ /x8f/xb0/xc2 -+ /x8f/xb0/xc3 -+ /x8f/xb0/xc4 -+ /x8f/xb0/xc5 -+ /x8f/xb0/xc6 -+ /x8f/xb0/xc7 -+ /x8f/xb0/xc8 -+ /x8f/xb0/xc9 -+ /x8f/xb0/xca -+ /x8f/xb0/xcb -+ /x8f/xb0/xcc -+ /x8f/xb0/xcd -+ /x8f/xb0/xce -+ /x8f/xb0/xcf -+ /x8f/xb0/xd0 -+ /x8f/xb0/xd1 -+ /x8f/xb0/xd2 -+ /x8f/xb0/xd3 -+ /x8f/xb0/xd4 -+ /x8f/xb0/xd5 -+ /x8f/xb0/xd6 -+ /x8f/xb0/xd7 -+ /x8f/xb0/xd8 -+ /x8f/xb0/xd9 -+ /x8f/xb0/xda -+ /x8f/xb0/xdb -+ /x8f/xb0/xdc -+ /x8f/xb0/xdd -+ /x8f/xb0/xde -+ /x8f/xb0/xdf -+ /x8f/xb0/xe0 -+ /x8f/xb0/xe1 -+ /x8f/xb0/xe2 -+ /x8f/xb0/xe3 -+ /x8f/xb0/xe4 -+ /x8f/xb0/xe5 -+ /x8f/xb0/xe6 -+ /x8f/xb0/xe7 -+ /x8f/xb0/xe8 -+ /x8f/xb0/xe9 -+ /x8f/xb0/xea -+ /x8f/xb0/xeb -+ /x8f/xb0/xec -+ /x8f/xb0/xed -+ /x8f/xb0/xee -+ /x8f/xb0/xef -+ /x8f/xb0/xf0 -+ /x8f/xb0/xf1 -+ /x8f/xb0/xf2 -+ /x8f/xb0/xf3 -+ /x8f/xb0/xf4 -+ /x8f/xb0/xf5 -+ /x8f/xb0/xf6 -+ /x8f/xb0/xf7 -+ /x8f/xb0/xf8 -+ /x8f/xb0/xf9 -+ /x8f/xb0/xfa -+ /x8f/xb0/xfb -+ /x8f/xb0/xfc -+ /x8f/xb0/xfd -+ /x8f/xb0/xfe -+ /x8f/xb1/xa1 -+ /x8f/xb1/xa2 -+ /x8f/xb1/xa3 -+ /x8f/xb1/xa4 -+ /x8f/xb1/xa5 -+ /x8f/xb1/xa6 -+ /x8f/xb1/xa7 -+ /x8f/xb1/xa8 -+ /x8f/xb1/xa9 -+ /x8f/xb1/xaa -+ /x8f/xb1/xab -+ /x8f/xb1/xac -+ /x8f/xb1/xad -+ /x8f/xb1/xae -+ /x8f/xb1/xaf -+ /x8f/xb1/xb0 -+ /x8f/xb1/xb1 -+ /x8f/xb1/xb2 -+ /x8f/xb1/xb3 -+ /x8f/xb1/xb4 -+ /x8f/xb1/xb5 -+ /x8f/xb1/xb6 -+ /x8f/xb1/xb7 -+ /x8f/xb1/xb8 -+ /x8f/xb1/xb9 -+ /x8f/xb1/xba -+ /x8f/xb1/xbb -+ /x8f/xb1/xbc -+ /x8f/xb1/xbd -+ /x8f/xb1/xbe -+ /x8f/xb1/xbf -+ /x8f/xb1/xc0 -+ /x8f/xb1/xc1 -+ /x8f/xb1/xc2 -+ /x8f/xb1/xc3 -+ /x8f/xb1/xc4 -+ /x8f/xb1/xc5 -+ /x8f/xb1/xc6 -+ /x8f/xb1/xc7 -+ /x8f/xb1/xc8 -+ /x8f/xb1/xc9 -+ /x8f/xb1/xca -+ /x8f/xb1/xcb -+ /x8f/xb1/xcc -+ /x8f/xb1/xcd -+ /x8f/xb1/xce -+ /x8f/xb1/xcf -+ /x8f/xb1/xd0 -+ /x8f/xb1/xd1 -+ /x8f/xb1/xd2 -+ /x8f/xb1/xd3 -+ /x8f/xb1/xd4 -+ /x8f/xb1/xd5 -+ /x8f/xb1/xd6 -+ /x8f/xb1/xd7 -+ /x8f/xb1/xd8 -+ /x8f/xb1/xd9 -+ /x8f/xb1/xda -+ /x8f/xb1/xdb -+ /x8f/xb1/xdc -+ /x8f/xb1/xdd -+ /x8f/xb1/xde -+ /x8f/xb1/xdf -+ /x8f/xb1/xe0 -+ /x8f/xb1/xe1 -+ /x8f/xb1/xe2 -+ /x8f/xb1/xe3 -+ /x8f/xb1/xe4 -+ /x8f/xb1/xe5 -+ /x8f/xb1/xe6 -+ /x8f/xb1/xe7 -+ /x8f/xb1/xe8 -+ /x8f/xb1/xe9 -+ /x8f/xb1/xea -+ /x8f/xb1/xeb -+ /x8f/xb1/xec -+ /x8f/xb1/xed -+ /x8f/xb1/xee -+ /x8f/xb1/xef -+ /x8f/xb1/xf0 -+ /x8f/xb1/xf1 -+ /x8f/xb1/xf2 -+ /x8f/xb1/xf3 -+ /x8f/xb1/xf4 -+ /x8f/xb1/xf5 -+ /x8f/xb1/xf6 -+ /x8f/xb1/xf7 -+ /x8f/xb1/xf8 -+ /x8f/xb1/xf9 -+ /x8f/xb1/xfa -+ /x8f/xb1/xfb -+ /x8f/xb1/xfc -+ /x8f/xb1/xfd -+ /x8f/xb1/xfe -+ /x8f/xb2/xa1 -+ /x8f/xb2/xa2 -+ /x8f/xb2/xa3 -+ /x8f/xb2/xa4 -+ /x8f/xb2/xa5 -+ /x8f/xb2/xa6 -+ /x8f/xb2/xa7 -+ /x8f/xb2/xa8 -+ /x8f/xb2/xa9 -+ /x8f/xb2/xaa -+ /x8f/xb2/xab -+ /x8f/xb2/xac -+ /x8f/xb2/xad -+ /x8f/xb2/xae -+ /x8f/xb2/xaf -+ /x8f/xb2/xb0 -+ /x8f/xb2/xb1 -+ /x8f/xb2/xb2 -+ /x8f/xb2/xb3 -+ /x8f/xb2/xb4 -+ /x8f/xb2/xb5 -+ /x8f/xb2/xb6 -+ /x8f/xb2/xb7 -+ /x8f/xb2/xb8 -+ /x8f/xb2/xb9 -+ /x8f/xb2/xba -+ /x8f/xb2/xbb -+ /x8f/xb2/xbc -+ /x8f/xb2/xbd -+ /x8f/xb2/xbe -+ /x8f/xb2/xbf -+ /x8f/xb2/xc0 -+ /x8f/xb2/xc1 -+ /x8f/xb2/xc2 -+ /x8f/xb2/xc3 -+ /x8f/xb2/xc4 -+ /x8f/xb2/xc5 -+ /x8f/xb2/xc6 -+ /x8f/xb2/xc7 -+ /x8f/xb2/xc8 -+ /x8f/xb2/xc9 -+ /x8f/xb2/xca -+ /x8f/xb2/xcb -+ /x8f/xb2/xcc -+ /x8f/xb2/xcd -+ /x8f/xb2/xce -+ /x8f/xb2/xcf -+ /x8f/xb2/xd0 -+ /x8f/xb2/xd1 -+ /x8f/xb2/xd2 -+ /x8f/xb2/xd3 -+ /x8f/xb2/xd4 -+ /x8f/xb2/xd5 -+ /x8f/xb2/xd6 -+ /x8f/xb2/xd7 -+ /x8f/xb2/xd8 -+ /x8f/xb2/xd9 -+ /x8f/xb2/xda -+ /x8f/xb2/xdb -+ /x8f/xb2/xdc -+ /x8f/xb2/xdd -+ /x8f/xb2/xde -+ /x8f/xb2/xdf -+ /x8f/xb2/xe0 -+ /x8f/xb2/xe1 -+ /x8f/xb2/xe2 -+ /x8f/xb2/xe3 -+ /x8f/xb2/xe4 -+ /x8f/xb2/xe5 -+ /x8f/xb2/xe6 -+ /x8f/xb2/xe7 -+ /x8f/xb2/xe8 -+ /x8f/xb2/xe9 -+ /x8f/xb2/xea -+ /x8f/xb2/xeb -+ /x8f/xb2/xec -+ /x8f/xb2/xed -+ /x8f/xb2/xee -+ /x8f/xb2/xef -+ /x8f/xb2/xf0 -+ /x8f/xb2/xf1 -+ /x8f/xb2/xf2 -+ /x8f/xb2/xf3 -+ /x8f/xb2/xf4 -+ /x8f/xb2/xf5 -+ /x8f/xb2/xf6 -+ /x8f/xb2/xf7 -+ /x8f/xb2/xf8 -+ /x8f/xb2/xf9 -+ /x8f/xb2/xfa -+ /x8f/xb2/xfb -+ /x8f/xb2/xfc -+ /x8f/xb2/xfd -+ /x8f/xb2/xfe -+ /x8f/xb3/xa1 -+ /x8f/xb3/xa2 -+ /x8f/xb3/xa3 -+ /x8f/xb3/xa4 -+ /x8f/xb3/xa5 -+ /x8f/xb3/xa6 -+ /x8f/xb3/xa7 -+ /x8f/xb3/xa8 -+ /x8f/xb3/xa9 -+ /x8f/xb3/xaa -+ /x8f/xb3/xab -+ /x8f/xb3/xac -+ /x8f/xb3/xad -+ /x8f/xb3/xae -+ /x8f/xb3/xaf -+ /x8f/xb3/xb0 -+ /x8f/xb3/xb1 -+ /x8f/xb3/xb2 -+ /x8f/xb3/xb3 -+ /x8f/xb3/xb4 -+ /x8f/xb3/xb5 -+ /x8f/xb3/xb6 -+ /x8f/xb3/xb7 -+ /x8f/xb3/xb8 -+ /x8f/xb3/xb9 -+ /x8f/xb3/xba -+ /x8f/xb3/xbb -+ /x8f/xb3/xbc -+ /x8f/xb3/xbd -+ /x8f/xb3/xbe -+ /x8f/xb3/xbf -+ /x8f/xb3/xc0 -+ /x8f/xb3/xc1 -+ /x8f/xb3/xc2 -+ /x8f/xb3/xc3 -+ /x8f/xb3/xc4 -+ /x8f/xb3/xc5 -+ /x8f/xb3/xc6 -+ /x8f/xb3/xc7 -+ /x8f/xb3/xc8 -+ /x8f/xb3/xc9 -+ /x8f/xb3/xca -+ /x8f/xb3/xcb -+ /x8f/xb3/xcc -+ /x8f/xb3/xcd -+ /x8f/xb3/xce -+ /x8f/xb3/xcf -+ /x8f/xb3/xd0 -+ /x8f/xb3/xd1 -+ /x8f/xb3/xd2 -+ /x8f/xb3/xd3 -+ /x8f/xb3/xd4 -+ /x8f/xb3/xd5 -+ /x8f/xb3/xd6 -+ /x8f/xb3/xd7 -+ /x8f/xb3/xd8 -+ /x8f/xb3/xd9 -+ /x8f/xb3/xda -+ /x8f/xb3/xdb -+ /x8f/xb3/xdc -+ /x8f/xb3/xdd -+ /x8f/xb3/xde -+ /x8f/xb3/xdf -+ /x8f/xb3/xe0 -+ /x8f/xb3/xe1 -+ /x8f/xb3/xe2 -+ /x8f/xb3/xe3 -+ /x8f/xb3/xe4 -+ /x8f/xb3/xe5 -+ /x8f/xb3/xe6 -+ /x8f/xb3/xe7 -+ /x8f/xb3/xe8 -+ /x8f/xb3/xe9 -+ /x8f/xb3/xea -+ /x8f/xb3/xeb -+ /x8f/xb3/xec -+ /x8f/xb3/xed -+ /x8f/xb3/xee -+ /x8f/xb3/xef -+ /x8f/xb3/xf0 -+ /x8f/xb3/xf1 -+ /x8f/xb3/xf2 -+ /x8f/xb3/xf3 -+ /x8f/xb3/xf4 -+ /x8f/xb3/xf5 -+ /x8f/xb3/xf6 -+ /x8f/xb3/xf7 -+ /x8f/xb3/xf8 -+ /x8f/xb3/xf9 -+ /x8f/xb3/xfa -+ /x8f/xb3/xfb -+ /x8f/xb3/xfc -+ /x8f/xb3/xfd -+ /x8f/xb3/xfe -+ /x8f/xb4/xa1 -+ /x8f/xb4/xa2 -+ /x8f/xb4/xa3 -+ /x8f/xb4/xa4 -+ /x8f/xb4/xa5 -+ /x8f/xb4/xa6 -+ /x8f/xb4/xa7 -+ /x8f/xb4/xa8 -+ /x8f/xb4/xa9 -+ /x8f/xb4/xaa -+ /x8f/xb4/xab -+ /x8f/xb4/xac -+ /x8f/xb4/xad -+ /x8f/xb4/xae -+ /x8f/xb4/xaf -+ /x8f/xb4/xb0 -+ /x8f/xb4/xb1 -+ /x8f/xb4/xb2 -+ /x8f/xb4/xb3 -+ /x8f/xb4/xb4 -+ /x8f/xb4/xb5 -+ /x8f/xb4/xb6 -+ /x8f/xb4/xb7 -+ /x8f/xb4/xb8 -+ /x8f/xb4/xb9 -+ /x8f/xb4/xba -+ /x8f/xb4/xbb -+ /x8f/xb4/xbc -+ /x8f/xb4/xbd -+ /x8f/xb4/xbe -+ /x8f/xb4/xbf -+ /x8f/xb4/xc0 -+ /x8f/xb4/xc1 -+ /x8f/xb4/xc2 -+ /x8f/xb4/xc3 -+ /x8f/xb4/xc4 -+ /x8f/xb4/xc5 -+ /x8f/xb4/xc6 -+ /x8f/xb4/xc7 -+ /x8f/xb4/xc8 -+ /x8f/xb4/xc9 -+ /x8f/xb4/xca -+ /x8f/xb4/xcb -+ /x8f/xb4/xcc -+ /x8f/xb4/xcd -+ /x8f/xb4/xce -+ /x8f/xb4/xcf -+ /x8f/xb4/xd0 -+ /x8f/xb4/xd1 -+ /x8f/xb4/xd2 -+ /x8f/xb4/xd3 -+ /x8f/xb4/xd4 -+ /x8f/xb4/xd5 -+ /x8f/xb4/xd6 -+ /x8f/xb4/xd7 -+ /x8f/xb4/xd8 -+ /x8f/xb4/xd9 -+ /x8f/xb4/xda -+ /x8f/xb4/xdb -+ /x8f/xb4/xdc -+ /x8f/xb4/xdd -+ /x8f/xb4/xde -+ /x8f/xb4/xdf -+ /x8f/xb4/xe0 -+ /x8f/xb4/xe1 -+ /x8f/xb4/xe2 -+ /x8f/xb4/xe3 -+ /x8f/xb4/xe4 -+ /x8f/xb4/xe5 -+ /x8f/xb4/xe6 -+ /x8f/xb4/xe7 -+ /x8f/xb4/xe8 -+ /x8f/xb4/xe9 -+ /x8f/xb4/xea -+ /x8f/xb4/xeb -+ /x8f/xb4/xec -+ /x8f/xb4/xed -+ /x8f/xb4/xee -+ /x8f/xb4/xef -+ /x8f/xb4/xf0 -+ /x8f/xb4/xf1 -+ /x8f/xb4/xf2 -+ /x8f/xb4/xf3 -+ /x8f/xb4/xf4 -+ /x8f/xb4/xf5 -+ /x8f/xb4/xf6 -+ /x8f/xb4/xf7 -+ /x8f/xb4/xf8 -+ /x8f/xb4/xf9 -+ /x8f/xb4/xfa -+ /x8f/xb4/xfb -+ /x8f/xb4/xfc -+ /x8f/xb4/xfd -+ /x8f/xb4/xfe -+ /x8f/xb5/xa1 -+ /x8f/xb5/xa2 -+ /x8f/xb5/xa3 -+ /x8f/xb5/xa4 -+ /x8f/xb5/xa5 -+ /x8f/xb5/xa6 -+ /x8f/xb5/xa7 -+ /x8f/xb5/xa8 -+ /x8f/xb5/xa9 -+ /x8f/xb5/xaa -+ /x8f/xb5/xab -+ /x8f/xb5/xac -+ /x8f/xb5/xad -+ /x8f/xb5/xae -+ /x8f/xb5/xaf -+ /x8f/xb5/xb0 -+ /x8f/xb5/xb1 -+ /x8f/xb5/xb2 -+ /x8f/xb5/xb3 -+ /x8f/xb5/xb4 -+ /x8f/xb5/xb5 -+ /x8f/xb5/xb6 -+ /x8f/xb5/xb7 -+ /x8f/xb5/xb8 -+ /x8f/xb5/xb9 -+ /x8f/xb5/xba -+ /x8f/xb5/xbb -+ /x8f/xb5/xbc -+ /x8f/xb5/xbd -+ /x8f/xb5/xbe -+ /x8f/xb5/xbf -+ /x8f/xb5/xc0 -+ /x8f/xb5/xc1 -+ /x8f/xb5/xc2 -+ /x8f/xb5/xc3 -+ /x8f/xb5/xc4 -+ /x8f/xb5/xc5 -+ /x8f/xb5/xc6 -+ /x8f/xb5/xc7 -+ /x8f/xb5/xc8 -+ /x8f/xb5/xc9 -+ /x8f/xb5/xca -+ /x8f/xb5/xcb -+ /x8f/xb5/xcc -+ /x8f/xb5/xcd -+ /x8f/xb5/xce -+ /x8f/xb5/xcf -+ /x8f/xb5/xd0 -+ /x8f/xb5/xd1 -+ /x8f/xb5/xd2 -+ /x8f/xb5/xd3 -+ /x8f/xb5/xd4 -+ /x8f/xb5/xd5 -+ /x8f/xb5/xd6 -+ /x8f/xb5/xd7 -+ /x8f/xb5/xd8 -+ /x8f/xb5/xd9 -+ /x8f/xb5/xda -+ /x8f/xb5/xdb -+ /x8f/xb5/xdc -+ /x8f/xb5/xdd -+ /x8f/xb5/xde -+ /x8f/xb5/xdf -+ /x8f/xb5/xe0 -+ /x8f/xb5/xe1 -+ /x8f/xb5/xe2 -+ /x8f/xb5/xe3 -+ /x8f/xb5/xe4 -+ /x8f/xb5/xe5 -+ /x8f/xb5/xe6 -+ /x8f/xb5/xe7 -+ /x8f/xb5/xe8 -+ /x8f/xb5/xe9 -+ /x8f/xb5/xea -+ /x8f/xb5/xeb -+ /x8f/xb5/xec -+ /x8f/xb5/xed -+ /x8f/xb5/xee -+ /x8f/xb5/xef -+ /x8f/xb5/xf0 -+ /x8f/xb5/xf1 -+ /x8f/xb5/xf2 -+ /x8f/xb5/xf3 -+ /x8f/xb5/xf4 -+ /x8f/xb5/xf5 -+ /x8f/xb5/xf6 -+ /x8f/xb5/xf7 -+ /x8f/xb5/xf8 -+ /x8f/xb5/xf9 -+ /x8f/xb5/xfa -+ /x8f/xb5/xfb -+ /x8f/xb5/xfc -+ /x8f/xb5/xfd -+ /x8f/xb5/xfe -+ /x8f/xb6/xa1 -+ /x8f/xb6/xa2 -+ /x8f/xb6/xa3 -+ /x8f/xb6/xa4 -+ /x8f/xb6/xa5 -+ /x8f/xb6/xa6 -+ /x8f/xb6/xa7 -+ /x8f/xb6/xa8 -+ /x8f/xb6/xa9 -+ /x8f/xb6/xaa -+ /x8f/xb6/xab -+ /x8f/xb6/xac -+ /x8f/xb6/xad -+ /x8f/xb6/xae -+ /x8f/xb6/xaf -+ /x8f/xb6/xb0 -+ /x8f/xb6/xb1 -+ /x8f/xb6/xb2 -+ /x8f/xb6/xb3 -+ /x8f/xb6/xb4 -+ /x8f/xb6/xb5 -+ /x8f/xb6/xb6 -+ /x8f/xb6/xb7 -+ /x8f/xb6/xb8 -+ /x8f/xb6/xb9 -+ /x8f/xb6/xba -+ /x8f/xb6/xbb -+ /x8f/xb6/xbc -+ /x8f/xb6/xbd -+ /x8f/xb6/xbe -+ /x8f/xb6/xbf -+ /x8f/xb6/xc0 -+ /x8f/xb6/xc1 -+ /x8f/xb6/xc2 -+ /x8f/xb6/xc3 -+ /x8f/xb6/xc4 -+ /x8f/xb6/xc5 -+ /x8f/xb6/xc6 -+ /x8f/xb6/xc7 -+ /x8f/xb6/xc8 -+ /x8f/xb6/xc9 -+ /x8f/xb6/xca -+ /x8f/xb6/xcb -+ /x8f/xb6/xcc -+ /x8f/xb6/xcd -+ /x8f/xb6/xce -+ /x8f/xb6/xcf -+ /x8f/xb6/xd0 -+ /x8f/xb6/xd1 -+ /x8f/xb6/xd2 -+ /x8f/xb6/xd3 -+ /x8f/xb6/xd4 -+ /x8f/xb6/xd5 -+ /x8f/xb6/xd6 -+ /x8f/xb6/xd7 -+ /x8f/xb6/xd8 -+ /x8f/xb6/xd9 -+ /x8f/xb6/xda -+ /x8f/xb6/xdb -+ /x8f/xb6/xdc -+ /x8f/xb6/xdd -+ /x8f/xb6/xde -+ /x8f/xb6/xdf -+ /x8f/xb6/xe0 -+ /x8f/xb6/xe1 -+ /x8f/xb6/xe2 -+ /x8f/xb6/xe3 -+ /x8f/xb6/xe4 -+ /x8f/xb6/xe5 -+ /x8f/xb6/xe6 -+ /x8f/xb6/xe7 -+ /x8f/xb6/xe8 -+ /x8f/xb6/xe9 -+ /x8f/xb6/xea -+ /x8f/xb6/xeb -+ /x8f/xb6/xec -+ /x8f/xb6/xed -+ /x8f/xb6/xee -+ /x8f/xb6/xef -+ /x8f/xb6/xf0 -+ /x8f/xb6/xf1 -+ /x8f/xb6/xf2 -+ /x8f/xb6/xf3 -+ /x8f/xb6/xf4 -+ /x8f/xb6/xf5 -+ /x8f/xb6/xf6 -+ /x8f/xb6/xf7 -+ /x8f/xb6/xf8 -+ /x8f/xb6/xf9 -+ /x8f/xb6/xfa -+ /x8f/xb6/xfb -+ /x8f/xb6/xfc -+ /x8f/xb6/xfd -+ /x8f/xb6/xfe -+ /x8f/xb7/xa1 -+ /x8f/xb7/xa2 -+ /x8f/xb7/xa3 -+ /x8f/xb7/xa4 -+ /x8f/xb7/xa5 -+ /x8f/xb7/xa6 -+ /x8f/xb7/xa7 -+ /x8f/xb7/xa8 -+ /x8f/xb7/xa9 -+ /x8f/xb7/xaa -+ /x8f/xb7/xab -+ /x8f/xb7/xac -+ /x8f/xb7/xad -+ /x8f/xb7/xae -+ /x8f/xb7/xaf -+ /x8f/xb7/xb0 -+ /x8f/xb7/xb1 -+ /x8f/xb7/xb2 -+ /x8f/xb7/xb3 -+ /x8f/xb7/xb4 -+ /x8f/xb7/xb5 -+ /x8f/xb7/xb6 -+ /x8f/xb7/xb7 -+ /x8f/xb7/xb8 -+ /x8f/xb7/xb9 -+ /x8f/xb7/xba -+ /x8f/xb7/xbb -+ /x8f/xb7/xbc -+ /x8f/xb7/xbd -+ /x8f/xb7/xbe -+ /x8f/xb7/xbf -+ /x8f/xb7/xc0 -+ /x8f/xb7/xc1 -+ /x8f/xb7/xc2 -+ /x8f/xb7/xc3 -+ /x8f/xb7/xc4 -+ /x8f/xb7/xc5 -+ /x8f/xb7/xc6 -+ /x8f/xb7/xc7 -+ /x8f/xb7/xc8 -+ /x8f/xb7/xc9 -+ /x8f/xb7/xca -+ /x8f/xb7/xcb -+ /x8f/xb7/xcc -+ /x8f/xb7/xcd -+ /x8f/xb7/xce -+ /x8f/xb7/xcf -+ /x8f/xb7/xd0 -+ /x8f/xb7/xd1 -+ /x8f/xb7/xd2 -+ /x8f/xb7/xd3 -+ /x8f/xb7/xd4 -+ /x8f/xb7/xd5 -+ /x8f/xb7/xd6 -+ /x8f/xb7/xd7 -+ /x8f/xb7/xd8 -+ /x8f/xb7/xd9 -+ /x8f/xb7/xda -+ /x8f/xb7/xdb -+ /x8f/xb7/xdc -+ /x8f/xb7/xdd -+ /x8f/xb7/xde -+ /x8f/xb7/xdf -+ /x8f/xb7/xe0 -+ /x8f/xb7/xe1 -+ /x8f/xb7/xe2 -+ /x8f/xb7/xe3 -+ /x8f/xb7/xe4 -+ /x8f/xb7/xe5 -+ /x8f/xb7/xe6 -+ /x8f/xb7/xe7 -+ /x8f/xb7/xe8 -+ /x8f/xb7/xe9 -+ /x8f/xb7/xea -+ /x8f/xb7/xeb -+ /x8f/xb7/xec -+ /x8f/xb7/xed -+ /x8f/xb7/xee -+ /x8f/xb7/xef -+ /x8f/xb7/xf0 -+ /x8f/xb7/xf1 -+ /x8f/xb7/xf2 -+ /x8f/xb7/xf3 -+ /x8f/xb7/xf4 -+ /x8f/xb7/xf5 -+ /x8f/xb7/xf6 -+ /x8f/xb7/xf7 -+ /x8f/xb7/xf8 -+ /x8f/xb7/xf9 -+ /x8f/xb7/xfa -+ /x8f/xb7/xfb -+ /x8f/xb7/xfc -+ /x8f/xb7/xfd -+ /x8f/xb7/xfe -+ /x8f/xb8/xa1 -+ /x8f/xb8/xa2 -+ /x8f/xb8/xa3 -+ /x8f/xb8/xa4 -+ /x8f/xb8/xa5 -+ /x8f/xb8/xa6 -+ /x8f/xb8/xa7 -+ /x8f/xb8/xa8 -+ /x8f/xb8/xa9 -+ /x8f/xb8/xaa -+ /x8f/xb8/xab -+ /x8f/xb8/xac -+ /x8f/xb8/xad -+ /x8f/xb8/xae -+ /x8f/xb8/xaf -+ /x8f/xb8/xb0 -+ /x8f/xb8/xb1 -+ /x8f/xb8/xb2 -+ /x8f/xb8/xb3 -+ /x8f/xb8/xb4 -+ /x8f/xb8/xb5 -+ /x8f/xb8/xb6 -+ /x8f/xb8/xb7 -+ /x8f/xb8/xb8 -+ /x8f/xb8/xb9 -+ /x8f/xb8/xba -+ /x8f/xb8/xbb -+ /x8f/xb8/xbc -+ /x8f/xb8/xbd -+ /x8f/xb8/xbe -+ /x8f/xb8/xbf -+ /x8f/xb8/xc0 -+ /x8f/xb8/xc1 -+ /x8f/xb8/xc2 -+ /x8f/xb8/xc3 -+ /x8f/xb8/xc4 -+ /x8f/xb8/xc5 -+ /x8f/xb8/xc6 -+ /x8f/xb8/xc7 -+ /x8f/xb8/xc8 -+ /x8f/xb8/xc9 -+ /x8f/xb8/xca -+ /x8f/xb8/xcb -+ /x8f/xb8/xcc -+ /x8f/xb8/xcd -+ /x8f/xb8/xce -+ /x8f/xb8/xcf -+ /x8f/xb8/xd0 -+ /x8f/xb8/xd1 -+ /x8f/xb8/xd2 -+ /x8f/xb8/xd3 -+ /x8f/xb8/xd4 -+ /x8f/xb8/xd5 -+ /x8f/xb8/xd6 -+ /x8f/xb8/xd7 -+ /x8f/xb8/xd8 -+ /x8f/xb8/xd9 -+ /x8f/xb8/xda -+ /x8f/xb8/xdb -+ /x8f/xb8/xdc -+ /x8f/xb8/xdd -+ /x8f/xb8/xde -+ /x8f/xb8/xdf -+ /x8f/xb8/xe0 -+ /x8f/xb8/xe1 -+ /x8f/xb8/xe2 -+ /x8f/xb8/xe3 -+ /x8f/xb8/xe4 -+ /x8f/xb8/xe5 -+ /x8f/xb8/xe6 -+ /x8f/xb8/xe7 -+ /x8f/xb8/xe8 -+ /x8f/xb8/xe9 -+ /x8f/xb8/xea -+ /x8f/xb8/xeb -+ /x8f/xb8/xec -+ /x8f/xb8/xed -+ /x8f/xb8/xee -+ /x8f/xb8/xef -+ /x8f/xb8/xf0 -+ /x8f/xb8/xf1 -+ /x8f/xb8/xf2 -+ /x8f/xb8/xf3 -+ /x8f/xb8/xf4 -+ /x8f/xb8/xf5 -+ /x8f/xb8/xf6 -+ /x8f/xb8/xf7 -+ /x8f/xb8/xf8 -+ /x8f/xb8/xf9 -+ /x8f/xb8/xfa -+ /x8f/xb8/xfb -+ /x8f/xb8/xfc -+ /x8f/xb8/xfd -+ /x8f/xb8/xfe -+ /x8f/xb9/xa1 -+ /x8f/xb9/xa2 -+ /x8f/xb9/xa3 -+ /x8f/xb9/xa4 -+ /x8f/xb9/xa5 -+ /x8f/xb9/xa6 -+ /x8f/xb9/xa7 -+ /x8f/xb9/xa8 -+ /x8f/xb9/xa9 -+ /x8f/xb9/xaa -+ /x8f/xb9/xab -+ /x8f/xb9/xac -+ /x8f/xb9/xad -+ /x8f/xb9/xae -+ /x8f/xb9/xaf -+ /x8f/xb9/xb0 -+ /x8f/xb9/xb1 -+ /x8f/xb9/xb2 -+ /x8f/xb9/xb3 -+ /x8f/xb9/xb4 -+ /x8f/xb9/xb5 -+ /x8f/xb9/xb6 -+ /x8f/xb9/xb7 -+ /x8f/xb9/xb8 -+ /x8f/xb9/xb9 -+ /x8f/xb9/xba -+ /x8f/xb9/xbb -+ /x8f/xb9/xbc -+ /x8f/xb9/xbd -+ /x8f/xb9/xbe -+ /x8f/xb9/xbf -+ /x8f/xb9/xc0 -+ /x8f/xb9/xc1 -+ /x8f/xb9/xc2 -+ /x8f/xb9/xc3 -+ /x8f/xb9/xc4 -+ /x8f/xb9/xc5 -+ /x8f/xb9/xc6 -+ /x8f/xb9/xc7 -+ /x8f/xb9/xc8 -+ /x8f/xb9/xc9 -+ /x8f/xb9/xca -+ /x8f/xb9/xcb -+ /x8f/xb9/xcc -+ /x8f/xb9/xcd -+ /x8f/xb9/xce -+ /x8f/xb9/xcf -+ /x8f/xb9/xd0 -+ /x8f/xb9/xd1 -+ /x8f/xb9/xd2 -+ /x8f/xb9/xd3 -+ /x8f/xb9/xd4 -+ /x8f/xb9/xd5 -+ /x8f/xb9/xd6 -+ /x8f/xb9/xd7 -+ /x8f/xb9/xd8 -+ /x8f/xb9/xd9 -+ /x8f/xb9/xda -+ /x8f/xb9/xdb -+ /x8f/xb9/xdc -+ /x8f/xb9/xdd -+ /x8f/xb9/xde -+ /x8f/xb9/xdf -+ /x8f/xb9/xe0 -+ /x8f/xb9/xe1 -+ /x8f/xb9/xe2 -+ /x8f/xb9/xe3 -+ /x8f/xb9/xe4 -+ /x8f/xb9/xe5 -+ /x8f/xb9/xe6 -+ /x8f/xb9/xe7 -+ /x8f/xb9/xe8 -+ /x8f/xb9/xe9 -+ /x8f/xb9/xea -+ /x8f/xb9/xeb -+ /x8f/xb9/xec -+ /x8f/xb9/xed -+ /x8f/xb9/xee -+ /x8f/xb9/xef -+ /x8f/xb9/xf0 -+ /x8f/xb9/xf1 -+ /x8f/xb9/xf2 -+ /x8f/xb9/xf3 -+ /x8f/xb9/xf4 -+ /x8f/xb9/xf5 -+ /x8f/xb9/xf6 -+ /x8f/xb9/xf7 -+ /x8f/xb9/xf8 -+ /x8f/xb9/xf9 -+ /x8f/xb9/xfa -+ /x8f/xb9/xfb -+ /x8f/xb9/xfc -+ /x8f/xb9/xfd -+ /x8f/xb9/xfe -+ /x8f/xba/xa1 -+ /x8f/xba/xa2 -+ /x8f/xba/xa3 -+ /x8f/xba/xa4 -+ /x8f/xba/xa5 -+ /x8f/xba/xa6 -+ /x8f/xba/xa7 -+ /x8f/xba/xa8 -+ /x8f/xba/xa9 -+ /x8f/xba/xaa -+ /x8f/xba/xab -+ /x8f/xba/xac -+ /x8f/xba/xad -+ /x8f/xba/xae -+ /x8f/xba/xaf -+ /x8f/xba/xb0 -+ /x8f/xba/xb1 -+ /x8f/xba/xb2 -+ /x8f/xba/xb3 -+ /x8f/xba/xb4 -+ /x8f/xba/xb5 -+ /x8f/xba/xb6 -+ /x8f/xba/xb7 -+ /x8f/xba/xb8 -+ /x8f/xba/xb9 -+ /x8f/xba/xba -+ /x8f/xba/xbb -+ /x8f/xba/xbc -+ /x8f/xba/xbd -+ /x8f/xba/xbe -+ /x8f/xba/xbf -+ /x8f/xba/xc0 -+ /x8f/xba/xc1 -+ /x8f/xba/xc2 -+ /x8f/xba/xc3 -+ /x8f/xba/xc4 -+ /x8f/xba/xc5 -+ /x8f/xba/xc6 -+ /x8f/xba/xc7 -+ /x8f/xba/xc8 -+ /x8f/xba/xc9 -+ /x8f/xba/xca -+ /x8f/xba/xcb -+ /x8f/xba/xcc -+ /x8f/xba/xcd -+ /x8f/xba/xce -+ /x8f/xba/xcf -+ /x8f/xba/xd0 -+ /x8f/xba/xd1 -+ /x8f/xba/xd2 -+ /x8f/xba/xd3 -+ /x8f/xba/xd4 -+ /x8f/xba/xd5 -+ /x8f/xba/xd6 -+ /x8f/xba/xd7 -+ /x8f/xba/xd8 -+ /x8f/xba/xd9 -+ /x8f/xba/xda -+ /x8f/xba/xdb -+ /x8f/xba/xdc -+ /x8f/xba/xdd -+ /x8f/xba/xde -+ /x8f/xba/xdf -+ /x8f/xba/xe0 -+ /x8f/xba/xe1 -+ /x8f/xba/xe2 -+ /x8f/xba/xe3 -+ /x8f/xba/xe4 -+ /x8f/xba/xe5 -+ /x8f/xba/xe6 -+ /x8f/xba/xe7 -+ /x8f/xba/xe8 -+ /x8f/xba/xe9 -+ /x8f/xba/xea -+ /x8f/xba/xeb -+ /x8f/xba/xec -+ /x8f/xba/xed -+ /x8f/xba/xee -+ /x8f/xba/xef -+ /x8f/xba/xf0 -+ /x8f/xba/xf1 -+ /x8f/xba/xf2 -+ /x8f/xba/xf3 -+ /x8f/xba/xf4 -+ /x8f/xba/xf5 -+ /x8f/xba/xf6 -+ /x8f/xba/xf7 -+ /x8f/xba/xf8 -+ /x8f/xba/xf9 -+ /x8f/xba/xfa -+ /x8f/xba/xfb -+ /x8f/xba/xfc -+ /x8f/xba/xfd -+ /x8f/xba/xfe -+ /x8f/xbb/xa1 -+ /x8f/xbb/xa2 -+ /x8f/xbb/xa3 -+ /x8f/xbb/xa4 -+ /x8f/xbb/xa5 -+ /x8f/xbb/xa6 -+ /x8f/xbb/xa7 -+ /x8f/xbb/xa8 -+ /x8f/xbb/xa9 -+ /x8f/xbb/xaa -+ /x8f/xbb/xab -+ /x8f/xbb/xac -+ /x8f/xbb/xad -+ /x8f/xbb/xae -+ /x8f/xbb/xaf -+ /x8f/xbb/xb0 -+ /x8f/xbb/xb1 -+ /x8f/xbb/xb2 -+ /x8f/xbb/xb3 -+ /x8f/xbb/xb4 -+ /x8f/xbb/xb5 -+ /x8f/xbb/xb6 -+ /x8f/xbb/xb7 -+ /x8f/xbb/xb8 -+ /x8f/xbb/xb9 -+ /x8f/xbb/xba -+ /x8f/xbb/xbb -+ /x8f/xbb/xbc -+ /x8f/xbb/xbd -+ /x8f/xbb/xbe -+ /x8f/xbb/xbf -+ /x8f/xbb/xc0 -+ /x8f/xbb/xc1 -+ /x8f/xbb/xc2 -+ /x8f/xbb/xc3 -+ /x8f/xbb/xc4 -+ /x8f/xbb/xc5 -+ /x8f/xbb/xc6 -+ /x8f/xbb/xc7 -+ /x8f/xbb/xc8 -+ /x8f/xbb/xc9 -+ /x8f/xbb/xca -+ /x8f/xbb/xcb -+ /x8f/xbb/xcc -+ /x8f/xbb/xcd -+ /x8f/xbb/xce -+ /x8f/xbb/xcf -+ /x8f/xbb/xd0 -+ /x8f/xbb/xd1 -+ /x8f/xbb/xd2 -+ /x8f/xbb/xd3 -+ /x8f/xbb/xd4 -+ /x8f/xbb/xd5 -+ /x8f/xbb/xd6 -+ /x8f/xbb/xd7 -+ /x8f/xbb/xd8 -+ /x8f/xbb/xd9 -+ /x8f/xbb/xda -+ /x8f/xbb/xdb -+ /x8f/xbb/xdc -+ /x8f/xbb/xdd -+ /x8f/xbb/xde -+ /x8f/xbb/xdf -+ /x8f/xbb/xe0 -+ /x8f/xbb/xe1 -+ /x8f/xbb/xe2 -+ /x8f/xbb/xe3 -+ /x8f/xbb/xe4 -+ /x8f/xbb/xe5 -+ /x8f/xbb/xe6 -+ /x8f/xbb/xe7 -+ /x8f/xbb/xe8 -+ /x8f/xbb/xe9 -+ /x8f/xbb/xea -+ /x8f/xbb/xeb -+ /x8f/xbb/xec -+ /x8f/xbb/xed -+ /x8f/xbb/xee -+ /x8f/xbb/xef -+ /x8f/xbb/xf0 -+ /x8f/xbb/xf1 -+ /x8f/xbb/xf2 -+ /x8f/xbb/xf3 -+ /x8f/xbb/xf4 -+ /x8f/xbb/xf5 -+ /x8f/xbb/xf6 -+ /x8f/xbb/xf7 -+ /x8f/xbb/xf8 -+ /x8f/xbb/xf9 -+ /x8f/xbb/xfa -+ /x8f/xbb/xfb -+ /x8f/xbb/xfc -+ /x8f/xbb/xfd -+ /x8f/xbb/xfe -+ /x8f/xbc/xa1 -+ /x8f/xbc/xa2 -+ /x8f/xbc/xa3 -+ /x8f/xbc/xa4 -+ /x8f/xbc/xa5 -+ /x8f/xbc/xa6 -+ /x8f/xbc/xa7 -+ /x8f/xbc/xa8 -+ /x8f/xbc/xa9 -+ /x8f/xbc/xaa -+ /x8f/xbc/xab -+ /x8f/xbc/xac -+ /x8f/xbc/xad -+ /x8f/xbc/xae -+ /x8f/xbc/xaf -+ /x8f/xbc/xb0 -+ /x8f/xbc/xb1 -+ /x8f/xbc/xb2 -+ /x8f/xbc/xb3 -+ /x8f/xbc/xb4 -+ /x8f/xbc/xb5 -+ /x8f/xbc/xb6 -+ /x8f/xbc/xb7 -+ /x8f/xbc/xb8 -+ /x8f/xbc/xb9 -+ /x8f/xbc/xba -+ /x8f/xbc/xbb -+ /x8f/xbc/xbc -+ /x8f/xbc/xbd -+ /x8f/xbc/xbe -+ /x8f/xbc/xbf -+ /x8f/xbc/xc0 -+ /x8f/xbc/xc1 -+ /x8f/xbc/xc2 -+ /x8f/xbc/xc3 -+ /x8f/xbc/xc4 -+ /x8f/xbc/xc5 -+ /x8f/xbc/xc6 -+ /x8f/xbc/xc7 -+ /x8f/xbc/xc8 -+ /x8f/xbc/xc9 -+ /x8f/xbc/xca -+ /x8f/xbc/xcb -+ /x8f/xbc/xcc -+ /x8f/xbc/xcd -+ /x8f/xbc/xce -+ /x8f/xbc/xcf -+ /x8f/xbc/xd0 -+ /x8f/xbc/xd1 -+ /x8f/xbc/xd2 -+ /x8f/xbc/xd3 -+ /x8f/xbc/xd4 -+ /x8f/xbc/xd5 -+ /x8f/xbc/xd6 -+ /x8f/xbc/xd7 -+ /x8f/xbc/xd8 -+ /x8f/xbc/xd9 -+ /x8f/xbc/xda -+ /x8f/xbc/xdb -+ /x8f/xbc/xdc -+ /x8f/xbc/xdd -+ /x8f/xbc/xde -+ /x8f/xbc/xdf -+ /x8f/xbc/xe0 -+ /x8f/xbc/xe1 -+ /x8f/xbc/xe2 -+ /x8f/xbc/xe3 -+ /x8f/xbc/xe4 -+ /x8f/xbc/xe5 -+ /x8f/xbc/xe6 -+ /x8f/xbc/xe7 -+ /x8f/xbc/xe8 -+ /x8f/xbc/xe9 -+ /x8f/xbc/xea -+ /x8f/xbc/xeb -+ /x8f/xbc/xec -+ /x8f/xbc/xed -+ /x8f/xbc/xee -+ /x8f/xbc/xef -+ /x8f/xbc/xf0 -+ /x8f/xbc/xf1 -+ /x8f/xbc/xf2 -+ /x8f/xbc/xf3 -+ /x8f/xbc/xf4 -+ /x8f/xbc/xf5 -+ /x8f/xbc/xf6 -+ /x8f/xbc/xf7 -+ /x8f/xbc/xf8 -+ /x8f/xbc/xf9 -+ /x8f/xbc/xfa -+ /x8f/xbc/xfb -+ /x8f/xbc/xfc -+ /x8f/xbc/xfd -+ /x8f/xbc/xfe -+ /x8f/xbd/xa1 -+ /x8f/xbd/xa2 -+ /x8f/xbd/xa3 -+ /x8f/xbd/xa4 -+ /x8f/xbd/xa5 -+ /x8f/xbd/xa6 -+ /x8f/xbd/xa7 -+ /x8f/xbd/xa8 -+ /x8f/xbd/xa9 -+ /x8f/xbd/xaa -+ /x8f/xbd/xab -+ /x8f/xbd/xac -+ /x8f/xbd/xad -+ /x8f/xbd/xae -+ /x8f/xbd/xaf -+ /x8f/xbd/xb0 -+ /x8f/xbd/xb1 -+ /x8f/xbd/xb2 -+ /x8f/xbd/xb3 -+ /x8f/xbd/xb4 -+ /x8f/xbd/xb5 -+ /x8f/xbd/xb6 -+ /x8f/xbd/xb7 -+ /x8f/xbd/xb8 -+ /x8f/xbd/xb9 -+ /x8f/xbd/xba -+ /x8f/xbd/xbb -+ /x8f/xbd/xbc -+ /x8f/xbd/xbd -+ /x8f/xbd/xbe -+ /x8f/xbd/xbf -+ /x8f/xbd/xc0 -+ /x8f/xbd/xc1 -+ /x8f/xbd/xc2 -+ /x8f/xbd/xc3 -+ /x8f/xbd/xc4 -+ /x8f/xbd/xc5 -+ /x8f/xbd/xc6 -+ /x8f/xbd/xc7 -+ /x8f/xbd/xc8 -+ /x8f/xbd/xc9 -+ /x8f/xbd/xca -+ /x8f/xbd/xcb -+ /x8f/xbd/xcc -+ /x8f/xbd/xcd -+ /x8f/xbd/xce -+ /x8f/xbd/xcf -+ /x8f/xbd/xd0 -+ /x8f/xbd/xd1 -+ /x8f/xbd/xd2 -+ /x8f/xbd/xd3 -+ /x8f/xbd/xd4 -+ /x8f/xbd/xd5 -+ /x8f/xbd/xd6 -+ /x8f/xbd/xd7 -+ /x8f/xbd/xd8 -+ /x8f/xbd/xd9 -+ /x8f/xbd/xda -+ /x8f/xbd/xdb -+ /x8f/xbd/xdc -+ /x8f/xbd/xdd -+ /x8f/xbd/xde -+ /x8f/xbd/xdf -+ /x8f/xbd/xe0 -+ /x8f/xbd/xe1 -+ /x8f/xbd/xe2 -+ /x8f/xbd/xe3 -+ /x8f/xbd/xe4 -+ /x8f/xbd/xe5 -+ /x8f/xbd/xe6 -+ /x8f/xbd/xe7 -+ /x8f/xbd/xe8 -+ /x8f/xbd/xe9 -+ /x8f/xbd/xea -+ /x8f/xbd/xeb -+ /x8f/xbd/xec -+ /x8f/xbd/xed -+ /x8f/xbd/xee -+ /x8f/xbd/xef -+ /x8f/xbd/xf0 -+ /x8f/xbd/xf1 -+ /x8f/xbd/xf2 -+ /x8f/xbd/xf3 -+ /x8f/xbd/xf4 -+ /x8f/xbd/xf5 -+ /x8f/xbd/xf6 -+ /x8f/xbd/xf7 -+ /x8f/xbd/xf8 -+ /x8f/xbd/xf9 -+ /x8f/xbd/xfa -+ /x8f/xbd/xfb -+ /x8f/xbd/xfc -+ /x8f/xbd/xfd -+ /x8f/xbd/xfe -+ /x8f/xbe/xa1 -+ /x8f/xbe/xa2 -+ /x8f/xbe/xa3 -+ /x8f/xbe/xa4 -+ /x8f/xbe/xa5 -+ /x8f/xbe/xa6 -+ /x8f/xbe/xa7 -+ /x8f/xbe/xa8 -+ /x8f/xbe/xa9 -+ /x8f/xbe/xaa -+ /x8f/xbe/xab -+ /x8f/xbe/xac -+ /x8f/xbe/xad -+ /x8f/xbe/xae -+ /x8f/xbe/xaf -+ /x8f/xbe/xb0 -+ /x8f/xbe/xb1 -+ /x8f/xbe/xb2 -+ /x8f/xbe/xb3 -+ /x8f/xbe/xb4 -+ /x8f/xbe/xb5 -+ /x8f/xbe/xb6 -+ /x8f/xbe/xb7 -+ /x8f/xbe/xb8 -+ /x8f/xbe/xb9 -+ /x8f/xbe/xba -+ /x8f/xbe/xbb -+ /x8f/xbe/xbc -+ /x8f/xbe/xbd -+ /x8f/xbe/xbe -+ /x8f/xbe/xbf -+ /x8f/xbe/xc0 -+ /x8f/xbe/xc1 -+ /x8f/xbe/xc2 -+ /x8f/xbe/xc3 -+ /x8f/xbe/xc4 -+ /x8f/xbe/xc5 -+ /x8f/xbe/xc6 -+ /x8f/xbe/xc7 -+ /x8f/xbe/xc8 -+ /x8f/xbe/xc9 -+ /x8f/xbe/xca -+ /x8f/xbe/xcb -+ /x8f/xbe/xcc -+ /x8f/xbe/xcd -+ /x8f/xbe/xce -+ /x8f/xbe/xcf -+ /x8f/xbe/xd0 -+ /x8f/xbe/xd1 -+ /x8f/xbe/xd2 -+ /x8f/xbe/xd3 -+ /x8f/xbe/xd4 -+ /x8f/xbe/xd5 -+ /x8f/xbe/xd6 -+ /x8f/xbe/xd7 -+ /x8f/xbe/xd8 -+ /x8f/xbe/xd9 -+ /x8f/xbe/xda -+ /x8f/xbe/xdb -+ /x8f/xbe/xdc -+ /x8f/xbe/xdd -+ /x8f/xbe/xde -+ /x8f/xbe/xdf -+ /x8f/xbe/xe0 -+ /x8f/xbe/xe1 -+ /x8f/xbe/xe2 -+ /x8f/xbe/xe3 -+ /x8f/xbe/xe4 -+ /x8f/xbe/xe5 -+ /x8f/xbe/xe6 -+ /x8f/xbe/xe7 -+ /x8f/xbe/xe8 -+ /x8f/xbe/xe9 -+ /x8f/xbe/xea -+ /x8f/xbe/xeb -+ /x8f/xbe/xec -+ /x8f/xbe/xed -+ /x8f/xbe/xee -+ /x8f/xbe/xef -+ /x8f/xbe/xf0 -+ /x8f/xbe/xf1 -+ /x8f/xbe/xf2 -+ /x8f/xbe/xf3 -+ /x8f/xbe/xf4 -+ /x8f/xbe/xf5 -+ /x8f/xbe/xf6 -+ /x8f/xbe/xf7 -+ /x8f/xbe/xf8 -+ /x8f/xbe/xf9 -+ /x8f/xbe/xfa -+ /x8f/xbe/xfb -+ /x8f/xbe/xfc -+ /x8f/xbe/xfd -+ /x8f/xbe/xfe -+ /x8f/xbf/xa1 -+ /x8f/xbf/xa2 -+ /x8f/xbf/xa3 -+ /x8f/xbf/xa4 -+ /x8f/xbf/xa5 -+ /x8f/xbf/xa6 -+ /x8f/xbf/xa7 -+ /x8f/xbf/xa8 -+ /x8f/xbf/xa9 -+ /x8f/xbf/xaa -+ /x8f/xbf/xab -+ /x8f/xbf/xac -+ /x8f/xbf/xad -+ /x8f/xbf/xae -+ /x8f/xbf/xaf -+ /x8f/xbf/xb0 -+ /x8f/xbf/xb1 -+ /x8f/xbf/xb2 -+ /x8f/xbf/xb3 -+ /x8f/xbf/xb4 -+ /x8f/xbf/xb5 -+ /x8f/xbf/xb6 -+ /x8f/xbf/xb7 -+ /x8f/xbf/xb8 -+ /x8f/xbf/xb9 -+ /x8f/xbf/xba -+ /x8f/xbf/xbb -+ /x8f/xbf/xbc -+ /x8f/xbf/xbd -+ /x8f/xbf/xbe -+ /x8f/xbf/xbf -+ /x8f/xbf/xc0 -+ /x8f/xbf/xc1 -+ /x8f/xbf/xc2 -+ /x8f/xbf/xc3 -+ /x8f/xbf/xc4 -+ /x8f/xbf/xc5 -+ /x8f/xbf/xc6 -+ /x8f/xbf/xc7 -+ /x8f/xbf/xc8 -+ /x8f/xbf/xc9 -+ /x8f/xbf/xca -+ /x8f/xbf/xcb -+ /x8f/xbf/xcc -+ /x8f/xbf/xcd -+ /x8f/xbf/xce -+ /x8f/xbf/xcf -+ /x8f/xbf/xd0 -+ /x8f/xbf/xd1 -+ /x8f/xbf/xd2 -+ /x8f/xbf/xd3 -+ /x8f/xbf/xd4 -+ /x8f/xbf/xd5 -+ /x8f/xbf/xd6 -+ /x8f/xbf/xd7 -+ /x8f/xbf/xd8 -+ /x8f/xbf/xd9 -+ /x8f/xbf/xda -+ /x8f/xbf/xdb -+ /x8f/xbf/xdc -+ /x8f/xbf/xdd -+ /x8f/xbf/xde -+ /x8f/xbf/xdf -+ /x8f/xbf/xe0 -+ /x8f/xbf/xe1 -+ /x8f/xbf/xe2 -+ /x8f/xbf/xe3 -+ /x8f/xbf/xe4 -+ /x8f/xbf/xe5 -+ /x8f/xbf/xe6 -+ /x8f/xbf/xe7 -+ /x8f/xbf/xe8 -+ /x8f/xbf/xe9 -+ /x8f/xbf/xea -+ /x8f/xbf/xeb -+ /x8f/xbf/xec -+ /x8f/xbf/xed -+ /x8f/xbf/xee -+ /x8f/xbf/xef -+ /x8f/xbf/xf0 -+ /x8f/xbf/xf1 -+ /x8f/xbf/xf2 -+ /x8f/xbf/xf3 -+ /x8f/xbf/xf4 -+ /x8f/xbf/xf5 -+ /x8f/xbf/xf6 -+ /x8f/xbf/xf7 -+ /x8f/xbf/xf8 -+ /x8f/xbf/xf9 -+ /x8f/xbf/xfa -+ /x8f/xbf/xfb -+ /x8f/xbf/xfc -+ /x8f/xbf/xfd -+ /x8f/xbf/xfe -+ /x8f/xc0/xa1 -+ /x8f/xc0/xa2 -+ /x8f/xc0/xa3 -+ /x8f/xc0/xa4 -+ /x8f/xc0/xa5 -+ /x8f/xc0/xa6 -+ /x8f/xc0/xa7 -+ /x8f/xc0/xa8 -+ /x8f/xc0/xa9 -+ /x8f/xc0/xaa -+ /x8f/xc0/xab -+ /x8f/xc0/xac -+ /x8f/xc0/xad -+ /x8f/xc0/xae -+ /x8f/xc0/xaf -+ /x8f/xc0/xb0 -+ /x8f/xc0/xb1 -+ /x8f/xc0/xb2 -+ /x8f/xc0/xb3 -+ /x8f/xc0/xb4 -+ /x8f/xc0/xb5 -+ /x8f/xc0/xb6 -+ /x8f/xc0/xb7 -+ /x8f/xc0/xb8 -+ /x8f/xc0/xb9 -+ /x8f/xc0/xba -+ /x8f/xc0/xbb -+ /x8f/xc0/xbc -+ /x8f/xc0/xbd -+ /x8f/xc0/xbe -+ /x8f/xc0/xbf -+ /x8f/xc0/xc0 -+ /x8f/xc0/xc1 -+ /x8f/xc0/xc2 -+ /x8f/xc0/xc3 -+ /x8f/xc0/xc4 -+ /x8f/xc0/xc5 -+ /x8f/xc0/xc6 -+ /x8f/xc0/xc7 -+ /x8f/xc0/xc8 -+ /x8f/xc0/xc9 -+ /x8f/xc0/xca -+ /x8f/xc0/xcb -+ /x8f/xc0/xcc -+ /x8f/xc0/xcd -+ /x8f/xc0/xce -+ /x8f/xc0/xcf -+ /x8f/xc0/xd0 -+ /x8f/xc0/xd1 -+ /x8f/xc0/xd2 -+ /x8f/xc0/xd3 -+ /x8f/xc0/xd4 -+ /x8f/xc0/xd5 -+ /x8f/xc0/xd6 -+ /x8f/xc0/xd7 -+ /x8f/xc0/xd8 -+ /x8f/xc0/xd9 -+ /x8f/xc0/xda -+ /x8f/xc0/xdb -+ /x8f/xc0/xdc -+ /x8f/xc0/xdd -+ /x8f/xc0/xde -+ /x8f/xc0/xdf -+ /x8f/xc0/xe0 -+ /x8f/xc0/xe1 -+ /x8f/xc0/xe2 -+ /x8f/xc0/xe3 -+ /x8f/xc0/xe4 -+ /x8f/xc0/xe5 -+ /x8f/xc0/xe6 -+ /x8f/xc0/xe7 -+ /x8f/xc0/xe8 -+ /x8f/xc0/xe9 -+ /x8f/xc0/xea -+ /x8f/xc0/xeb -+ /x8f/xc0/xec -+ /x8f/xc0/xed -+ /x8f/xc0/xee -+ /x8f/xc0/xef -+ /x8f/xc0/xf0 -+ /x8f/xc0/xf1 -+ /x8f/xc0/xf2 -+ /x8f/xc0/xf3 -+ /x8f/xc0/xf4 -+ /x8f/xc0/xf5 -+ /x8f/xc0/xf6 -+ /x8f/xc0/xf7 -+ /x8f/xc0/xf8 -+ /x8f/xc0/xf9 -+ /x8f/xc0/xfa -+ /x8f/xc0/xfb -+ /x8f/xc0/xfc -+ /x8f/xc0/xfd -+ /x8f/xc0/xfe -+ /x8f/xc1/xa1 -+ /x8f/xc1/xa2 -+ /x8f/xc1/xa3 -+ /x8f/xc1/xa4 -+ /x8f/xc1/xa5 -+ /x8f/xc1/xa6 -+ /x8f/xc1/xa7 -+ /x8f/xc1/xa8 -+ /x8f/xc1/xa9 -+ /x8f/xc1/xaa -+ /x8f/xc1/xab -+ /x8f/xc1/xac -+ /x8f/xc1/xad -+ /x8f/xc1/xae -+ /x8f/xc1/xaf -+ /x8f/xc1/xb0 -+ /x8f/xc1/xb1 -+ /x8f/xc1/xb2 -+ /x8f/xc1/xb3 -+ /x8f/xc1/xb4 -+ /x8f/xc1/xb5 -+ /x8f/xc1/xb6 -+ /x8f/xc1/xb7 -+ /x8f/xc1/xb8 -+ /x8f/xc1/xb9 -+ /x8f/xc1/xba -+ /x8f/xc1/xbb -+ /x8f/xc1/xbc -+ /x8f/xc1/xbd -+ /x8f/xc1/xbe -+ /x8f/xc1/xbf -+ /x8f/xc1/xc0 -+ /x8f/xc1/xc1 -+ /x8f/xc1/xc2 -+ /x8f/xc1/xc3 -+ /x8f/xc1/xc4 -+ /x8f/xc1/xc5 -+ /x8f/xc1/xc6 -+ /x8f/xc1/xc7 -+ /x8f/xc1/xc8 -+ /x8f/xc1/xc9 -+ /x8f/xc1/xca -+ /x8f/xc1/xcb -+ /x8f/xc1/xcc -+ /x8f/xc1/xcd -+ /x8f/xc1/xce -+ /x8f/xc1/xcf -+ /x8f/xc1/xd0 -+ /x8f/xc1/xd1 -+ /x8f/xc1/xd2 -+ /x8f/xc1/xd3 -+ /x8f/xc1/xd4 -+ /x8f/xc1/xd5 -+ /x8f/xc1/xd6 -+ /x8f/xc1/xd7 -+ /x8f/xc1/xd8 -+ /x8f/xc1/xd9 -+ /x8f/xc1/xda -+ /x8f/xc1/xdb -+ /x8f/xc1/xdc -+ /x8f/xc1/xdd -+ /x8f/xc1/xde -+ /x8f/xc1/xdf -+ /x8f/xc1/xe0 -+ /x8f/xc1/xe1 -+ /x8f/xc1/xe2 -+ /x8f/xc1/xe3 -+ /x8f/xc1/xe4 -+ /x8f/xc1/xe5 -+ /x8f/xc1/xe6 -+ /x8f/xc1/xe7 -+ /x8f/xc1/xe8 -+ /x8f/xc1/xe9 -+ /x8f/xc1/xea -+ /x8f/xc1/xeb -+ /x8f/xc1/xec -+ /x8f/xc1/xed -+ /x8f/xc1/xee -+ /x8f/xc1/xef -+ /x8f/xc1/xf0 -+ /x8f/xc1/xf1 -+ /x8f/xc1/xf2 -+ /x8f/xc1/xf3 -+ /x8f/xc1/xf4 -+ /x8f/xc1/xf5 -+ /x8f/xc1/xf6 -+ /x8f/xc1/xf7 -+ /x8f/xc1/xf8 -+ /x8f/xc1/xf9 -+ /x8f/xc1/xfa -+ /x8f/xc1/xfb -+ /x8f/xc1/xfc -+ /x8f/xc1/xfd -+ /x8f/xc1/xfe -+ /x8f/xc2/xa1 -+ /x8f/xc2/xa2 -+ /x8f/xc2/xa3 -+ /x8f/xc2/xa4 -+ /x8f/xc2/xa5 -+ /x8f/xc2/xa6 -+ /x8f/xc2/xa7 -+ /x8f/xc2/xa8 -+ /x8f/xc2/xa9 -+ /x8f/xc2/xaa -+ /x8f/xc2/xab -+ /x8f/xc2/xac -+ /x8f/xc2/xad -+ /x8f/xc2/xae -+ /x8f/xc2/xaf -+ /x8f/xc2/xb0 -+ /x8f/xc2/xb1 -+ /x8f/xc2/xb2 -+ /x8f/xc2/xb3 -+ /x8f/xc2/xb4 -+ /x8f/xc2/xb5 -+ /x8f/xc2/xb6 -+ /x8f/xc2/xb7 -+ /x8f/xc2/xb8 -+ /x8f/xc2/xb9 -+ /x8f/xc2/xba -+ /x8f/xc2/xbb -+ /x8f/xc2/xbc -+ /x8f/xc2/xbd -+ /x8f/xc2/xbe -+ /x8f/xc2/xbf -+ /x8f/xc2/xc0 -+ /x8f/xc2/xc1 -+ /x8f/xc2/xc2 -+ /x8f/xc2/xc3 -+ /x8f/xc2/xc4 -+ /x8f/xc2/xc5 -+ /x8f/xc2/xc6 -+ /x8f/xc2/xc7 -+ /x8f/xc2/xc8 -+ /x8f/xc2/xc9 -+ /x8f/xc2/xca -+ /x8f/xc2/xcb -+ /x8f/xc2/xcc -+ /x8f/xc2/xcd -+ /x8f/xc2/xce -+ /x8f/xc2/xcf -+ /x8f/xc2/xd0 -+ /x8f/xc2/xd1 -+ /x8f/xc2/xd2 -+ /x8f/xc2/xd3 -+ /x8f/xc2/xd4 -+ /x8f/xc2/xd5 -+ /x8f/xc2/xd6 -+ /x8f/xc2/xd7 -+ /x8f/xc2/xd8 -+ /x8f/xc2/xd9 -+ /x8f/xc2/xda -+ /x8f/xc2/xdb -+ /x8f/xc2/xdc -+ /x8f/xc2/xdd -+ /x8f/xc2/xde -+ /x8f/xc2/xdf -+ /x8f/xc2/xe0 -+ /x8f/xc2/xe1 -+ /x8f/xc2/xe2 -+ /x8f/xc2/xe3 -+ /x8f/xc2/xe4 -+ /x8f/xc2/xe5 -+ /x8f/xc2/xe6 -+ /x8f/xc2/xe7 -+ /x8f/xc2/xe8 -+ /x8f/xc2/xe9 -+ /x8f/xc2/xea -+ /x8f/xc2/xeb -+ /x8f/xc2/xec -+ /x8f/xc2/xed -+ /x8f/xc2/xee -+ /x8f/xc2/xef -+ /x8f/xc2/xf0 -+ /x8f/xc2/xf1 -+ /x8f/xc2/xf2 -+ /x8f/xc2/xf3 -+ /x8f/xc2/xf4 -+ /x8f/xc2/xf5 -+ /x8f/xc2/xf6 -+ /x8f/xc2/xf7 -+ /x8f/xc2/xf8 -+ /x8f/xc2/xf9 -+ /x8f/xc2/xfa -+ /x8f/xc2/xfb -+ /x8f/xc2/xfc -+ /x8f/xc2/xfd -+ /x8f/xc2/xfe -+ /x8f/xc3/xa1 -+ /x8f/xc3/xa2 -+ /x8f/xc3/xa3 -+ /x8f/xc3/xa4 -+ /x8f/xc3/xa5 -+ /x8f/xc3/xa6 -+ /x8f/xc3/xa7 -+ /x8f/xc3/xa8 -+ /x8f/xc3/xa9 -+ /x8f/xc3/xaa -+ /x8f/xc3/xab -+ /x8f/xc3/xac -+ /x8f/xc3/xad -+ /x8f/xc3/xae -+ /x8f/xc3/xaf -+ /x8f/xc3/xb0 -+ /x8f/xc3/xb1 -+ /x8f/xc3/xb2 -+ /x8f/xc3/xb3 -+ /x8f/xc3/xb4 -+ /x8f/xc3/xb5 -+ /x8f/xc3/xb6 -+ /x8f/xc3/xb7 -+ /x8f/xc3/xb8 -+ /x8f/xc3/xb9 -+ /x8f/xc3/xba -+ /x8f/xc3/xbb -+ /x8f/xc3/xbc -+ /x8f/xc3/xbd -+ /x8f/xc3/xbe -+ /x8f/xc3/xbf -+ /x8f/xc3/xc0 -+ /x8f/xc3/xc1 -+ /x8f/xc3/xc2 -+ /x8f/xc3/xc3 -+ /x8f/xc3/xc4 -+ /x8f/xc3/xc5 -+ /x8f/xc3/xc6 -+ /x8f/xc3/xc7 -+ /x8f/xc3/xc8 -+ /x8f/xc3/xc9 -+ /x8f/xc3/xca -+ /x8f/xc3/xcb -+ /x8f/xc3/xcc -+ /x8f/xc3/xcd -+ /x8f/xc3/xce -+ /x8f/xc3/xcf -+ /x8f/xc3/xd0 -+ /x8f/xc3/xd1 -+ /x8f/xc3/xd2 -+ /x8f/xc3/xd3 -+ /x8f/xc3/xd4 -+ /x8f/xc3/xd5 -+ /x8f/xc3/xd6 -+ /x8f/xc3/xd7 -+ /x8f/xc3/xd8 -+ /x8f/xc3/xd9 -+ /x8f/xc3/xda -+ /x8f/xc3/xdb -+ /x8f/xc3/xdc -+ /x8f/xc3/xdd -+ /x8f/xc3/xde -+ /x8f/xc3/xdf -+ /x8f/xc3/xe0 -+ /x8f/xc3/xe1 -+ /x8f/xc3/xe2 -+ /x8f/xc3/xe3 -+ /x8f/xc3/xe4 -+ /x8f/xc3/xe5 -+ /x8f/xc3/xe6 -+ /x8f/xc3/xe7 -+ /x8f/xc3/xe8 -+ /x8f/xc3/xe9 -+ /x8f/xc3/xea -+ /x8f/xc3/xeb -+ /x8f/xc3/xec -+ /x8f/xc3/xed -+ /x8f/xc3/xee -+ /x8f/xc3/xef -+ /x8f/xc3/xf0 -+ /x8f/xc3/xf1 -+ /x8f/xc3/xf2 -+ /x8f/xc3/xf3 -+ /x8f/xc3/xf4 -+ /x8f/xc3/xf5 -+ /x8f/xc3/xf6 -+ /x8f/xc3/xf7 -+ /x8f/xc3/xf8 -+ /x8f/xc3/xf9 -+ /x8f/xc3/xfa -+ /x8f/xc3/xfb -+ /x8f/xc3/xfc -+ /x8f/xc3/xfd -+ /x8f/xc3/xfe -+ /x8f/xc4/xa1 -+ /x8f/xc4/xa2 -+ /x8f/xc4/xa3 -+ /x8f/xc4/xa4 -+ /x8f/xc4/xa5 -+ /x8f/xc4/xa6 -+ /x8f/xc4/xa7 -+ /x8f/xc4/xa8 -+ /x8f/xc4/xa9 -+ /x8f/xc4/xaa -+ /x8f/xc4/xab -+ /x8f/xc4/xac -+ /x8f/xc4/xad -+ /x8f/xc4/xae -+ /x8f/xc4/xaf -+ /x8f/xc4/xb0 -+ /x8f/xc4/xb1 -+ /x8f/xc4/xb2 -+ /x8f/xc4/xb3 -+ /x8f/xc4/xb4 -+ /x8f/xc4/xb5 -+ /x8f/xc4/xb6 -+ /x8f/xc4/xb7 -+ /x8f/xc4/xb8 -+ /x8f/xc4/xb9 -+ /x8f/xc4/xba -+ /x8f/xc4/xbb -+ /x8f/xc4/xbc -+ /x8f/xc4/xbd -+ /x8f/xc4/xbe -+ /x8f/xc4/xbf -+ /x8f/xc4/xc0 -+ /x8f/xc4/xc1 -+ /x8f/xc4/xc2 -+ /x8f/xc4/xc3 -+ /x8f/xc4/xc4 -+ /x8f/xc4/xc5 -+ /x8f/xc4/xc6 -+ /x8f/xc4/xc7 -+ /x8f/xc4/xc8 -+ /x8f/xc4/xc9 -+ /x8f/xc4/xca -+ /x8f/xc4/xcb -+ /x8f/xc4/xcc -+ /x8f/xc4/xcd -+ /x8f/xc4/xce -+ /x8f/xc4/xcf -+ /x8f/xc4/xd0 -+ /x8f/xc4/xd1 -+ /x8f/xc4/xd2 -+ /x8f/xc4/xd3 -+ /x8f/xc4/xd4 -+ /x8f/xc4/xd5 -+ /x8f/xc4/xd6 -+ /x8f/xc4/xd7 -+ /x8f/xc4/xd8 -+ /x8f/xc4/xd9 -+ /x8f/xc4/xda -+ /x8f/xc4/xdb -+ /x8f/xc4/xdc -+ /x8f/xc4/xdd -+ /x8f/xc4/xde -+ /x8f/xc4/xdf -+ /x8f/xc4/xe0 -+ /x8f/xc4/xe1 -+ /x8f/xc4/xe2 -+ /x8f/xc4/xe3 -+ /x8f/xc4/xe4 -+ /x8f/xc4/xe5 -+ /x8f/xc4/xe6 -+ /x8f/xc4/xe7 -+ /x8f/xc4/xe8 -+ /x8f/xc4/xe9 -+ /x8f/xc4/xea -+ /x8f/xc4/xeb -+ /x8f/xc4/xec -+ /x8f/xc4/xed -+ /x8f/xc4/xee -+ /x8f/xc4/xef -+ /x8f/xc4/xf0 -+ /x8f/xc4/xf1 -+ /x8f/xc4/xf2 -+ /x8f/xc4/xf3 -+ /x8f/xc4/xf4 -+ /x8f/xc4/xf5 -+ /x8f/xc4/xf6 -+ /x8f/xc4/xf7 -+ /x8f/xc4/xf8 -+ /x8f/xc4/xf9 -+ /x8f/xc4/xfa -+ /x8f/xc4/xfb -+ /x8f/xc4/xfc -+ /x8f/xc4/xfd -+ /x8f/xc4/xfe -+ /x8f/xc5/xa1 -+ /x8f/xc5/xa2 -+ /x8f/xc5/xa3 -+ /x8f/xc5/xa4 -+ /x8f/xc5/xa5 -+ /x8f/xc5/xa6 -+ /x8f/xc5/xa7 -+ /x8f/xc5/xa8 -+ /x8f/xc5/xa9 -+ /x8f/xc5/xaa -+ /x8f/xc5/xab -+ /x8f/xc5/xac -+ /x8f/xc5/xad -+ /x8f/xc5/xae -+ /x8f/xc5/xaf -+ /x8f/xc5/xb0 -+ /x8f/xc5/xb1 -+ /x8f/xc5/xb2 -+ /x8f/xc5/xb3 -+ /x8f/xc5/xb4 -+ /x8f/xc5/xb5 -+ /x8f/xc5/xb6 -+ /x8f/xc5/xb7 -+ /x8f/xc5/xb8 -+ /x8f/xc5/xb9 -+ /x8f/xc5/xba -+ /x8f/xc5/xbb -+ /x8f/xc5/xbc -+ /x8f/xc5/xbd -+ /x8f/xc5/xbe -+ /x8f/xc5/xbf -+ /x8f/xc5/xc0 -+ /x8f/xc5/xc1 -+ /x8f/xc5/xc2 -+ /x8f/xc5/xc3 -+ /x8f/xc5/xc4 -+ /x8f/xc5/xc5 -+ /x8f/xc5/xc6 -+ /x8f/xc5/xc7 -+ /x8f/xc5/xc8 -+ /x8f/xc5/xc9 -+ /x8f/xc5/xca -+ /x8f/xc5/xcb -+ /x8f/xc5/xcc -+ /x8f/xc5/xcd -+ /x8f/xc5/xce -+ /x8f/xc5/xcf -+ /x8f/xc5/xd0 -+ /x8f/xc5/xd1 -+ /x8f/xc5/xd2 -+ /x8f/xc5/xd3 -+ /x8f/xc5/xd4 -+ /x8f/xc5/xd5 -+ /x8f/xc5/xd6 -+ /x8f/xc5/xd7 -+ /x8f/xc5/xd8 -+ /x8f/xc5/xd9 -+ /x8f/xc5/xda -+ /x8f/xc5/xdb -+ /x8f/xc5/xdc -+ /x8f/xc5/xdd -+ /x8f/xc5/xde -+ /x8f/xc5/xdf -+ /x8f/xc5/xe0 -+ /x8f/xc5/xe1 -+ /x8f/xc5/xe2 -+ /x8f/xc5/xe3 -+ /x8f/xc5/xe4 -+ /x8f/xc5/xe5 -+ /x8f/xc5/xe6 -+ /x8f/xc5/xe7 -+ /x8f/xc5/xe8 -+ /x8f/xc5/xe9 -+ /x8f/xc5/xea -+ /x8f/xc5/xeb -+ /x8f/xc5/xec -+ /x8f/xc5/xed -+ /x8f/xc5/xee -+ /x8f/xc5/xef -+ /x8f/xc5/xf0 -+ /x8f/xc5/xf1 -+ /x8f/xc5/xf2 -+ /x8f/xc5/xf3 -+ /x8f/xc5/xf4 -+ /x8f/xc5/xf5 -+ /x8f/xc5/xf6 -+ /x8f/xc5/xf7 -+ /x8f/xc5/xf8 -+ /x8f/xc5/xf9 -+ /x8f/xc5/xfa -+ /x8f/xc5/xfb -+ /x8f/xc5/xfc -+ /x8f/xc5/xfd -+ /x8f/xc5/xfe -+ /x8f/xc6/xa1 -+ /x8f/xc6/xa2 -+ /x8f/xc6/xa3 -+ /x8f/xc6/xa4 -+ /x8f/xc6/xa5 -+ /x8f/xc6/xa6 -+ /x8f/xc6/xa7 -+ /x8f/xc6/xa8 -+ /x8f/xc6/xa9 -+ /x8f/xc6/xaa -+ /x8f/xc6/xab -+ /x8f/xc6/xac -+ /x8f/xc6/xad -+ /x8f/xc6/xae -+ /x8f/xc6/xaf -+ /x8f/xc6/xb0 -+ /x8f/xc6/xb1 -+ /x8f/xc6/xb2 -+ /x8f/xc6/xb3 -+ /x8f/xc6/xb4 -+ /x8f/xc6/xb5 -+ /x8f/xc6/xb6 -+ /x8f/xc6/xb7 -+ /x8f/xc6/xb8 -+ /x8f/xc6/xb9 -+ /x8f/xc6/xba -+ /x8f/xc6/xbb -+ /x8f/xc6/xbc -+ /x8f/xc6/xbd -+ /x8f/xc6/xbe -+ /x8f/xc6/xbf -+ /x8f/xc6/xc0 -+ /x8f/xc6/xc1 -+ /x8f/xc6/xc2 -+ /x8f/xc6/xc3 -+ /x8f/xc6/xc4 -+ /x8f/xc6/xc5 -+ /x8f/xc6/xc6 -+ /x8f/xc6/xc7 -+ /x8f/xc6/xc8 -+ /x8f/xc6/xc9 -+ /x8f/xc6/xca -+ /x8f/xc6/xcb -+ /x8f/xc6/xcc -+ /x8f/xc6/xcd -+ /x8f/xc6/xce -+ /x8f/xc6/xcf -+ /x8f/xc6/xd0 -+ /x8f/xc6/xd1 -+ /x8f/xc6/xd2 -+ /x8f/xc6/xd3 -+ /x8f/xc6/xd4 -+ /x8f/xc6/xd5 -+ /x8f/xc6/xd6 -+ /x8f/xc6/xd7 -+ /x8f/xc6/xd8 -+ /x8f/xc6/xd9 -+ /x8f/xc6/xda -+ /x8f/xc6/xdb -+ /x8f/xc6/xdc -+ /x8f/xc6/xdd -+ /x8f/xc6/xde -+ /x8f/xc6/xdf -+ /x8f/xc6/xe0 -+ /x8f/xc6/xe1 -+ /x8f/xc6/xe2 -+ /x8f/xc6/xe3 -+ /x8f/xc6/xe4 -+ /x8f/xc6/xe5 -+ /x8f/xc6/xe6 -+ /x8f/xc6/xe7 -+ /x8f/xc6/xe8 -+ /x8f/xc6/xe9 -+ /x8f/xc6/xea -+ /x8f/xc6/xeb -+ /x8f/xc6/xec -+ /x8f/xc6/xed -+ /x8f/xc6/xee -+ /x8f/xc6/xef -+ /x8f/xc6/xf0 -+ /x8f/xc6/xf1 -+ /x8f/xc6/xf2 -+ /x8f/xc6/xf3 -+ /x8f/xc6/xf4 -+ /x8f/xc6/xf5 -+ /x8f/xc6/xf6 -+ /x8f/xc6/xf7 -+ /x8f/xc6/xf8 -+ /x8f/xc6/xf9 -+ /x8f/xc6/xfa -+ /x8f/xc6/xfb -+ /x8f/xc6/xfc -+ /x8f/xc6/xfd -+ /x8f/xc6/xfe -+ /x8f/xc7/xa1 -+ /x8f/xc7/xa2 -+ /x8f/xc7/xa3 -+ /x8f/xc7/xa4 -+ /x8f/xc7/xa5 -+ /x8f/xc7/xa6 -+ /x8f/xc7/xa7 -+ /x8f/xc7/xa8 -+ /x8f/xc7/xa9 -+ /x8f/xc7/xaa -+ /x8f/xc7/xab -+ /x8f/xc7/xac -+ /x8f/xc7/xad -+ /x8f/xc7/xae -+ /x8f/xc7/xaf -+ /x8f/xc7/xb0 -+ /x8f/xc7/xb1 -+ /x8f/xc7/xb2 -+ /x8f/xc7/xb3 -+ /x8f/xc7/xb4 -+ /x8f/xc7/xb5 -+ /x8f/xc7/xb6 -+ /x8f/xc7/xb7 -+ /x8f/xc7/xb8 -+ /x8f/xc7/xb9 -+ /x8f/xc7/xba -+ /x8f/xc7/xbb -+ /x8f/xc7/xbc -+ /x8f/xc7/xbd -+ /x8f/xc7/xbe -+ /x8f/xc7/xbf -+ /x8f/xc7/xc0 -+ /x8f/xc7/xc1 -+ /x8f/xc7/xc2 -+ /x8f/xc7/xc3 -+ /x8f/xc7/xc4 -+ /x8f/xc7/xc5 -+ /x8f/xc7/xc6 -+ /x8f/xc7/xc7 -+ /x8f/xc7/xc8 -+ /x8f/xc7/xc9 -+ /x8f/xc7/xca -+ /x8f/xc7/xcb -+ /x8f/xc7/xcc -+ /x8f/xc7/xcd -+ /x8f/xc7/xce -+ /x8f/xc7/xcf -+ /x8f/xc7/xd0 -+ /x8f/xc7/xd1 -+ /x8f/xc7/xd2 -+ /x8f/xc7/xd3 -+ /x8f/xc7/xd4 -+ /x8f/xc7/xd5 -+ /x8f/xc7/xd6 -+ /x8f/xc7/xd7 -+ /x8f/xc7/xd8 -+ /x8f/xc7/xd9 -+ /x8f/xc7/xda -+ /x8f/xc7/xdb -+ /x8f/xc7/xdc -+ /x8f/xc7/xdd -+ /x8f/xc7/xde -+ /x8f/xc7/xdf -+ /x8f/xc7/xe0 -+ /x8f/xc7/xe1 -+ /x8f/xc7/xe2 -+ /x8f/xc7/xe3 -+ /x8f/xc7/xe4 -+ /x8f/xc7/xe5 -+ /x8f/xc7/xe6 -+ /x8f/xc7/xe7 -+ /x8f/xc7/xe8 -+ /x8f/xc7/xe9 -+ /x8f/xc7/xea -+ /x8f/xc7/xeb -+ /x8f/xc7/xec -+ /x8f/xc7/xed -+ /x8f/xc7/xee -+ /x8f/xc7/xef -+ /x8f/xc7/xf0 -+ /x8f/xc7/xf1 -+ /x8f/xc7/xf2 -+ /x8f/xc7/xf3 -+ /x8f/xc7/xf4 -+ /x8f/xc7/xf5 -+ /x8f/xc7/xf6 -+ /x8f/xc7/xf7 -+ /x8f/xc7/xf8 -+ /x8f/xc7/xf9 -+ /x8f/xc7/xfa -+ /x8f/xc7/xfb -+ /x8f/xc7/xfc -+ /x8f/xc7/xfd -+ /x8f/xc7/xfe -+ /x8f/xc8/xa1 -+ /x8f/xc8/xa2 -+ /x8f/xc8/xa3 -+ /x8f/xc8/xa4 -+ /x8f/xc8/xa5 -+ /x8f/xc8/xa6 -+ /x8f/xc8/xa7 -+ /x8f/xc8/xa8 -+ /x8f/xc8/xa9 -+ /x8f/xc8/xaa -+ /x8f/xc8/xab -+ /x8f/xc8/xac -+ /x8f/xc8/xad -+ /x8f/xc8/xae -+ /x8f/xc8/xaf -+ /x8f/xc8/xb0 -+ /x8f/xc8/xb1 -+ /x8f/xc8/xb2 -+ /x8f/xc8/xb3 -+ /x8f/xc8/xb4 -+ /x8f/xc8/xb5 -+ /x8f/xc8/xb6 -+ /x8f/xc8/xb7 -+ /x8f/xc8/xb8 -+ /x8f/xc8/xb9 -+ /x8f/xc8/xba -+ /x8f/xc8/xbb -+ /x8f/xc8/xbc -+ /x8f/xc8/xbd -+ /x8f/xc8/xbe -+ /x8f/xc8/xbf -+ /x8f/xc8/xc0 -+ /x8f/xc8/xc1 -+ /x8f/xc8/xc2 -+ /x8f/xc8/xc3 -+ /x8f/xc8/xc4 -+ /x8f/xc8/xc5 -+ /x8f/xc8/xc6 -+ /x8f/xc8/xc7 -+ /x8f/xc8/xc8 -+ /x8f/xc8/xc9 -+ /x8f/xc8/xca -+ /x8f/xc8/xcb -+ /x8f/xc8/xcc -+ /x8f/xc8/xcd -+ /x8f/xc8/xce -+ /x8f/xc8/xcf -+ /x8f/xc8/xd0 -+ /x8f/xc8/xd1 -+ /x8f/xc8/xd2 -+ /x8f/xc8/xd3 -+ /x8f/xc8/xd4 -+ /x8f/xc8/xd5 -+ /x8f/xc8/xd6 -+ /x8f/xc8/xd7 -+ /x8f/xc8/xd8 -+ /x8f/xc8/xd9 -+ /x8f/xc8/xda -+ /x8f/xc8/xdb -+ /x8f/xc8/xdc -+ /x8f/xc8/xdd -+ /x8f/xc8/xde -+ /x8f/xc8/xdf -+ /x8f/xc8/xe0 -+ /x8f/xc8/xe1 -+ /x8f/xc8/xe2 -+ /x8f/xc8/xe3 -+ /x8f/xc8/xe4 -+ /x8f/xc8/xe5 -+ /x8f/xc8/xe6 -+ /x8f/xc8/xe7 -+ /x8f/xc8/xe8 -+ /x8f/xc8/xe9 -+ /x8f/xc8/xea -+ /x8f/xc8/xeb -+ /x8f/xc8/xec -+ /x8f/xc8/xed -+ /x8f/xc8/xee -+ /x8f/xc8/xef -+ /x8f/xc8/xf0 -+ /x8f/xc8/xf1 -+ /x8f/xc8/xf2 -+ /x8f/xc8/xf3 -+ /x8f/xc8/xf4 -+ /x8f/xc8/xf5 -+ /x8f/xc8/xf6 -+ /x8f/xc8/xf7 -+ /x8f/xc8/xf8 -+ /x8f/xc8/xf9 -+ /x8f/xc8/xfa -+ /x8f/xc8/xfb -+ /x8f/xc8/xfc -+ /x8f/xc8/xfd -+ /x8f/xc8/xfe -+ /x8f/xc9/xa1 -+ /x8f/xc9/xa2 -+ /x8f/xc9/xa3 -+ /x8f/xc9/xa4 -+ /x8f/xc9/xa5 -+ /x8f/xc9/xa6 -+ /x8f/xc9/xa7 -+ /x8f/xc9/xa8 -+ /x8f/xc9/xa9 -+ /x8f/xc9/xaa -+ /x8f/xc9/xab -+ /x8f/xc9/xac -+ /x8f/xc9/xad -+ /x8f/xc9/xae -+ /x8f/xc9/xaf -+ /x8f/xc9/xb0 -+ /x8f/xc9/xb1 -+ /x8f/xc9/xb2 -+ /x8f/xc9/xb3 -+ /x8f/xc9/xb4 -+ /x8f/xc9/xb5 -+ /x8f/xc9/xb6 -+ /x8f/xc9/xb7 -+ /x8f/xc9/xb8 -+ /x8f/xc9/xb9 -+ /x8f/xc9/xba -+ /x8f/xc9/xbb -+ /x8f/xc9/xbc -+ /x8f/xc9/xbd -+ /x8f/xc9/xbe -+ /x8f/xc9/xbf -+ /x8f/xc9/xc0 -+ /x8f/xc9/xc1 -+ /x8f/xc9/xc2 -+ /x8f/xc9/xc3 -+ /x8f/xc9/xc4 -+ /x8f/xc9/xc5 -+ /x8f/xc9/xc6 -+ /x8f/xc9/xc7 -+ /x8f/xc9/xc8 -+ /x8f/xc9/xc9 -+ /x8f/xc9/xca -+ /x8f/xc9/xcb -+ /x8f/xc9/xcc -+ /x8f/xc9/xcd -+ /x8f/xc9/xce -+ /x8f/xc9/xcf -+ /x8f/xc9/xd0 -+ /x8f/xc9/xd1 -+ /x8f/xc9/xd2 -+ /x8f/xc9/xd3 -+ /x8f/xc9/xd4 -+ /x8f/xc9/xd5 -+ /x8f/xc9/xd6 -+ /x8f/xc9/xd7 -+ /x8f/xc9/xd8 -+ /x8f/xc9/xd9 -+ /x8f/xc9/xda -+ /x8f/xc9/xdb -+ /x8f/xc9/xdc -+ /x8f/xc9/xdd -+ /x8f/xc9/xde -+ /x8f/xc9/xdf -+ /x8f/xc9/xe0 -+ /x8f/xc9/xe1 -+ /x8f/xc9/xe2 -+ /x8f/xc9/xe3 -+ /x8f/xc9/xe4 -+ /x8f/xc9/xe5 -+ /x8f/xc9/xe6 -+ /x8f/xc9/xe7 -+ /x8f/xc9/xe8 -+ /x8f/xc9/xe9 -+ /x8f/xc9/xea -+ /x8f/xc9/xeb -+ /x8f/xc9/xec -+ /x8f/xc9/xed -+ /x8f/xc9/xee -+ /x8f/xc9/xef -+ /x8f/xc9/xf0 -+ /x8f/xc9/xf1 -+ /x8f/xc9/xf2 -+ /x8f/xc9/xf3 -+ /x8f/xc9/xf4 -+ /x8f/xc9/xf5 -+ /x8f/xc9/xf6 -+ /x8f/xc9/xf7 -+ /x8f/xc9/xf8 -+ /x8f/xc9/xf9 -+ /x8f/xc9/xfa -+ /x8f/xc9/xfb -+ /x8f/xc9/xfc -+ /x8f/xc9/xfd -+ /x8f/xc9/xfe -+ /x8f/xca/xa1 -+ /x8f/xca/xa2 -+ /x8f/xca/xa3 -+ /x8f/xca/xa4 -+ /x8f/xca/xa5 -+ /x8f/xca/xa6 -+ /x8f/xca/xa7 -+ /x8f/xca/xa8 -+ /x8f/xca/xa9 -+ /x8f/xca/xaa -+ /x8f/xca/xab -+ /x8f/xca/xac -+ /x8f/xca/xad -+ /x8f/xca/xae -+ /x8f/xca/xaf -+ /x8f/xca/xb0 -+ /x8f/xca/xb1 -+ /x8f/xca/xb2 -+ /x8f/xca/xb3 -+ /x8f/xca/xb4 -+ /x8f/xca/xb5 -+ /x8f/xca/xb6 -+ /x8f/xca/xb7 -+ /x8f/xca/xb8 -+ /x8f/xca/xb9 -+ /x8f/xca/xba -+ /x8f/xca/xbb -+ /x8f/xca/xbc -+ /x8f/xca/xbd -+ /x8f/xca/xbe -+ /x8f/xca/xbf -+ /x8f/xca/xc0 -+ /x8f/xca/xc1 -+ /x8f/xca/xc2 -+ /x8f/xca/xc3 -+ /x8f/xca/xc4 -+ /x8f/xca/xc5 -+ /x8f/xca/xc6 -+ /x8f/xca/xc7 -+ /x8f/xca/xc8 -+ /x8f/xca/xc9 -+ /x8f/xca/xca -+ /x8f/xca/xcb -+ /x8f/xca/xcc -+ /x8f/xca/xcd -+ /x8f/xca/xce -+ /x8f/xca/xcf -+ /x8f/xca/xd0 -+ /x8f/xca/xd1 -+ /x8f/xca/xd2 -+ /x8f/xca/xd3 -+ /x8f/xca/xd4 -+ /x8f/xca/xd5 -+ /x8f/xca/xd6 -+ /x8f/xca/xd7 -+ /x8f/xca/xd8 -+ /x8f/xca/xd9 -+ /x8f/xca/xda -+ /x8f/xca/xdb -+ /x8f/xca/xdc -+ /x8f/xca/xdd -+ /x8f/xca/xde -+ /x8f/xca/xdf -+ /x8f/xca/xe0 -+ /x8f/xca/xe1 -+ /x8f/xca/xe2 -+ /x8f/xca/xe3 -+ /x8f/xca/xe4 -+ /x8f/xca/xe5 -+ /x8f/xca/xe6 -+ /x8f/xca/xe7 -+ /x8f/xca/xe8 -+ /x8f/xca/xe9 -+ /x8f/xca/xea -+ /x8f/xca/xeb -+ /x8f/xca/xec -+ /x8f/xca/xed -+ /x8f/xca/xee -+ /x8f/xca/xef -+ /x8f/xca/xf0 -+ /x8f/xca/xf1 -+ /x8f/xca/xf2 -+ /x8f/xca/xf3 -+ /x8f/xca/xf4 -+ /x8f/xca/xf5 -+ /x8f/xca/xf6 -+ /x8f/xca/xf7 -+ /x8f/xca/xf8 -+ /x8f/xca/xf9 -+ /x8f/xca/xfa -+ /x8f/xca/xfb -+ /x8f/xca/xfc -+ /x8f/xca/xfd -+ /x8f/xca/xfe -+ /x8f/xcb/xa1 -+ /x8f/xcb/xa2 -+ /x8f/xcb/xa3 -+ /x8f/xcb/xa4 -+ /x8f/xcb/xa5 -+ /x8f/xcb/xa6 -+ /x8f/xcb/xa7 -+ /x8f/xcb/xa8 -+ /x8f/xcb/xa9 -+ /x8f/xcb/xaa -+ /x8f/xcb/xab -+ /x8f/xcb/xac -+ /x8f/xcb/xad -+ /x8f/xcb/xae -+ /x8f/xcb/xaf -+ /x8f/xcb/xb0 -+ /x8f/xcb/xb1 -+ /x8f/xcb/xb2 -+ /x8f/xcb/xb3 -+ /x8f/xcb/xb4 -+ /x8f/xcb/xb5 -+ /x8f/xcb/xb6 -+ /x8f/xcb/xb7 -+ /x8f/xcb/xb8 -+ /x8f/xcb/xb9 -+ /x8f/xcb/xba -+ /x8f/xcb/xbb -+ /x8f/xcb/xbc -+ /x8f/xcb/xbd -+ /x8f/xcb/xbe -+ /x8f/xcb/xbf -+ /x8f/xcb/xc0 -+ /x8f/xcb/xc1 -+ /x8f/xcb/xc2 -+ /x8f/xcb/xc3 -+ /x8f/xcb/xc4 -+ /x8f/xcb/xc5 -+ /x8f/xcb/xc6 -+ /x8f/xcb/xc7 -+ /x8f/xcb/xc8 -+ /x8f/xcb/xc9 -+ /x8f/xcb/xca -+ /x8f/xcb/xcb -+ /x8f/xcb/xcc -+ /x8f/xcb/xcd -+ /x8f/xcb/xce -+ /x8f/xcb/xcf -+ /x8f/xcb/xd0 -+ /x8f/xcb/xd1 -+ /x8f/xcb/xd2 -+ /x8f/xcb/xd3 -+ /x8f/xcb/xd4 -+ /x8f/xcb/xd5 -+ /x8f/xcb/xd6 -+ /x8f/xcb/xd7 -+ /x8f/xcb/xd8 -+ /x8f/xcb/xd9 -+ /x8f/xcb/xda -+ /x8f/xcb/xdb -+ /x8f/xcb/xdc -+ /x8f/xcb/xdd -+ /x8f/xcb/xde -+ /x8f/xcb/xdf -+ /x8f/xcb/xe0 -+ /x8f/xcb/xe1 -+ /x8f/xcb/xe2 -+ /x8f/xcb/xe3 -+ /x8f/xcb/xe4 -+ /x8f/xcb/xe5 -+ /x8f/xcb/xe6 -+ /x8f/xcb/xe7 -+ /x8f/xcb/xe8 -+ /x8f/xcb/xe9 -+ /x8f/xcb/xea -+ /x8f/xcb/xeb -+ /x8f/xcb/xec -+ /x8f/xcb/xed -+ /x8f/xcb/xee -+ /x8f/xcb/xef -+ /x8f/xcb/xf0 -+ /x8f/xcb/xf1 -+ /x8f/xcb/xf2 -+ /x8f/xcb/xf3 -+ /x8f/xcb/xf4 -+ /x8f/xcb/xf5 -+ /x8f/xcb/xf6 -+ /x8f/xcb/xf7 -+ /x8f/xcb/xf8 -+ /x8f/xcb/xf9 -+ /x8f/xcb/xfa -+ /x8f/xcb/xfb -+ /x8f/xcb/xfc -+ /x8f/xcb/xfd -+ /x8f/xcb/xfe -+ /x8f/xcc/xa1 -+ /x8f/xcc/xa2 -+ /x8f/xcc/xa3 -+ /x8f/xcc/xa4 -+ /x8f/xcc/xa5 -+ /x8f/xcc/xa6 -+ /x8f/xcc/xa7 -+ /x8f/xcc/xa8 -+ /x8f/xcc/xa9 -+ /x8f/xcc/xaa -+ /x8f/xcc/xab -+ /x8f/xcc/xac -+ /x8f/xcc/xad -+ /x8f/xcc/xae -+ /x8f/xcc/xaf -+ /x8f/xcc/xb0 -+ /x8f/xcc/xb1 -+ /x8f/xcc/xb2 -+ /x8f/xcc/xb3 -+ /x8f/xcc/xb4 -+ /x8f/xcc/xb5 -+ /x8f/xcc/xb6 -+ /x8f/xcc/xb7 -+ /x8f/xcc/xb8 -+ /x8f/xcc/xb9 -+ /x8f/xcc/xba -+ /x8f/xcc/xbb -+ /x8f/xcc/xbc -+ /x8f/xcc/xbd -+ /x8f/xcc/xbe -+ /x8f/xcc/xbf -+ /x8f/xcc/xc0 -+ /x8f/xcc/xc1 -+ /x8f/xcc/xc2 -+ /x8f/xcc/xc3 -+ /x8f/xcc/xc4 -+ /x8f/xcc/xc5 -+ /x8f/xcc/xc6 -+ /x8f/xcc/xc7 -+ /x8f/xcc/xc8 -+ /x8f/xcc/xc9 -+ /x8f/xcc/xca -+ /x8f/xcc/xcb -+ /x8f/xcc/xcc -+ /x8f/xcc/xcd -+ /x8f/xcc/xce -+ /x8f/xcc/xcf -+ /x8f/xcc/xd0 -+ /x8f/xcc/xd1 -+ /x8f/xcc/xd2 -+ /x8f/xcc/xd3 -+ /x8f/xcc/xd4 -+ /x8f/xcc/xd5 -+ /x8f/xcc/xd6 -+ /x8f/xcc/xd7 -+ /x8f/xcc/xd8 -+ /x8f/xcc/xd9 -+ /x8f/xcc/xda -+ /x8f/xcc/xdb -+ /x8f/xcc/xdc -+ /x8f/xcc/xdd -+ /x8f/xcc/xde -+ /x8f/xcc/xdf -+ /x8f/xcc/xe0 -+ /x8f/xcc/xe1 -+ /x8f/xcc/xe2 -+ /x8f/xcc/xe3 -+ /x8f/xcc/xe4 -+ /x8f/xcc/xe5 -+ /x8f/xcc/xe6 -+ /x8f/xcc/xe7 -+ /x8f/xcc/xe8 -+ /x8f/xcc/xe9 -+ /x8f/xcc/xea -+ /x8f/xcc/xeb -+ /x8f/xcc/xec -+ /x8f/xcc/xed -+ /x8f/xcc/xee -+ /x8f/xcc/xef -+ /x8f/xcc/xf0 -+ /x8f/xcc/xf1 -+ /x8f/xcc/xf2 -+ /x8f/xcc/xf3 -+ /x8f/xcc/xf4 -+ /x8f/xcc/xf5 -+ /x8f/xcc/xf6 -+ /x8f/xcc/xf7 -+ /x8f/xcc/xf8 -+ /x8f/xcc/xf9 -+ /x8f/xcc/xfa -+ /x8f/xcc/xfb -+ /x8f/xcc/xfc -+ /x8f/xcc/xfd -+ /x8f/xcc/xfe -+ /x8f/xcd/xa1 -+ /x8f/xcd/xa2 -+ /x8f/xcd/xa3 -+ /x8f/xcd/xa4 -+ /x8f/xcd/xa5 -+ /x8f/xcd/xa6 -+ /x8f/xcd/xa7 -+ /x8f/xcd/xa8 -+ /x8f/xcd/xa9 -+ /x8f/xcd/xaa -+ /x8f/xcd/xab -+ /x8f/xcd/xac -+ /x8f/xcd/xad -+ /x8f/xcd/xae -+ /x8f/xcd/xaf -+ /x8f/xcd/xb0 -+ /x8f/xcd/xb1 -+ /x8f/xcd/xb2 -+ /x8f/xcd/xb3 -+ /x8f/xcd/xb4 -+ /x8f/xcd/xb5 -+ /x8f/xcd/xb6 -+ /x8f/xcd/xb7 -+ /x8f/xcd/xb8 -+ /x8f/xcd/xb9 -+ /x8f/xcd/xba -+ /x8f/xcd/xbb -+ /x8f/xcd/xbc -+ /x8f/xcd/xbd -+ /x8f/xcd/xbe -+ /x8f/xcd/xbf -+ /x8f/xcd/xc0 -+ /x8f/xcd/xc1 -+ /x8f/xcd/xc2 -+ /x8f/xcd/xc3 -+ /x8f/xcd/xc4 -+ /x8f/xcd/xc5 -+ /x8f/xcd/xc6 -+ /x8f/xcd/xc7 -+ /x8f/xcd/xc8 -+ /x8f/xcd/xc9 -+ /x8f/xcd/xca -+ /x8f/xcd/xcb -+ /x8f/xcd/xcc -+ /x8f/xcd/xcd -+ /x8f/xcd/xce -+ /x8f/xcd/xcf -+ /x8f/xcd/xd0 -+ /x8f/xcd/xd1 -+ /x8f/xcd/xd2 -+ /x8f/xcd/xd3 -+ /x8f/xcd/xd4 -+ /x8f/xcd/xd5 -+ /x8f/xcd/xd6 -+ /x8f/xcd/xd7 -+ /x8f/xcd/xd8 -+ /x8f/xcd/xd9 -+ /x8f/xcd/xda -+ /x8f/xcd/xdb -+ /x8f/xcd/xdc -+ /x8f/xcd/xdd -+ /x8f/xcd/xde -+ /x8f/xcd/xdf -+ /x8f/xcd/xe0 -+ /x8f/xcd/xe1 -+ /x8f/xcd/xe2 -+ /x8f/xcd/xe3 -+ /x8f/xcd/xe4 -+ /x8f/xcd/xe5 -+ /x8f/xcd/xe6 -+ /x8f/xcd/xe7 -+ /x8f/xcd/xe8 -+ /x8f/xcd/xe9 -+ /x8f/xcd/xea -+ /x8f/xcd/xeb -+ /x8f/xcd/xec -+ /x8f/xcd/xed -+ /x8f/xcd/xee -+ /x8f/xcd/xef -+ /x8f/xcd/xf0 -+ /x8f/xcd/xf1 -+ /x8f/xcd/xf2 -+ /x8f/xcd/xf3 -+ /x8f/xcd/xf4 -+ /x8f/xcd/xf5 -+ /x8f/xcd/xf6 -+ /x8f/xcd/xf7 -+ /x8f/xcd/xf8 -+ /x8f/xcd/xf9 -+ /x8f/xcd/xfa -+ /x8f/xcd/xfb -+ /x8f/xcd/xfc -+ /x8f/xcd/xfd -+ /x8f/xcd/xfe -+ /x8f/xce/xa1 -+ /x8f/xce/xa2 -+ /x8f/xce/xa3 -+ /x8f/xce/xa4 -+ /x8f/xce/xa5 -+ /x8f/xce/xa6 -+ /x8f/xce/xa7 -+ /x8f/xce/xa8 -+ /x8f/xce/xa9 -+ /x8f/xce/xaa -+ /x8f/xce/xab -+ /x8f/xce/xac -+ /x8f/xce/xad -+ /x8f/xce/xae -+ /x8f/xce/xaf -+ /x8f/xce/xb0 -+ /x8f/xce/xb1 -+ /x8f/xce/xb2 -+ /x8f/xce/xb3 -+ /x8f/xce/xb4 -+ /x8f/xce/xb5 -+ /x8f/xce/xb6 -+ /x8f/xce/xb7 -+ /x8f/xce/xb8 -+ /x8f/xce/xb9 -+ /x8f/xce/xba -+ /x8f/xce/xbb -+ /x8f/xce/xbc -+ /x8f/xce/xbd -+ /x8f/xce/xbe -+ /x8f/xce/xbf -+ /x8f/xce/xc0 -+ /x8f/xce/xc1 -+ /x8f/xce/xc2 -+ /x8f/xce/xc3 -+ /x8f/xce/xc4 -+ /x8f/xce/xc5 -+ /x8f/xce/xc6 -+ /x8f/xce/xc7 -+ /x8f/xce/xc8 -+ /x8f/xce/xc9 -+ /x8f/xce/xca -+ /x8f/xce/xcb -+ /x8f/xce/xcc -+ /x8f/xce/xcd -+ /x8f/xce/xce -+ /x8f/xce/xcf -+ /x8f/xce/xd0 -+ /x8f/xce/xd1 -+ /x8f/xce/xd2 -+ /x8f/xce/xd3 -+ /x8f/xce/xd4 -+ /x8f/xce/xd5 -+ /x8f/xce/xd6 -+ /x8f/xce/xd7 -+ /x8f/xce/xd8 -+ /x8f/xce/xd9 -+ /x8f/xce/xda -+ /x8f/xce/xdb -+ /x8f/xce/xdc -+ /x8f/xce/xdd -+ /x8f/xce/xde -+ /x8f/xce/xdf -+ /x8f/xce/xe0 -+ /x8f/xce/xe1 -+ /x8f/xce/xe2 -+ /x8f/xce/xe3 -+ /x8f/xce/xe4 -+ /x8f/xce/xe5 -+ /x8f/xce/xe6 -+ /x8f/xce/xe7 -+ /x8f/xce/xe8 -+ /x8f/xce/xe9 -+ /x8f/xce/xea -+ /x8f/xce/xeb -+ /x8f/xce/xec -+ /x8f/xce/xed -+ /x8f/xce/xee -+ /x8f/xce/xef -+ /x8f/xce/xf0 -+ /x8f/xce/xf1 -+ /x8f/xce/xf2 -+ /x8f/xce/xf3 -+ /x8f/xce/xf4 -+ /x8f/xce/xf5 -+ /x8f/xce/xf6 -+ /x8f/xce/xf7 -+ /x8f/xce/xf8 -+ /x8f/xce/xf9 -+ /x8f/xce/xfa -+ /x8f/xce/xfb -+ /x8f/xce/xfc -+ /x8f/xce/xfd -+ /x8f/xce/xfe -+ /x8f/xcf/xa1 -+ /x8f/xcf/xa2 -+ /x8f/xcf/xa3 -+ /x8f/xcf/xa4 -+ /x8f/xcf/xa5 -+ /x8f/xcf/xa6 -+ /x8f/xcf/xa7 -+ /x8f/xcf/xa8 -+ /x8f/xcf/xa9 -+ /x8f/xcf/xaa -+ /x8f/xcf/xab -+ /x8f/xcf/xac -+ /x8f/xcf/xad -+ /x8f/xcf/xae -+ /x8f/xcf/xaf -+ /x8f/xcf/xb0 -+ /x8f/xcf/xb1 -+ /x8f/xcf/xb2 -+ /x8f/xcf/xb3 -+ /x8f/xcf/xb4 -+ /x8f/xcf/xb5 -+ /x8f/xcf/xb6 -+ /x8f/xcf/xb7 -+ /x8f/xcf/xb8 -+ /x8f/xcf/xb9 -+ /x8f/xcf/xba -+ /x8f/xcf/xbb -+ /x8f/xcf/xbc -+ /x8f/xcf/xbd -+ /x8f/xcf/xbe -+ /x8f/xcf/xbf -+ /x8f/xcf/xc0 -+ /x8f/xcf/xc1 -+ /x8f/xcf/xc2 -+ /x8f/xcf/xc3 -+ /x8f/xcf/xc4 -+ /x8f/xcf/xc5 -+ /x8f/xcf/xc6 -+ /x8f/xcf/xc7 -+ /x8f/xcf/xc8 -+ /x8f/xcf/xc9 -+ /x8f/xcf/xca -+ /x8f/xcf/xcb -+ /x8f/xcf/xcc -+ /x8f/xcf/xcd -+ /x8f/xcf/xce -+ /x8f/xcf/xcf -+ /x8f/xcf/xd0 -+ /x8f/xcf/xd1 -+ /x8f/xcf/xd2 -+ /x8f/xcf/xd3 -+ /x8f/xcf/xd4 -+ /x8f/xcf/xd5 -+ /x8f/xcf/xd6 -+ /x8f/xcf/xd7 -+ /x8f/xcf/xd8 -+ /x8f/xcf/xd9 -+ /x8f/xcf/xda -+ /x8f/xcf/xdb -+ /x8f/xcf/xdc -+ /x8f/xcf/xdd -+ /x8f/xcf/xde -+ /x8f/xcf/xdf -+ /x8f/xcf/xe0 -+ /x8f/xcf/xe1 -+ /x8f/xcf/xe2 -+ /x8f/xcf/xe3 -+ /x8f/xcf/xe4 -+ /x8f/xcf/xe5 -+ /x8f/xcf/xe6 -+ /x8f/xcf/xe7 -+ /x8f/xcf/xe8 -+ /x8f/xcf/xe9 -+ /x8f/xcf/xea -+ /x8f/xcf/xeb -+ /x8f/xcf/xec -+ /x8f/xcf/xed -+ /x8f/xcf/xee -+ /x8f/xcf/xef -+ /x8f/xcf/xf0 -+ /x8f/xcf/xf1 -+ /x8f/xcf/xf2 -+ /x8f/xcf/xf3 -+ /x8f/xcf/xf4 -+ /x8f/xcf/xf5 -+ /x8f/xcf/xf6 -+ /x8f/xcf/xf7 -+ /x8f/xcf/xf8 -+ /x8f/xcf/xf9 -+ /x8f/xcf/xfa -+ /x8f/xcf/xfb -+ /x8f/xcf/xfc -+ /x8f/xcf/xfd -+ /x8f/xcf/xfe -+ /x8f/xd0/xa1 -+ /x8f/xd0/xa2 -+ /x8f/xd0/xa3 -+ /x8f/xd0/xa4 -+ /x8f/xd0/xa5 -+ /x8f/xd0/xa6 -+ /x8f/xd0/xa7 -+ /x8f/xd0/xa8 -+ /x8f/xd0/xa9 -+ /x8f/xd0/xaa -+ /x8f/xd0/xab -+ /x8f/xd0/xac -+ /x8f/xd0/xad -+ /x8f/xd0/xae -+ /x8f/xd0/xaf -+ /x8f/xd0/xb0 -+ /x8f/xd0/xb1 -+ /x8f/xd0/xb2 -+ /x8f/xd0/xb3 -+ /x8f/xd0/xb4 -+ /x8f/xd0/xb5 -+ /x8f/xd0/xb6 -+ /x8f/xd0/xb7 -+ /x8f/xd0/xb8 -+ /x8f/xd0/xb9 -+ /x8f/xd0/xba -+ /x8f/xd0/xbb -+ /x8f/xd0/xbc -+ /x8f/xd0/xbd -+ /x8f/xd0/xbe -+ /x8f/xd0/xbf -+ /x8f/xd0/xc0 -+ /x8f/xd0/xc1 -+ /x8f/xd0/xc2 -+ /x8f/xd0/xc3 -+ /x8f/xd0/xc4 -+ /x8f/xd0/xc5 -+ /x8f/xd0/xc6 -+ /x8f/xd0/xc7 -+ /x8f/xd0/xc8 -+ /x8f/xd0/xc9 -+ /x8f/xd0/xca -+ /x8f/xd0/xcb -+ /x8f/xd0/xcc -+ /x8f/xd0/xcd -+ /x8f/xd0/xce -+ /x8f/xd0/xcf -+ /x8f/xd0/xd0 -+ /x8f/xd0/xd1 -+ /x8f/xd0/xd2 -+ /x8f/xd0/xd3 -+ /x8f/xd0/xd4 -+ /x8f/xd0/xd5 -+ /x8f/xd0/xd6 -+ /x8f/xd0/xd7 -+ /x8f/xd0/xd8 -+ /x8f/xd0/xd9 -+ /x8f/xd0/xda -+ /x8f/xd0/xdb -+ /x8f/xd0/xdc -+ /x8f/xd0/xdd -+ /x8f/xd0/xde -+ /x8f/xd0/xdf -+ /x8f/xd0/xe0 -+ /x8f/xd0/xe1 -+ /x8f/xd0/xe2 -+ /x8f/xd0/xe3 -+ /x8f/xd0/xe4 -+ /x8f/xd0/xe5 -+ /x8f/xd0/xe6 -+ /x8f/xd0/xe7 -+ /x8f/xd0/xe8 -+ /x8f/xd0/xe9 -+ /x8f/xd0/xea -+ /x8f/xd0/xeb -+ /x8f/xd0/xec -+ /x8f/xd0/xed -+ /x8f/xd0/xee -+ /x8f/xd0/xef -+ /x8f/xd0/xf0 -+ /x8f/xd0/xf1 -+ /x8f/xd0/xf2 -+ /x8f/xd0/xf3 -+ /x8f/xd0/xf4 -+ /x8f/xd0/xf5 -+ /x8f/xd0/xf6 -+ /x8f/xd0/xf7 -+ /x8f/xd0/xf8 -+ /x8f/xd0/xf9 -+ /x8f/xd0/xfa -+ /x8f/xd0/xfb -+ /x8f/xd0/xfc -+ /x8f/xd0/xfd -+ /x8f/xd0/xfe -+ /x8f/xd1/xa1 -+ /x8f/xd1/xa2 -+ /x8f/xd1/xa3 -+ /x8f/xd1/xa4 -+ /x8f/xd1/xa5 -+ /x8f/xd1/xa6 -+ /x8f/xd1/xa7 -+ /x8f/xd1/xa8 -+ /x8f/xd1/xa9 -+ /x8f/xd1/xaa -+ /x8f/xd1/xab -+ /x8f/xd1/xac -+ /x8f/xd1/xad -+ /x8f/xd1/xae -+ /x8f/xd1/xaf -+ /x8f/xd1/xb0 -+ /x8f/xd1/xb1 -+ /x8f/xd1/xb2 -+ /x8f/xd1/xb3 -+ /x8f/xd1/xb4 -+ /x8f/xd1/xb5 -+ /x8f/xd1/xb6 -+ /x8f/xd1/xb7 -+ /x8f/xd1/xb8 -+ /x8f/xd1/xb9 -+ /x8f/xd1/xba -+ /x8f/xd1/xbb -+ /x8f/xd1/xbc -+ /x8f/xd1/xbd -+ /x8f/xd1/xbe -+ /x8f/xd1/xbf -+ /x8f/xd1/xc0 -+ /x8f/xd1/xc1 -+ /x8f/xd1/xc2 -+ /x8f/xd1/xc3 -+ /x8f/xd1/xc4 -+ /x8f/xd1/xc5 -+ /x8f/xd1/xc6 -+ /x8f/xd1/xc7 -+ /x8f/xd1/xc8 -+ /x8f/xd1/xc9 -+ /x8f/xd1/xca -+ /x8f/xd1/xcb -+ /x8f/xd1/xcc -+ /x8f/xd1/xcd -+ /x8f/xd1/xce -+ /x8f/xd1/xcf -+ /x8f/xd1/xd0 -+ /x8f/xd1/xd1 -+ /x8f/xd1/xd2 -+ /x8f/xd1/xd3 -+ /x8f/xd1/xd4 -+ /x8f/xd1/xd5 -+ /x8f/xd1/xd6 -+ /x8f/xd1/xd7 -+ /x8f/xd1/xd8 -+ /x8f/xd1/xd9 -+ /x8f/xd1/xda -+ /x8f/xd1/xdb -+ /x8f/xd1/xdc -+ /x8f/xd1/xdd -+ /x8f/xd1/xde -+ /x8f/xd1/xdf -+ /x8f/xd1/xe0 -+ /x8f/xd1/xe1 -+ /x8f/xd1/xe2 -+ /x8f/xd1/xe3 -+ /x8f/xd1/xe4 -+ /x8f/xd1/xe5 -+ /x8f/xd1/xe6 -+ /x8f/xd1/xe7 -+ /x8f/xd1/xe8 -+ /x8f/xd1/xe9 -+ /x8f/xd1/xea -+ /x8f/xd1/xeb -+ /x8f/xd1/xec -+ /x8f/xd1/xed -+ /x8f/xd1/xee -+ /x8f/xd1/xef -+ /x8f/xd1/xf0 -+ /x8f/xd1/xf1 -+ /x8f/xd1/xf2 -+ /x8f/xd1/xf3 -+ /x8f/xd1/xf4 -+ /x8f/xd1/xf5 -+ /x8f/xd1/xf6 -+ /x8f/xd1/xf7 -+ /x8f/xd1/xf8 -+ /x8f/xd1/xf9 -+ /x8f/xd1/xfa -+ /x8f/xd1/xfb -+ /x8f/xd1/xfc -+ /x8f/xd1/xfd -+ /x8f/xd1/xfe -+ /x8f/xd2/xa1 -+ /x8f/xd2/xa2 -+ /x8f/xd2/xa3 -+ /x8f/xd2/xa4 -+ /x8f/xd2/xa5 -+ /x8f/xd2/xa6 -+ /x8f/xd2/xa7 -+ /x8f/xd2/xa8 -+ /x8f/xd2/xa9 -+ /x8f/xd2/xaa -+ /x8f/xd2/xab -+ /x8f/xd2/xac -+ /x8f/xd2/xad -+ /x8f/xd2/xae -+ /x8f/xd2/xaf -+ /x8f/xd2/xb0 -+ /x8f/xd2/xb1 -+ /x8f/xd2/xb2 -+ /x8f/xd2/xb3 -+ /x8f/xd2/xb4 -+ /x8f/xd2/xb5 -+ /x8f/xd2/xb6 -+ /x8f/xd2/xb7 -+ /x8f/xd2/xb8 -+ /x8f/xd2/xb9 -+ /x8f/xd2/xba -+ /x8f/xd2/xbb -+ /x8f/xd2/xbc -+ /x8f/xd2/xbd -+ /x8f/xd2/xbe -+ /x8f/xd2/xbf -+ /x8f/xd2/xc0 -+ /x8f/xd2/xc1 -+ /x8f/xd2/xc2 -+ /x8f/xd2/xc3 -+ /x8f/xd2/xc4 -+ /x8f/xd2/xc5 -+ /x8f/xd2/xc6 -+ /x8f/xd2/xc7 -+ /x8f/xd2/xc8 -+ /x8f/xd2/xc9 -+ /x8f/xd2/xca -+ /x8f/xd2/xcb -+ /x8f/xd2/xcc -+ /x8f/xd2/xcd -+ /x8f/xd2/xce -+ /x8f/xd2/xcf -+ /x8f/xd2/xd0 -+ /x8f/xd2/xd1 -+ /x8f/xd2/xd2 -+ /x8f/xd2/xd3 -+ /x8f/xd2/xd4 -+ /x8f/xd2/xd5 -+ /x8f/xd2/xd6 -+ /x8f/xd2/xd7 -+ /x8f/xd2/xd8 -+ /x8f/xd2/xd9 -+ /x8f/xd2/xda -+ /x8f/xd2/xdb -+ /x8f/xd2/xdc -+ /x8f/xd2/xdd -+ /x8f/xd2/xde -+ /x8f/xd2/xdf -+ /x8f/xd2/xe0 -+ /x8f/xd2/xe1 -+ /x8f/xd2/xe2 -+ /x8f/xd2/xe3 -+ /x8f/xd2/xe4 -+ /x8f/xd2/xe5 -+ /x8f/xd2/xe6 -+ /x8f/xd2/xe7 -+ /x8f/xd2/xe8 -+ /x8f/xd2/xe9 -+ /x8f/xd2/xea -+ /x8f/xd2/xeb -+ /x8f/xd2/xec -+ /x8f/xd2/xed -+ /x8f/xd2/xee -+ /x8f/xd2/xef -+ /x8f/xd2/xf0 -+ /x8f/xd2/xf1 -+ /x8f/xd2/xf2 -+ /x8f/xd2/xf3 -+ /x8f/xd2/xf4 -+ /x8f/xd2/xf5 -+ /x8f/xd2/xf6 -+ /x8f/xd2/xf7 -+ /x8f/xd2/xf8 -+ /x8f/xd2/xf9 -+ /x8f/xd2/xfa -+ /x8f/xd2/xfb -+ /x8f/xd2/xfc -+ /x8f/xd2/xfd -+ /x8f/xd2/xfe -+ /x8f/xd3/xa1 -+ /x8f/xd3/xa2 -+ /x8f/xd3/xa3 -+ /x8f/xd3/xa4 -+ /x8f/xd3/xa5 -+ /x8f/xd3/xa6 -+ /x8f/xd3/xa7 -+ /x8f/xd3/xa8 -+ /x8f/xd3/xa9 -+ /x8f/xd3/xaa -+ /x8f/xd3/xab -+ /x8f/xd3/xac -+ /x8f/xd3/xad -+ /x8f/xd3/xae -+ /x8f/xd3/xaf -+ /x8f/xd3/xb0 -+ /x8f/xd3/xb1 -+ /x8f/xd3/xb2 -+ /x8f/xd3/xb3 -+ /x8f/xd3/xb4 -+ /x8f/xd3/xb5 -+ /x8f/xd3/xb6 -+ /x8f/xd3/xb7 -+ /x8f/xd3/xb8 -+ /x8f/xd3/xb9 -+ /x8f/xd3/xba -+ /x8f/xd3/xbb -+ /x8f/xd3/xbc -+ /x8f/xd3/xbd -+ /x8f/xd3/xbe -+ /x8f/xd3/xbf -+ /x8f/xd3/xc0 -+ /x8f/xd3/xc1 -+ /x8f/xd3/xc2 -+ /x8f/xd3/xc3 -+ /x8f/xd3/xc4 -+ /x8f/xd3/xc5 -+ /x8f/xd3/xc6 -+ /x8f/xd3/xc7 -+ /x8f/xd3/xc8 -+ /x8f/xd3/xc9 -+ /x8f/xd3/xca -+ /x8f/xd3/xcb -+ /x8f/xd3/xcc -+ /x8f/xd3/xcd -+ /x8f/xd3/xce -+ /x8f/xd3/xcf -+ /x8f/xd3/xd0 -+ /x8f/xd3/xd1 -+ /x8f/xd3/xd2 -+ /x8f/xd3/xd3 -+ /x8f/xd3/xd4 -+ /x8f/xd3/xd5 -+ /x8f/xd3/xd6 -+ /x8f/xd3/xd7 -+ /x8f/xd3/xd8 -+ /x8f/xd3/xd9 -+ /x8f/xd3/xda -+ /x8f/xd3/xdb -+ /x8f/xd3/xdc -+ /x8f/xd3/xdd -+ /x8f/xd3/xde -+ /x8f/xd3/xdf -+ /x8f/xd3/xe0 -+ /x8f/xd3/xe1 -+ /x8f/xd3/xe2 -+ /x8f/xd3/xe3 -+ /x8f/xd3/xe4 -+ /x8f/xd3/xe5 -+ /x8f/xd3/xe6 -+ /x8f/xd3/xe7 -+ /x8f/xd3/xe8 -+ /x8f/xd3/xe9 -+ /x8f/xd3/xea -+ /x8f/xd3/xeb -+ /x8f/xd3/xec -+ /x8f/xd3/xed -+ /x8f/xd3/xee -+ /x8f/xd3/xef -+ /x8f/xd3/xf0 -+ /x8f/xd3/xf1 -+ /x8f/xd3/xf2 -+ /x8f/xd3/xf3 -+ /x8f/xd3/xf4 -+ /x8f/xd3/xf5 -+ /x8f/xd3/xf6 -+ /x8f/xd3/xf7 -+ /x8f/xd3/xf8 -+ /x8f/xd3/xf9 -+ /x8f/xd3/xfa -+ /x8f/xd3/xfb -+ /x8f/xd3/xfc -+ /x8f/xd3/xfd -+ /x8f/xd3/xfe -+ /x8f/xd4/xa1 -+ /x8f/xd4/xa2 -+ /x8f/xd4/xa3 -+ /x8f/xd4/xa4 -+ /x8f/xd4/xa5 -+ /x8f/xd4/xa6 -+ /x8f/xd4/xa7 -+ /x8f/xd4/xa8 -+ /x8f/xd4/xa9 -+ /x8f/xd4/xaa -+ /x8f/xd4/xab -+ /x8f/xd4/xac -+ /x8f/xd4/xad -+ /x8f/xd4/xae -+ /x8f/xd4/xaf -+ /x8f/xd4/xb0 -+ /x8f/xd4/xb1 -+ /x8f/xd4/xb2 -+ /x8f/xd4/xb3 -+ /x8f/xd4/xb4 -+ /x8f/xd4/xb5 -+ /x8f/xd4/xb6 -+ /x8f/xd4/xb7 -+ /x8f/xd4/xb8 -+ /x8f/xd4/xb9 -+ /x8f/xd4/xba -+ /x8f/xd4/xbb -+ /x8f/xd4/xbc -+ /x8f/xd4/xbd -+ /x8f/xd4/xbe -+ /x8f/xd4/xbf -+ /x8f/xd4/xc0 -+ /x8f/xd4/xc1 -+ /x8f/xd4/xc2 -+ /x8f/xd4/xc3 -+ /x8f/xd4/xc4 -+ /x8f/xd4/xc5 -+ /x8f/xd4/xc6 -+ /x8f/xd4/xc7 -+ /x8f/xd4/xc8 -+ /x8f/xd4/xc9 -+ /x8f/xd4/xca -+ /x8f/xd4/xcb -+ /x8f/xd4/xcc -+ /x8f/xd4/xcd -+ /x8f/xd4/xce -+ /x8f/xd4/xcf -+ /x8f/xd4/xd0 -+ /x8f/xd4/xd1 -+ /x8f/xd4/xd2 -+ /x8f/xd4/xd3 -+ /x8f/xd4/xd4 -+ /x8f/xd4/xd5 -+ /x8f/xd4/xd6 -+ /x8f/xd4/xd7 -+ /x8f/xd4/xd8 -+ /x8f/xd4/xd9 -+ /x8f/xd4/xda -+ /x8f/xd4/xdb -+ /x8f/xd4/xdc -+ /x8f/xd4/xdd -+ /x8f/xd4/xde -+ /x8f/xd4/xdf -+ /x8f/xd4/xe0 -+ /x8f/xd4/xe1 -+ /x8f/xd4/xe2 -+ /x8f/xd4/xe3 -+ /x8f/xd4/xe4 -+ /x8f/xd4/xe5 -+ /x8f/xd4/xe6 -+ /x8f/xd4/xe7 -+ /x8f/xd4/xe8 -+ /x8f/xd4/xe9 -+ /x8f/xd4/xea -+ /x8f/xd4/xeb -+ /x8f/xd4/xec -+ /x8f/xd4/xed -+ /x8f/xd4/xee -+ /x8f/xd4/xef -+ /x8f/xd4/xf0 -+ /x8f/xd4/xf1 -+ /x8f/xd4/xf2 -+ /x8f/xd4/xf3 -+ /x8f/xd4/xf4 -+ /x8f/xd4/xf5 -+ /x8f/xd4/xf6 -+ /x8f/xd4/xf7 -+ /x8f/xd4/xf8 -+ /x8f/xd4/xf9 -+ /x8f/xd4/xfa -+ /x8f/xd4/xfb -+ /x8f/xd4/xfc -+ /x8f/xd4/xfd -+ /x8f/xd4/xfe -+ /x8f/xd5/xa1 -+ /x8f/xd5/xa2 -+ /x8f/xd5/xa3 -+ /x8f/xd5/xa4 -+ /x8f/xd5/xa5 -+ /x8f/xd5/xa6 -+ /x8f/xd5/xa7 -+ /x8f/xd5/xa8 -+ /x8f/xd5/xa9 -+ /x8f/xd5/xaa -+ /x8f/xd5/xab -+ /x8f/xd5/xac -+ /x8f/xd5/xad -+ /x8f/xd5/xae -+ /x8f/xd5/xaf -+ /x8f/xd5/xb0 -+ /x8f/xd5/xb1 -+ /x8f/xd5/xb2 -+ /x8f/xd5/xb3 -+ /x8f/xd5/xb4 -+ /x8f/xd5/xb5 -+ /x8f/xd5/xb6 -+ /x8f/xd5/xb7 -+ /x8f/xd5/xb8 -+ /x8f/xd5/xb9 -+ /x8f/xd5/xba -+ /x8f/xd5/xbb -+ /x8f/xd5/xbc -+ /x8f/xd5/xbd -+ /x8f/xd5/xbe -+ /x8f/xd5/xbf -+ /x8f/xd5/xc0 -+ /x8f/xd5/xc1 -+ /x8f/xd5/xc2 -+ /x8f/xd5/xc3 -+ /x8f/xd5/xc4 -+ /x8f/xd5/xc5 -+ /x8f/xd5/xc6 -+ /x8f/xd5/xc7 -+ /x8f/xd5/xc8 -+ /x8f/xd5/xc9 -+ /x8f/xd5/xca -+ /x8f/xd5/xcb -+ /x8f/xd5/xcc -+ /x8f/xd5/xcd -+ /x8f/xd5/xce -+ /x8f/xd5/xcf -+ /x8f/xd5/xd0 -+ /x8f/xd5/xd1 -+ /x8f/xd5/xd2 -+ /x8f/xd5/xd3 -+ /x8f/xd5/xd4 -+ /x8f/xd5/xd5 -+ /x8f/xd5/xd6 -+ /x8f/xd5/xd7 -+ /x8f/xd5/xd8 -+ /x8f/xd5/xd9 -+ /x8f/xd5/xda -+ /x8f/xd5/xdb -+ /x8f/xd5/xdc -+ /x8f/xd5/xdd -+ /x8f/xd5/xde -+ /x8f/xd5/xdf -+ /x8f/xd5/xe0 -+ /x8f/xd5/xe1 -+ /x8f/xd5/xe2 -+ /x8f/xd5/xe3 -+ /x8f/xd5/xe4 -+ /x8f/xd5/xe5 -+ /x8f/xd5/xe6 -+ /x8f/xd5/xe7 -+ /x8f/xd5/xe8 -+ /x8f/xd5/xe9 -+ /x8f/xd5/xea -+ /x8f/xd5/xeb -+ /x8f/xd5/xec -+ /x8f/xd5/xed -+ /x8f/xd5/xee -+ /x8f/xd5/xef -+ /x8f/xd5/xf0 -+ /x8f/xd5/xf1 -+ /x8f/xd5/xf2 -+ /x8f/xd5/xf3 -+ /x8f/xd5/xf4 -+ /x8f/xd5/xf5 -+ /x8f/xd5/xf6 -+ /x8f/xd5/xf7 -+ /x8f/xd5/xf8 -+ /x8f/xd5/xf9 -+ /x8f/xd5/xfa -+ /x8f/xd5/xfb -+ /x8f/xd5/xfc -+ /x8f/xd5/xfd -+ /x8f/xd5/xfe -+ /x8f/xd6/xa1 -+ /x8f/xd6/xa2 -+ /x8f/xd6/xa3 -+ /x8f/xd6/xa4 -+ /x8f/xd6/xa5 -+ /x8f/xd6/xa6 -+ /x8f/xd6/xa7 -+ /x8f/xd6/xa8 -+ /x8f/xd6/xa9 -+ /x8f/xd6/xaa -+ /x8f/xd6/xab -+ /x8f/xd6/xac -+ /x8f/xd6/xad -+ /x8f/xd6/xae -+ /x8f/xd6/xaf -+ /x8f/xd6/xb0 -+ /x8f/xd6/xb1 -+ /x8f/xd6/xb2 -+ /x8f/xd6/xb3 -+ /x8f/xd6/xb4 -+ /x8f/xd6/xb5 -+ /x8f/xd6/xb6 -+ /x8f/xd6/xb7 -+ /x8f/xd6/xb8 -+ /x8f/xd6/xb9 -+ /x8f/xd6/xba -+ /x8f/xd6/xbb -+ /x8f/xd6/xbc -+ /x8f/xd6/xbd -+ /x8f/xd6/xbe -+ /x8f/xd6/xbf -+ /x8f/xd6/xc0 -+ /x8f/xd6/xc1 -+ /x8f/xd6/xc2 -+ /x8f/xd6/xc3 -+ /x8f/xd6/xc4 -+ /x8f/xd6/xc5 -+ /x8f/xd6/xc6 -+ /x8f/xd6/xc7 -+ /x8f/xd6/xc8 -+ /x8f/xd6/xc9 -+ /x8f/xd6/xca -+ /x8f/xd6/xcb -+ /x8f/xd6/xcc -+ /x8f/xd6/xcd -+ /x8f/xd6/xce -+ /x8f/xd6/xcf -+ /x8f/xd6/xd0 -+ /x8f/xd6/xd1 -+ /x8f/xd6/xd2 -+ /x8f/xd6/xd3 -+ /x8f/xd6/xd4 -+ /x8f/xd6/xd5 -+ /x8f/xd6/xd6 -+ /x8f/xd6/xd7 -+ /x8f/xd6/xd8 -+ /x8f/xd6/xd9 -+ /x8f/xd6/xda -+ /x8f/xd6/xdb -+ /x8f/xd6/xdc -+ /x8f/xd6/xdd -+ /x8f/xd6/xde -+ /x8f/xd6/xdf -+ /x8f/xd6/xe0 -+ /x8f/xd6/xe1 -+ /x8f/xd6/xe2 -+ /x8f/xd6/xe3 -+ /x8f/xd6/xe4 -+ /x8f/xd6/xe5 -+ /x8f/xd6/xe6 -+ /x8f/xd6/xe7 -+ /x8f/xd6/xe8 -+ /x8f/xd6/xe9 -+ /x8f/xd6/xea -+ /x8f/xd6/xeb -+ /x8f/xd6/xec -+ /x8f/xd6/xed -+ /x8f/xd6/xee -+ /x8f/xd6/xef -+ /x8f/xd6/xf0 -+ /x8f/xd6/xf1 -+ /x8f/xd6/xf2 -+ /x8f/xd6/xf3 -+ /x8f/xd6/xf4 -+ /x8f/xd6/xf5 -+ /x8f/xd6/xf6 -+ /x8f/xd6/xf7 -+ /x8f/xd6/xf8 -+ /x8f/xd6/xf9 -+ /x8f/xd6/xfa -+ /x8f/xd6/xfb -+ /x8f/xd6/xfc -+ /x8f/xd6/xfd -+ /x8f/xd6/xfe -+ /x8f/xd7/xa1 -+ /x8f/xd7/xa2 -+ /x8f/xd7/xa3 -+ /x8f/xd7/xa4 -+ /x8f/xd7/xa5 -+ /x8f/xd7/xa6 -+ /x8f/xd7/xa7 -+ /x8f/xd7/xa8 -+ /x8f/xd7/xa9 -+ /x8f/xd7/xaa -+ /x8f/xd7/xab -+ /x8f/xd7/xac -+ /x8f/xd7/xad -+ /x8f/xd7/xae -+ /x8f/xd7/xaf -+ /x8f/xd7/xb0 -+ /x8f/xd7/xb1 -+ /x8f/xd7/xb2 -+ /x8f/xd7/xb3 -+ /x8f/xd7/xb4 -+ /x8f/xd7/xb5 -+ /x8f/xd7/xb6 -+ /x8f/xd7/xb7 -+ /x8f/xd7/xb8 -+ /x8f/xd7/xb9 -+ /x8f/xd7/xba -+ /x8f/xd7/xbb -+ /x8f/xd7/xbc -+ /x8f/xd7/xbd -+ /x8f/xd7/xbe -+ /x8f/xd7/xbf -+ /x8f/xd7/xc0 -+ /x8f/xd7/xc1 -+ /x8f/xd7/xc2 -+ /x8f/xd7/xc3 -+ /x8f/xd7/xc4 -+ /x8f/xd7/xc5 -+ /x8f/xd7/xc6 -+ /x8f/xd7/xc7 -+ /x8f/xd7/xc8 -+ /x8f/xd7/xc9 -+ /x8f/xd7/xca -+ /x8f/xd7/xcb -+ /x8f/xd7/xcc -+ /x8f/xd7/xcd -+ /x8f/xd7/xce -+ /x8f/xd7/xcf -+ /x8f/xd7/xd0 -+ /x8f/xd7/xd1 -+ /x8f/xd7/xd2 -+ /x8f/xd7/xd3 -+ /x8f/xd7/xd4 -+ /x8f/xd7/xd5 -+ /x8f/xd7/xd6 -+ /x8f/xd7/xd7 -+ /x8f/xd7/xd8 -+ /x8f/xd7/xd9 -+ /x8f/xd7/xda -+ /x8f/xd7/xdb -+ /x8f/xd7/xdc -+ /x8f/xd7/xdd -+ /x8f/xd7/xde -+ /x8f/xd7/xdf -+ /x8f/xd7/xe0 -+ /x8f/xd7/xe1 -+ /x8f/xd7/xe2 -+ /x8f/xd7/xe3 -+ /x8f/xd7/xe4 -+ /x8f/xd7/xe5 -+ /x8f/xd7/xe6 -+ /x8f/xd7/xe7 -+ /x8f/xd7/xe8 -+ /x8f/xd7/xe9 -+ /x8f/xd7/xea -+ /x8f/xd7/xeb -+ /x8f/xd7/xec -+ /x8f/xd7/xed -+ /x8f/xd7/xee -+ /x8f/xd7/xef -+ /x8f/xd7/xf0 -+ /x8f/xd7/xf1 -+ /x8f/xd7/xf2 -+ /x8f/xd7/xf3 -+ /x8f/xd7/xf4 -+ /x8f/xd7/xf5 -+ /x8f/xd7/xf6 -+ /x8f/xd7/xf7 -+ /x8f/xd7/xf8 -+ /x8f/xd7/xf9 -+ /x8f/xd7/xfa -+ /x8f/xd7/xfb -+ /x8f/xd7/xfc -+ /x8f/xd7/xfd -+ /x8f/xd7/xfe -+ /x8f/xd8/xa1 -+ /x8f/xd8/xa2 -+ /x8f/xd8/xa3 -+ /x8f/xd8/xa4 -+ /x8f/xd8/xa5 -+ /x8f/xd8/xa6 -+ /x8f/xd8/xa7 -+ /x8f/xd8/xa8 -+ /x8f/xd8/xa9 -+ /x8f/xd8/xaa -+ /x8f/xd8/xab -+ /x8f/xd8/xac -+ /x8f/xd8/xad -+ /x8f/xd8/xae -+ /x8f/xd8/xaf -+ /x8f/xd8/xb0 -+ /x8f/xd8/xb1 -+ /x8f/xd8/xb2 -+ /x8f/xd8/xb3 -+ /x8f/xd8/xb4 -+ /x8f/xd8/xb5 -+ /x8f/xd8/xb6 -+ /x8f/xd8/xb7 -+ /x8f/xd8/xb8 -+ /x8f/xd8/xb9 -+ /x8f/xd8/xba -+ /x8f/xd8/xbb -+ /x8f/xd8/xbc -+ /x8f/xd8/xbd -+ /x8f/xd8/xbe -+ /x8f/xd8/xbf -+ /x8f/xd8/xc0 -+ /x8f/xd8/xc1 -+ /x8f/xd8/xc2 -+ /x8f/xd8/xc3 -+ /x8f/xd8/xc4 -+ /x8f/xd8/xc5 -+ /x8f/xd8/xc6 -+ /x8f/xd8/xc7 -+ /x8f/xd8/xc8 -+ /x8f/xd8/xc9 -+ /x8f/xd8/xca -+ /x8f/xd8/xcb -+ /x8f/xd8/xcc -+ /x8f/xd8/xcd -+ /x8f/xd8/xce -+ /x8f/xd8/xcf -+ /x8f/xd8/xd0 -+ /x8f/xd8/xd1 -+ /x8f/xd8/xd2 -+ /x8f/xd8/xd3 -+ /x8f/xd8/xd4 -+ /x8f/xd8/xd5 -+ /x8f/xd8/xd6 -+ /x8f/xd8/xd7 -+ /x8f/xd8/xd8 -+ /x8f/xd8/xd9 -+ /x8f/xd8/xda -+ /x8f/xd8/xdb -+ /x8f/xd8/xdc -+ /x8f/xd8/xdd -+ /x8f/xd8/xde -+ /x8f/xd8/xdf -+ /x8f/xd8/xe0 -+ /x8f/xd8/xe1 -+ /x8f/xd8/xe2 -+ /x8f/xd8/xe3 -+ /x8f/xd8/xe4 -+ /x8f/xd8/xe5 -+ /x8f/xd8/xe6 -+ /x8f/xd8/xe7 -+ /x8f/xd8/xe8 -+ /x8f/xd8/xe9 -+ /x8f/xd8/xea -+ /x8f/xd8/xeb -+ /x8f/xd8/xec -+ /x8f/xd8/xed -+ /x8f/xd8/xee -+ /x8f/xd8/xef -+ /x8f/xd8/xf0 -+ /x8f/xd8/xf1 -+ /x8f/xd8/xf2 -+ /x8f/xd8/xf3 -+ /x8f/xd8/xf4 -+ /x8f/xd8/xf5 -+ /x8f/xd8/xf6 -+ /x8f/xd8/xf7 -+ /x8f/xd8/xf8 -+ /x8f/xd8/xf9 -+ /x8f/xd8/xfa -+ /x8f/xd8/xfb -+ /x8f/xd8/xfc -+ /x8f/xd8/xfd -+ /x8f/xd8/xfe -+ /x8f/xd9/xa1 -+ /x8f/xd9/xa2 -+ /x8f/xd9/xa3 -+ /x8f/xd9/xa4 -+ /x8f/xd9/xa5 -+ /x8f/xd9/xa6 -+ /x8f/xd9/xa7 -+ /x8f/xd9/xa8 -+ /x8f/xd9/xa9 -+ /x8f/xd9/xaa -+ /x8f/xd9/xab -+ /x8f/xd9/xac -+ /x8f/xd9/xad -+ /x8f/xd9/xae -+ /x8f/xd9/xaf -+ /x8f/xd9/xb0 -+ /x8f/xd9/xb1 -+ /x8f/xd9/xb2 -+ /x8f/xd9/xb3 -+ /x8f/xd9/xb4 -+ /x8f/xd9/xb5 -+ /x8f/xd9/xb6 -+ /x8f/xd9/xb7 -+ /x8f/xd9/xb8 -+ /x8f/xd9/xb9 -+ /x8f/xd9/xba -+ /x8f/xd9/xbb -+ /x8f/xd9/xbc -+ /x8f/xd9/xbd -+ /x8f/xd9/xbe -+ /x8f/xd9/xbf -+ /x8f/xd9/xc0 -+ /x8f/xd9/xc1 -+ /x8f/xd9/xc2 -+ /x8f/xd9/xc3 -+ /x8f/xd9/xc4 -+ /x8f/xd9/xc5 -+ /x8f/xd9/xc6 -+ /x8f/xd9/xc7 -+ /x8f/xd9/xc8 -+ /x8f/xd9/xc9 -+ /x8f/xd9/xca -+ /x8f/xd9/xcb -+ /x8f/xd9/xcc -+ /x8f/xd9/xcd -+ /x8f/xd9/xce -+ /x8f/xd9/xcf -+ /x8f/xd9/xd0 -+ /x8f/xd9/xd1 -+ /x8f/xd9/xd2 -+ /x8f/xd9/xd3 -+ /x8f/xd9/xd4 -+ /x8f/xd9/xd5 -+ /x8f/xd9/xd6 -+ /x8f/xd9/xd7 -+ /x8f/xd9/xd8 -+ /x8f/xd9/xd9 -+ /x8f/xd9/xda -+ /x8f/xd9/xdb -+ /x8f/xd9/xdc -+ /x8f/xd9/xdd -+ /x8f/xd9/xde -+ /x8f/xd9/xdf -+ /x8f/xd9/xe0 -+ /x8f/xd9/xe1 -+ /x8f/xd9/xe2 -+ /x8f/xd9/xe3 -+ /x8f/xd9/xe4 -+ /x8f/xd9/xe5 -+ /x8f/xd9/xe6 -+ /x8f/xd9/xe7 -+ /x8f/xd9/xe8 -+ /x8f/xd9/xe9 -+ /x8f/xd9/xea -+ /x8f/xd9/xeb -+ /x8f/xd9/xec -+ /x8f/xd9/xed -+ /x8f/xd9/xee -+ /x8f/xd9/xef -+ /x8f/xd9/xf0 -+ /x8f/xd9/xf1 -+ /x8f/xd9/xf2 -+ /x8f/xd9/xf3 -+ /x8f/xd9/xf4 -+ /x8f/xd9/xf5 -+ /x8f/xd9/xf6 -+ /x8f/xd9/xf7 -+ /x8f/xd9/xf8 -+ /x8f/xd9/xf9 -+ /x8f/xd9/xfa -+ /x8f/xd9/xfb -+ /x8f/xd9/xfc -+ /x8f/xd9/xfd -+ /x8f/xd9/xfe -+ /x8f/xda/xa1 -+ /x8f/xda/xa2 -+ /x8f/xda/xa3 -+ /x8f/xda/xa4 -+ /x8f/xda/xa5 -+ /x8f/xda/xa6 -+ /x8f/xda/xa7 -+ /x8f/xda/xa8 -+ /x8f/xda/xa9 -+ /x8f/xda/xaa -+ /x8f/xda/xab -+ /x8f/xda/xac -+ /x8f/xda/xad -+ /x8f/xda/xae -+ /x8f/xda/xaf -+ /x8f/xda/xb0 -+ /x8f/xda/xb1 -+ /x8f/xda/xb2 -+ /x8f/xda/xb3 -+ /x8f/xda/xb4 -+ /x8f/xda/xb5 -+ /x8f/xda/xb6 -+ /x8f/xda/xb7 -+ /x8f/xda/xb8 -+ /x8f/xda/xb9 -+ /x8f/xda/xba -+ /x8f/xda/xbb -+ /x8f/xda/xbc -+ /x8f/xda/xbd -+ /x8f/xda/xbe -+ /x8f/xda/xbf -+ /x8f/xda/xc0 -+ /x8f/xda/xc1 -+ /x8f/xda/xc2 -+ /x8f/xda/xc3 -+ /x8f/xda/xc4 -+ /x8f/xda/xc5 -+ /x8f/xda/xc6 -+ /x8f/xda/xc7 -+ /x8f/xda/xc8 -+ /x8f/xda/xc9 -+ /x8f/xda/xca -+ /x8f/xda/xcb -+ /x8f/xda/xcc -+ /x8f/xda/xcd -+ /x8f/xda/xce -+ /x8f/xda/xcf -+ /x8f/xda/xd0 -+ /x8f/xda/xd1 -+ /x8f/xda/xd2 -+ /x8f/xda/xd3 -+ /x8f/xda/xd4 -+ /x8f/xda/xd5 -+ /x8f/xda/xd6 -+ /x8f/xda/xd7 -+ /x8f/xda/xd8 -+ /x8f/xda/xd9 -+ /x8f/xda/xda -+ /x8f/xda/xdb -+ /x8f/xda/xdc -+ /x8f/xda/xdd -+ /x8f/xda/xde -+ /x8f/xda/xdf -+ /x8f/xda/xe0 -+ /x8f/xda/xe1 -+ /x8f/xda/xe2 -+ /x8f/xda/xe3 -+ /x8f/xda/xe4 -+ /x8f/xda/xe5 -+ /x8f/xda/xe6 -+ /x8f/xda/xe7 -+ /x8f/xda/xe8 -+ /x8f/xda/xe9 -+ /x8f/xda/xea -+ /x8f/xda/xeb -+ /x8f/xda/xec -+ /x8f/xda/xed -+ /x8f/xda/xee -+ /x8f/xda/xef -+ /x8f/xda/xf0 -+ /x8f/xda/xf1 -+ /x8f/xda/xf2 -+ /x8f/xda/xf3 -+ /x8f/xda/xf4 -+ /x8f/xda/xf5 -+ /x8f/xda/xf6 -+ /x8f/xda/xf7 -+ /x8f/xda/xf8 -+ /x8f/xda/xf9 -+ /x8f/xda/xfa -+ /x8f/xda/xfb -+ /x8f/xda/xfc -+ /x8f/xda/xfd -+ /x8f/xda/xfe -+ /x8f/xdb/xa1 -+ /x8f/xdb/xa2 -+ /x8f/xdb/xa3 -+ /x8f/xdb/xa4 -+ /x8f/xdb/xa5 -+ /x8f/xdb/xa6 -+ /x8f/xdb/xa7 -+ /x8f/xdb/xa8 -+ /x8f/xdb/xa9 -+ /x8f/xdb/xaa -+ /x8f/xdb/xab -+ /x8f/xdb/xac -+ /x8f/xdb/xad -+ /x8f/xdb/xae -+ /x8f/xdb/xaf -+ /x8f/xdb/xb0 -+ /x8f/xdb/xb1 -+ /x8f/xdb/xb2 -+ /x8f/xdb/xb3 -+ /x8f/xdb/xb4 -+ /x8f/xdb/xb5 -+ /x8f/xdb/xb6 -+ /x8f/xdb/xb7 -+ /x8f/xdb/xb8 -+ /x8f/xdb/xb9 -+ /x8f/xdb/xba -+ /x8f/xdb/xbb -+ /x8f/xdb/xbc -+ /x8f/xdb/xbd -+ /x8f/xdb/xbe -+ /x8f/xdb/xbf -+ /x8f/xdb/xc0 -+ /x8f/xdb/xc1 -+ /x8f/xdb/xc2 -+ /x8f/xdb/xc3 -+ /x8f/xdb/xc4 -+ /x8f/xdb/xc5 -+ /x8f/xdb/xc6 -+ /x8f/xdb/xc7 -+ /x8f/xdb/xc8 -+ /x8f/xdb/xc9 -+ /x8f/xdb/xca -+ /x8f/xdb/xcb -+ /x8f/xdb/xcc -+ /x8f/xdb/xcd -+ /x8f/xdb/xce -+ /x8f/xdb/xcf -+ /x8f/xdb/xd0 -+ /x8f/xdb/xd1 -+ /x8f/xdb/xd2 -+ /x8f/xdb/xd3 -+ /x8f/xdb/xd4 -+ /x8f/xdb/xd5 -+ /x8f/xdb/xd6 -+ /x8f/xdb/xd7 -+ /x8f/xdb/xd8 -+ /x8f/xdb/xd9 -+ /x8f/xdb/xda -+ /x8f/xdb/xdb -+ /x8f/xdb/xdc -+ /x8f/xdb/xdd -+ /x8f/xdb/xde -+ /x8f/xdb/xdf -+ /x8f/xdb/xe0 -+ /x8f/xdb/xe1 -+ /x8f/xdb/xe2 -+ /x8f/xdb/xe3 -+ /x8f/xdb/xe4 -+ /x8f/xdb/xe5 -+ /x8f/xdb/xe6 -+ /x8f/xdb/xe7 -+ /x8f/xdb/xe8 -+ /x8f/xdb/xe9 -+ /x8f/xdb/xea -+ /x8f/xdb/xeb -+ /x8f/xdb/xec -+ /x8f/xdb/xed -+ /x8f/xdb/xee -+ /x8f/xdb/xef -+ /x8f/xdb/xf0 -+ /x8f/xdb/xf1 -+ /x8f/xdb/xf2 -+ /x8f/xdb/xf3 -+ /x8f/xdb/xf4 -+ /x8f/xdb/xf5 -+ /x8f/xdb/xf6 -+ /x8f/xdb/xf7 -+ /x8f/xdb/xf8 -+ /x8f/xdb/xf9 -+ /x8f/xdb/xfa -+ /x8f/xdb/xfb -+ /x8f/xdb/xfc -+ /x8f/xdb/xfd -+ /x8f/xdb/xfe -+ /x8f/xdc/xa1 -+ /x8f/xdc/xa2 -+ /x8f/xdc/xa3 -+ /x8f/xdc/xa4 -+ /x8f/xdc/xa5 -+ /x8f/xdc/xa6 -+ /x8f/xdc/xa7 -+ /x8f/xdc/xa8 -+ /x8f/xdc/xa9 -+ /x8f/xdc/xaa -+ /x8f/xdc/xab -+ /x8f/xdc/xac -+ /x8f/xdc/xad -+ /x8f/xdc/xae -+ /x8f/xdc/xaf -+ /x8f/xdc/xb0 -+ /x8f/xdc/xb1 -+ /x8f/xdc/xb2 -+ /x8f/xdc/xb3 -+ /x8f/xdc/xb4 -+ /x8f/xdc/xb5 -+ /x8f/xdc/xb6 -+ /x8f/xdc/xb7 -+ /x8f/xdc/xb8 -+ /x8f/xdc/xb9 -+ /x8f/xdc/xba -+ /x8f/xdc/xbb -+ /x8f/xdc/xbc -+ /x8f/xdc/xbd -+ /x8f/xdc/xbe -+ /x8f/xdc/xbf -+ /x8f/xdc/xc0 -+ /x8f/xdc/xc1 -+ /x8f/xdc/xc2 -+ /x8f/xdc/xc3 -+ /x8f/xdc/xc4 -+ /x8f/xdc/xc5 -+ /x8f/xdc/xc6 -+ /x8f/xdc/xc7 -+ /x8f/xdc/xc8 -+ /x8f/xdc/xc9 -+ /x8f/xdc/xca -+ /x8f/xdc/xcb -+ /x8f/xdc/xcc -+ /x8f/xdc/xcd -+ /x8f/xdc/xce -+ /x8f/xdc/xcf -+ /x8f/xdc/xd0 -+ /x8f/xdc/xd1 -+ /x8f/xdc/xd2 -+ /x8f/xdc/xd3 -+ /x8f/xdc/xd4 -+ /x8f/xdc/xd5 -+ /x8f/xdc/xd6 -+ /x8f/xdc/xd7 -+ /x8f/xdc/xd8 -+ /x8f/xdc/xd9 -+ /x8f/xdc/xda -+ /x8f/xdc/xdb -+ /x8f/xdc/xdc -+ /x8f/xdc/xdd -+ /x8f/xdc/xde -+ /x8f/xdc/xdf -+ /x8f/xdc/xe0 -+ /x8f/xdc/xe1 -+ /x8f/xdc/xe2 -+ /x8f/xdc/xe3 -+ /x8f/xdc/xe4 -+ /x8f/xdc/xe5 -+ /x8f/xdc/xe6 -+ /x8f/xdc/xe7 -+ /x8f/xdc/xe8 -+ /x8f/xdc/xe9 -+ /x8f/xdc/xea -+ /x8f/xdc/xeb -+ /x8f/xdc/xec -+ /x8f/xdc/xed -+ /x8f/xdc/xee -+ /x8f/xdc/xef -+ /x8f/xdc/xf0 -+ /x8f/xdc/xf1 -+ /x8f/xdc/xf2 -+ /x8f/xdc/xf3 -+ /x8f/xdc/xf4 -+ /x8f/xdc/xf5 -+ /x8f/xdc/xf6 -+ /x8f/xdc/xf7 -+ /x8f/xdc/xf8 -+ /x8f/xdc/xf9 -+ /x8f/xdc/xfa -+ /x8f/xdc/xfb -+ /x8f/xdc/xfc -+ /x8f/xdc/xfd -+ /x8f/xdc/xfe -+ /x8f/xdd/xa1 -+ /x8f/xdd/xa2 -+ /x8f/xdd/xa3 -+ /x8f/xdd/xa4 -+ /x8f/xdd/xa5 -+ /x8f/xdd/xa6 -+ /x8f/xdd/xa7 -+ /x8f/xdd/xa8 -+ /x8f/xdd/xa9 -+ /x8f/xdd/xaa -+ /x8f/xdd/xab -+ /x8f/xdd/xac -+ /x8f/xdd/xad -+ /x8f/xdd/xae -+ /x8f/xdd/xaf -+ /x8f/xdd/xb0 -+ /x8f/xdd/xb1 -+ /x8f/xdd/xb2 -+ /x8f/xdd/xb3 -+ /x8f/xdd/xb4 -+ /x8f/xdd/xb5 -+ /x8f/xdd/xb6 -+ /x8f/xdd/xb7 -+ /x8f/xdd/xb8 -+ /x8f/xdd/xb9 -+ /x8f/xdd/xba -+ /x8f/xdd/xbb -+ /x8f/xdd/xbc -+ /x8f/xdd/xbd -+ /x8f/xdd/xbe -+ /x8f/xdd/xbf -+ /x8f/xdd/xc0 -+ /x8f/xdd/xc1 -+ /x8f/xdd/xc2 -+ /x8f/xdd/xc3 -+ /x8f/xdd/xc4 -+ /x8f/xdd/xc5 -+ /x8f/xdd/xc6 -+ /x8f/xdd/xc7 -+ /x8f/xdd/xc8 -+ /x8f/xdd/xc9 -+ /x8f/xdd/xca -+ /x8f/xdd/xcb -+ /x8f/xdd/xcc -+ /x8f/xdd/xcd -+ /x8f/xdd/xce -+ /x8f/xdd/xcf -+ /x8f/xdd/xd0 -+ /x8f/xdd/xd1 -+ /x8f/xdd/xd2 -+ /x8f/xdd/xd3 -+ /x8f/xdd/xd4 -+ /x8f/xdd/xd5 -+ /x8f/xdd/xd6 -+ /x8f/xdd/xd7 -+ /x8f/xdd/xd8 -+ /x8f/xdd/xd9 -+ /x8f/xdd/xda -+ /x8f/xdd/xdb -+ /x8f/xdd/xdc -+ /x8f/xdd/xdd -+ /x8f/xdd/xde -+ /x8f/xdd/xdf -+ /x8f/xdd/xe0 -+ /x8f/xdd/xe1 -+ /x8f/xdd/xe2 -+ /x8f/xdd/xe3 -+ /x8f/xdd/xe4 -+ /x8f/xdd/xe5 -+ /x8f/xdd/xe6 -+ /x8f/xdd/xe7 -+ /x8f/xdd/xe8 -+ /x8f/xdd/xe9 -+ /x8f/xdd/xea -+ /x8f/xdd/xeb -+ /x8f/xdd/xec -+ /x8f/xdd/xed -+ /x8f/xdd/xee -+ /x8f/xdd/xef -+ /x8f/xdd/xf0 -+ /x8f/xdd/xf1 -+ /x8f/xdd/xf2 -+ /x8f/xdd/xf3 -+ /x8f/xdd/xf4 -+ /x8f/xdd/xf5 -+ /x8f/xdd/xf6 -+ /x8f/xdd/xf7 -+ /x8f/xdd/xf8 -+ /x8f/xdd/xf9 -+ /x8f/xdd/xfa -+ /x8f/xdd/xfb -+ /x8f/xdd/xfc -+ /x8f/xdd/xfd -+ /x8f/xdd/xfe -+ /x8f/xde/xa1 -+ /x8f/xde/xa2 -+ /x8f/xde/xa3 -+ /x8f/xde/xa4 -+ /x8f/xde/xa5 -+ /x8f/xde/xa6 -+ /x8f/xde/xa7 -+ /x8f/xde/xa8 -+ /x8f/xde/xa9 -+ /x8f/xde/xaa -+ /x8f/xde/xab -+ /x8f/xde/xac -+ /x8f/xde/xad -+ /x8f/xde/xae -+ /x8f/xde/xaf -+ /x8f/xde/xb0 -+ /x8f/xde/xb1 -+ /x8f/xde/xb2 -+ /x8f/xde/xb3 -+ /x8f/xde/xb4 -+ /x8f/xde/xb5 -+ /x8f/xde/xb6 -+ /x8f/xde/xb7 -+ /x8f/xde/xb8 -+ /x8f/xde/xb9 -+ /x8f/xde/xba -+ /x8f/xde/xbb -+ /x8f/xde/xbc -+ /x8f/xde/xbd -+ /x8f/xde/xbe -+ /x8f/xde/xbf -+ /x8f/xde/xc0 -+ /x8f/xde/xc1 -+ /x8f/xde/xc2 -+ /x8f/xde/xc3 -+ /x8f/xde/xc4 -+ /x8f/xde/xc5 -+ /x8f/xde/xc6 -+ /x8f/xde/xc7 -+ /x8f/xde/xc8 -+ /x8f/xde/xc9 -+ /x8f/xde/xca -+ /x8f/xde/xcb -+ /x8f/xde/xcc -+ /x8f/xde/xcd -+ /x8f/xde/xce -+ /x8f/xde/xcf -+ /x8f/xde/xd0 -+ /x8f/xde/xd1 -+ /x8f/xde/xd2 -+ /x8f/xde/xd3 -+ /x8f/xde/xd4 -+ /x8f/xde/xd5 -+ /x8f/xde/xd6 -+ /x8f/xde/xd7 -+ /x8f/xde/xd8 -+ /x8f/xde/xd9 -+ /x8f/xde/xda -+ /x8f/xde/xdb -+ /x8f/xde/xdc -+ /x8f/xde/xdd -+ /x8f/xde/xde -+ /x8f/xde/xdf -+ /x8f/xde/xe0 -+ /x8f/xde/xe1 -+ /x8f/xde/xe2 -+ /x8f/xde/xe3 -+ /x8f/xde/xe4 -+ /x8f/xde/xe5 -+ /x8f/xde/xe6 -+ /x8f/xde/xe7 -+ /x8f/xde/xe8 -+ /x8f/xde/xe9 -+ /x8f/xde/xea -+ /x8f/xde/xeb -+ /x8f/xde/xec -+ /x8f/xde/xed -+ /x8f/xde/xee -+ /x8f/xde/xef -+ /x8f/xde/xf0 -+ /x8f/xde/xf1 -+ /x8f/xde/xf2 -+ /x8f/xde/xf3 -+ /x8f/xde/xf4 -+ /x8f/xde/xf5 -+ /x8f/xde/xf6 -+ /x8f/xde/xf7 -+ /x8f/xde/xf8 -+ /x8f/xde/xf9 -+ /x8f/xde/xfa -+ /x8f/xde/xfb -+ /x8f/xde/xfc -+ /x8f/xde/xfd -+ /x8f/xde/xfe -+ /x8f/xdf/xa1 -+ /x8f/xdf/xa2 -+ /x8f/xdf/xa3 -+ /x8f/xdf/xa4 -+ /x8f/xdf/xa5 -+ /x8f/xdf/xa6 -+ /x8f/xdf/xa7 -+ /x8f/xdf/xa8 -+ /x8f/xdf/xa9 -+ /x8f/xdf/xaa -+ /x8f/xdf/xab -+ /x8f/xdf/xac -+ /x8f/xdf/xad -+ /x8f/xdf/xae -+ /x8f/xdf/xaf -+ /x8f/xdf/xb0 -+ /x8f/xdf/xb1 -+ /x8f/xdf/xb2 -+ /x8f/xdf/xb3 -+ /x8f/xdf/xb4 -+ /x8f/xdf/xb5 -+ /x8f/xdf/xb6 -+ /x8f/xdf/xb7 -+ /x8f/xdf/xb8 -+ /x8f/xdf/xb9 -+ /x8f/xdf/xba -+ /x8f/xdf/xbb -+ /x8f/xdf/xbc -+ /x8f/xdf/xbd -+ /x8f/xdf/xbe -+ /x8f/xdf/xbf -+ /x8f/xdf/xc0 -+ /x8f/xdf/xc1 -+ /x8f/xdf/xc2 -+ /x8f/xdf/xc3 -+ /x8f/xdf/xc4 -+ /x8f/xdf/xc5 -+ /x8f/xdf/xc6 -+ /x8f/xdf/xc7 -+ /x8f/xdf/xc8 -+ /x8f/xdf/xc9 -+ /x8f/xdf/xca -+ /x8f/xdf/xcb -+ /x8f/xdf/xcc -+ /x8f/xdf/xcd -+ /x8f/xdf/xce -+ /x8f/xdf/xcf -+ /x8f/xdf/xd0 -+ /x8f/xdf/xd1 -+ /x8f/xdf/xd2 -+ /x8f/xdf/xd3 -+ /x8f/xdf/xd4 -+ /x8f/xdf/xd5 -+ /x8f/xdf/xd6 -+ /x8f/xdf/xd7 -+ /x8f/xdf/xd8 -+ /x8f/xdf/xd9 -+ /x8f/xdf/xda -+ /x8f/xdf/xdb -+ /x8f/xdf/xdc -+ /x8f/xdf/xdd -+ /x8f/xdf/xde -+ /x8f/xdf/xdf -+ /x8f/xdf/xe0 -+ /x8f/xdf/xe1 -+ /x8f/xdf/xe2 -+ /x8f/xdf/xe3 -+ /x8f/xdf/xe4 -+ /x8f/xdf/xe5 -+ /x8f/xdf/xe6 -+ /x8f/xdf/xe7 -+ /x8f/xdf/xe8 -+ /x8f/xdf/xe9 -+ /x8f/xdf/xea -+ /x8f/xdf/xeb -+ /x8f/xdf/xec -+ /x8f/xdf/xed -+ /x8f/xdf/xee -+ /x8f/xdf/xef -+ /x8f/xdf/xf0 -+ /x8f/xdf/xf1 -+ /x8f/xdf/xf2 -+ /x8f/xdf/xf3 -+ /x8f/xdf/xf4 -+ /x8f/xdf/xf5 -+ /x8f/xdf/xf6 -+ /x8f/xdf/xf7 -+ /x8f/xdf/xf8 -+ /x8f/xdf/xf9 -+ /x8f/xdf/xfa -+ /x8f/xdf/xfb -+ /x8f/xdf/xfc -+ /x8f/xdf/xfd -+ /x8f/xdf/xfe -+ /x8f/xe0/xa1 -+ /x8f/xe0/xa2 -+ /x8f/xe0/xa3 -+ /x8f/xe0/xa4 -+ /x8f/xe0/xa5 -+ /x8f/xe0/xa6 -+ /x8f/xe0/xa7 -+ /x8f/xe0/xa8 -+ /x8f/xe0/xa9 -+ /x8f/xe0/xaa -+ /x8f/xe0/xab -+ /x8f/xe0/xac -+ /x8f/xe0/xad -+ /x8f/xe0/xae -+ /x8f/xe0/xaf -+ /x8f/xe0/xb0 -+ /x8f/xe0/xb1 -+ /x8f/xe0/xb2 -+ /x8f/xe0/xb3 -+ /x8f/xe0/xb4 -+ /x8f/xe0/xb5 -+ /x8f/xe0/xb6 -+ /x8f/xe0/xb7 -+ /x8f/xe0/xb8 -+ /x8f/xe0/xb9 -+ /x8f/xe0/xba -+ /x8f/xe0/xbb -+ /x8f/xe0/xbc -+ /x8f/xe0/xbd -+ /x8f/xe0/xbe -+ /x8f/xe0/xbf -+ /x8f/xe0/xc0 -+ /x8f/xe0/xc1 -+ /x8f/xe0/xc2 -+ /x8f/xe0/xc3 -+ /x8f/xe0/xc4 -+ /x8f/xe0/xc5 -+ /x8f/xe0/xc6 -+ /x8f/xe0/xc7 -+ /x8f/xe0/xc8 -+ /x8f/xe0/xc9 -+ /x8f/xe0/xca -+ /x8f/xe0/xcb -+ /x8f/xe0/xcc -+ /x8f/xe0/xcd -+ /x8f/xe0/xce -+ /x8f/xe0/xcf -+ /x8f/xe0/xd0 -+ /x8f/xe0/xd1 -+ /x8f/xe0/xd2 -+ /x8f/xe0/xd3 -+ /x8f/xe0/xd4 -+ /x8f/xe0/xd5 -+ /x8f/xe0/xd6 -+ /x8f/xe0/xd7 -+ /x8f/xe0/xd8 -+ /x8f/xe0/xd9 -+ /x8f/xe0/xda -+ /x8f/xe0/xdb -+ /x8f/xe0/xdc -+ /x8f/xe0/xdd -+ /x8f/xe0/xde -+ /x8f/xe0/xdf -+ /x8f/xe0/xe0 -+ /x8f/xe0/xe1 -+ /x8f/xe0/xe2 -+ /x8f/xe0/xe3 -+ /x8f/xe0/xe4 -+ /x8f/xe0/xe5 -+ /x8f/xe0/xe6 -+ /x8f/xe0/xe7 -+ /x8f/xe0/xe8 -+ /x8f/xe0/xe9 -+ /x8f/xe0/xea -+ /x8f/xe0/xeb -+ /x8f/xe0/xec -+ /x8f/xe0/xed -+ /x8f/xe0/xee -+ /x8f/xe0/xef -+ /x8f/xe0/xf0 -+ /x8f/xe0/xf1 -+ /x8f/xe0/xf2 -+ /x8f/xe0/xf3 -+ /x8f/xe0/xf4 -+ /x8f/xe0/xf5 -+ /x8f/xe0/xf6 -+ /x8f/xe0/xf7 -+ /x8f/xe0/xf8 -+ /x8f/xe0/xf9 -+ /x8f/xe0/xfa -+ /x8f/xe0/xfb -+ /x8f/xe0/xfc -+ /x8f/xe0/xfd -+ /x8f/xe0/xfe -+ /x8f/xe1/xa1 -+ /x8f/xe1/xa2 -+ /x8f/xe1/xa3 -+ /x8f/xe1/xa4 -+ /x8f/xe1/xa5 -+ /x8f/xe1/xa6 -+ /x8f/xe1/xa7 -+ /x8f/xe1/xa8 -+ /x8f/xe1/xa9 -+ /x8f/xe1/xaa -+ /x8f/xe1/xab -+ /x8f/xe1/xac -+ /x8f/xe1/xad -+ /x8f/xe1/xae -+ /x8f/xe1/xaf -+ /x8f/xe1/xb0 -+ /x8f/xe1/xb1 -+ /x8f/xe1/xb2 -+ /x8f/xe1/xb3 -+ /x8f/xe1/xb4 -+ /x8f/xe1/xb5 -+ /x8f/xe1/xb6 -+ /x8f/xe1/xb7 -+ /x8f/xe1/xb8 -+ /x8f/xe1/xb9 -+ /x8f/xe1/xba -+ /x8f/xe1/xbb -+ /x8f/xe1/xbc -+ /x8f/xe1/xbd -+ /x8f/xe1/xbe -+ /x8f/xe1/xbf -+ /x8f/xe1/xc0 -+ /x8f/xe1/xc1 -+ /x8f/xe1/xc2 -+ /x8f/xe1/xc3 -+ /x8f/xe1/xc4 -+ /x8f/xe1/xc5 -+ /x8f/xe1/xc6 -+ /x8f/xe1/xc7 -+ /x8f/xe1/xc8 -+ /x8f/xe1/xc9 -+ /x8f/xe1/xca -+ /x8f/xe1/xcb -+ /x8f/xe1/xcc -+ /x8f/xe1/xcd -+ /x8f/xe1/xce -+ /x8f/xe1/xcf -+ /x8f/xe1/xd0 -+ /x8f/xe1/xd1 -+ /x8f/xe1/xd2 -+ /x8f/xe1/xd3 -+ /x8f/xe1/xd4 -+ /x8f/xe1/xd5 -+ /x8f/xe1/xd6 -+ /x8f/xe1/xd7 -+ /x8f/xe1/xd8 -+ /x8f/xe1/xd9 -+ /x8f/xe1/xda -+ /x8f/xe1/xdb -+ /x8f/xe1/xdc -+ /x8f/xe1/xdd -+ /x8f/xe1/xde -+ /x8f/xe1/xdf -+ /x8f/xe1/xe0 -+ /x8f/xe1/xe1 -+ /x8f/xe1/xe2 -+ /x8f/xe1/xe3 -+ /x8f/xe1/xe4 -+ /x8f/xe1/xe5 -+ /x8f/xe1/xe6 -+ /x8f/xe1/xe7 -+ /x8f/xe1/xe8 -+ /x8f/xe1/xe9 -+ /x8f/xe1/xea -+ /x8f/xe1/xeb -+ /x8f/xe1/xec -+ /x8f/xe1/xed -+ /x8f/xe1/xee -+ /x8f/xe1/xef -+ /x8f/xe1/xf0 -+ /x8f/xe1/xf1 -+ /x8f/xe1/xf2 -+ /x8f/xe1/xf3 -+ /x8f/xe1/xf4 -+ /x8f/xe1/xf5 -+ /x8f/xe1/xf6 -+ /x8f/xe1/xf7 -+ /x8f/xe1/xf8 -+ /x8f/xe1/xf9 -+ /x8f/xe1/xfa -+ /x8f/xe1/xfb -+ /x8f/xe1/xfc -+ /x8f/xe1/xfd -+ /x8f/xe1/xfe -+ /x8f/xe2/xa1 -+ /x8f/xe2/xa2 -+ /x8f/xe2/xa3 -+ /x8f/xe2/xa4 -+ /x8f/xe2/xa5 -+ /x8f/xe2/xa6 -+ /x8f/xe2/xa7 -+ /x8f/xe2/xa8 -+ /x8f/xe2/xa9 -+ /x8f/xe2/xaa -+ /x8f/xe2/xab -+ /x8f/xe2/xac -+ /x8f/xe2/xad -+ /x8f/xe2/xae -+ /x8f/xe2/xaf -+ /x8f/xe2/xb0 -+ /x8f/xe2/xb1 -+ /x8f/xe2/xb2 -+ /x8f/xe2/xb3 -+ /x8f/xe2/xb4 -+ /x8f/xe2/xb5 -+ /x8f/xe2/xb6 -+ /x8f/xe2/xb7 -+ /x8f/xe2/xb8 -+ /x8f/xe2/xb9 -+ /x8f/xe2/xba -+ /x8f/xe2/xbb -+ /x8f/xe2/xbc -+ /x8f/xe2/xbd -+ /x8f/xe2/xbe -+ /x8f/xe2/xbf -+ /x8f/xe2/xc0 -+ /x8f/xe2/xc1 -+ /x8f/xe2/xc2 -+ /x8f/xe2/xc3 -+ /x8f/xe2/xc4 -+ /x8f/xe2/xc5 -+ /x8f/xe2/xc6 -+ /x8f/xe2/xc7 -+ /x8f/xe2/xc8 -+ /x8f/xe2/xc9 -+ /x8f/xe2/xca -+ /x8f/xe2/xcb -+ /x8f/xe2/xcc -+ /x8f/xe2/xcd -+ /x8f/xe2/xce -+ /x8f/xe2/xcf -+ /x8f/xe2/xd0 -+ /x8f/xe2/xd1 -+ /x8f/xe2/xd2 -+ /x8f/xe2/xd3 -+ /x8f/xe2/xd4 -+ /x8f/xe2/xd5 -+ /x8f/xe2/xd6 -+ /x8f/xe2/xd7 -+ /x8f/xe2/xd8 -+ /x8f/xe2/xd9 -+ /x8f/xe2/xda -+ /x8f/xe2/xdb -+ /x8f/xe2/xdc -+ /x8f/xe2/xdd -+ /x8f/xe2/xde -+ /x8f/xe2/xdf -+ /x8f/xe2/xe0 -+ /x8f/xe2/xe1 -+ /x8f/xe2/xe2 -+ /x8f/xe2/xe3 -+ /x8f/xe2/xe4 -+ /x8f/xe2/xe5 -+ /x8f/xe2/xe6 -+ /x8f/xe2/xe7 -+ /x8f/xe2/xe8 -+ /x8f/xe2/xe9 -+ /x8f/xe2/xea -+ /x8f/xe2/xeb -+ /x8f/xe2/xec -+ /x8f/xe2/xed -+ /x8f/xe2/xee -+ /x8f/xe2/xef -+ /x8f/xe2/xf0 -+ /x8f/xe2/xf1 -+ /x8f/xe2/xf2 -+ /x8f/xe2/xf3 -+ /x8f/xe2/xf4 -+ /x8f/xe2/xf5 -+ /x8f/xe2/xf6 -+ /x8f/xe2/xf7 -+ /x8f/xe2/xf8 -+ /x8f/xe2/xf9 -+ /x8f/xe2/xfa -+ /x8f/xe2/xfb -+ /x8f/xe2/xfc -+ /x8f/xe2/xfd -+ /x8f/xe2/xfe -+ /x8f/xe3/xa1 -+ /x8f/xe3/xa2 -+ /x8f/xe3/xa3 -+ /x8f/xe3/xa4 -+ /x8f/xe3/xa5 -+ /x8f/xe3/xa6 -+ /x8f/xe3/xa7 -+ /x8f/xe3/xa8 -+ /x8f/xe3/xa9 -+ /x8f/xe3/xaa -+ /x8f/xe3/xab -+ /x8f/xe3/xac -+ /x8f/xe3/xad -+ /x8f/xe3/xae -+ /x8f/xe3/xaf -+ /x8f/xe3/xb0 -+ /x8f/xe3/xb1 -+ /x8f/xe3/xb2 -+ /x8f/xe3/xb3 -+ /x8f/xe3/xb4 -+ /x8f/xe3/xb5 -+ /x8f/xe3/xb6 -+ /x8f/xe3/xb7 -+ /x8f/xe3/xb8 -+ /x8f/xe3/xb9 -+ /x8f/xe3/xba -+ /x8f/xe3/xbb -+ /x8f/xe3/xbc -+ /x8f/xe3/xbd -+ /x8f/xe3/xbe -+ /x8f/xe3/xbf -+ /x8f/xe3/xc0 -+ /x8f/xe3/xc1 -+ /x8f/xe3/xc2 -+ /x8f/xe3/xc3 -+ /x8f/xe3/xc4 -+ /x8f/xe3/xc5 -+ /x8f/xe3/xc6 -+ /x8f/xe3/xc7 -+ /x8f/xe3/xc8 -+ /x8f/xe3/xc9 -+ /x8f/xe3/xca -+ /x8f/xe3/xcb -+ /x8f/xe3/xcc -+ /x8f/xe3/xcd -+ /x8f/xe3/xce -+ /x8f/xe3/xcf -+ /x8f/xe3/xd0 -+ /x8f/xe3/xd1 -+ /x8f/xe3/xd2 -+ /x8f/xe3/xd3 -+ /x8f/xe3/xd4 -+ /x8f/xe3/xd5 -+ /x8f/xe3/xd6 -+ /x8f/xe3/xd7 -+ /x8f/xe3/xd8 -+ /x8f/xe3/xd9 -+ /x8f/xe3/xda -+ /x8f/xe3/xdb -+ /x8f/xe3/xdc -+ /x8f/xe3/xdd -+ /x8f/xe3/xde -+ /x8f/xe3/xdf -+ /x8f/xe3/xe0 -+ /x8f/xe3/xe1 -+ /x8f/xe3/xe2 -+ /x8f/xe3/xe3 -+ /x8f/xe3/xe4 -+ /x8f/xe3/xe5 -+ /x8f/xe3/xe6 -+ /x8f/xe3/xe7 -+ /x8f/xe3/xe8 -+ /x8f/xe3/xe9 -+ /x8f/xe3/xea -+ /x8f/xe3/xeb -+ /x8f/xe3/xec -+ /x8f/xe3/xed -+ /x8f/xe3/xee -+ /x8f/xe3/xef -+ /x8f/xe3/xf0 -+ /x8f/xe3/xf1 -+ /x8f/xe3/xf2 -+ /x8f/xe3/xf3 -+ /x8f/xe3/xf4 -+ /x8f/xe3/xf5 -+ /x8f/xe3/xf6 -+ /x8f/xe3/xf7 -+ /x8f/xe3/xf8 -+ /x8f/xe3/xf9 -+ /x8f/xe3/xfa -+ /x8f/xe3/xfb -+ /x8f/xe3/xfc -+ /x8f/xe3/xfd -+ /x8f/xe3/xfe -+ /x8f/xe4/xa1 -+ /x8f/xe4/xa2 -+ /x8f/xe4/xa3 -+ /x8f/xe4/xa4 -+ /x8f/xe4/xa5 -+ /x8f/xe4/xa6 -+ /x8f/xe4/xa7 -+ /x8f/xe4/xa8 -+ /x8f/xe4/xa9 -+ /x8f/xe4/xaa -+ /x8f/xe4/xab -+ /x8f/xe4/xac -+ /x8f/xe4/xad -+ /x8f/xe4/xae -+ /x8f/xe4/xaf -+ /x8f/xe4/xb0 -+ /x8f/xe4/xb1 -+ /x8f/xe4/xb2 -+ /x8f/xe4/xb3 -+ /x8f/xe4/xb4 -+ /x8f/xe4/xb5 -+ /x8f/xe4/xb6 -+ /x8f/xe4/xb7 -+ /x8f/xe4/xb8 -+ /x8f/xe4/xb9 -+ /x8f/xe4/xba -+ /x8f/xe4/xbb -+ /x8f/xe4/xbc -+ /x8f/xe4/xbd -+ /x8f/xe4/xbe -+ /x8f/xe4/xbf -+ /x8f/xe4/xc0 -+ /x8f/xe4/xc1 -+ /x8f/xe4/xc2 -+ /x8f/xe4/xc3 -+ /x8f/xe4/xc4 -+ /x8f/xe4/xc5 -+ /x8f/xe4/xc6 -+ /x8f/xe4/xc7 -+ /x8f/xe4/xc8 -+ /x8f/xe4/xc9 -+ /x8f/xe4/xca -+ /x8f/xe4/xcb -+ /x8f/xe4/xcc -+ /x8f/xe4/xcd -+ /x8f/xe4/xce -+ /x8f/xe4/xcf -+ /x8f/xe4/xd0 -+ /x8f/xe4/xd1 -+ /x8f/xe4/xd2 -+ /x8f/xe4/xd3 -+ /x8f/xe4/xd4 -+ /x8f/xe4/xd5 -+ /x8f/xe4/xd6 -+ /x8f/xe4/xd7 -+ /x8f/xe4/xd8 -+ /x8f/xe4/xd9 -+ /x8f/xe4/xda -+ /x8f/xe4/xdb -+ /x8f/xe4/xdc -+ /x8f/xe4/xdd -+ /x8f/xe4/xde -+ /x8f/xe4/xdf -+ /x8f/xe4/xe0 -+ /x8f/xe4/xe1 -+ /x8f/xe4/xe2 -+ /x8f/xe4/xe3 -+ /x8f/xe4/xe4 -+ /x8f/xe4/xe5 -+ /x8f/xe4/xe6 -+ /x8f/xe4/xe7 -+ /x8f/xe4/xe8 -+ /x8f/xe4/xe9 -+ /x8f/xe4/xea -+ /x8f/xe4/xeb -+ /x8f/xe4/xec -+ /x8f/xe4/xed -+ /x8f/xe4/xee -+ /x8f/xe4/xef -+ /x8f/xe4/xf0 -+ /x8f/xe4/xf1 -+ /x8f/xe4/xf2 -+ /x8f/xe4/xf3 -+ /x8f/xe4/xf4 -+ /x8f/xe4/xf5 -+ /x8f/xe4/xf6 -+ /x8f/xe4/xf7 -+ /x8f/xe4/xf8 -+ /x8f/xe4/xf9 -+ /x8f/xe4/xfa -+ /x8f/xe4/xfb -+ /x8f/xe4/xfc -+ /x8f/xe4/xfd -+ /x8f/xe4/xfe -+ /x8f/xe5/xa1 -+ /x8f/xe5/xa2 -+ /x8f/xe5/xa3 -+ /x8f/xe5/xa4 -+ /x8f/xe5/xa5 -+ /x8f/xe5/xa6 -+ /x8f/xe5/xa7 -+ /x8f/xe5/xa8 -+ /x8f/xe5/xa9 -+ /x8f/xe5/xaa -+ /x8f/xe5/xab -+ /x8f/xe5/xac -+ /x8f/xe5/xad -+ /x8f/xe5/xae -+ /x8f/xe5/xaf -+ /x8f/xe5/xb0 -+ /x8f/xe5/xb1 -+ /x8f/xe5/xb2 -+ /x8f/xe5/xb3 -+ /x8f/xe5/xb4 -+ /x8f/xe5/xb5 -+ /x8f/xe5/xb6 -+ /x8f/xe5/xb7 -+ /x8f/xe5/xb8 -+ /x8f/xe5/xb9 -+ /x8f/xe5/xba -+ /x8f/xe5/xbb -+ /x8f/xe5/xbc -+ /x8f/xe5/xbd -+ /x8f/xe5/xbe -+ /x8f/xe5/xbf -+ /x8f/xe5/xc0 -+ /x8f/xe5/xc1 -+ /x8f/xe5/xc2 -+ /x8f/xe5/xc3 -+ /x8f/xe5/xc4 -+ /x8f/xe5/xc5 -+ /x8f/xe5/xc6 -+ /x8f/xe5/xc7 -+ /x8f/xe5/xc8 -+ /x8f/xe5/xc9 -+ /x8f/xe5/xca -+ /x8f/xe5/xcb -+ /x8f/xe5/xcc -+ /x8f/xe5/xcd -+ /x8f/xe5/xce -+ /x8f/xe5/xcf -+ /x8f/xe5/xd0 -+ /x8f/xe5/xd1 -+ /x8f/xe5/xd2 -+ /x8f/xe5/xd3 -+ /x8f/xe5/xd4 -+ /x8f/xe5/xd5 -+ /x8f/xe5/xd6 -+ /x8f/xe5/xd7 -+ /x8f/xe5/xd8 -+ /x8f/xe5/xd9 -+ /x8f/xe5/xda -+ /x8f/xe5/xdb -+ /x8f/xe5/xdc -+ /x8f/xe5/xdd -+ /x8f/xe5/xde -+ /x8f/xe5/xdf -+ /x8f/xe5/xe0 -+ /x8f/xe5/xe1 -+ /x8f/xe5/xe2 -+ /x8f/xe5/xe3 -+ /x8f/xe5/xe4 -+ /x8f/xe5/xe5 -+ /x8f/xe5/xe6 -+ /x8f/xe5/xe7 -+ /x8f/xe5/xe8 -+ /x8f/xe5/xe9 -+ /x8f/xe5/xea -+ /x8f/xe5/xeb -+ /x8f/xe5/xec -+ /x8f/xe5/xed -+ /x8f/xe5/xee -+ /x8f/xe5/xef -+ /x8f/xe5/xf0 -+ /x8f/xe5/xf1 -+ /x8f/xe5/xf2 -+ /x8f/xe5/xf3 -+ /x8f/xe5/xf4 -+ /x8f/xe5/xf5 -+ /x8f/xe5/xf6 -+ /x8f/xe5/xf7 -+ /x8f/xe5/xf8 -+ /x8f/xe5/xf9 -+ /x8f/xe5/xfa -+ /x8f/xe5/xfb -+ /x8f/xe5/xfc -+ /x8f/xe5/xfd -+ /x8f/xe5/xfe -+ /x8f/xe6/xa1 -+ /x8f/xe6/xa2 -+ /x8f/xe6/xa3 -+ /x8f/xe6/xa4 -+ /x8f/xe6/xa5 -+ /x8f/xe6/xa6 -+ /x8f/xe6/xa7 -+ /x8f/xe6/xa8 -+ /x8f/xe6/xa9 -+ /x8f/xe6/xaa -+ /x8f/xe6/xab -+ /x8f/xe6/xac -+ /x8f/xe6/xad -+ /x8f/xe6/xae -+ /x8f/xe6/xaf -+ /x8f/xe6/xb0 -+ /x8f/xe6/xb1 -+ /x8f/xe6/xb2 -+ /x8f/xe6/xb3 -+ /x8f/xe6/xb4 -+ /x8f/xe6/xb5 -+ /x8f/xe6/xb6 -+ /x8f/xe6/xb7 -+ /x8f/xe6/xb8 -+ /x8f/xe6/xb9 -+ /x8f/xe6/xba -+ /x8f/xe6/xbb -+ /x8f/xe6/xbc -+ /x8f/xe6/xbd -+ /x8f/xe6/xbe -+ /x8f/xe6/xbf -+ /x8f/xe6/xc0 -+ /x8f/xe6/xc1 -+ /x8f/xe6/xc2 -+ /x8f/xe6/xc3 -+ /x8f/xe6/xc4 -+ /x8f/xe6/xc5 -+ /x8f/xe6/xc6 -+ /x8f/xe6/xc7 -+ /x8f/xe6/xc8 -+ /x8f/xe6/xc9 -+ /x8f/xe6/xca -+ /x8f/xe6/xcb -+ /x8f/xe6/xcc -+ /x8f/xe6/xcd -+ /x8f/xe6/xce -+ /x8f/xe6/xcf -+ /x8f/xe6/xd0 -+ /x8f/xe6/xd1 -+ /x8f/xe6/xd2 -+ /x8f/xe6/xd3 -+ /x8f/xe6/xd4 -+ /x8f/xe6/xd5 -+ /x8f/xe6/xd6 -+ /x8f/xe6/xd7 -+ /x8f/xe6/xd8 -+ /x8f/xe6/xd9 -+ /x8f/xe6/xda -+ /x8f/xe6/xdb -+ /x8f/xe6/xdc -+ /x8f/xe6/xdd -+ /x8f/xe6/xde -+ /x8f/xe6/xdf -+ /x8f/xe6/xe0 -+ /x8f/xe6/xe1 -+ /x8f/xe6/xe2 -+ /x8f/xe6/xe3 -+ /x8f/xe6/xe4 -+ /x8f/xe6/xe5 -+ /x8f/xe6/xe6 -+ /x8f/xe6/xe7 -+ /x8f/xe6/xe8 -+ /x8f/xe6/xe9 -+ /x8f/xe6/xea -+ /x8f/xe6/xeb -+ /x8f/xe6/xec -+ /x8f/xe6/xed -+ /x8f/xe6/xee -+ /x8f/xe6/xef -+ /x8f/xe6/xf0 -+ /x8f/xe6/xf1 -+ /x8f/xe6/xf2 -+ /x8f/xe6/xf3 -+ /x8f/xe6/xf4 -+ /x8f/xe6/xf5 -+ /x8f/xe6/xf6 -+ /x8f/xe6/xf7 -+ /x8f/xe6/xf8 -+ /x8f/xe6/xf9 -+ /x8f/xe6/xfa -+ /x8f/xe6/xfb -+ /x8f/xe6/xfc -+ /x8f/xe6/xfd -+ /x8f/xe6/xfe -+ /x8f/xe7/xa1 -+ /x8f/xe7/xa2 -+ /x8f/xe7/xa3 -+ /x8f/xe7/xa4 -+ /x8f/xe7/xa5 -+ /x8f/xe7/xa6 -+ /x8f/xe7/xa7 -+ /x8f/xe7/xa8 -+ /x8f/xe7/xa9 -+ /x8f/xe7/xaa -+ /x8f/xe7/xab -+ /x8f/xe7/xac -+ /x8f/xe7/xad -+ /x8f/xe7/xae -+ /x8f/xe7/xaf -+ /x8f/xe7/xb0 -+ /x8f/xe7/xb1 -+ /x8f/xe7/xb2 -+ /x8f/xe7/xb3 -+ /x8f/xe7/xb4 -+ /x8f/xe7/xb5 -+ /x8f/xe7/xb6 -+ /x8f/xe7/xb7 -+ /x8f/xe7/xb8 -+ /x8f/xe7/xb9 -+ /x8f/xe7/xba -+ /x8f/xe7/xbb -+ /x8f/xe7/xbc -+ /x8f/xe7/xbd -+ /x8f/xe7/xbe -+ /x8f/xe7/xbf -+ /x8f/xe7/xc0 -+ /x8f/xe7/xc1 -+ /x8f/xe7/xc2 -+ /x8f/xe7/xc3 -+ /x8f/xe7/xc4 -+ /x8f/xe7/xc5 -+ /x8f/xe7/xc6 -+ /x8f/xe7/xc7 -+ /x8f/xe7/xc8 -+ /x8f/xe7/xc9 -+ /x8f/xe7/xca -+ /x8f/xe7/xcb -+ /x8f/xe7/xcc -+ /x8f/xe7/xcd -+ /x8f/xe7/xce -+ /x8f/xe7/xcf -+ /x8f/xe7/xd0 -+ /x8f/xe7/xd1 -+ /x8f/xe7/xd2 -+ /x8f/xe7/xd3 -+ /x8f/xe7/xd4 -+ /x8f/xe7/xd5 -+ /x8f/xe7/xd6 -+ /x8f/xe7/xd7 -+ /x8f/xe7/xd8 -+ /x8f/xe7/xd9 -+ /x8f/xe7/xda -+ /x8f/xe7/xdb -+ /x8f/xe7/xdc -+ /x8f/xe7/xdd -+ /x8f/xe7/xde -+ /x8f/xe7/xdf -+ /x8f/xe7/xe0 -+ /x8f/xe7/xe1 -+ /x8f/xe7/xe2 -+ /x8f/xe7/xe3 -+ /x8f/xe7/xe4 -+ /x8f/xe7/xe5 -+ /x8f/xe7/xe6 -+ /x8f/xe7/xe7 -+ /x8f/xe7/xe8 -+ /x8f/xe7/xe9 -+ /x8f/xe7/xea -+ /x8f/xe7/xeb -+ /x8f/xe7/xec -+ /x8f/xe7/xed -+ /x8f/xe7/xee -+ /x8f/xe7/xef -+ /x8f/xe7/xf0 -+ /x8f/xe7/xf1 -+ /x8f/xe7/xf2 -+ /x8f/xe7/xf3 -+ /x8f/xe7/xf4 -+ /x8f/xe7/xf5 -+ /x8f/xe7/xf6 -+ /x8f/xe7/xf7 -+ /x8f/xe7/xf8 -+ /x8f/xe7/xf9 -+ /x8f/xe7/xfa -+ /x8f/xe7/xfb -+ /x8f/xe7/xfc -+ /x8f/xe7/xfd -+ /x8f/xe7/xfe -+ /x8f/xe8/xa1 -+ /x8f/xe8/xa2 -+ /x8f/xe8/xa3 -+ /x8f/xe8/xa4 -+ /x8f/xe8/xa5 -+ /x8f/xe8/xa6 -+ /x8f/xe8/xa7 -+ /x8f/xe8/xa8 -+ /x8f/xe8/xa9 -+ /x8f/xe8/xaa -+ /x8f/xe8/xab -+ /x8f/xe8/xac -+ /x8f/xe8/xad -+ /x8f/xe8/xae -+ /x8f/xe8/xaf -+ /x8f/xe8/xb0 -+ /x8f/xe8/xb1 -+ /x8f/xe8/xb2 -+ /x8f/xe8/xb3 -+ /x8f/xe8/xb4 -+ /x8f/xe8/xb5 -+ /x8f/xe8/xb6 -+ /x8f/xe8/xb7 -+ /x8f/xe8/xb8 -+ /x8f/xe8/xb9 -+ /x8f/xe8/xba -+ /x8f/xe8/xbb -+ /x8f/xe8/xbc -+ /x8f/xe8/xbd -+ /x8f/xe8/xbe -+ /x8f/xe8/xbf -+ /x8f/xe8/xc0 -+ /x8f/xe8/xc1 -+ /x8f/xe8/xc2 -+ /x8f/xe8/xc3 -+ /x8f/xe8/xc4 -+ /x8f/xe8/xc5 -+ /x8f/xe8/xc6 -+ /x8f/xe8/xc7 -+ /x8f/xe8/xc8 -+ /x8f/xe8/xc9 -+ /x8f/xe8/xca -+ /x8f/xe8/xcb -+ /x8f/xe8/xcc -+ /x8f/xe8/xcd -+ /x8f/xe8/xce -+ /x8f/xe8/xcf -+ /x8f/xe8/xd0 -+ /x8f/xe8/xd1 -+ /x8f/xe8/xd2 -+ /x8f/xe8/xd3 -+ /x8f/xe8/xd4 -+ /x8f/xe8/xd5 -+ /x8f/xe8/xd6 -+ /x8f/xe8/xd7 -+ /x8f/xe8/xd8 -+ /x8f/xe8/xd9 -+ /x8f/xe8/xda -+ /x8f/xe8/xdb -+ /x8f/xe8/xdc -+ /x8f/xe8/xdd -+ /x8f/xe8/xde -+ /x8f/xe8/xdf -+ /x8f/xe8/xe0 -+ /x8f/xe8/xe1 -+ /x8f/xe8/xe2 -+ /x8f/xe8/xe3 -+ /x8f/xe8/xe4 -+ /x8f/xe8/xe5 -+ /x8f/xe8/xe6 -+ /x8f/xe8/xe7 -+ /x8f/xe8/xe8 -+ /x8f/xe8/xe9 -+ /x8f/xe8/xea -+ /x8f/xe8/xeb -+ /x8f/xe8/xec -+ /x8f/xe8/xed -+ /x8f/xe8/xee -+ /x8f/xe8/xef -+ /x8f/xe8/xf0 -+ /x8f/xe8/xf1 -+ /x8f/xe8/xf2 -+ /x8f/xe8/xf3 -+ /x8f/xe8/xf4 -+ /x8f/xe8/xf5 -+ /x8f/xe8/xf6 -+ /x8f/xe8/xf7 -+ /x8f/xe8/xf8 -+ /x8f/xe8/xf9 -+ /x8f/xe8/xfa -+ /x8f/xe8/xfb -+ /x8f/xe8/xfc -+ /x8f/xe8/xfd -+ /x8f/xe8/xfe -+ /x8f/xe9/xa1 -+ /x8f/xe9/xa2 -+ /x8f/xe9/xa3 -+ /x8f/xe9/xa4 -+ /x8f/xe9/xa5 -+ /x8f/xe9/xa6 -+ /x8f/xe9/xa7 -+ /x8f/xe9/xa8 -+ /x8f/xe9/xa9 -+ /x8f/xe9/xaa -+ /x8f/xe9/xab -+ /x8f/xe9/xac -+ /x8f/xe9/xad -+ /x8f/xe9/xae -+ /x8f/xe9/xaf -+ /x8f/xe9/xb0 -+ /x8f/xe9/xb1 -+ /x8f/xe9/xb2 -+ /x8f/xe9/xb3 -+ /x8f/xe9/xb4 -+ /x8f/xe9/xb5 -+ /x8f/xe9/xb6 -+ /x8f/xe9/xb7 -+ /x8f/xe9/xb8 -+ /x8f/xe9/xb9 -+ /x8f/xe9/xba -+ /x8f/xe9/xbb -+ /x8f/xe9/xbc -+ /x8f/xe9/xbd -+ /x8f/xe9/xbe -+ /x8f/xe9/xbf -+ /x8f/xe9/xc0 -+ /x8f/xe9/xc1 -+ /x8f/xe9/xc2 -+ /x8f/xe9/xc3 -+ /x8f/xe9/xc4 -+ /x8f/xe9/xc5 -+ /x8f/xe9/xc6 -+ /x8f/xe9/xc7 -+ /x8f/xe9/xc8 -+ /x8f/xe9/xc9 -+ /x8f/xe9/xca -+ /x8f/xe9/xcb -+ /x8f/xe9/xcc -+ /x8f/xe9/xcd -+ /x8f/xe9/xce -+ /x8f/xe9/xcf -+ /x8f/xe9/xd0 -+ /x8f/xe9/xd1 -+ /x8f/xe9/xd2 -+ /x8f/xe9/xd3 -+ /x8f/xe9/xd4 -+ /x8f/xe9/xd5 -+ /x8f/xe9/xd6 -+ /x8f/xe9/xd7 -+ /x8f/xe9/xd8 -+ /x8f/xe9/xd9 -+ /x8f/xe9/xda -+ /x8f/xe9/xdb -+ /x8f/xe9/xdc -+ /x8f/xe9/xdd -+ /x8f/xe9/xde -+ /x8f/xe9/xdf -+ /x8f/xe9/xe0 -+ /x8f/xe9/xe1 -+ /x8f/xe9/xe2 -+ /x8f/xe9/xe3 -+ /x8f/xe9/xe4 -+ /x8f/xe9/xe5 -+ /x8f/xe9/xe6 -+ /x8f/xe9/xe7 -+ /x8f/xe9/xe8 -+ /x8f/xe9/xe9 -+ /x8f/xe9/xea -+ /x8f/xe9/xeb -+ /x8f/xe9/xec -+ /x8f/xe9/xed -+ /x8f/xe9/xee -+ /x8f/xe9/xef -+ /x8f/xe9/xf0 -+ /x8f/xe9/xf1 -+ /x8f/xe9/xf2 -+ /x8f/xe9/xf3 -+ /x8f/xe9/xf4 -+ /x8f/xe9/xf5 -+ /x8f/xe9/xf6 -+ /x8f/xe9/xf7 -+ /x8f/xe9/xf8 -+ /x8f/xe9/xf9 -+ /x8f/xe9/xfa -+ /x8f/xe9/xfb -+ /x8f/xe9/xfc -+ /x8f/xe9/xfd -+ /x8f/xe9/xfe -+ /x8f/xea/xa1 -+ /x8f/xea/xa2 -+ /x8f/xea/xa3 -+ /x8f/xea/xa4 -+ /x8f/xea/xa5 -+ /x8f/xea/xa6 -+ /x8f/xea/xa7 -+ /x8f/xea/xa8 -+ /x8f/xea/xa9 -+ /x8f/xea/xaa -+ /x8f/xea/xab -+ /x8f/xea/xac -+ /x8f/xea/xad -+ /x8f/xea/xae -+ /x8f/xea/xaf -+ /x8f/xea/xb0 -+ /x8f/xea/xb1 -+ /x8f/xea/xb2 -+ /x8f/xea/xb3 -+ /x8f/xea/xb4 -+ /x8f/xea/xb5 -+ /x8f/xea/xb6 -+ /x8f/xea/xb7 -+ /x8f/xea/xb8 -+ /x8f/xea/xb9 -+ /x8f/xea/xba -+ /x8f/xea/xbb -+ /x8f/xea/xbc -+ /x8f/xea/xbd -+ /x8f/xea/xbe -+ /x8f/xea/xbf -+ /x8f/xea/xc0 -+ /x8f/xea/xc1 -+ /x8f/xea/xc2 -+ /x8f/xea/xc3 -+ /x8f/xea/xc4 -+ /x8f/xea/xc5 -+ /x8f/xea/xc6 -+ /x8f/xea/xc7 -+ /x8f/xea/xc8 -+ /x8f/xea/xc9 -+ /x8f/xea/xca -+ /x8f/xea/xcb -+ /x8f/xea/xcc -+ /x8f/xea/xcd -+ /x8f/xea/xce -+ /x8f/xea/xcf -+ /x8f/xea/xd0 -+ /x8f/xea/xd1 -+ /x8f/xea/xd2 -+ /x8f/xea/xd3 -+ /x8f/xea/xd4 -+ /x8f/xea/xd5 -+ /x8f/xea/xd6 -+ /x8f/xea/xd7 -+ /x8f/xea/xd8 -+ /x8f/xea/xd9 -+ /x8f/xea/xda -+ /x8f/xea/xdb -+ /x8f/xea/xdc -+ /x8f/xea/xdd -+ /x8f/xea/xde -+ /x8f/xea/xdf -+ /x8f/xea/xe0 -+ /x8f/xea/xe1 -+ /x8f/xea/xe2 -+ /x8f/xea/xe3 -+ /x8f/xea/xe4 -+ /x8f/xea/xe5 -+ /x8f/xea/xe6 -+ /x8f/xea/xe7 -+ /x8f/xea/xe8 -+ /x8f/xea/xe9 -+ /x8f/xea/xea -+ /x8f/xea/xeb -+ /x8f/xea/xec -+ /x8f/xea/xed -+ /x8f/xea/xee -+ /x8f/xea/xef -+ /x8f/xea/xf0 -+ /x8f/xea/xf1 -+ /x8f/xea/xf2 -+ /x8f/xea/xf3 -+ /x8f/xea/xf4 -+ /x8f/xea/xf5 -+ /x8f/xea/xf6 -+ /x8f/xea/xf7 -+ /x8f/xea/xf8 -+ /x8f/xea/xf9 -+ /x8f/xea/xfa -+ /x8f/xea/xfb -+ /x8f/xea/xfc -+ /x8f/xea/xfd -+ /x8f/xea/xfe -+ /x8f/xeb/xa1 -+ /x8f/xeb/xa2 -+ /x8f/xeb/xa3 -+ /x8f/xeb/xa4 -+ /x8f/xeb/xa5 -+ /x8f/xeb/xa6 -+ /x8f/xeb/xa7 -+ /x8f/xeb/xa8 -+ /x8f/xeb/xa9 -+ /x8f/xeb/xaa -+ /x8f/xeb/xab -+ /x8f/xeb/xac -+ /x8f/xeb/xad -+ /x8f/xeb/xae -+ /x8f/xeb/xaf -+ /x8f/xeb/xb0 -+ /x8f/xeb/xb1 -+ /x8f/xeb/xb2 -+ /x8f/xeb/xb3 -+ /x8f/xeb/xb4 -+ /x8f/xeb/xb5 -+ /x8f/xeb/xb6 -+ /x8f/xeb/xb7 -+ /x8f/xeb/xb8 -+ /x8f/xeb/xb9 -+ /x8f/xeb/xba -+ /x8f/xeb/xbb -+ /x8f/xeb/xbc -+ /x8f/xeb/xbd -+ /x8f/xeb/xbe -+ /x8f/xeb/xbf -+ /x8f/xeb/xc0 -+ /x8f/xeb/xc1 -+ /x8f/xeb/xc2 -+ /x8f/xeb/xc3 -+ /x8f/xeb/xc4 -+ /x8f/xeb/xc5 -+ /x8f/xeb/xc6 -+ /x8f/xeb/xc7 -+ /x8f/xeb/xc8 -+ /x8f/xeb/xc9 -+ /x8f/xeb/xca -+ /x8f/xeb/xcb -+ /x8f/xeb/xcc -+ /x8f/xeb/xcd -+ /x8f/xeb/xce -+ /x8f/xeb/xcf -+ /x8f/xeb/xd0 -+ /x8f/xeb/xd1 -+ /x8f/xeb/xd2 -+ /x8f/xeb/xd3 -+ /x8f/xeb/xd4 -+ /x8f/xeb/xd5 -+ /x8f/xeb/xd6 -+ /x8f/xeb/xd7 -+ /x8f/xeb/xd8 -+ /x8f/xeb/xd9 -+ /x8f/xeb/xda -+ /x8f/xeb/xdb -+ /x8f/xeb/xdc -+ /x8f/xeb/xdd -+ /x8f/xeb/xde -+ /x8f/xeb/xdf -+ /x8f/xeb/xe0 -+ /x8f/xeb/xe1 -+ /x8f/xeb/xe2 -+ /x8f/xeb/xe3 -+ /x8f/xeb/xe4 -+ /x8f/xeb/xe5 -+ /x8f/xeb/xe6 -+ /x8f/xeb/xe7 -+ /x8f/xeb/xe8 -+ /x8f/xeb/xe9 -+ /x8f/xeb/xea -+ /x8f/xeb/xeb -+ /x8f/xeb/xec -+ /x8f/xeb/xed -+ /x8f/xeb/xee -+ /x8f/xeb/xef -+ /x8f/xeb/xf0 -+ /x8f/xeb/xf1 -+ /x8f/xeb/xf2 -+ /x8f/xeb/xf3 -+ /x8f/xeb/xf4 -+ /x8f/xeb/xf5 -+ /x8f/xeb/xf6 -+ /x8f/xeb/xf7 -+ /x8f/xeb/xf8 -+ /x8f/xeb/xf9 -+ /x8f/xeb/xfa -+ /x8f/xeb/xfb -+ /x8f/xeb/xfc -+ /x8f/xeb/xfd -+ /x8f/xeb/xfe -+ /x8f/xec/xa1 -+ /x8f/xec/xa2 -+ /x8f/xec/xa3 -+ /x8f/xec/xa4 -+ /x8f/xec/xa5 -+ /x8f/xec/xa6 -+ /x8f/xec/xa7 -+ /x8f/xec/xa8 -+ /x8f/xec/xa9 -+ /x8f/xec/xaa -+ /x8f/xec/xab -+ /x8f/xec/xac -+ /x8f/xec/xad -+ /x8f/xec/xae -+ /x8f/xec/xaf -+ /x8f/xec/xb0 -+ /x8f/xec/xb1 -+ /x8f/xec/xb2 -+ /x8f/xec/xb3 -+ /x8f/xec/xb4 -+ /x8f/xec/xb5 -+ /x8f/xec/xb6 -+ /x8f/xec/xb7 -+ /x8f/xec/xb8 -+ /x8f/xec/xb9 -+ /x8f/xec/xba -+ /x8f/xec/xbb -+ /x8f/xec/xbc -+ /x8f/xec/xbd -+ /x8f/xec/xbe -+ /x8f/xec/xbf -+ /x8f/xec/xc0 -+ /x8f/xec/xc1 -+ /x8f/xec/xc2 -+ /x8f/xec/xc3 -+ /x8f/xec/xc4 -+ /x8f/xec/xc5 -+ /x8f/xec/xc6 -+ /x8f/xec/xc7 -+ /x8f/xec/xc8 -+ /x8f/xec/xc9 -+ /x8f/xec/xca -+ /x8f/xec/xcb -+ /x8f/xec/xcc -+ /x8f/xec/xcd -+ /x8f/xec/xce -+ /x8f/xec/xcf -+ /x8f/xec/xd0 -+ /x8f/xec/xd1 -+ /x8f/xec/xd2 -+ /x8f/xec/xd3 -+ /x8f/xec/xd4 -+ /x8f/xec/xd5 -+ /x8f/xec/xd6 -+ /x8f/xec/xd7 -+ /x8f/xec/xd8 -+ /x8f/xec/xd9 -+ /x8f/xec/xda -+ /x8f/xec/xdb -+ /x8f/xec/xdc -+ /x8f/xec/xdd -+ /x8f/xec/xde -+ /x8f/xec/xdf -+ /x8f/xec/xe0 -+ /x8f/xec/xe1 -+ /x8f/xec/xe2 -+ /x8f/xec/xe3 -+ /x8f/xec/xe4 -+ /x8f/xec/xe5 -+ /x8f/xec/xe6 -+ /x8f/xec/xe7 -+ /x8f/xec/xe8 -+ /x8f/xec/xe9 -+ /x8f/xec/xea -+ /x8f/xec/xeb -+ /x8f/xec/xec -+ /x8f/xec/xed -+ /x8f/xec/xee -+ /x8f/xec/xef -+ /x8f/xec/xf0 -+ /x8f/xec/xf1 -+ /x8f/xec/xf2 -+ /x8f/xec/xf3 -+ /x8f/xec/xf4 -+ /x8f/xec/xf5 -+ /x8f/xec/xf6 -+ /x8f/xec/xf7 -+ /x8f/xec/xf8 -+ /x8f/xec/xf9 -+ /x8f/xec/xfa -+ /x8f/xec/xfb -+ /x8f/xec/xfc -+ /x8f/xec/xfd -+ /x8f/xec/xfe -+ /x8f/xed/xa1 -+ /x8f/xed/xa2 -+ /x8f/xed/xa3 -+ /x8f/xed/xa4 -+ /x8f/xed/xa5 -+ /x8f/xed/xa6 -+ /x8f/xed/xa7 -+ /x8f/xed/xa8 -+ /x8f/xed/xa9 -+ /x8f/xed/xaa -+ /x8f/xed/xab -+ /x8f/xed/xac -+ /x8f/xed/xad -+ /x8f/xed/xae -+ /x8f/xed/xaf -+ /x8f/xed/xb0 -+ /x8f/xed/xb1 -+ /x8f/xed/xb2 -+ /x8f/xed/xb3 -+ /x8f/xed/xb4 -+ /x8f/xed/xb5 -+ /x8f/xed/xb6 -+ /x8f/xed/xb7 -+ /x8f/xed/xb8 -+ /x8f/xed/xb9 -+ /x8f/xed/xba -+ /x8f/xed/xbb -+ /x8f/xed/xbc -+ /x8f/xed/xbd -+ /x8f/xed/xbe -+ /x8f/xed/xbf -+ /x8f/xed/xc0 -+ /x8f/xed/xc1 -+ /x8f/xed/xc2 -+ /x8f/xed/xc3 -+ /x8f/xed/xc4 -+ /x8f/xed/xc5 -+ /x8f/xed/xc6 -+ /x8f/xed/xc7 -+ /x8f/xed/xc8 -+ /x8f/xed/xc9 -+ /x8f/xed/xca -+ /x8f/xed/xcb -+ /x8f/xed/xcc -+ /x8f/xed/xcd -+ /x8f/xed/xce -+ /x8f/xed/xcf -+ /x8f/xed/xd0 -+ /x8f/xed/xd1 -+ /x8f/xed/xd2 -+ /x8f/xed/xd3 -+ /x8f/xed/xd4 -+ /x8f/xed/xd5 -+ /x8f/xed/xd6 -+ /x8f/xed/xd7 -+ /x8f/xed/xd8 -+ /x8f/xed/xd9 -+ /x8f/xed/xda -+ /x8f/xed/xdb -+ /x8f/xed/xdc -+ /x8f/xed/xdd -+ /x8f/xed/xde -+ /x8f/xed/xdf -+ /x8f/xed/xe0 -+ /x8f/xed/xe1 -+ /x8f/xed/xe2 -+ /x8f/xed/xe3 -+ /x8f/xf3/xf3 SMALL ROMAN NUMERAL ONE -+ /x8f/xf3/xf4 SMALL ROMAN NUMERAL TWO -+ /x8f/xf3/xf5 SMALL ROMAN NUMERAL THREE -+ /x8f/xf3/xf6 SMALL ROMAN NUMERAL FOUR -+ /x8f/xf3/xf7 SMALL ROMAN NUMERAL FIVE -+ /x8f/xf3/xf8 SMALL ROMAN NUMERAL SIX -+ /x8f/xf3/xf9 SMALL ROMAN NUMERAL SEVEN -+ /x8f/xf3/xfa SMALL ROMAN NUMERAL EIGHT -+ /x8f/xf3/xfb SMALL ROMAN NUMERAL NINE -+ /x8f/xf3/xfc SMALL ROMAN NUMERAL TEN -+%IRREVERSIBLE% /x8f/xf3/xfd ROMAN NUMERAL ONE -+%IRREVERSIBLE% /x8f/xf3/xfe ROMAN NUMERAL TWO -+%IRREVERSIBLE% /x8f/xf4/xa1 ROMAN NUMERAL THREE -+%IRREVERSIBLE% /x8f/xf4/xa2 ROMAN NUMERAL FOUR -+%IRREVERSIBLE% /x8f/xf4/xa3 ROMAN NUMERAL FIVE -+%IRREVERSIBLE% /x8f/xf4/xa4 ROMAN NUMERAL SIX -+%IRREVERSIBLE% /x8f/xf4/xa5 ROMAN NUMERAL SEVEN -+%IRREVERSIBLE% /x8f/xf4/xa6 ROMAN NUMERAL EIGHT -+%IRREVERSIBLE% /x8f/xf4/xa7 ROMAN NUMERAL NINE -+%IRREVERSIBLE% /x8f/xf4/xa8 ROMAN NUMERAL TEN -+ /x8f/xf4/xa9 FULLWIDTH APOSTROPHE -+ /x8f/xf4/xaa FULLWIDTH QUOTATION MARK -+%IRREVERSIBLE% /x8f/xf4/xab PARENTHESIZED IDEOGRAPH STOCK -+%IRREVERSIBLE% /x8f/xf4/xac NUMERO SIGN -+%IRREVERSIBLE% /x8f/xf4/xad TELEPHONE SIGN -+ /x8f/xf4/xae -+ /x8f/xf4/xaf -+ /x8f/xf4/xb0 -+ /x8f/xf4/xb1 -+ /x8f/xf4/xb2 -+ /x8f/xf4/xb3 -+ /x8f/xf4/xb4 CJK COMPATIBILITY IDEOGRAPH-FA0E -+ /x8f/xf4/xb5 -+ /x8f/xf4/xb6 -+ /x8f/xf4/xb7 CJK COMPATIBILITY IDEOGRAPH-FA0F -+ /x8f/xf4/xb8 CJK COMPATIBILITY IDEOGRAPH-FA10 -+ /x8f/xf4/xb9 -+ /x8f/xf4/xba -+ /x8f/xf4/xbb -+ /x8f/xf4/xbc -+ /x8f/xf4/xbd CJK COMPATIBILITY IDEOGRAPH-FA11 -+ /x8f/xf4/xbe -+ /x8f/xf4/xbf -+ /x8f/xf4/xc0 -+ /x8f/xf4/xc1 -+ /x8f/xf4/xc2 -+ /x8f/xf4/xc3 -+ /x8f/xf4/xc4 CJK COMPATIBILITY IDEOGRAPH-FA12 -+ /x8f/xf4/xc5 CJK COMPATIBILITY IDEOGRAPH-F929 -+ /x8f/xf4/xc6 -+ /x8f/xf4/xc7 CJK COMPATIBILITY IDEOGRAPH-FA13 -+ /x8f/xf4/xc8 CJK COMPATIBILITY IDEOGRAPH-FA14 -+ /x8f/xf4/xc9 -+ /x8f/xf4/xca -+ /x8f/xf4/xcb -+ /x8f/xf4/xcc -+ /x8f/xf4/xcd -+ /x8f/xf4/xce CJK COMPATIBILITY IDEOGRAPH-FA15 -+ /x8f/xf4/xcf CJK COMPATIBILITY IDEOGRAPH-FA16 -+ /x8f/xf4/xd0 -+ /x8f/xf4/xd1 -+ /x8f/xf4/xd2 -+ /x8f/xf4/xd3 CJK COMPATIBILITY IDEOGRAPH-FA17 -+ /x8f/xf4/xd4 -+ /x8f/xf4/xd5 CJK COMPATIBILITY IDEOGRAPH-FA18 -+ /x8f/xf4/xd6 CJK COMPATIBILITY IDEOGRAPH-FA19 -+ /x8f/xf4/xd7 CJK COMPATIBILITY IDEOGRAPH-FA1A -+ /x8f/xf4/xd8 CJK COMPATIBILITY IDEOGRAPH-FA1B -+ /x8f/xf4/xd9 -+ /x8f/xf4/xda CJK COMPATIBILITY IDEOGRAPH-FA1C -+ /x8f/xf4/xdb CJK COMPATIBILITY IDEOGRAPH-FA1D -+ /x8f/xf4/xdc -+ /x8f/xf4/xdd -+ /x8f/xf4/xde CJK COMPATIBILITY IDEOGRAPH-FA1E -+ /x8f/xf4/xdf -+ /x8f/xf4/xe0 CJK COMPATIBILITY IDEOGRAPH-FA1F -+ /x8f/xf4/xe1 -+ /x8f/xf4/xe2 CJK COMPATIBILITY IDEOGRAPH-FA20 -+ /x8f/xf4/xe3 CJK COMPATIBILITY IDEOGRAPH-FA21 -+ /x8f/xf4/xe4 -+ /x8f/xf4/xe5 CJK COMPATIBILITY IDEOGRAPH-FA22 -+ /x8f/xf4/xe6 -+ /x8f/xf4/xe7 -+ /x8f/xf4/xe8 -+ /x8f/xf4/xe9 CJK COMPATIBILITY IDEOGRAPH-FA23 -+ /x8f/xf4/xea CJK COMPATIBILITY IDEOGRAPH-FA24 -+ /x8f/xf4/xeb CJK COMPATIBILITY IDEOGRAPH-FA25 -+ /x8f/xf4/xec -+ /x8f/xf4/xed CJK COMPATIBILITY IDEOGRAPH-FA26 -+ /x8f/xf4/xee -+ /x8f/xf4/xef CJK COMPATIBILITY IDEOGRAPH-FA27 -+ /x8f/xf4/xf0 CJK COMPATIBILITY IDEOGRAPH-FA28 -+ /x8f/xf4/xf1 -+ /x8f/xf4/xf2 CJK COMPATIBILITY IDEOGRAPH-F9DC -+ /x8f/xf4/xf3 CJK COMPATIBILITY IDEOGRAPH-FA29 -+ /x8f/xf4/xf4 -+ /x8f/xf4/xf5 -+ /x8f/xf4/xf6 -+ /x8f/xf4/xf7 CJK COMPATIBILITY IDEOGRAPH-FA2A -+ /x8f/xf4/xf8 CJK COMPATIBILITY IDEOGRAPH-FA2B -+ /x8f/xf4/xf9 CJK COMPATIBILITY IDEOGRAPH-FA2C -+ /x8f/xf4/xfa -+ /x8f/xf4/xfb -+ /x8f/xf4/xfc -+ /x8f/xf4/xfd CJK COMPATIBILITY IDEOGRAPH-FA2D -+ /x8f/xf4/xfe -+ -+% -+% User Defined Characters (EUC Code Set 3) -+% -+ /x8f/xf5/xa1 -+ /x8f/xf5/xa2 -+ /x8f/xf5/xa3 -+ /x8f/xf5/xa4 -+ /x8f/xf5/xa5 -+ /x8f/xf5/xa6 -+ /x8f/xf5/xa7 -+ /x8f/xf5/xa8 -+ /x8f/xf5/xa9 -+ /x8f/xf5/xaa -+ /x8f/xf5/xab -+ /x8f/xf5/xac -+ /x8f/xf5/xad -+ /x8f/xf5/xae -+ /x8f/xf5/xaf -+ /x8f/xf5/xb0 -+ /x8f/xf5/xb1 -+ /x8f/xf5/xb2 -+ /x8f/xf5/xb3 -+ /x8f/xf5/xb4 -+ /x8f/xf5/xb5 -+ /x8f/xf5/xb6 -+ /x8f/xf5/xb7 -+ /x8f/xf5/xb8 -+ /x8f/xf5/xb9 -+ /x8f/xf5/xba -+ /x8f/xf5/xbb -+ /x8f/xf5/xbc -+ /x8f/xf5/xbd -+ /x8f/xf5/xbe -+ /x8f/xf5/xbf -+ /x8f/xf5/xc0 -+ /x8f/xf5/xc1 -+ /x8f/xf5/xc2 -+ /x8f/xf5/xc3 -+ /x8f/xf5/xc4 -+ /x8f/xf5/xc5 -+ /x8f/xf5/xc6 -+ /x8f/xf5/xc7 -+ /x8f/xf5/xc8 -+ /x8f/xf5/xc9 -+ /x8f/xf5/xca -+ /x8f/xf5/xcb -+ /x8f/xf5/xcc -+ /x8f/xf5/xcd -+ /x8f/xf5/xce -+ /x8f/xf5/xcf -+ /x8f/xf5/xd0 -+ /x8f/xf5/xd1 -+ /x8f/xf5/xd2 -+ /x8f/xf5/xd3 -+ /x8f/xf5/xd4 -+ /x8f/xf5/xd5 -+ /x8f/xf5/xd6 -+ /x8f/xf5/xd7 -+ /x8f/xf5/xd8 -+ /x8f/xf5/xd9 -+ /x8f/xf5/xda -+ /x8f/xf5/xdb -+ /x8f/xf5/xdc -+ /x8f/xf5/xdd -+ /x8f/xf5/xde -+ /x8f/xf5/xdf -+ /x8f/xf5/xe0 -+ /x8f/xf5/xe1 -+ /x8f/xf5/xe2 -+ /x8f/xf5/xe3 -+ /x8f/xf5/xe4 -+ /x8f/xf5/xe5 -+ /x8f/xf5/xe6 -+ /x8f/xf5/xe7 -+ /x8f/xf5/xe8 -+ /x8f/xf5/xe9 -+ /x8f/xf5/xea -+ /x8f/xf5/xeb -+ /x8f/xf5/xec -+ /x8f/xf5/xed -+ /x8f/xf5/xee -+ /x8f/xf5/xef -+ /x8f/xf5/xf0 -+ /x8f/xf5/xf1 -+ /x8f/xf5/xf2 -+ /x8f/xf5/xf3 -+ /x8f/xf5/xf4 -+ /x8f/xf5/xf5 -+ /x8f/xf5/xf6 -+ /x8f/xf5/xf7 -+ /x8f/xf5/xf8 -+ /x8f/xf5/xf9 -+ /x8f/xf5/xfa -+ /x8f/xf5/xfb -+ /x8f/xf5/xfc -+ /x8f/xf5/xfd -+ /x8f/xf5/xfe -+ /x8f/xf6/xa1 -+ /x8f/xf6/xa2 -+ /x8f/xf6/xa3 -+ /x8f/xf6/xa4 -+ /x8f/xf6/xa5 -+ /x8f/xf6/xa6 -+ /x8f/xf6/xa7 -+ /x8f/xf6/xa8 -+ /x8f/xf6/xa9 -+ /x8f/xf6/xaa -+ /x8f/xf6/xab -+ /x8f/xf6/xac -+ /x8f/xf6/xad -+ /x8f/xf6/xae -+ /x8f/xf6/xaf -+ /x8f/xf6/xb0 -+ /x8f/xf6/xb1 -+ /x8f/xf6/xb2 -+ /x8f/xf6/xb3 -+ /x8f/xf6/xb4 -+ /x8f/xf6/xb5 -+ /x8f/xf6/xb6 -+ /x8f/xf6/xb7 -+ /x8f/xf6/xb8 -+ /x8f/xf6/xb9 -+ /x8f/xf6/xba -+ /x8f/xf6/xbb -+ /x8f/xf6/xbc -+ /x8f/xf6/xbd -+ /x8f/xf6/xbe -+ /x8f/xf6/xbf -+ /x8f/xf6/xc0 -+ /x8f/xf6/xc1 -+ /x8f/xf6/xc2 -+ /x8f/xf6/xc3 -+ /x8f/xf6/xc4 -+ /x8f/xf6/xc5 -+ /x8f/xf6/xc6 -+ /x8f/xf6/xc7 -+ /x8f/xf6/xc8 -+ /x8f/xf6/xc9 -+ /x8f/xf6/xca -+ /x8f/xf6/xcb -+ /x8f/xf6/xcc -+ /x8f/xf6/xcd -+ /x8f/xf6/xce -+ /x8f/xf6/xcf -+ /x8f/xf6/xd0 -+ /x8f/xf6/xd1 -+ /x8f/xf6/xd2 -+ /x8f/xf6/xd3 -+ /x8f/xf6/xd4 -+ /x8f/xf6/xd5 -+ /x8f/xf6/xd6 -+ /x8f/xf6/xd7 -+ /x8f/xf6/xd8 -+ /x8f/xf6/xd9 -+ /x8f/xf6/xda -+ /x8f/xf6/xdb -+ /x8f/xf6/xdc -+ /x8f/xf6/xdd -+ /x8f/xf6/xde -+ /x8f/xf6/xdf -+ /x8f/xf6/xe0 -+ /x8f/xf6/xe1 -+ /x8f/xf6/xe2 -+ /x8f/xf6/xe3 -+ /x8f/xf6/xe4 -+ /x8f/xf6/xe5 -+ /x8f/xf6/xe6 -+ /x8f/xf6/xe7 -+ /x8f/xf6/xe8 -+ /x8f/xf6/xe9 -+ /x8f/xf6/xea -+ /x8f/xf6/xeb -+ /x8f/xf6/xec -+ /x8f/xf6/xed -+ /x8f/xf6/xee -+ /x8f/xf6/xef -+ /x8f/xf6/xf0 -+ /x8f/xf6/xf1 -+ /x8f/xf6/xf2 -+ /x8f/xf6/xf3 -+ /x8f/xf6/xf4 -+ /x8f/xf6/xf5 -+ /x8f/xf6/xf6 -+ /x8f/xf6/xf7 -+ /x8f/xf6/xf8 -+ /x8f/xf6/xf9 -+ /x8f/xf6/xfa -+ /x8f/xf6/xfb -+ /x8f/xf6/xfc -+ /x8f/xf6/xfd -+ /x8f/xf6/xfe -+ /x8f/xf7/xa1 -+ /x8f/xf7/xa2 -+ /x8f/xf7/xa3 -+ /x8f/xf7/xa4 -+ /x8f/xf7/xa5 -+ /x8f/xf7/xa6 -+ /x8f/xf7/xa7 -+ /x8f/xf7/xa8 -+ /x8f/xf7/xa9 -+ /x8f/xf7/xaa -+ /x8f/xf7/xab -+ /x8f/xf7/xac -+ /x8f/xf7/xad -+ /x8f/xf7/xae -+ /x8f/xf7/xaf -+ /x8f/xf7/xb0 -+ /x8f/xf7/xb1 -+ /x8f/xf7/xb2 -+ /x8f/xf7/xb3 -+ /x8f/xf7/xb4 -+ /x8f/xf7/xb5 -+ /x8f/xf7/xb6 -+ /x8f/xf7/xb7 -+ /x8f/xf7/xb8 -+ /x8f/xf7/xb9 -+ /x8f/xf7/xba -+ /x8f/xf7/xbb -+ /x8f/xf7/xbc -+ /x8f/xf7/xbd -+ /x8f/xf7/xbe -+ /x8f/xf7/xbf -+ /x8f/xf7/xc0 -+ /x8f/xf7/xc1 -+ /x8f/xf7/xc2 -+ /x8f/xf7/xc3 -+ /x8f/xf7/xc4 -+ /x8f/xf7/xc5 -+ /x8f/xf7/xc6 -+ /x8f/xf7/xc7 -+ /x8f/xf7/xc8 -+ /x8f/xf7/xc9 -+ /x8f/xf7/xca -+ /x8f/xf7/xcb -+ /x8f/xf7/xcc -+ /x8f/xf7/xcd -+ /x8f/xf7/xce -+ /x8f/xf7/xcf -+ /x8f/xf7/xd0 -+ /x8f/xf7/xd1 -+ /x8f/xf7/xd2 -+ /x8f/xf7/xd3 -+ /x8f/xf7/xd4 -+ /x8f/xf7/xd5 -+ /x8f/xf7/xd6 -+ /x8f/xf7/xd7 -+ /x8f/xf7/xd8 -+ /x8f/xf7/xd9 -+ /x8f/xf7/xda -+ /x8f/xf7/xdb -+ /x8f/xf7/xdc -+ /x8f/xf7/xdd -+ /x8f/xf7/xde -+ /x8f/xf7/xdf -+ /x8f/xf7/xe0 -+ /x8f/xf7/xe1 -+ /x8f/xf7/xe2 -+ /x8f/xf7/xe3 -+ /x8f/xf7/xe4 -+ /x8f/xf7/xe5 -+ /x8f/xf7/xe6 -+ /x8f/xf7/xe7 -+ /x8f/xf7/xe8 -+ /x8f/xf7/xe9 -+ /x8f/xf7/xea -+ /x8f/xf7/xeb -+ /x8f/xf7/xec -+ /x8f/xf7/xed -+ /x8f/xf7/xee -+ /x8f/xf7/xef -+ /x8f/xf7/xf0 -+ /x8f/xf7/xf1 -+ /x8f/xf7/xf2 -+ /x8f/xf7/xf3 -+ /x8f/xf7/xf4 -+ /x8f/xf7/xf5 -+ /x8f/xf7/xf6 -+ /x8f/xf7/xf7 -+ /x8f/xf7/xf8 -+ /x8f/xf7/xf9 -+ /x8f/xf7/xfa -+ /x8f/xf7/xfb -+ /x8f/xf7/xfc -+ /x8f/xf7/xfd -+ /x8f/xf7/xfe -+ /x8f/xf8/xa1 -+ /x8f/xf8/xa2 -+ /x8f/xf8/xa3 -+ /x8f/xf8/xa4 -+ /x8f/xf8/xa5 -+ /x8f/xf8/xa6 -+ /x8f/xf8/xa7 -+ /x8f/xf8/xa8 -+ /x8f/xf8/xa9 -+ /x8f/xf8/xaa -+ /x8f/xf8/xab -+ /x8f/xf8/xac -+ /x8f/xf8/xad -+ /x8f/xf8/xae -+ /x8f/xf8/xaf -+ /x8f/xf8/xb0 -+ /x8f/xf8/xb1 -+ /x8f/xf8/xb2 -+ /x8f/xf8/xb3 -+ /x8f/xf8/xb4 -+ /x8f/xf8/xb5 -+ /x8f/xf8/xb6 -+ /x8f/xf8/xb7 -+ /x8f/xf8/xb8 -+ /x8f/xf8/xb9 -+ /x8f/xf8/xba -+ /x8f/xf8/xbb -+ /x8f/xf8/xbc -+ /x8f/xf8/xbd -+ /x8f/xf8/xbe -+ /x8f/xf8/xbf -+ /x8f/xf8/xc0 -+ /x8f/xf8/xc1 -+ /x8f/xf8/xc2 -+ /x8f/xf8/xc3 -+ /x8f/xf8/xc4 -+ /x8f/xf8/xc5 -+ /x8f/xf8/xc6 -+ /x8f/xf8/xc7 -+ /x8f/xf8/xc8 -+ /x8f/xf8/xc9 -+ /x8f/xf8/xca -+ /x8f/xf8/xcb -+ /x8f/xf8/xcc -+ /x8f/xf8/xcd -+ /x8f/xf8/xce -+ /x8f/xf8/xcf -+ /x8f/xf8/xd0 -+ /x8f/xf8/xd1 -+ /x8f/xf8/xd2 -+ /x8f/xf8/xd3 -+ /x8f/xf8/xd4 -+ /x8f/xf8/xd5 -+ /x8f/xf8/xd6 -+ /x8f/xf8/xd7 -+ /x8f/xf8/xd8 -+ /x8f/xf8/xd9 -+ /x8f/xf8/xda -+ /x8f/xf8/xdb -+ /x8f/xf8/xdc -+ /x8f/xf8/xdd -+ /x8f/xf8/xde -+ /x8f/xf8/xdf -+ /x8f/xf8/xe0 -+ /x8f/xf8/xe1 -+ /x8f/xf8/xe2 -+ /x8f/xf8/xe3 -+ /x8f/xf8/xe4 -+ /x8f/xf8/xe5 -+ /x8f/xf8/xe6 -+ /x8f/xf8/xe7 -+ /x8f/xf8/xe8 -+ /x8f/xf8/xe9 -+ /x8f/xf8/xea -+ /x8f/xf8/xeb -+ /x8f/xf8/xec -+ /x8f/xf8/xed -+ /x8f/xf8/xee -+ /x8f/xf8/xef -+ /x8f/xf8/xf0 -+ /x8f/xf8/xf1 -+ /x8f/xf8/xf2 -+ /x8f/xf8/xf3 -+ /x8f/xf8/xf4 -+ /x8f/xf8/xf5 -+ /x8f/xf8/xf6 -+ /x8f/xf8/xf7 -+ /x8f/xf8/xf8 -+ /x8f/xf8/xf9 -+ /x8f/xf8/xfa -+ /x8f/xf8/xfb -+ /x8f/xf8/xfc -+ /x8f/xf8/xfd -+ /x8f/xf8/xfe -+ /x8f/xf9/xa1 -+ /x8f/xf9/xa2 -+ /x8f/xf9/xa3 -+ /x8f/xf9/xa4 -+ /x8f/xf9/xa5 -+ /x8f/xf9/xa6 -+ /x8f/xf9/xa7 -+ /x8f/xf9/xa8 -+ /x8f/xf9/xa9 -+ /x8f/xf9/xaa -+ /x8f/xf9/xab -+ /x8f/xf9/xac -+ /x8f/xf9/xad -+ /x8f/xf9/xae -+ /x8f/xf9/xaf -+ /x8f/xf9/xb0 -+ /x8f/xf9/xb1 -+ /x8f/xf9/xb2 -+ /x8f/xf9/xb3 -+ /x8f/xf9/xb4 -+ /x8f/xf9/xb5 -+ /x8f/xf9/xb6 -+ /x8f/xf9/xb7 -+ /x8f/xf9/xb8 -+ /x8f/xf9/xb9 -+ /x8f/xf9/xba -+ /x8f/xf9/xbb -+ /x8f/xf9/xbc -+ /x8f/xf9/xbd -+ /x8f/xf9/xbe -+ /x8f/xf9/xbf -+ /x8f/xf9/xc0 -+ /x8f/xf9/xc1 -+ /x8f/xf9/xc2 -+ /x8f/xf9/xc3 -+ /x8f/xf9/xc4 -+ /x8f/xf9/xc5 -+ /x8f/xf9/xc6 -+ /x8f/xf9/xc7 -+ /x8f/xf9/xc8 -+ /x8f/xf9/xc9 -+ /x8f/xf9/xca -+ /x8f/xf9/xcb -+ /x8f/xf9/xcc -+ /x8f/xf9/xcd -+ /x8f/xf9/xce -+ /x8f/xf9/xcf -+ /x8f/xf9/xd0 -+ /x8f/xf9/xd1 -+ /x8f/xf9/xd2 -+ /x8f/xf9/xd3 -+ /x8f/xf9/xd4 -+ /x8f/xf9/xd5 -+ /x8f/xf9/xd6 -+ /x8f/xf9/xd7 -+ /x8f/xf9/xd8 -+ /x8f/xf9/xd9 -+ /x8f/xf9/xda -+ /x8f/xf9/xdb -+ /x8f/xf9/xdc -+ /x8f/xf9/xdd -+ /x8f/xf9/xde -+ /x8f/xf9/xdf -+ /x8f/xf9/xe0 -+ /x8f/xf9/xe1 -+ /x8f/xf9/xe2 -+ /x8f/xf9/xe3 -+ /x8f/xf9/xe4 -+ /x8f/xf9/xe5 -+ /x8f/xf9/xe6 -+ /x8f/xf9/xe7 -+ /x8f/xf9/xe8 -+ /x8f/xf9/xe9 -+ /x8f/xf9/xea -+ /x8f/xf9/xeb -+ /x8f/xf9/xec -+ /x8f/xf9/xed -+ /x8f/xf9/xee -+ /x8f/xf9/xef -+ /x8f/xf9/xf0 -+ /x8f/xf9/xf1 -+ /x8f/xf9/xf2 -+ /x8f/xf9/xf3 -+ /x8f/xf9/xf4 -+ /x8f/xf9/xf5 -+ /x8f/xf9/xf6 -+ /x8f/xf9/xf7 -+ /x8f/xf9/xf8 -+ /x8f/xf9/xf9 -+ /x8f/xf9/xfa -+ /x8f/xf9/xfb -+ /x8f/xf9/xfc -+ /x8f/xf9/xfd -+ /x8f/xf9/xfe -+ /x8f/xfa/xa1 -+ /x8f/xfa/xa2 -+ /x8f/xfa/xa3 -+ /x8f/xfa/xa4 -+ /x8f/xfa/xa5 -+ /x8f/xfa/xa6 -+ /x8f/xfa/xa7 -+ /x8f/xfa/xa8 -+ /x8f/xfa/xa9 -+ /x8f/xfa/xaa -+ /x8f/xfa/xab -+ /x8f/xfa/xac -+ /x8f/xfa/xad -+ /x8f/xfa/xae -+ /x8f/xfa/xaf -+ /x8f/xfa/xb0 -+ /x8f/xfa/xb1 -+ /x8f/xfa/xb2 -+ /x8f/xfa/xb3 -+ /x8f/xfa/xb4 -+ /x8f/xfa/xb5 -+ /x8f/xfa/xb6 -+ /x8f/xfa/xb7 -+ /x8f/xfa/xb8 -+ /x8f/xfa/xb9 -+ /x8f/xfa/xba -+ /x8f/xfa/xbb -+ /x8f/xfa/xbc -+ /x8f/xfa/xbd -+ /x8f/xfa/xbe -+ /x8f/xfa/xbf -+ /x8f/xfa/xc0 -+ /x8f/xfa/xc1 -+ /x8f/xfa/xc2 -+ /x8f/xfa/xc3 -+ /x8f/xfa/xc4 -+ /x8f/xfa/xc5 -+ /x8f/xfa/xc6 -+ /x8f/xfa/xc7 -+ /x8f/xfa/xc8 -+ /x8f/xfa/xc9 -+ /x8f/xfa/xca -+ /x8f/xfa/xcb -+ /x8f/xfa/xcc -+ /x8f/xfa/xcd -+ /x8f/xfa/xce -+ /x8f/xfa/xcf -+ /x8f/xfa/xd0 -+ /x8f/xfa/xd1 -+ /x8f/xfa/xd2 -+ /x8f/xfa/xd3 -+ /x8f/xfa/xd4 -+ /x8f/xfa/xd5 -+ /x8f/xfa/xd6 -+ /x8f/xfa/xd7 -+ /x8f/xfa/xd8 -+ /x8f/xfa/xd9 -+ /x8f/xfa/xda -+ /x8f/xfa/xdb -+ /x8f/xfa/xdc -+ /x8f/xfa/xdd -+ /x8f/xfa/xde -+ /x8f/xfa/xdf -+ /x8f/xfa/xe0 -+ /x8f/xfa/xe1 -+ /x8f/xfa/xe2 -+ /x8f/xfa/xe3 -+ /x8f/xfa/xe4 -+ /x8f/xfa/xe5 -+ /x8f/xfa/xe6 -+ /x8f/xfa/xe7 -+ /x8f/xfa/xe8 -+ /x8f/xfa/xe9 -+ /x8f/xfa/xea -+ /x8f/xfa/xeb -+ /x8f/xfa/xec -+ /x8f/xfa/xed -+ /x8f/xfa/xee -+ /x8f/xfa/xef -+ /x8f/xfa/xf0 -+ /x8f/xfa/xf1 -+ /x8f/xfa/xf2 -+ /x8f/xfa/xf3 -+ /x8f/xfa/xf4 -+ /x8f/xfa/xf5 -+ /x8f/xfa/xf6 -+ /x8f/xfa/xf7 -+ /x8f/xfa/xf8 -+ /x8f/xfa/xf9 -+ /x8f/xfa/xfa -+ /x8f/xfa/xfb -+ /x8f/xfa/xfc -+ /x8f/xfa/xfd -+ /x8f/xfa/xfe -+ /x8f/xfb/xa1 -+ /x8f/xfb/xa2 -+ /x8f/xfb/xa3 -+ /x8f/xfb/xa4 -+ /x8f/xfb/xa5 -+ /x8f/xfb/xa6 -+ /x8f/xfb/xa7 -+ /x8f/xfb/xa8 -+ /x8f/xfb/xa9 -+ /x8f/xfb/xaa -+ /x8f/xfb/xab -+ /x8f/xfb/xac -+ /x8f/xfb/xad -+ /x8f/xfb/xae -+ /x8f/xfb/xaf -+ /x8f/xfb/xb0 -+ /x8f/xfb/xb1 -+ /x8f/xfb/xb2 -+ /x8f/xfb/xb3 -+ /x8f/xfb/xb4 -+ /x8f/xfb/xb5 -+ /x8f/xfb/xb6 -+ /x8f/xfb/xb7 -+ /x8f/xfb/xb8 -+ /x8f/xfb/xb9 -+ /x8f/xfb/xba -+ /x8f/xfb/xbb -+ /x8f/xfb/xbc -+ /x8f/xfb/xbd -+ /x8f/xfb/xbe -+ /x8f/xfb/xbf -+ /x8f/xfb/xc0 -+ /x8f/xfb/xc1 -+ /x8f/xfb/xc2 -+ /x8f/xfb/xc3 -+ /x8f/xfb/xc4 -+ /x8f/xfb/xc5 -+ /x8f/xfb/xc6 -+ /x8f/xfb/xc7 -+ /x8f/xfb/xc8 -+ /x8f/xfb/xc9 -+ /x8f/xfb/xca -+ /x8f/xfb/xcb -+ /x8f/xfb/xcc -+ /x8f/xfb/xcd -+ /x8f/xfb/xce -+ /x8f/xfb/xcf -+ /x8f/xfb/xd0 -+ /x8f/xfb/xd1 -+ /x8f/xfb/xd2 -+ /x8f/xfb/xd3 -+ /x8f/xfb/xd4 -+ /x8f/xfb/xd5 -+ /x8f/xfb/xd6 -+ /x8f/xfb/xd7 -+ /x8f/xfb/xd8 -+ /x8f/xfb/xd9 -+ /x8f/xfb/xda -+ /x8f/xfb/xdb -+ /x8f/xfb/xdc -+ /x8f/xfb/xdd -+ /x8f/xfb/xde -+ /x8f/xfb/xdf -+ /x8f/xfb/xe0 -+ /x8f/xfb/xe1 -+ /x8f/xfb/xe2 -+ /x8f/xfb/xe3 -+ /x8f/xfb/xe4 -+ /x8f/xfb/xe5 -+ /x8f/xfb/xe6 -+ /x8f/xfb/xe7 -+ /x8f/xfb/xe8 -+ /x8f/xfb/xe9 -+ /x8f/xfb/xea -+ /x8f/xfb/xeb -+ /x8f/xfb/xec -+ /x8f/xfb/xed -+ /x8f/xfb/xee -+ /x8f/xfb/xef -+ /x8f/xfb/xf0 -+ /x8f/xfb/xf1 -+ /x8f/xfb/xf2 -+ /x8f/xfb/xf3 -+ /x8f/xfb/xf4 -+ /x8f/xfb/xf5 -+ /x8f/xfb/xf6 -+ /x8f/xfb/xf7 -+ /x8f/xfb/xf8 -+ /x8f/xfb/xf9 -+ /x8f/xfb/xfa -+ /x8f/xfb/xfb -+ /x8f/xfb/xfc -+ /x8f/xfb/xfd -+ /x8f/xfb/xfe -+ /x8f/xfc/xa1 -+ /x8f/xfc/xa2 -+ /x8f/xfc/xa3 -+ /x8f/xfc/xa4 -+ /x8f/xfc/xa5 -+ /x8f/xfc/xa6 -+ /x8f/xfc/xa7 -+ /x8f/xfc/xa8 -+ /x8f/xfc/xa9 -+ /x8f/xfc/xaa -+ /x8f/xfc/xab -+ /x8f/xfc/xac -+ /x8f/xfc/xad -+ /x8f/xfc/xae -+ /x8f/xfc/xaf -+ /x8f/xfc/xb0 -+ /x8f/xfc/xb1 -+ /x8f/xfc/xb2 -+ /x8f/xfc/xb3 -+ /x8f/xfc/xb4 -+ /x8f/xfc/xb5 -+ /x8f/xfc/xb6 -+ /x8f/xfc/xb7 -+ /x8f/xfc/xb8 -+ /x8f/xfc/xb9 -+ /x8f/xfc/xba -+ /x8f/xfc/xbb -+ /x8f/xfc/xbc -+ /x8f/xfc/xbd -+ /x8f/xfc/xbe -+ /x8f/xfc/xbf -+ /x8f/xfc/xc0 -+ /x8f/xfc/xc1 -+ /x8f/xfc/xc2 -+ /x8f/xfc/xc3 -+ /x8f/xfc/xc4 -+ /x8f/xfc/xc5 -+ /x8f/xfc/xc6 -+ /x8f/xfc/xc7 -+ /x8f/xfc/xc8 -+ /x8f/xfc/xc9 -+ /x8f/xfc/xca -+ /x8f/xfc/xcb -+ /x8f/xfc/xcc -+ /x8f/xfc/xcd -+ /x8f/xfc/xce -+ /x8f/xfc/xcf -+ /x8f/xfc/xd0 -+ /x8f/xfc/xd1 -+ /x8f/xfc/xd2 -+ /x8f/xfc/xd3 -+ /x8f/xfc/xd4 -+ /x8f/xfc/xd5 -+ /x8f/xfc/xd6 -+ /x8f/xfc/xd7 -+ /x8f/xfc/xd8 -+ /x8f/xfc/xd9 -+ /x8f/xfc/xda -+ /x8f/xfc/xdb -+ /x8f/xfc/xdc -+ /x8f/xfc/xdd -+ /x8f/xfc/xde -+ /x8f/xfc/xdf -+ /x8f/xfc/xe0 -+ /x8f/xfc/xe1 -+ /x8f/xfc/xe2 -+ /x8f/xfc/xe3 -+ /x8f/xfc/xe4 -+ /x8f/xfc/xe5 -+ /x8f/xfc/xe6 -+ /x8f/xfc/xe7 -+ /x8f/xfc/xe8 -+ /x8f/xfc/xe9 -+ /x8f/xfc/xea -+ /x8f/xfc/xeb -+ /x8f/xfc/xec -+ /x8f/xfc/xed -+ /x8f/xfc/xee -+ /x8f/xfc/xef -+ /x8f/xfc/xf0 -+ /x8f/xfc/xf1 -+ /x8f/xfc/xf2 -+ /x8f/xfc/xf3 -+ /x8f/xfc/xf4 -+ /x8f/xfc/xf5 -+ /x8f/xfc/xf6 -+ /x8f/xfc/xf7 -+ /x8f/xfc/xf8 -+ /x8f/xfc/xf9 -+ /x8f/xfc/xfa -+ /x8f/xfc/xfb -+ /x8f/xfc/xfc -+ /x8f/xfc/xfd -+ /x8f/xfc/xfe -+ /x8f/xfd/xa1 -+ /x8f/xfd/xa2 -+ /x8f/xfd/xa3 -+ /x8f/xfd/xa4 -+ /x8f/xfd/xa5 -+ /x8f/xfd/xa6 -+ /x8f/xfd/xa7 -+ /x8f/xfd/xa8 -+ /x8f/xfd/xa9 -+ /x8f/xfd/xaa -+ /x8f/xfd/xab -+ /x8f/xfd/xac -+ /x8f/xfd/xad -+ /x8f/xfd/xae -+ /x8f/xfd/xaf -+ /x8f/xfd/xb0 -+ /x8f/xfd/xb1 -+ /x8f/xfd/xb2 -+ /x8f/xfd/xb3 -+ /x8f/xfd/xb4 -+ /x8f/xfd/xb5 -+ /x8f/xfd/xb6 -+ /x8f/xfd/xb7 -+ /x8f/xfd/xb8 -+ /x8f/xfd/xb9 -+ /x8f/xfd/xba -+ /x8f/xfd/xbb -+ /x8f/xfd/xbc -+ /x8f/xfd/xbd -+ /x8f/xfd/xbe -+ /x8f/xfd/xbf -+ /x8f/xfd/xc0 -+ /x8f/xfd/xc1 -+ /x8f/xfd/xc2 -+ /x8f/xfd/xc3 -+ /x8f/xfd/xc4 -+ /x8f/xfd/xc5 -+ /x8f/xfd/xc6 -+ /x8f/xfd/xc7 -+ /x8f/xfd/xc8 -+ /x8f/xfd/xc9 -+ /x8f/xfd/xca -+ /x8f/xfd/xcb -+ /x8f/xfd/xcc -+ /x8f/xfd/xcd -+ /x8f/xfd/xce -+ /x8f/xfd/xcf -+ /x8f/xfd/xd0 -+ /x8f/xfd/xd1 -+ /x8f/xfd/xd2 -+ /x8f/xfd/xd3 -+ /x8f/xfd/xd4 -+ /x8f/xfd/xd5 -+ /x8f/xfd/xd6 -+ /x8f/xfd/xd7 -+ /x8f/xfd/xd8 -+ /x8f/xfd/xd9 -+ /x8f/xfd/xda -+ /x8f/xfd/xdb -+ /x8f/xfd/xdc -+ /x8f/xfd/xdd -+ /x8f/xfd/xde -+ /x8f/xfd/xdf -+ /x8f/xfd/xe0 -+ /x8f/xfd/xe1 -+ /x8f/xfd/xe2 -+ /x8f/xfd/xe3 -+ /x8f/xfd/xe4 -+ /x8f/xfd/xe5 -+ /x8f/xfd/xe6 -+ /x8f/xfd/xe7 -+ /x8f/xfd/xe8 -+ /x8f/xfd/xe9 -+ /x8f/xfd/xea -+ /x8f/xfd/xeb -+ /x8f/xfd/xec -+ /x8f/xfd/xed -+ /x8f/xfd/xee -+ /x8f/xfd/xef -+ /x8f/xfd/xf0 -+ /x8f/xfd/xf1 -+ /x8f/xfd/xf2 -+ /x8f/xfd/xf3 -+ /x8f/xfd/xf4 -+ /x8f/xfd/xf5 -+ /x8f/xfd/xf6 -+ /x8f/xfd/xf7 -+ /x8f/xfd/xf8 -+ /x8f/xfd/xf9 -+ /x8f/xfd/xfa -+ /x8f/xfd/xfb -+ /x8f/xfd/xfc -+ /x8f/xfd/xfd -+ /x8f/xfd/xfe -+ /x8f/xfe/xa1 -+ /x8f/xfe/xa2 -+ /x8f/xfe/xa3 -+ /x8f/xfe/xa4 -+ /x8f/xfe/xa5 -+ /x8f/xfe/xa6 -+ /x8f/xfe/xa7 -+ /x8f/xfe/xa8 -+ /x8f/xfe/xa9 -+ /x8f/xfe/xaa -+ /x8f/xfe/xab -+ /x8f/xfe/xac -+ /x8f/xfe/xad -+ /x8f/xfe/xae -+ /x8f/xfe/xaf -+ /x8f/xfe/xb0 -+ /x8f/xfe/xb1 -+ /x8f/xfe/xb2 -+ /x8f/xfe/xb3 -+ /x8f/xfe/xb4 -+ /x8f/xfe/xb5 -+ /x8f/xfe/xb6 -+ /x8f/xfe/xb7 -+ /x8f/xfe/xb8 -+ /x8f/xfe/xb9 -+ /x8f/xfe/xba -+ /x8f/xfe/xbb -+ /x8f/xfe/xbc -+ /x8f/xfe/xbd -+ /x8f/xfe/xbe -+ /x8f/xfe/xbf -+ /x8f/xfe/xc0 -+ /x8f/xfe/xc1 -+ /x8f/xfe/xc2 -+ /x8f/xfe/xc3 -+ /x8f/xfe/xc4 -+ /x8f/xfe/xc5 -+ /x8f/xfe/xc6 -+ /x8f/xfe/xc7 -+ /x8f/xfe/xc8 -+ /x8f/xfe/xc9 -+ /x8f/xfe/xca -+ /x8f/xfe/xcb -+ /x8f/xfe/xcc -+ /x8f/xfe/xcd -+ /x8f/xfe/xce -+ /x8f/xfe/xcf -+ /x8f/xfe/xd0 -+ /x8f/xfe/xd1 -+ /x8f/xfe/xd2 -+ /x8f/xfe/xd3 -+ /x8f/xfe/xd4 -+ /x8f/xfe/xd5 -+ /x8f/xfe/xd6 -+ /x8f/xfe/xd7 -+ /x8f/xfe/xd8 -+ /x8f/xfe/xd9 -+ /x8f/xfe/xda -+ /x8f/xfe/xdb -+ /x8f/xfe/xdc -+ /x8f/xfe/xdd -+ /x8f/xfe/xde -+ /x8f/xfe/xdf -+ /x8f/xfe/xe0 -+ /x8f/xfe/xe1 -+ /x8f/xfe/xe2 -+ /x8f/xfe/xe3 -+ /x8f/xfe/xe4 -+ /x8f/xfe/xe5 -+ /x8f/xfe/xe6 -+ /x8f/xfe/xe7 -+ /x8f/xfe/xe8 -+ /x8f/xfe/xe9 -+ /x8f/xfe/xea -+ /x8f/xfe/xeb -+ /x8f/xfe/xec -+ /x8f/xfe/xed -+ /x8f/xfe/xee -+ /x8f/xfe/xef -+ /x8f/xfe/xf0 -+ /x8f/xfe/xf1 -+ /x8f/xfe/xf2 -+ /x8f/xfe/xf3 -+ /x8f/xfe/xf4 -+ /x8f/xfe/xf5 -+ /x8f/xfe/xf6 -+ /x8f/xfe/xf7 -+ /x8f/xfe/xf8 -+ /x8f/xfe/xf9 -+ /x8f/xfe/xfa -+ /x8f/xfe/xfb -+ /x8f/xfe/xfc -+ /x8f/xfe/xfd -+ /x8f/xfe/xfe -+END CHARMAP -+ -+WIDTH -+... 2 -+... 2 -+... 2 -+... 2 -+END WIDTH ---- glibc-2.3.2/localedata/charmaps/GBK 2002-11-02 23:49:08.000000000 -0500 -+++ glibc-2.3.2/localedata/charmaps/GBK 2003-08-21 08:37:06.000000000 -0400 -@@ -4,6 +4,9 @@ - % - / - -+% alias CP936 -+% alias MS936 -+% alias WINDOWS-936 - CHARMAP - /x00 NULL (NUL) - /x01 START OF HEADING (SOH) ---- glibc-2.3.2/localedata/charmaps/IBM1047 2000-06-23 14:38:48.000000000 -0400 -+++ glibc-2.3.2/localedata/charmaps/IBM1047 2003-08-21 08:37:06.000000000 -0400 -@@ -6,6 +6,7 @@ - - % Registry SC09-1391-00 p 150. - -+% alias IBM-1047 - % alias CP1047 - % alias 1047 - CHARMAP ---- glibc-2.3.2/localedata/charmaps/ISO-8859-15 2000-06-23 15:02:28.000000000 -0400 -+++ glibc-2.3.2/localedata/charmaps/ISO-8859-15 2003-08-21 08:37:06.000000000 -0400 -@@ -3,6 +3,8 @@ - / - % automatically generated from the charDB - -+% alias ISO_8859-15 -+% alias LATIN-9 - CHARMAP - /x00 NULL - /x01 START OF HEADING ---- glibc-2.3.2/localedata/charmaps/ISO-8859-16 2001-11-26 22:44:03.000000000 -0500 -+++ glibc-2.3.2/localedata/charmaps/ISO-8859-16 2003-08-21 08:37:06.000000000 -0400 -@@ -4,6 +4,8 @@ - % automatically generated from the charDB - - % alias ISO-IR-226 -+% alias ISO_8859-16:2001 -+% alias ISO_8859-16 - % alias LATIN10 - % alias L10 - CHARMAP ---- glibc-2.3.2/localedata/charmaps/WINDOWS-31J 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/localedata/charmaps/WINDOWS-31J 2003-08-14 04:48:04.000000000 -0400 -@@ -0,0 +1,9823 @@ -+ WINDOWS-31J -+ % -+ / -+ 1 -+ 2 -+ -+% WINDOWS-31J character map -+% MORIYAMA Masayuki , 2003. -+% Last changed: 2003-07-18 -+ -+alias CP932 -+ -+CHARMAP -+ /x00 NULL -+ /x01 START OF HEADING -+ /x02 START OF TEXT -+ /x03 END OF TEXT -+ /x04 END OF TRANSMISSION -+ /x05 ENQUIRY -+ /x06 ACKNOWLEDGE -+ /x07 BELL -+ /x08 BACKSPACE -+ /x09 HORIZONTAL TABULATION -+ /x0a LINE FEED -+ /x0b VERTICAL TABULATION -+ /x0c FORM FEED -+ /x0d CARRIAGE RETURN -+ /x0e SHIFT OUT -+ /x0f SHIFT IN -+ /x10 DATA LINK ESCAPE -+ /x11 DEVICE CONTROL ONE -+ /x12 DEVICE CONTROL TWO -+ /x13 DEVICE CONTROL THREE -+ /x14 DEVICE CONTROL FOUR -+ /x15 NEGATIVE ACKNOWLEDGE -+ /x16 SYNCHRONOUS IDLE -+ /x17 END OF TRANSMISSION BLOCK -+ /x18 CANCEL -+ /x19 END OF MEDIUM -+ /x1a SUBSTITUTE -+ /x1b ESCAPE -+ /x1c FILE SEPARATOR -+ /x1d GROUP SEPARATOR -+ /x1e RECORD SEPARATOR -+ /x1f UNIT SEPARATOR -+ /x20 SPACE -+ /x21 EXCLAMATION MARK -+ /x22 QUOTATION MARK -+ /x23 NUMBER SIGN -+ /x24 DOLLAR SIGN -+ /x25 PERCENT SIGN -+ /x26 AMPERSAND -+ /x27 APOSTROPHE -+ /x28 LEFT PARENTHESIS -+ /x29 RIGHT PARENTHESIS -+ /x2a ASTERISK -+ /x2b PLUS SIGN -+ /x2c COMMA -+ /x2d HYPHEN-MINUS -+ /x2e FULL STOP -+ /x2f SOLIDUS -+ /x30 DIGIT ZERO -+ /x31 DIGIT ONE -+ /x32 DIGIT TWO -+ /x33 DIGIT THREE -+ /x34 DIGIT FOUR -+ /x35 DIGIT FIVE -+ /x36 DIGIT SIX -+ /x37 DIGIT SEVEN -+ /x38 DIGIT EIGHT -+ /x39 DIGIT NINE -+ /x3a COLON -+ /x3b SEMICOLON -+ /x3c LESS-THAN SIGN -+ /x3d EQUALS SIGN -+ /x3e GREATER-THAN SIGN -+ /x3f QUESTION MARK -+ /x40 COMMERCIAL AT -+ /x41 LATIN CAPITAL LETTER A -+ /x42 LATIN CAPITAL LETTER B -+ /x43 LATIN CAPITAL LETTER C -+ /x44 LATIN CAPITAL LETTER D -+ /x45 LATIN CAPITAL LETTER E -+ /x46 LATIN CAPITAL LETTER F -+ /x47 LATIN CAPITAL LETTER G -+ /x48 LATIN CAPITAL LETTER H -+ /x49 LATIN CAPITAL LETTER I -+ /x4a LATIN CAPITAL LETTER J -+ /x4b LATIN CAPITAL LETTER K -+ /x4c LATIN CAPITAL LETTER L -+ /x4d LATIN CAPITAL LETTER M -+ /x4e LATIN CAPITAL LETTER N -+ /x4f LATIN CAPITAL LETTER O -+ /x50 LATIN CAPITAL LETTER P -+ /x51 LATIN CAPITAL LETTER Q -+ /x52 LATIN CAPITAL LETTER R -+ /x53 LATIN CAPITAL LETTER S -+ /x54 LATIN CAPITAL LETTER T -+ /x55 LATIN CAPITAL LETTER U -+ /x56 LATIN CAPITAL LETTER V -+ /x57 LATIN CAPITAL LETTER W -+ /x58 LATIN CAPITAL LETTER X -+ /x59 LATIN CAPITAL LETTER Y -+ /x5a LATIN CAPITAL LETTER Z -+ /x5b LEFT SQUARE BRACKET -+ /x5c REVERSE SOLIDUS -+ /x5d RIGHT SQUARE BRACKET -+ /x5e CIRCUMFLEX ACCENT -+ /x5f LOW LINE -+ /x60 GRAVE ACCENT -+ /x61 LATIN SMALL LETTER A -+ /x62 LATIN SMALL LETTER B -+ /x63 LATIN SMALL LETTER C -+ /x64 LATIN SMALL LETTER D -+ /x65 LATIN SMALL LETTER E -+ /x66 LATIN SMALL LETTER F -+ /x67 LATIN SMALL LETTER G -+ /x68 LATIN SMALL LETTER H -+ /x69 LATIN SMALL LETTER I -+ /x6a LATIN SMALL LETTER J -+ /x6b LATIN SMALL LETTER K -+ /x6c LATIN SMALL LETTER L -+ /x6d LATIN SMALL LETTER M -+ /x6e LATIN SMALL LETTER N -+ /x6f LATIN SMALL LETTER O -+ /x70 LATIN SMALL LETTER P -+ /x71 LATIN SMALL LETTER Q -+ /x72 LATIN SMALL LETTER R -+ /x73 LATIN SMALL LETTER S -+ /x74 LATIN SMALL LETTER T -+ /x75 LATIN SMALL LETTER U -+ /x76 LATIN SMALL LETTER V -+ /x77 LATIN SMALL LETTER W -+ /x78 LATIN SMALL LETTER X -+ /x79 LATIN SMALL LETTER Y -+ /x7a LATIN SMALL LETTER Z -+ /x7b LEFT CURLY BRACKET -+ /x7c VERTICAL LINE -+ /x7d RIGHT CURLY BRACKET -+ /x7e TILDE -+ /x7f DELETE -+ -+ /x81/x40 IDEOGRAPHIC SPACE -+ /x81/x41 IDEOGRAPHIC COMMA -+ /x81/x42 IDEOGRAPHIC FULL STOP -+ /x81/x43 FULLWIDTH COMMA -+ /x81/x44 FULLWIDTH FULL STOP -+ /x81/x45 KATAKANA MIDDLE DOT -+ /x81/x46 FULLWIDTH COLON -+ /x81/x47 FULLWIDTH SEMICOLON -+ /x81/x48 FULLWIDTH QUESTION MARK -+ /x81/x49 FULLWIDTH EXCLAMATION MARK -+ /x81/x4a KATAKANA-HIRAGANA VOICED SOUND MARK -+ /x81/x4b KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK -+ /x81/x4c ACUTE ACCENT -+ /x81/x4d FULLWIDTH GRAVE ACCENT -+ /x81/x4e DIAERESIS -+ /x81/x4f FULLWIDTH CIRCUMFLEX ACCENT -+ /x81/x50 FULLWIDTH MACRON -+ /x81/x51 FULLWIDTH LOW LINE -+ /x81/x52 KATAKANA ITERATION MARK -+ /x81/x53 KATAKANA VOICED ITERATION MARK -+ /x81/x54 HIRAGANA ITERATION MARK -+ /x81/x55 HIRAGANA VOICED ITERATION MARK -+ /x81/x56 DITTO MARK -+ /x81/x57 -+ /x81/x58 IDEOGRAPHIC ITERATION MARK -+ /x81/x59 IDEOGRAPHIC CLOSING MARK -+ /x81/x5a IDEOGRAPHIC NUMBER ZERO -+ /x81/x5b KATAKANA-HIRAGANA PROLONGED SOUND MARK -+ /x81/x5c HORIZONTAL BAR -+ /x81/x5d HYPHEN -+ /x81/x5e FULLWIDTH SOLIDUS -+ /x81/x5f FULLWIDTH REVERSE SOLIDUS -+ /x81/x60 FULLWIDTH TILDE -+ /x81/x61 PARALLEL TO -+ /x81/x62 FULLWIDTH VERTICAL LINE -+ /x81/x63 HORIZONTAL ELLIPSIS -+ /x81/x64 TWO DOT LEADER -+ /x81/x65 LEFT SINGLE QUOTATION MARK -+ /x81/x66 RIGHT SINGLE QUOTATION MARK -+ /x81/x67 LEFT DOUBLE QUOTATION MARK -+ /x81/x68 RIGHT DOUBLE QUOTATION MARK -+ /x81/x69 FULLWIDTH LEFT PARENTHESIS -+ /x81/x6a FULLWIDTH RIGHT PARENTHESIS -+ /x81/x6b LEFT TORTOISE SHELL BRACKET -+ /x81/x6c RIGHT TORTOISE SHELL BRACKET -+ /x81/x6d FULLWIDTH LEFT SQUARE BRACKET -+ /x81/x6e FULLWIDTH RIGHT SQUARE BRACKET -+ /x81/x6f FULLWIDTH LEFT CURLY BRACKET -+ /x81/x70 FULLWIDTH RIGHT CURLY BRACKET -+ /x81/x71 LEFT ANGLE BRACKET -+ /x81/x72 RIGHT ANGLE BRACKET -+ /x81/x73 LEFT DOUBLE ANGLE BRACKET -+ /x81/x74 RIGHT DOUBLE ANGLE BRACKET -+ /x81/x75 LEFT CORNER BRACKET -+ /x81/x76 RIGHT CORNER BRACKET -+ /x81/x77 LEFT WHITE CORNER BRACKET -+ /x81/x78 RIGHT WHITE CORNER BRACKET -+ /x81/x79 LEFT BLACK LENTICULAR BRACKET -+ /x81/x7a RIGHT BLACK LENTICULAR BRACKET -+ /x81/x7b FULLWIDTH PLUS SIGN -+ /x81/x7c FULLWIDTH HYPHEN-MINUS -+ /x81/x7d PLUS-MINUS SIGN -+ /x81/x7e MULTIPLICATION SIGN -+ /x81/x80 DIVISION SIGN -+ /x81/x81 FULLWIDTH EQUALS SIGN -+ /x81/x82 NOT EQUAL TO -+ /x81/x83 FULLWIDTH LESS-THAN SIGN -+ /x81/x84 FULLWIDTH GREATER-THAN SIGN -+ /x81/x85 LESS-THAN OVER EQUAL TO -+ /x81/x86 GREATER-THAN OVER EQUAL TO -+ /x81/x87 INFINITY -+ /x81/x88 THEREFORE -+ /x81/x89 MALE SIGN -+ /x81/x8a FEMALE SIGN -+ /x81/x8b DEGREE SIGN -+ /x81/x8c PRIME -+ /x81/x8d DOUBLE PRIME -+ /x81/x8e DEGREE CELSIUS -+ /x81/x8f FULLWIDTH YEN SIGN -+ /x81/x90 FULLWIDTH DOLLAR SIGN -+ /x81/x91 FULLWIDTH CENT SIGN -+ /x81/x92 FULLWIDTH POUND SIGN -+ /x81/x93 FULLWIDTH PERCENT SIGN -+ /x81/x94 FULLWIDTH NUMBER SIGN -+ /x81/x95 FULLWIDTH AMPERSAND -+ /x81/x96 FULLWIDTH ASTERISK -+ /x81/x97 FULLWIDTH COMMERCIAL AT -+ /x81/x98 SECTION SIGN -+ /x81/x99 WHITE STAR -+ /x81/x9a BLACK STAR -+ /x81/x9b WHITE CIRCLE -+ /x81/x9c BLACK CIRCLE -+ /x81/x9d BULLSEYE -+ /x81/x9e WHITE DIAMOND -+ /x81/x9f BLACK DIAMOND -+ /x81/xa0 WHITE SQUARE -+ /x81/xa1 BLACK SQUARE -+ /x81/xa2 WHITE UP-POINTING TRIANGLE -+ /x81/xa3 BLACK UP-POINTING TRIANGLE -+ /x81/xa4 WHITE DOWN-POINTING TRIANGLE -+ /x81/xa5 BLACK DOWN-POINTING TRIANGLE -+ /x81/xa6 REFERENCE MARK -+ /x81/xa7 POSTAL MARK -+ /x81/xa8 RIGHTWARDS ARROW -+ /x81/xa9 LEFTWARDS ARROW -+ /x81/xaa UPWARDS ARROW -+ /x81/xab DOWNWARDS ARROW -+ /x81/xac GETA MARK -+ /x81/xb8 ELEMENT OF -+ /x81/xb9 CONTAINS AS MEMBER -+ /x81/xba SUBSET OF OR EQUAL TO -+ /x81/xbb SUPERSET OF OR EQUAL TO -+ /x81/xbc SUBSET OF -+ /x81/xbd SUPERSET OF -+ /x81/xbe UNION -+ /x81/xbf INTERSECTION -+ /x81/xc8 LOGICAL AND -+ /x81/xc9 LOGICAL OR -+ /x81/xca FULLWIDTH NOT SIGN -+ /x81/xcb RIGHTWARDS DOUBLE ARROW -+ /x81/xcc LEFT RIGHT DOUBLE ARROW -+ /x81/xcd FOR ALL -+ /x81/xce THERE EXISTS -+ /x81/xda ANGLE -+ /x81/xdb UP TACK -+ /x81/xdc ARC -+ /x81/xdd PARTIAL DIFFERENTIAL -+ /x81/xde NABLA -+ /x81/xdf IDENTICAL TO -+ /x81/xe0 APPROXIMATELY EQUAL TO OR THE IMAGE OF -+ /x81/xe1 MUCH LESS-THAN -+ /x81/xe2 MUCH GREATER-THAN -+ /x81/xe3 SQUARE ROOT -+ /x81/xe4 REVERSED TILDE -+ /x81/xe5 PROPORTIONAL TO -+ /x81/xe6 BECAUSE -+ /x81/xe7 INTEGRAL -+ /x81/xe8 DOUBLE INTEGRAL -+ /x81/xf0 ANGSTROM SIGN -+ /x81/xf1 PER MILLE SIGN -+ /x81/xf2 MUSIC SHARP SIGN -+ /x81/xf3 MUSIC FLAT SIGN -+ /x81/xf4 EIGHTH NOTE -+ /x81/xf5 DAGGER -+ /x81/xf6 DOUBLE DAGGER -+ /x81/xf7 PILCROW SIGN -+ /x81/xfc LARGE CIRCLE -+ /x82/x4f FULLWIDTH DIGIT ZERO -+ /x82/x50 FULLWIDTH DIGIT ONE -+ /x82/x51 FULLWIDTH DIGIT TWO -+ /x82/x52 FULLWIDTH DIGIT THREE -+ /x82/x53 FULLWIDTH DIGIT FOUR -+ /x82/x54 FULLWIDTH DIGIT FIVE -+ /x82/x55 FULLWIDTH DIGIT SIX -+ /x82/x56 FULLWIDTH DIGIT SEVEN -+ /x82/x57 FULLWIDTH DIGIT EIGHT -+ /x82/x58 FULLWIDTH DIGIT NINE -+ /x82/x60 FULLWIDTH LATIN CAPITAL LETTER A -+ /x82/x61 FULLWIDTH LATIN CAPITAL LETTER B -+ /x82/x62 FULLWIDTH LATIN CAPITAL LETTER C -+ /x82/x63 FULLWIDTH LATIN CAPITAL LETTER D -+ /x82/x64 FULLWIDTH LATIN CAPITAL LETTER E -+ /x82/x65 FULLWIDTH LATIN CAPITAL LETTER F -+ /x82/x66 FULLWIDTH LATIN CAPITAL LETTER G -+ /x82/x67 FULLWIDTH LATIN CAPITAL LETTER H -+ /x82/x68 FULLWIDTH LATIN CAPITAL LETTER I -+ /x82/x69 FULLWIDTH LATIN CAPITAL LETTER J -+ /x82/x6a FULLWIDTH LATIN CAPITAL LETTER K -+ /x82/x6b FULLWIDTH LATIN CAPITAL LETTER L -+ /x82/x6c FULLWIDTH LATIN CAPITAL LETTER M -+ /x82/x6d FULLWIDTH LATIN CAPITAL LETTER N -+ /x82/x6e FULLWIDTH LATIN CAPITAL LETTER O -+ /x82/x6f FULLWIDTH LATIN CAPITAL LETTER P -+ /x82/x70 FULLWIDTH LATIN CAPITAL LETTER Q -+ /x82/x71 FULLWIDTH LATIN CAPITAL LETTER R -+ /x82/x72 FULLWIDTH LATIN CAPITAL LETTER S -+ /x82/x73 FULLWIDTH LATIN CAPITAL LETTER T -+ /x82/x74 FULLWIDTH LATIN CAPITAL LETTER U -+ /x82/x75 FULLWIDTH LATIN CAPITAL LETTER V -+ /x82/x76 FULLWIDTH LATIN CAPITAL LETTER W -+ /x82/x77 FULLWIDTH LATIN CAPITAL LETTER X -+ /x82/x78 FULLWIDTH LATIN CAPITAL LETTER Y -+ /x82/x79 FULLWIDTH LATIN CAPITAL LETTER Z -+ /x82/x81 FULLWIDTH LATIN SMALL LETTER A -+ /x82/x82 FULLWIDTH LATIN SMALL LETTER B -+ /x82/x83 FULLWIDTH LATIN SMALL LETTER C -+ /x82/x84 FULLWIDTH LATIN SMALL LETTER D -+ /x82/x85 FULLWIDTH LATIN SMALL LETTER E -+ /x82/x86 FULLWIDTH LATIN SMALL LETTER F -+ /x82/x87 FULLWIDTH LATIN SMALL LETTER G -+ /x82/x88 FULLWIDTH LATIN SMALL LETTER H -+ /x82/x89 FULLWIDTH LATIN SMALL LETTER I -+ /x82/x8a FULLWIDTH LATIN SMALL LETTER J -+ /x82/x8b FULLWIDTH LATIN SMALL LETTER K -+ /x82/x8c FULLWIDTH LATIN SMALL LETTER L -+ /x82/x8d FULLWIDTH LATIN SMALL LETTER M -+ /x82/x8e FULLWIDTH LATIN SMALL LETTER N -+ /x82/x8f FULLWIDTH LATIN SMALL LETTER O -+ /x82/x90 FULLWIDTH LATIN SMALL LETTER P -+ /x82/x91 FULLWIDTH LATIN SMALL LETTER Q -+ /x82/x92 FULLWIDTH LATIN SMALL LETTER R -+ /x82/x93 FULLWIDTH LATIN SMALL LETTER S -+ /x82/x94 FULLWIDTH LATIN SMALL LETTER T -+ /x82/x95 FULLWIDTH LATIN SMALL LETTER U -+ /x82/x96 FULLWIDTH LATIN SMALL LETTER V -+ /x82/x97 FULLWIDTH LATIN SMALL LETTER W -+ /x82/x98 FULLWIDTH LATIN SMALL LETTER X -+ /x82/x99 FULLWIDTH LATIN SMALL LETTER Y -+ /x82/x9a FULLWIDTH LATIN SMALL LETTER Z -+ /x82/x9f HIRAGANA LETTER SMALL A -+ /x82/xa0 HIRAGANA LETTER A -+ /x82/xa1 HIRAGANA LETTER SMALL I -+ /x82/xa2 HIRAGANA LETTER I -+ /x82/xa3 HIRAGANA LETTER SMALL U -+ /x82/xa4 HIRAGANA LETTER U -+ /x82/xa5 HIRAGANA LETTER SMALL E -+ /x82/xa6 HIRAGANA LETTER E -+ /x82/xa7 HIRAGANA LETTER SMALL O -+ /x82/xa8 HIRAGANA LETTER O -+ /x82/xa9 HIRAGANA LETTER KA -+ /x82/xaa HIRAGANA LETTER GA -+ /x82/xab HIRAGANA LETTER KI -+ /x82/xac HIRAGANA LETTER GI -+ /x82/xad HIRAGANA LETTER KU -+ /x82/xae HIRAGANA LETTER GU -+ /x82/xaf HIRAGANA LETTER KE -+ /x82/xb0 HIRAGANA LETTER GE -+ /x82/xb1 HIRAGANA LETTER KO -+ /x82/xb2 HIRAGANA LETTER GO -+ /x82/xb3 HIRAGANA LETTER SA -+ /x82/xb4 HIRAGANA LETTER ZA -+ /x82/xb5 HIRAGANA LETTER SI -+ /x82/xb6 HIRAGANA LETTER ZI -+ /x82/xb7 HIRAGANA LETTER SU -+ /x82/xb8 HIRAGANA LETTER ZU -+ /x82/xb9 HIRAGANA LETTER SE -+ /x82/xba HIRAGANA LETTER ZE -+ /x82/xbb HIRAGANA LETTER SO -+ /x82/xbc HIRAGANA LETTER ZO -+ /x82/xbd HIRAGANA LETTER TA -+ /x82/xbe HIRAGANA LETTER DA -+ /x82/xbf HIRAGANA LETTER TI -+ /x82/xc0 HIRAGANA LETTER DI -+ /x82/xc1 HIRAGANA LETTER SMALL TU -+ /x82/xc2 HIRAGANA LETTER TU -+ /x82/xc3 HIRAGANA LETTER DU -+ /x82/xc4 HIRAGANA LETTER TE -+ /x82/xc5 HIRAGANA LETTER DE -+ /x82/xc6 HIRAGANA LETTER TO -+ /x82/xc7 HIRAGANA LETTER DO -+ /x82/xc8 HIRAGANA LETTER NA -+ /x82/xc9 HIRAGANA LETTER NI -+ /x82/xca HIRAGANA LETTER NU -+ /x82/xcb HIRAGANA LETTER NE -+ /x82/xcc HIRAGANA LETTER NO -+ /x82/xcd HIRAGANA LETTER HA -+ /x82/xce HIRAGANA LETTER BA -+ /x82/xcf HIRAGANA LETTER PA -+ /x82/xd0 HIRAGANA LETTER HI -+ /x82/xd1 HIRAGANA LETTER BI -+ /x82/xd2 HIRAGANA LETTER PI -+ /x82/xd3 HIRAGANA LETTER HU -+ /x82/xd4 HIRAGANA LETTER BU -+ /x82/xd5 HIRAGANA LETTER PU -+ /x82/xd6 HIRAGANA LETTER HE -+ /x82/xd7 HIRAGANA LETTER BE -+ /x82/xd8 HIRAGANA LETTER PE -+ /x82/xd9 HIRAGANA LETTER HO -+ /x82/xda HIRAGANA LETTER BO -+ /x82/xdb HIRAGANA LETTER PO -+ /x82/xdc HIRAGANA LETTER MA -+ /x82/xdd HIRAGANA LETTER MI -+ /x82/xde HIRAGANA LETTER MU -+ /x82/xdf HIRAGANA LETTER ME -+ /x82/xe0 HIRAGANA LETTER MO -+ /x82/xe1 HIRAGANA LETTER SMALL YA -+ /x82/xe2 HIRAGANA LETTER YA -+ /x82/xe3 HIRAGANA LETTER SMALL YU -+ /x82/xe4 HIRAGANA LETTER YU -+ /x82/xe5 HIRAGANA LETTER SMALL YO -+ /x82/xe6 HIRAGANA LETTER YO -+ /x82/xe7 HIRAGANA LETTER RA -+ /x82/xe8 HIRAGANA LETTER RI -+ /x82/xe9 HIRAGANA LETTER RU -+ /x82/xea HIRAGANA LETTER RE -+ /x82/xeb HIRAGANA LETTER RO -+ /x82/xec HIRAGANA LETTER SMALL WA -+ /x82/xed HIRAGANA LETTER WA -+ /x82/xee HIRAGANA LETTER WI -+ /x82/xef HIRAGANA LETTER WE -+ /x82/xf0 HIRAGANA LETTER WO -+ /x82/xf1 HIRAGANA LETTER N -+ /x83/x40 KATAKANA LETTER SMALL A -+ /x83/x41 KATAKANA LETTER A -+ /x83/x42 KATAKANA LETTER SMALL I -+ /x83/x43 KATAKANA LETTER I -+ /x83/x44 KATAKANA LETTER SMALL U -+ /x83/x45 KATAKANA LETTER U -+ /x83/x46 KATAKANA LETTER SMALL E -+ /x83/x47 KATAKANA LETTER E -+ /x83/x48 KATAKANA LETTER SMALL O -+ /x83/x49 KATAKANA LETTER O -+ /x83/x4a KATAKANA LETTER KA -+ /x83/x4b KATAKANA LETTER GA -+ /x83/x4c KATAKANA LETTER KI -+ /x83/x4d KATAKANA LETTER GI -+ /x83/x4e KATAKANA LETTER KU -+ /x83/x4f KATAKANA LETTER GU -+ /x83/x50 KATAKANA LETTER KE -+ /x83/x51 KATAKANA LETTER GE -+ /x83/x52 KATAKANA LETTER KO -+ /x83/x53 KATAKANA LETTER GO -+ /x83/x54 KATAKANA LETTER SA -+ /x83/x55 KATAKANA LETTER ZA -+ /x83/x56 KATAKANA LETTER SI -+ /x83/x57 KATAKANA LETTER ZI -+ /x83/x58 KATAKANA LETTER SU -+ /x83/x59 KATAKANA LETTER ZU -+ /x83/x5a KATAKANA LETTER SE -+ /x83/x5b KATAKANA LETTER ZE -+ /x83/x5c KATAKANA LETTER SO -+ /x83/x5d KATAKANA LETTER ZO -+ /x83/x5e KATAKANA LETTER TA -+ /x83/x5f KATAKANA LETTER DA -+ /x83/x60 KATAKANA LETTER TI -+ /x83/x61 KATAKANA LETTER DI -+ /x83/x62 KATAKANA LETTER SMALL TU -+ /x83/x63 KATAKANA LETTER TU -+ /x83/x64 KATAKANA LETTER DU -+ /x83/x65 KATAKANA LETTER TE -+ /x83/x66 KATAKANA LETTER DE -+ /x83/x67 KATAKANA LETTER TO -+ /x83/x68 KATAKANA LETTER DO -+ /x83/x69 KATAKANA LETTER NA -+ /x83/x6a KATAKANA LETTER NI -+ /x83/x6b KATAKANA LETTER NU -+ /x83/x6c KATAKANA LETTER NE -+ /x83/x6d KATAKANA LETTER NO -+ /x83/x6e KATAKANA LETTER HA -+ /x83/x6f KATAKANA LETTER BA -+ /x83/x70 KATAKANA LETTER PA -+ /x83/x71 KATAKANA LETTER HI -+ /x83/x72 KATAKANA LETTER BI -+ /x83/x73 KATAKANA LETTER PI -+ /x83/x74 KATAKANA LETTER HU -+ /x83/x75 KATAKANA LETTER BU -+ /x83/x76 KATAKANA LETTER PU -+ /x83/x77 KATAKANA LETTER HE -+ /x83/x78 KATAKANA LETTER BE -+ /x83/x79 KATAKANA LETTER PE -+ /x83/x7a KATAKANA LETTER HO -+ /x83/x7b KATAKANA LETTER BO -+ /x83/x7c KATAKANA LETTER PO -+ /x83/x7d KATAKANA LETTER MA -+ /x83/x7e KATAKANA LETTER MI -+ /x83/x80 KATAKANA LETTER MU -+ /x83/x81 KATAKANA LETTER ME -+ /x83/x82 KATAKANA LETTER MO -+ /x83/x83 KATAKANA LETTER SMALL YA -+ /x83/x84 KATAKANA LETTER YA -+ /x83/x85 KATAKANA LETTER SMALL YU -+ /x83/x86 KATAKANA LETTER YU -+ /x83/x87 KATAKANA LETTER SMALL YO -+ /x83/x88 KATAKANA LETTER YO -+ /x83/x89 KATAKANA LETTER RA -+ /x83/x8a KATAKANA LETTER RI -+ /x83/x8b KATAKANA LETTER RU -+ /x83/x8c KATAKANA LETTER RE -+ /x83/x8d KATAKANA LETTER RO -+ /x83/x8e KATAKANA LETTER SMALL WA -+ /x83/x8f KATAKANA LETTER WA -+ /x83/x90 KATAKANA LETTER WI -+ /x83/x91 KATAKANA LETTER WE -+ /x83/x92 KATAKANA LETTER WO -+ /x83/x93 KATAKANA LETTER N -+ /x83/x94 KATAKANA LETTER VU -+ /x83/x95 KATAKANA LETTER SMALL KA -+ /x83/x96 KATAKANA LETTER SMALL KE -+ /x83/x9f GREEK CAPITAL LETTER ALPHA -+ /x83/xa0 GREEK CAPITAL LETTER BETA -+ /x83/xa1 GREEK CAPITAL LETTER GAMMA -+ /x83/xa2 GREEK CAPITAL LETTER DELTA -+ /x83/xa3 GREEK CAPITAL LETTER EPSILON -+ /x83/xa4 GREEK CAPITAL LETTER ZETA -+ /x83/xa5 GREEK CAPITAL LETTER ETA -+ /x83/xa6 GREEK CAPITAL LETTER THETA -+ /x83/xa7 GREEK CAPITAL LETTER IOTA -+ /x83/xa8 GREEK CAPITAL LETTER KAPPA -+ /x83/xa9 GREEK CAPITAL LETTER LAMDA -+ /x83/xaa GREEK CAPITAL LETTER MU -+ /x83/xab GREEK CAPITAL LETTER NU -+ /x83/xac GREEK CAPITAL LETTER XI -+ /x83/xad GREEK CAPITAL LETTER OMICRON -+ /x83/xae GREEK CAPITAL LETTER PI -+ /x83/xaf GREEK CAPITAL LETTER RHO -+ /x83/xb0 GREEK CAPITAL LETTER SIGMA -+ /x83/xb1 GREEK CAPITAL LETTER TAU -+ /x83/xb2 GREEK CAPITAL LETTER UPSILON -+ /x83/xb3 GREEK CAPITAL LETTER PHI -+ /x83/xb4 GREEK CAPITAL LETTER CHI -+ /x83/xb5 GREEK CAPITAL LETTER PSI -+ /x83/xb6 GREEK CAPITAL LETTER OMEGA -+ /x83/xbf GREEK SMALL LETTER ALPHA -+ /x83/xc0 GREEK SMALL LETTER BETA -+ /x83/xc1 GREEK SMALL LETTER GAMMA -+ /x83/xc2 GREEK SMALL LETTER DELTA -+ /x83/xc3 GREEK SMALL LETTER EPSILON -+ /x83/xc4 GREEK SMALL LETTER ZETA -+ /x83/xc5 GREEK SMALL LETTER ETA -+ /x83/xc6 GREEK SMALL LETTER THETA -+ /x83/xc7 GREEK SMALL LETTER IOTA -+ /x83/xc8 GREEK SMALL LETTER KAPPA -+ /x83/xc9 GREEK SMALL LETTER LAMDA -+ /x83/xca GREEK SMALL LETTER MU -+ /x83/xcb GREEK SMALL LETTER NU -+ /x83/xcc GREEK SMALL LETTER XI -+ /x83/xcd GREEK SMALL LETTER OMICRON -+ /x83/xce GREEK SMALL LETTER PI -+ /x83/xcf GREEK SMALL LETTER RHO -+ /x83/xd0 GREEK SMALL LETTER SIGMA -+ /x83/xd1 GREEK SMALL LETTER TAU -+ /x83/xd2 GREEK SMALL LETTER UPSILON -+ /x83/xd3 GREEK SMALL LETTER PHI -+ /x83/xd4 GREEK SMALL LETTER CHI -+ /x83/xd5 GREEK SMALL LETTER PSI -+ /x83/xd6 GREEK SMALL LETTER OMEGA -+ /x84/x40 CYRILLIC CAPITAL LETTER A -+ /x84/x41 CYRILLIC CAPITAL LETTER BE -+ /x84/x42 CYRILLIC CAPITAL LETTER VE -+ /x84/x43 CYRILLIC CAPITAL LETTER GHE -+ /x84/x44 CYRILLIC CAPITAL LETTER DE -+ /x84/x45 CYRILLIC CAPITAL LETTER IE -+ /x84/x46 CYRILLIC CAPITAL LETTER IO -+ /x84/x47 CYRILLIC CAPITAL LETTER ZHE -+ /x84/x48 CYRILLIC CAPITAL LETTER ZE -+ /x84/x49 CYRILLIC CAPITAL LETTER I -+ /x84/x4a CYRILLIC CAPITAL LETTER SHORT I -+ /x84/x4b CYRILLIC CAPITAL LETTER KA -+ /x84/x4c CYRILLIC CAPITAL LETTER EL -+ /x84/x4d CYRILLIC CAPITAL LETTER EM -+ /x84/x4e CYRILLIC CAPITAL LETTER EN -+ /x84/x4f CYRILLIC CAPITAL LETTER O -+ /x84/x50 CYRILLIC CAPITAL LETTER PE -+ /x84/x51 CYRILLIC CAPITAL LETTER ER -+ /x84/x52 CYRILLIC CAPITAL LETTER ES -+ /x84/x53 CYRILLIC CAPITAL LETTER TE -+ /x84/x54 CYRILLIC CAPITAL LETTER U -+ /x84/x55 CYRILLIC CAPITAL LETTER EF -+ /x84/x56 CYRILLIC CAPITAL LETTER HA -+ /x84/x57 CYRILLIC CAPITAL LETTER TSE -+ /x84/x58 CYRILLIC CAPITAL LETTER CHE -+ /x84/x59 CYRILLIC CAPITAL LETTER SHA -+ /x84/x5a CYRILLIC CAPITAL LETTER SHCHA -+ /x84/x5b CYRILLIC CAPITAL LETTER HARD SIGN -+ /x84/x5c CYRILLIC CAPITAL LETTER YERU -+ /x84/x5d CYRILLIC CAPITAL LETTER SOFT SIGN -+ /x84/x5e CYRILLIC CAPITAL LETTER E -+ /x84/x5f CYRILLIC CAPITAL LETTER YU -+ /x84/x60 CYRILLIC CAPITAL LETTER YA -+ /x84/x70 CYRILLIC SMALL LETTER A -+ /x84/x71 CYRILLIC SMALL LETTER BE -+ /x84/x72 CYRILLIC SMALL LETTER VE -+ /x84/x73 CYRILLIC SMALL LETTER GHE -+ /x84/x74 CYRILLIC SMALL LETTER DE -+ /x84/x75 CYRILLIC SMALL LETTER IE -+ /x84/x76 CYRILLIC SMALL LETTER IO -+ /x84/x77 CYRILLIC SMALL LETTER ZHE -+ /x84/x78 CYRILLIC SMALL LETTER ZE -+ /x84/x79 CYRILLIC SMALL LETTER I -+ /x84/x7a CYRILLIC SMALL LETTER SHORT I -+ /x84/x7b CYRILLIC SMALL LETTER KA -+ /x84/x7c CYRILLIC SMALL LETTER EL -+ /x84/x7d CYRILLIC SMALL LETTER EM -+ /x84/x7e CYRILLIC SMALL LETTER EN -+ /x84/x80 CYRILLIC SMALL LETTER O -+ /x84/x81 CYRILLIC SMALL LETTER PE -+ /x84/x82 CYRILLIC SMALL LETTER ER -+ /x84/x83 CYRILLIC SMALL LETTER ES -+ /x84/x84 CYRILLIC SMALL LETTER TE -+ /x84/x85 CYRILLIC SMALL LETTER U -+ /x84/x86 CYRILLIC SMALL LETTER EF -+ /x84/x87 CYRILLIC SMALL LETTER HA -+ /x84/x88 CYRILLIC SMALL LETTER TSE -+ /x84/x89 CYRILLIC SMALL LETTER CHE -+ /x84/x8a CYRILLIC SMALL LETTER SHA -+ /x84/x8b CYRILLIC SMALL LETTER SHCHA -+ /x84/x8c CYRILLIC SMALL LETTER HARD SIGN -+ /x84/x8d CYRILLIC SMALL LETTER YERU -+ /x84/x8e CYRILLIC SMALL LETTER SOFT SIGN -+ /x84/x8f CYRILLIC SMALL LETTER E -+ /x84/x90 CYRILLIC SMALL LETTER YU -+ /x84/x91 CYRILLIC SMALL LETTER YA -+ /x84/x9f BOX DRAWINGS LIGHT HORIZONTAL -+ /x84/xa0 BOX DRAWINGS LIGHT VERTICAL -+ /x84/xa1 BOX DRAWINGS LIGHT DOWN AND RIGHT -+ /x84/xa2 BOX DRAWINGS LIGHT DOWN AND LEFT -+ /x84/xa3 BOX DRAWINGS LIGHT UP AND LEFT -+ /x84/xa4 BOX DRAWINGS LIGHT UP AND RIGHT -+ /x84/xa5 BOX DRAWINGS LIGHT VERTICAL AND RIGHT -+ /x84/xa6 BOX DRAWINGS LIGHT DOWN AND HORIZONTAL -+ /x84/xa7 BOX DRAWINGS LIGHT VERTICAL AND LEFT -+ /x84/xa8 BOX DRAWINGS LIGHT UP AND HORIZONTAL -+ /x84/xa9 BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL -+ /x84/xaa BOX DRAWINGS HEAVY HORIZONTAL -+ /x84/xab BOX DRAWINGS HEAVY VERTICAL -+ /x84/xac BOX DRAWINGS HEAVY DOWN AND RIGHT -+ /x84/xad BOX DRAWINGS HEAVY DOWN AND LEFT -+ /x84/xae BOX DRAWINGS HEAVY UP AND LEFT -+ /x84/xaf BOX DRAWINGS HEAVY UP AND RIGHT -+ /x84/xb0 BOX DRAWINGS HEAVY VERTICAL AND RIGHT -+ /x84/xb1 BOX DRAWINGS HEAVY DOWN AND HORIZONTAL -+ /x84/xb2 BOX DRAWINGS HEAVY VERTICAL AND LEFT -+ /x84/xb3 BOX DRAWINGS HEAVY UP AND HORIZONTAL -+ /x84/xb4 BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL -+ /x84/xb5 BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT -+ /x84/xb6 BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY -+ /x84/xb7 BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT -+ /x84/xb8 BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY -+ /x84/xb9 BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY -+ /x84/xba BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY -+ /x84/xbb BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT -+ /x84/xbc BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY -+ /x84/xbd BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT -+ /x84/xbe BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT -+ /x87/x40 CIRCLED DIGIT ONE -+ /x87/x41 CIRCLED DIGIT TWO -+ /x87/x42 CIRCLED DIGIT THREE -+ /x87/x43 CIRCLED DIGIT FOUR -+ /x87/x44 CIRCLED DIGIT FIVE -+ /x87/x45 CIRCLED DIGIT SIX -+ /x87/x46 CIRCLED DIGIT SEVEN -+ /x87/x47 CIRCLED DIGIT EIGHT -+ /x87/x48 CIRCLED DIGIT NINE -+ /x87/x49 CIRCLED NUMBER TEN -+ /x87/x4a CIRCLED NUMBER ELEVEN -+ /x87/x4b CIRCLED NUMBER TWELVE -+ /x87/x4c CIRCLED NUMBER THIRTEEN -+ /x87/x4d CIRCLED NUMBER FOURTEEN -+ /x87/x4e CIRCLED NUMBER FIFTEEN -+ /x87/x4f CIRCLED NUMBER SIXTEEN -+ /x87/x50 CIRCLED NUMBER SEVENTEEN -+ /x87/x51 CIRCLED NUMBER EIGHTEEN -+ /x87/x52 CIRCLED NUMBER NINETEEN -+ /x87/x53 CIRCLED NUMBER TWENTY -+ /x87/x54 ROMAN NUMERAL ONE -+ /x87/x55 ROMAN NUMERAL TWO -+ /x87/x56 ROMAN NUMERAL THREE -+ /x87/x57 ROMAN NUMERAL FOUR -+ /x87/x58 ROMAN NUMERAL FIVE -+ /x87/x59 ROMAN NUMERAL SIX -+ /x87/x5a ROMAN NUMERAL SEVEN -+ /x87/x5b ROMAN NUMERAL EIGHT -+ /x87/x5c ROMAN NUMERAL NINE -+ /x87/x5d ROMAN NUMERAL TEN -+ /x87/x5f SQUARE MIRI -+ /x87/x60 SQUARE KIRO -+ /x87/x61 SQUARE SENTI -+ /x87/x62 SQUARE MEETORU -+ /x87/x63 SQUARE GURAMU -+ /x87/x64 SQUARE TON -+ /x87/x65 SQUARE AARU -+ /x87/x66 SQUARE HEKUTAARU -+ /x87/x67 SQUARE RITTORU -+ /x87/x68 SQUARE WATTO -+ /x87/x69 SQUARE KARORII -+ /x87/x6a SQUARE DORU -+ /x87/x6b SQUARE SENTO -+ /x87/x6c SQUARE PAASENTO -+ /x87/x6d SQUARE MIRIBAARU -+ /x87/x6e SQUARE PEEZI -+ /x87/x6f SQUARE MM -+ /x87/x70 SQUARE CM -+ /x87/x71 SQUARE KM -+ /x87/x72 SQUARE MG -+ /x87/x73 SQUARE KG -+ /x87/x74 SQUARE CC -+ /x87/x75 SQUARE M SQUARED -+ /x87/x7e SQUARE ERA NAME HEISEI -+ /x87/x80 REVERSED DOUBLE PRIME QUOTATION MARK -+ /x87/x81 LOW DOUBLE PRIME QUOTATION MARK -+ /x87/x82 NUMERO SIGN -+ /x87/x83 SQUARE KK -+ /x87/x84 TELEPHONE SIGN -+ /x87/x85 CIRCLED IDEOGRAPH HIGH -+ /x87/x86 CIRCLED IDEOGRAPH CENTRE -+ /x87/x87 CIRCLED IDEOGRAPH LOW -+ /x87/x88 CIRCLED IDEOGRAPH LEFT -+ /x87/x89 CIRCLED IDEOGRAPH RIGHT -+ /x87/x8a PARENTHESIZED IDEOGRAPH STOCK -+ /x87/x8b PARENTHESIZED IDEOGRAPH HAVE -+ /x87/x8c PARENTHESIZED IDEOGRAPH REPRESENT -+ /x87/x8d SQUARE ERA NAME MEIZI -+ /x87/x8e SQUARE ERA NAME TAISYOU -+ /x87/x8f SQUARE ERA NAME SYOUWA -+%IRREVERSIBLE% /x87/x90 APPROXIMATELY EQUAL TO OR THE IMAGE OF -+%IRREVERSIBLE% /x87/x91 IDENTICAL TO -+%IRREVERSIBLE% /x87/x92 INTEGRAL -+ /x87/x93 CONTOUR INTEGRAL -+ /x87/x94 N-ARY SUMMATION -+%IRREVERSIBLE% /x87/x95 SQUARE ROOT -+%IRREVERSIBLE% /x87/x96 UP TACK -+%IRREVERSIBLE% /x87/x97 ANGLE -+ /x87/x98 RIGHT ANGLE -+ /x87/x99 RIGHT TRIANGLE -+%IRREVERSIBLE% /x87/x9a BECAUSE -+%IRREVERSIBLE% /x87/x9b INTERSECTION -+%IRREVERSIBLE% /x87/x9c UNION -+ /x88/x9f -+ /x88/xa0 -+ /x88/xa1 -+ /x88/xa2 -+ /x88/xa3 -+ /x88/xa4 -+ /x88/xa5 -+ /x88/xa6 -+ /x88/xa7 -+ /x88/xa8 -+ /x88/xa9 -+ /x88/xaa -+ /x88/xab -+ /x88/xac -+ /x88/xad -+ /x88/xae -+ /x88/xaf -+ /x88/xb0 -+ /x88/xb1 -+ /x88/xb2 -+ /x88/xb3 -+ /x88/xb4 -+ /x88/xb5 -+ /x88/xb6 -+ /x88/xb7 -+ /x88/xb8 -+ /x88/xb9 -+ /x88/xba -+ /x88/xbb -+ /x88/xbc -+ /x88/xbd -+ /x88/xbe -+ /x88/xbf -+ /x88/xc0 -+ /x88/xc1 -+ /x88/xc2 -+ /x88/xc3 -+ /x88/xc4 -+ /x88/xc5 -+ /x88/xc6 -+ /x88/xc7 -+ /x88/xc8 -+ /x88/xc9 -+ /x88/xca -+ /x88/xcb -+ /x88/xcc -+ /x88/xcd -+ /x88/xce -+ /x88/xcf -+ /x88/xd0 -+ /x88/xd1 -+ /x88/xd2 -+ /x88/xd3 -+ /x88/xd4 -+ /x88/xd5 -+ /x88/xd6 -+ /x88/xd7 -+ /x88/xd8 -+ /x88/xd9 -+ /x88/xda -+ /x88/xdb -+ /x88/xdc -+ /x88/xdd -+ /x88/xde -+ /x88/xdf -+ /x88/xe0 -+ /x88/xe1 -+ /x88/xe2 -+ /x88/xe3 -+ /x88/xe4 -+ /x88/xe5 -+ /x88/xe6 -+ /x88/xe7 -+ /x88/xe8 -+ /x88/xe9 -+ /x88/xea -+ /x88/xeb -+ /x88/xec -+ /x88/xed -+ /x88/xee -+ /x88/xef -+ /x88/xf0 -+ /x88/xf1 -+ /x88/xf2 -+ /x88/xf3 -+ /x88/xf4 -+ /x88/xf5 -+ /x88/xf6 -+ /x88/xf7 -+ /x88/xf8 -+ /x88/xf9 -+ /x88/xfa -+ /x88/xfb -+ /x88/xfc -+ /x89/x40 -+ /x89/x41 -+ /x89/x42 -+ /x89/x43 -+ /x89/x44 -+ /x89/x45 -+ /x89/x46 -+ /x89/x47 -+ /x89/x48 -+ /x89/x49 -+ /x89/x4a -+ /x89/x4b -+ /x89/x4c -+ /x89/x4d -+ /x89/x4e -+ /x89/x4f -+ /x89/x50 -+ /x89/x51 -+ /x89/x52 -+ /x89/x53 -+ /x89/x54 -+ /x89/x55 -+ /x89/x56 -+ /x89/x57 -+ /x89/x58 -+ /x89/x59 -+ /x89/x5a -+ /x89/x5b -+ /x89/x5c -+ /x89/x5d -+ /x89/x5e -+ /x89/x5f -+ /x89/x60 -+ /x89/x61 -+ /x89/x62 -+ /x89/x63 -+ /x89/x64 -+ /x89/x65 -+ /x89/x66 -+ /x89/x67 -+ /x89/x68 -+ /x89/x69 -+ /x89/x6a -+ /x89/x6b -+ /x89/x6c -+ /x89/x6d -+ /x89/x6e -+ /x89/x6f -+ /x89/x70 -+ /x89/x71 -+ /x89/x72 -+ /x89/x73 -+ /x89/x74 -+ /x89/x75 -+ /x89/x76 -+ /x89/x77 -+ /x89/x78 -+ /x89/x79 -+ /x89/x7a -+ /x89/x7b -+ /x89/x7c -+ /x89/x7d -+ /x89/x7e -+ /x89/x80 -+ /x89/x81 -+ /x89/x82 -+ /x89/x83 -+ /x89/x84 -+ /x89/x85 -+ /x89/x86 -+ /x89/x87 -+ /x89/x88 -+ /x89/x89 -+ /x89/x8a -+ /x89/x8b -+ /x89/x8c -+ /x89/x8d -+ /x89/x8e -+ /x89/x8f -+ /x89/x90 -+ /x89/x91 -+ /x89/x92 -+ /x89/x93 -+ /x89/x94 -+ /x89/x95 -+ /x89/x96 -+ /x89/x97 -+ /x89/x98 -+ /x89/x99 -+ /x89/x9a -+ /x89/x9b -+ /x89/x9c -+ /x89/x9d -+ /x89/x9e -+ /x89/x9f -+ /x89/xa0 -+ /x89/xa1 -+ /x89/xa2 -+ /x89/xa3 -+ /x89/xa4 -+ /x89/xa5 -+ /x89/xa6 -+ /x89/xa7 -+ /x89/xa8 -+ /x89/xa9 -+ /x89/xaa -+ /x89/xab -+ /x89/xac -+ /x89/xad -+ /x89/xae -+ /x89/xaf -+ /x89/xb0 -+ /x89/xb1 -+ /x89/xb2 -+ /x89/xb3 -+ /x89/xb4 -+ /x89/xb5 -+ /x89/xb6 -+ /x89/xb7 -+ /x89/xb8 -+ /x89/xb9 -+ /x89/xba -+ /x89/xbb -+ /x89/xbc -+ /x89/xbd -+ /x89/xbe -+ /x89/xbf -+ /x89/xc0 -+ /x89/xc1 -+ /x89/xc2 -+ /x89/xc3 -+ /x89/xc4 -+ /x89/xc5 -+ /x89/xc6 -+ /x89/xc7 -+ /x89/xc8 -+ /x89/xc9 -+ /x89/xca -+ /x89/xcb -+ /x89/xcc -+ /x89/xcd -+ /x89/xce -+ /x89/xcf -+ /x89/xd0 -+ /x89/xd1 -+ /x89/xd2 -+ /x89/xd3 -+ /x89/xd4 -+ /x89/xd5 -+ /x89/xd6 -+ /x89/xd7 -+ /x89/xd8 -+ /x89/xd9 -+ /x89/xda -+ /x89/xdb -+ /x89/xdc -+ /x89/xdd -+ /x89/xde -+ /x89/xdf -+ /x89/xe0 -+ /x89/xe1 -+ /x89/xe2 -+ /x89/xe3 -+ /x89/xe4 -+ /x89/xe5 -+ /x89/xe6 -+ /x89/xe7 -+ /x89/xe8 -+ /x89/xe9 -+ /x89/xea -+ /x89/xeb -+ /x89/xec -+ /x89/xed -+ /x89/xee -+ /x89/xef -+ /x89/xf0 -+ /x89/xf1 -+ /x89/xf2 -+ /x89/xf3 -+ /x89/xf4 -+ /x89/xf5 -+ /x89/xf6 -+ /x89/xf7 -+ /x89/xf8 -+ /x89/xf9 -+ /x89/xfa -+ /x89/xfb -+ /x89/xfc -+ /x8a/x40 -+ /x8a/x41 -+ /x8a/x42 -+ /x8a/x43 -+ /x8a/x44 -+ /x8a/x45 -+ /x8a/x46 -+ /x8a/x47 -+ /x8a/x48 -+ /x8a/x49 -+ /x8a/x4a -+ /x8a/x4b -+ /x8a/x4c -+ /x8a/x4d -+ /x8a/x4e -+ /x8a/x4f -+ /x8a/x50 -+ /x8a/x51 -+ /x8a/x52 -+ /x8a/x53 -+ /x8a/x54 -+ /x8a/x55 -+ /x8a/x56 -+ /x8a/x57 -+ /x8a/x58 -+ /x8a/x59 -+ /x8a/x5a -+ /x8a/x5b -+ /x8a/x5c -+ /x8a/x5d -+ /x8a/x5e -+ /x8a/x5f -+ /x8a/x60 -+ /x8a/x61 -+ /x8a/x62 -+ /x8a/x63 -+ /x8a/x64 -+ /x8a/x65 -+ /x8a/x66 -+ /x8a/x67 -+ /x8a/x68 -+ /x8a/x69 -+ /x8a/x6a -+ /x8a/x6b -+ /x8a/x6c -+ /x8a/x6d -+ /x8a/x6e -+ /x8a/x6f -+ /x8a/x70 -+ /x8a/x71 -+ /x8a/x72 -+ /x8a/x73 -+ /x8a/x74 -+ /x8a/x75 -+ /x8a/x76 -+ /x8a/x77 -+ /x8a/x78 -+ /x8a/x79 -+ /x8a/x7a -+ /x8a/x7b -+ /x8a/x7c -+ /x8a/x7d -+ /x8a/x7e -+ /x8a/x80 -+ /x8a/x81 -+ /x8a/x82 -+ /x8a/x83 -+ /x8a/x84 -+ /x8a/x85 -+ /x8a/x86 -+ /x8a/x87 -+ /x8a/x88 -+ /x8a/x89 -+ /x8a/x8a -+ /x8a/x8b -+ /x8a/x8c -+ /x8a/x8d -+ /x8a/x8e -+ /x8a/x8f -+ /x8a/x90 -+ /x8a/x91 -+ /x8a/x92 -+ /x8a/x93 -+ /x8a/x94 -+ /x8a/x95 -+ /x8a/x96 -+ /x8a/x97 -+ /x8a/x98 -+ /x8a/x99 -+ /x8a/x9a -+ /x8a/x9b -+ /x8a/x9c -+ /x8a/x9d -+ /x8a/x9e -+ /x8a/x9f -+ /x8a/xa0 -+ /x8a/xa1 -+ /x8a/xa2 -+ /x8a/xa3 -+ /x8a/xa4 -+ /x8a/xa5 -+ /x8a/xa6 -+ /x8a/xa7 -+ /x8a/xa8 -+ /x8a/xa9 -+ /x8a/xaa -+ /x8a/xab -+ /x8a/xac -+ /x8a/xad -+ /x8a/xae -+ /x8a/xaf -+ /x8a/xb0 -+ /x8a/xb1 -+ /x8a/xb2 -+ /x8a/xb3 -+ /x8a/xb4 -+ /x8a/xb5 -+ /x8a/xb6 -+ /x8a/xb7 -+ /x8a/xb8 -+ /x8a/xb9 -+ /x8a/xba -+ /x8a/xbb -+ /x8a/xbc -+ /x8a/xbd -+ /x8a/xbe -+ /x8a/xbf -+ /x8a/xc0 -+ /x8a/xc1 -+ /x8a/xc2 -+ /x8a/xc3 -+ /x8a/xc4 -+ /x8a/xc5 -+ /x8a/xc6 -+ /x8a/xc7 -+ /x8a/xc8 -+ /x8a/xc9 -+ /x8a/xca -+ /x8a/xcb -+ /x8a/xcc -+ /x8a/xcd -+ /x8a/xce -+ /x8a/xcf -+ /x8a/xd0 -+ /x8a/xd1 -+ /x8a/xd2 -+ /x8a/xd3 -+ /x8a/xd4 -+ /x8a/xd5 -+ /x8a/xd6 -+ /x8a/xd7 -+ /x8a/xd8 -+ /x8a/xd9 -+ /x8a/xda -+ /x8a/xdb -+ /x8a/xdc -+ /x8a/xdd -+ /x8a/xde -+ /x8a/xdf -+ /x8a/xe0 -+ /x8a/xe1 -+ /x8a/xe2 -+ /x8a/xe3 -+ /x8a/xe4 -+ /x8a/xe5 -+ /x8a/xe6 -+ /x8a/xe7 -+ /x8a/xe8 -+ /x8a/xe9 -+ /x8a/xea -+ /x8a/xeb -+ /x8a/xec -+ /x8a/xed -+ /x8a/xee -+ /x8a/xef -+ /x8a/xf0 -+ /x8a/xf1 -+ /x8a/xf2 -+ /x8a/xf3 -+ /x8a/xf4 -+ /x8a/xf5 -+ /x8a/xf6 -+ /x8a/xf7 -+ /x8a/xf8 -+ /x8a/xf9 -+ /x8a/xfa -+ /x8a/xfb -+ /x8a/xfc -+ /x8b/x40 -+ /x8b/x41 -+ /x8b/x42 -+ /x8b/x43 -+ /x8b/x44 -+ /x8b/x45 -+ /x8b/x46 -+ /x8b/x47 -+ /x8b/x48 -+ /x8b/x49 -+ /x8b/x4a -+ /x8b/x4b -+ /x8b/x4c -+ /x8b/x4d -+ /x8b/x4e -+ /x8b/x4f -+ /x8b/x50 -+ /x8b/x51 -+ /x8b/x52 -+ /x8b/x53 -+ /x8b/x54 -+ /x8b/x55 -+ /x8b/x56 -+ /x8b/x57 -+ /x8b/x58 -+ /x8b/x59 -+ /x8b/x5a -+ /x8b/x5b -+ /x8b/x5c -+ /x8b/x5d -+ /x8b/x5e -+ /x8b/x5f -+ /x8b/x60 -+ /x8b/x61 -+ /x8b/x62 -+ /x8b/x63 -+ /x8b/x64 -+ /x8b/x65 -+ /x8b/x66 -+ /x8b/x67 -+ /x8b/x68 -+ /x8b/x69 -+ /x8b/x6a -+ /x8b/x6b -+ /x8b/x6c -+ /x8b/x6d -+ /x8b/x6e -+ /x8b/x6f -+ /x8b/x70 -+ /x8b/x71 -+ /x8b/x72 -+ /x8b/x73 -+ /x8b/x74 -+ /x8b/x75 -+ /x8b/x76 -+ /x8b/x77 -+ /x8b/x78 -+ /x8b/x79 -+ /x8b/x7a -+ /x8b/x7b -+ /x8b/x7c -+ /x8b/x7d -+ /x8b/x7e -+ /x8b/x80 -+ /x8b/x81 -+ /x8b/x82 -+ /x8b/x83 -+ /x8b/x84 -+ /x8b/x85 -+ /x8b/x86 -+ /x8b/x87 -+ /x8b/x88 -+ /x8b/x89 -+ /x8b/x8a -+ /x8b/x8b -+ /x8b/x8c -+ /x8b/x8d -+ /x8b/x8e -+ /x8b/x8f -+ /x8b/x90 -+ /x8b/x91 -+ /x8b/x92 -+ /x8b/x93 -+ /x8b/x94 -+ /x8b/x95 -+ /x8b/x96 -+ /x8b/x97 -+ /x8b/x98 -+ /x8b/x99 -+ /x8b/x9a -+ /x8b/x9b -+ /x8b/x9c -+ /x8b/x9d -+ /x8b/x9e -+ /x8b/x9f -+ /x8b/xa0 -+ /x8b/xa1 -+ /x8b/xa2 -+ /x8b/xa3 -+ /x8b/xa4 -+ /x8b/xa5 -+ /x8b/xa6 -+ /x8b/xa7 -+ /x8b/xa8 -+ /x8b/xa9 -+ /x8b/xaa -+ /x8b/xab -+ /x8b/xac -+ /x8b/xad -+ /x8b/xae -+ /x8b/xaf -+ /x8b/xb0 -+ /x8b/xb1 -+ /x8b/xb2 -+ /x8b/xb3 -+ /x8b/xb4 -+ /x8b/xb5 -+ /x8b/xb6 -+ /x8b/xb7 -+ /x8b/xb8 -+ /x8b/xb9 -+ /x8b/xba -+ /x8b/xbb -+ /x8b/xbc -+ /x8b/xbd -+ /x8b/xbe -+ /x8b/xbf -+ /x8b/xc0 -+ /x8b/xc1 -+ /x8b/xc2 -+ /x8b/xc3 -+ /x8b/xc4 -+ /x8b/xc5 -+ /x8b/xc6 -+ /x8b/xc7 -+ /x8b/xc8 -+ /x8b/xc9 -+ /x8b/xca -+ /x8b/xcb -+ /x8b/xcc -+ /x8b/xcd -+ /x8b/xce -+ /x8b/xcf -+ /x8b/xd0 -+ /x8b/xd1 -+ /x8b/xd2 -+ /x8b/xd3 -+ /x8b/xd4 -+ /x8b/xd5 -+ /x8b/xd6 -+ /x8b/xd7 -+ /x8b/xd8 -+ /x8b/xd9 -+ /x8b/xda -+ /x8b/xdb -+ /x8b/xdc -+ /x8b/xdd -+ /x8b/xde -+ /x8b/xdf -+ /x8b/xe0 -+ /x8b/xe1 -+ /x8b/xe2 -+ /x8b/xe3 -+ /x8b/xe4 -+ /x8b/xe5 -+ /x8b/xe6 -+ /x8b/xe7 -+ /x8b/xe8 -+ /x8b/xe9 -+ /x8b/xea -+ /x8b/xeb -+ /x8b/xec -+ /x8b/xed -+ /x8b/xee -+ /x8b/xef -+ /x8b/xf0 -+ /x8b/xf1 -+ /x8b/xf2 -+ /x8b/xf3 -+ /x8b/xf4 -+ /x8b/xf5 -+ /x8b/xf6 -+ /x8b/xf7 -+ /x8b/xf8 -+ /x8b/xf9 -+ /x8b/xfa -+ /x8b/xfb -+ /x8b/xfc -+ /x8c/x40 -+ /x8c/x41 -+ /x8c/x42 -+ /x8c/x43 -+ /x8c/x44 -+ /x8c/x45 -+ /x8c/x46 -+ /x8c/x47 -+ /x8c/x48 -+ /x8c/x49 -+ /x8c/x4a -+ /x8c/x4b -+ /x8c/x4c -+ /x8c/x4d -+ /x8c/x4e -+ /x8c/x4f -+ /x8c/x50 -+ /x8c/x51 -+ /x8c/x52 -+ /x8c/x53 -+ /x8c/x54 -+ /x8c/x55 -+ /x8c/x56 -+ /x8c/x57 -+ /x8c/x58 -+ /x8c/x59 -+ /x8c/x5a -+ /x8c/x5b -+ /x8c/x5c -+ /x8c/x5d -+ /x8c/x5e -+ /x8c/x5f -+ /x8c/x60 -+ /x8c/x61 -+ /x8c/x62 -+ /x8c/x63 -+ /x8c/x64 -+ /x8c/x65 -+ /x8c/x66 -+ /x8c/x67 -+ /x8c/x68 -+ /x8c/x69 -+ /x8c/x6a -+ /x8c/x6b -+ /x8c/x6c -+ /x8c/x6d -+ /x8c/x6e -+ /x8c/x6f -+ /x8c/x70 -+ /x8c/x71 -+ /x8c/x72 -+ /x8c/x73 -+ /x8c/x74 -+ /x8c/x75 -+ /x8c/x76 -+ /x8c/x77 -+ /x8c/x78 -+ /x8c/x79 -+ /x8c/x7a -+ /x8c/x7b -+ /x8c/x7c -+ /x8c/x7d -+ /x8c/x7e -+ /x8c/x80 -+ /x8c/x81 -+ /x8c/x82 -+ /x8c/x83 -+ /x8c/x84 -+ /x8c/x85 -+ /x8c/x86 -+ /x8c/x87 -+ /x8c/x88 -+ /x8c/x89 -+ /x8c/x8a -+ /x8c/x8b -+ /x8c/x8c -+ /x8c/x8d -+ /x8c/x8e -+ /x8c/x8f -+ /x8c/x90 -+ /x8c/x91 -+ /x8c/x92 -+ /x8c/x93 -+ /x8c/x94 -+ /x8c/x95 -+ /x8c/x96 -+ /x8c/x97 -+ /x8c/x98 -+ /x8c/x99 -+ /x8c/x9a -+ /x8c/x9b -+ /x8c/x9c -+ /x8c/x9d -+ /x8c/x9e -+ /x8c/x9f -+ /x8c/xa0 -+ /x8c/xa1 -+ /x8c/xa2 -+ /x8c/xa3 -+ /x8c/xa4 -+ /x8c/xa5 -+ /x8c/xa6 -+ /x8c/xa7 -+ /x8c/xa8 -+ /x8c/xa9 -+ /x8c/xaa -+ /x8c/xab -+ /x8c/xac -+ /x8c/xad -+ /x8c/xae -+ /x8c/xaf -+ /x8c/xb0 -+ /x8c/xb1 -+ /x8c/xb2 -+ /x8c/xb3 -+ /x8c/xb4 -+ /x8c/xb5 -+ /x8c/xb6 -+ /x8c/xb7 -+ /x8c/xb8 -+ /x8c/xb9 -+ /x8c/xba -+ /x8c/xbb -+ /x8c/xbc -+ /x8c/xbd -+ /x8c/xbe -+ /x8c/xbf -+ /x8c/xc0 -+ /x8c/xc1 -+ /x8c/xc2 -+ /x8c/xc3 -+ /x8c/xc4 -+ /x8c/xc5 -+ /x8c/xc6 -+ /x8c/xc7 -+ /x8c/xc8 -+ /x8c/xc9 -+ /x8c/xca -+ /x8c/xcb -+ /x8c/xcc -+ /x8c/xcd -+ /x8c/xce -+ /x8c/xcf -+ /x8c/xd0 -+ /x8c/xd1 -+ /x8c/xd2 -+ /x8c/xd3 -+ /x8c/xd4 -+ /x8c/xd5 -+ /x8c/xd6 -+ /x8c/xd7 -+ /x8c/xd8 -+ /x8c/xd9 -+ /x8c/xda -+ /x8c/xdb -+ /x8c/xdc -+ /x8c/xdd -+ /x8c/xde -+ /x8c/xdf -+ /x8c/xe0 -+ /x8c/xe1 -+ /x8c/xe2 -+ /x8c/xe3 -+ /x8c/xe4 -+ /x8c/xe5 -+ /x8c/xe6 -+ /x8c/xe7 -+ /x8c/xe8 -+ /x8c/xe9 -+ /x8c/xea -+ /x8c/xeb -+ /x8c/xec -+ /x8c/xed -+ /x8c/xee -+ /x8c/xef -+ /x8c/xf0 -+ /x8c/xf1 -+ /x8c/xf2 -+ /x8c/xf3 -+ /x8c/xf4 -+ /x8c/xf5 -+ /x8c/xf6 -+ /x8c/xf7 -+ /x8c/xf8 -+ /x8c/xf9 -+ /x8c/xfa -+ /x8c/xfb -+ /x8c/xfc -+ /x8d/x40 -+ /x8d/x41 -+ /x8d/x42 -+ /x8d/x43 -+ /x8d/x44 -+ /x8d/x45 -+ /x8d/x46 -+ /x8d/x47 -+ /x8d/x48 -+ /x8d/x49 -+ /x8d/x4a -+ /x8d/x4b -+ /x8d/x4c -+ /x8d/x4d -+ /x8d/x4e -+ /x8d/x4f -+ /x8d/x50 -+ /x8d/x51 -+ /x8d/x52 -+ /x8d/x53 -+ /x8d/x54 -+ /x8d/x55 -+ /x8d/x56 -+ /x8d/x57 -+ /x8d/x58 -+ /x8d/x59 -+ /x8d/x5a -+ /x8d/x5b -+ /x8d/x5c -+ /x8d/x5d -+ /x8d/x5e -+ /x8d/x5f -+ /x8d/x60 -+ /x8d/x61 -+ /x8d/x62 -+ /x8d/x63 -+ /x8d/x64 -+ /x8d/x65 -+ /x8d/x66 -+ /x8d/x67 -+ /x8d/x68 -+ /x8d/x69 -+ /x8d/x6a -+ /x8d/x6b -+ /x8d/x6c -+ /x8d/x6d -+ /x8d/x6e -+ /x8d/x6f -+ /x8d/x70 -+ /x8d/x71 -+ /x8d/x72 -+ /x8d/x73 -+ /x8d/x74 -+ /x8d/x75 -+ /x8d/x76 -+ /x8d/x77 -+ /x8d/x78 -+ /x8d/x79 -+ /x8d/x7a -+ /x8d/x7b -+ /x8d/x7c -+ /x8d/x7d -+ /x8d/x7e -+ /x8d/x80 -+ /x8d/x81 -+ /x8d/x82 -+ /x8d/x83 -+ /x8d/x84 -+ /x8d/x85 -+ /x8d/x86 -+ /x8d/x87 -+ /x8d/x88 -+ /x8d/x89 -+ /x8d/x8a -+ /x8d/x8b -+ /x8d/x8c -+ /x8d/x8d -+ /x8d/x8e -+ /x8d/x8f -+ /x8d/x90 -+ /x8d/x91 -+ /x8d/x92 -+ /x8d/x93 -+ /x8d/x94 -+ /x8d/x95 -+ /x8d/x96 -+ /x8d/x97 -+ /x8d/x98 -+ /x8d/x99 -+ /x8d/x9a -+ /x8d/x9b -+ /x8d/x9c -+ /x8d/x9d -+ /x8d/x9e -+ /x8d/x9f -+ /x8d/xa0 -+ /x8d/xa1 -+ /x8d/xa2 -+ /x8d/xa3 -+ /x8d/xa4 -+ /x8d/xa5 -+ /x8d/xa6 -+ /x8d/xa7 -+ /x8d/xa8 -+ /x8d/xa9 -+ /x8d/xaa -+ /x8d/xab -+ /x8d/xac -+ /x8d/xad -+ /x8d/xae -+ /x8d/xaf -+ /x8d/xb0 -+ /x8d/xb1 -+ /x8d/xb2 -+ /x8d/xb3 -+ /x8d/xb4 -+ /x8d/xb5 -+ /x8d/xb6 -+ /x8d/xb7 -+ /x8d/xb8 -+ /x8d/xb9 -+ /x8d/xba -+ /x8d/xbb -+ /x8d/xbc -+ /x8d/xbd -+ /x8d/xbe -+ /x8d/xbf -+ /x8d/xc0 -+ /x8d/xc1 -+ /x8d/xc2 -+ /x8d/xc3 -+ /x8d/xc4 -+ /x8d/xc5 -+ /x8d/xc6 -+ /x8d/xc7 -+ /x8d/xc8 -+ /x8d/xc9 -+ /x8d/xca -+ /x8d/xcb -+ /x8d/xcc -+ /x8d/xcd -+ /x8d/xce -+ /x8d/xcf -+ /x8d/xd0 -+ /x8d/xd1 -+ /x8d/xd2 -+ /x8d/xd3 -+ /x8d/xd4 -+ /x8d/xd5 -+ /x8d/xd6 -+ /x8d/xd7 -+ /x8d/xd8 -+ /x8d/xd9 -+ /x8d/xda -+ /x8d/xdb -+ /x8d/xdc -+ /x8d/xdd -+ /x8d/xde -+ /x8d/xdf -+ /x8d/xe0 -+ /x8d/xe1 -+ /x8d/xe2 -+ /x8d/xe3 -+ /x8d/xe4 -+ /x8d/xe5 -+ /x8d/xe6 -+ /x8d/xe7 -+ /x8d/xe8 -+ /x8d/xe9 -+ /x8d/xea -+ /x8d/xeb -+ /x8d/xec -+ /x8d/xed -+ /x8d/xee -+ /x8d/xef -+ /x8d/xf0 -+ /x8d/xf1 -+ /x8d/xf2 -+ /x8d/xf3 -+ /x8d/xf4 -+ /x8d/xf5 -+ /x8d/xf6 -+ /x8d/xf7 -+ /x8d/xf8 -+ /x8d/xf9 -+ /x8d/xfa -+ /x8d/xfb -+ /x8d/xfc -+ /x8e/x40 -+ /x8e/x41 -+ /x8e/x42 -+ /x8e/x43 -+ /x8e/x44 -+ /x8e/x45 -+ /x8e/x46 -+ /x8e/x47 -+ /x8e/x48 -+ /x8e/x49 -+ /x8e/x4a -+ /x8e/x4b -+ /x8e/x4c -+ /x8e/x4d -+ /x8e/x4e -+ /x8e/x4f -+ /x8e/x50 -+ /x8e/x51 -+ /x8e/x52 -+ /x8e/x53 -+ /x8e/x54 -+ /x8e/x55 -+ /x8e/x56 -+ /x8e/x57 -+ /x8e/x58 -+ /x8e/x59 -+ /x8e/x5a -+ /x8e/x5b -+ /x8e/x5c -+ /x8e/x5d -+ /x8e/x5e -+ /x8e/x5f -+ /x8e/x60 -+ /x8e/x61 -+ /x8e/x62 -+ /x8e/x63 -+ /x8e/x64 -+ /x8e/x65 -+ /x8e/x66 -+ /x8e/x67 -+ /x8e/x68 -+ /x8e/x69 -+ /x8e/x6a -+ /x8e/x6b -+ /x8e/x6c -+ /x8e/x6d -+ /x8e/x6e -+ /x8e/x6f -+ /x8e/x70 -+ /x8e/x71 -+ /x8e/x72 -+ /x8e/x73 -+ /x8e/x74 -+ /x8e/x75 -+ /x8e/x76 -+ /x8e/x77 -+ /x8e/x78 -+ /x8e/x79 -+ /x8e/x7a -+ /x8e/x7b -+ /x8e/x7c -+ /x8e/x7d -+ /x8e/x7e -+ /x8e/x80 -+ /x8e/x81 -+ /x8e/x82 -+ /x8e/x83 -+ /x8e/x84 -+ /x8e/x85 -+ /x8e/x86 -+ /x8e/x87 -+ /x8e/x88 -+ /x8e/x89 -+ /x8e/x8a -+ /x8e/x8b -+ /x8e/x8c -+ /x8e/x8d -+ /x8e/x8e -+ /x8e/x8f -+ /x8e/x90 -+ /x8e/x91 -+ /x8e/x92 -+ /x8e/x93 -+ /x8e/x94 -+ /x8e/x95 -+ /x8e/x96 -+ /x8e/x97 -+ /x8e/x98 -+ /x8e/x99 -+ /x8e/x9a -+ /x8e/x9b -+ /x8e/x9c -+ /x8e/x9d -+ /x8e/x9e -+ /x8e/x9f -+ /x8e/xa0 -+ /x8e/xa1 -+ /x8e/xa2 -+ /x8e/xa3 -+ /x8e/xa4 -+ /x8e/xa5 -+ /x8e/xa6 -+ /x8e/xa7 -+ /x8e/xa8 -+ /x8e/xa9 -+ /x8e/xaa -+ /x8e/xab -+ /x8e/xac -+ /x8e/xad -+ /x8e/xae -+ /x8e/xaf -+ /x8e/xb0 -+ /x8e/xb1 -+ /x8e/xb2 -+ /x8e/xb3 -+ /x8e/xb4 -+ /x8e/xb5 -+ /x8e/xb6 -+ /x8e/xb7 -+ /x8e/xb8 -+ /x8e/xb9 -+ /x8e/xba -+ /x8e/xbb -+ /x8e/xbc -+ /x8e/xbd -+ /x8e/xbe -+ /x8e/xbf -+ /x8e/xc0 -+ /x8e/xc1 -+ /x8e/xc2 -+ /x8e/xc3 -+ /x8e/xc4 -+ /x8e/xc5 -+ /x8e/xc6 -+ /x8e/xc7 -+ /x8e/xc8 -+ /x8e/xc9 -+ /x8e/xca -+ /x8e/xcb -+ /x8e/xcc -+ /x8e/xcd -+ /x8e/xce -+ /x8e/xcf -+ /x8e/xd0 -+ /x8e/xd1 -+ /x8e/xd2 -+ /x8e/xd3 -+ /x8e/xd4 -+ /x8e/xd5 -+ /x8e/xd6 -+ /x8e/xd7 -+ /x8e/xd8 -+ /x8e/xd9 -+ /x8e/xda -+ /x8e/xdb -+ /x8e/xdc -+ /x8e/xdd -+ /x8e/xde -+ /x8e/xdf -+ /x8e/xe0 -+ /x8e/xe1 -+ /x8e/xe2 -+ /x8e/xe3 -+ /x8e/xe4 -+ /x8e/xe5 -+ /x8e/xe6 -+ /x8e/xe7 -+ /x8e/xe8 -+ /x8e/xe9 -+ /x8e/xea -+ /x8e/xeb -+ /x8e/xec -+ /x8e/xed -+ /x8e/xee -+ /x8e/xef -+ /x8e/xf0 -+ /x8e/xf1 -+ /x8e/xf2 -+ /x8e/xf3 -+ /x8e/xf4 -+ /x8e/xf5 -+ /x8e/xf6 -+ /x8e/xf7 -+ /x8e/xf8 -+ /x8e/xf9 -+ /x8e/xfa -+ /x8e/xfb -+ /x8e/xfc -+ /x8f/x40 -+ /x8f/x41 -+ /x8f/x42 -+ /x8f/x43 -+ /x8f/x44 -+ /x8f/x45 -+ /x8f/x46 -+ /x8f/x47 -+ /x8f/x48 -+ /x8f/x49 -+ /x8f/x4a -+ /x8f/x4b -+ /x8f/x4c -+ /x8f/x4d -+ /x8f/x4e -+ /x8f/x4f -+ /x8f/x50 -+ /x8f/x51 -+ /x8f/x52 -+ /x8f/x53 -+ /x8f/x54 -+ /x8f/x55 -+ /x8f/x56 -+ /x8f/x57 -+ /x8f/x58 -+ /x8f/x59 -+ /x8f/x5a -+ /x8f/x5b -+ /x8f/x5c -+ /x8f/x5d -+ /x8f/x5e -+ /x8f/x5f -+ /x8f/x60 -+ /x8f/x61 -+ /x8f/x62 -+ /x8f/x63 -+ /x8f/x64 -+ /x8f/x65 -+ /x8f/x66 -+ /x8f/x67 -+ /x8f/x68 -+ /x8f/x69 -+ /x8f/x6a -+ /x8f/x6b -+ /x8f/x6c -+ /x8f/x6d -+ /x8f/x6e -+ /x8f/x6f -+ /x8f/x70 -+ /x8f/x71 -+ /x8f/x72 -+ /x8f/x73 -+ /x8f/x74 -+ /x8f/x75 -+ /x8f/x76 -+ /x8f/x77 -+ /x8f/x78 -+ /x8f/x79 -+ /x8f/x7a -+ /x8f/x7b -+ /x8f/x7c -+ /x8f/x7d -+ /x8f/x7e -+ /x8f/x80 -+ /x8f/x81 -+ /x8f/x82 -+ /x8f/x83 -+ /x8f/x84 -+ /x8f/x85 -+ /x8f/x86 -+ /x8f/x87 -+ /x8f/x88 -+ /x8f/x89 -+ /x8f/x8a -+ /x8f/x8b -+ /x8f/x8c -+ /x8f/x8d -+ /x8f/x8e -+ /x8f/x8f -+ /x8f/x90 -+ /x8f/x91 -+ /x8f/x92 -+ /x8f/x93 -+ /x8f/x94 -+ /x8f/x95 -+ /x8f/x96 -+ /x8f/x97 -+ /x8f/x98 -+ /x8f/x99 -+ /x8f/x9a -+ /x8f/x9b -+ /x8f/x9c -+ /x8f/x9d -+ /x8f/x9e -+ /x8f/x9f -+ /x8f/xa0 -+ /x8f/xa1 -+ /x8f/xa2 -+ /x8f/xa3 -+ /x8f/xa4 -+ /x8f/xa5 -+ /x8f/xa6 -+ /x8f/xa7 -+ /x8f/xa8 -+ /x8f/xa9 -+ /x8f/xaa -+ /x8f/xab -+ /x8f/xac -+ /x8f/xad -+ /x8f/xae -+ /x8f/xaf -+ /x8f/xb0 -+ /x8f/xb1 -+ /x8f/xb2 -+ /x8f/xb3 -+ /x8f/xb4 -+ /x8f/xb5 -+ /x8f/xb6 -+ /x8f/xb7 -+ /x8f/xb8 -+ /x8f/xb9 -+ /x8f/xba -+ /x8f/xbb -+ /x8f/xbc -+ /x8f/xbd -+ /x8f/xbe -+ /x8f/xbf -+ /x8f/xc0 -+ /x8f/xc1 -+ /x8f/xc2 -+ /x8f/xc3 -+ /x8f/xc4 -+ /x8f/xc5 -+ /x8f/xc6 -+ /x8f/xc7 -+ /x8f/xc8 -+ /x8f/xc9 -+ /x8f/xca -+ /x8f/xcb -+ /x8f/xcc -+ /x8f/xcd -+ /x8f/xce -+ /x8f/xcf -+ /x8f/xd0 -+ /x8f/xd1 -+ /x8f/xd2 -+ /x8f/xd3 -+ /x8f/xd4 -+ /x8f/xd5 -+ /x8f/xd6 -+ /x8f/xd7 -+ /x8f/xd8 -+ /x8f/xd9 -+ /x8f/xda -+ /x8f/xdb -+ /x8f/xdc -+ /x8f/xdd -+ /x8f/xde -+ /x8f/xdf -+ /x8f/xe0 -+ /x8f/xe1 -+ /x8f/xe2 -+ /x8f/xe3 -+ /x8f/xe4 -+ /x8f/xe5 -+ /x8f/xe6 -+ /x8f/xe7 -+ /x8f/xe8 -+ /x8f/xe9 -+ /x8f/xea -+ /x8f/xeb -+ /x8f/xec -+ /x8f/xed -+ /x8f/xee -+ /x8f/xef -+ /x8f/xf0 -+ /x8f/xf1 -+ /x8f/xf2 -+ /x8f/xf3 -+ /x8f/xf4 -+ /x8f/xf5 -+ /x8f/xf6 -+ /x8f/xf7 -+ /x8f/xf8 -+ /x8f/xf9 -+ /x8f/xfa -+ /x8f/xfb -+ /x8f/xfc -+ /x90/x40 -+ /x90/x41 -+ /x90/x42 -+ /x90/x43 -+ /x90/x44 -+ /x90/x45 -+ /x90/x46 -+ /x90/x47 -+ /x90/x48 -+ /x90/x49 -+ /x90/x4a -+ /x90/x4b -+ /x90/x4c -+ /x90/x4d -+ /x90/x4e -+ /x90/x4f -+ /x90/x50 -+ /x90/x51 -+ /x90/x52 -+ /x90/x53 -+ /x90/x54 -+ /x90/x55 -+ /x90/x56 -+ /x90/x57 -+ /x90/x58 -+ /x90/x59 -+ /x90/x5a -+ /x90/x5b -+ /x90/x5c -+ /x90/x5d -+ /x90/x5e -+ /x90/x5f -+ /x90/x60 -+ /x90/x61 -+ /x90/x62 -+ /x90/x63 -+ /x90/x64 -+ /x90/x65 -+ /x90/x66 -+ /x90/x67 -+ /x90/x68 -+ /x90/x69 -+ /x90/x6a -+ /x90/x6b -+ /x90/x6c -+ /x90/x6d -+ /x90/x6e -+ /x90/x6f -+ /x90/x70 -+ /x90/x71 -+ /x90/x72 -+ /x90/x73 -+ /x90/x74 -+ /x90/x75 -+ /x90/x76 -+ /x90/x77 -+ /x90/x78 -+ /x90/x79 -+ /x90/x7a -+ /x90/x7b -+ /x90/x7c -+ /x90/x7d -+ /x90/x7e -+ /x90/x80 -+ /x90/x81 -+ /x90/x82 -+ /x90/x83 -+ /x90/x84 -+ /x90/x85 -+ /x90/x86 -+ /x90/x87 -+ /x90/x88 -+ /x90/x89 -+ /x90/x8a -+ /x90/x8b -+ /x90/x8c -+ /x90/x8d -+ /x90/x8e -+ /x90/x8f -+ /x90/x90 -+ /x90/x91 -+ /x90/x92 -+ /x90/x93 -+ /x90/x94 -+ /x90/x95 -+ /x90/x96 -+ /x90/x97 -+ /x90/x98 -+ /x90/x99 -+ /x90/x9a -+ /x90/x9b -+ /x90/x9c -+ /x90/x9d -+ /x90/x9e -+ /x90/x9f -+ /x90/xa0 -+ /x90/xa1 -+ /x90/xa2 -+ /x90/xa3 -+ /x90/xa4 -+ /x90/xa5 -+ /x90/xa6 -+ /x90/xa7 -+ /x90/xa8 -+ /x90/xa9 -+ /x90/xaa -+ /x90/xab -+ /x90/xac -+ /x90/xad -+ /x90/xae -+ /x90/xaf -+ /x90/xb0 -+ /x90/xb1 -+ /x90/xb2 -+ /x90/xb3 -+ /x90/xb4 -+ /x90/xb5 -+ /x90/xb6 -+ /x90/xb7 -+ /x90/xb8 -+ /x90/xb9 -+ /x90/xba -+ /x90/xbb -+ /x90/xbc -+ /x90/xbd -+ /x90/xbe -+ /x90/xbf -+ /x90/xc0 -+ /x90/xc1 -+ /x90/xc2 -+ /x90/xc3 -+ /x90/xc4 -+ /x90/xc5 -+ /x90/xc6 -+ /x90/xc7 -+ /x90/xc8 -+ /x90/xc9 -+ /x90/xca -+ /x90/xcb -+ /x90/xcc -+ /x90/xcd -+ /x90/xce -+ /x90/xcf -+ /x90/xd0 -+ /x90/xd1 -+ /x90/xd2 -+ /x90/xd3 -+ /x90/xd4 -+ /x90/xd5 -+ /x90/xd6 -+ /x90/xd7 -+ /x90/xd8 -+ /x90/xd9 -+ /x90/xda -+ /x90/xdb -+ /x90/xdc -+ /x90/xdd -+ /x90/xde -+ /x90/xdf -+ /x90/xe0 -+ /x90/xe1 -+ /x90/xe2 -+ /x90/xe3 -+ /x90/xe4 -+ /x90/xe5 -+ /x90/xe6 -+ /x90/xe7 -+ /x90/xe8 -+ /x90/xe9 -+ /x90/xea -+ /x90/xeb -+ /x90/xec -+ /x90/xed -+ /x90/xee -+ /x90/xef -+ /x90/xf0 -+ /x90/xf1 -+ /x90/xf2 -+ /x90/xf3 -+ /x90/xf4 -+ /x90/xf5 -+ /x90/xf6 -+ /x90/xf7 -+ /x90/xf8 -+ /x90/xf9 -+ /x90/xfa -+ /x90/xfb -+ /x90/xfc -+ /x91/x40 -+ /x91/x41 -+ /x91/x42 -+ /x91/x43 -+ /x91/x44 -+ /x91/x45 -+ /x91/x46 -+ /x91/x47 -+ /x91/x48 -+ /x91/x49 -+ /x91/x4a -+ /x91/x4b -+ /x91/x4c -+ /x91/x4d -+ /x91/x4e -+ /x91/x4f -+ /x91/x50 -+ /x91/x51 -+ /x91/x52 -+ /x91/x53 -+ /x91/x54 -+ /x91/x55 -+ /x91/x56 -+ /x91/x57 -+ /x91/x58 -+ /x91/x59 -+ /x91/x5a -+ /x91/x5b -+ /x91/x5c -+ /x91/x5d -+ /x91/x5e -+ /x91/x5f -+ /x91/x60 -+ /x91/x61 -+ /x91/x62 -+ /x91/x63 -+ /x91/x64 -+ /x91/x65 -+ /x91/x66 -+ /x91/x67 -+ /x91/x68 -+ /x91/x69 -+ /x91/x6a -+ /x91/x6b -+ /x91/x6c -+ /x91/x6d -+ /x91/x6e -+ /x91/x6f -+ /x91/x70 -+ /x91/x71 -+ /x91/x72 -+ /x91/x73 -+ /x91/x74 -+ /x91/x75 -+ /x91/x76 -+ /x91/x77 -+ /x91/x78 -+ /x91/x79 -+ /x91/x7a -+ /x91/x7b -+ /x91/x7c -+ /x91/x7d -+ /x91/x7e -+ /x91/x80 -+ /x91/x81 -+ /x91/x82 -+ /x91/x83 -+ /x91/x84 -+ /x91/x85 -+ /x91/x86 -+ /x91/x87 -+ /x91/x88 -+ /x91/x89 -+ /x91/x8a -+ /x91/x8b -+ /x91/x8c -+ /x91/x8d -+ /x91/x8e -+ /x91/x8f -+ /x91/x90 -+ /x91/x91 -+ /x91/x92 -+ /x91/x93 -+ /x91/x94 -+ /x91/x95 -+ /x91/x96 -+ /x91/x97 -+ /x91/x98 -+ /x91/x99 -+ /x91/x9a -+ /x91/x9b -+ /x91/x9c -+ /x91/x9d -+ /x91/x9e -+ /x91/x9f -+ /x91/xa0 -+ /x91/xa1 -+ /x91/xa2 -+ /x91/xa3 -+ /x91/xa4 -+ /x91/xa5 -+ /x91/xa6 -+ /x91/xa7 -+ /x91/xa8 -+ /x91/xa9 -+ /x91/xaa -+ /x91/xab -+ /x91/xac -+ /x91/xad -+ /x91/xae -+ /x91/xaf -+ /x91/xb0 -+ /x91/xb1 -+ /x91/xb2 -+ /x91/xb3 -+ /x91/xb4 -+ /x91/xb5 -+ /x91/xb6 -+ /x91/xb7 -+ /x91/xb8 -+ /x91/xb9 -+ /x91/xba -+ /x91/xbb -+ /x91/xbc -+ /x91/xbd -+ /x91/xbe -+ /x91/xbf -+ /x91/xc0 -+ /x91/xc1 -+ /x91/xc2 -+ /x91/xc3 -+ /x91/xc4 -+ /x91/xc5 -+ /x91/xc6 -+ /x91/xc7 -+ /x91/xc8 -+ /x91/xc9 -+ /x91/xca -+ /x91/xcb -+ /x91/xcc -+ /x91/xcd -+ /x91/xce -+ /x91/xcf -+ /x91/xd0 -+ /x91/xd1 -+ /x91/xd2 -+ /x91/xd3 -+ /x91/xd4 -+ /x91/xd5 -+ /x91/xd6 -+ /x91/xd7 -+ /x91/xd8 -+ /x91/xd9 -+ /x91/xda -+ /x91/xdb -+ /x91/xdc -+ /x91/xdd -+ /x91/xde -+ /x91/xdf -+ /x91/xe0 -+ /x91/xe1 -+ /x91/xe2 -+ /x91/xe3 -+ /x91/xe4 -+ /x91/xe5 -+ /x91/xe6 -+ /x91/xe7 -+ /x91/xe8 -+ /x91/xe9 -+ /x91/xea -+ /x91/xeb -+ /x91/xec -+ /x91/xed -+ /x91/xee -+ /x91/xef -+ /x91/xf0 -+ /x91/xf1 -+ /x91/xf2 -+ /x91/xf3 -+ /x91/xf4 -+ /x91/xf5 -+ /x91/xf6 -+ /x91/xf7 -+ /x91/xf8 -+ /x91/xf9 -+ /x91/xfa -+ /x91/xfb -+ /x91/xfc -+ /x92/x40 -+ /x92/x41 -+ /x92/x42 -+ /x92/x43 -+ /x92/x44 -+ /x92/x45 -+ /x92/x46 -+ /x92/x47 -+ /x92/x48 -+ /x92/x49 -+ /x92/x4a -+ /x92/x4b -+ /x92/x4c -+ /x92/x4d -+ /x92/x4e -+ /x92/x4f -+ /x92/x50 -+ /x92/x51 -+ /x92/x52 -+ /x92/x53 -+ /x92/x54 -+ /x92/x55 -+ /x92/x56 -+ /x92/x57 -+ /x92/x58 -+ /x92/x59 -+ /x92/x5a -+ /x92/x5b -+ /x92/x5c -+ /x92/x5d -+ /x92/x5e -+ /x92/x5f -+ /x92/x60 -+ /x92/x61 -+ /x92/x62 -+ /x92/x63 -+ /x92/x64 -+ /x92/x65 -+ /x92/x66 -+ /x92/x67 -+ /x92/x68 -+ /x92/x69 -+ /x92/x6a -+ /x92/x6b -+ /x92/x6c -+ /x92/x6d -+ /x92/x6e -+ /x92/x6f -+ /x92/x70 -+ /x92/x71 -+ /x92/x72 -+ /x92/x73 -+ /x92/x74 -+ /x92/x75 -+ /x92/x76 -+ /x92/x77 -+ /x92/x78 -+ /x92/x79 -+ /x92/x7a -+ /x92/x7b -+ /x92/x7c -+ /x92/x7d -+ /x92/x7e -+ /x92/x80 -+ /x92/x81 -+ /x92/x82 -+ /x92/x83 -+ /x92/x84 -+ /x92/x85 -+ /x92/x86 -+ /x92/x87 -+ /x92/x88 -+ /x92/x89 -+ /x92/x8a -+ /x92/x8b -+ /x92/x8c -+ /x92/x8d -+ /x92/x8e -+ /x92/x8f -+ /x92/x90 -+ /x92/x91 -+ /x92/x92 -+ /x92/x93 -+ /x92/x94 -+ /x92/x95 -+ /x92/x96 -+ /x92/x97 -+ /x92/x98 -+ /x92/x99 -+ /x92/x9a -+ /x92/x9b -+ /x92/x9c -+ /x92/x9d -+ /x92/x9e -+ /x92/x9f -+ /x92/xa0 -+ /x92/xa1 -+ /x92/xa2 -+ /x92/xa3 -+ /x92/xa4 -+ /x92/xa5 -+ /x92/xa6 -+ /x92/xa7 -+ /x92/xa8 -+ /x92/xa9 -+ /x92/xaa -+ /x92/xab -+ /x92/xac -+ /x92/xad -+ /x92/xae -+ /x92/xaf -+ /x92/xb0 -+ /x92/xb1 -+ /x92/xb2 -+ /x92/xb3 -+ /x92/xb4 -+ /x92/xb5 -+ /x92/xb6 -+ /x92/xb7 -+ /x92/xb8 -+ /x92/xb9 -+ /x92/xba -+ /x92/xbb -+ /x92/xbc -+ /x92/xbd -+ /x92/xbe -+ /x92/xbf -+ /x92/xc0 -+ /x92/xc1 -+ /x92/xc2 -+ /x92/xc3 -+ /x92/xc4 -+ /x92/xc5 -+ /x92/xc6 -+ /x92/xc7 -+ /x92/xc8 -+ /x92/xc9 -+ /x92/xca -+ /x92/xcb -+ /x92/xcc -+ /x92/xcd -+ /x92/xce -+ /x92/xcf -+ /x92/xd0 -+ /x92/xd1 -+ /x92/xd2 -+ /x92/xd3 -+ /x92/xd4 -+ /x92/xd5 -+ /x92/xd6 -+ /x92/xd7 -+ /x92/xd8 -+ /x92/xd9 -+ /x92/xda -+ /x92/xdb -+ /x92/xdc -+ /x92/xdd -+ /x92/xde -+ /x92/xdf -+ /x92/xe0 -+ /x92/xe1 -+ /x92/xe2 -+ /x92/xe3 -+ /x92/xe4 -+ /x92/xe5 -+ /x92/xe6 -+ /x92/xe7 -+ /x92/xe8 -+ /x92/xe9 -+ /x92/xea -+ /x92/xeb -+ /x92/xec -+ /x92/xed -+ /x92/xee -+ /x92/xef -+ /x92/xf0 -+ /x92/xf1 -+ /x92/xf2 -+ /x92/xf3 -+ /x92/xf4 -+ /x92/xf5 -+ /x92/xf6 -+ /x92/xf7 -+ /x92/xf8 -+ /x92/xf9 -+ /x92/xfa -+ /x92/xfb -+ /x92/xfc -+ /x93/x40 -+ /x93/x41 -+ /x93/x42 -+ /x93/x43 -+ /x93/x44 -+ /x93/x45 -+ /x93/x46 -+ /x93/x47 -+ /x93/x48 -+ /x93/x49 -+ /x93/x4a -+ /x93/x4b -+ /x93/x4c -+ /x93/x4d -+ /x93/x4e -+ /x93/x4f -+ /x93/x50 -+ /x93/x51 -+ /x93/x52 -+ /x93/x53 -+ /x93/x54 -+ /x93/x55 -+ /x93/x56 -+ /x93/x57 -+ /x93/x58 -+ /x93/x59 -+ /x93/x5a -+ /x93/x5b -+ /x93/x5c -+ /x93/x5d -+ /x93/x5e -+ /x93/x5f -+ /x93/x60 -+ /x93/x61 -+ /x93/x62 -+ /x93/x63 -+ /x93/x64 -+ /x93/x65 -+ /x93/x66 -+ /x93/x67 -+ /x93/x68 -+ /x93/x69 -+ /x93/x6a -+ /x93/x6b -+ /x93/x6c -+ /x93/x6d -+ /x93/x6e -+ /x93/x6f -+ /x93/x70 -+ /x93/x71 -+ /x93/x72 -+ /x93/x73 -+ /x93/x74 -+ /x93/x75 -+ /x93/x76 -+ /x93/x77 -+ /x93/x78 -+ /x93/x79 -+ /x93/x7a -+ /x93/x7b -+ /x93/x7c -+ /x93/x7d -+ /x93/x7e -+ /x93/x80 -+ /x93/x81 -+ /x93/x82 -+ /x93/x83 -+ /x93/x84 -+ /x93/x85 -+ /x93/x86 -+ /x93/x87 -+ /x93/x88 -+ /x93/x89 -+ /x93/x8a -+ /x93/x8b -+ /x93/x8c -+ /x93/x8d -+ /x93/x8e -+ /x93/x8f -+ /x93/x90 -+ /x93/x91 -+ /x93/x92 -+ /x93/x93 -+ /x93/x94 -+ /x93/x95 -+ /x93/x96 -+ /x93/x97 -+ /x93/x98 -+ /x93/x99 -+ /x93/x9a -+ /x93/x9b -+ /x93/x9c -+ /x93/x9d -+ /x93/x9e -+ /x93/x9f -+ /x93/xa0 -+ /x93/xa1 -+ /x93/xa2 -+ /x93/xa3 -+ /x93/xa4 -+ /x93/xa5 -+ /x93/xa6 -+ /x93/xa7 -+ /x93/xa8 -+ /x93/xa9 -+ /x93/xaa -+ /x93/xab -+ /x93/xac -+ /x93/xad -+ /x93/xae -+ /x93/xaf -+ /x93/xb0 -+ /x93/xb1 -+ /x93/xb2 -+ /x93/xb3 -+ /x93/xb4 -+ /x93/xb5 -+ /x93/xb6 -+ /x93/xb7 -+ /x93/xb8 -+ /x93/xb9 -+ /x93/xba -+ /x93/xbb -+ /x93/xbc -+ /x93/xbd -+ /x93/xbe -+ /x93/xbf -+ /x93/xc0 -+ /x93/xc1 -+ /x93/xc2 -+ /x93/xc3 -+ /x93/xc4 -+ /x93/xc5 -+ /x93/xc6 -+ /x93/xc7 -+ /x93/xc8 -+ /x93/xc9 -+ /x93/xca -+ /x93/xcb -+ /x93/xcc -+ /x93/xcd -+ /x93/xce -+ /x93/xcf -+ /x93/xd0 -+ /x93/xd1 -+ /x93/xd2 -+ /x93/xd3 -+ /x93/xd4 -+ /x93/xd5 -+ /x93/xd6 -+ /x93/xd7 -+ /x93/xd8 -+ /x93/xd9 -+ /x93/xda -+ /x93/xdb -+ /x93/xdc -+ /x93/xdd -+ /x93/xde -+ /x93/xdf -+ /x93/xe0 -+ /x93/xe1 -+ /x93/xe2 -+ /x93/xe3 -+ /x93/xe4 -+ /x93/xe5 -+ /x93/xe6 -+ /x93/xe7 -+ /x93/xe8 -+ /x93/xe9 -+ /x93/xea -+ /x93/xeb -+ /x93/xec -+ /x93/xed -+ /x93/xee -+ /x93/xef -+ /x93/xf0 -+ /x93/xf1 -+ /x93/xf2 -+ /x93/xf3 -+ /x93/xf4 -+ /x93/xf5 -+ /x93/xf6 -+ /x93/xf7 -+ /x93/xf8 -+ /x93/xf9 -+ /x93/xfa -+ /x93/xfb -+ /x93/xfc -+ /x94/x40 -+ /x94/x41 -+ /x94/x42 -+ /x94/x43 -+ /x94/x44 -+ /x94/x45 -+ /x94/x46 -+ /x94/x47 -+ /x94/x48 -+ /x94/x49 -+ /x94/x4a -+ /x94/x4b -+ /x94/x4c -+ /x94/x4d -+ /x94/x4e -+ /x94/x4f -+ /x94/x50 -+ /x94/x51 -+ /x94/x52 -+ /x94/x53 -+ /x94/x54 -+ /x94/x55 -+ /x94/x56 -+ /x94/x57 -+ /x94/x58 -+ /x94/x59 -+ /x94/x5a -+ /x94/x5b -+ /x94/x5c -+ /x94/x5d -+ /x94/x5e -+ /x94/x5f -+ /x94/x60 -+ /x94/x61 -+ /x94/x62 -+ /x94/x63 -+ /x94/x64 -+ /x94/x65 -+ /x94/x66 -+ /x94/x67 -+ /x94/x68 -+ /x94/x69 -+ /x94/x6a -+ /x94/x6b -+ /x94/x6c -+ /x94/x6d -+ /x94/x6e -+ /x94/x6f -+ /x94/x70 -+ /x94/x71 -+ /x94/x72 -+ /x94/x73 -+ /x94/x74 -+ /x94/x75 -+ /x94/x76 -+ /x94/x77 -+ /x94/x78 -+ /x94/x79 -+ /x94/x7a -+ /x94/x7b -+ /x94/x7c -+ /x94/x7d -+ /x94/x7e -+ /x94/x80 -+ /x94/x81 -+ /x94/x82 -+ /x94/x83 -+ /x94/x84 -+ /x94/x85 -+ /x94/x86 -+ /x94/x87 -+ /x94/x88 -+ /x94/x89 -+ /x94/x8a -+ /x94/x8b -+ /x94/x8c -+ /x94/x8d -+ /x94/x8e -+ /x94/x8f -+ /x94/x90 -+ /x94/x91 -+ /x94/x92 -+ /x94/x93 -+ /x94/x94 -+ /x94/x95 -+ /x94/x96 -+ /x94/x97 -+ /x94/x98 -+ /x94/x99 -+ /x94/x9a -+ /x94/x9b -+ /x94/x9c -+ /x94/x9d -+ /x94/x9e -+ /x94/x9f -+ /x94/xa0 -+ /x94/xa1 -+ /x94/xa2 -+ /x94/xa3 -+ /x94/xa4 -+ /x94/xa5 -+ /x94/xa6 -+ /x94/xa7 -+ /x94/xa8 -+ /x94/xa9 -+ /x94/xaa -+ /x94/xab -+ /x94/xac -+ /x94/xad -+ /x94/xae -+ /x94/xaf -+ /x94/xb0 -+ /x94/xb1 -+ /x94/xb2 -+ /x94/xb3 -+ /x94/xb4 -+ /x94/xb5 -+ /x94/xb6 -+ /x94/xb7 -+ /x94/xb8 -+ /x94/xb9 -+ /x94/xba -+ /x94/xbb -+ /x94/xbc -+ /x94/xbd -+ /x94/xbe -+ /x94/xbf -+ /x94/xc0 -+ /x94/xc1 -+ /x94/xc2 -+ /x94/xc3 -+ /x94/xc4 -+ /x94/xc5 -+ /x94/xc6 -+ /x94/xc7 -+ /x94/xc8 -+ /x94/xc9 -+ /x94/xca -+ /x94/xcb -+ /x94/xcc -+ /x94/xcd -+ /x94/xce -+ /x94/xcf -+ /x94/xd0 -+ /x94/xd1 -+ /x94/xd2 -+ /x94/xd3 -+ /x94/xd4 -+ /x94/xd5 -+ /x94/xd6 -+ /x94/xd7 -+ /x94/xd8 -+ /x94/xd9 -+ /x94/xda -+ /x94/xdb -+ /x94/xdc -+ /x94/xdd -+ /x94/xde -+ /x94/xdf -+ /x94/xe0 -+ /x94/xe1 -+ /x94/xe2 -+ /x94/xe3 -+ /x94/xe4 -+ /x94/xe5 -+ /x94/xe6 -+ /x94/xe7 -+ /x94/xe8 -+ /x94/xe9 -+ /x94/xea -+ /x94/xeb -+ /x94/xec -+ /x94/xed -+ /x94/xee -+ /x94/xef -+ /x94/xf0 -+ /x94/xf1 -+ /x94/xf2 -+ /x94/xf3 -+ /x94/xf4 -+ /x94/xf5 -+ /x94/xf6 -+ /x94/xf7 -+ /x94/xf8 -+ /x94/xf9 -+ /x94/xfa -+ /x94/xfb -+ /x94/xfc -+ /x95/x40 -+ /x95/x41 -+ /x95/x42 -+ /x95/x43 -+ /x95/x44 -+ /x95/x45 -+ /x95/x46 -+ /x95/x47 -+ /x95/x48 -+ /x95/x49 -+ /x95/x4a -+ /x95/x4b -+ /x95/x4c -+ /x95/x4d -+ /x95/x4e -+ /x95/x4f -+ /x95/x50 -+ /x95/x51 -+ /x95/x52 -+ /x95/x53 -+ /x95/x54 -+ /x95/x55 -+ /x95/x56 -+ /x95/x57 -+ /x95/x58 -+ /x95/x59 -+ /x95/x5a -+ /x95/x5b -+ /x95/x5c -+ /x95/x5d -+ /x95/x5e -+ /x95/x5f -+ /x95/x60 -+ /x95/x61 -+ /x95/x62 -+ /x95/x63 -+ /x95/x64 -+ /x95/x65 -+ /x95/x66 -+ /x95/x67 -+ /x95/x68 -+ /x95/x69 -+ /x95/x6a -+ /x95/x6b -+ /x95/x6c -+ /x95/x6d -+ /x95/x6e -+ /x95/x6f -+ /x95/x70 -+ /x95/x71 -+ /x95/x72 -+ /x95/x73 -+ /x95/x74 -+ /x95/x75 -+ /x95/x76 -+ /x95/x77 -+ /x95/x78 -+ /x95/x79 -+ /x95/x7a -+ /x95/x7b -+ /x95/x7c -+ /x95/x7d -+ /x95/x7e -+ /x95/x80 -+ /x95/x81 -+ /x95/x82 -+ /x95/x83 -+ /x95/x84 -+ /x95/x85 -+ /x95/x86 -+ /x95/x87 -+ /x95/x88 -+ /x95/x89 -+ /x95/x8a -+ /x95/x8b -+ /x95/x8c -+ /x95/x8d -+ /x95/x8e -+ /x95/x8f -+ /x95/x90 -+ /x95/x91 -+ /x95/x92 -+ /x95/x93 -+ /x95/x94 -+ /x95/x95 -+ /x95/x96 -+ /x95/x97 -+ /x95/x98 -+ /x95/x99 -+ /x95/x9a -+ /x95/x9b -+ /x95/x9c -+ /x95/x9d -+ /x95/x9e -+ /x95/x9f -+ /x95/xa0 -+ /x95/xa1 -+ /x95/xa2 -+ /x95/xa3 -+ /x95/xa4 -+ /x95/xa5 -+ /x95/xa6 -+ /x95/xa7 -+ /x95/xa8 -+ /x95/xa9 -+ /x95/xaa -+ /x95/xab -+ /x95/xac -+ /x95/xad -+ /x95/xae -+ /x95/xaf -+ /x95/xb0 -+ /x95/xb1 -+ /x95/xb2 -+ /x95/xb3 -+ /x95/xb4 -+ /x95/xb5 -+ /x95/xb6 -+ /x95/xb7 -+ /x95/xb8 -+ /x95/xb9 -+ /x95/xba -+ /x95/xbb -+ /x95/xbc -+ /x95/xbd -+ /x95/xbe -+ /x95/xbf -+ /x95/xc0 -+ /x95/xc1 -+ /x95/xc2 -+ /x95/xc3 -+ /x95/xc4 -+ /x95/xc5 -+ /x95/xc6 -+ /x95/xc7 -+ /x95/xc8 -+ /x95/xc9 -+ /x95/xca -+ /x95/xcb -+ /x95/xcc -+ /x95/xcd -+ /x95/xce -+ /x95/xcf -+ /x95/xd0 -+ /x95/xd1 -+ /x95/xd2 -+ /x95/xd3 -+ /x95/xd4 -+ /x95/xd5 -+ /x95/xd6 -+ /x95/xd7 -+ /x95/xd8 -+ /x95/xd9 -+ /x95/xda -+ /x95/xdb -+ /x95/xdc -+ /x95/xdd -+ /x95/xde -+ /x95/xdf -+ /x95/xe0 -+ /x95/xe1 -+ /x95/xe2 -+ /x95/xe3 -+ /x95/xe4 -+ /x95/xe5 -+ /x95/xe6 -+ /x95/xe7 -+ /x95/xe8 -+ /x95/xe9 -+ /x95/xea -+ /x95/xeb -+ /x95/xec -+ /x95/xed -+ /x95/xee -+ /x95/xef -+ /x95/xf0 -+ /x95/xf1 -+ /x95/xf2 -+ /x95/xf3 -+ /x95/xf4 -+ /x95/xf5 -+ /x95/xf6 -+ /x95/xf7 -+ /x95/xf8 -+ /x95/xf9 -+ /x95/xfa -+ /x95/xfb -+ /x95/xfc -+ /x96/x40 -+ /x96/x41 -+ /x96/x42 -+ /x96/x43 -+ /x96/x44 -+ /x96/x45 -+ /x96/x46 -+ /x96/x47 -+ /x96/x48 -+ /x96/x49 -+ /x96/x4a -+ /x96/x4b -+ /x96/x4c -+ /x96/x4d -+ /x96/x4e -+ /x96/x4f -+ /x96/x50 -+ /x96/x51 -+ /x96/x52 -+ /x96/x53 -+ /x96/x54 -+ /x96/x55 -+ /x96/x56 -+ /x96/x57 -+ /x96/x58 -+ /x96/x59 -+ /x96/x5a -+ /x96/x5b -+ /x96/x5c -+ /x96/x5d -+ /x96/x5e -+ /x96/x5f -+ /x96/x60 -+ /x96/x61 -+ /x96/x62 -+ /x96/x63 -+ /x96/x64 -+ /x96/x65 -+ /x96/x66 -+ /x96/x67 -+ /x96/x68 -+ /x96/x69 -+ /x96/x6a -+ /x96/x6b -+ /x96/x6c -+ /x96/x6d -+ /x96/x6e -+ /x96/x6f -+ /x96/x70 -+ /x96/x71 -+ /x96/x72 -+ /x96/x73 -+ /x96/x74 -+ /x96/x75 -+ /x96/x76 -+ /x96/x77 -+ /x96/x78 -+ /x96/x79 -+ /x96/x7a -+ /x96/x7b -+ /x96/x7c -+ /x96/x7d -+ /x96/x7e -+ /x96/x80 -+ /x96/x81 -+ /x96/x82 -+ /x96/x83 -+ /x96/x84 -+ /x96/x85 -+ /x96/x86 -+ /x96/x87 -+ /x96/x88 -+ /x96/x89 -+ /x96/x8a -+ /x96/x8b -+ /x96/x8c -+ /x96/x8d -+ /x96/x8e -+ /x96/x8f -+ /x96/x90 -+ /x96/x91 -+ /x96/x92 -+ /x96/x93 -+ /x96/x94 -+ /x96/x95 -+ /x96/x96 -+ /x96/x97 -+ /x96/x98 -+ /x96/x99 -+ /x96/x9a -+ /x96/x9b -+ /x96/x9c -+ /x96/x9d -+ /x96/x9e -+ /x96/x9f -+ /x96/xa0 -+ /x96/xa1 -+ /x96/xa2 -+ /x96/xa3 -+ /x96/xa4 -+ /x96/xa5 -+ /x96/xa6 -+ /x96/xa7 -+ /x96/xa8 -+ /x96/xa9 -+ /x96/xaa -+ /x96/xab -+ /x96/xac -+ /x96/xad -+ /x96/xae -+ /x96/xaf -+ /x96/xb0 -+ /x96/xb1 -+ /x96/xb2 -+ /x96/xb3 -+ /x96/xb4 -+ /x96/xb5 -+ /x96/xb6 -+ /x96/xb7 -+ /x96/xb8 -+ /x96/xb9 -+ /x96/xba -+ /x96/xbb -+ /x96/xbc -+ /x96/xbd -+ /x96/xbe -+ /x96/xbf -+ /x96/xc0 -+ /x96/xc1 -+ /x96/xc2 -+ /x96/xc3 -+ /x96/xc4 -+ /x96/xc5 -+ /x96/xc6 -+ /x96/xc7 -+ /x96/xc8 -+ /x96/xc9 -+ /x96/xca -+ /x96/xcb -+ /x96/xcc -+ /x96/xcd -+ /x96/xce -+ /x96/xcf -+ /x96/xd0 -+ /x96/xd1 -+ /x96/xd2 -+ /x96/xd3 -+ /x96/xd4 -+ /x96/xd5 -+ /x96/xd6 -+ /x96/xd7 -+ /x96/xd8 -+ /x96/xd9 -+ /x96/xda -+ /x96/xdb -+ /x96/xdc -+ /x96/xdd -+ /x96/xde -+ /x96/xdf -+ /x96/xe0 -+ /x96/xe1 -+ /x96/xe2 -+ /x96/xe3 -+ /x96/xe4 -+ /x96/xe5 -+ /x96/xe6 -+ /x96/xe7 -+ /x96/xe8 -+ /x96/xe9 -+ /x96/xea -+ /x96/xeb -+ /x96/xec -+ /x96/xed -+ /x96/xee -+ /x96/xef -+ /x96/xf0 -+ /x96/xf1 -+ /x96/xf2 -+ /x96/xf3 -+ /x96/xf4 -+ /x96/xf5 -+ /x96/xf6 -+ /x96/xf7 -+ /x96/xf8 -+ /x96/xf9 -+ /x96/xfa -+ /x96/xfb -+ /x96/xfc -+ /x97/x40 -+ /x97/x41 -+ /x97/x42 -+ /x97/x43 -+ /x97/x44 -+ /x97/x45 -+ /x97/x46 -+ /x97/x47 -+ /x97/x48 -+ /x97/x49 -+ /x97/x4a -+ /x97/x4b -+ /x97/x4c -+ /x97/x4d -+ /x97/x4e -+ /x97/x4f -+ /x97/x50 -+ /x97/x51 -+ /x97/x52 -+ /x97/x53 -+ /x97/x54 -+ /x97/x55 -+ /x97/x56 -+ /x97/x57 -+ /x97/x58 -+ /x97/x59 -+ /x97/x5a -+ /x97/x5b -+ /x97/x5c -+ /x97/x5d -+ /x97/x5e -+ /x97/x5f -+ /x97/x60 -+ /x97/x61 -+ /x97/x62 -+ /x97/x63 -+ /x97/x64 -+ /x97/x65 -+ /x97/x66 -+ /x97/x67 -+ /x97/x68 -+ /x97/x69 -+ /x97/x6a -+ /x97/x6b -+ /x97/x6c -+ /x97/x6d -+ /x97/x6e -+ /x97/x6f -+ /x97/x70 -+ /x97/x71 -+ /x97/x72 -+ /x97/x73 -+ /x97/x74 -+ /x97/x75 -+ /x97/x76 -+ /x97/x77 -+ /x97/x78 -+ /x97/x79 -+ /x97/x7a -+ /x97/x7b -+ /x97/x7c -+ /x97/x7d -+ /x97/x7e -+ /x97/x80 -+ /x97/x81 -+ /x97/x82 -+ /x97/x83 -+ /x97/x84 -+ /x97/x85 -+ /x97/x86 -+ /x97/x87 -+ /x97/x88 -+ /x97/x89 -+ /x97/x8a -+ /x97/x8b -+ /x97/x8c -+ /x97/x8d -+ /x97/x8e -+ /x97/x8f -+ /x97/x90 -+ /x97/x91 -+ /x97/x92 -+ /x97/x93 -+ /x97/x94 -+ /x97/x95 -+ /x97/x96 -+ /x97/x97 -+ /x97/x98 -+ /x97/x99 -+ /x97/x9a -+ /x97/x9b -+ /x97/x9c -+ /x97/x9d -+ /x97/x9e -+ /x97/x9f -+ /x97/xa0 -+ /x97/xa1 -+ /x97/xa2 -+ /x97/xa3 -+ /x97/xa4 -+ /x97/xa5 -+ /x97/xa6 -+ /x97/xa7 -+ /x97/xa8 -+ /x97/xa9 -+ /x97/xaa -+ /x97/xab -+ /x97/xac -+ /x97/xad -+ /x97/xae -+ /x97/xaf -+ /x97/xb0 -+ /x97/xb1 -+ /x97/xb2 -+ /x97/xb3 -+ /x97/xb4 -+ /x97/xb5 -+ /x97/xb6 -+ /x97/xb7 -+ /x97/xb8 -+ /x97/xb9 -+ /x97/xba -+ /x97/xbb -+ /x97/xbc -+ /x97/xbd -+ /x97/xbe -+ /x97/xbf -+ /x97/xc0 -+ /x97/xc1 -+ /x97/xc2 -+ /x97/xc3 -+ /x97/xc4 -+ /x97/xc5 -+ /x97/xc6 -+ /x97/xc7 -+ /x97/xc8 -+ /x97/xc9 -+ /x97/xca -+ /x97/xcb -+ /x97/xcc -+ /x97/xcd -+ /x97/xce -+ /x97/xcf -+ /x97/xd0 -+ /x97/xd1 -+ /x97/xd2 -+ /x97/xd3 -+ /x97/xd4 -+ /x97/xd5 -+ /x97/xd6 -+ /x97/xd7 -+ /x97/xd8 -+ /x97/xd9 -+ /x97/xda -+ /x97/xdb -+ /x97/xdc -+ /x97/xdd -+ /x97/xde -+ /x97/xdf -+ /x97/xe0 -+ /x97/xe1 -+ /x97/xe2 -+ /x97/xe3 -+ /x97/xe4 -+ /x97/xe5 -+ /x97/xe6 -+ /x97/xe7 -+ /x97/xe8 -+ /x97/xe9 -+ /x97/xea -+ /x97/xeb -+ /x97/xec -+ /x97/xed -+ /x97/xee -+ /x97/xef -+ /x97/xf0 -+ /x97/xf1 -+ /x97/xf2 -+ /x97/xf3 -+ /x97/xf4 -+ /x97/xf5 -+ /x97/xf6 -+ /x97/xf7 -+ /x97/xf8 -+ /x97/xf9 -+ /x97/xfa -+ /x97/xfb -+ /x97/xfc -+ /x98/x40 -+ /x98/x41 -+ /x98/x42 -+ /x98/x43 -+ /x98/x44 -+ /x98/x45 -+ /x98/x46 -+ /x98/x47 -+ /x98/x48 -+ /x98/x49 -+ /x98/x4a -+ /x98/x4b -+ /x98/x4c -+ /x98/x4d -+ /x98/x4e -+ /x98/x4f -+ /x98/x50 -+ /x98/x51 -+ /x98/x52 -+ /x98/x53 -+ /x98/x54 -+ /x98/x55 -+ /x98/x56 -+ /x98/x57 -+ /x98/x58 -+ /x98/x59 -+ /x98/x5a -+ /x98/x5b -+ /x98/x5c -+ /x98/x5d -+ /x98/x5e -+ /x98/x5f -+ /x98/x60 -+ /x98/x61 -+ /x98/x62 -+ /x98/x63 -+ /x98/x64 -+ /x98/x65 -+ /x98/x66 -+ /x98/x67 -+ /x98/x68 -+ /x98/x69 -+ /x98/x6a -+ /x98/x6b -+ /x98/x6c -+ /x98/x6d -+ /x98/x6e -+ /x98/x6f -+ /x98/x70 -+ /x98/x71 -+ /x98/x72 -+ /x98/x9f -+ /x98/xa0 -+ /x98/xa1 -+ /x98/xa2 -+ /x98/xa3 -+ /x98/xa4 -+ /x98/xa5 -+ /x98/xa6 -+ /x98/xa7 -+ /x98/xa8 -+ /x98/xa9 -+ /x98/xaa -+ /x98/xab -+ /x98/xac -+ /x98/xad -+ /x98/xae -+ /x98/xaf -+ /x98/xb0 -+ /x98/xb1 -+ /x98/xb2 -+ /x98/xb3 -+ /x98/xb4 -+ /x98/xb5 -+ /x98/xb6 -+ /x98/xb7 -+ /x98/xb8 -+ /x98/xb9 -+ /x98/xba -+ /x98/xbb -+ /x98/xbc -+ /x98/xbd -+ /x98/xbe -+ /x98/xbf -+ /x98/xc0 -+ /x98/xc1 -+ /x98/xc2 -+ /x98/xc3 -+ /x98/xc4 -+ /x98/xc5 -+ /x98/xc6 -+ /x98/xc7 -+ /x98/xc8 -+ /x98/xc9 -+ /x98/xca -+ /x98/xcb -+ /x98/xcc -+ /x98/xcd -+ /x98/xce -+ /x98/xcf -+ /x98/xd0 -+ /x98/xd1 -+ /x98/xd2 -+ /x98/xd3 -+ /x98/xd4 -+ /x98/xd5 -+ /x98/xd6 -+ /x98/xd7 -+ /x98/xd8 -+ /x98/xd9 -+ /x98/xda -+ /x98/xdb -+ /x98/xdc -+ /x98/xdd -+ /x98/xde -+ /x98/xdf -+ /x98/xe0 -+ /x98/xe1 -+ /x98/xe2 -+ /x98/xe3 -+ /x98/xe4 -+ /x98/xe5 -+ /x98/xe6 -+ /x98/xe7 -+ /x98/xe8 -+ /x98/xe9 -+ /x98/xea -+ /x98/xeb -+ /x98/xec -+ /x98/xed -+ /x98/xee -+ /x98/xef -+ /x98/xf0 -+ /x98/xf1 -+ /x98/xf2 -+ /x98/xf3 -+ /x98/xf4 -+ /x98/xf5 -+ /x98/xf6 -+ /x98/xf7 -+ /x98/xf8 -+ /x98/xf9 -+ /x98/xfa -+ /x98/xfb -+ /x98/xfc -+ /x99/x40 -+ /x99/x41 -+ /x99/x42 -+ /x99/x43 -+ /x99/x44 -+ /x99/x45 -+ /x99/x46 -+ /x99/x47 -+ /x99/x48 -+ /x99/x49 -+ /x99/x4a -+ /x99/x4b -+ /x99/x4c -+ /x99/x4d -+ /x99/x4e -+ /x99/x4f -+ /x99/x50 -+ /x99/x51 -+ /x99/x52 -+ /x99/x53 -+ /x99/x54 -+ /x99/x55 -+ /x99/x56 -+ /x99/x57 -+ /x99/x58 -+ /x99/x59 -+ /x99/x5a -+ /x99/x5b -+ /x99/x5c -+ /x99/x5d -+ /x99/x5e -+ /x99/x5f -+ /x99/x60 -+ /x99/x61 -+ /x99/x62 -+ /x99/x63 -+ /x99/x64 -+ /x99/x65 -+ /x99/x66 -+ /x99/x67 -+ /x99/x68 -+ /x99/x69 -+ /x99/x6a -+ /x99/x6b -+ /x99/x6c -+ /x99/x6d -+ /x99/x6e -+ /x99/x6f -+ /x99/x70 -+ /x99/x71 -+ /x99/x72 -+ /x99/x73 -+ /x99/x74 -+ /x99/x75 -+ /x99/x76 -+ /x99/x77 -+ /x99/x78 -+ /x99/x79 -+ /x99/x7a -+ /x99/x7b -+ /x99/x7c -+ /x99/x7d -+ /x99/x7e -+ /x99/x80 -+ /x99/x81 -+ /x99/x82 -+ /x99/x83 -+ /x99/x84 -+ /x99/x85 -+ /x99/x86 -+ /x99/x87 -+ /x99/x88 -+ /x99/x89 -+ /x99/x8a -+ /x99/x8b -+ /x99/x8c -+ /x99/x8d -+ /x99/x8e -+ /x99/x8f -+ /x99/x90 -+ /x99/x91 -+ /x99/x92 -+ /x99/x93 -+ /x99/x94 -+ /x99/x95 -+ /x99/x96 -+ /x99/x97 -+ /x99/x98 -+ /x99/x99 -+ /x99/x9a -+ /x99/x9b -+ /x99/x9c -+ /x99/x9d -+ /x99/x9e -+ /x99/x9f -+ /x99/xa0 -+ /x99/xa1 -+ /x99/xa2 -+ /x99/xa3 -+ /x99/xa4 -+ /x99/xa5 -+ /x99/xa6 -+ /x99/xa7 -+ /x99/xa8 -+ /x99/xa9 -+ /x99/xaa -+ /x99/xab -+ /x99/xac -+ /x99/xad -+ /x99/xae -+ /x99/xaf -+ /x99/xb0 -+ /x99/xb1 -+ /x99/xb2 -+ /x99/xb3 -+ /x99/xb4 -+ /x99/xb5 -+ /x99/xb6 -+ /x99/xb7 -+ /x99/xb8 -+ /x99/xb9 -+ /x99/xba -+ /x99/xbb -+ /x99/xbc -+ /x99/xbd -+ /x99/xbe -+ /x99/xbf -+ /x99/xc0 -+ /x99/xc1 -+ /x99/xc2 -+ /x99/xc3 -+ /x99/xc4 -+ /x99/xc5 -+ /x99/xc6 -+ /x99/xc7 -+ /x99/xc8 -+ /x99/xc9 -+ /x99/xca -+ /x99/xcb -+ /x99/xcc -+ /x99/xcd -+ /x99/xce -+ /x99/xcf -+ /x99/xd0 -+ /x99/xd1 -+ /x99/xd2 -+ /x99/xd3 -+ /x99/xd4 -+ /x99/xd5 -+ /x99/xd6 -+ /x99/xd7 -+ /x99/xd8 -+ /x99/xd9 -+ /x99/xda -+ /x99/xdb -+ /x99/xdc -+ /x99/xdd -+ /x99/xde -+ /x99/xdf -+ /x99/xe0 -+ /x99/xe1 -+ /x99/xe2 -+ /x99/xe3 -+ /x99/xe4 -+ /x99/xe5 -+ /x99/xe6 -+ /x99/xe7 -+ /x99/xe8 -+ /x99/xe9 -+ /x99/xea -+ /x99/xeb -+ /x99/xec -+ /x99/xed -+ /x99/xee -+ /x99/xef -+ /x99/xf0 -+ /x99/xf1 -+ /x99/xf2 -+ /x99/xf3 -+ /x99/xf4 -+ /x99/xf5 -+ /x99/xf6 -+ /x99/xf7 -+ /x99/xf8 -+ /x99/xf9 -+ /x99/xfa -+ /x99/xfb -+ /x99/xfc -+ /x9a/x40 -+ /x9a/x41 -+ /x9a/x42 -+ /x9a/x43 -+ /x9a/x44 -+ /x9a/x45 -+ /x9a/x46 -+ /x9a/x47 -+ /x9a/x48 -+ /x9a/x49 -+ /x9a/x4a -+ /x9a/x4b -+ /x9a/x4c -+ /x9a/x4d -+ /x9a/x4e -+ /x9a/x4f -+ /x9a/x50 -+ /x9a/x51 -+ /x9a/x52 -+ /x9a/x53 -+ /x9a/x54 -+ /x9a/x55 -+ /x9a/x56 -+ /x9a/x57 -+ /x9a/x58 -+ /x9a/x59 -+ /x9a/x5a -+ /x9a/x5b -+ /x9a/x5c -+ /x9a/x5d -+ /x9a/x5e -+ /x9a/x5f -+ /x9a/x60 -+ /x9a/x61 -+ /x9a/x62 -+ /x9a/x63 -+ /x9a/x64 -+ /x9a/x65 -+ /x9a/x66 -+ /x9a/x67 -+ /x9a/x68 -+ /x9a/x69 -+ /x9a/x6a -+ /x9a/x6b -+ /x9a/x6c -+ /x9a/x6d -+ /x9a/x6e -+ /x9a/x6f -+ /x9a/x70 -+ /x9a/x71 -+ /x9a/x72 -+ /x9a/x73 -+ /x9a/x74 -+ /x9a/x75 -+ /x9a/x76 -+ /x9a/x77 -+ /x9a/x78 -+ /x9a/x79 -+ /x9a/x7a -+ /x9a/x7b -+ /x9a/x7c -+ /x9a/x7d -+ /x9a/x7e -+ /x9a/x80 -+ /x9a/x81 -+ /x9a/x82 -+ /x9a/x83 -+ /x9a/x84 -+ /x9a/x85 -+ /x9a/x86 -+ /x9a/x87 -+ /x9a/x88 -+ /x9a/x89 -+ /x9a/x8a -+ /x9a/x8b -+ /x9a/x8c -+ /x9a/x8d -+ /x9a/x8e -+ /x9a/x8f -+ /x9a/x90 -+ /x9a/x91 -+ /x9a/x92 -+ /x9a/x93 -+ /x9a/x94 -+ /x9a/x95 -+ /x9a/x96 -+ /x9a/x97 -+ /x9a/x98 -+ /x9a/x99 -+ /x9a/x9a -+ /x9a/x9b -+ /x9a/x9c -+ /x9a/x9d -+ /x9a/x9e -+ /x9a/x9f -+ /x9a/xa0 -+ /x9a/xa1 -+ /x9a/xa2 -+ /x9a/xa3 -+ /x9a/xa4 -+ /x9a/xa5 -+ /x9a/xa6 -+ /x9a/xa7 -+ /x9a/xa8 -+ /x9a/xa9 -+ /x9a/xaa -+ /x9a/xab -+ /x9a/xac -+ /x9a/xad -+ /x9a/xae -+ /x9a/xaf -+ /x9a/xb0 -+ /x9a/xb1 -+ /x9a/xb2 -+ /x9a/xb3 -+ /x9a/xb4 -+ /x9a/xb5 -+ /x9a/xb6 -+ /x9a/xb7 -+ /x9a/xb8 -+ /x9a/xb9 -+ /x9a/xba -+ /x9a/xbb -+ /x9a/xbc -+ /x9a/xbd -+ /x9a/xbe -+ /x9a/xbf -+ /x9a/xc0 -+ /x9a/xc1 -+ /x9a/xc2 -+ /x9a/xc3 -+ /x9a/xc4 -+ /x9a/xc5 -+ /x9a/xc6 -+ /x9a/xc7 -+ /x9a/xc8 -+ /x9a/xc9 -+ /x9a/xca -+ /x9a/xcb -+ /x9a/xcc -+ /x9a/xcd -+ /x9a/xce -+ /x9a/xcf -+ /x9a/xd0 -+ /x9a/xd1 -+ /x9a/xd2 -+ /x9a/xd3 -+ /x9a/xd4 -+ /x9a/xd5 -+ /x9a/xd6 -+ /x9a/xd7 -+ /x9a/xd8 -+ /x9a/xd9 -+ /x9a/xda -+ /x9a/xdb -+ /x9a/xdc -+ /x9a/xdd -+ /x9a/xde -+ /x9a/xdf -+ /x9a/xe0 -+ /x9a/xe1 -+ /x9a/xe2 -+ /x9a/xe3 -+ /x9a/xe4 -+ /x9a/xe5 -+ /x9a/xe6 -+ /x9a/xe7 -+ /x9a/xe8 -+ /x9a/xe9 -+ /x9a/xea -+ /x9a/xeb -+ /x9a/xec -+ /x9a/xed -+ /x9a/xee -+ /x9a/xef -+ /x9a/xf0 -+ /x9a/xf1 -+ /x9a/xf2 -+ /x9a/xf3 -+ /x9a/xf4 -+ /x9a/xf5 -+ /x9a/xf6 -+ /x9a/xf7 -+ /x9a/xf8 -+ /x9a/xf9 -+ /x9a/xfa -+ /x9a/xfb -+ /x9a/xfc -+ /x9b/x40 -+ /x9b/x41 -+ /x9b/x42 -+ /x9b/x43 -+ /x9b/x44 -+ /x9b/x45 -+ /x9b/x46 -+ /x9b/x47 -+ /x9b/x48 -+ /x9b/x49 -+ /x9b/x4a -+ /x9b/x4b -+ /x9b/x4c -+ /x9b/x4d -+ /x9b/x4e -+ /x9b/x4f -+ /x9b/x50 -+ /x9b/x51 -+ /x9b/x52 -+ /x9b/x53 -+ /x9b/x54 -+ /x9b/x55 -+ /x9b/x56 -+ /x9b/x57 -+ /x9b/x58 -+ /x9b/x59 -+ /x9b/x5a -+ /x9b/x5b -+ /x9b/x5c -+ /x9b/x5d -+ /x9b/x5e -+ /x9b/x5f -+ /x9b/x60 -+ /x9b/x61 -+ /x9b/x62 -+ /x9b/x63 -+ /x9b/x64 -+ /x9b/x65 -+ /x9b/x66 -+ /x9b/x67 -+ /x9b/x68 -+ /x9b/x69 -+ /x9b/x6a -+ /x9b/x6b -+ /x9b/x6c -+ /x9b/x6d -+ /x9b/x6e -+ /x9b/x6f -+ /x9b/x70 -+ /x9b/x71 -+ /x9b/x72 -+ /x9b/x73 -+ /x9b/x74 -+ /x9b/x75 -+ /x9b/x76 -+ /x9b/x77 -+ /x9b/x78 -+ /x9b/x79 -+ /x9b/x7a -+ /x9b/x7b -+ /x9b/x7c -+ /x9b/x7d -+ /x9b/x7e -+ /x9b/x80 -+ /x9b/x81 -+ /x9b/x82 -+ /x9b/x83 -+ /x9b/x84 -+ /x9b/x85 -+ /x9b/x86 -+ /x9b/x87 -+ /x9b/x88 -+ /x9b/x89 -+ /x9b/x8a -+ /x9b/x8b -+ /x9b/x8c -+ /x9b/x8d -+ /x9b/x8e -+ /x9b/x8f -+ /x9b/x90 -+ /x9b/x91 -+ /x9b/x92 -+ /x9b/x93 -+ /x9b/x94 -+ /x9b/x95 -+ /x9b/x96 -+ /x9b/x97 -+ /x9b/x98 -+ /x9b/x99 -+ /x9b/x9a -+ /x9b/x9b -+ /x9b/x9c -+ /x9b/x9d -+ /x9b/x9e -+ /x9b/x9f -+ /x9b/xa0 -+ /x9b/xa1 -+ /x9b/xa2 -+ /x9b/xa3 -+ /x9b/xa4 -+ /x9b/xa5 -+ /x9b/xa6 -+ /x9b/xa7 -+ /x9b/xa8 -+ /x9b/xa9 -+ /x9b/xaa -+ /x9b/xab -+ /x9b/xac -+ /x9b/xad -+ /x9b/xae -+ /x9b/xaf -+ /x9b/xb0 -+ /x9b/xb1 -+ /x9b/xb2 -+ /x9b/xb3 -+ /x9b/xb4 -+ /x9b/xb5 -+ /x9b/xb6 -+ /x9b/xb7 -+ /x9b/xb8 -+ /x9b/xb9 -+ /x9b/xba -+ /x9b/xbb -+ /x9b/xbc -+ /x9b/xbd -+ /x9b/xbe -+ /x9b/xbf -+ /x9b/xc0 -+ /x9b/xc1 -+ /x9b/xc2 -+ /x9b/xc3 -+ /x9b/xc4 -+ /x9b/xc5 -+ /x9b/xc6 -+ /x9b/xc7 -+ /x9b/xc8 -+ /x9b/xc9 -+ /x9b/xca -+ /x9b/xcb -+ /x9b/xcc -+ /x9b/xcd -+ /x9b/xce -+ /x9b/xcf -+ /x9b/xd0 -+ /x9b/xd1 -+ /x9b/xd2 -+ /x9b/xd3 -+ /x9b/xd4 -+ /x9b/xd5 -+ /x9b/xd6 -+ /x9b/xd7 -+ /x9b/xd8 -+ /x9b/xd9 -+ /x9b/xda -+ /x9b/xdb -+ /x9b/xdc -+ /x9b/xdd -+ /x9b/xde -+ /x9b/xdf -+ /x9b/xe0 -+ /x9b/xe1 -+ /x9b/xe2 -+ /x9b/xe3 -+ /x9b/xe4 -+ /x9b/xe5 -+ /x9b/xe6 -+ /x9b/xe7 -+ /x9b/xe8 -+ /x9b/xe9 -+ /x9b/xea -+ /x9b/xeb -+ /x9b/xec -+ /x9b/xed -+ /x9b/xee -+ /x9b/xef -+ /x9b/xf0 -+ /x9b/xf1 -+ /x9b/xf2 -+ /x9b/xf3 -+ /x9b/xf4 -+ /x9b/xf5 -+ /x9b/xf6 -+ /x9b/xf7 -+ /x9b/xf8 -+ /x9b/xf9 -+ /x9b/xfa -+ /x9b/xfb -+ /x9b/xfc -+ /x9c/x40 -+ /x9c/x41 -+ /x9c/x42 -+ /x9c/x43 -+ /x9c/x44 -+ /x9c/x45 -+ /x9c/x46 -+ /x9c/x47 -+ /x9c/x48 -+ /x9c/x49 -+ /x9c/x4a -+ /x9c/x4b -+ /x9c/x4c -+ /x9c/x4d -+ /x9c/x4e -+ /x9c/x4f -+ /x9c/x50 -+ /x9c/x51 -+ /x9c/x52 -+ /x9c/x53 -+ /x9c/x54 -+ /x9c/x55 -+ /x9c/x56 -+ /x9c/x57 -+ /x9c/x58 -+ /x9c/x59 -+ /x9c/x5a -+ /x9c/x5b -+ /x9c/x5c -+ /x9c/x5d -+ /x9c/x5e -+ /x9c/x5f -+ /x9c/x60 -+ /x9c/x61 -+ /x9c/x62 -+ /x9c/x63 -+ /x9c/x64 -+ /x9c/x65 -+ /x9c/x66 -+ /x9c/x67 -+ /x9c/x68 -+ /x9c/x69 -+ /x9c/x6a -+ /x9c/x6b -+ /x9c/x6c -+ /x9c/x6d -+ /x9c/x6e -+ /x9c/x6f -+ /x9c/x70 -+ /x9c/x71 -+ /x9c/x72 -+ /x9c/x73 -+ /x9c/x74 -+ /x9c/x75 -+ /x9c/x76 -+ /x9c/x77 -+ /x9c/x78 -+ /x9c/x79 -+ /x9c/x7a -+ /x9c/x7b -+ /x9c/x7c -+ /x9c/x7d -+ /x9c/x7e -+ /x9c/x80 -+ /x9c/x81 -+ /x9c/x82 -+ /x9c/x83 -+ /x9c/x84 -+ /x9c/x85 -+ /x9c/x86 -+ /x9c/x87 -+ /x9c/x88 -+ /x9c/x89 -+ /x9c/x8a -+ /x9c/x8b -+ /x9c/x8c -+ /x9c/x8d -+ /x9c/x8e -+ /x9c/x8f -+ /x9c/x90 -+ /x9c/x91 -+ /x9c/x92 -+ /x9c/x93 -+ /x9c/x94 -+ /x9c/x95 -+ /x9c/x96 -+ /x9c/x97 -+ /x9c/x98 -+ /x9c/x99 -+ /x9c/x9a -+ /x9c/x9b -+ /x9c/x9c -+ /x9c/x9d -+ /x9c/x9e -+ /x9c/x9f -+ /x9c/xa0 -+ /x9c/xa1 -+ /x9c/xa2 -+ /x9c/xa3 -+ /x9c/xa4 -+ /x9c/xa5 -+ /x9c/xa6 -+ /x9c/xa7 -+ /x9c/xa8 -+ /x9c/xa9 -+ /x9c/xaa -+ /x9c/xab -+ /x9c/xac -+ /x9c/xad -+ /x9c/xae -+ /x9c/xaf -+ /x9c/xb0 -+ /x9c/xb1 -+ /x9c/xb2 -+ /x9c/xb3 -+ /x9c/xb4 -+ /x9c/xb5 -+ /x9c/xb6 -+ /x9c/xb7 -+ /x9c/xb8 -+ /x9c/xb9 -+ /x9c/xba -+ /x9c/xbb -+ /x9c/xbc -+ /x9c/xbd -+ /x9c/xbe -+ /x9c/xbf -+ /x9c/xc0 -+ /x9c/xc1 -+ /x9c/xc2 -+ /x9c/xc3 -+ /x9c/xc4 -+ /x9c/xc5 -+ /x9c/xc6 -+ /x9c/xc7 -+ /x9c/xc8 -+ /x9c/xc9 -+ /x9c/xca -+ /x9c/xcb -+ /x9c/xcc -+ /x9c/xcd -+ /x9c/xce -+ /x9c/xcf -+ /x9c/xd0 -+ /x9c/xd1 -+ /x9c/xd2 -+ /x9c/xd3 -+ /x9c/xd4 -+ /x9c/xd5 -+ /x9c/xd6 -+ /x9c/xd7 -+ /x9c/xd8 -+ /x9c/xd9 -+ /x9c/xda -+ /x9c/xdb -+ /x9c/xdc -+ /x9c/xdd -+ /x9c/xde -+ /x9c/xdf -+ /x9c/xe0 -+ /x9c/xe1 -+ /x9c/xe2 -+ /x9c/xe3 -+ /x9c/xe4 -+ /x9c/xe5 -+ /x9c/xe6 -+ /x9c/xe7 -+ /x9c/xe8 -+ /x9c/xe9 -+ /x9c/xea -+ /x9c/xeb -+ /x9c/xec -+ /x9c/xed -+ /x9c/xee -+ /x9c/xef -+ /x9c/xf0 -+ /x9c/xf1 -+ /x9c/xf2 -+ /x9c/xf3 -+ /x9c/xf4 -+ /x9c/xf5 -+ /x9c/xf6 -+ /x9c/xf7 -+ /x9c/xf8 -+ /x9c/xf9 -+ /x9c/xfa -+ /x9c/xfb -+ /x9c/xfc -+ /x9d/x40 -+ /x9d/x41 -+ /x9d/x42 -+ /x9d/x43 -+ /x9d/x44 -+ /x9d/x45 -+ /x9d/x46 -+ /x9d/x47 -+ /x9d/x48 -+ /x9d/x49 -+ /x9d/x4a -+ /x9d/x4b -+ /x9d/x4c -+ /x9d/x4d -+ /x9d/x4e -+ /x9d/x4f -+ /x9d/x50 -+ /x9d/x51 -+ /x9d/x52 -+ /x9d/x53 -+ /x9d/x54 -+ /x9d/x55 -+ /x9d/x56 -+ /x9d/x57 -+ /x9d/x58 -+ /x9d/x59 -+ /x9d/x5a -+ /x9d/x5b -+ /x9d/x5c -+ /x9d/x5d -+ /x9d/x5e -+ /x9d/x5f -+ /x9d/x60 -+ /x9d/x61 -+ /x9d/x62 -+ /x9d/x63 -+ /x9d/x64 -+ /x9d/x65 -+ /x9d/x66 -+ /x9d/x67 -+ /x9d/x68 -+ /x9d/x69 -+ /x9d/x6a -+ /x9d/x6b -+ /x9d/x6c -+ /x9d/x6d -+ /x9d/x6e -+ /x9d/x6f -+ /x9d/x70 -+ /x9d/x71 -+ /x9d/x72 -+ /x9d/x73 -+ /x9d/x74 -+ /x9d/x75 -+ /x9d/x76 -+ /x9d/x77 -+ /x9d/x78 -+ /x9d/x79 -+ /x9d/x7a -+ /x9d/x7b -+ /x9d/x7c -+ /x9d/x7d -+ /x9d/x7e -+ /x9d/x80 -+ /x9d/x81 -+ /x9d/x82 -+ /x9d/x83 -+ /x9d/x84 -+ /x9d/x85 -+ /x9d/x86 -+ /x9d/x87 -+ /x9d/x88 -+ /x9d/x89 -+ /x9d/x8a -+ /x9d/x8b -+ /x9d/x8c -+ /x9d/x8d -+ /x9d/x8e -+ /x9d/x8f -+ /x9d/x90 -+ /x9d/x91 -+ /x9d/x92 -+ /x9d/x93 -+ /x9d/x94 -+ /x9d/x95 -+ /x9d/x96 -+ /x9d/x97 -+ /x9d/x98 -+ /x9d/x99 -+ /x9d/x9a -+ /x9d/x9b -+ /x9d/x9c -+ /x9d/x9d -+ /x9d/x9e -+ /x9d/x9f -+ /x9d/xa0 -+ /x9d/xa1 -+ /x9d/xa2 -+ /x9d/xa3 -+ /x9d/xa4 -+ /x9d/xa5 -+ /x9d/xa6 -+ /x9d/xa7 -+ /x9d/xa8 -+ /x9d/xa9 -+ /x9d/xaa -+ /x9d/xab -+ /x9d/xac -+ /x9d/xad -+ /x9d/xae -+ /x9d/xaf -+ /x9d/xb0 -+ /x9d/xb1 -+ /x9d/xb2 -+ /x9d/xb3 -+ /x9d/xb4 -+ /x9d/xb5 -+ /x9d/xb6 -+ /x9d/xb7 -+ /x9d/xb8 -+ /x9d/xb9 -+ /x9d/xba -+ /x9d/xbb -+ /x9d/xbc -+ /x9d/xbd -+ /x9d/xbe -+ /x9d/xbf -+ /x9d/xc0 -+ /x9d/xc1 -+ /x9d/xc2 -+ /x9d/xc3 -+ /x9d/xc4 -+ /x9d/xc5 -+ /x9d/xc6 -+ /x9d/xc7 -+ /x9d/xc8 -+ /x9d/xc9 -+ /x9d/xca -+ /x9d/xcb -+ /x9d/xcc -+ /x9d/xcd -+ /x9d/xce -+ /x9d/xcf -+ /x9d/xd0 -+ /x9d/xd1 -+ /x9d/xd2 -+ /x9d/xd3 -+ /x9d/xd4 -+ /x9d/xd5 -+ /x9d/xd6 -+ /x9d/xd7 -+ /x9d/xd8 -+ /x9d/xd9 -+ /x9d/xda -+ /x9d/xdb -+ /x9d/xdc -+ /x9d/xdd -+ /x9d/xde -+ /x9d/xdf -+ /x9d/xe0 -+ /x9d/xe1 -+ /x9d/xe2 -+ /x9d/xe3 -+ /x9d/xe4 -+ /x9d/xe5 -+ /x9d/xe6 -+ /x9d/xe7 -+ /x9d/xe8 -+ /x9d/xe9 -+ /x9d/xea -+ /x9d/xeb -+ /x9d/xec -+ /x9d/xed -+ /x9d/xee -+ /x9d/xef -+ /x9d/xf0 -+ /x9d/xf1 -+ /x9d/xf2 -+ /x9d/xf3 -+ /x9d/xf4 -+ /x9d/xf5 -+ /x9d/xf6 -+ /x9d/xf7 -+ /x9d/xf8 -+ /x9d/xf9 -+ /x9d/xfa -+ /x9d/xfb -+ /x9d/xfc -+ /x9e/x40 -+ /x9e/x41 -+ /x9e/x42 -+ /x9e/x43 -+ /x9e/x44 -+ /x9e/x45 -+ /x9e/x46 -+ /x9e/x47 -+ /x9e/x48 -+ /x9e/x49 -+ /x9e/x4a -+ /x9e/x4b -+ /x9e/x4c -+ /x9e/x4d -+ /x9e/x4e -+ /x9e/x4f -+ /x9e/x50 -+ /x9e/x51 -+ /x9e/x52 -+ /x9e/x53 -+ /x9e/x54 -+ /x9e/x55 -+ /x9e/x56 -+ /x9e/x57 -+ /x9e/x58 -+ /x9e/x59 -+ /x9e/x5a -+ /x9e/x5b -+ /x9e/x5c -+ /x9e/x5d -+ /x9e/x5e -+ /x9e/x5f -+ /x9e/x60 -+ /x9e/x61 -+ /x9e/x62 -+ /x9e/x63 -+ /x9e/x64 -+ /x9e/x65 -+ /x9e/x66 -+ /x9e/x67 -+ /x9e/x68 -+ /x9e/x69 -+ /x9e/x6a -+ /x9e/x6b -+ /x9e/x6c -+ /x9e/x6d -+ /x9e/x6e -+ /x9e/x6f -+ /x9e/x70 -+ /x9e/x71 -+ /x9e/x72 -+ /x9e/x73 -+ /x9e/x74 -+ /x9e/x75 -+ /x9e/x76 -+ /x9e/x77 -+ /x9e/x78 -+ /x9e/x79 -+ /x9e/x7a -+ /x9e/x7b -+ /x9e/x7c -+ /x9e/x7d -+ /x9e/x7e -+ /x9e/x80 -+ /x9e/x81 -+ /x9e/x82 -+ /x9e/x83 -+ /x9e/x84 -+ /x9e/x85 -+ /x9e/x86 -+ /x9e/x87 -+ /x9e/x88 -+ /x9e/x89 -+ /x9e/x8a -+ /x9e/x8b -+ /x9e/x8c -+ /x9e/x8d -+ /x9e/x8e -+ /x9e/x8f -+ /x9e/x90 -+ /x9e/x91 -+ /x9e/x92 -+ /x9e/x93 -+ /x9e/x94 -+ /x9e/x95 -+ /x9e/x96 -+ /x9e/x97 -+ /x9e/x98 -+ /x9e/x99 -+ /x9e/x9a -+ /x9e/x9b -+ /x9e/x9c -+ /x9e/x9d -+ /x9e/x9e -+ /x9e/x9f -+ /x9e/xa0 -+ /x9e/xa1 -+ /x9e/xa2 -+ /x9e/xa3 -+ /x9e/xa4 -+ /x9e/xa5 -+ /x9e/xa6 -+ /x9e/xa7 -+ /x9e/xa8 -+ /x9e/xa9 -+ /x9e/xaa -+ /x9e/xab -+ /x9e/xac -+ /x9e/xad -+ /x9e/xae -+ /x9e/xaf -+ /x9e/xb0 -+ /x9e/xb1 -+ /x9e/xb2 -+ /x9e/xb3 -+ /x9e/xb4 -+ /x9e/xb5 -+ /x9e/xb6 -+ /x9e/xb7 -+ /x9e/xb8 -+ /x9e/xb9 -+ /x9e/xba -+ /x9e/xbb -+ /x9e/xbc -+ /x9e/xbd -+ /x9e/xbe -+ /x9e/xbf -+ /x9e/xc0 -+ /x9e/xc1 -+ /x9e/xc2 -+ /x9e/xc3 -+ /x9e/xc4 -+ /x9e/xc5 -+ /x9e/xc6 -+ /x9e/xc7 -+ /x9e/xc8 -+ /x9e/xc9 -+ /x9e/xca -+ /x9e/xcb -+ /x9e/xcc -+ /x9e/xcd -+ /x9e/xce -+ /x9e/xcf -+ /x9e/xd0 -+ /x9e/xd1 -+ /x9e/xd2 -+ /x9e/xd3 -+ /x9e/xd4 -+ /x9e/xd5 -+ /x9e/xd6 -+ /x9e/xd7 -+ /x9e/xd8 -+ /x9e/xd9 -+ /x9e/xda -+ /x9e/xdb -+ /x9e/xdc -+ /x9e/xdd -+ /x9e/xde -+ /x9e/xdf -+ /x9e/xe0 -+ /x9e/xe1 -+ /x9e/xe2 -+ /x9e/xe3 -+ /x9e/xe4 -+ /x9e/xe5 -+ /x9e/xe6 -+ /x9e/xe7 -+ /x9e/xe8 -+ /x9e/xe9 -+ /x9e/xea -+ /x9e/xeb -+ /x9e/xec -+ /x9e/xed -+ /x9e/xee -+ /x9e/xef -+ /x9e/xf0 -+ /x9e/xf1 -+ /x9e/xf2 -+ /x9e/xf3 -+ /x9e/xf4 -+ /x9e/xf5 -+ /x9e/xf6 -+ /x9e/xf7 -+ /x9e/xf8 -+ /x9e/xf9 -+ /x9e/xfa -+ /x9e/xfb -+ /x9e/xfc -+ /x9f/x40 -+ /x9f/x41 -+ /x9f/x42 -+ /x9f/x43 -+ /x9f/x44 -+ /x9f/x45 -+ /x9f/x46 -+ /x9f/x47 -+ /x9f/x48 -+ /x9f/x49 -+ /x9f/x4a -+ /x9f/x4b -+ /x9f/x4c -+ /x9f/x4d -+ /x9f/x4e -+ /x9f/x4f -+ /x9f/x50 -+ /x9f/x51 -+ /x9f/x52 -+ /x9f/x53 -+ /x9f/x54 -+ /x9f/x55 -+ /x9f/x56 -+ /x9f/x57 -+ /x9f/x58 -+ /x9f/x59 -+ /x9f/x5a -+ /x9f/x5b -+ /x9f/x5c -+ /x9f/x5d -+ /x9f/x5e -+ /x9f/x5f -+ /x9f/x60 -+ /x9f/x61 -+ /x9f/x62 -+ /x9f/x63 -+ /x9f/x64 -+ /x9f/x65 -+ /x9f/x66 -+ /x9f/x67 -+ /x9f/x68 -+ /x9f/x69 -+ /x9f/x6a -+ /x9f/x6b -+ /x9f/x6c -+ /x9f/x6d -+ /x9f/x6e -+ /x9f/x6f -+ /x9f/x70 -+ /x9f/x71 -+ /x9f/x72 -+ /x9f/x73 -+ /x9f/x74 -+ /x9f/x75 -+ /x9f/x76 -+ /x9f/x77 -+ /x9f/x78 -+ /x9f/x79 -+ /x9f/x7a -+ /x9f/x7b -+ /x9f/x7c -+ /x9f/x7d -+ /x9f/x7e -+ /x9f/x80 -+ /x9f/x81 -+ /x9f/x82 -+ /x9f/x83 -+ /x9f/x84 -+ /x9f/x85 -+ /x9f/x86 -+ /x9f/x87 -+ /x9f/x88 -+ /x9f/x89 -+ /x9f/x8a -+ /x9f/x8b -+ /x9f/x8c -+ /x9f/x8d -+ /x9f/x8e -+ /x9f/x8f -+ /x9f/x90 -+ /x9f/x91 -+ /x9f/x92 -+ /x9f/x93 -+ /x9f/x94 -+ /x9f/x95 -+ /x9f/x96 -+ /x9f/x97 -+ /x9f/x98 -+ /x9f/x99 -+ /x9f/x9a -+ /x9f/x9b -+ /x9f/x9c -+ /x9f/x9d -+ /x9f/x9e -+ /x9f/x9f -+ /x9f/xa0 -+ /x9f/xa1 -+ /x9f/xa2 -+ /x9f/xa3 -+ /x9f/xa4 -+ /x9f/xa5 -+ /x9f/xa6 -+ /x9f/xa7 -+ /x9f/xa8 -+ /x9f/xa9 -+ /x9f/xaa -+ /x9f/xab -+ /x9f/xac -+ /x9f/xad -+ /x9f/xae -+ /x9f/xaf -+ /x9f/xb0 -+ /x9f/xb1 -+ /x9f/xb2 -+ /x9f/xb3 -+ /x9f/xb4 -+ /x9f/xb5 -+ /x9f/xb6 -+ /x9f/xb7 -+ /x9f/xb8 -+ /x9f/xb9 -+ /x9f/xba -+ /x9f/xbb -+ /x9f/xbc -+ /x9f/xbd -+ /x9f/xbe -+ /x9f/xbf -+ /x9f/xc0 -+ /x9f/xc1 -+ /x9f/xc2 -+ /x9f/xc3 -+ /x9f/xc4 -+ /x9f/xc5 -+ /x9f/xc6 -+ /x9f/xc7 -+ /x9f/xc8 -+ /x9f/xc9 -+ /x9f/xca -+ /x9f/xcb -+ /x9f/xcc -+ /x9f/xcd -+ /x9f/xce -+ /x9f/xcf -+ /x9f/xd0 -+ /x9f/xd1 -+ /x9f/xd2 -+ /x9f/xd3 -+ /x9f/xd4 -+ /x9f/xd5 -+ /x9f/xd6 -+ /x9f/xd7 -+ /x9f/xd8 -+ /x9f/xd9 -+ /x9f/xda -+ /x9f/xdb -+ /x9f/xdc -+ /x9f/xdd -+ /x9f/xde -+ /x9f/xdf -+ /x9f/xe0 -+ /x9f/xe1 -+ /x9f/xe2 -+ /x9f/xe3 -+ /x9f/xe4 -+ /x9f/xe5 -+ /x9f/xe6 -+ /x9f/xe7 -+ /x9f/xe8 -+ /x9f/xe9 -+ /x9f/xea -+ /x9f/xeb -+ /x9f/xec -+ /x9f/xed -+ /x9f/xee -+ /x9f/xef -+ /x9f/xf0 -+ /x9f/xf1 -+ /x9f/xf2 -+ /x9f/xf3 -+ /x9f/xf4 -+ /x9f/xf5 -+ /x9f/xf6 -+ /x9f/xf7 -+ /x9f/xf8 -+ /x9f/xf9 -+ /x9f/xfa -+ /x9f/xfb -+ /x9f/xfc -+ -+ /xa1 HALFWIDTH IDEOGRAPHIC FULL STOP -+ /xa2 HALFWIDTH LEFT CORNER BRACKET -+ /xa3 HALFWIDTH RIGHT CORNER BRACKET -+ /xa4 HALFWIDTH IDEOGRAPHIC COMMA -+ /xa5 HALFWIDTH KATAKANA MIDDLE DOT -+ /xa6 HALFWIDTH KATAKANA LETTER WO -+ /xa7 HALFWIDTH KATAKANA LETTER SMALL A -+ /xa8 HALFWIDTH KATAKANA LETTER SMALL I -+ /xa9 HALFWIDTH KATAKANA LETTER SMALL U -+ /xaa HALFWIDTH KATAKANA LETTER SMALL E -+ /xab HALFWIDTH KATAKANA LETTER SMALL O -+ /xac HALFWIDTH KATAKANA LETTER SMALL YA -+ /xad HALFWIDTH KATAKANA LETTER SMALL YU -+ /xae HALFWIDTH KATAKANA LETTER SMALL YO -+ /xaf HALFWIDTH KATAKANA LETTER SMALL TU -+ /xb0 HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK -+ /xb1 HALFWIDTH KATAKANA LETTER A -+ /xb2 HALFWIDTH KATAKANA LETTER I -+ /xb3 HALFWIDTH KATAKANA LETTER U -+ /xb4 HALFWIDTH KATAKANA LETTER E -+ /xb5 HALFWIDTH KATAKANA LETTER O -+ /xb6 HALFWIDTH KATAKANA LETTER KA -+ /xb7 HALFWIDTH KATAKANA LETTER KI -+ /xb8 HALFWIDTH KATAKANA LETTER KU -+ /xb9 HALFWIDTH KATAKANA LETTER KE -+ /xba HALFWIDTH KATAKANA LETTER KO -+ /xbb HALFWIDTH KATAKANA LETTER SA -+ /xbc HALFWIDTH KATAKANA LETTER SI -+ /xbd HALFWIDTH KATAKANA LETTER SU -+ /xbe HALFWIDTH KATAKANA LETTER SE -+ /xbf HALFWIDTH KATAKANA LETTER SO -+ /xc0 HALFWIDTH KATAKANA LETTER TA -+ /xc1 HALFWIDTH KATAKANA LETTER TI -+ /xc2 HALFWIDTH KATAKANA LETTER TU -+ /xc3 HALFWIDTH KATAKANA LETTER TE -+ /xc4 HALFWIDTH KATAKANA LETTER TO -+ /xc5 HALFWIDTH KATAKANA LETTER NA -+ /xc6 HALFWIDTH KATAKANA LETTER NI -+ /xc7 HALFWIDTH KATAKANA LETTER NU -+ /xc8 HALFWIDTH KATAKANA LETTER NE -+ /xc9 HALFWIDTH KATAKANA LETTER NO -+ /xca HALFWIDTH KATAKANA LETTER HA -+ /xcb HALFWIDTH KATAKANA LETTER HI -+ /xcc HALFWIDTH KATAKANA LETTER HU -+ /xcd HALFWIDTH KATAKANA LETTER HE -+ /xce HALFWIDTH KATAKANA LETTER HO -+ /xcf HALFWIDTH KATAKANA LETTER MA -+ /xd0 HALFWIDTH KATAKANA LETTER MI -+ /xd1 HALFWIDTH KATAKANA LETTER MU -+ /xd2 HALFWIDTH KATAKANA LETTER ME -+ /xd3 HALFWIDTH KATAKANA LETTER MO -+ /xd4 HALFWIDTH KATAKANA LETTER YA -+ /xd5 HALFWIDTH KATAKANA LETTER YU -+ /xd6 HALFWIDTH KATAKANA LETTER YO -+ /xd7 HALFWIDTH KATAKANA LETTER RA -+ /xd8 HALFWIDTH KATAKANA LETTER RI -+ /xd9 HALFWIDTH KATAKANA LETTER RU -+ /xda HALFWIDTH KATAKANA LETTER RE -+ /xdb HALFWIDTH KATAKANA LETTER RO -+ /xdc HALFWIDTH KATAKANA LETTER WA -+ /xdd HALFWIDTH KATAKANA LETTER N -+ /xde HALFWIDTH KATAKANA VOICED SOUND MARK -+ /xdf HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK -+ -+ /xe0/x40 -+ /xe0/x41 -+ /xe0/x42 -+ /xe0/x43 -+ /xe0/x44 -+ /xe0/x45 -+ /xe0/x46 -+ /xe0/x47 -+ /xe0/x48 -+ /xe0/x49 -+ /xe0/x4a -+ /xe0/x4b -+ /xe0/x4c -+ /xe0/x4d -+ /xe0/x4e -+ /xe0/x4f -+ /xe0/x50 -+ /xe0/x51 -+ /xe0/x52 -+ /xe0/x53 -+ /xe0/x54 -+ /xe0/x55 -+ /xe0/x56 -+ /xe0/x57 -+ /xe0/x58 -+ /xe0/x59 -+ /xe0/x5a -+ /xe0/x5b -+ /xe0/x5c -+ /xe0/x5d -+ /xe0/x5e -+ /xe0/x5f -+ /xe0/x60 -+ /xe0/x61 -+ /xe0/x62 -+ /xe0/x63 -+ /xe0/x64 -+ /xe0/x65 -+ /xe0/x66 -+ /xe0/x67 -+ /xe0/x68 -+ /xe0/x69 -+ /xe0/x6a -+ /xe0/x6b -+ /xe0/x6c -+ /xe0/x6d -+ /xe0/x6e -+ /xe0/x6f -+ /xe0/x70 -+ /xe0/x71 -+ /xe0/x72 -+ /xe0/x73 -+ /xe0/x74 -+ /xe0/x75 -+ /xe0/x76 -+ /xe0/x77 -+ /xe0/x78 -+ /xe0/x79 -+ /xe0/x7a -+ /xe0/x7b -+ /xe0/x7c -+ /xe0/x7d -+ /xe0/x7e -+ /xe0/x80 -+ /xe0/x81 -+ /xe0/x82 -+ /xe0/x83 -+ /xe0/x84 -+ /xe0/x85 -+ /xe0/x86 -+ /xe0/x87 -+ /xe0/x88 -+ /xe0/x89 -+ /xe0/x8a -+ /xe0/x8b -+ /xe0/x8c -+ /xe0/x8d -+ /xe0/x8e -+ /xe0/x8f -+ /xe0/x90 -+ /xe0/x91 -+ /xe0/x92 -+ /xe0/x93 -+ /xe0/x94 -+ /xe0/x95 -+ /xe0/x96 -+ /xe0/x97 -+ /xe0/x98 -+ /xe0/x99 -+ /xe0/x9a -+ /xe0/x9b -+ /xe0/x9c -+ /xe0/x9d -+ /xe0/x9e -+ /xe0/x9f -+ /xe0/xa0 -+ /xe0/xa1 -+ /xe0/xa2 -+ /xe0/xa3 -+ /xe0/xa4 -+ /xe0/xa5 -+ /xe0/xa6 -+ /xe0/xa7 -+ /xe0/xa8 -+ /xe0/xa9 -+ /xe0/xaa -+ /xe0/xab -+ /xe0/xac -+ /xe0/xad -+ /xe0/xae -+ /xe0/xaf -+ /xe0/xb0 -+ /xe0/xb1 -+ /xe0/xb2 -+ /xe0/xb3 -+ /xe0/xb4 -+ /xe0/xb5 -+ /xe0/xb6 -+ /xe0/xb7 -+ /xe0/xb8 -+ /xe0/xb9 -+ /xe0/xba -+ /xe0/xbb -+ /xe0/xbc -+ /xe0/xbd -+ /xe0/xbe -+ /xe0/xbf -+ /xe0/xc0 -+ /xe0/xc1 -+ /xe0/xc2 -+ /xe0/xc3 -+ /xe0/xc4 -+ /xe0/xc5 -+ /xe0/xc6 -+ /xe0/xc7 -+ /xe0/xc8 -+ /xe0/xc9 -+ /xe0/xca -+ /xe0/xcb -+ /xe0/xcc -+ /xe0/xcd -+ /xe0/xce -+ /xe0/xcf -+ /xe0/xd0 -+ /xe0/xd1 -+ /xe0/xd2 -+ /xe0/xd3 -+ /xe0/xd4 -+ /xe0/xd5 -+ /xe0/xd6 -+ /xe0/xd7 -+ /xe0/xd8 -+ /xe0/xd9 -+ /xe0/xda -+ /xe0/xdb -+ /xe0/xdc -+ /xe0/xdd -+ /xe0/xde -+ /xe0/xdf -+ /xe0/xe0 -+ /xe0/xe1 -+ /xe0/xe2 -+ /xe0/xe3 -+ /xe0/xe4 -+ /xe0/xe5 -+ /xe0/xe6 -+ /xe0/xe7 -+ /xe0/xe8 -+ /xe0/xe9 -+ /xe0/xea -+ /xe0/xeb -+ /xe0/xec -+ /xe0/xed -+ /xe0/xee -+ /xe0/xef -+ /xe0/xf0 -+ /xe0/xf1 -+ /xe0/xf2 -+ /xe0/xf3 -+ /xe0/xf4 -+ /xe0/xf5 -+ /xe0/xf6 -+ /xe0/xf7 -+ /xe0/xf8 -+ /xe0/xf9 -+ /xe0/xfa -+ /xe0/xfb -+ /xe0/xfc -+ /xe1/x40 -+ /xe1/x41 -+ /xe1/x42 -+ /xe1/x43 -+ /xe1/x44 -+ /xe1/x45 -+ /xe1/x46 -+ /xe1/x47 -+ /xe1/x48 -+ /xe1/x49 -+ /xe1/x4a -+ /xe1/x4b -+ /xe1/x4c -+ /xe1/x4d -+ /xe1/x4e -+ /xe1/x4f -+ /xe1/x50 -+ /xe1/x51 -+ /xe1/x52 -+ /xe1/x53 -+ /xe1/x54 -+ /xe1/x55 -+ /xe1/x56 -+ /xe1/x57 -+ /xe1/x58 -+ /xe1/x59 -+ /xe1/x5a -+ /xe1/x5b -+ /xe1/x5c -+ /xe1/x5d -+ /xe1/x5e -+ /xe1/x5f -+ /xe1/x60 -+ /xe1/x61 -+ /xe1/x62 -+ /xe1/x63 -+ /xe1/x64 -+ /xe1/x65 -+ /xe1/x66 -+ /xe1/x67 -+ /xe1/x68 -+ /xe1/x69 -+ /xe1/x6a -+ /xe1/x6b -+ /xe1/x6c -+ /xe1/x6d -+ /xe1/x6e -+ /xe1/x6f -+ /xe1/x70 -+ /xe1/x71 -+ /xe1/x72 -+ /xe1/x73 -+ /xe1/x74 -+ /xe1/x75 -+ /xe1/x76 -+ /xe1/x77 -+ /xe1/x78 -+ /xe1/x79 -+ /xe1/x7a -+ /xe1/x7b -+ /xe1/x7c -+ /xe1/x7d -+ /xe1/x7e -+ /xe1/x80 -+ /xe1/x81 -+ /xe1/x82 -+ /xe1/x83 -+ /xe1/x84 -+ /xe1/x85 -+ /xe1/x86 -+ /xe1/x87 -+ /xe1/x88 -+ /xe1/x89 -+ /xe1/x8a -+ /xe1/x8b -+ /xe1/x8c -+ /xe1/x8d -+ /xe1/x8e -+ /xe1/x8f -+ /xe1/x90 -+ /xe1/x91 -+ /xe1/x92 -+ /xe1/x93 -+ /xe1/x94 -+ /xe1/x95 -+ /xe1/x96 -+ /xe1/x97 -+ /xe1/x98 -+ /xe1/x99 -+ /xe1/x9a -+ /xe1/x9b -+ /xe1/x9c -+ /xe1/x9d -+ /xe1/x9e -+ /xe1/x9f -+ /xe1/xa0 -+ /xe1/xa1 -+ /xe1/xa2 -+ /xe1/xa3 -+ /xe1/xa4 -+ /xe1/xa5 -+ /xe1/xa6 -+ /xe1/xa7 -+ /xe1/xa8 -+ /xe1/xa9 -+ /xe1/xaa -+ /xe1/xab -+ /xe1/xac -+ /xe1/xad -+ /xe1/xae -+ /xe1/xaf -+ /xe1/xb0 -+ /xe1/xb1 -+ /xe1/xb2 -+ /xe1/xb3 -+ /xe1/xb4 -+ /xe1/xb5 -+ /xe1/xb6 -+ /xe1/xb7 -+ /xe1/xb8 -+ /xe1/xb9 -+ /xe1/xba -+ /xe1/xbb -+ /xe1/xbc -+ /xe1/xbd -+ /xe1/xbe -+ /xe1/xbf -+ /xe1/xc0 -+ /xe1/xc1 -+ /xe1/xc2 -+ /xe1/xc3 -+ /xe1/xc4 -+ /xe1/xc5 -+ /xe1/xc6 -+ /xe1/xc7 -+ /xe1/xc8 -+ /xe1/xc9 -+ /xe1/xca -+ /xe1/xcb -+ /xe1/xcc -+ /xe1/xcd -+ /xe1/xce -+ /xe1/xcf -+ /xe1/xd0 -+ /xe1/xd1 -+ /xe1/xd2 -+ /xe1/xd3 -+ /xe1/xd4 -+ /xe1/xd5 -+ /xe1/xd6 -+ /xe1/xd7 -+ /xe1/xd8 -+ /xe1/xd9 -+ /xe1/xda -+ /xe1/xdb -+ /xe1/xdc -+ /xe1/xdd -+ /xe1/xde -+ /xe1/xdf -+ /xe1/xe0 -+ /xe1/xe1 -+ /xe1/xe2 -+ /xe1/xe3 -+ /xe1/xe4 -+ /xe1/xe5 -+ /xe1/xe6 -+ /xe1/xe7 -+ /xe1/xe8 -+ /xe1/xe9 -+ /xe1/xea -+ /xe1/xeb -+ /xe1/xec -+ /xe1/xed -+ /xe1/xee -+ /xe1/xef -+ /xe1/xf0 -+ /xe1/xf1 -+ /xe1/xf2 -+ /xe1/xf3 -+ /xe1/xf4 -+ /xe1/xf5 -+ /xe1/xf6 -+ /xe1/xf7 -+ /xe1/xf8 -+ /xe1/xf9 -+ /xe1/xfa -+ /xe1/xfb -+ /xe1/xfc -+ /xe2/x40 -+ /xe2/x41 -+ /xe2/x42 -+ /xe2/x43 -+ /xe2/x44 -+ /xe2/x45 -+ /xe2/x46 -+ /xe2/x47 -+ /xe2/x48 -+ /xe2/x49 -+ /xe2/x4a -+ /xe2/x4b -+ /xe2/x4c -+ /xe2/x4d -+ /xe2/x4e -+ /xe2/x4f -+ /xe2/x50 -+ /xe2/x51 -+ /xe2/x52 -+ /xe2/x53 -+ /xe2/x54 -+ /xe2/x55 -+ /xe2/x56 -+ /xe2/x57 -+ /xe2/x58 -+ /xe2/x59 -+ /xe2/x5a -+ /xe2/x5b -+ /xe2/x5c -+ /xe2/x5d -+ /xe2/x5e -+ /xe2/x5f -+ /xe2/x60 -+ /xe2/x61 -+ /xe2/x62 -+ /xe2/x63 -+ /xe2/x64 -+ /xe2/x65 -+ /xe2/x66 -+ /xe2/x67 -+ /xe2/x68 -+ /xe2/x69 -+ /xe2/x6a -+ /xe2/x6b -+ /xe2/x6c -+ /xe2/x6d -+ /xe2/x6e -+ /xe2/x6f -+ /xe2/x70 -+ /xe2/x71 -+ /xe2/x72 -+ /xe2/x73 -+ /xe2/x74 -+ /xe2/x75 -+ /xe2/x76 -+ /xe2/x77 -+ /xe2/x78 -+ /xe2/x79 -+ /xe2/x7a -+ /xe2/x7b -+ /xe2/x7c -+ /xe2/x7d -+ /xe2/x7e -+ /xe2/x80 -+ /xe2/x81 -+ /xe2/x82 -+ /xe2/x83 -+ /xe2/x84 -+ /xe2/x85 -+ /xe2/x86 -+ /xe2/x87 -+ /xe2/x88 -+ /xe2/x89 -+ /xe2/x8a -+ /xe2/x8b -+ /xe2/x8c -+ /xe2/x8d -+ /xe2/x8e -+ /xe2/x8f -+ /xe2/x90 -+ /xe2/x91 -+ /xe2/x92 -+ /xe2/x93 -+ /xe2/x94 -+ /xe2/x95 -+ /xe2/x96 -+ /xe2/x97 -+ /xe2/x98 -+ /xe2/x99 -+ /xe2/x9a -+ /xe2/x9b -+ /xe2/x9c -+ /xe2/x9d -+ /xe2/x9e -+ /xe2/x9f -+ /xe2/xa0 -+ /xe2/xa1 -+ /xe2/xa2 -+ /xe2/xa3 -+ /xe2/xa4 -+ /xe2/xa5 -+ /xe2/xa6 -+ /xe2/xa7 -+ /xe2/xa8 -+ /xe2/xa9 -+ /xe2/xaa -+ /xe2/xab -+ /xe2/xac -+ /xe2/xad -+ /xe2/xae -+ /xe2/xaf -+ /xe2/xb0 -+ /xe2/xb1 -+ /xe2/xb2 -+ /xe2/xb3 -+ /xe2/xb4 -+ /xe2/xb5 -+ /xe2/xb6 -+ /xe2/xb7 -+ /xe2/xb8 -+ /xe2/xb9 -+ /xe2/xba -+ /xe2/xbb -+ /xe2/xbc -+ /xe2/xbd -+ /xe2/xbe -+ /xe2/xbf -+ /xe2/xc0 -+ /xe2/xc1 -+ /xe2/xc2 -+ /xe2/xc3 -+ /xe2/xc4 -+ /xe2/xc5 -+ /xe2/xc6 -+ /xe2/xc7 -+ /xe2/xc8 -+ /xe2/xc9 -+ /xe2/xca -+ /xe2/xcb -+ /xe2/xcc -+ /xe2/xcd -+ /xe2/xce -+ /xe2/xcf -+ /xe2/xd0 -+ /xe2/xd1 -+ /xe2/xd2 -+ /xe2/xd3 -+ /xe2/xd4 -+ /xe2/xd5 -+ /xe2/xd6 -+ /xe2/xd7 -+ /xe2/xd8 -+ /xe2/xd9 -+ /xe2/xda -+ /xe2/xdb -+ /xe2/xdc -+ /xe2/xdd -+ /xe2/xde -+ /xe2/xdf -+ /xe2/xe0 -+ /xe2/xe1 -+ /xe2/xe2 -+ /xe2/xe3 -+ /xe2/xe4 -+ /xe2/xe5 -+ /xe2/xe6 -+ /xe2/xe7 -+ /xe2/xe8 -+ /xe2/xe9 -+ /xe2/xea -+ /xe2/xeb -+ /xe2/xec -+ /xe2/xed -+ /xe2/xee -+ /xe2/xef -+ /xe2/xf0 -+ /xe2/xf1 -+ /xe2/xf2 -+ /xe2/xf3 -+ /xe2/xf4 -+ /xe2/xf5 -+ /xe2/xf6 -+ /xe2/xf7 -+ /xe2/xf8 -+ /xe2/xf9 -+ /xe2/xfa -+ /xe2/xfb -+ /xe2/xfc -+ /xe3/x40 -+ /xe3/x41 -+ /xe3/x42 -+ /xe3/x43 -+ /xe3/x44 -+ /xe3/x45 -+ /xe3/x46 -+ /xe3/x47 -+ /xe3/x48 -+ /xe3/x49 -+ /xe3/x4a -+ /xe3/x4b -+ /xe3/x4c -+ /xe3/x4d -+ /xe3/x4e -+ /xe3/x4f -+ /xe3/x50 -+ /xe3/x51 -+ /xe3/x52 -+ /xe3/x53 -+ /xe3/x54 -+ /xe3/x55 -+ /xe3/x56 -+ /xe3/x57 -+ /xe3/x58 -+ /xe3/x59 -+ /xe3/x5a -+ /xe3/x5b -+ /xe3/x5c -+ /xe3/x5d -+ /xe3/x5e -+ /xe3/x5f -+ /xe3/x60 -+ /xe3/x61 -+ /xe3/x62 -+ /xe3/x63 -+ /xe3/x64 -+ /xe3/x65 -+ /xe3/x66 -+ /xe3/x67 -+ /xe3/x68 -+ /xe3/x69 -+ /xe3/x6a -+ /xe3/x6b -+ /xe3/x6c -+ /xe3/x6d -+ /xe3/x6e -+ /xe3/x6f -+ /xe3/x70 -+ /xe3/x71 -+ /xe3/x72 -+ /xe3/x73 -+ /xe3/x74 -+ /xe3/x75 -+ /xe3/x76 -+ /xe3/x77 -+ /xe3/x78 -+ /xe3/x79 -+ /xe3/x7a -+ /xe3/x7b -+ /xe3/x7c -+ /xe3/x7d -+ /xe3/x7e -+ /xe3/x80 -+ /xe3/x81 -+ /xe3/x82 -+ /xe3/x83 -+ /xe3/x84 -+ /xe3/x85 -+ /xe3/x86 -+ /xe3/x87 -+ /xe3/x88 -+ /xe3/x89 -+ /xe3/x8a -+ /xe3/x8b -+ /xe3/x8c -+ /xe3/x8d -+ /xe3/x8e -+ /xe3/x8f -+ /xe3/x90 -+ /xe3/x91 -+ /xe3/x92 -+ /xe3/x93 -+ /xe3/x94 -+ /xe3/x95 -+ /xe3/x96 -+ /xe3/x97 -+ /xe3/x98 -+ /xe3/x99 -+ /xe3/x9a -+ /xe3/x9b -+ /xe3/x9c -+ /xe3/x9d -+ /xe3/x9e -+ /xe3/x9f -+ /xe3/xa0 -+ /xe3/xa1 -+ /xe3/xa2 -+ /xe3/xa3 -+ /xe3/xa4 -+ /xe3/xa5 -+ /xe3/xa6 -+ /xe3/xa7 -+ /xe3/xa8 -+ /xe3/xa9 -+ /xe3/xaa -+ /xe3/xab -+ /xe3/xac -+ /xe3/xad -+ /xe3/xae -+ /xe3/xaf -+ /xe3/xb0 -+ /xe3/xb1 -+ /xe3/xb2 -+ /xe3/xb3 -+ /xe3/xb4 -+ /xe3/xb5 -+ /xe3/xb6 -+ /xe3/xb7 -+ /xe3/xb8 -+ /xe3/xb9 -+ /xe3/xba -+ /xe3/xbb -+ /xe3/xbc -+ /xe3/xbd -+ /xe3/xbe -+ /xe3/xbf -+ /xe3/xc0 -+ /xe3/xc1 -+ /xe3/xc2 -+ /xe3/xc3 -+ /xe3/xc4 -+ /xe3/xc5 -+ /xe3/xc6 -+ /xe3/xc7 -+ /xe3/xc8 -+ /xe3/xc9 -+ /xe3/xca -+ /xe3/xcb -+ /xe3/xcc -+ /xe3/xcd -+ /xe3/xce -+ /xe3/xcf -+ /xe3/xd0 -+ /xe3/xd1 -+ /xe3/xd2 -+ /xe3/xd3 -+ /xe3/xd4 -+ /xe3/xd5 -+ /xe3/xd6 -+ /xe3/xd7 -+ /xe3/xd8 -+ /xe3/xd9 -+ /xe3/xda -+ /xe3/xdb -+ /xe3/xdc -+ /xe3/xdd -+ /xe3/xde -+ /xe3/xdf -+ /xe3/xe0 -+ /xe3/xe1 -+ /xe3/xe2 -+ /xe3/xe3 -+ /xe3/xe4 -+ /xe3/xe5 -+ /xe3/xe6 -+ /xe3/xe7 -+ /xe3/xe8 -+ /xe3/xe9 -+ /xe3/xea -+ /xe3/xeb -+ /xe3/xec -+ /xe3/xed -+ /xe3/xee -+ /xe3/xef -+ /xe3/xf0 -+ /xe3/xf1 -+ /xe3/xf2 -+ /xe3/xf3 -+ /xe3/xf4 -+ /xe3/xf5 -+ /xe3/xf6 -+ /xe3/xf7 -+ /xe3/xf8 -+ /xe3/xf9 -+ /xe3/xfa -+ /xe3/xfb -+ /xe3/xfc -+ /xe4/x40 -+ /xe4/x41 -+ /xe4/x42 -+ /xe4/x43 -+ /xe4/x44 -+ /xe4/x45 -+ /xe4/x46 -+ /xe4/x47 -+ /xe4/x48 -+ /xe4/x49 -+ /xe4/x4a -+ /xe4/x4b -+ /xe4/x4c -+ /xe4/x4d -+ /xe4/x4e -+ /xe4/x4f -+ /xe4/x50 -+ /xe4/x51 -+ /xe4/x52 -+ /xe4/x53 -+ /xe4/x54 -+ /xe4/x55 -+ /xe4/x56 -+ /xe4/x57 -+ /xe4/x58 -+ /xe4/x59 -+ /xe4/x5a -+ /xe4/x5b -+ /xe4/x5c -+ /xe4/x5d -+ /xe4/x5e -+ /xe4/x5f -+ /xe4/x60 -+ /xe4/x61 -+ /xe4/x62 -+ /xe4/x63 -+ /xe4/x64 -+ /xe4/x65 -+ /xe4/x66 -+ /xe4/x67 -+ /xe4/x68 -+ /xe4/x69 -+ /xe4/x6a -+ /xe4/x6b -+ /xe4/x6c -+ /xe4/x6d -+ /xe4/x6e -+ /xe4/x6f -+ /xe4/x70 -+ /xe4/x71 -+ /xe4/x72 -+ /xe4/x73 -+ /xe4/x74 -+ /xe4/x75 -+ /xe4/x76 -+ /xe4/x77 -+ /xe4/x78 -+ /xe4/x79 -+ /xe4/x7a -+ /xe4/x7b -+ /xe4/x7c -+ /xe4/x7d -+ /xe4/x7e -+ /xe4/x80 -+ /xe4/x81 -+ /xe4/x82 -+ /xe4/x83 -+ /xe4/x84 -+ /xe4/x85 -+ /xe4/x86 -+ /xe4/x87 -+ /xe4/x88 -+ /xe4/x89 -+ /xe4/x8a -+ /xe4/x8b -+ /xe4/x8c -+ /xe4/x8d -+ /xe4/x8e -+ /xe4/x8f -+ /xe4/x90 -+ /xe4/x91 -+ /xe4/x92 -+ /xe4/x93 -+ /xe4/x94 -+ /xe4/x95 -+ /xe4/x96 -+ /xe4/x97 -+ /xe4/x98 -+ /xe4/x99 -+ /xe4/x9a -+ /xe4/x9b -+ /xe4/x9c -+ /xe4/x9d -+ /xe4/x9e -+ /xe4/x9f -+ /xe4/xa0 -+ /xe4/xa1 -+ /xe4/xa2 -+ /xe4/xa3 -+ /xe4/xa4 -+ /xe4/xa5 -+ /xe4/xa6 -+ /xe4/xa7 -+ /xe4/xa8 -+ /xe4/xa9 -+ /xe4/xaa -+ /xe4/xab -+ /xe4/xac -+ /xe4/xad -+ /xe4/xae -+ /xe4/xaf -+ /xe4/xb0 -+ /xe4/xb1 -+ /xe4/xb2 -+ /xe4/xb3 -+ /xe4/xb4 -+ /xe4/xb5 -+ /xe4/xb6 -+ /xe4/xb7 -+ /xe4/xb8 -+ /xe4/xb9 -+ /xe4/xba -+ /xe4/xbb -+ /xe4/xbc -+ /xe4/xbd -+ /xe4/xbe -+ /xe4/xbf -+ /xe4/xc0 -+ /xe4/xc1 -+ /xe4/xc2 -+ /xe4/xc3 -+ /xe4/xc4 -+ /xe4/xc5 -+ /xe4/xc6 -+ /xe4/xc7 -+ /xe4/xc8 -+ /xe4/xc9 -+ /xe4/xca -+ /xe4/xcb -+ /xe4/xcc -+ /xe4/xcd -+ /xe4/xce -+ /xe4/xcf -+ /xe4/xd0 -+ /xe4/xd1 -+ /xe4/xd2 -+ /xe4/xd3 -+ /xe4/xd4 -+ /xe4/xd5 -+ /xe4/xd6 -+ /xe4/xd7 -+ /xe4/xd8 -+ /xe4/xd9 -+ /xe4/xda -+ /xe4/xdb -+ /xe4/xdc -+ /xe4/xdd -+ /xe4/xde -+ /xe4/xdf -+ /xe4/xe0 -+ /xe4/xe1 -+ /xe4/xe2 -+ /xe4/xe3 -+ /xe4/xe4 -+ /xe4/xe5 -+ /xe4/xe6 -+ /xe4/xe7 -+ /xe4/xe8 -+ /xe4/xe9 -+ /xe4/xea -+ /xe4/xeb -+ /xe4/xec -+ /xe4/xed -+ /xe4/xee -+ /xe4/xef -+ /xe4/xf0 -+ /xe4/xf1 -+ /xe4/xf2 -+ /xe4/xf3 -+ /xe4/xf4 -+ /xe4/xf5 -+ /xe4/xf6 -+ /xe4/xf7 -+ /xe4/xf8 -+ /xe4/xf9 -+ /xe4/xfa -+ /xe4/xfb -+ /xe4/xfc -+ /xe5/x40 -+ /xe5/x41 -+ /xe5/x42 -+ /xe5/x43 -+ /xe5/x44 -+ /xe5/x45 -+ /xe5/x46 -+ /xe5/x47 -+ /xe5/x48 -+ /xe5/x49 -+ /xe5/x4a -+ /xe5/x4b -+ /xe5/x4c -+ /xe5/x4d -+ /xe5/x4e -+ /xe5/x4f -+ /xe5/x50 -+ /xe5/x51 -+ /xe5/x52 -+ /xe5/x53 -+ /xe5/x54 -+ /xe5/x55 -+ /xe5/x56 -+ /xe5/x57 -+ /xe5/x58 -+ /xe5/x59 -+ /xe5/x5a -+ /xe5/x5b -+ /xe5/x5c -+ /xe5/x5d -+ /xe5/x5e -+ /xe5/x5f -+ /xe5/x60 -+ /xe5/x61 -+ /xe5/x62 -+ /xe5/x63 -+ /xe5/x64 -+ /xe5/x65 -+ /xe5/x66 -+ /xe5/x67 -+ /xe5/x68 -+ /xe5/x69 -+ /xe5/x6a -+ /xe5/x6b -+ /xe5/x6c -+ /xe5/x6d -+ /xe5/x6e -+ /xe5/x6f -+ /xe5/x70 -+ /xe5/x71 -+ /xe5/x72 -+ /xe5/x73 -+ /xe5/x74 -+ /xe5/x75 -+ /xe5/x76 -+ /xe5/x77 -+ /xe5/x78 -+ /xe5/x79 -+ /xe5/x7a -+ /xe5/x7b -+ /xe5/x7c -+ /xe5/x7d -+ /xe5/x7e -+ /xe5/x80 -+ /xe5/x81 -+ /xe5/x82 -+ /xe5/x83 -+ /xe5/x84 -+ /xe5/x85 -+ /xe5/x86 -+ /xe5/x87 -+ /xe5/x88 -+ /xe5/x89 -+ /xe5/x8a -+ /xe5/x8b -+ /xe5/x8c -+ /xe5/x8d -+ /xe5/x8e -+ /xe5/x8f -+ /xe5/x90 -+ /xe5/x91 -+ /xe5/x92 -+ /xe5/x93 -+ /xe5/x94 -+ /xe5/x95 -+ /xe5/x96 -+ /xe5/x97 -+ /xe5/x98 -+ /xe5/x99 -+ /xe5/x9a -+ /xe5/x9b -+ /xe5/x9c -+ /xe5/x9d -+ /xe5/x9e -+ /xe5/x9f -+ /xe5/xa0 -+ /xe5/xa1 -+ /xe5/xa2 -+ /xe5/xa3 -+ /xe5/xa4 -+ /xe5/xa5 -+ /xe5/xa6 -+ /xe5/xa7 -+ /xe5/xa8 -+ /xe5/xa9 -+ /xe5/xaa -+ /xe5/xab -+ /xe5/xac -+ /xe5/xad -+ /xe5/xae -+ /xe5/xaf -+ /xe5/xb0 -+ /xe5/xb1 -+ /xe5/xb2 -+ /xe5/xb3 -+ /xe5/xb4 -+ /xe5/xb5 -+ /xe5/xb6 -+ /xe5/xb7 -+ /xe5/xb8 -+ /xe5/xb9 -+ /xe5/xba -+ /xe5/xbb -+ /xe5/xbc -+ /xe5/xbd -+ /xe5/xbe -+ /xe5/xbf -+ /xe5/xc0 -+ /xe5/xc1 -+ /xe5/xc2 -+ /xe5/xc3 -+ /xe5/xc4 -+ /xe5/xc5 -+ /xe5/xc6 -+ /xe5/xc7 -+ /xe5/xc8 -+ /xe5/xc9 -+ /xe5/xca -+ /xe5/xcb -+ /xe5/xcc -+ /xe5/xcd -+ /xe5/xce -+ /xe5/xcf -+ /xe5/xd0 -+ /xe5/xd1 -+ /xe5/xd2 -+ /xe5/xd3 -+ /xe5/xd4 -+ /xe5/xd5 -+ /xe5/xd6 -+ /xe5/xd7 -+ /xe5/xd8 -+ /xe5/xd9 -+ /xe5/xda -+ /xe5/xdb -+ /xe5/xdc -+ /xe5/xdd -+ /xe5/xde -+ /xe5/xdf -+ /xe5/xe0 -+ /xe5/xe1 -+ /xe5/xe2 -+ /xe5/xe3 -+ /xe5/xe4 -+ /xe5/xe5 -+ /xe5/xe6 -+ /xe5/xe7 -+ /xe5/xe8 -+ /xe5/xe9 -+ /xe5/xea -+ /xe5/xeb -+ /xe5/xec -+ /xe5/xed -+ /xe5/xee -+ /xe5/xef -+ /xe5/xf0 -+ /xe5/xf1 -+ /xe5/xf2 -+ /xe5/xf3 -+ /xe5/xf4 -+ /xe5/xf5 -+ /xe5/xf6 -+ /xe5/xf7 -+ /xe5/xf8 -+ /xe5/xf9 -+ /xe5/xfa -+ /xe5/xfb -+ /xe5/xfc -+ /xe6/x40 -+ /xe6/x41 -+ /xe6/x42 -+ /xe6/x43 -+ /xe6/x44 -+ /xe6/x45 -+ /xe6/x46 -+ /xe6/x47 -+ /xe6/x48 -+ /xe6/x49 -+ /xe6/x4a -+ /xe6/x4b -+ /xe6/x4c -+ /xe6/x4d -+ /xe6/x4e -+ /xe6/x4f -+ /xe6/x50 -+ /xe6/x51 -+ /xe6/x52 -+ /xe6/x53 -+ /xe6/x54 -+ /xe6/x55 -+ /xe6/x56 -+ /xe6/x57 -+ /xe6/x58 -+ /xe6/x59 -+ /xe6/x5a -+ /xe6/x5b -+ /xe6/x5c -+ /xe6/x5d -+ /xe6/x5e -+ /xe6/x5f -+ /xe6/x60 -+ /xe6/x61 -+ /xe6/x62 -+ /xe6/x63 -+ /xe6/x64 -+ /xe6/x65 -+ /xe6/x66 -+ /xe6/x67 -+ /xe6/x68 -+ /xe6/x69 -+ /xe6/x6a -+ /xe6/x6b -+ /xe6/x6c -+ /xe6/x6d -+ /xe6/x6e -+ /xe6/x6f -+ /xe6/x70 -+ /xe6/x71 -+ /xe6/x72 -+ /xe6/x73 -+ /xe6/x74 -+ /xe6/x75 -+ /xe6/x76 -+ /xe6/x77 -+ /xe6/x78 -+ /xe6/x79 -+ /xe6/x7a -+ /xe6/x7b -+ /xe6/x7c -+ /xe6/x7d -+ /xe6/x7e -+ /xe6/x80 -+ /xe6/x81 -+ /xe6/x82 -+ /xe6/x83 -+ /xe6/x84 -+ /xe6/x85 -+ /xe6/x86 -+ /xe6/x87 -+ /xe6/x88 -+ /xe6/x89 -+ /xe6/x8a -+ /xe6/x8b -+ /xe6/x8c -+ /xe6/x8d -+ /xe6/x8e -+ /xe6/x8f -+ /xe6/x90 -+ /xe6/x91 -+ /xe6/x92 -+ /xe6/x93 -+ /xe6/x94 -+ /xe6/x95 -+ /xe6/x96 -+ /xe6/x97 -+ /xe6/x98 -+ /xe6/x99 -+ /xe6/x9a -+ /xe6/x9b -+ /xe6/x9c -+ /xe6/x9d -+ /xe6/x9e -+ /xe6/x9f -+ /xe6/xa0 -+ /xe6/xa1 -+ /xe6/xa2 -+ /xe6/xa3 -+ /xe6/xa4 -+ /xe6/xa5 -+ /xe6/xa6 -+ /xe6/xa7 -+ /xe6/xa8 -+ /xe6/xa9 -+ /xe6/xaa -+ /xe6/xab -+ /xe6/xac -+ /xe6/xad -+ /xe6/xae -+ /xe6/xaf -+ /xe6/xb0 -+ /xe6/xb1 -+ /xe6/xb2 -+ /xe6/xb3 -+ /xe6/xb4 -+ /xe6/xb5 -+ /xe6/xb6 -+ /xe6/xb7 -+ /xe6/xb8 -+ /xe6/xb9 -+ /xe6/xba -+ /xe6/xbb -+ /xe6/xbc -+ /xe6/xbd -+ /xe6/xbe -+ /xe6/xbf -+ /xe6/xc0 -+ /xe6/xc1 -+ /xe6/xc2 -+ /xe6/xc3 -+ /xe6/xc4 -+ /xe6/xc5 -+ /xe6/xc6 -+ /xe6/xc7 -+ /xe6/xc8 -+ /xe6/xc9 -+ /xe6/xca -+ /xe6/xcb -+ /xe6/xcc -+ /xe6/xcd -+ /xe6/xce -+ /xe6/xcf -+ /xe6/xd0 -+ /xe6/xd1 -+ /xe6/xd2 -+ /xe6/xd3 -+ /xe6/xd4 -+ /xe6/xd5 -+ /xe6/xd6 -+ /xe6/xd7 -+ /xe6/xd8 -+ /xe6/xd9 -+ /xe6/xda -+ /xe6/xdb -+ /xe6/xdc -+ /xe6/xdd -+ /xe6/xde -+ /xe6/xdf -+ /xe6/xe0 -+ /xe6/xe1 -+ /xe6/xe2 -+ /xe6/xe3 -+ /xe6/xe4 -+ /xe6/xe5 -+ /xe6/xe6 -+ /xe6/xe7 -+ /xe6/xe8 -+ /xe6/xe9 -+ /xe6/xea -+ /xe6/xeb -+ /xe6/xec -+ /xe6/xed -+ /xe6/xee -+ /xe6/xef -+ /xe6/xf0 -+ /xe6/xf1 -+ /xe6/xf2 -+ /xe6/xf3 -+ /xe6/xf4 -+ /xe6/xf5 -+ /xe6/xf6 -+ /xe6/xf7 -+ /xe6/xf8 -+ /xe6/xf9 -+ /xe6/xfa -+ /xe6/xfb -+ /xe6/xfc -+ /xe7/x40 -+ /xe7/x41 -+ /xe7/x42 -+ /xe7/x43 -+ /xe7/x44 -+ /xe7/x45 -+ /xe7/x46 -+ /xe7/x47 -+ /xe7/x48 -+ /xe7/x49 -+ /xe7/x4a -+ /xe7/x4b -+ /xe7/x4c -+ /xe7/x4d -+ /xe7/x4e -+ /xe7/x4f -+ /xe7/x50 -+ /xe7/x51 -+ /xe7/x52 -+ /xe7/x53 -+ /xe7/x54 -+ /xe7/x55 -+ /xe7/x56 -+ /xe7/x57 -+ /xe7/x58 -+ /xe7/x59 -+ /xe7/x5a -+ /xe7/x5b -+ /xe7/x5c -+ /xe7/x5d -+ /xe7/x5e -+ /xe7/x5f -+ /xe7/x60 -+ /xe7/x61 -+ /xe7/x62 -+ /xe7/x63 -+ /xe7/x64 -+ /xe7/x65 -+ /xe7/x66 -+ /xe7/x67 -+ /xe7/x68 -+ /xe7/x69 -+ /xe7/x6a -+ /xe7/x6b -+ /xe7/x6c -+ /xe7/x6d -+ /xe7/x6e -+ /xe7/x6f -+ /xe7/x70 -+ /xe7/x71 -+ /xe7/x72 -+ /xe7/x73 -+ /xe7/x74 -+ /xe7/x75 -+ /xe7/x76 -+ /xe7/x77 -+ /xe7/x78 -+ /xe7/x79 -+ /xe7/x7a -+ /xe7/x7b -+ /xe7/x7c -+ /xe7/x7d -+ /xe7/x7e -+ /xe7/x80 -+ /xe7/x81 -+ /xe7/x82 -+ /xe7/x83 -+ /xe7/x84 -+ /xe7/x85 -+ /xe7/x86 -+ /xe7/x87 -+ /xe7/x88 -+ /xe7/x89 -+ /xe7/x8a -+ /xe7/x8b -+ /xe7/x8c -+ /xe7/x8d -+ /xe7/x8e -+ /xe7/x8f -+ /xe7/x90 -+ /xe7/x91 -+ /xe7/x92 -+ /xe7/x93 -+ /xe7/x94 -+ /xe7/x95 -+ /xe7/x96 -+ /xe7/x97 -+ /xe7/x98 -+ /xe7/x99 -+ /xe7/x9a -+ /xe7/x9b -+ /xe7/x9c -+ /xe7/x9d -+ /xe7/x9e -+ /xe7/x9f -+ /xe7/xa0 -+ /xe7/xa1 -+ /xe7/xa2 -+ /xe7/xa3 -+ /xe7/xa4 -+ /xe7/xa5 -+ /xe7/xa6 -+ /xe7/xa7 -+ /xe7/xa8 -+ /xe7/xa9 -+ /xe7/xaa -+ /xe7/xab -+ /xe7/xac -+ /xe7/xad -+ /xe7/xae -+ /xe7/xaf -+ /xe7/xb0 -+ /xe7/xb1 -+ /xe7/xb2 -+ /xe7/xb3 -+ /xe7/xb4 -+ /xe7/xb5 -+ /xe7/xb6 -+ /xe7/xb7 -+ /xe7/xb8 -+ /xe7/xb9 -+ /xe7/xba -+ /xe7/xbb -+ /xe7/xbc -+ /xe7/xbd -+ /xe7/xbe -+ /xe7/xbf -+ /xe7/xc0 -+ /xe7/xc1 -+ /xe7/xc2 -+ /xe7/xc3 -+ /xe7/xc4 -+ /xe7/xc5 -+ /xe7/xc6 -+ /xe7/xc7 -+ /xe7/xc8 -+ /xe7/xc9 -+ /xe7/xca -+ /xe7/xcb -+ /xe7/xcc -+ /xe7/xcd -+ /xe7/xce -+ /xe7/xcf -+ /xe7/xd0 -+ /xe7/xd1 -+ /xe7/xd2 -+ /xe7/xd3 -+ /xe7/xd4 -+ /xe7/xd5 -+ /xe7/xd6 -+ /xe7/xd7 -+ /xe7/xd8 -+ /xe7/xd9 -+ /xe7/xda -+ /xe7/xdb -+ /xe7/xdc -+ /xe7/xdd -+ /xe7/xde -+ /xe7/xdf -+ /xe7/xe0 -+ /xe7/xe1 -+ /xe7/xe2 -+ /xe7/xe3 -+ /xe7/xe4 -+ /xe7/xe5 -+ /xe7/xe6 -+ /xe7/xe7 -+ /xe7/xe8 -+ /xe7/xe9 -+ /xe7/xea -+ /xe7/xeb -+ /xe7/xec -+ /xe7/xed -+ /xe7/xee -+ /xe7/xef -+ /xe7/xf0 -+ /xe7/xf1 -+ /xe7/xf2 -+ /xe7/xf3 -+ /xe7/xf4 -+ /xe7/xf5 -+ /xe7/xf6 -+ /xe7/xf7 -+ /xe7/xf8 -+ /xe7/xf9 -+ /xe7/xfa -+ /xe7/xfb -+ /xe7/xfc -+ /xe8/x40 -+ /xe8/x41 -+ /xe8/x42 -+ /xe8/x43 -+ /xe8/x44 -+ /xe8/x45 -+ /xe8/x46 -+ /xe8/x47 -+ /xe8/x48 -+ /xe8/x49 -+ /xe8/x4a -+ /xe8/x4b -+ /xe8/x4c -+ /xe8/x4d -+ /xe8/x4e -+ /xe8/x4f -+ /xe8/x50 -+ /xe8/x51 -+ /xe8/x52 -+ /xe8/x53 -+ /xe8/x54 -+ /xe8/x55 -+ /xe8/x56 -+ /xe8/x57 -+ /xe8/x58 -+ /xe8/x59 -+ /xe8/x5a -+ /xe8/x5b -+ /xe8/x5c -+ /xe8/x5d -+ /xe8/x5e -+ /xe8/x5f -+ /xe8/x60 -+ /xe8/x61 -+ /xe8/x62 -+ /xe8/x63 -+ /xe8/x64 -+ /xe8/x65 -+ /xe8/x66 -+ /xe8/x67 -+ /xe8/x68 -+ /xe8/x69 -+ /xe8/x6a -+ /xe8/x6b -+ /xe8/x6c -+ /xe8/x6d -+ /xe8/x6e -+ /xe8/x6f -+ /xe8/x70 -+ /xe8/x71 -+ /xe8/x72 -+ /xe8/x73 -+ /xe8/x74 -+ /xe8/x75 -+ /xe8/x76 -+ /xe8/x77 -+ /xe8/x78 -+ /xe8/x79 -+ /xe8/x7a -+ /xe8/x7b -+ /xe8/x7c -+ /xe8/x7d -+ /xe8/x7e -+ /xe8/x80 -+ /xe8/x81 -+ /xe8/x82 -+ /xe8/x83 -+ /xe8/x84 -+ /xe8/x85 -+ /xe8/x86 -+ /xe8/x87 -+ /xe8/x88 -+ /xe8/x89 -+ /xe8/x8a -+ /xe8/x8b -+ /xe8/x8c -+ /xe8/x8d -+ /xe8/x8e -+ /xe8/x8f -+ /xe8/x90 -+ /xe8/x91 -+ /xe8/x92 -+ /xe8/x93 -+ /xe8/x94 -+ /xe8/x95 -+ /xe8/x96 -+ /xe8/x97 -+ /xe8/x98 -+ /xe8/x99 -+ /xe8/x9a -+ /xe8/x9b -+ /xe8/x9c -+ /xe8/x9d -+ /xe8/x9e -+ /xe8/x9f -+ /xe8/xa0 -+ /xe8/xa1 -+ /xe8/xa2 -+ /xe8/xa3 -+ /xe8/xa4 -+ /xe8/xa5 -+ /xe8/xa6 -+ /xe8/xa7 -+ /xe8/xa8 -+ /xe8/xa9 -+ /xe8/xaa -+ /xe8/xab -+ /xe8/xac -+ /xe8/xad -+ /xe8/xae -+ /xe8/xaf -+ /xe8/xb0 -+ /xe8/xb1 -+ /xe8/xb2 -+ /xe8/xb3 -+ /xe8/xb4 -+ /xe8/xb5 -+ /xe8/xb6 -+ /xe8/xb7 -+ /xe8/xb8 -+ /xe8/xb9 -+ /xe8/xba -+ /xe8/xbb -+ /xe8/xbc -+ /xe8/xbd -+ /xe8/xbe -+ /xe8/xbf -+ /xe8/xc0 -+ /xe8/xc1 -+ /xe8/xc2 -+ /xe8/xc3 -+ /xe8/xc4 -+ /xe8/xc5 -+ /xe8/xc6 -+ /xe8/xc7 -+ /xe8/xc8 -+ /xe8/xc9 -+ /xe8/xca -+ /xe8/xcb -+ /xe8/xcc -+ /xe8/xcd -+ /xe8/xce -+ /xe8/xcf -+ /xe8/xd0 -+ /xe8/xd1 -+ /xe8/xd2 -+ /xe8/xd3 -+ /xe8/xd4 -+ /xe8/xd5 -+ /xe8/xd6 -+ /xe8/xd7 -+ /xe8/xd8 -+ /xe8/xd9 -+ /xe8/xda -+ /xe8/xdb -+ /xe8/xdc -+ /xe8/xdd -+ /xe8/xde -+ /xe8/xdf -+ /xe8/xe0 -+ /xe8/xe1 -+ /xe8/xe2 -+ /xe8/xe3 -+ /xe8/xe4 -+ /xe8/xe5 -+ /xe8/xe6 -+ /xe8/xe7 -+ /xe8/xe8 -+ /xe8/xe9 -+ /xe8/xea -+ /xe8/xeb -+ /xe8/xec -+ /xe8/xed -+ /xe8/xee -+ /xe8/xef -+ /xe8/xf0 -+ /xe8/xf1 -+ /xe8/xf2 -+ /xe8/xf3 -+ /xe8/xf4 -+ /xe8/xf5 -+ /xe8/xf6 -+ /xe8/xf7 -+ /xe8/xf8 -+ /xe8/xf9 -+ /xe8/xfa -+ /xe8/xfb -+ /xe8/xfc -+ /xe9/x40 -+ /xe9/x41 -+ /xe9/x42 -+ /xe9/x43 -+ /xe9/x44 -+ /xe9/x45 -+ /xe9/x46 -+ /xe9/x47 -+ /xe9/x48 -+ /xe9/x49 -+ /xe9/x4a -+ /xe9/x4b -+ /xe9/x4c -+ /xe9/x4d -+ /xe9/x4e -+ /xe9/x4f -+ /xe9/x50 -+ /xe9/x51 -+ /xe9/x52 -+ /xe9/x53 -+ /xe9/x54 -+ /xe9/x55 -+ /xe9/x56 -+ /xe9/x57 -+ /xe9/x58 -+ /xe9/x59 -+ /xe9/x5a -+ /xe9/x5b -+ /xe9/x5c -+ /xe9/x5d -+ /xe9/x5e -+ /xe9/x5f -+ /xe9/x60 -+ /xe9/x61 -+ /xe9/x62 -+ /xe9/x63 -+ /xe9/x64 -+ /xe9/x65 -+ /xe9/x66 -+ /xe9/x67 -+ /xe9/x68 -+ /xe9/x69 -+ /xe9/x6a -+ /xe9/x6b -+ /xe9/x6c -+ /xe9/x6d -+ /xe9/x6e -+ /xe9/x6f -+ /xe9/x70 -+ /xe9/x71 -+ /xe9/x72 -+ /xe9/x73 -+ /xe9/x74 -+ /xe9/x75 -+ /xe9/x76 -+ /xe9/x77 -+ /xe9/x78 -+ /xe9/x79 -+ /xe9/x7a -+ /xe9/x7b -+ /xe9/x7c -+ /xe9/x7d -+ /xe9/x7e -+ /xe9/x80 -+ /xe9/x81 -+ /xe9/x82 -+ /xe9/x83 -+ /xe9/x84 -+ /xe9/x85 -+ /xe9/x86 -+ /xe9/x87 -+ /xe9/x88 -+ /xe9/x89 -+ /xe9/x8a -+ /xe9/x8b -+ /xe9/x8c -+ /xe9/x8d -+ /xe9/x8e -+ /xe9/x8f -+ /xe9/x90 -+ /xe9/x91 -+ /xe9/x92 -+ /xe9/x93 -+ /xe9/x94 -+ /xe9/x95 -+ /xe9/x96 -+ /xe9/x97 -+ /xe9/x98 -+ /xe9/x99 -+ /xe9/x9a -+ /xe9/x9b -+ /xe9/x9c -+ /xe9/x9d -+ /xe9/x9e -+ /xe9/x9f -+ /xe9/xa0 -+ /xe9/xa1 -+ /xe9/xa2 -+ /xe9/xa3 -+ /xe9/xa4 -+ /xe9/xa5 -+ /xe9/xa6 -+ /xe9/xa7 -+ /xe9/xa8 -+ /xe9/xa9 -+ /xe9/xaa -+ /xe9/xab -+ /xe9/xac -+ /xe9/xad -+ /xe9/xae -+ /xe9/xaf -+ /xe9/xb0 -+ /xe9/xb1 -+ /xe9/xb2 -+ /xe9/xb3 -+ /xe9/xb4 -+ /xe9/xb5 -+ /xe9/xb6 -+ /xe9/xb7 -+ /xe9/xb8 -+ /xe9/xb9 -+ /xe9/xba -+ /xe9/xbb -+ /xe9/xbc -+ /xe9/xbd -+ /xe9/xbe -+ /xe9/xbf -+ /xe9/xc0 -+ /xe9/xc1 -+ /xe9/xc2 -+ /xe9/xc3 -+ /xe9/xc4 -+ /xe9/xc5 -+ /xe9/xc6 -+ /xe9/xc7 -+ /xe9/xc8 -+ /xe9/xc9 -+ /xe9/xca -+ /xe9/xcb -+ /xe9/xcc -+ /xe9/xcd -+ /xe9/xce -+ /xe9/xcf -+ /xe9/xd0 -+ /xe9/xd1 -+ /xe9/xd2 -+ /xe9/xd3 -+ /xe9/xd4 -+ /xe9/xd5 -+ /xe9/xd6 -+ /xe9/xd7 -+ /xe9/xd8 -+ /xe9/xd9 -+ /xe9/xda -+ /xe9/xdb -+ /xe9/xdc -+ /xe9/xdd -+ /xe9/xde -+ /xe9/xdf -+ /xe9/xe0 -+ /xe9/xe1 -+ /xe9/xe2 -+ /xe9/xe3 -+ /xe9/xe4 -+ /xe9/xe5 -+ /xe9/xe6 -+ /xe9/xe7 -+ /xe9/xe8 -+ /xe9/xe9 -+ /xe9/xea -+ /xe9/xeb -+ /xe9/xec -+ /xe9/xed -+ /xe9/xee -+ /xe9/xef -+ /xe9/xf0 -+ /xe9/xf1 -+ /xe9/xf2 -+ /xe9/xf3 -+ /xe9/xf4 -+ /xe9/xf5 -+ /xe9/xf6 -+ /xe9/xf7 -+ /xe9/xf8 -+ /xe9/xf9 -+ /xe9/xfa -+ /xe9/xfb -+ /xe9/xfc -+ /xea/x40 -+ /xea/x41 -+ /xea/x42 -+ /xea/x43 -+ /xea/x44 -+ /xea/x45 -+ /xea/x46 -+ /xea/x47 -+ /xea/x48 -+ /xea/x49 -+ /xea/x4a -+ /xea/x4b -+ /xea/x4c -+ /xea/x4d -+ /xea/x4e -+ /xea/x4f -+ /xea/x50 -+ /xea/x51 -+ /xea/x52 -+ /xea/x53 -+ /xea/x54 -+ /xea/x55 -+ /xea/x56 -+ /xea/x57 -+ /xea/x58 -+ /xea/x59 -+ /xea/x5a -+ /xea/x5b -+ /xea/x5c -+ /xea/x5d -+ /xea/x5e -+ /xea/x5f -+ /xea/x60 -+ /xea/x61 -+ /xea/x62 -+ /xea/x63 -+ /xea/x64 -+ /xea/x65 -+ /xea/x66 -+ /xea/x67 -+ /xea/x68 -+ /xea/x69 -+ /xea/x6a -+ /xea/x6b -+ /xea/x6c -+ /xea/x6d -+ /xea/x6e -+ /xea/x6f -+ /xea/x70 -+ /xea/x71 -+ /xea/x72 -+ /xea/x73 -+ /xea/x74 -+ /xea/x75 -+ /xea/x76 -+ /xea/x77 -+ /xea/x78 -+ /xea/x79 -+ /xea/x7a -+ /xea/x7b -+ /xea/x7c -+ /xea/x7d -+ /xea/x7e -+ /xea/x80 -+ /xea/x81 -+ /xea/x82 -+ /xea/x83 -+ /xea/x84 -+ /xea/x85 -+ /xea/x86 -+ /xea/x87 -+ /xea/x88 -+ /xea/x89 -+ /xea/x8a -+ /xea/x8b -+ /xea/x8c -+ /xea/x8d -+ /xea/x8e -+ /xea/x8f -+ /xea/x90 -+ /xea/x91 -+ /xea/x92 -+ /xea/x93 -+ /xea/x94 -+ /xea/x95 -+ /xea/x96 -+ /xea/x97 -+ /xea/x98 -+ /xea/x99 -+ /xea/x9a -+ /xea/x9b -+ /xea/x9c -+ /xea/x9d -+ /xea/x9e -+ /xea/x9f -+ /xea/xa0 -+ /xea/xa1 -+ /xea/xa2 -+ /xea/xa3 -+ /xea/xa4 -+ -+%IRREVERSIBLE% /xed/x40 -+%IRREVERSIBLE% /xed/x41 -+%IRREVERSIBLE% /xed/x42 -+%IRREVERSIBLE% /xed/x43 -+%IRREVERSIBLE% /xed/x44 -+%IRREVERSIBLE% /xed/x45 -+%IRREVERSIBLE% /xed/x46 -+%IRREVERSIBLE% /xed/x47 -+%IRREVERSIBLE% /xed/x48 -+%IRREVERSIBLE% /xed/x49 -+%IRREVERSIBLE% /xed/x4a -+%IRREVERSIBLE% /xed/x4b -+%IRREVERSIBLE% /xed/x4c -+%IRREVERSIBLE% /xed/x4d -+%IRREVERSIBLE% /xed/x4e -+%IRREVERSIBLE% /xed/x4f -+%IRREVERSIBLE% /xed/x50 -+%IRREVERSIBLE% /xed/x51 -+%IRREVERSIBLE% /xed/x52 -+%IRREVERSIBLE% /xed/x53 -+%IRREVERSIBLE% /xed/x54 -+%IRREVERSIBLE% /xed/x55 -+%IRREVERSIBLE% /xed/x56 -+%IRREVERSIBLE% /xed/x57 -+%IRREVERSIBLE% /xed/x58 -+%IRREVERSIBLE% /xed/x59 -+%IRREVERSIBLE% /xed/x5a -+%IRREVERSIBLE% /xed/x5b -+%IRREVERSIBLE% /xed/x5c -+%IRREVERSIBLE% /xed/x5d -+%IRREVERSIBLE% /xed/x5e -+%IRREVERSIBLE% /xed/x5f -+%IRREVERSIBLE% /xed/x60 -+%IRREVERSIBLE% /xed/x61 -+%IRREVERSIBLE% /xed/x62 -+%IRREVERSIBLE% /xed/x63 -+%IRREVERSIBLE% /xed/x64 -+%IRREVERSIBLE% /xed/x65 -+%IRREVERSIBLE% /xed/x66 -+%IRREVERSIBLE% /xed/x67 -+%IRREVERSIBLE% /xed/x68 -+%IRREVERSIBLE% /xed/x69 -+%IRREVERSIBLE% /xed/x6a -+%IRREVERSIBLE% /xed/x6b -+%IRREVERSIBLE% /xed/x6c -+%IRREVERSIBLE% /xed/x6d -+%IRREVERSIBLE% /xed/x6e -+%IRREVERSIBLE% /xed/x6f -+%IRREVERSIBLE% /xed/x70 -+%IRREVERSIBLE% /xed/x71 -+%IRREVERSIBLE% /xed/x72 -+%IRREVERSIBLE% /xed/x73 CJK COMPATIBILITY IDEOGRAPH-FA0E -+%IRREVERSIBLE% /xed/x74 -+%IRREVERSIBLE% /xed/x75 -+%IRREVERSIBLE% /xed/x76 -+%IRREVERSIBLE% /xed/x77 -+%IRREVERSIBLE% /xed/x78 -+%IRREVERSIBLE% /xed/x79 -+%IRREVERSIBLE% /xed/x7a -+%IRREVERSIBLE% /xed/x7b -+%IRREVERSIBLE% /xed/x7c -+%IRREVERSIBLE% /xed/x7d -+%IRREVERSIBLE% /xed/x7e CJK COMPATIBILITY IDEOGRAPH-FA0F -+%IRREVERSIBLE% /xed/x80 CJK COMPATIBILITY IDEOGRAPH-FA10 -+%IRREVERSIBLE% /xed/x81 -+%IRREVERSIBLE% /xed/x82 -+%IRREVERSIBLE% /xed/x83 -+%IRREVERSIBLE% /xed/x84 -+%IRREVERSIBLE% /xed/x85 -+%IRREVERSIBLE% /xed/x86 -+%IRREVERSIBLE% /xed/x87 -+%IRREVERSIBLE% /xed/x88 -+%IRREVERSIBLE% /xed/x89 -+%IRREVERSIBLE% /xed/x8a -+%IRREVERSIBLE% /xed/x8b -+%IRREVERSIBLE% /xed/x8c -+%IRREVERSIBLE% /xed/x8d -+%IRREVERSIBLE% /xed/x8e -+%IRREVERSIBLE% /xed/x8f -+%IRREVERSIBLE% /xed/x90 -+%IRREVERSIBLE% /xed/x91 -+%IRREVERSIBLE% /xed/x92 -+%IRREVERSIBLE% /xed/x93 -+%IRREVERSIBLE% /xed/x94 -+%IRREVERSIBLE% /xed/x95 CJK COMPATIBILITY IDEOGRAPH-FA11 -+%IRREVERSIBLE% /xed/x96 -+%IRREVERSIBLE% /xed/x97 -+%IRREVERSIBLE% /xed/x98 -+%IRREVERSIBLE% /xed/x99 -+%IRREVERSIBLE% /xed/x9a -+%IRREVERSIBLE% /xed/x9b -+%IRREVERSIBLE% /xed/x9c -+%IRREVERSIBLE% /xed/x9d -+%IRREVERSIBLE% /xed/x9e -+%IRREVERSIBLE% /xed/x9f -+%IRREVERSIBLE% /xed/xa0 -+%IRREVERSIBLE% /xed/xa1 -+%IRREVERSIBLE% /xed/xa2 -+%IRREVERSIBLE% /xed/xa3 -+%IRREVERSIBLE% /xed/xa4 -+%IRREVERSIBLE% /xed/xa5 -+%IRREVERSIBLE% /xed/xa6 -+%IRREVERSIBLE% /xed/xa7 -+%IRREVERSIBLE% /xed/xa8 -+%IRREVERSIBLE% /xed/xa9 -+%IRREVERSIBLE% /xed/xaa -+%IRREVERSIBLE% /xed/xab -+%IRREVERSIBLE% /xed/xac -+%IRREVERSIBLE% /xed/xad -+%IRREVERSIBLE% /xed/xae -+%IRREVERSIBLE% /xed/xaf -+%IRREVERSIBLE% /xed/xb0 -+%IRREVERSIBLE% /xed/xb1 -+%IRREVERSIBLE% /xed/xb2 -+%IRREVERSIBLE% /xed/xb3 -+%IRREVERSIBLE% /xed/xb4 -+%IRREVERSIBLE% /xed/xb5 -+%IRREVERSIBLE% /xed/xb6 -+%IRREVERSIBLE% /xed/xb7 -+%IRREVERSIBLE% /xed/xb8 -+%IRREVERSIBLE% /xed/xb9 -+%IRREVERSIBLE% /xed/xba -+%IRREVERSIBLE% /xed/xbb -+%IRREVERSIBLE% /xed/xbc CJK COMPATIBILITY IDEOGRAPH-FA12 -+%IRREVERSIBLE% /xed/xbd -+%IRREVERSIBLE% /xed/xbe -+%IRREVERSIBLE% /xed/xbf -+%IRREVERSIBLE% /xed/xc0 -+%IRREVERSIBLE% /xed/xc1 -+%IRREVERSIBLE% /xed/xc2 -+%IRREVERSIBLE% /xed/xc3 -+%IRREVERSIBLE% /xed/xc4 CJK COMPATIBILITY IDEOGRAPH-F929 -+%IRREVERSIBLE% /xed/xc5 -+%IRREVERSIBLE% /xed/xc6 -+%IRREVERSIBLE% /xed/xc7 -+%IRREVERSIBLE% /xed/xc8 -+%IRREVERSIBLE% /xed/xc9 -+%IRREVERSIBLE% /xed/xca -+%IRREVERSIBLE% /xed/xcb -+%IRREVERSIBLE% /xed/xcc CJK COMPATIBILITY IDEOGRAPH-FA13 -+%IRREVERSIBLE% /xed/xcd -+%IRREVERSIBLE% /xed/xce CJK COMPATIBILITY IDEOGRAPH-FA14 -+%IRREVERSIBLE% /xed/xcf -+%IRREVERSIBLE% /xed/xd0 -+%IRREVERSIBLE% /xed/xd1 -+%IRREVERSIBLE% /xed/xd2 -+%IRREVERSIBLE% /xed/xd3 -+%IRREVERSIBLE% /xed/xd4 -+%IRREVERSIBLE% /xed/xd5 -+%IRREVERSIBLE% /xed/xd6 -+%IRREVERSIBLE% /xed/xd7 -+%IRREVERSIBLE% /xed/xd8 -+%IRREVERSIBLE% /xed/xd9 -+%IRREVERSIBLE% /xed/xda -+%IRREVERSIBLE% /xed/xdb -+%IRREVERSIBLE% /xed/xdc -+%IRREVERSIBLE% /xed/xdd -+%IRREVERSIBLE% /xed/xde -+%IRREVERSIBLE% /xed/xdf -+%IRREVERSIBLE% /xed/xe0 -+%IRREVERSIBLE% /xed/xe1 -+%IRREVERSIBLE% /xed/xe2 -+%IRREVERSIBLE% /xed/xe3 -+%IRREVERSIBLE% /xed/xe4 -+%IRREVERSIBLE% /xed/xe5 -+%IRREVERSIBLE% /xed/xe6 -+%IRREVERSIBLE% /xed/xe7 -+%IRREVERSIBLE% /xed/xe8 -+%IRREVERSIBLE% /xed/xe9 -+%IRREVERSIBLE% /xed/xea -+%IRREVERSIBLE% /xed/xeb -+%IRREVERSIBLE% /xed/xec -+%IRREVERSIBLE% /xed/xed -+%IRREVERSIBLE% /xed/xee -+%IRREVERSIBLE% /xed/xef -+%IRREVERSIBLE% /xed/xf0 -+%IRREVERSIBLE% /xed/xf1 -+%IRREVERSIBLE% /xed/xf2 -+%IRREVERSIBLE% /xed/xf3 -+%IRREVERSIBLE% /xed/xf4 -+%IRREVERSIBLE% /xed/xf5 -+%IRREVERSIBLE% /xed/xf6 -+%IRREVERSIBLE% /xed/xf7 -+%IRREVERSIBLE% /xed/xf8 -+%IRREVERSIBLE% /xed/xf9 CJK COMPATIBILITY IDEOGRAPH-FA15 -+%IRREVERSIBLE% /xed/xfa -+%IRREVERSIBLE% /xed/xfb -+%IRREVERSIBLE% /xed/xfc -+%IRREVERSIBLE% /xee/x40 -+%IRREVERSIBLE% /xee/x41 -+%IRREVERSIBLE% /xee/x42 CJK COMPATIBILITY IDEOGRAPH-FA16 -+%IRREVERSIBLE% /xee/x43 -+%IRREVERSIBLE% /xee/x44 -+%IRREVERSIBLE% /xee/x45 -+%IRREVERSIBLE% /xee/x46 -+%IRREVERSIBLE% /xee/x47 -+%IRREVERSIBLE% /xee/x48 -+%IRREVERSIBLE% /xee/x49 -+%IRREVERSIBLE% /xee/x4a -+%IRREVERSIBLE% /xee/x4b -+%IRREVERSIBLE% /xee/x4c -+%IRREVERSIBLE% /xee/x4d -+%IRREVERSIBLE% /xee/x4e -+%IRREVERSIBLE% /xee/x4f -+%IRREVERSIBLE% /xee/x50 -+%IRREVERSIBLE% /xee/x51 -+%IRREVERSIBLE% /xee/x52 -+%IRREVERSIBLE% /xee/x53 -+%IRREVERSIBLE% /xee/x54 -+%IRREVERSIBLE% /xee/x55 -+%IRREVERSIBLE% /xee/x56 -+%IRREVERSIBLE% /xee/x57 -+%IRREVERSIBLE% /xee/x58 -+%IRREVERSIBLE% /xee/x59 CJK COMPATIBILITY IDEOGRAPH-FA17 -+%IRREVERSIBLE% /xee/x5a -+%IRREVERSIBLE% /xee/x5b -+%IRREVERSIBLE% /xee/x5c -+%IRREVERSIBLE% /xee/x5d -+%IRREVERSIBLE% /xee/x5e -+%IRREVERSIBLE% /xee/x5f -+%IRREVERSIBLE% /xee/x60 -+%IRREVERSIBLE% /xee/x61 CJK COMPATIBILITY IDEOGRAPH-FA18 -+%IRREVERSIBLE% /xee/x62 CJK COMPATIBILITY IDEOGRAPH-FA19 -+%IRREVERSIBLE% /xee/x63 CJK COMPATIBILITY IDEOGRAPH-FA1A -+%IRREVERSIBLE% /xee/x64 -+%IRREVERSIBLE% /xee/x65 CJK COMPATIBILITY IDEOGRAPH-FA1B -+%IRREVERSIBLE% /xee/x66 -+%IRREVERSIBLE% /xee/x67 -+%IRREVERSIBLE% /xee/x68 -+%IRREVERSIBLE% /xee/x69 CJK COMPATIBILITY IDEOGRAPH-FA1C -+%IRREVERSIBLE% /xee/x6a -+%IRREVERSIBLE% /xee/x6b -+%IRREVERSIBLE% /xee/x6c CJK COMPATIBILITY IDEOGRAPH-FA1D -+%IRREVERSIBLE% /xee/x6d -+%IRREVERSIBLE% /xee/x6e -+%IRREVERSIBLE% /xee/x6f -+%IRREVERSIBLE% /xee/x70 -+%IRREVERSIBLE% /xee/x71 -+%IRREVERSIBLE% /xee/x72 -+%IRREVERSIBLE% /xee/x73 -+%IRREVERSIBLE% /xee/x74 -+%IRREVERSIBLE% /xee/x75 CJK COMPATIBILITY IDEOGRAPH-FA1E -+%IRREVERSIBLE% /xee/x76 -+%IRREVERSIBLE% /xee/x77 -+%IRREVERSIBLE% /xee/x78 -+%IRREVERSIBLE% /xee/x79 -+%IRREVERSIBLE% /xee/x7a -+%IRREVERSIBLE% /xee/x7b -+%IRREVERSIBLE% /xee/x7c -+%IRREVERSIBLE% /xee/x7d -+%IRREVERSIBLE% /xee/x7e -+%IRREVERSIBLE% /xee/x80 -+%IRREVERSIBLE% /xee/x81 CJK COMPATIBILITY IDEOGRAPH-FA1F -+%IRREVERSIBLE% /xee/x82 -+%IRREVERSIBLE% /xee/x83 CJK COMPATIBILITY IDEOGRAPH-FA20 -+%IRREVERSIBLE% /xee/x84 CJK COMPATIBILITY IDEOGRAPH-FA21 -+%IRREVERSIBLE% /xee/x85 -+%IRREVERSIBLE% /xee/x86 -+%IRREVERSIBLE% /xee/x87 -+%IRREVERSIBLE% /xee/x88 -+%IRREVERSIBLE% /xee/x89 -+%IRREVERSIBLE% /xee/x8a -+%IRREVERSIBLE% /xee/x8b -+%IRREVERSIBLE% /xee/x8c -+%IRREVERSIBLE% /xee/x8d CJK COMPATIBILITY IDEOGRAPH-FA22 -+%IRREVERSIBLE% /xee/x8e -+%IRREVERSIBLE% /xee/x8f -+%IRREVERSIBLE% /xee/x90 -+%IRREVERSIBLE% /xee/x91 -+%IRREVERSIBLE% /xee/x92 -+%IRREVERSIBLE% /xee/x93 -+%IRREVERSIBLE% /xee/x94 -+%IRREVERSIBLE% /xee/x95 CJK COMPATIBILITY IDEOGRAPH-FA23 -+%IRREVERSIBLE% /xee/x96 -+%IRREVERSIBLE% /xee/x97 CJK COMPATIBILITY IDEOGRAPH-FA24 -+%IRREVERSIBLE% /xee/x98 CJK COMPATIBILITY IDEOGRAPH-FA25 -+%IRREVERSIBLE% /xee/x99 -+%IRREVERSIBLE% /xee/x9a -+%IRREVERSIBLE% /xee/x9b CJK COMPATIBILITY IDEOGRAPH-FA26 -+%IRREVERSIBLE% /xee/x9c -+%IRREVERSIBLE% /xee/x9d -+%IRREVERSIBLE% /xee/x9e -+%IRREVERSIBLE% /xee/x9f -+%IRREVERSIBLE% /xee/xa0 -+%IRREVERSIBLE% /xee/xa1 -+%IRREVERSIBLE% /xee/xa2 -+%IRREVERSIBLE% /xee/xa3 -+%IRREVERSIBLE% /xee/xa4 -+%IRREVERSIBLE% /xee/xa5 -+%IRREVERSIBLE% /xee/xa6 -+%IRREVERSIBLE% /xee/xa7 -+%IRREVERSIBLE% /xee/xa8 -+%IRREVERSIBLE% /xee/xa9 -+%IRREVERSIBLE% /xee/xaa -+%IRREVERSIBLE% /xee/xab -+%IRREVERSIBLE% /xee/xac -+%IRREVERSIBLE% /xee/xad -+%IRREVERSIBLE% /xee/xae -+%IRREVERSIBLE% /xee/xaf -+%IRREVERSIBLE% /xee/xb0 -+%IRREVERSIBLE% /xee/xb1 -+%IRREVERSIBLE% /xee/xb2 -+%IRREVERSIBLE% /xee/xb3 -+%IRREVERSIBLE% /xee/xb4 -+%IRREVERSIBLE% /xee/xb5 -+%IRREVERSIBLE% /xee/xb6 -+%IRREVERSIBLE% /xee/xb7 CJK COMPATIBILITY IDEOGRAPH-FA27 -+%IRREVERSIBLE% /xee/xb8 -+%IRREVERSIBLE% /xee/xb9 -+%IRREVERSIBLE% /xee/xba -+%IRREVERSIBLE% /xee/xbb -+%IRREVERSIBLE% /xee/xbc -+%IRREVERSIBLE% /xee/xbd -+%IRREVERSIBLE% /xee/xbe CJK COMPATIBILITY IDEOGRAPH-FA28 -+%IRREVERSIBLE% /xee/xbf -+%IRREVERSIBLE% /xee/xc0 -+%IRREVERSIBLE% /xee/xc1 -+%IRREVERSIBLE% /xee/xc2 -+%IRREVERSIBLE% /xee/xc3 -+%IRREVERSIBLE% /xee/xc4 -+%IRREVERSIBLE% /xee/xc5 -+%IRREVERSIBLE% /xee/xc6 -+%IRREVERSIBLE% /xee/xc7 -+%IRREVERSIBLE% /xee/xc8 -+%IRREVERSIBLE% /xee/xc9 -+%IRREVERSIBLE% /xee/xca -+%IRREVERSIBLE% /xee/xcb -+%IRREVERSIBLE% /xee/xcc -+%IRREVERSIBLE% /xee/xcd CJK COMPATIBILITY IDEOGRAPH-F9DC -+%IRREVERSIBLE% /xee/xce CJK COMPATIBILITY IDEOGRAPH-FA29 -+%IRREVERSIBLE% /xee/xcf -+%IRREVERSIBLE% /xee/xd0 -+%IRREVERSIBLE% /xee/xd1 -+%IRREVERSIBLE% /xee/xd2 -+%IRREVERSIBLE% /xee/xd3 -+%IRREVERSIBLE% /xee/xd4 -+%IRREVERSIBLE% /xee/xd5 -+%IRREVERSIBLE% /xee/xd6 -+%IRREVERSIBLE% /xee/xd7 -+%IRREVERSIBLE% /xee/xd8 -+%IRREVERSIBLE% /xee/xd9 -+%IRREVERSIBLE% /xee/xda CJK COMPATIBILITY IDEOGRAPH-FA2A -+%IRREVERSIBLE% /xee/xdb CJK COMPATIBILITY IDEOGRAPH-FA2B -+%IRREVERSIBLE% /xee/xdc -+%IRREVERSIBLE% /xee/xdd CJK COMPATIBILITY IDEOGRAPH-FA2C -+%IRREVERSIBLE% /xee/xde -+%IRREVERSIBLE% /xee/xdf -+%IRREVERSIBLE% /xee/xe0 -+%IRREVERSIBLE% /xee/xe1 -+%IRREVERSIBLE% /xee/xe2 -+%IRREVERSIBLE% /xee/xe3 -+%IRREVERSIBLE% /xee/xe4 -+%IRREVERSIBLE% /xee/xe5 -+%IRREVERSIBLE% /xee/xe6 -+%IRREVERSIBLE% /xee/xe7 -+%IRREVERSIBLE% /xee/xe8 -+%IRREVERSIBLE% /xee/xe9 -+%IRREVERSIBLE% /xee/xea CJK COMPATIBILITY IDEOGRAPH-FA2D -+%IRREVERSIBLE% /xee/xeb -+%IRREVERSIBLE% /xee/xec -+%IRREVERSIBLE% /xee/xef SMALL ROMAN NUMERAL ONE -+%IRREVERSIBLE% /xee/xf0 SMALL ROMAN NUMERAL TWO -+%IRREVERSIBLE% /xee/xf1 SMALL ROMAN NUMERAL THREE -+%IRREVERSIBLE% /xee/xf2 SMALL ROMAN NUMERAL FOUR -+%IRREVERSIBLE% /xee/xf3 SMALL ROMAN NUMERAL FIVE -+%IRREVERSIBLE% /xee/xf4 SMALL ROMAN NUMERAL SIX -+%IRREVERSIBLE% /xee/xf5 SMALL ROMAN NUMERAL SEVEN -+%IRREVERSIBLE% /xee/xf6 SMALL ROMAN NUMERAL EIGHT -+%IRREVERSIBLE% /xee/xf7 SMALL ROMAN NUMERAL NINE -+%IRREVERSIBLE% /xee/xf8 SMALL ROMAN NUMERAL TEN -+%IRREVERSIBLE% /xee/xf9 FULLWIDTH NOT SIGN -+%IRREVERSIBLE% /xee/xfa FULLWIDTH BROKEN BAR -+%IRREVERSIBLE% /xee/xfb FULLWIDTH APOSTROPHE -+%IRREVERSIBLE% /xee/xfc FULLWIDTH QUOTATION MARK -+ -+ /xf0/x40 -+ /xf0/x41 -+ /xf0/x42 -+ /xf0/x43 -+ /xf0/x44 -+ /xf0/x45 -+ /xf0/x46 -+ /xf0/x47 -+ /xf0/x48 -+ /xf0/x49 -+ /xf0/x4a -+ /xf0/x4b -+ /xf0/x4c -+ /xf0/x4d -+ /xf0/x4e -+ /xf0/x4f -+ /xf0/x50 -+ /xf0/x51 -+ /xf0/x52 -+ /xf0/x53 -+ /xf0/x54 -+ /xf0/x55 -+ /xf0/x56 -+ /xf0/x57 -+ /xf0/x58 -+ /xf0/x59 -+ /xf0/x5a -+ /xf0/x5b -+ /xf0/x5c -+ /xf0/x5d -+ /xf0/x5e -+ /xf0/x5f -+ /xf0/x60 -+ /xf0/x61 -+ /xf0/x62 -+ /xf0/x63 -+ /xf0/x64 -+ /xf0/x65 -+ /xf0/x66 -+ /xf0/x67 -+ /xf0/x68 -+ /xf0/x69 -+ /xf0/x6a -+ /xf0/x6b -+ /xf0/x6c -+ /xf0/x6d -+ /xf0/x6e -+ /xf0/x6f -+ /xf0/x70 -+ /xf0/x71 -+ /xf0/x72 -+ /xf0/x73 -+ /xf0/x74 -+ /xf0/x75 -+ /xf0/x76 -+ /xf0/x77 -+ /xf0/x78 -+ /xf0/x79 -+ /xf0/x7a -+ /xf0/x7b -+ /xf0/x7c -+ /xf0/x7d -+ /xf0/x7e -+ /xf0/x80 -+ /xf0/x81 -+ /xf0/x82 -+ /xf0/x83 -+ /xf0/x84 -+ /xf0/x85 -+ /xf0/x86 -+ /xf0/x87 -+ /xf0/x88 -+ /xf0/x89 -+ /xf0/x8a -+ /xf0/x8b -+ /xf0/x8c -+ /xf0/x8d -+ /xf0/x8e -+ /xf0/x8f -+ /xf0/x90 -+ /xf0/x91 -+ /xf0/x92 -+ /xf0/x93 -+ /xf0/x94 -+ /xf0/x95 -+ /xf0/x96 -+ /xf0/x97 -+ /xf0/x98 -+ /xf0/x99 -+ /xf0/x9a -+ /xf0/x9b -+ /xf0/x9c -+ /xf0/x9d -+ /xf0/x9e -+ /xf0/x9f -+ /xf0/xa0 -+ /xf0/xa1 -+ /xf0/xa2 -+ /xf0/xa3 -+ /xf0/xa4 -+ /xf0/xa5 -+ /xf0/xa6 -+ /xf0/xa7 -+ /xf0/xa8 -+ /xf0/xa9 -+ /xf0/xaa -+ /xf0/xab -+ /xf0/xac -+ /xf0/xad -+ /xf0/xae -+ /xf0/xaf -+ /xf0/xb0 -+ /xf0/xb1 -+ /xf0/xb2 -+ /xf0/xb3 -+ /xf0/xb4 -+ /xf0/xb5 -+ /xf0/xb6 -+ /xf0/xb7 -+ /xf0/xb8 -+ /xf0/xb9 -+ /xf0/xba -+ /xf0/xbb -+ /xf0/xbc -+ /xf0/xbd -+ /xf0/xbe -+ /xf0/xbf -+ /xf0/xc0 -+ /xf0/xc1 -+ /xf0/xc2 -+ /xf0/xc3 -+ /xf0/xc4 -+ /xf0/xc5 -+ /xf0/xc6 -+ /xf0/xc7 -+ /xf0/xc8 -+ /xf0/xc9 -+ /xf0/xca -+ /xf0/xcb -+ /xf0/xcc -+ /xf0/xcd -+ /xf0/xce -+ /xf0/xcf -+ /xf0/xd0 -+ /xf0/xd1 -+ /xf0/xd2 -+ /xf0/xd3 -+ /xf0/xd4 -+ /xf0/xd5 -+ /xf0/xd6 -+ /xf0/xd7 -+ /xf0/xd8 -+ /xf0/xd9 -+ /xf0/xda -+ /xf0/xdb -+ /xf0/xdc -+ /xf0/xdd -+ /xf0/xde -+ /xf0/xdf -+ /xf0/xe0 -+ /xf0/xe1 -+ /xf0/xe2 -+ /xf0/xe3 -+ /xf0/xe4 -+ /xf0/xe5 -+ /xf0/xe6 -+ /xf0/xe7 -+ /xf0/xe8 -+ /xf0/xe9 -+ /xf0/xea -+ /xf0/xeb -+ /xf0/xec -+ /xf0/xed -+ /xf0/xee -+ /xf0/xef -+ /xf0/xf0 -+ /xf0/xf1 -+ /xf0/xf2 -+ /xf0/xf3 -+ /xf0/xf4 -+ /xf0/xf5 -+ /xf0/xf6 -+ /xf0/xf7 -+ /xf0/xf8 -+ /xf0/xf9 -+ /xf0/xfa -+ /xf0/xfb -+ /xf0/xfc -+ /xf1/x40 -+ /xf1/x41 -+ /xf1/x42 -+ /xf1/x43 -+ /xf1/x44 -+ /xf1/x45 -+ /xf1/x46 -+ /xf1/x47 -+ /xf1/x48 -+ /xf1/x49 -+ /xf1/x4a -+ /xf1/x4b -+ /xf1/x4c -+ /xf1/x4d -+ /xf1/x4e -+ /xf1/x4f -+ /xf1/x50 -+ /xf1/x51 -+ /xf1/x52 -+ /xf1/x53 -+ /xf1/x54 -+ /xf1/x55 -+ /xf1/x56 -+ /xf1/x57 -+ /xf1/x58 -+ /xf1/x59 -+ /xf1/x5a -+ /xf1/x5b -+ /xf1/x5c -+ /xf1/x5d -+ /xf1/x5e -+ /xf1/x5f -+ /xf1/x60 -+ /xf1/x61 -+ /xf1/x62 -+ /xf1/x63 -+ /xf1/x64 -+ /xf1/x65 -+ /xf1/x66 -+ /xf1/x67 -+ /xf1/x68 -+ /xf1/x69 -+ /xf1/x6a -+ /xf1/x6b -+ /xf1/x6c -+ /xf1/x6d -+ /xf1/x6e -+ /xf1/x6f -+ /xf1/x70 -+ /xf1/x71 -+ /xf1/x72 -+ /xf1/x73 -+ /xf1/x74 -+ /xf1/x75 -+ /xf1/x76 -+ /xf1/x77 -+ /xf1/x78 -+ /xf1/x79 -+ /xf1/x7a -+ /xf1/x7b -+ /xf1/x7c -+ /xf1/x7d -+ /xf1/x7e -+ /xf1/x80 -+ /xf1/x81 -+ /xf1/x82 -+ /xf1/x83 -+ /xf1/x84 -+ /xf1/x85 -+ /xf1/x86 -+ /xf1/x87 -+ /xf1/x88 -+ /xf1/x89 -+ /xf1/x8a -+ /xf1/x8b -+ /xf1/x8c -+ /xf1/x8d -+ /xf1/x8e -+ /xf1/x8f -+ /xf1/x90 -+ /xf1/x91 -+ /xf1/x92 -+ /xf1/x93 -+ /xf1/x94 -+ /xf1/x95 -+ /xf1/x96 -+ /xf1/x97 -+ /xf1/x98 -+ /xf1/x99 -+ /xf1/x9a -+ /xf1/x9b -+ /xf1/x9c -+ /xf1/x9d -+ /xf1/x9e -+ /xf1/x9f -+ /xf1/xa0 -+ /xf1/xa1 -+ /xf1/xa2 -+ /xf1/xa3 -+ /xf1/xa4 -+ /xf1/xa5 -+ /xf1/xa6 -+ /xf1/xa7 -+ /xf1/xa8 -+ /xf1/xa9 -+ /xf1/xaa -+ /xf1/xab -+ /xf1/xac -+ /xf1/xad -+ /xf1/xae -+ /xf1/xaf -+ /xf1/xb0 -+ /xf1/xb1 -+ /xf1/xb2 -+ /xf1/xb3 -+ /xf1/xb4 -+ /xf1/xb5 -+ /xf1/xb6 -+ /xf1/xb7 -+ /xf1/xb8 -+ /xf1/xb9 -+ /xf1/xba -+ /xf1/xbb -+ /xf1/xbc -+ /xf1/xbd -+ /xf1/xbe -+ /xf1/xbf -+ /xf1/xc0 -+ /xf1/xc1 -+ /xf1/xc2 -+ /xf1/xc3 -+ /xf1/xc4 -+ /xf1/xc5 -+ /xf1/xc6 -+ /xf1/xc7 -+ /xf1/xc8 -+ /xf1/xc9 -+ /xf1/xca -+ /xf1/xcb -+ /xf1/xcc -+ /xf1/xcd -+ /xf1/xce -+ /xf1/xcf -+ /xf1/xd0 -+ /xf1/xd1 -+ /xf1/xd2 -+ /xf1/xd3 -+ /xf1/xd4 -+ /xf1/xd5 -+ /xf1/xd6 -+ /xf1/xd7 -+ /xf1/xd8 -+ /xf1/xd9 -+ /xf1/xda -+ /xf1/xdb -+ /xf1/xdc -+ /xf1/xdd -+ /xf1/xde -+ /xf1/xdf -+ /xf1/xe0 -+ /xf1/xe1 -+ /xf1/xe2 -+ /xf1/xe3 -+ /xf1/xe4 -+ /xf1/xe5 -+ /xf1/xe6 -+ /xf1/xe7 -+ /xf1/xe8 -+ /xf1/xe9 -+ /xf1/xea -+ /xf1/xeb -+ /xf1/xec -+ /xf1/xed -+ /xf1/xee -+ /xf1/xef -+ /xf1/xf0 -+ /xf1/xf1 -+ /xf1/xf2 -+ /xf1/xf3 -+ /xf1/xf4 -+ /xf1/xf5 -+ /xf1/xf6 -+ /xf1/xf7 -+ /xf1/xf8 -+ /xf1/xf9 -+ /xf1/xfa -+ /xf1/xfb -+ /xf1/xfc -+ /xf2/x40 -+ /xf2/x41 -+ /xf2/x42 -+ /xf2/x43 -+ /xf2/x44 -+ /xf2/x45 -+ /xf2/x46 -+ /xf2/x47 -+ /xf2/x48 -+ /xf2/x49 -+ /xf2/x4a -+ /xf2/x4b -+ /xf2/x4c -+ /xf2/x4d -+ /xf2/x4e -+ /xf2/x4f -+ /xf2/x50 -+ /xf2/x51 -+ /xf2/x52 -+ /xf2/x53 -+ /xf2/x54 -+ /xf2/x55 -+ /xf2/x56 -+ /xf2/x57 -+ /xf2/x58 -+ /xf2/x59 -+ /xf2/x5a -+ /xf2/x5b -+ /xf2/x5c -+ /xf2/x5d -+ /xf2/x5e -+ /xf2/x5f -+ /xf2/x60 -+ /xf2/x61 -+ /xf2/x62 -+ /xf2/x63 -+ /xf2/x64 -+ /xf2/x65 -+ /xf2/x66 -+ /xf2/x67 -+ /xf2/x68 -+ /xf2/x69 -+ /xf2/x6a -+ /xf2/x6b -+ /xf2/x6c -+ /xf2/x6d -+ /xf2/x6e -+ /xf2/x6f -+ /xf2/x70 -+ /xf2/x71 -+ /xf2/x72 -+ /xf2/x73 -+ /xf2/x74 -+ /xf2/x75 -+ /xf2/x76 -+ /xf2/x77 -+ /xf2/x78 -+ /xf2/x79 -+ /xf2/x7a -+ /xf2/x7b -+ /xf2/x7c -+ /xf2/x7d -+ /xf2/x7e -+ /xf2/x80 -+ /xf2/x81 -+ /xf2/x82 -+ /xf2/x83 -+ /xf2/x84 -+ /xf2/x85 -+ /xf2/x86 -+ /xf2/x87 -+ /xf2/x88 -+ /xf2/x89 -+ /xf2/x8a -+ /xf2/x8b -+ /xf2/x8c -+ /xf2/x8d -+ /xf2/x8e -+ /xf2/x8f -+ /xf2/x90 -+ /xf2/x91 -+ /xf2/x92 -+ /xf2/x93 -+ /xf2/x94 -+ /xf2/x95 -+ /xf2/x96 -+ /xf2/x97 -+ /xf2/x98 -+ /xf2/x99 -+ /xf2/x9a -+ /xf2/x9b -+ /xf2/x9c -+ /xf2/x9d -+ /xf2/x9e -+ /xf2/x9f -+ /xf2/xa0 -+ /xf2/xa1 -+ /xf2/xa2 -+ /xf2/xa3 -+ /xf2/xa4 -+ /xf2/xa5 -+ /xf2/xa6 -+ /xf2/xa7 -+ /xf2/xa8 -+ /xf2/xa9 -+ /xf2/xaa -+ /xf2/xab -+ /xf2/xac -+ /xf2/xad -+ /xf2/xae -+ /xf2/xaf -+ /xf2/xb0 -+ /xf2/xb1 -+ /xf2/xb2 -+ /xf2/xb3 -+ /xf2/xb4 -+ /xf2/xb5 -+ /xf2/xb6 -+ /xf2/xb7 -+ /xf2/xb8 -+ /xf2/xb9 -+ /xf2/xba -+ /xf2/xbb -+ /xf2/xbc -+ /xf2/xbd -+ /xf2/xbe -+ /xf2/xbf -+ /xf2/xc0 -+ /xf2/xc1 -+ /xf2/xc2 -+ /xf2/xc3 -+ /xf2/xc4 -+ /xf2/xc5 -+ /xf2/xc6 -+ /xf2/xc7 -+ /xf2/xc8 -+ /xf2/xc9 -+ /xf2/xca -+ /xf2/xcb -+ /xf2/xcc -+ /xf2/xcd -+ /xf2/xce -+ /xf2/xcf -+ /xf2/xd0 -+ /xf2/xd1 -+ /xf2/xd2 -+ /xf2/xd3 -+ /xf2/xd4 -+ /xf2/xd5 -+ /xf2/xd6 -+ /xf2/xd7 -+ /xf2/xd8 -+ /xf2/xd9 -+ /xf2/xda -+ /xf2/xdb -+ /xf2/xdc -+ /xf2/xdd -+ /xf2/xde -+ /xf2/xdf -+ /xf2/xe0 -+ /xf2/xe1 -+ /xf2/xe2 -+ /xf2/xe3 -+ /xf2/xe4 -+ /xf2/xe5 -+ /xf2/xe6 -+ /xf2/xe7 -+ /xf2/xe8 -+ /xf2/xe9 -+ /xf2/xea -+ /xf2/xeb -+ /xf2/xec -+ /xf2/xed -+ /xf2/xee -+ /xf2/xef -+ /xf2/xf0 -+ /xf2/xf1 -+ /xf2/xf2 -+ /xf2/xf3 -+ /xf2/xf4 -+ /xf2/xf5 -+ /xf2/xf6 -+ /xf2/xf7 -+ /xf2/xf8 -+ /xf2/xf9 -+ /xf2/xfa -+ /xf2/xfb -+ /xf2/xfc -+ /xf3/x40 -+ /xf3/x41 -+ /xf3/x42 -+ /xf3/x43 -+ /xf3/x44 -+ /xf3/x45 -+ /xf3/x46 -+ /xf3/x47 -+ /xf3/x48 -+ /xf3/x49 -+ /xf3/x4a -+ /xf3/x4b -+ /xf3/x4c -+ /xf3/x4d -+ /xf3/x4e -+ /xf3/x4f -+ /xf3/x50 -+ /xf3/x51 -+ /xf3/x52 -+ /xf3/x53 -+ /xf3/x54 -+ /xf3/x55 -+ /xf3/x56 -+ /xf3/x57 -+ /xf3/x58 -+ /xf3/x59 -+ /xf3/x5a -+ /xf3/x5b -+ /xf3/x5c -+ /xf3/x5d -+ /xf3/x5e -+ /xf3/x5f -+ /xf3/x60 -+ /xf3/x61 -+ /xf3/x62 -+ /xf3/x63 -+ /xf3/x64 -+ /xf3/x65 -+ /xf3/x66 -+ /xf3/x67 -+ /xf3/x68 -+ /xf3/x69 -+ /xf3/x6a -+ /xf3/x6b -+ /xf3/x6c -+ /xf3/x6d -+ /xf3/x6e -+ /xf3/x6f -+ /xf3/x70 -+ /xf3/x71 -+ /xf3/x72 -+ /xf3/x73 -+ /xf3/x74 -+ /xf3/x75 -+ /xf3/x76 -+ /xf3/x77 -+ /xf3/x78 -+ /xf3/x79 -+ /xf3/x7a -+ /xf3/x7b -+ /xf3/x7c -+ /xf3/x7d -+ /xf3/x7e -+ /xf3/x80 -+ /xf3/x81 -+ /xf3/x82 -+ /xf3/x83 -+ /xf3/x84 -+ /xf3/x85 -+ /xf3/x86 -+ /xf3/x87 -+ /xf3/x88 -+ /xf3/x89 -+ /xf3/x8a -+ /xf3/x8b -+ /xf3/x8c -+ /xf3/x8d -+ /xf3/x8e -+ /xf3/x8f -+ /xf3/x90 -+ /xf3/x91 -+ /xf3/x92 -+ /xf3/x93 -+ /xf3/x94 -+ /xf3/x95 -+ /xf3/x96 -+ /xf3/x97 -+ /xf3/x98 -+ /xf3/x99 -+ /xf3/x9a -+ /xf3/x9b -+ /xf3/x9c -+ /xf3/x9d -+ /xf3/x9e -+ /xf3/x9f -+ /xf3/xa0 -+ /xf3/xa1 -+ /xf3/xa2 -+ /xf3/xa3 -+ /xf3/xa4 -+ /xf3/xa5 -+ /xf3/xa6 -+ /xf3/xa7 -+ /xf3/xa8 -+ /xf3/xa9 -+ /xf3/xaa -+ /xf3/xab -+ /xf3/xac -+ /xf3/xad -+ /xf3/xae -+ /xf3/xaf -+ /xf3/xb0 -+ /xf3/xb1 -+ /xf3/xb2 -+ /xf3/xb3 -+ /xf3/xb4 -+ /xf3/xb5 -+ /xf3/xb6 -+ /xf3/xb7 -+ /xf3/xb8 -+ /xf3/xb9 -+ /xf3/xba -+ /xf3/xbb -+ /xf3/xbc -+ /xf3/xbd -+ /xf3/xbe -+ /xf3/xbf -+ /xf3/xc0 -+ /xf3/xc1 -+ /xf3/xc2 -+ /xf3/xc3 -+ /xf3/xc4 -+ /xf3/xc5 -+ /xf3/xc6 -+ /xf3/xc7 -+ /xf3/xc8 -+ /xf3/xc9 -+ /xf3/xca -+ /xf3/xcb -+ /xf3/xcc -+ /xf3/xcd -+ /xf3/xce -+ /xf3/xcf -+ /xf3/xd0 -+ /xf3/xd1 -+ /xf3/xd2 -+ /xf3/xd3 -+ /xf3/xd4 -+ /xf3/xd5 -+ /xf3/xd6 -+ /xf3/xd7 -+ /xf3/xd8 -+ /xf3/xd9 -+ /xf3/xda -+ /xf3/xdb -+ /xf3/xdc -+ /xf3/xdd -+ /xf3/xde -+ /xf3/xdf -+ /xf3/xe0 -+ /xf3/xe1 -+ /xf3/xe2 -+ /xf3/xe3 -+ /xf3/xe4 -+ /xf3/xe5 -+ /xf3/xe6 -+ /xf3/xe7 -+ /xf3/xe8 -+ /xf3/xe9 -+ /xf3/xea -+ /xf3/xeb -+ /xf3/xec -+ /xf3/xed -+ /xf3/xee -+ /xf3/xef -+ /xf3/xf0 -+ /xf3/xf1 -+ /xf3/xf2 -+ /xf3/xf3 -+ /xf3/xf4 -+ /xf3/xf5 -+ /xf3/xf6 -+ /xf3/xf7 -+ /xf3/xf8 -+ /xf3/xf9 -+ /xf3/xfa -+ /xf3/xfb -+ /xf3/xfc -+ /xf4/x40 -+ /xf4/x41 -+ /xf4/x42 -+ /xf4/x43 -+ /xf4/x44 -+ /xf4/x45 -+ /xf4/x46 -+ /xf4/x47 -+ /xf4/x48 -+ /xf4/x49 -+ /xf4/x4a -+ /xf4/x4b -+ /xf4/x4c -+ /xf4/x4d -+ /xf4/x4e -+ /xf4/x4f -+ /xf4/x50 -+ /xf4/x51 -+ /xf4/x52 -+ /xf4/x53 -+ /xf4/x54 -+ /xf4/x55 -+ /xf4/x56 -+ /xf4/x57 -+ /xf4/x58 -+ /xf4/x59 -+ /xf4/x5a -+ /xf4/x5b -+ /xf4/x5c -+ /xf4/x5d -+ /xf4/x5e -+ /xf4/x5f -+ /xf4/x60 -+ /xf4/x61 -+ /xf4/x62 -+ /xf4/x63 -+ /xf4/x64 -+ /xf4/x65 -+ /xf4/x66 -+ /xf4/x67 -+ /xf4/x68 -+ /xf4/x69 -+ /xf4/x6a -+ /xf4/x6b -+ /xf4/x6c -+ /xf4/x6d -+ /xf4/x6e -+ /xf4/x6f -+ /xf4/x70 -+ /xf4/x71 -+ /xf4/x72 -+ /xf4/x73 -+ /xf4/x74 -+ /xf4/x75 -+ /xf4/x76 -+ /xf4/x77 -+ /xf4/x78 -+ /xf4/x79 -+ /xf4/x7a -+ /xf4/x7b -+ /xf4/x7c -+ /xf4/x7d -+ /xf4/x7e -+ /xf4/x80 -+ /xf4/x81 -+ /xf4/x82 -+ /xf4/x83 -+ /xf4/x84 -+ /xf4/x85 -+ /xf4/x86 -+ /xf4/x87 -+ /xf4/x88 -+ /xf4/x89 -+ /xf4/x8a -+ /xf4/x8b -+ /xf4/x8c -+ /xf4/x8d -+ /xf4/x8e -+ /xf4/x8f -+ /xf4/x90 -+ /xf4/x91 -+ /xf4/x92 -+ /xf4/x93 -+ /xf4/x94 -+ /xf4/x95 -+ /xf4/x96 -+ /xf4/x97 -+ /xf4/x98 -+ /xf4/x99 -+ /xf4/x9a -+ /xf4/x9b -+ /xf4/x9c -+ /xf4/x9d -+ /xf4/x9e -+ /xf4/x9f -+ /xf4/xa0 -+ /xf4/xa1 -+ /xf4/xa2 -+ /xf4/xa3 -+ /xf4/xa4 -+ /xf4/xa5 -+ /xf4/xa6 -+ /xf4/xa7 -+ /xf4/xa8 -+ /xf4/xa9 -+ /xf4/xaa -+ /xf4/xab -+ /xf4/xac -+ /xf4/xad -+ /xf4/xae -+ /xf4/xaf -+ /xf4/xb0 -+ /xf4/xb1 -+ /xf4/xb2 -+ /xf4/xb3 -+ /xf4/xb4 -+ /xf4/xb5 -+ /xf4/xb6 -+ /xf4/xb7 -+ /xf4/xb8 -+ /xf4/xb9 -+ /xf4/xba -+ /xf4/xbb -+ /xf4/xbc -+ /xf4/xbd -+ /xf4/xbe -+ /xf4/xbf -+ /xf4/xc0 -+ /xf4/xc1 -+ /xf4/xc2 -+ /xf4/xc3 -+ /xf4/xc4 -+ /xf4/xc5 -+ /xf4/xc6 -+ /xf4/xc7 -+ /xf4/xc8 -+ /xf4/xc9 -+ /xf4/xca -+ /xf4/xcb -+ /xf4/xcc -+ /xf4/xcd -+ /xf4/xce -+ /xf4/xcf -+ /xf4/xd0 -+ /xf4/xd1 -+ /xf4/xd2 -+ /xf4/xd3 -+ /xf4/xd4 -+ /xf4/xd5 -+ /xf4/xd6 -+ /xf4/xd7 -+ /xf4/xd8 -+ /xf4/xd9 -+ /xf4/xda -+ /xf4/xdb -+ /xf4/xdc -+ /xf4/xdd -+ /xf4/xde -+ /xf4/xdf -+ /xf4/xe0 -+ /xf4/xe1 -+ /xf4/xe2 -+ /xf4/xe3 -+ /xf4/xe4 -+ /xf4/xe5 -+ /xf4/xe6 -+ /xf4/xe7 -+ /xf4/xe8 -+ /xf4/xe9 -+ /xf4/xea -+ /xf4/xeb -+ /xf4/xec -+ /xf4/xed -+ /xf4/xee -+ /xf4/xef -+ /xf4/xf0 -+ /xf4/xf1 -+ /xf4/xf2 -+ /xf4/xf3 -+ /xf4/xf4 -+ /xf4/xf5 -+ /xf4/xf6 -+ /xf4/xf7 -+ /xf4/xf8 -+ /xf4/xf9 -+ /xf4/xfa -+ /xf4/xfb -+ /xf4/xfc -+ /xf5/x40 -+ /xf5/x41 -+ /xf5/x42 -+ /xf5/x43 -+ /xf5/x44 -+ /xf5/x45 -+ /xf5/x46 -+ /xf5/x47 -+ /xf5/x48 -+ /xf5/x49 -+ /xf5/x4a -+ /xf5/x4b -+ /xf5/x4c -+ /xf5/x4d -+ /xf5/x4e -+ /xf5/x4f -+ /xf5/x50 -+ /xf5/x51 -+ /xf5/x52 -+ /xf5/x53 -+ /xf5/x54 -+ /xf5/x55 -+ /xf5/x56 -+ /xf5/x57 -+ /xf5/x58 -+ /xf5/x59 -+ /xf5/x5a -+ /xf5/x5b -+ /xf5/x5c -+ /xf5/x5d -+ /xf5/x5e -+ /xf5/x5f -+ /xf5/x60 -+ /xf5/x61 -+ /xf5/x62 -+ /xf5/x63 -+ /xf5/x64 -+ /xf5/x65 -+ /xf5/x66 -+ /xf5/x67 -+ /xf5/x68 -+ /xf5/x69 -+ /xf5/x6a -+ /xf5/x6b -+ /xf5/x6c -+ /xf5/x6d -+ /xf5/x6e -+ /xf5/x6f -+ /xf5/x70 -+ /xf5/x71 -+ /xf5/x72 -+ /xf5/x73 -+ /xf5/x74 -+ /xf5/x75 -+ /xf5/x76 -+ /xf5/x77 -+ /xf5/x78 -+ /xf5/x79 -+ /xf5/x7a -+ /xf5/x7b -+ /xf5/x7c -+ /xf5/x7d -+ /xf5/x7e -+ /xf5/x80 -+ /xf5/x81 -+ /xf5/x82 -+ /xf5/x83 -+ /xf5/x84 -+ /xf5/x85 -+ /xf5/x86 -+ /xf5/x87 -+ /xf5/x88 -+ /xf5/x89 -+ /xf5/x8a -+ /xf5/x8b -+ /xf5/x8c -+ /xf5/x8d -+ /xf5/x8e -+ /xf5/x8f -+ /xf5/x90 -+ /xf5/x91 -+ /xf5/x92 -+ /xf5/x93 -+ /xf5/x94 -+ /xf5/x95 -+ /xf5/x96 -+ /xf5/x97 -+ /xf5/x98 -+ /xf5/x99 -+ /xf5/x9a -+ /xf5/x9b -+ /xf5/x9c -+ /xf5/x9d -+ /xf5/x9e -+ /xf5/x9f -+ /xf5/xa0 -+ /xf5/xa1 -+ /xf5/xa2 -+ /xf5/xa3 -+ /xf5/xa4 -+ /xf5/xa5 -+ /xf5/xa6 -+ /xf5/xa7 -+ /xf5/xa8 -+ /xf5/xa9 -+ /xf5/xaa -+ /xf5/xab -+ /xf5/xac -+ /xf5/xad -+ /xf5/xae -+ /xf5/xaf -+ /xf5/xb0 -+ /xf5/xb1 -+ /xf5/xb2 -+ /xf5/xb3 -+ /xf5/xb4 -+ /xf5/xb5 -+ /xf5/xb6 -+ /xf5/xb7 -+ /xf5/xb8 -+ /xf5/xb9 -+ /xf5/xba -+ /xf5/xbb -+ /xf5/xbc -+ /xf5/xbd -+ /xf5/xbe -+ /xf5/xbf -+ /xf5/xc0 -+ /xf5/xc1 -+ /xf5/xc2 -+ /xf5/xc3 -+ /xf5/xc4 -+ /xf5/xc5 -+ /xf5/xc6 -+ /xf5/xc7 -+ /xf5/xc8 -+ /xf5/xc9 -+ /xf5/xca -+ /xf5/xcb -+ /xf5/xcc -+ /xf5/xcd -+ /xf5/xce -+ /xf5/xcf -+ /xf5/xd0 -+ /xf5/xd1 -+ /xf5/xd2 -+ /xf5/xd3 -+ /xf5/xd4 -+ /xf5/xd5 -+ /xf5/xd6 -+ /xf5/xd7 -+ /xf5/xd8 -+ /xf5/xd9 -+ /xf5/xda -+ /xf5/xdb -+ /xf5/xdc -+ /xf5/xdd -+ /xf5/xde -+ /xf5/xdf -+ /xf5/xe0 -+ /xf5/xe1 -+ /xf5/xe2 -+ /xf5/xe3 -+ /xf5/xe4 -+ /xf5/xe5 -+ /xf5/xe6 -+ /xf5/xe7 -+ /xf5/xe8 -+ /xf5/xe9 -+ /xf5/xea -+ /xf5/xeb -+ /xf5/xec -+ /xf5/xed -+ /xf5/xee -+ /xf5/xef -+ /xf5/xf0 -+ /xf5/xf1 -+ /xf5/xf2 -+ /xf5/xf3 -+ /xf5/xf4 -+ /xf5/xf5 -+ /xf5/xf6 -+ /xf5/xf7 -+ /xf5/xf8 -+ /xf5/xf9 -+ /xf5/xfa -+ /xf5/xfb -+ /xf5/xfc -+ /xf6/x40 -+ /xf6/x41 -+ /xf6/x42 -+ /xf6/x43 -+ /xf6/x44 -+ /xf6/x45 -+ /xf6/x46 -+ /xf6/x47 -+ /xf6/x48 -+ /xf6/x49 -+ /xf6/x4a -+ /xf6/x4b -+ /xf6/x4c -+ /xf6/x4d -+ /xf6/x4e -+ /xf6/x4f -+ /xf6/x50 -+ /xf6/x51 -+ /xf6/x52 -+ /xf6/x53 -+ /xf6/x54 -+ /xf6/x55 -+ /xf6/x56 -+ /xf6/x57 -+ /xf6/x58 -+ /xf6/x59 -+ /xf6/x5a -+ /xf6/x5b -+ /xf6/x5c -+ /xf6/x5d -+ /xf6/x5e -+ /xf6/x5f -+ /xf6/x60 -+ /xf6/x61 -+ /xf6/x62 -+ /xf6/x63 -+ /xf6/x64 -+ /xf6/x65 -+ /xf6/x66 -+ /xf6/x67 -+ /xf6/x68 -+ /xf6/x69 -+ /xf6/x6a -+ /xf6/x6b -+ /xf6/x6c -+ /xf6/x6d -+ /xf6/x6e -+ /xf6/x6f -+ /xf6/x70 -+ /xf6/x71 -+ /xf6/x72 -+ /xf6/x73 -+ /xf6/x74 -+ /xf6/x75 -+ /xf6/x76 -+ /xf6/x77 -+ /xf6/x78 -+ /xf6/x79 -+ /xf6/x7a -+ /xf6/x7b -+ /xf6/x7c -+ /xf6/x7d -+ /xf6/x7e -+ /xf6/x80 -+ /xf6/x81 -+ /xf6/x82 -+ /xf6/x83 -+ /xf6/x84 -+ /xf6/x85 -+ /xf6/x86 -+ /xf6/x87 -+ /xf6/x88 -+ /xf6/x89 -+ /xf6/x8a -+ /xf6/x8b -+ /xf6/x8c -+ /xf6/x8d -+ /xf6/x8e -+ /xf6/x8f -+ /xf6/x90 -+ /xf6/x91 -+ /xf6/x92 -+ /xf6/x93 -+ /xf6/x94 -+ /xf6/x95 -+ /xf6/x96 -+ /xf6/x97 -+ /xf6/x98 -+ /xf6/x99 -+ /xf6/x9a -+ /xf6/x9b -+ /xf6/x9c -+ /xf6/x9d -+ /xf6/x9e -+ /xf6/x9f -+ /xf6/xa0 -+ /xf6/xa1 -+ /xf6/xa2 -+ /xf6/xa3 -+ /xf6/xa4 -+ /xf6/xa5 -+ /xf6/xa6 -+ /xf6/xa7 -+ /xf6/xa8 -+ /xf6/xa9 -+ /xf6/xaa -+ /xf6/xab -+ /xf6/xac -+ /xf6/xad -+ /xf6/xae -+ /xf6/xaf -+ /xf6/xb0 -+ /xf6/xb1 -+ /xf6/xb2 -+ /xf6/xb3 -+ /xf6/xb4 -+ /xf6/xb5 -+ /xf6/xb6 -+ /xf6/xb7 -+ /xf6/xb8 -+ /xf6/xb9 -+ /xf6/xba -+ /xf6/xbb -+ /xf6/xbc -+ /xf6/xbd -+ /xf6/xbe -+ /xf6/xbf -+ /xf6/xc0 -+ /xf6/xc1 -+ /xf6/xc2 -+ /xf6/xc3 -+ /xf6/xc4 -+ /xf6/xc5 -+ /xf6/xc6 -+ /xf6/xc7 -+ /xf6/xc8 -+ /xf6/xc9 -+ /xf6/xca -+ /xf6/xcb -+ /xf6/xcc -+ /xf6/xcd -+ /xf6/xce -+ /xf6/xcf -+ /xf6/xd0 -+ /xf6/xd1 -+ /xf6/xd2 -+ /xf6/xd3 -+ /xf6/xd4 -+ /xf6/xd5 -+ /xf6/xd6 -+ /xf6/xd7 -+ /xf6/xd8 -+ /xf6/xd9 -+ /xf6/xda -+ /xf6/xdb -+ /xf6/xdc -+ /xf6/xdd -+ /xf6/xde -+ /xf6/xdf -+ /xf6/xe0 -+ /xf6/xe1 -+ /xf6/xe2 -+ /xf6/xe3 -+ /xf6/xe4 -+ /xf6/xe5 -+ /xf6/xe6 -+ /xf6/xe7 -+ /xf6/xe8 -+ /xf6/xe9 -+ /xf6/xea -+ /xf6/xeb -+ /xf6/xec -+ /xf6/xed -+ /xf6/xee -+ /xf6/xef -+ /xf6/xf0 -+ /xf6/xf1 -+ /xf6/xf2 -+ /xf6/xf3 -+ /xf6/xf4 -+ /xf6/xf5 -+ /xf6/xf6 -+ /xf6/xf7 -+ /xf6/xf8 -+ /xf6/xf9 -+ /xf6/xfa -+ /xf6/xfb -+ /xf6/xfc -+ /xf7/x40 -+ /xf7/x41 -+ /xf7/x42 -+ /xf7/x43 -+ /xf7/x44 -+ /xf7/x45 -+ /xf7/x46 -+ /xf7/x47 -+ /xf7/x48 -+ /xf7/x49 -+ /xf7/x4a -+ /xf7/x4b -+ /xf7/x4c -+ /xf7/x4d -+ /xf7/x4e -+ /xf7/x4f -+ /xf7/x50 -+ /xf7/x51 -+ /xf7/x52 -+ /xf7/x53 -+ /xf7/x54 -+ /xf7/x55 -+ /xf7/x56 -+ /xf7/x57 -+ /xf7/x58 -+ /xf7/x59 -+ /xf7/x5a -+ /xf7/x5b -+ /xf7/x5c -+ /xf7/x5d -+ /xf7/x5e -+ /xf7/x5f -+ /xf7/x60 -+ /xf7/x61 -+ /xf7/x62 -+ /xf7/x63 -+ /xf7/x64 -+ /xf7/x65 -+ /xf7/x66 -+ /xf7/x67 -+ /xf7/x68 -+ /xf7/x69 -+ /xf7/x6a -+ /xf7/x6b -+ /xf7/x6c -+ /xf7/x6d -+ /xf7/x6e -+ /xf7/x6f -+ /xf7/x70 -+ /xf7/x71 -+ /xf7/x72 -+ /xf7/x73 -+ /xf7/x74 -+ /xf7/x75 -+ /xf7/x76 -+ /xf7/x77 -+ /xf7/x78 -+ /xf7/x79 -+ /xf7/x7a -+ /xf7/x7b -+ /xf7/x7c -+ /xf7/x7d -+ /xf7/x7e -+ /xf7/x80 -+ /xf7/x81 -+ /xf7/x82 -+ /xf7/x83 -+ /xf7/x84 -+ /xf7/x85 -+ /xf7/x86 -+ /xf7/x87 -+ /xf7/x88 -+ /xf7/x89 -+ /xf7/x8a -+ /xf7/x8b -+ /xf7/x8c -+ /xf7/x8d -+ /xf7/x8e -+ /xf7/x8f -+ /xf7/x90 -+ /xf7/x91 -+ /xf7/x92 -+ /xf7/x93 -+ /xf7/x94 -+ /xf7/x95 -+ /xf7/x96 -+ /xf7/x97 -+ /xf7/x98 -+ /xf7/x99 -+ /xf7/x9a -+ /xf7/x9b -+ /xf7/x9c -+ /xf7/x9d -+ /xf7/x9e -+ /xf7/x9f -+ /xf7/xa0 -+ /xf7/xa1 -+ /xf7/xa2 -+ /xf7/xa3 -+ /xf7/xa4 -+ /xf7/xa5 -+ /xf7/xa6 -+ /xf7/xa7 -+ /xf7/xa8 -+ /xf7/xa9 -+ /xf7/xaa -+ /xf7/xab -+ /xf7/xac -+ /xf7/xad -+ /xf7/xae -+ /xf7/xaf -+ /xf7/xb0 -+ /xf7/xb1 -+ /xf7/xb2 -+ /xf7/xb3 -+ /xf7/xb4 -+ /xf7/xb5 -+ /xf7/xb6 -+ /xf7/xb7 -+ /xf7/xb8 -+ /xf7/xb9 -+ /xf7/xba -+ /xf7/xbb -+ /xf7/xbc -+ /xf7/xbd -+ /xf7/xbe -+ /xf7/xbf -+ /xf7/xc0 -+ /xf7/xc1 -+ /xf7/xc2 -+ /xf7/xc3 -+ /xf7/xc4 -+ /xf7/xc5 -+ /xf7/xc6 -+ /xf7/xc7 -+ /xf7/xc8 -+ /xf7/xc9 -+ /xf7/xca -+ /xf7/xcb -+ /xf7/xcc -+ /xf7/xcd -+ /xf7/xce -+ /xf7/xcf -+ /xf7/xd0 -+ /xf7/xd1 -+ /xf7/xd2 -+ /xf7/xd3 -+ /xf7/xd4 -+ /xf7/xd5 -+ /xf7/xd6 -+ /xf7/xd7 -+ /xf7/xd8 -+ /xf7/xd9 -+ /xf7/xda -+ /xf7/xdb -+ /xf7/xdc -+ /xf7/xdd -+ /xf7/xde -+ /xf7/xdf -+ /xf7/xe0 -+ /xf7/xe1 -+ /xf7/xe2 -+ /xf7/xe3 -+ /xf7/xe4 -+ /xf7/xe5 -+ /xf7/xe6 -+ /xf7/xe7 -+ /xf7/xe8 -+ /xf7/xe9 -+ /xf7/xea -+ /xf7/xeb -+ /xf7/xec -+ /xf7/xed -+ /xf7/xee -+ /xf7/xef -+ /xf7/xf0 -+ /xf7/xf1 -+ /xf7/xf2 -+ /xf7/xf3 -+ /xf7/xf4 -+ /xf7/xf5 -+ /xf7/xf6 -+ /xf7/xf7 -+ /xf7/xf8 -+ /xf7/xf9 -+ /xf7/xfa -+ /xf7/xfb -+ /xf7/xfc -+ /xf8/x40 -+ /xf8/x41 -+ /xf8/x42 -+ /xf8/x43 -+ /xf8/x44 -+ /xf8/x45 -+ /xf8/x46 -+ /xf8/x47 -+ /xf8/x48 -+ /xf8/x49 -+ /xf8/x4a -+ /xf8/x4b -+ /xf8/x4c -+ /xf8/x4d -+ /xf8/x4e -+ /xf8/x4f -+ /xf8/x50 -+ /xf8/x51 -+ /xf8/x52 -+ /xf8/x53 -+ /xf8/x54 -+ /xf8/x55 -+ /xf8/x56 -+ /xf8/x57 -+ /xf8/x58 -+ /xf8/x59 -+ /xf8/x5a -+ /xf8/x5b -+ /xf8/x5c -+ /xf8/x5d -+ /xf8/x5e -+ /xf8/x5f -+ /xf8/x60 -+ /xf8/x61 -+ /xf8/x62 -+ /xf8/x63 -+ /xf8/x64 -+ /xf8/x65 -+ /xf8/x66 -+ /xf8/x67 -+ /xf8/x68 -+ /xf8/x69 -+ /xf8/x6a -+ /xf8/x6b -+ /xf8/x6c -+ /xf8/x6d -+ /xf8/x6e -+ /xf8/x6f -+ /xf8/x70 -+ /xf8/x71 -+ /xf8/x72 -+ /xf8/x73 -+ /xf8/x74 -+ /xf8/x75 -+ /xf8/x76 -+ /xf8/x77 -+ /xf8/x78 -+ /xf8/x79 -+ /xf8/x7a -+ /xf8/x7b -+ /xf8/x7c -+ /xf8/x7d -+ /xf8/x7e -+ /xf8/x80 -+ /xf8/x81 -+ /xf8/x82 -+ /xf8/x83 -+ /xf8/x84 -+ /xf8/x85 -+ /xf8/x86 -+ /xf8/x87 -+ /xf8/x88 -+ /xf8/x89 -+ /xf8/x8a -+ /xf8/x8b -+ /xf8/x8c -+ /xf8/x8d -+ /xf8/x8e -+ /xf8/x8f -+ /xf8/x90 -+ /xf8/x91 -+ /xf8/x92 -+ /xf8/x93 -+ /xf8/x94 -+ /xf8/x95 -+ /xf8/x96 -+ /xf8/x97 -+ /xf8/x98 -+ /xf8/x99 -+ /xf8/x9a -+ /xf8/x9b -+ /xf8/x9c -+ /xf8/x9d -+ /xf8/x9e -+ /xf8/x9f -+ /xf8/xa0 -+ /xf8/xa1 -+ /xf8/xa2 -+ /xf8/xa3 -+ /xf8/xa4 -+ /xf8/xa5 -+ /xf8/xa6 -+ /xf8/xa7 -+ /xf8/xa8 -+ /xf8/xa9 -+ /xf8/xaa -+ /xf8/xab -+ /xf8/xac -+ /xf8/xad -+ /xf8/xae -+ /xf8/xaf -+ /xf8/xb0 -+ /xf8/xb1 -+ /xf8/xb2 -+ /xf8/xb3 -+ /xf8/xb4 -+ /xf8/xb5 -+ /xf8/xb6 -+ /xf8/xb7 -+ /xf8/xb8 -+ /xf8/xb9 -+ /xf8/xba -+ /xf8/xbb -+ /xf8/xbc -+ /xf8/xbd -+ /xf8/xbe -+ /xf8/xbf -+ /xf8/xc0 -+ /xf8/xc1 -+ /xf8/xc2 -+ /xf8/xc3 -+ /xf8/xc4 -+ /xf8/xc5 -+ /xf8/xc6 -+ /xf8/xc7 -+ /xf8/xc8 -+ /xf8/xc9 -+ /xf8/xca -+ /xf8/xcb -+ /xf8/xcc -+ /xf8/xcd -+ /xf8/xce -+ /xf8/xcf -+ /xf8/xd0 -+ /xf8/xd1 -+ /xf8/xd2 -+ /xf8/xd3 -+ /xf8/xd4 -+ /xf8/xd5 -+ /xf8/xd6 -+ /xf8/xd7 -+ /xf8/xd8 -+ /xf8/xd9 -+ /xf8/xda -+ /xf8/xdb -+ /xf8/xdc -+ /xf8/xdd -+ /xf8/xde -+ /xf8/xdf -+ /xf8/xe0 -+ /xf8/xe1 -+ /xf8/xe2 -+ /xf8/xe3 -+ /xf8/xe4 -+ /xf8/xe5 -+ /xf8/xe6 -+ /xf8/xe7 -+ /xf8/xe8 -+ /xf8/xe9 -+ /xf8/xea -+ /xf8/xeb -+ /xf8/xec -+ /xf8/xed -+ /xf8/xee -+ /xf8/xef -+ /xf8/xf0 -+ /xf8/xf1 -+ /xf8/xf2 -+ /xf8/xf3 -+ /xf8/xf4 -+ /xf8/xf5 -+ /xf8/xf6 -+ /xf8/xf7 -+ /xf8/xf8 -+ /xf8/xf9 -+ /xf8/xfa -+ /xf8/xfb -+ /xf8/xfc -+ /xf9/x40 -+ /xf9/x41 -+ /xf9/x42 -+ /xf9/x43 -+ /xf9/x44 -+ /xf9/x45 -+ /xf9/x46 -+ /xf9/x47 -+ /xf9/x48 -+ /xf9/x49 -+ /xf9/x4a -+ /xf9/x4b -+ /xf9/x4c -+ /xf9/x4d -+ /xf9/x4e -+ /xf9/x4f -+ /xf9/x50 -+ /xf9/x51 -+ /xf9/x52 -+ /xf9/x53 -+ /xf9/x54 -+ /xf9/x55 -+ /xf9/x56 -+ /xf9/x57 -+ /xf9/x58 -+ /xf9/x59 -+ /xf9/x5a -+ /xf9/x5b -+ /xf9/x5c -+ /xf9/x5d -+ /xf9/x5e -+ /xf9/x5f -+ /xf9/x60 -+ /xf9/x61 -+ /xf9/x62 -+ /xf9/x63 -+ /xf9/x64 -+ /xf9/x65 -+ /xf9/x66 -+ /xf9/x67 -+ /xf9/x68 -+ /xf9/x69 -+ /xf9/x6a -+ /xf9/x6b -+ /xf9/x6c -+ /xf9/x6d -+ /xf9/x6e -+ /xf9/x6f -+ /xf9/x70 -+ /xf9/x71 -+ /xf9/x72 -+ /xf9/x73 -+ /xf9/x74 -+ /xf9/x75 -+ /xf9/x76 -+ /xf9/x77 -+ /xf9/x78 -+ /xf9/x79 -+ /xf9/x7a -+ /xf9/x7b -+ /xf9/x7c -+ /xf9/x7d -+ /xf9/x7e -+ /xf9/x80 -+ /xf9/x81 -+ /xf9/x82 -+ /xf9/x83 -+ /xf9/x84 -+ /xf9/x85 -+ /xf9/x86 -+ /xf9/x87 -+ /xf9/x88 -+ /xf9/x89 -+ /xf9/x8a -+ /xf9/x8b -+ /xf9/x8c -+ /xf9/x8d -+ /xf9/x8e -+ /xf9/x8f -+ /xf9/x90 -+ /xf9/x91 -+ /xf9/x92 -+ /xf9/x93 -+ /xf9/x94 -+ /xf9/x95 -+ /xf9/x96 -+ /xf9/x97 -+ /xf9/x98 -+ /xf9/x99 -+ /xf9/x9a -+ /xf9/x9b -+ /xf9/x9c -+ /xf9/x9d -+ /xf9/x9e -+ /xf9/x9f -+ /xf9/xa0 -+ /xf9/xa1 -+ /xf9/xa2 -+ /xf9/xa3 -+ /xf9/xa4 -+ /xf9/xa5 -+ /xf9/xa6 -+ /xf9/xa7 -+ /xf9/xa8 -+ /xf9/xa9 -+ /xf9/xaa -+ /xf9/xab -+ /xf9/xac -+ /xf9/xad -+ /xf9/xae -+ /xf9/xaf -+ /xf9/xb0 -+ /xf9/xb1 -+ /xf9/xb2 -+ /xf9/xb3 -+ /xf9/xb4 -+ /xf9/xb5 -+ /xf9/xb6 -+ /xf9/xb7 -+ /xf9/xb8 -+ /xf9/xb9 -+ /xf9/xba -+ /xf9/xbb -+ /xf9/xbc -+ /xf9/xbd -+ /xf9/xbe -+ /xf9/xbf -+ /xf9/xc0 -+ /xf9/xc1 -+ /xf9/xc2 -+ /xf9/xc3 -+ /xf9/xc4 -+ /xf9/xc5 -+ /xf9/xc6 -+ /xf9/xc7 -+ /xf9/xc8 -+ /xf9/xc9 -+ /xf9/xca -+ /xf9/xcb -+ /xf9/xcc -+ /xf9/xcd -+ /xf9/xce -+ /xf9/xcf -+ /xf9/xd0 -+ /xf9/xd1 -+ /xf9/xd2 -+ /xf9/xd3 -+ /xf9/xd4 -+ /xf9/xd5 -+ /xf9/xd6 -+ /xf9/xd7 -+ /xf9/xd8 -+ /xf9/xd9 -+ /xf9/xda -+ /xf9/xdb -+ /xf9/xdc -+ /xf9/xdd -+ /xf9/xde -+ /xf9/xdf -+ /xf9/xe0 -+ /xf9/xe1 -+ /xf9/xe2 -+ /xf9/xe3 -+ /xf9/xe4 -+ /xf9/xe5 -+ /xf9/xe6 -+ /xf9/xe7 -+ /xf9/xe8 -+ /xf9/xe9 -+ /xf9/xea -+ /xf9/xeb -+ /xf9/xec -+ /xf9/xed -+ /xf9/xee -+ /xf9/xef -+ /xf9/xf0 -+ /xf9/xf1 -+ /xf9/xf2 -+ /xf9/xf3 -+ /xf9/xf4 -+ /xf9/xf5 -+ /xf9/xf6 -+ /xf9/xf7 -+ /xf9/xf8 -+ /xf9/xf9 -+ /xf9/xfa -+ /xf9/xfb -+ /xf9/xfc -+ -+ /xfa/x40 SMALL ROMAN NUMERAL ONE -+ /xfa/x41 SMALL ROMAN NUMERAL TWO -+ /xfa/x42 SMALL ROMAN NUMERAL THREE -+ /xfa/x43 SMALL ROMAN NUMERAL FOUR -+ /xfa/x44 SMALL ROMAN NUMERAL FIVE -+ /xfa/x45 SMALL ROMAN NUMERAL SIX -+ /xfa/x46 SMALL ROMAN NUMERAL SEVEN -+ /xfa/x47 SMALL ROMAN NUMERAL EIGHT -+ /xfa/x48 SMALL ROMAN NUMERAL NINE -+ /xfa/x49 SMALL ROMAN NUMERAL TEN -+%IRREVERSIBLE% /xfa/x4a ROMAN NUMERAL ONE -+%IRREVERSIBLE% /xfa/x4b ROMAN NUMERAL TWO -+%IRREVERSIBLE% /xfa/x4c ROMAN NUMERAL THREE -+%IRREVERSIBLE% /xfa/x4d ROMAN NUMERAL FOUR -+%IRREVERSIBLE% /xfa/x4e ROMAN NUMERAL FIVE -+%IRREVERSIBLE% /xfa/x4f ROMAN NUMERAL SIX -+%IRREVERSIBLE% /xfa/x50 ROMAN NUMERAL SEVEN -+%IRREVERSIBLE% /xfa/x51 ROMAN NUMERAL EIGHT -+%IRREVERSIBLE% /xfa/x52 ROMAN NUMERAL NINE -+%IRREVERSIBLE% /xfa/x53 ROMAN NUMERAL TEN -+%IRREVERSIBLE% /xfa/x54 FULLWIDTH NOT SIGN -+ /xfa/x55 FULLWIDTH BROKEN BAR -+ /xfa/x56 FULLWIDTH APOSTROPHE -+ /xfa/x57 FULLWIDTH QUOTATION MARK -+%IRREVERSIBLE% /xfa/x58 PARENTHESIZED IDEOGRAPH STOCK -+%IRREVERSIBLE% /xfa/x59 NUMERO SIGN -+%IRREVERSIBLE% /xfa/x5a TELEPHONE SIGN -+%IRREVERSIBLE% /xfa/x5b BECAUSE -+ /xfa/x5c -+ /xfa/x5d -+ /xfa/x5e -+ /xfa/x5f -+ /xfa/x60 -+ /xfa/x61 -+ /xfa/x62 -+ /xfa/x63 -+ /xfa/x64 -+ /xfa/x65 -+ /xfa/x66 -+ /xfa/x67 -+ /xfa/x68 -+ /xfa/x69 -+ /xfa/x6a -+ /xfa/x6b -+ /xfa/x6c -+ /xfa/x6d -+ /xfa/x6e -+ /xfa/x6f -+ /xfa/x70 -+ /xfa/x71 -+ /xfa/x72 -+ /xfa/x73 -+ /xfa/x74 -+ /xfa/x75 -+ /xfa/x76 -+ /xfa/x77 -+ /xfa/x78 -+ /xfa/x79 -+ /xfa/x7a -+ /xfa/x7b -+ /xfa/x7c -+ /xfa/x7d -+ /xfa/x7e -+ /xfa/x80 -+ /xfa/x81 -+ /xfa/x82 -+ /xfa/x83 -+ /xfa/x84 -+ /xfa/x85 -+ /xfa/x86 -+ /xfa/x87 -+ /xfa/x88 -+ /xfa/x89 -+ /xfa/x8a -+ /xfa/x8b -+ /xfa/x8c -+ /xfa/x8d -+ /xfa/x8e -+ /xfa/x8f -+ /xfa/x90 CJK COMPATIBILITY IDEOGRAPH-FA0E -+ /xfa/x91 -+ /xfa/x92 -+ /xfa/x93 -+ /xfa/x94 -+ /xfa/x95 -+ /xfa/x96 -+ /xfa/x97 -+ /xfa/x98 -+ /xfa/x99 -+ /xfa/x9a -+ /xfa/x9b CJK COMPATIBILITY IDEOGRAPH-FA0F -+ /xfa/x9c CJK COMPATIBILITY IDEOGRAPH-FA10 -+ /xfa/x9d -+ /xfa/x9e -+ /xfa/x9f -+ /xfa/xa0 -+ /xfa/xa1 -+ /xfa/xa2 -+ /xfa/xa3 -+ /xfa/xa4 -+ /xfa/xa5 -+ /xfa/xa6 -+ /xfa/xa7 -+ /xfa/xa8 -+ /xfa/xa9 -+ /xfa/xaa -+ /xfa/xab -+ /xfa/xac -+ /xfa/xad -+ /xfa/xae -+ /xfa/xaf -+ /xfa/xb0 -+ /xfa/xb1 CJK COMPATIBILITY IDEOGRAPH-FA11 -+ /xfa/xb2 -+ /xfa/xb3 -+ /xfa/xb4 -+ /xfa/xb5 -+ /xfa/xb6 -+ /xfa/xb7 -+ /xfa/xb8 -+ /xfa/xb9 -+ /xfa/xba -+ /xfa/xbb -+ /xfa/xbc -+ /xfa/xbd -+ /xfa/xbe -+ /xfa/xbf -+ /xfa/xc0 -+ /xfa/xc1 -+ /xfa/xc2 -+ /xfa/xc3 -+ /xfa/xc4 -+ /xfa/xc5 -+ /xfa/xc6 -+ /xfa/xc7 -+ /xfa/xc8 -+ /xfa/xc9 -+ /xfa/xca -+ /xfa/xcb -+ /xfa/xcc -+ /xfa/xcd -+ /xfa/xce -+ /xfa/xcf -+ /xfa/xd0 -+ /xfa/xd1 -+ /xfa/xd2 -+ /xfa/xd3 -+ /xfa/xd4 -+ /xfa/xd5 -+ /xfa/xd6 -+ /xfa/xd7 -+ /xfa/xd8 CJK COMPATIBILITY IDEOGRAPH-FA12 -+ /xfa/xd9 -+ /xfa/xda -+ /xfa/xdb -+ /xfa/xdc -+ /xfa/xdd -+ /xfa/xde -+ /xfa/xdf -+ /xfa/xe0 CJK COMPATIBILITY IDEOGRAPH-F929 -+ /xfa/xe1 -+ /xfa/xe2 -+ /xfa/xe3 -+ /xfa/xe4 -+ /xfa/xe5 -+ /xfa/xe6 -+ /xfa/xe7 -+ /xfa/xe8 CJK COMPATIBILITY IDEOGRAPH-FA13 -+ /xfa/xe9 -+ /xfa/xea CJK COMPATIBILITY IDEOGRAPH-FA14 -+ /xfa/xeb -+ /xfa/xec -+ /xfa/xed -+ /xfa/xee -+ /xfa/xef -+ /xfa/xf0 -+ /xfa/xf1 -+ /xfa/xf2 -+ /xfa/xf3 -+ /xfa/xf4 -+ /xfa/xf5 -+ /xfa/xf6 -+ /xfa/xf7 -+ /xfa/xf8 -+ /xfa/xf9 -+ /xfa/xfa -+ /xfa/xfb -+ /xfa/xfc -+ /xfb/x40 -+ /xfb/x41 -+ /xfb/x42 -+ /xfb/x43 -+ /xfb/x44 -+ /xfb/x45 -+ /xfb/x46 -+ /xfb/x47 -+ /xfb/x48 -+ /xfb/x49 -+ /xfb/x4a -+ /xfb/x4b -+ /xfb/x4c -+ /xfb/x4d -+ /xfb/x4e -+ /xfb/x4f -+ /xfb/x50 -+ /xfb/x51 -+ /xfb/x52 -+ /xfb/x53 -+ /xfb/x54 -+ /xfb/x55 -+ /xfb/x56 -+ /xfb/x57 -+ /xfb/x58 CJK COMPATIBILITY IDEOGRAPH-FA15 -+ /xfb/x59 -+ /xfb/x5a -+ /xfb/x5b -+ /xfb/x5c -+ /xfb/x5d -+ /xfb/x5e CJK COMPATIBILITY IDEOGRAPH-FA16 -+ /xfb/x5f -+ /xfb/x60 -+ /xfb/x61 -+ /xfb/x62 -+ /xfb/x63 -+ /xfb/x64 -+ /xfb/x65 -+ /xfb/x66 -+ /xfb/x67 -+ /xfb/x68 -+ /xfb/x69 -+ /xfb/x6a -+ /xfb/x6b -+ /xfb/x6c -+ /xfb/x6d -+ /xfb/x6e -+ /xfb/x6f -+ /xfb/x70 -+ /xfb/x71 -+ /xfb/x72 -+ /xfb/x73 -+ /xfb/x74 -+ /xfb/x75 CJK COMPATIBILITY IDEOGRAPH-FA17 -+ /xfb/x76 -+ /xfb/x77 -+ /xfb/x78 -+ /xfb/x79 -+ /xfb/x7a -+ /xfb/x7b -+ /xfb/x7c -+ /xfb/x7d CJK COMPATIBILITY IDEOGRAPH-FA18 -+ /xfb/x7e CJK COMPATIBILITY IDEOGRAPH-FA19 -+ /xfb/x80 CJK COMPATIBILITY IDEOGRAPH-FA1A -+ /xfb/x81 -+ /xfb/x82 CJK COMPATIBILITY IDEOGRAPH-FA1B -+ /xfb/x83 -+ /xfb/x84 -+ /xfb/x85 -+ /xfb/x86 CJK COMPATIBILITY IDEOGRAPH-FA1C -+ /xfb/x87 -+ /xfb/x88 -+ /xfb/x89 CJK COMPATIBILITY IDEOGRAPH-FA1D -+ /xfb/x8a -+ /xfb/x8b -+ /xfb/x8c -+ /xfb/x8d -+ /xfb/x8e -+ /xfb/x8f -+ /xfb/x90 -+ /xfb/x91 -+ /xfb/x92 CJK COMPATIBILITY IDEOGRAPH-FA1E -+ /xfb/x93 -+ /xfb/x94 -+ /xfb/x95 -+ /xfb/x96 -+ /xfb/x97 -+ /xfb/x98 -+ /xfb/x99 -+ /xfb/x9a -+ /xfb/x9b -+ /xfb/x9c -+ /xfb/x9d CJK COMPATIBILITY IDEOGRAPH-FA1F -+ /xfb/x9e -+ /xfb/x9f CJK COMPATIBILITY IDEOGRAPH-FA20 -+ /xfb/xa0 CJK COMPATIBILITY IDEOGRAPH-FA21 -+ /xfb/xa1 -+ /xfb/xa2 -+ /xfb/xa3 -+ /xfb/xa4 -+ /xfb/xa5 -+ /xfb/xa6 -+ /xfb/xa7 -+ /xfb/xa8 -+ /xfb/xa9 CJK COMPATIBILITY IDEOGRAPH-FA22 -+ /xfb/xaa -+ /xfb/xab -+ /xfb/xac -+ /xfb/xad -+ /xfb/xae -+ /xfb/xaf -+ /xfb/xb0 -+ /xfb/xb1 CJK COMPATIBILITY IDEOGRAPH-FA23 -+ /xfb/xb2 -+ /xfb/xb3 CJK COMPATIBILITY IDEOGRAPH-FA24 -+ /xfb/xb4 CJK COMPATIBILITY IDEOGRAPH-FA25 -+ /xfb/xb5 -+ /xfb/xb6 -+ /xfb/xb7 CJK COMPATIBILITY IDEOGRAPH-FA26 -+ /xfb/xb8 -+ /xfb/xb9 -+ /xfb/xba -+ /xfb/xbb -+ /xfb/xbc -+ /xfb/xbd -+ /xfb/xbe -+ /xfb/xbf -+ /xfb/xc0 -+ /xfb/xc1 -+ /xfb/xc2 -+ /xfb/xc3 -+ /xfb/xc4 -+ /xfb/xc5 -+ /xfb/xc6 -+ /xfb/xc7 -+ /xfb/xc8 -+ /xfb/xc9 -+ /xfb/xca -+ /xfb/xcb -+ /xfb/xcc -+ /xfb/xcd -+ /xfb/xce -+ /xfb/xcf -+ /xfb/xd0 -+ /xfb/xd1 -+ /xfb/xd2 -+ /xfb/xd3 CJK COMPATIBILITY IDEOGRAPH-FA27 -+ /xfb/xd4 -+ /xfb/xd5 -+ /xfb/xd6 -+ /xfb/xd7 -+ /xfb/xd8 -+ /xfb/xd9 -+ /xfb/xda CJK COMPATIBILITY IDEOGRAPH-FA28 -+ /xfb/xdb -+ /xfb/xdc -+ /xfb/xdd -+ /xfb/xde -+ /xfb/xdf -+ /xfb/xe0 -+ /xfb/xe1 -+ /xfb/xe2 -+ /xfb/xe3 -+ /xfb/xe4 -+ /xfb/xe5 -+ /xfb/xe6 -+ /xfb/xe7 -+ /xfb/xe8 -+ /xfb/xe9 CJK COMPATIBILITY IDEOGRAPH-F9DC -+ /xfb/xea CJK COMPATIBILITY IDEOGRAPH-FA29 -+ /xfb/xeb -+ /xfb/xec -+ /xfb/xed -+ /xfb/xee -+ /xfb/xef -+ /xfb/xf0 -+ /xfb/xf1 -+ /xfb/xf2 -+ /xfb/xf3 -+ /xfb/xf4 -+ /xfb/xf5 -+ /xfb/xf6 CJK COMPATIBILITY IDEOGRAPH-FA2A -+ /xfb/xf7 CJK COMPATIBILITY IDEOGRAPH-FA2B -+ /xfb/xf8 -+ /xfb/xf9 CJK COMPATIBILITY IDEOGRAPH-FA2C -+ /xfb/xfa -+ /xfb/xfb -+ /xfb/xfc -+ /xfc/x40 -+ /xfc/x41 -+ /xfc/x42 -+ /xfc/x43 -+ /xfc/x44 -+ /xfc/x45 -+ /xfc/x46 -+ /xfc/x47 -+ /xfc/x48 -+ /xfc/x49 CJK COMPATIBILITY IDEOGRAPH-FA2D -+ /xfc/x4a -+ /xfc/x4b -+END CHARMAP -+ -+WIDTH -+... 2 -+... 2 -+... 2 -+... 2 -+... 2 -+END WIDTH ---- glibc-2.3.2/localedata/collate-test.c 2001-07-07 15:21:05.000000000 -0400 -+++ glibc-2.3.2/localedata/collate-test.c 2003-08-21 08:37:05.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Test collation function using real data. -- Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1997, 1999, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1997. - -@@ -19,6 +19,7 @@ - 02111-1307 USA. */ - - #include -+#include - #include - #include - #include -@@ -27,8 +28,8 @@ - - struct lines - { -- const char *key; -- const char *line; -+ char *key; -+ char *line; - }; - - static int xstrcoll (const void *, const void *); -@@ -43,6 +44,9 @@ - size_t len = 0; - size_t n; - -+ if (argc < 2) -+ error (1, 0, "usage: %s ", argv[0]); -+ - setlocale (LC_ALL, ""); - - nstrings_max = 100; -@@ -63,8 +67,8 @@ - if (nstrings == nstrings_max) - { - strings = (struct lines *) realloc (strings, -- (nstrings_max *= 2 -- * sizeof (*strings))); -+ (nstrings_max *= 2) -+ * sizeof (*strings)); - if (strings == NULL) - { - perror (argv[0]); -@@ -78,6 +82,7 @@ - strings[nstrings].key = strndup (line, l); - ++nstrings; - } -+ free (line); - - /* First shuffle. */ - srandom (atoi (argv[1])); -@@ -105,7 +110,12 @@ - - /* Print the result. */ - for (n = 0; n < nstrings; ++n) -- fputs (strings[n].line, stdout); -+ { -+ fputs (strings[n].line, stdout); -+ free (strings[n].line); -+ free (strings[n].key); -+ } -+ free (strings); - - return result; - } ---- glibc-2.3.2/localedata/locales/an_ES 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/localedata/locales/an_ES 2003-09-19 22:37:05.000000000 -0400 -@@ -0,0 +1,126 @@ -+comment_char % -+escape_char / -+% -+% Aragonese Language Locale for Spain -+% Source: -+% Address: -+% Contact: Jordi Mallach Pérez -+% Email: jordi@gnu.org -+% Language: an -+% Territory: ES -+% Revision: 1.0 -+% Date: 2003-05-22 -+% Application: general -+% Users: general -+% Charset: ISO-8859-15 -+% -+% This file is under the -+% GNU General Public License. -+% Based in the gl_ES Locale -+ -+LC_IDENTIFICATION -+title "Aragonese locale for Spain" -+source "" -+address "" -+contact "Jordi Mallach Pérez" -+email "bug-glibc@gnu.org" -+tel "" -+fax "" -+language "Aragonese" -+territory "Spain" -+revision "1.1" -+date "2003-08-25" -+% -+category "i18n:1999";LC_IDENTIFICATION -+category "i18n:1999";LC_CTYPE -+category "i18n:1999";LC_COLLATE -+category "i18n:1999";LC_TIME -+category "posix:1993";LC_NUMERIC -+category "i18n:1999";LC_MONETARY -+category "i18n:1999";LC_MESSAGES -+category "i18n:1999";LC_PAPER -+category "i18n:1999";LC_NAME -+category "i18n:1999";LC_ADDRESS -+category "i18n:1999";LC_TELEPHONE -+END LC_IDENTIFICATION -+ -+LC_COLLATE -+copy "es_ES" -+END LC_COLLATE -+ -+LC_CTYPE -+copy "es_ES" -+END LC_CTYPE -+ -+LC_MESSAGES -+yesexpr "" -+noexpr "" -+END LC_MESSAGES -+ -+LC_MONETARY -+copy "es_ES" -+END LC_MONETARY -+ -+LC_NUMERIC -+copy "es_ES" -+END LC_NUMERIC -+ -+LC_TIME -+abday "";"";/ -+ "";"";/ -+ "";"";/ -+ "" -+day "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+abmon "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"" -+mon "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+d_t_fmt "" -+d_fmt "" -+t_fmt "" -+am_pm "";"" -+t_fmt_ampm "" -+date_fmt "/ -+/ -+" -+END LC_TIME -+ -+LC_PAPER -+copy "es_ES" -+END LC_PAPER -+ -+LC_TELEPHONE -+copy "es_ES" -+END LC_TELEPHONE -+ -+LC_MEASUREMENT -+copy "es_ES" -+END LC_MEASUREMENT -+ -+LC_NAME -+copy "es_ES" -+END LC_NAME -+ -+LC_ADDRESS -+copy "es_ES" -+END LC_ADDRESS ---- glibc-2.3.2/localedata/locales/ar_BH 2000-10-26 13:42:04.000000000 -0400 -+++ glibc-2.3.2/localedata/locales/ar_BH 2003-04-24 20:05:58.000000000 -0400 -@@ -5,7 +5,7 @@ - % Tetsuji Orita . - - LC_IDENTIFICATION --title "Arabic language locale for Bahrein" -+title "Arabic language locale for Bahrain" - source "IBM Globalization Center of Competency, Yamato Software Laboratory" - address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan" - contact "" -@@ -13,7 +13,7 @@ - tel "" - fax "" - language "Arabic" --territory "Bahrein" -+territory "Bahrain" - revision "1.0" - date "2000-07-20" - % ---- glibc-2.3.2/localedata/locales/ar_SD 2000-10-26 13:44:45.000000000 -0400 -+++ glibc-2.3.2/localedata/locales/ar_SD 2003-04-24 20:05:58.000000000 -0400 -@@ -47,7 +47,7 @@ - % These are generated based on XML base Locale difintion file - % for IBM Class for Unicode/Java - % --int_curr_symbol "" -+int_curr_symbol "" - currency_symbol "" - mon_decimal_point "" - mon_thousands_sep "" ---- glibc-2.3.2/localedata/locales/de_DE 2002-02-28 03:34:13.000000000 -0500 -+++ glibc-2.3.2/localedata/locales/de_DE 2003-05-12 12:13:05.000000000 -0400 -@@ -94,10 +94,10 @@ - END LC_NUMERIC - - LC_TIME --abday "";"";/ -- "";"";/ -- "";"";/ -- "" -+abday "";"";/ -+ "";"";/ -+ "";"";/ -+ "" - day "";/ - "";/ - "";/ ---- glibc-2.3.2/localedata/locales/en_ZA 2000-10-26 13:48:46.000000000 -0400 -+++ glibc-2.3.2/localedata/locales/en_ZA 2003-03-18 16:46:07.000000000 -0500 -@@ -2,44 +2,54 @@ - comment_char % - - % English language locale for South Africa --% Source: RAP --% Email: nic@sig.co.za --% Tel: +27 83 7659503 --% Fax: +27 12 3478098 -+% Source: Zuza Software Foundation -+% Email: dwayne@translate.org.za -+% Tel: +27 21 4487827 -+% Fax: +27 21 4489574 - % Language: en - % Territory: ZA --% Revision: 1.0 --% Date: 1999-03-28 -+% Revision: 1.1 -+% Date: 2003-03-14 - % Users: general - % Repertoiremap: mnemonic,ds - % Charset: ISO-8859-1 - % Distribution and use is free, also - % for commercial purposes. -+% -+% Changelog -+% 1.1 (2003-03-14): -+% - Updated maintainer to Zuza Sofware Foundation -+% - Changed %x for LC_TIME to use dd/mm/ccyy -+% - Added ^ to LC_MESSAGES regex "^[yY].*" -+% - Confirmed LC_PAPER and LC_MEASUREMENT settings -+% - Added country and language names to LC_ADDRESS -+% - Added missing info for LC_TELEPHONE - - LC_IDENTIFICATION - title "English locale for South Africa" --source "RAP" --address "" --contact "" --email "bug-glibc@gnu.org" --tel "" --fax "" -+source "Zuza Software Foundation" -+address "Box 13412, Mowbray, 7701, South Africa" -+contact "Dwayne Bailey" -+email "dwayne@translate.org.za" -+tel "+27 21 448 7827" -+fax "+27 21 448 9574" - language "English" - territory "South Africa" --revision "1.0" --date "2000-06-29" -+revision "1.1" -+date "2003-03-14" - % --category "en_ZA:2000";LC_IDENTIFICATION -+category "en_ZA:2003";LC_IDENTIFICATION - category "en_ZA:2000";LC_CTYPE - category "en_ZA:2000";LC_COLLATE --category "en_ZA:2000";LC_TIME -+category "en_ZA:2003";LC_TIME - category "en_ZA:2000";LC_NUMERIC - category "en_ZA:2000";LC_MONETARY --category "en_ZA:2000";LC_MESSAGES -+category "en_ZA:2003";LC_MESSAGES - category "en_ZA:2000";LC_PAPER -+category "en_ZA:2000";LC_MEASUREMENT - category "en_ZA:2000";LC_NAME --category "en_ZA:2000";LC_ADDRESS --category "en_ZA:2000";LC_TELEPHONE -+category "en_ZA:2003";LC_ADDRESS -+category "en_ZA:2003";LC_TELEPHONE - - END LC_IDENTIFICATION - -@@ -106,7 +116,7 @@ - "";/ - "" - d_t_fmt "" --d_fmt "" -+d_fmt "" - t_fmt "" - am_pm "";"" - t_fmt_ampm "" -@@ -116,25 +126,25 @@ - END LC_TIME - - LC_MESSAGES --yesexpr "" --noexpr "" -+yesexpr "" -+noexpr "" - END LC_MESSAGES - - LC_PAPER --% FIXME - height 297 --% FIXME - width 210 - END LC_PAPER - - LC_TELEPHONE - tel_int_fmt "/ - " -+tel_dom_fmt "" -+int_select "" - int_prefix "" -+ - END LC_TELEPHONE - - LC_MEASUREMENT --% FIXME - measurement 1 - END LC_MEASUREMENT - -@@ -149,4 +159,7 @@ - / - / - " -+country_name "/ -+" -+lang_name "" - END LC_ADDRESS ---- glibc-2.3.2/localedata/locales/es_EC 2002-08-02 16:00:00.000000000 -0400 -+++ glibc-2.3.2/localedata/locales/es_EC 2003-04-24 20:05:58.000000000 -0400 -@@ -61,7 +61,7 @@ - END LC_MESSAGES - - LC_MONETARY --int_curr_symbol "" -+int_curr_symbol "" - currency_symbol "" - mon_decimal_point "" - mon_thousands_sep "" ---- glibc-2.3.2/localedata/locales/fi_FI 2002-02-28 03:45:33.000000000 -0500 -+++ glibc-2.3.2/localedata/locales/fi_FI 2003-08-21 08:37:06.000000000 -0400 -@@ -19,6 +19,10 @@ - % Charset: ISO-8859-1 - % Distribution and use is free, also - % for commercial purposes. -+% -+% Useful sources: -+% Locale info for Finnish in Finland -+% http://std.dkuug.dk/cultreg/registrations/narrative/fi_FI,_1.0 - - LC_IDENTIFICATION - title "Finnish locale for Finland" -@@ -2121,7 +2125,7 @@ - int_curr_symbol "" - currency_symbol "" - mon_decimal_point "" --mon_thousands_sep "" -+mon_thousands_sep "" - mon_grouping 3;3 - positive_sign "" - negative_sign "" -@@ -2139,7 +2143,7 @@ - - LC_NUMERIC - decimal_point "" --thousands_sep "" -+thousands_sep "" - grouping 3;3 - END LC_NUMERIC - -@@ -2178,14 +2182,15 @@ - "";/ - "";/ - "" --d_t_fmt "" -+d_t_fmt "/ -+" - d_fmt "" - t_fmt "" - am_pm "";"" - t_fmt_ampm "" --date_fmt "/ --/ --" -+date_fmt "/ -+/ -+" - END LC_TIME - - LC_MESSAGES ---- glibc-2.3.2/localedata/locales/he_IL 2000-10-26 13:53:59.000000000 -0400 -+++ glibc-2.3.2/localedata/locales/he_IL 2003-09-19 22:37:05.000000000 -0400 -@@ -18,6 +18,10 @@ - % Charset: ISO-8859-8 - % Distribution and use is free, also - % for commercial purposes. -+% -+% This locale replaces iw_IL, as the ISO-639 code for Hebrew was changed -+% from 'iw' to 'he' in 1989, according to Bruno Haible on libc-alpha -+% 2003-09-01. - - LC_IDENTIFICATION - title "Hebrew locale for Israel" ---- glibc-2.3.2/localedata/locales/is_IS 2000-10-26 13:54:41.000000000 -0400 -+++ glibc-2.3.2/localedata/locales/is_IS 2003-08-21 08:37:06.000000000 -0400 -@@ -2185,35 +2185,35 @@ - END LC_NUMERIC - - LC_TIME --abday "";"";/ -- "";"";/ -- "";"";/ -- "" --day "";/ -- "";/ -- "";/ -- "";/ -- "";/ -- "";/ -- "" --abmon "";"";/ -- "";"";/ -- "";"";/ -- "";"";/ -- "";"";/ -- "";"" --mon "";/ -- "";/ -- "";/ -- "";/ -- "";/ -- "";/ -- "";/ -- "";/ -- "";/ -- "";/ -- "";/ -- "" -+abday "";"";/ -+ "";"";/ -+ "";"";/ -+ "" -+day "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+abmon "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"" -+mon "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" - d_t_fmt "" - d_fmt "" - t_fmt "" ---- glibc-2.3.2/localedata/locales/iw_IL 2000-10-26 13:55:07.000000000 -0400 -+++ glibc-2.3.2/localedata/locales/iw_IL 2003-09-19 22:37:05.000000000 -0400 -@@ -18,6 +18,9 @@ - % Charset: ISO-8859-8 - % Distribution and use is free, also - % for commercial purposes. -+% -+% Obsolete locale. The ISO-639 code for Hebrew was changed from 'iw' -+% to 'he' in 1989, according to Bruno Haible on libc-alpha 2003-09-01. - - LC_IDENTIFICATION - title "Hebrew locale for Israel" ---- glibc-2.3.2/localedata/locales/lo_LA 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/localedata/locales/lo_LA 2003-09-19 22:37:05.000000000 -0400 -@@ -0,0 +1,782 @@ -+escape_char / -+comment_char % -+ -+% -+% Lao Lanuage Locale for Laos -+% -+% Name: lo_LA -+% Author: Anousak Souphavanh -+% Contact: -+% E-mail: Anousak@muanglao.com -+% Language: Lao -+% Territory: Laos -+% Charset: UTF-8 -+% Revision: 1.2 -+% Date: 2003-15-09 -+% -+ -+% -+% Copyright (C) 2002 Anousak Souphavanh -+ -+% -+% Permission is hereby granted, free of charge, to any person obtaining -+% a copy of this software and associated documentation files (the "Software"), -+% to deal in the Software without restriction, including without limitation -+% the rights to use, copy, modify, merge, publish, distribute, sublicense, -+% and/or sell copies of the Software, and to permit persons to whom the -+% Software is furnished to do so, subject to the following conditions: -+% -+% The above copyright notice and this permission notice shall be included -+% in all copies or substantial portions of the Software. -+% -+% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -+% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -+% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -+% THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -+% OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -+% ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -+% OTHER DEALINGS IN THE SOFTWARE. -+% -+% -+% -+% Note: I would like to give a special thank to Mr. Pablo Salatxaga @ Mandrake , email "srtxg@chanae.alphanet.ch" -+% & Theppitak Karoonboonyanan, email: 'thep@linux.thai.net', all had guided me in the right direction. -+ -+LC_IDENTIFICATION -+title "Lao locale for Laos" -+source "" -+address "" -+contact "Anousak Souphavanh at: anousak@muanglao.com" -+email "bug-glibc@gnu.org" -+tel "" -+fax "" -+language "Lao" -+territory "Laos" -+revision "1.0" -+date "2003-4-1" -+% -+category "lo_LA:2000";LC_IDENTIFICATION -+category "lo_LA:2000";LC_CTYPE -+category "lo_LA:2000";LC_COLLATE -+category "lo_LA:2000";LC_TIME -+category "lo_LA:2000";LC_NUMERIC -+category "lo_LA:2000";LC_MONETARY -+category "lo_LA:2000";LC_MESSAGES -+category "lo_LA:2000";LC_PAPER -+category "lo_LA:2000";LC_NAME -+category "lo_LA:2000";LC_ADDRESS -+category "lo_LA:2000";LC_TELEPHONE -+ -+END LC_IDENTIFICATION -+ -+LC_CTYPE -+copy "i18n" -+translit_start -+include "translit_combining";"" -+translit_end -+END LC_CTYPE -+ -+LC_COLLATE -+ -+% -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+collating-element from "" -+ -+ -+collating-symbol -+collating-symbol -+collating-symbol -+collating-symbol -+collating-symbol -+ -+order_start forward;forward;forward;forward -+ -+% definitions of extra collating symbols -+ -+ -+ -+ -+ -+ -+UNDEFINED IGNORE;IGNORE;IGNORE;IGNORE -+ -+% punctuation marks, ordered after ISO/IEC 14651 -+ IGNORE;IGNORE;;IGNORE % SPACE -+ IGNORE;IGNORE;;IGNORE % LOW LINE -+ IGNORE;IGNORE;;IGNORE % HYPHEN-MINUS -+ IGNORE;IGNORE;;IGNORE % COMMA -+ IGNORE;IGNORE;;IGNORE % SEMICOLON -+ IGNORE;IGNORE;;IGNORE % COLON -+ IGNORE;IGNORE;;IGNORE % EXCLAMATION MARK -+ IGNORE;IGNORE;;IGNORE % QUESTION MARK -+ IGNORE;IGNORE;;IGNORE % SOLIDUS -+ IGNORE;IGNORE;;IGNORE % FULL STOP -+ IGNORE;IGNORE;;IGNORE % Lao CHARACTER Lao Ellipse -+ IGNORE;IGNORE;;IGNORE % GRAVE ACCENT -+ IGNORE;IGNORE;;IGNORE % CIRCUMFLEX -+ IGNORE;IGNORE;;IGNORE % TILDE -+ IGNORE;IGNORE;;IGNORE % APOSTROPHE -+ IGNORE;IGNORE;;IGNORE % QUOTATION MARK -+ IGNORE;IGNORE;;IGNORE % LEFT PAREN. -+ IGNORE;IGNORE;;IGNORE % LT BRACKET -+ IGNORE;IGNORE;;IGNORE % LEFT CURLY BRACKET -+ IGNORE;IGNORE;;IGNORE % RIGHT CURLY BRACKET -+ IGNORE;IGNORE;;IGNORE % RT BRACKET -+ IGNORE;IGNORE;;IGNORE % RIGHT PAREN. -+ IGNORE;IGNORE;;IGNORE % COMMERCIAL AT -+ IGNORE;IGNORE;;IGNORE % Lao CHARACTER SYMBOL KIP -+ IGNORE;IGNORE;;IGNORE % DOLLAR SIGN -+ IGNORE;IGNORE;;IGNORE % ASTERISK -+ IGNORE;IGNORE;;IGNORE % BACK SOLIDUS -+ IGNORE;IGNORE;;IGNORE % AMPERSAND -+ IGNORE;IGNORE;;IGNORE % NUMBER SIGN -+ IGNORE;IGNORE;;IGNORE % PERCENT -+ IGNORE;IGNORE;;IGNORE % PLUS -+ IGNORE;IGNORE;;IGNORE % LESS THAN -+ IGNORE;IGNORE;;IGNORE % EQUAL -+ IGNORE;IGNORE;;IGNORE % GREATER THAN -+ IGNORE;IGNORE;;IGNORE % VERTICAL LINE -+ -+% Lao tone marks and diacritics -+ -+ IGNORE;;; % Lao CHARACTER THANTHAKHAT Or Cancellation Mark -+ IGNORE;;; % Lao CHARACTER MAI EK -+ IGNORE;;; % Lao CHARACTER MAI THO -+ IGNORE;;; % Lao CHARACTER MAI TI -+ IGNORE;;; % Lao CHARACTER MAI CHATTAWA -+ IGNORE;;; % Lao CHARACTER MAI Kon -+ IGNORE;;; % Lao CHARACTER MAI Niggahita -+ IGNORE;;; % Lao CHARACTER MAI Ko Lao -+ -+ -+ -+ -+% Arabic and Lao decimal digits -+ ;;; % DIGIT ZERO -+ ;;; % Lao DIGIT ZERO -+ ;;; % DIGIT ONE -+ ;;; % Lao DIGIT ONE -+ ;;; % DIGIT TWO -+ ;;; % Lao DIGIT TWO -+ ;;; % DIGIT THREE -+ ;;; % Lao DIGIT THREE -+ ;;; % DIGIT FOUR -+ ;;; % Lao DIGIT FOUR -+ ;;; % DIGIT FIVE -+ ;;; % Lao DIGIT FIVE -+ ;;; % DIGIT SIX -+ ;;; % Lao DIGIT SIX -+ ;;; % DIGIT SEVEN -+ ;;; % Lao DIGIT SEVEN -+ ;;; % DIGIT EIGHT -+ ;;; % Lao DIGIT EIGHT -+ ;;; % DIGIT NINE -+ ;;; % Lao DIGIT NINE -+ -+% Latin alphabet -+ ;;; % A -+ ;;; % a -+ ;;; % B -+ ;;; % b -+ ;;; % C -+ ;;; % c -+ ;;; % D -+ ;;; % d -+ ;;; % E -+ ;;; % e -+ ;;; % F -+ ;;; % f -+ ;;; % G -+ ;;; % g -+ ;;; % H -+ ;;; % h -+ ;;; % I -+ ;;; % i -+ ;;; % J -+ ;;; % j -+ ;;; % K -+ ;;; % k -+ ;;; % L -+ ;;; % l -+ ;;; % M -+ ;;; % m -+ ;;; % N -+ ;;; % n -+ ;;; % O -+ ;;; % o -+ ;;; % P -+ ;;; % p -+ ;;; % Q -+ ;;; % q -+ ;;; % R -+ ;;; % r -+ ;;; % S -+ ;;; % s -+ ;;; % T -+ ;;; % t -+ ;;; % U -+ ;;; % u -+ ;;; % V -+ ;;; % v -+ ;;; % W -+ ;;; % w -+ ;;; % X -+ ;;; % x -+ ;;; % Y -+ ;;; % y -+ ;;; % Z -+ ;;; % z -+ -+% -+% Lao consonants, with leading vowels rearrangement -+% -+ ;;; % Lao CHARACTER KO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER KHO sung -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER KHO tam -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER NGO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER CHO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER SO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER Nyo -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER DO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER TO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER THO Sung -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER THO Tam -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER NO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER BO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER PO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER PHO sUNG -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER FO tam -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER pho tam -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER fo sung -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER MO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER YO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER RO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER LO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER WO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER SO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER HO -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER O -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ ;;; % Lao CHARACTER HOr -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ -+ ;;; % Lao CHARACTER NHOr -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ -+ ;;; % Lao CHARACTER HHOr -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ "";;; -+ -+ -+% order of Lao vowels -+ ;;; % Lao CHARACTER SAlA A -+ ;;; % Lao CHARACTER MAI HAN-AKAT -+ ;;; % Lao CHARACTER SAlA AA -+ ;;; % Lao CHARACTER Sala AM -+ ;;; % Lao CHARACTER Sala I -+ ;;; % Lao CHARACTER Sala II -+ ;;; % Lao CHARACTER Sala UE -+ ;;; % Lao CHARACTER Sala UEE -+ ;;; % Lao CHARACTER Sala U -+ ;;; % Lao CHARACTER Sala UU -+ ;;; % Lao CHARACTER Sala Lo -+ ;;; % Lao CHARACTER Sala Oy -+ ;;; % Lao CHARACTER Sala E -+ ;;; % Lao CHARACTER Sala AE -+ ;;; % Lao CHARACTER Sala O -+ ;;; % Lao CHARACTER Sala AI MAIMUAN -+ ;;; % Lao CHARACTER Sala AI MAIMALAI -+ -+order_end -+ -+END LC_COLLATE -+ -+LC_MONETARY -+ -+int_curr_symbol "" -+ -+% monetary unit: Kip -+currency_symbol "" -+mon_decimal_point "" -+mon_thousands_sep "" -+mon_grouping 3;3 -+positive_sign "" -+negative_sign "" -+int_frac_digits 2 -+frac_digits 2 -+p_cs_precedes 1 -+p_sep_by_space 2 -+n_cs_precedes 1 -+n_sep_by_space 2 -+p_sign_posn 4 -+n_sign_posn 4 -+END LC_MONETARY -+ -+ -+LC_NUMERIC -+ -+decimal_point "" -+thousands_sep "" -+grouping 3 -+ -+END LC_NUMERIC -+ -+LC_TIME -+ -+abday "";"";"";/ -+ "";"";"";/ -+ "" -+day "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+abmon "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+mon "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+% Appropriate date & time representation "%a %e %b %Ey, %H:%M:%S" -+d_t_fmt "%a%e%b%Ey%H%M%S" -+% Appropriate date representation "%d/%m/%Ey" -+d_fmt "%d%m%Ey" -+% Appropriate time representation "%H:%M:%S" -+t_fmt "%H%M%S" -+% AM/PM signs -+am_pm "";"" -+% Appropriate 12-hour clock representation "%I:%M:%S %p" -+t_fmt_ampm "%I%M%S%p" -+% Era : Buddhist Era -+era "+:1:-5430101:+*::%EC%Ey" -+era_d_fmt "%e%b%Ey" -+era_t_fmt "%H%M%S" -+era_d_t_fmt "%A%e%B%EC%Ey%H%M%S" -+% Appropriate date representation (date(1)) "%a %e %b %Ey %H:%M:%S %Z" -+date_fmt "/ -+/ -+" -+% ICT-7ICT-7 -+timezone "" -+END LC_TIME -+ -+LC_MESSAGES -+ -+% yesexpr : begins with "y", "Y", or mo -+% noexpr : begins with "n", "N", or Bo -+% yesstr = "men" = Sala ae + Mo + MAI EK + No -+% nostr = "Bo Men" = Letter Bo +salo Or+ MAI EK + mo+ Ma Ek+ No -+ -+yesexpr "" -+noexpr "" -+yesstr "" -+nostr "" -+ -+END LC_MESSAGES -+ -+LC_PAPER -+height 297 -+width 210 -+END LC_PAPER -+ -+LC_TELEPHONE -+tel_int_fmt "/ -+" -+tel_dom_fmt "" -+int_select "" -+int_prefix "" -+END LC_TELEPHONE -+ -+LC_MEASUREMENT -+% FIXME -+measurement 1 -+END LC_MEASUREMENT -+ -+LC_NAME -+name_fmt "/ -+" -+ -+name_mr "." -+name_mrs "." -+END LC_NAME -+ -+LC_ADDRESS -+% "%f%N%a%N%d%N%r%t%e%t%b%N%h%t%s%N%T%N%S%N%z%c%N" -+postal_fmt "/ -+/ -+/ -+/ -+" -+country_name "" -+%FIXME -+%country_post "" -+country_ab2 "" -+country_ab3 "" -+country_num 418 -+country_car "" -+%FIXME -+%country_isbn "" -+lang_name "" -+lang_ab "" -+lang_term "" -+lang_lib "" -+END LC_ADDRESS ---- glibc-2.3.2/localedata/locales/mn_MN 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/localedata/locales/mn_MN 2003-04-24 20:05:58.000000000 -0400 -@@ -0,0 +1,196 @@ -+comment_char % -+escape_char / -+% Mongolian language (cyrillic) locale for Mongolia -+% Sanlig Badral -+% Revision: 0.9 (2003-2-27) -+% Charsets: UTF-8 -+% Distribution and use is free, also -+% for commercial purposes. -+ -+LC_IDENTIFICATION -+title "Mongolian locale for Mongolia" -+source "OPENMN" -+address "" -+contact "" -+email "bug-glibc@gnu.org" -+tel "" -+fax "" -+language "Mongolian" -+territory "Mongolia" -+revision "0.9" -+date "2003-02-27" -+ -+category "mn_MN:2000";LC_IDENTIFICATION -+category "mn_MN:2000";LC_CTYPE -+category "mn_MN:2000";LC_COLLATE -+category "mn_MN:2000";LC_TIME -+category "mn_MN:2000";LC_NUMERIC -+category "mn_MN:2000";LC_MONETARY -+category "mn_MN:2000";LC_MESSAGES -+category "mn_MN:2000";LC_PAPER -+category "mn_MN:2000";LC_NAME -+category "mn_MN:2000";LC_ADDRESS -+category "mn_MN:2000";LC_TELEPHONE -+ -+END LC_IDENTIFICATION -+ -+LC_COLLATE -+copy "iso14651_t1" -+ -+% iso14651_t1 is missing Mongolian ue(straight u), oe(barred o) -+% like russian, but with () after and -+% (straight u) after -+ -+collating-symbol -+collating-symbol -+ -+reorder-after -+ -+reorder-after -+ -+ -+reorder-after -+ ;;;IGNORE -+reorder-after -+ ;;;IGNORE -+ -+reorder-after -+ ;;;IGNORE -+reorder-after -+ ;;;IGNORE -+ -+reorder-end -+END LC_COLLATE -+ -+LC_CTYPE -+copy "i18n" -+END LC_CTYPE -+ -+LC_MONETARY -+int_curr_symbol "" -+currency_symbol "" -+mon_decimal_point "" -+mon_thousands_sep "" -+mon_grouping 3;3 -+positive_sign "" -+negative_sign "" -+int_frac_digits 2 -+frac_digits 2 -+p_cs_precedes 0 -+p_sep_by_space 1 -+n_cs_precedes 0 -+n_sep_by_space 1 -+p_sign_posn 1 -+n_sign_posn 1 -+ -+END LC_MONETARY -+ -+LC_NUMERIC -+decimal_point "" -+thousands_sep "" -+grouping 3;3 -+END LC_NUMERIC -+ -+LC_TIME -+% Abbreviated weekday names (%a) -+abday "";"";/ -+ "";"";/ -+ "";"";/ -+ "" -+% Full weekday names (%A) -+day "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+% Abbreviated month names (%b) -+abmon "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"" -+% Full month names (%B) -+mon "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+% Appropriate date and time representation -+% "%a %d %b %Y %T %Z" -+d_t_fmt "" -+ -+% Appropriate date representation -+% "%Y.%m.%d" -+d_fmt "" -+% Appropriate time representation -+% "%T" -+t_fmt "" -+% Appropriate 12 h time representation (%r) -+am_pm "";"" -+t_fmt_ampm "" -+% Full date and time representation -+% "%a %b %e %H:%M:%S %Z %Y" -+date_fmt "" -+END LC_TIME -+ -+LC_MESSAGES -+yesexpr "" -+noexpr "" -+END LC_MESSAGES -+ -+% Paper format -+LC_PAPER -+height 297 -+width 210 -+END LC_PAPER -+ -+LC_NAME -+name_fmt "/ -+" -+ -+name_miss "" -+name_mr "" -+name_mrs "" -+name_ms "" -+END LC_NAME -+ -+LC_ADDRESS -+postal_fmt "/ -+/ -+/ -+/ -+" -+ -+country_name "" -+country_post "" -+country_ab2 "" -+country_ab3 "" -+country_num 496 -+country_car "" -+country_isbn 99929 -+lang_name "" -+lang_ab "" -+lang_term "" -+lang_lib "" -+END LC_ADDRESS -+ -+LC_TELEPHONE -+tel_int_fmt "" -+tel_dom_fmt "" -+int_select "" -+int_prefix "" -+END LC_TELEPHONE -+ -+LC_MEASUREMENT -+measurement 1 -+END LC_MEASUREMENT ---- glibc-2.3.2/localedata/locales/no_NO 2000-10-26 13:57:17.000000000 -0400 -+++ glibc-2.3.2/localedata/locales/no_NO 2003-08-21 08:37:06.000000000 -0400 -@@ -1056,6 +1056,8 @@ - ;;;IGNORE - ;;;IGNORE - ;;;IGNORE -+ ;;;IGNORE %LATIN CAPITAL LETTER ETH (Icelandic) -+ ;;;IGNORE %LATIN SMALL LETTER ETH (Icelandic) - - ;;;IGNORE - ;;;IGNORE ---- glibc-2.3.2/localedata/locales/se_NO 2001-11-15 20:26:50.000000000 -0500 -+++ glibc-2.3.2/localedata/locales/se_NO 2002-11-16 08:55:43.000000000 -0500 -@@ -1,4 +1,4 @@ --# $Id: se_NO,v 1.1 2001/11/16 01:26:50 drepper Exp $ -+# $Id: se_NO,v 1.10 2001/11/10 01:35:26 boerre Exp $ - comment_char % - escape_char / - % ---- glibc-2.3.2/localedata/locales/sr_YU 2002-02-13 19:58:15.000000000 -0500 -+++ glibc-2.3.2/localedata/locales/sr_YU 2003-04-24 20:05:58.000000000 -0400 -@@ -224,7 +224,7 @@ - END LC_MESSAGES - - LC_MONETARY --int_curr_symbol "" -+int_curr_symbol "" - currency_symbol "" - mon_decimal_point "" - mon_thousands_sep "" ---- glibc-2.3.2/localedata/locales/sr_YU@cyrillic 2000-10-27 15:33:59.000000000 -0400 -+++ glibc-2.3.2/localedata/locales/sr_YU@cyrillic 2003-04-24 20:05:58.000000000 -0400 -@@ -61,7 +61,7 @@ - END LC_MESSAGES - - LC_MONETARY --int_curr_symbol "" -+int_curr_symbol "" - currency_symbol "" - mon_decimal_point "" - mon_thousands_sep "" ---- glibc-2.3.2/localedata/locales/st_ZA 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/localedata/locales/st_ZA 2003-05-10 04:39:17.000000000 -0400 -@@ -0,0 +1,254 @@ -+escape_char / -+comment_char % -+ -+% ChangeLog -+% 0.1 (2003-04-21): -+% - Initial Sotho locale for South Africa -+% by Zuza Software Foundation -+ -+LC_IDENTIFICATION -+title "Sotho locale for South Africa" -+source "Zuza Software Foundation" -+address "PO Box 13412, Mowbray, 7705, South Africa" -+contact "Dwayne Bailey" -+email "dwayne@translate.org.za" -+tel "+27 (0)21 448 9265" -+fax "+27 (0)21 448 9574" -+language "Sotho" -+territory "South Africa" -+revision "0.1" -+date "2003-04-21" -+% -+category "st_ZA:2003";LC_IDENTIFICATION -+category "st_ZA:2003";LC_CTYPE -+category "st_ZA:2003";LC_COLLATE -+category "st_ZA:2003";LC_TIME -+category "st_ZA:2003";LC_NUMERIC -+category "st_ZA:2003";LC_MONETARY -+category "st_ZA:2003";LC_MESSAGES -+category "st_ZA:2003";LC_PAPER -+category "st_ZA:2003";LC_NAME -+category "st_ZA:2003";LC_ADDRESS -+category "st_ZA:2003";LC_TELEPHONE -+category "st_ZA:2003";LC_MEASUREMENT -+ -+END LC_IDENTIFICATION -+ -+LC_CTYPE -+% Use the characters described in the charmap file "i18n.tgz" -+copy "i18n" -+END LC_CTYPE -+ -+LC_COLLATE -+% Copy the template from ISO/IEC 14651 i.e. -+% use the rules there when making ordered lists of words. -+copy "iso14651_t1" -+END LC_COLLATE -+ -+LC_MONETARY -+copy "en_ZA" -+END LC_MONETARY -+ -+LC_NUMERIC -+copy "en_ZA" -+END LC_NUMERIC -+ -+LC_TIME -+ -+% abday - The abbreviations for the week days: -+% - Son, Mma, Bed, Rar, Ne, Hla, Moq -+abday "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+ -+% day - The full names of the week days: -+% - Sontaha, Mmantaha, Labobedi, Laboraru, Labone, Labohlane, Moqebelo -+day "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+ -+% abmon - The abbreviations for the months -+% - Phe, Kol, Ube, Mme, Mot, Jan, Upu, Pha, Leo, Mph, Pun, Tsh -+abmon "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"" -+ -+% mon - The full names of the months - -+% - Phesekgong, Hlakola, Hlakubele, Mmese, Motsheanong, Phupjane, -+% Phupu, Phata, Leotshe, Mphalane, Pundungwane, Tshitwe -+mon "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+ -+% Abreviated date and time representation to be referenced by the "%c" field descriptor - -+d_t_fmt "" -+% -+% "%a" (short weekday name), -+% "%d" (day of month as a decimal number), -+% "%b" (short month name), -+% "%Y" (year with century as a decimal number), -+% "%T" (24-hour clock time in format HH:MM:SS), -+% "%Z" (Time zone name) -+ -+% Date representation to be referenced by the "%x" field descriptor - -+d_fmt "" -+% "%d/%m/%Y", day/month/year as decimal numbers (01/01/2000). -+ -+% Time representation to be referenced by the "%X" field descriptor - -+t_fmt "" -+% "%T" (24-hour clock time in format HH:MM:SS) -+ -+% Define representation of ante meridiem and post meridiem strings - -+am_pm "";"" -+% The "" mean 'default to "AM" and "PM". -+ -+% Define time representation in 12-hour format with "am_pm", to be referenced by the "%r" -+t_fmt_ampm "" -+% The "" means that this format is not supported. -+ -+% Date representation not described in ISO/IEC 14652. Comes out as - -+% "%a %b %e %H:%M:%S %Z %Y" which is default "date" command output -+date_fmt "/ -+/ -+" -+% -+% %a - abbreviated weekday name, -+% %b - abreviated month name, -+% %e - day of month as a decimal number with leading space (1 to 31), -+% %H - hour (24-hour clock) as a decimal number (00 to 23), -+% %M - minute as a decimal number (00 to 59), -+% %S - seconds as a decimal number (00 to 59), -+% %Z - time-zone name, -+% %Y - year with century as a decimal number,e.g. 2001. -+ -+END LC_TIME -+ -+LC_MESSAGES -+% FIXME: Check both of these -+% The affirmative response - -+% "^[yY].*" -+yesexpr "" -+ -+% The negative response - -+% "^[nN].*" -+noexpr "" -+END LC_MESSAGES -+ -+LC_PAPER -+copy "en_ZA" -+END LC_PAPER -+ -+LC_TELEPHONE -+copy "en_ZA" -+END LC_TELEPHONE -+ -+LC_MEASUREMENT -+copy "en_ZA" -+END LC_MEASUREMENT -+ -+LC_NAME -+% Format for addressing a person. -+name_fmt "/ -+" -+% "%d%t%g%t%m%t%f" -+% "Salutation", -+% "Empty string, or ", -+% "First given name", -+% "Empty string, or ", -+% "Middle names", -+% "Empty string, or ", -+% "Clan names" -+ -+% FIXME - define all the following name_* -+% General salutation for any sex -+% name_gen "" -+ -+% Salutation for unmarried females - "" -+% name_miss "" -+ -+% Salutation for males - "" -+% name_mr "" -+ -+% Salutation for married females - "" -+% name_mrs "" -+ -+% Salutation valid for all females - "" (no term) -+% name_ms "" -+ -+END LC_NAME -+ -+LC_ADDRESS -+% Country name in Sotho - "Afrika Borwa" -+country_name "" -+ -+% Abbreviated country postal name - "ZA" -+country_post "" -+ -+% ISO 3166 two letter country abbreviation - "ZA" -+country_ab2 "" -+ -+% FIXME define the following correctly -+% country_ab3 "" -+% country_car "" -+% country_isbn "" -+% country_num -+ -+% Language name in Sotho - "Sesotho" -+lang_name "" -+ -+% FIXME define the following correctly -+% lang_ab "" -+% lang_term "" -+ -+% Representation of postal addresses (minus the addressee's name) in South -+% Africa. (Ignored for now) -+postal_fmt "/ -+/ -+/ -+/ -+" -+% "%f%N%a%N%d%N%b%N%s %h %e %r%N%%z %T%N%c%N", which gives - -+% "firm name", -+% "end of line", -+% "C/O address", -+% "end of line", -+% "department name", -+% "Building name", -+% "end of line", -+% "street or block name", -+% "space", -+% "house number or designation", -+% "space", -+% "floor number", -+% "space", -+% "room number, door designation", -+% "end of line", -+% "postal code", -+% "space", -+% "town, city", -+% "end of line", -+% "country designation for the keyword", -+% "end of line -+% -+END LC_ADDRESS -+ ---- glibc-2.3.2/localedata/locales/uk_UA 2001-08-03 04:17:35.000000000 -0400 -+++ glibc-2.3.2/localedata/locales/uk_UA 2003-06-03 09:36:24.000000000 -0400 -@@ -4,7 +4,7 @@ - % Ukrainian Language Locale for Ukraine - % Source: RFC 2319 - % Contact: Denis V. Dmitrienko --% Email: denis@null.net -+% Email: denis@denix.org - % Language: uk - % Territory: UA - % Revision: 1.2 -@@ -14,6 +14,8 @@ - % Charset: KOI8-U - % Distribution and use is free, also - % for commercial purposes. -+% -+% Some collate fixes by Valentyn Solomko vesna@slovnyk.org - - LC_IDENTIFICATION - title "Ukrainian locale for Ukraine" -@@ -25,8 +27,8 @@ - fax "" - language "Ukrainian" - territory "Ukraine" --revision "1.0" --date "2000-06-29" -+revision "1.3" -+date "2003-01-31" - % - category "uk_UA:2000";LC_IDENTIFICATION - category "uk_UA:2000";LC_CTYPE -@@ -47,19 +49,30 @@ - END LC_CTYPE - - LC_COLLATE -+ - copy "iso14651_t1" - - % iso14651_t1 is missing Ukrainian ghe - collating-symbol - --reorder-after -+reorder-after - - --reorder-after -- ;;;IGNORE -- --reorder-after -- ;;;IGNORE -+reorder-after -+% ;;;IGNORE -+ ;;;IGNORE -+ -+reorder-after -+% ;;;IGNORE -+ ;;;IGNORE -+ -+reorder-after -+% ;;;IGNORE -+ ;;;IGNORE -+ -+reorder-after -+% ;;;IGNORE -+ ;;;IGNORE - - reorder-end - END LC_COLLATE ---- glibc-2.3.2/localedata/locales/wa_BE 2002-02-23 14:15:47.000000000 -0500 -+++ glibc-2.3.2/localedata/locales/wa_BE 2003-09-19 22:37:05.000000000 -0400 -@@ -11,8 +11,8 @@ - address "" - tel "" - fax "" --language "wa" --territory "BE" -+language "Walloon" -+territory "Belgium" - revision "0.7" - date "2002-02-11" - ---- glibc-2.3.2/localedata/locales/xh_ZA 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/localedata/locales/xh_ZA 2003-05-10 04:39:31.000000000 -0400 -@@ -0,0 +1,235 @@ -+escape_char / -+comment_char % -+ -+% ChangeLog -+% 0.1 (2003-05-08): -+% - Initial Xhosa locale by Zuza Software Foundation -+ -+LC_IDENTIFICATION -+title "Xhosa locale for South Africa" -+source "Zuza Software Foundation" -+address "PO Box 13412, Mowbray, 7705, South Africa" -+contact "Dwayne Bailey" -+email "dwayne@translate.org.za" -+tel "+27 (0)21 448 9265" -+fax "+27 (0)21 448 9574" -+language "Xhosa" -+territory "South Africa" -+revision "0.1" -+date "2003-05-08" -+% -+category "xh_ZA:2003";LC_IDENTIFICATION -+category "xh_ZA:2003";LC_CTYPE -+category "xh_ZA:2003";LC_COLLATE -+category "xh_ZA:2003";LC_TIME -+category "xh_ZA:2003";LC_NUMERIC -+category "xh_ZA:2003";LC_MONETARY -+category "xh_ZA:2003";LC_MESSAGES -+category "xh_ZA:2003";LC_PAPER -+category "xh_ZA:2003";LC_NAME -+category "xh_ZA:2003";LC_ADDRESS -+category "xh_ZA:2003";LC_TELEPHONE -+category "xh_ZA:2003";LC_MEASUREMENT -+ -+END LC_IDENTIFICATION -+ -+LC_CTYPE -+% Use the characters described in the charmap file "i18n.tgz" -+copy "i18n" -+END LC_CTYPE -+ -+LC_COLLATE -+% Copy the template from ISO/IEC 14651 i.e. -+% use the rules there when making ordered lists of words. -+copy "iso14651_t1" -+END LC_COLLATE -+ -+LC_MONETARY -+copy "en_ZA" -+END LC_MONETARY -+ -+LC_NUMERIC -+copy "en_ZA" -+END LC_NUMERIC -+ -+LC_TIME -+% The abbreviations for the week days: -+% - Caw, Mvu, Bin, Tha, Sin, Hla, Mgq -+abday "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+% -+% The full names of the week days: -+% - Cawe, Mvulo, Lwesibini, Lwesithathu, Lwesine, Lwesihlanu, Mgqibelo -+day "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+% -+% The abbreviations for the months -+% - Jan, Feb, Mat, Epr, Mey, Jun, Jul, Aga, Sep, Okt, Nov, Dis -+abmon "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"" -+% -+% The full names of the months - -+% - Janyuwari, Februwari, Matshi, Epreli, Meyi, Juni, Julayi, Agasti, Septemba, -+% Okthoba, Novemba, Disemba -+mon "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+% -+% Abreviated date and time representation to be referenced by the "%c" field descriptor - -+d_t_fmt "" -+% "%a" (weekday name), -+% "%d" (day of month as a decimal number), -+% "%b" (month name), -+% "%Y" (year with century as a decimal number), -+% "%T" (24-hour clock time in format HH:MM:SS), -+% "%Z" (Time zone name) -+% -+% Date representation to be referenced by the "%x" field % descriptor - -+% "%d/%m/%Y", day/month/year as decimal numbers (01/01/2000). -+d_fmt "" -+% -+% Time representation to be referenced by the "%X" field descriptor - -+% "%T" (24-hour clock time in format HH:MM:SS) -+t_fmt "" -+% -+% Define representation of ante meridiem and post meridiem strings - -+% The ""s means default to "AM" and "PM". -+am_pm "";"" -+% -+% Define time representation in 12-hour format with "am_pm", to be referenced by the "%r" -+% field descriptor - -+% The "" means that this format is not supported. -+t_fmt_ampm "" -+% -+% Date representation not described in ISO/IEC 14652. -+% Comes out as - "%a %b %e %H:%M:%S %Z %Y" -+date_fmt "/ -+/ -+" -+% which is: -+% abbreviated weekday name, -+% day of month as a decimal number (01 to 31), -+% day of month as a decimal number with leading space (1 to 31), -+% hour (24-hour clock) as a decimal number (00 to 23), -+% minute as a decimal number (00 to 59), -+% seconds as a decimal number (00 to 59), -+% time-zone name, -+% year with century as a decimal number,e.g. 2001. -+% -+END LC_TIME -+ -+LC_MESSAGES -+% The affirmative response - -+% "^[yYeE].*" -+yesexpr "" -+% -+% The negative response - -+% "^[nNhH].*" -+noexpr "" -+% -+END LC_MESSAGES -+ -+LC_PAPER -+copy "en_ZA" -+END LC_PAPER -+ -+LC_TELEPHONE -+copy "en_ZA" -+END LC_TELEPHONE -+ -+LC_MEASUREMENT -+copy "en_ZA" -+END LC_MEASUREMENT -+ -+LC_NAME -+% Format for addressing a person. -+name_fmt "/ -+" -+% "%d%t%g%t%m%t%f" -+% "Salutation", -+% "Empty string, or ", -+% "First given name", -+% "Empty string, or ", -+% "Middle names", -+% "Empty string, or ", -+% "Clan names" -+% -+% Salutation for unmarried females - "Nkosazana" -+name_miss "" -+% -+% Salutation for males - "Mnumzana" -+name_mr "" -+% -+% Salutation for married females - "Nkosikazi" -+name_mrs "" -+% -+% Salutation valid for all females - "" (no term) -+name_ms "" -+END LC_NAME -+ -+LC_ADDRESS -+% Country name in Xhosa - "Mzantsi Afrika" -+country_name "/ -+" -+% -+% Abbreviated country postal name - "ZA" -+country_post "" -+% -+% ISO 3166 two letter country abbreviation - "ZA" -+country_ab2 "" -+% -+% Representation of postal addresses (minus the addressee's name) in South -+% Africa. (Ignored for now) -+postal_fmt "/ -+/ -+/ -+/ -+" -+% "%f%N%a%N%d%N%b%N%s %h %e %r%N%%z %T%N%c%N", which gives - -+% "firm name", -+% "end of line", -+% "C/O address", -+% "end of line", -+% "department name", -+% "Building name", -+% "end of line", -+% "street or block name", -+% "space", -+% "house number or designation", -+% "space", -+% "floor number", -+% "space", -+% "room number, door designation", -+% "end of line", -+% "postal code", -+% "space", -+% "town, city", -+% "end of line", -+% "country designation for the keyword", -+% "end of line -+% -+END LC_ADDRESS -+ ---- glibc-2.3.2/localedata/locales/yi_US 2001-08-03 04:30:36.000000000 -0400 -+++ glibc-2.3.2/localedata/locales/yi_US 2003-09-19 22:37:05.000000000 -0400 -@@ -11,8 +11,8 @@ - email "pablo@mandrakesoft.com" - tel "" - fax "" --language "yi" --territory "US" -+language "Yiddish" -+territory "USA" - revision "0.3" - date "2001-01-28" - ---- glibc-2.3.2/localedata/locales/zu_ZA 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/localedata/locales/zu_ZA 2003-05-10 04:39:46.000000000 -0400 -@@ -0,0 +1,241 @@ -+escape_char / -+comment_char % -+ -+% ChangeLog -+% 0.1 (2003-04-19): -+% - Initial Zulu locale by Zuza Software Foundation -+ -+LC_IDENTIFICATION -+title "Zulu locale for South Africa" -+source "Zuza Software Foundation" -+address "PO Box 13412, Mowbray, 7705, South Africa" -+contact "Dwayne Bailey" -+email "dwayne@translate.org.za" -+tel "+27 (0)21 448 9265" -+fax "+27 (0)21 448 9574" -+language "Zulu" -+territory "South Africa" -+revision "0.1" -+date "2003-04-19" -+% -+category "zu_ZA:2003";LC_IDENTIFICATION -+category "zu_ZA:2003";LC_CTYPE -+category "zu_ZA:2003";LC_COLLATE -+category "zu_ZA:2003";LC_TIME -+category "zu_ZA:2003";LC_NUMERIC -+category "zu_ZA:2003";LC_MONETARY -+category "zu_ZA:2003";LC_MESSAGES -+category "zu_ZA:2003";LC_PAPER -+category "zu_ZA:2003";LC_NAME -+category "zu_ZA:2003";LC_ADDRESS -+category "zu_ZA:2003";LC_TELEPHONE -+category "zu_ZA:2003";LC_MEASUREMENT -+ -+END LC_IDENTIFICATION -+ -+LC_CTYPE -+% Use the characters described in the charmap file "i18n.tgz" -+% -+copy "i18n" -+END LC_CTYPE -+ -+LC_COLLATE -+% Copy the template from ISO/IEC 14651 i.e. -+% use the rules there when making ordered lists of words. -+% -+copy "iso14651_t1" -+END LC_COLLATE -+ -+LC_MONETARY -+copy "en_ZA" -+END LC_MONETARY -+ -+LC_NUMERIC -+copy "en_ZA" -+END LC_NUMERIC -+ -+LC_TIME -+% abday - The abbreviations for the week days: -+% - Son, Mso, Bil, Tha, Sin, Hla, Mgq -+abday "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+ -+% day - The full names of the week days: -+% - Sonto, Msombuluko, Lwesibili, Lwesithathu, Lwesine, Lwesihlanu, Mgqibelo -+day "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+ -+% abmon - The abbreviations for the months -+% - Jan, Feb, Mas, Apr, Mey, Jun, Jul, Aga, Sep, Okt, Nov, Dis -+abmon "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"";/ -+ "";"" -+ -+% mon - The full names of the months - -+% - Januwari, Februwari, Mashi, Apreli, Meyi, Juni, Julayi, Agasti, Septemba, -+% Okthoba, Novemba, Disemba -+mon "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "";/ -+ "" -+ -+% Abreviated date and time representation to be referenced by the "%c" field descriptor - -+d_t_fmt "" -+% -+% "%a" (short weekday name), -+% "%d" (day of month as a decimal number), -+% "%b" (short month name), -+% "%Y" (year with century as a decimal number), -+% "%T" (24-hour clock time in format HH:MM:SS), -+% "%Z" (Time zone name) -+ -+% Date representation to be referenced by the "%x" field descriptor - -+% "%d/%m/%Y", day/month/year as decimal numbers (01/01/2000). -+d_fmt "" -+ -+% Time representation to be referenced by the "%X" field descriptor - -+% "%T" (24-hour clock time in format HH:MM:SS) -+t_fmt "" -+ -+% Define representation of ante meridiem and post meridiem strings - -+% The ""s mean default to "AM" and "PM". -+am_pm "";"" -+ -+% Define time representation in 12-hour format with "am_pm", to be referenced by the "%r" -+% field descriptor - -+% The "" means that this format is not supported. -+t_fmt_ampm "" -+ -+% Date representation not described in ISO/IEC 14652. Comes out as - -+% "%a %b %e %H:%M:%S %Z %Y" -+date_fmt "/ -+/ -+" -+% which is -+% %a - abbreviated weekday name, -+% %b - abreviated month name, -+% %e - day of month as a decimal number with leading space (1 to 31), -+% %H - hour (24-hour clock) as a decimal number (00 to 23), -+% %M - minute as a decimal number (00 to 59), -+% %S - seconds as a decimal number (00 to 59), -+% %Z - time-zone name, -+% %Y - year with century as a decimal number,e.g. 2001. -+ -+END LC_TIME -+ -+LC_MESSAGES -+yesexpr "" -+% The affirmative response - -+% "^[yY].*" -+% -+noexpr "" -+% The negative response - -+% "^[nNcC].*" -+% -+END LC_MESSAGES -+ -+LC_PAPER -+copy "en_ZA" -+END LC_PAPER -+ -+LC_TELEPHONE -+copy "en_ZA" -+END LC_TELEPHONE -+ -+LC_MEASUREMENT -+copy "en_ZA" -+END LC_MEASUREMENT -+ -+LC_NAME -+name_fmt "/ -+" -+% Format for addressing a person. -+% "%d%t%g%t%m%t%f" -+% "Salutation", -+% "Empty string, or ", -+% "First given name", -+% "Empty string, or ", -+% "Middle names", -+% "Empty string, or ", -+% "Clan names" -+% -+name_miss "" -+% Salutation for unmarried females - "Nkosazane" -+% -+name_mr "" -+% Salutation for males - "Mnumzane" -+% -+name_mrs "" -+% Salutation for married females - "Nkosikazi" -+% -+name_ms "" -+% Salutation valid for all females - "" (no term) -+END LC_NAME -+ -+LC_ADDRESS -+country_name "/ -+" -+% Country name in Zulu - "Mzansi Afrika" -+% -+country_post "" -+% Abbreviated country postal name - "ZA" -+% -+country_ab2 "" -+% ISO 3166 two letter country abbreviation - "ZA" -+% -+lang_name "" -+% Language name in Zulu - "Isizulu" -+% -+postal_fmt "/ -+/ -+/ -+/ -+" -+% Representation of postal addresses (minus the addressee's name) in South -+% Africa. (Ignored for now) -+% "%f%N%a%N%d%N%b%N%s %h %e %r%N%%z %T%N%c%N", which gives - -+% "firm name", -+% "end of line", -+% "C/O address", -+% "end of line", -+% "department name", -+% "Building name", -+% "end of line", -+% "street or block name", -+% "space", -+% "house number or designation", -+% "space", -+% "floor number", -+% "space", -+% "room number, door designation", -+% "end of line", -+% "postal code", -+% "space", -+% "town, city", -+% "end of line", -+% "country designation for the keyword", -+% "end of line -+% -+END LC_ADDRESS -+ ---- glibc-2.3.2/localedata/sort-test.sh 2000-08-22 03:52:13.000000000 -0400 -+++ glibc-2.3.2/localedata/sort-test.sh 2003-05-12 12:13:05.000000000 -0400 -@@ -27,6 +27,7 @@ - echo "$l OK" - else - echo "$l FAIL" -+ diff -u $cns.in ${common_objpfx}localedata/$cns.xout - status=1 - fi - done ---- glibc-2.3.2/localedata/tests-mbwc/tst_wcsxfrm.c 2000-06-27 11:53:19.000000000 -0400 -+++ glibc-2.3.2/localedata/tests-mbwc/tst_wcsxfrm.c 2003-05-12 12:13:05.000000000 -0400 -@@ -47,7 +47,7 @@ - if (debug_flg) - { - fprintf (stdout, "tst_wcsxfrm() : REC = %d\n", rec + 1); -- fprintf (stdout, "tst_wcsxfrm() : 1st ret = %d\n", ret); -+ fprintf (stdout, "tst_wcsxfrm() : 1st ret = %zu\n", ret); - } - - if (ret == -1 || ret >= n1 || errno_save != 0) -@@ -78,7 +78,7 @@ - - if (debug_flg) - { -- fprintf (stdout, "tst_wcsxfrm() : 2nd ret = %d\n", ret); -+ fprintf (stdout, "tst_wcsxfrm() : 2nd ret = %zu\n", ret); - } - - /* wcscoll() */ ---- glibc-2.3.2/localedata/tst-fmon.c 2001-07-07 15:21:05.000000000 -0400 -+++ glibc-2.3.2/localedata/tst-fmon.c 2003-08-21 08:37:05.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Testing the implementation of strfmon(3). -- Copyright (C) 1996, 1997, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1996, 1997, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jochen Hein , 1997. - -@@ -42,15 +42,12 @@ - main (int argc, char *argv[]) - { - char *s = malloc (201); -- double monval; - - if (setlocale (LC_MONETARY, argv[1]) == NULL) - { -- perror ("setlocale"); -+ fprintf (stderr, "setlocale(LC_MONETARY, \"%s\"): %m\n", argv[1]); - exit (EXIT_SETLOCALE); - } -- /* This is locale-dependent! see setlocale(3) for details */ -- monval = strtod (argv[3], NULL); - - if (strfmon (s, 200, argv[2], (double) atof (argv[3])) == -1) - { ---- glibc-2.3.2/localedata/tst-fmon.sh 2001-07-07 15:21:05.000000000 -0400 -+++ glibc-2.3.2/localedata/tst-fmon.sh 2003-08-21 08:37:05.000000000 -0400 -@@ -1,6 +1,6 @@ - #! /bin/sh - # Testing the implementation of strfmon(3). --# Copyright (C) 1996, 1997, 1998, 2000 Free Software Foundation, Inc. -+# Copyright (C) 1996, 1997, 1998, 2000, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - # Contributed by Jochen Hein , 1997. - # -@@ -39,24 +39,26 @@ - done - - # Run the tests. -+errcode=0 - # There's a TAB for IFS - while IFS=" " read locale format value expect; do -+ case "$locale" in '#'*) continue ;; esac - if [ -n "$format" ]; then -- LOCPATH=${common_objpfx}localedata \ -- GCONV_PATH=${common_objpfx}/iconvdata \ -- ${run_program_prefix} ${common_objpfx}localedata/tst-fmon \ -- "$locale" "$format" "$value" "$expect" -- if [ $? -eq 0 ]; then -+ if LOCPATH=${common_objpfx}localedata \ -+ GCONV_PATH=${common_objpfx}/iconvdata \ -+ ${run_program_prefix} ${common_objpfx}localedata/tst-fmon \ -+ "$locale" "$format" "$value" "$expect" ; then - echo "Locale: \"${locale}\" Format: \"${format}\"" \ - "Value: \"${value}\" Expect: \"${expect}\" passed" - else -+ errcode=$? - echo "Locale: \"${locale}\" Format: \"${format}\"" \ - "Value: \"${value}\" Expect: \"${expect}\" failed" - fi - fi - done < $datafile - --exit $? -+exit $errcode - # Local Variables: - # mode:shell-script - # End: ---- glibc-2.3.2/localedata/tst-langinfo.sh 2001-07-07 15:21:05.000000000 -0400 -+++ glibc-2.3.2/localedata/tst-langinfo.sh 2003-05-12 12:13:05.000000000 -0400 -@@ -1,6 +1,6 @@ - #! /bin/sh - # Test nl_langinfo. --# Copyright (C) 2000, 2001 Free Software Foundation, Inc. -+# Copyright (C) 2000, 2001, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - # - -@@ -155,13 +155,13 @@ - en_US.ISO-8859-1 THOUSEP , - en_US.ISO-8859-1 YESEXPR ^[yY].* - en_US.ISO-8859-1 NOEXPR ^[nN].* --de_DE.ISO-8859-1 ABDAY_1 Son --de_DE.ISO-8859-1 ABDAY_2 Mon --de_DE.ISO-8859-1 ABDAY_3 Die --de_DE.ISO-8859-1 ABDAY_4 Mit --de_DE.ISO-8859-1 ABDAY_5 Don --de_DE.ISO-8859-1 ABDAY_6 Fre --de_DE.ISO-8859-1 ABDAY_7 Sam -+de_DE.ISO-8859-1 ABDAY_1 So -+de_DE.ISO-8859-1 ABDAY_2 Mo -+de_DE.ISO-8859-1 ABDAY_3 Di -+de_DE.ISO-8859-1 ABDAY_4 Mi -+de_DE.ISO-8859-1 ABDAY_5 Do -+de_DE.ISO-8859-1 ABDAY_6 Fr -+de_DE.ISO-8859-1 ABDAY_7 Sa - de_DE.ISO-8859-1 DAY_1 Sonntag - de_DE.ISO-8859-1 DAY_2 Montag - de_DE.ISO-8859-1 DAY_3 Dienstag -@@ -200,13 +200,13 @@ - de_DE.ISO-8859-1 THOUSEP . - de_DE.ISO-8859-1 YESEXPR ^[jJyY].* - de_DE.ISO-8859-1 NOEXPR ^[nN].* --de_DE.UTF-8 ABDAY_1 Son --de_DE.UTF-8 ABDAY_2 Mon --de_DE.UTF-8 ABDAY_3 Die --de_DE.UTF-8 ABDAY_4 Mit --de_DE.UTF-8 ABDAY_5 Don --de_DE.UTF-8 ABDAY_6 Fre --de_DE.UTF-8 ABDAY_7 Sam -+de_DE.UTF-8 ABDAY_1 So -+de_DE.UTF-8 ABDAY_2 Mo -+de_DE.UTF-8 ABDAY_3 Di -+de_DE.UTF-8 ABDAY_4 Mi -+de_DE.UTF-8 ABDAY_5 Do -+de_DE.UTF-8 ABDAY_6 Fr -+de_DE.UTF-8 ABDAY_7 Sa - de_DE.UTF-8 DAY_1 Sonntag - de_DE.UTF-8 DAY_2 Montag - de_DE.UTF-8 DAY_3 Dienstag ---- glibc-2.3.2/localedata/tst-numeric.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/localedata/tst-numeric.c 2003-05-12 12:13:05.000000000 -0400 -@@ -0,0 +1,74 @@ -+/* Testing the implementation of LC_NUMERIC and snprintf(). -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Petter Reinholdtsen , 2003 -+ -+ Based on tst-fmon.c by Jochen Hein , 1997. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+#include -+ -+/* -+ test-numeric gets called with three parameters: -+ - the locale -+ - the format-string to be used -+ - the actual number to be formatted -+ - the expected string -+ If the test passes, test-numeric terminates with returncode 0, -+ otherwise with 1 -+*/ -+#define EXIT_SUCCESS 0 -+#define EXIT_FAILURE 1 -+#define EXIT_SETLOCALE 2 -+#define EXIT_SNPRINTF 3 -+ -+int -+main (int argc, char *argv[]) -+{ -+ char *s = malloc (201); -+ double val; -+ -+ /* Make sure to read the value before setting of the locale, as -+ strtod() is locale-dependent. */ -+ val = strtod (argv[3], NULL); -+ -+ if (setlocale (LC_ALL, argv[1]) == NULL) -+ { -+ fprintf (stderr, "setlocale(LC_ALL, \"%s\"): %m\n", argv[1]); -+ exit (EXIT_SETLOCALE); -+ } -+ -+ if (snprintf (s, 200, argv[2], val) == -1) -+ { -+ perror ("snprintf"); -+ exit (EXIT_SNPRINTF); -+ } -+ -+ if (strcmp (s, argv[4]) != 0) -+ { -+ printf ("\ -+locale: \"%s\", format: \"%s\", expected: \"%s\", got: \"%s\" => %s\n", -+ argv[1], argv[2], argv[4], s, -+ strcmp (s, argv[4]) != 0 ? "false" : "correct"); -+ exit (EXIT_FAILURE); -+ } -+ -+ return EXIT_SUCCESS; -+} ---- glibc-2.3.2/localedata/tst-numeric.data 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/localedata/tst-numeric.data 2003-04-27 05:02:25.000000000 -0400 -@@ -0,0 +1,49 @@ -+# Test data for tst-nomeric, which checks it's implementation in glibc -+# Copyright (C) 2003 Free Software Foundation, Inc. -+# This file is part of the GNU C Library. -+# Contributed by Petter Reinholdtsen , 2003 -+# Based on code by Jochen Hein , 1997. -+# -+ -+# The GNU C Library is free software; you can redistribute it and/or -+# modify it under the terms of the GNU Lesser General Public -+# License as published by the Free Software Foundation; either -+# version 2.1 of the License, or (at your option) any later version. -+ -+# The GNU C Library is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# Lesser General Public License for more details. -+ -+# You should have received a copy of the GNU Lesser General Public -+# License along with the GNU C Library; if not, write to the Free -+# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+# 02111-1307 USA. -+ -+# The format of this file is pretty simple: Each line contains a test -+# for strfmon. Fields are separated by TABs. Lines that start with a -+# '#' are comments and are ignored. -+# -+# Field Description -+# #1 locale which is to be checked -+# #2 format string which is fed into snprintf -+# #3 double value that is used for formatting -+# #4 the expected result (may contain trailing spaces!) -+# -+# First the implementation without any locale-dependent data -+C %g 1.23 1.23 -+C %g -1.23 -1.23 -+C %g 0 0 -+C %% 0 % -+C %'g 123.45 123.45 -+C %'g -123.45 -123.45 -+C *%g* 1.23 *1.23* -+C %9g 1.23 1.23 -+C %9g -1.23 -1.23 -+# -+# check both the norwegian locales and snprintf with that data -+# -+no_NO.ISO-8859-1 %'g 123.45 123,45 -+no_NO.ISO-8859-1 %'g -123.45 -123,45 -+nn_NO.ISO-8859-1 %'g 123.45 123,45 -+nn_NO.ISO-8859-1 %'g -123.45 -123,45 ---- glibc-2.3.2/localedata/tst-numeric.sh 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/localedata/tst-numeric.sh 2003-08-21 08:37:05.000000000 -0400 -@@ -0,0 +1,51 @@ -+#! /bin/sh -+# Testing the implementation of LC_NUMERIC and snprintf(3). -+# Copyright (C) 1996, 1997, 1998, 2000, 2003 Free Software Foundation, Inc. -+# This file is part of the GNU C Library. -+# Contributed by Jochen Hein , 1997. -+# -+ -+# The GNU C Library is free software; you can redistribute it and/or -+# modify it under the terms of the GNU Lesser General Public -+# License as published by the Free Software Foundation; either -+# version 2.1 of the License, or (at your option) any later version. -+ -+# The GNU C Library is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# Lesser General Public License for more details. -+ -+# You should have received a copy of the GNU Lesser General Public -+# License along with the GNU C Library; if not, write to the Free -+# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+# 02111-1307 USA. -+ -+common_objpfx=$1 -+run_program_prefix=$2 -+datafile=$3 -+ -+# Run the tests. -+errcode=0 -+# There's a TAB for IFS -+while IFS=" " read locale format value expect; do -+ case "$locale" in '#'*) continue ;; esac -+ if [ -n "$format" ]; then -+ if LOCPATH=${common_objpfx}localedata \ -+ GCONV_PATH=${common_objpfx}/iconvdata \ -+ ${run_program_prefix} ${common_objpfx}localedata/tst-numeric \ -+ "$locale" "$format" "$value" "$expect" -+ then -+ echo "Locale: \"${locale}\" Format: \"${format}\"" \ -+ "Value: \"${value}\" Expect: \"${expect}\" passed" -+ else -+ errcode=$? -+ echo "Locale: \"${locale}\" Format: \"${format}\"" \ -+ "Value: \"${value}\" Expect: \"${expect}\" failed" -+ fi -+ fi -+done < $datafile -+ -+exit $errcode -+# Local Variables: -+# mode:shell-script -+# End: ---- glibc-2.3.2/localedata/xfrm-test.c 2001-07-07 15:21:05.000000000 -0400 -+++ glibc-2.3.2/localedata/xfrm-test.c 2003-08-21 08:37:05.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Test collation function via transformation using real data. -- Copyright (C) 1997, 1998, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1997, 1998, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1997. - -@@ -19,6 +19,7 @@ - 02111-1307 USA. */ - - #include -+#include - #include - #include - #include -@@ -27,8 +28,8 @@ - - struct lines - { -- const char *xfrm; -- const char *line; -+ char *xfrm; -+ char *line; - }; - - static int xstrcmp (const void *, const void *); -@@ -43,6 +44,9 @@ - size_t len = 0; - size_t n; - -+ if (argc < 2) -+ error (1, 0, "usage: %s ", argv[0]); -+ - setlocale (LC_ALL, ""); - - nstrings_max = 100; -@@ -65,8 +69,8 @@ - if (nstrings == nstrings_max) - { - strings = (struct lines *) realloc (strings, -- (nstrings_max *= 2 -- * sizeof (*strings))); -+ (nstrings_max *= 2) -+ * sizeof (*strings)); - if (strings == NULL) - { - perror (argv[0]); -@@ -87,6 +91,7 @@ - line[l] = saved; - ++nstrings; - } -+ free (line); - - /* First shuffle. */ - srandom (atoi (argv[1])); -@@ -116,7 +121,12 @@ - - /* Print the result. */ - for (n = 0; n < nstrings; ++n) -- fputs (strings[n].line, stdout); -+ { -+ fputs (strings[n].line, stdout); -+ free (strings[n].line); -+ free (strings[n].xfrm); -+ } -+ free (strings); - - return result; - } ---- glibc-2.3.2/login/Makefile 2002-10-02 03:19:57.000000000 -0400 -+++ glibc-2.3.2/login/Makefile 2003-09-19 22:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1996,1997,1998,2000,2001,2002 Free Software Foundation, Inc. -+# Copyright (C) 1996-1998,2000-2002,2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -47,6 +47,8 @@ - - include ../Rules - -+CFLAGS-getpt.c = -fexceptions -+ - ifeq (yes,$(build-static-nss)) - otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \ - $(resolvobjdir)/libresolv.a $(common-objpfx)libc.a ---- glibc-2.3.2/login/programs/utmpdump.c 2002-10-02 16:39:00.000000000 -0400 -+++ glibc-2.3.2/login/programs/utmpdump.c 2003-09-19 22:37:05.000000000 -0400 -@@ -1,5 +1,5 @@ - /* utmpdump - dump utmp-like files. -- Copyright (C) 1997, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1997, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Mark Kettenis , 1997. - -@@ -28,16 +28,16 @@ - print_entry (struct utmp *up) - { - /* Mixed 32-/64-bit systems may have timeval structs of different sixe -- but need struct utmp to be the same size. So in 64-bit up->ut_tv may -+ but need struct utmp to be the same size. So in 64-bit up->ut_tv may - not be a timeval but a struct of __int32_t's. This would cause a compile - time warning and a formating error when 32-bit int is passed where - a 64-bit long is expected. So copy up->up_tv to a temporary timeval. -- This is 32-/64-bit agnostic and expands the timeval fields to the -+ This is 32-/64-bit agnostic and expands the timeval fields to the - expected size as needed. */ - struct timeval temp_tv; - temp_tv.tv_sec = up->ut_tv.tv_sec; - temp_tv.tv_usec = up->ut_tv.tv_usec; -- -+ - (printf) ( - /* The format string. */ - #if _HAVE_UT_TYPE -@@ -74,7 +74,7 @@ - #endif - #if _HAVE_UT_TV - , 4 + ctime (&temp_tv.tv_sec) -- , temp_tv.tv_usec -+ , (long int) temp_tv.tv_usec - #else - , 4 + ctime (&up->ut_time) - #endif ---- glibc-2.3.2/mach/Makefile 2003-02-17 13:58:01.000000000 -0500 -+++ glibc-2.3.2/mach/Makefile 2003-06-03 09:36:24.000000000 -0400 -@@ -79,12 +79,17 @@ - $(make-target-directory) - # We must use $(CFLAGS) to get -O flags that affect #if's in header files. - echo '#include ' | \ -- DEPENDENCIES_OUTPUT='$@-dep $@' \ -- $(CC) $(CFLAGS) $(CPPFLAGS) -E -x c-header - \ -+ $(CC) $(CFLAGS) $(CPPFLAGS) -E -MD -MP -MF $@-dep -MT $@ \ -+ -x c-header - \ - -D_MACH_`echo $(mach-machine) | tr a-z A-Z`_SYSCALL_SW_H_=1 | \ - sed -n -e 's/^kernel_trap(\(.*\),\([-0-9]*\),\([0-9]*\))$$/\1 \2 \3/p'\ - | $(AWK) -f $< > $@-new -- cat $@-dep >> $@-new; rm -f $@-dep -+ifneq (,$(objpfx)) -+ sed $(sed-remove-objpfx) $@-dep >> $@-new -+else -+ cat $@-dep >> $@-new -+endif -+ rm -f $@-dep - mv -f $@-new $@ - generated += mach-syscalls.mk - ---- glibc-2.3.2/mach/err_boot.sub 1992-10-06 14:29:52.000000000 -0400 -+++ glibc-2.3.2/mach/err_boot.sub 2002-11-16 08:55:47.000000000 -0500 -@@ -25,10 +25,7 @@ - */ - /* - * HISTORY -- * $Log: err_boot.sub,v $ -- * Revision 1.1 1992/10/06 18:29:52 roland -- * entered into RCS -- * -+ * $Log: err_bootstrap.sub,v $ - * Revision 2.2 92/04/01 19:37:59 rpd - * Created. - * [92/03/09 rpd] ---- glibc-2.3.2/mach/err_ipc.sub 1992-10-06 14:29:52.000000000 -0400 -+++ glibc-2.3.2/mach/err_ipc.sub 2002-11-16 08:55:47.000000000 -0500 -@@ -25,10 +25,7 @@ - */ - /* - * HISTORY -- * $Log: err_ipc.sub,v $ -- * Revision 1.1 1992/10/06 18:29:52 roland -- * entered into RCS -- * -+ * $Log: err_ipc.sub,v $ - * Revision 2.2 92/01/16 00:08:40 rpd - * Moved from user collection to mk collection. - * ---- glibc-2.3.2/mach/err_kern.sub 1996-12-19 20:32:34.000000000 -0500 -+++ glibc-2.3.2/mach/err_kern.sub 2002-11-16 08:55:47.000000000 -0500 -@@ -26,9 +26,6 @@ - /* - * HISTORY - * $Log: err_kern.sub,v $ -- * Revision 1.5 1996/12/20 01:32:34 drepper -- * Update from main archive 961219 -- * - * Revision 1.5 1996/12/19 20:23:39 drepper - * Spelling corrections. - * ---- glibc-2.3.2/mach/err_mach.sub 1992-10-06 14:29:52.000000000 -0400 -+++ glibc-2.3.2/mach/err_mach.sub 2002-11-16 08:55:47.000000000 -0500 -@@ -25,10 +25,7 @@ - */ - /* - * HISTORY -- * $Log: err_mach.sub,v $ -- * Revision 1.1 1992/10/06 18:29:52 roland -- * entered into RCS -- * -+ * $Log: err_mach_ipc.sub,v $ - * Revision 2.3 92/04/01 19:38:05 rpd - * Added MIG_DESTROY_REQUEST. - * [92/03/09 rpd] ---- glibc-2.3.2/mach/err_server.sub 1992-10-06 14:29:53.000000000 -0400 -+++ glibc-2.3.2/mach/err_server.sub 2002-11-16 08:55:47.000000000 -0500 -@@ -25,10 +25,7 @@ - */ - /* - * HISTORY -- * $Log: err_server.sub,v $ -- * Revision 1.1 1992/10/06 18:29:53 roland -- * entered into RCS -- * -+ * $Log: err_server.sub,v $ - * Revision 2.2 92/01/16 00:10:29 rpd - * Moved from user collection to mk collection. - * ---- glibc-2.3.2/mach/err_us.sub 1993-11-23 16:14:05.000000000 -0500 -+++ glibc-2.3.2/mach/err_us.sub 2002-11-16 08:55:47.000000000 -0500 -@@ -25,10 +25,7 @@ - */ - /* - * HISTORY -- * $Log: err_us.sub,v $ -- * Revision 1.2 1993/11/23 21:14:05 mib -- * entered into RCS -- * -+ * $Log: err_us.sub,v $ - * Revision 2.2 92/01/16 00:10:45 rpd - * Moved from user collection to mk collection. - * ---- glibc-2.3.2/mach/error_compat.c 1997-03-16 12:41:36.000000000 -0500 -+++ glibc-2.3.2/mach/error_compat.c 2002-11-16 08:55:47.000000000 -0500 -@@ -26,9 +26,6 @@ - - /* This file was broken out from: - $Log: error_compat.c,v $ -- Revision 1.2 1997/03/16 17:41:36 drepper -- (__mach_error_map_compat): Give full prototype. -- - Revision 1.2 1997/03/14 15:26:28 thomas - Wed Mar 5 10:40:05 1997 Thomas Bushnell, n/BSG - ---- glibc-2.3.2/mach/errorlib.h 1995-03-10 18:57:44.000000000 -0500 -+++ glibc-2.3.2/mach/errorlib.h 2002-11-16 08:55:47.000000000 -0500 -@@ -26,9 +26,6 @@ - /* - * HISTORY - * $Log: errorlib.h,v $ -- * Revision 1.5 1995/03/10 23:57:44 roland -- * (errors): Use const for decl. -- * - * Revision 1.4 1993/12/17 21:56:16 roland - * entered into RCS - * ---- glibc-2.3.2/mach/errstring.c 1997-03-16 12:41:48.000000000 -0500 -+++ glibc-2.3.2/mach/errstring.c 2002-11-16 08:55:47.000000000 -0500 -@@ -26,9 +26,6 @@ - /* - * HISTORY - * $Log: errstring.c,v $ -- * Revision 1.2 1997/03/16 17:41:48 drepper -- * (mach_error_string_int): Give full prototype. -- * - * Revision 1.2 1997/03/14 15:26:29 thomas - * Wed Mar 5 10:40:05 1997 Thomas Bushnell, n/BSG - * ---- glibc-2.3.2/mach/mach/error.h 1997-03-16 12:43:08.000000000 -0500 -+++ glibc-2.3.2/mach/mach/error.h 2002-11-16 08:55:47.000000000 -0500 -@@ -27,10 +27,6 @@ - /* - * HISTORY - * $Log: error.h,v $ -- * Revision 1.3 1997/03/16 17:43:08 drepper -- * (mach_error_fn_t): Comment out declaration; it appears to be entirely -- * unused dead code. -- * - * Revision 1.3 1997/03/14 15:27:35 thomas - * Wed Mar 5 10:40:05 1997 Thomas Bushnell, n/BSG - * ---- glibc-2.3.2/mach/mach_error.c 1997-03-16 12:42:02.000000000 -0500 -+++ glibc-2.3.2/mach/mach_error.c 2002-11-16 08:55:47.000000000 -0500 -@@ -26,9 +26,6 @@ - /* - * HISTORY - * $Log: mach_error.c,v $ -- * Revision 1.2 1997/03/16 17:42:02 drepper -- * (mach_error_string_int): Give full prototype. -- * - * Revision 1.2 1997/03/14 15:26:30 thomas - * Wed Mar 5 10:40:05 1997 Thomas Bushnell, n/BSG - * ---- glibc-2.3.2/mach/mach_error.h 2001-04-03 20:02:00.000000000 -0400 -+++ glibc-2.3.2/mach/mach_error.h 2002-11-16 08:55:47.000000000 -0500 -@@ -26,12 +26,6 @@ - /* - * HISTORY - * $Log: mach_error.h,v $ -- * Revision 1.4 2001/04/01 05:03:14 roland -- * 2001-03-11 Roland McGrath -- * -- * * mach/mach_error.h: Fix ancient #endif syntax. -- * * hurd/hurdmalloc.c: Likewise. -- * - * Revision 1.3 1997/03/16 17:42:25 drepper - * (mach_error_string, mach_error, mach_error_type): Always provide - * prototypes. ---- glibc-2.3.2/mach/msg-destroy.c 2002-02-19 02:34:36.000000000 -0500 -+++ glibc-2.3.2/mach/msg-destroy.c 2002-11-16 08:55:47.000000000 -0500 -@@ -26,15 +26,6 @@ - /* - * HISTORY - * $Log: msg-destroy.c,v $ -- * Revision 1.6 2002/02/17 07:13:36 roland -- * 2002-02-16 Roland McGrath -- * -- * * mach/msg-destroy.c (__mach_msg_destroy) [MACH_MSG_PORT_DESCRIPTOR]: -- * Grok the OSF flavor of message format. -- * (mach_msg_destroy_port): For MAKE_SEND and -- * MAKE_SEND_ONCE rights, create an destroy a right to ensure proper -- * no-senders notification. -- * - * Revision 1.5 1997/06/21 01:40:07 drepper - * More 64bit changes. - * ---- glibc-2.3.2/mach/msgserver.c 2002-02-19 02:34:36.000000000 -0500 -+++ glibc-2.3.2/mach/msgserver.c 2002-11-16 08:55:47.000000000 -0500 -@@ -49,12 +49,6 @@ - /* - * HISTORY - * $Log: msgserver.c,v $ -- * Revision 1.9 2002/02/18 20:56:35 roland -- * 2002-02-18 Roland McGrath -- * -- * * mach/msgserver.c (__mach_msg_server_timeout) [! MACH_RCV_LARGE]: -- * Double MAX_SIZE and don't retry on MACH_RCV_TOO_LARGE. -- * - * Revision 1.8 2002/02/17 07:13:32 roland - * 2002-02-16 Roland McGrath - * ---- glibc-2.3.2/malloc/Makefile 2003-02-21 20:01:17.000000000 -0500 -+++ glibc-2.3.2/malloc/Makefile 2003-04-24 20:05:58.000000000 -0400 -@@ -56,6 +56,7 @@ - - include ../Makeconfig - -+CFLAGS-malloc.c += -DDEFAULT_TOP_PAD=131072 - CPPFLAGS-memusagestat = -DNOT_IN_libc - - # The Perl script to analyze the output of the mtrace functions. ---- glibc-2.3.2/malloc/arena.c 2002-12-27 18:22:15.000000000 -0500 -+++ glibc-2.3.2/malloc/arena.c 2003-08-21 08:37:07.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Malloc implementation for multiple threads without lock contention. -- Copyright (C) 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Wolfram Gloger , 2001. - -@@ -758,6 +758,7 @@ - /* Add the new arena to the global list. */ - (void)mutex_lock(&list_lock); - a->next = main_arena.next; -+ atomic_write_barrier (); - main_arena.next = a; - (void)mutex_unlock(&list_lock); - ---- glibc-2.3.2/malloc/hooks.c 2003-01-27 13:32:36.000000000 -0500 -+++ glibc-2.3.2/malloc/hooks.c 2003-09-19 22:37:05.000000000 -0400 -@@ -106,7 +106,18 @@ - __realloc_hook = realloc_check; - __memalign_hook = memalign_check; - if(check_action & 1) -- fprintf(stderr, "malloc: using debugging hooks\n"); -+ { -+#ifdef _LIBC -+ _IO_flockfile (stderr); -+ int old_flags2 = ((_IO_FILE *) stderr)->_flags2; -+ ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; -+#endif -+ fprintf(stderr, "malloc: using debugging hooks\n"); -+#ifdef _LIBC -+ ((_IO_FILE *) stderr)->_flags2 |= old_flags2; -+ _IO_funlockfile (stderr); -+#endif -+ } - } - - /* A simple, standard set of debugging hooks. Overhead is `only' one -@@ -224,7 +235,18 @@ - t == initial_top(&main_arena)) return 0; - - if(check_action & 1) -- fprintf(stderr, "malloc: top chunk is corrupt\n"); -+ { -+#ifdef _LIBC -+ _IO_flockfile (stderr); -+ int old_flags2 = ((_IO_FILE *) stderr)->_flags2; -+ ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; -+#endif -+ fprintf(stderr, "malloc: top chunk is corrupt\n"); -+#ifdef _LIBC -+ ((_IO_FILE *) stderr)->_flags2 |= old_flags2; -+ _IO_funlockfile (stderr); -+#endif -+ } - if(check_action & 2) - abort(); - -@@ -278,7 +300,18 @@ - if(!p) { - (void)mutex_unlock(&main_arena.mutex); - if(check_action & 1) -- fprintf(stderr, "free(): invalid pointer %p!\n", mem); -+ { -+#ifdef _LIBC -+ _IO_flockfile (stderr); -+ int old_flags2 = ((_IO_FILE *) stderr)->_flags2; -+ ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; -+#endif -+ fprintf(stderr, "free(): invalid pointer %p!\n", mem); -+#ifdef _LIBC -+ ((_IO_FILE *) stderr)->_flags2 |= old_flags2; -+ _IO_funlockfile (stderr); -+#endif -+ } - if(check_action & 2) - abort(); - return; -@@ -315,7 +348,18 @@ - (void)mutex_unlock(&main_arena.mutex); - if(!oldp) { - if(check_action & 1) -- fprintf(stderr, "realloc(): invalid pointer %p!\n", oldmem); -+ { -+#ifdef _LIBC -+ _IO_flockfile (stderr); -+ int old_flags2 = ((_IO_FILE *) stderr)->_flags2; -+ ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; -+#endif -+ fprintf(stderr, "realloc(): invalid pointer %p!\n", oldmem); -+#ifdef _LIBC -+ ((_IO_FILE *) stderr)->_flags2 |= old_flags2; -+ _IO_funlockfile (stderr); -+#endif -+ } - if(check_action & 2) - abort(); - return malloc_check(bytes, NULL); ---- glibc-2.3.2/malloc/malloc.c 2003-01-30 13:36:54.000000000 -0500 -+++ glibc-2.3.2/malloc/malloc.c 2003-09-19 22:37:05.000000000 -0400 -@@ -1,5 +1,5 @@ --/* Malloc implementation for multiple threads without lock contention. -- Copyright (C) 1996,1997,1998,1999,2000,01,02 Free Software Foundation, Inc. -+ /* Malloc implementation for multiple threads without lock contention. -+ Copyright (C) 1996-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Wolfram Gloger - and Doug Lea , 2001. -@@ -24,7 +24,7 @@ - Doug Lea and adapted to multiple threads/arenas by Wolfram Gloger. - - * Version ptmalloc2-20011215 -- $Id: malloc.c,v 1.108 2003/01/30 18:36:54 drepper Exp $ -+ $Id: malloc.c,v 1.114 2003/09/08 16:32:37 drepper Exp $ - based on: - VERSION 2.7.0 Sun Mar 11 14:14:06 2001 Doug Lea (dl at gee) - -@@ -2969,9 +2969,6 @@ - */ - - else { -- /* Count foreign sbrk as system_mem. */ -- if (old_size) -- av->system_mem += brk - old_end; - front_misalign = 0; - end_misalign = 0; - correction = 0; -@@ -2980,6 +2977,10 @@ - /* handle contiguous cases */ - if (contiguous(av)) { - -+ /* Count foreign sbrk as system_mem. */ -+ if (old_size) -+ av->system_mem += brk - old_end; -+ - /* Guarantee alignment of first new chunk made from this space */ - - front_misalign = (INTERNAL_SIZE_T)chunk2mem(brk) & MALLOC_ALIGN_MASK; -@@ -3474,6 +3475,7 @@ - ar_ptr == arena_for_chunk(mem2chunk(p))); - return p; - } -+strong_alias (public_mEMALIGn, __memalign_internal) - - Void_t* - public_vALLOc(size_t bytes) -@@ -3707,6 +3709,8 @@ - { - struct mallinfo m; - -+ if(__malloc_initialized < 0) -+ ptmalloc_init (); - (void)mutex_lock(&main_arena.mutex); - m = mALLINFo(&main_arena); - (void)mutex_unlock(&main_arena.mutex); -@@ -4128,6 +4132,30 @@ - p = mem2chunk(mem); - size = chunksize(p); - -+ /* Little security check which won't hurt performance: the -+ allocator never wrapps around at the end of the address space. -+ Therefore we can exclude some size values which might appear -+ here by accident or by "design" from some intruder. */ -+ if (__builtin_expect ((uintptr_t) p > (uintptr_t) -size, 0)) -+ { -+ if (check_action & 1) -+ { -+#ifdef _LIBC -+ _IO_flockfile (stderr); -+ int old_flags2 = ((_IO_FILE *) stderr)->_flags2; -+ ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; -+#endif -+ fprintf (stderr, "free(): invalid pointer %p!\n", mem); -+#ifdef _LIBC -+ ((_IO_FILE *) stderr)->_flags2 |= old_flags2; -+ _IO_funlockfile (stderr); -+#endif -+ } -+ if (check_action & 2) -+ abort (); -+ return; -+ } -+ - check_inuse_chunk(av, p); - - /* -@@ -5089,6 +5117,13 @@ - long stat_lock_direct = 0, stat_lock_loop = 0, stat_lock_wait = 0; - #endif - -+ if(__malloc_initialized < 0) -+ ptmalloc_init (); -+#ifdef _LIBC -+ _IO_flockfile (stderr); -+ int old_flags2 = ((_IO_FILE *) stderr)->_flags2; -+ ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; -+#endif - for (i=0, ar_ptr = &main_arena;; i++) { - (void)mutex_lock(&ar_ptr->mutex); - mi = mALLINFo(ar_ptr); -@@ -5133,6 +5168,10 @@ - fprintf(stderr, "locked total = %10ld\n", - stat_lock_direct + stat_lock_loop + stat_lock_wait); - #endif -+#ifdef _LIBC -+ ((_IO_FILE *) stderr)->_flags2 |= old_flags2; -+ _IO_funlockfile (stderr); -+#endif - } - - -@@ -5146,11 +5185,11 @@ - int mALLOPt(param_number, value) int param_number; int value; - #endif - { -- if(__malloc_initialized < 0) -- ptmalloc_init (); - mstate av = &main_arena; - int res = 1; - -+ if(__malloc_initialized < 0) -+ ptmalloc_init (); - (void)mutex_lock(&av->mutex); - /* Ensure initialization/consolidation */ - malloc_consolidate(av); -@@ -5353,7 +5392,7 @@ - if (alignment % sizeof (void *) != 0 || !powerof2 (alignment) != 0) - return EINVAL; - -- mem = __libc_memalign (alignment, size); -+ mem = __memalign_internal (alignment, size); - - if (mem != NULL) { - *memptr = mem; ---- glibc-2.3.2/malloc/malloc.h 2003-01-12 22:58:02.000000000 -0500 -+++ glibc-2.3.2/malloc/malloc.h 2003-08-21 08:37:07.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Prototypes and definition for malloc implementation. -- Copyright (C) 1996, 1997, 1999, 2000, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1996,1997,1999,2000,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -25,7 +25,7 @@ - #endif - - /* -- $Id: malloc.h,v 1.23 2003/01/13 03:42:16 roland Exp $ -+ $Id: malloc.h,v 1.24 2003/05/28 21:01:42 roland Exp $ - `ptmalloc2', a malloc implementation for multiple threads without - lock contention, by Wolfram Gloger . - -@@ -85,11 +85,19 @@ - # define __MALLOC_P(args) args - # define __MALLOC_PMT(args) args - -+# ifndef __const -+# define __const const -+# endif -+ - # else /* Not ANSI C or C++. */ - - # define __MALLOC_P(args) () /* No prototypes. */ - # define __MALLOC_PMT(args) () - -+# ifndef __const -+# define __const -+# endif -+ - # endif /* ANSI C or C++. */ - - #endif /* GCC. */ -@@ -226,7 +234,7 @@ - - - #ifdef __cplusplus --}; /* end of extern "C" */ -+} /* end of extern "C" */ - #endif - - #endif /* malloc.h */ ---- glibc-2.3.2/malloc/memusagestat.c 2001-07-07 15:21:06.000000000 -0400 -+++ glibc-2.3.2/malloc/memusagestat.c 2003-04-12 11:39:43.000000000 -0400 -@@ -405,7 +405,7 @@ - } - - -- snprintf (buf, sizeof (buf), "%llu", total); -+ snprintf (buf, sizeof (buf), "%llu", (unsigned long long) total); - gdImageString (im_out, gdFontSmall, xsize - 50, ysize - 14, buf, blue); - - if (!time_based) ---- glibc-2.3.2/malloc/mtrace.c 2002-12-31 16:18:43.000000000 -0500 -+++ glibc-2.3.2/malloc/mtrace.c 2003-09-19 22:37:05.000000000 -0400 -@@ -1,5 +1,5 @@ - /* More debugging hooks for `malloc'. -- Copyright (C) 1991-1994,1996-2001,2002 Free Software Foundation, Inc. -+ Copyright (C) 1991-1994,1996-2001,2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written April 2, 1991 by John Gilmore of Cygnus Support. - Based on mcheck.c by Mike Haertel. -@@ -103,7 +103,7 @@ - { - #ifdef HAVE_ELF - Dl_info info; -- if (_dl_addr (caller, &info)) -+ if (_dl_addr (caller, &info, NULL, NULL)) - { - char *buf = (char *) ""; - if (info.dli_sname != NULL) -@@ -280,7 +280,7 @@ - if (mtb == NULL) - return; - -- mallstream = fopen (mallfile != NULL ? mallfile : "/dev/null", "w"); -+ mallstream = fopen (mallfile != NULL ? mallfile : "/dev/null", "wc"); - if (mallstream != NULL) - { - /* Make sure we close the file descriptor on exec. */ ---- glibc-2.3.2/malloc/set-freeres.c 2002-11-01 21:15:52.000000000 -0500 -+++ glibc-2.3.2/malloc/set-freeres.c 2003-04-12 11:39:43.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1997, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1997,1999,2000,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -16,7 +16,7 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - --#include -+#include - #include - #include - #include -@@ -36,7 +36,7 @@ - protect for multiple executions since these are fatal. */ - static long int already_called; - -- if (compare_and_swap (&already_called, 0, 1)) -+ if (! atomic_compare_and_exchange_bool_acq (&already_called, 1, 0)) - { - void * const *p; - ---- glibc-2.3.2/malloc/thread-m.h 2002-12-31 17:12:17.000000000 -0500 -+++ glibc-2.3.2/malloc/thread-m.h 2003-08-21 08:37:07.000000000 -0400 -@@ -1,6 +1,6 @@ - /* Basic platform-independent macro definitions for mutexes and - thread-specific data. -- Copyright (C) 1996,1997,1998,2000,2001,2002 Free Software Foundation, Inc. -+ Copyright (C) 1996-1998,2000,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Wolfram Gloger , 2001. - -@@ -19,7 +19,7 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - --/* $Id: thread-m.h,v 1.20 2002/12/31 21:05:27 drepper Exp $ -+/* $Id: thread-m.h,v 1.22 2003/05/09 03:15:50 drepper Exp $ - One out of _LIBC, USE_PTHREADS, USE_THR or USE_SPROC should be - defined, otherwise the token NO_THREADS and dummy implementations - of the macros will be defined. */ -@@ -31,6 +31,7 @@ - - #if defined(_LIBC) /* The GNU C library, a special case of Posix threads */ - -+#include - #include - - #ifdef PTHREAD_MUTEX_INITIALIZER -@@ -306,4 +307,16 @@ - - #endif /* defined(NO_THREADS) */ - -+#ifndef atomic_full_barrier -+# define atomic_full_barrier() __asm ("" ::: "memory") -+#endif -+ -+#ifndef atomic_read_barrier -+# define atomic_read_barrier() atomic_full_barrier () -+#endif -+ -+#ifndef atomic_write_barrier -+# define atomic_write_barrier() atomic_full_barrier () -+#endif -+ - #endif /* !defined(_THREAD_M_H) */ ---- glibc-2.3.2/math/Makefile 2003-02-21 01:03:48.000000000 -0500 -+++ glibc-2.3.2/math/Makefile 2003-08-21 08:37:07.000000000 -0400 -@@ -87,7 +87,7 @@ - - # Rules for the test suite. - tests = test-matherr test-fenv atest-exp atest-sincos atest-exp2 basic-test \ -- test-misc test-fpucw tst-definitions test-tgmath -+ test-misc test-fpucw tst-definitions test-tgmath test-tgmath-ret - # We do the `long double' tests only if this data type is available and - # distinct from `double'. - test-longdouble-yes = test-ldouble test-ildoubl -@@ -126,6 +126,7 @@ - CFLAGS-test-double.c = -fno-inline -ffloat-store - CFLAGS-test-ldouble.c = -fno-inline -ffloat-store - CFLAGS-test-tgmath.c = -fno-builtin -+CFLAGS-test-tgmath-ret.c = -fno-builtin - CPPFLAGS-test-ifloat.c = -U__LIBC_INTERNAL_MATH_INLINES -D__FAST_MATH__ \ - -DTEST_FAST_MATH - CPPFLAGS-test-idouble.c = -U__LIBC_INTERNAL_MATH_INLINES -D__FAST_MATH__ \ ---- glibc-2.3.2/math/libm-test.inc 2003-02-15 01:55:23.000000000 -0500 -+++ glibc-2.3.2/math/libm-test.inc 2003-04-12 11:39:43.000000000 -0400 -@@ -1537,7 +1537,7 @@ - TEST_c_c (ccos, nan_value, nan_value, nan_value, nan_value); - - TEST_c_c (ccos, 0.75L, 1.25L, 1.38173873063425888530729933139078645L, -1.09193013555397466170919531722024128L); -- TEST_c_c (ccos, -2, -3, -4.1896256909688072301L, -9.1092278937553365979L); -+ TEST_c_c (ccos, -2, -3, -4.18962569096880723013255501961597373L, -9.10922789375533659797919726277886212L); - - END (ccos, complex); - } -@@ -1606,7 +1606,7 @@ - - TEST_c_c (ccosh, 0.75L, 1.25L, 0.408242591877968807788852146397499084L, 0.780365930845853240391326216300863152L); - -- TEST_c_c (ccosh, -2, -3, -3.7245455049153225654L, 0.5118225699873846088L); -+ TEST_c_c (ccosh, -2, -3, -3.72454550491532256547397070325597253L, 0.511822569987384608834463849801875634L); - - END (ccosh, complex); - } -@@ -1836,7 +1836,7 @@ - TEST_c_c (clog10, nan_value, nan_value, nan_value, nan_value); - - TEST_c_c (clog10, 0.75L, 1.25L, 0.163679467193165171449476605077428975L, 0.447486970040493067069984724340855636L); -- TEST_c_c (clog10, -2, -3, 0.5569716761534183846L, -0.9375544629863747085L); -+ TEST_c_c (clog10, -2, -3, 0.556971676153418384603252578971164214L, -0.937554462986374708541507952140189646L); - - END (clog10, complex); - } -@@ -2072,7 +2072,7 @@ - TEST_c_c (csin, nan_value, nan_value, nan_value, nan_value); - - TEST_c_c (csin, 0.75L, 1.25L, 1.28722291002649188575873510790565441L, 1.17210635989270256101081285116138863L); -- TEST_c_c (csin, -2, -3, -9.1544991469114295734L, 4.1689069599665643507L); -+ TEST_c_c (csin, -2, -3, -9.15449914691142957346729954460983256L, 4.16890695996656435075481305885375484L); - - END (csin, complex); - } -@@ -2140,7 +2140,7 @@ - TEST_c_c (csinh, nan_value, nan_value, nan_value, nan_value); - - TEST_c_c (csinh, 0.75L, 1.25L, 0.259294854551162779153349830618433028L, 1.22863452409509552219214606515777594L); -- TEST_c_c (csinh, -2, -3, 3.5905645899857799520L, -0.5309210862485198052L); -+ TEST_c_c (csinh, -2, -3, 3.59056458998577995201256544779481679L, -0.530921086248519805267040090660676560L); - - END (csinh, complex); - } -@@ -2264,7 +2264,7 @@ - TEST_c_c (ctan, nan_value, nan_value, nan_value, nan_value); - - TEST_c_c (ctan, 0.75L, 1.25L, 0.160807785916206426725166058173438663L, 0.975363285031235646193581759755216379L); -- TEST_c_c (ctan, -2, -3, 0.0037640256415042482L, -1.0032386273536098014L); -+ TEST_c_c (ctan, -2, -3, 0.376402564150424829275122113032269084e-2L, -1.00323862735360980144635859782192726L); - - END (ctan, complex); - } -@@ -2323,7 +2323,7 @@ - TEST_c_c (ctanh, 0, M_PI_4l, 0.0, 1.0); - - TEST_c_c (ctanh, 0.75L, 1.25L, 1.37260757053378320258048606571226857L, 0.385795952609750664177596760720790220L); -- TEST_c_c (ctanh, -2, -3, -0.9653858790221331242L, 0.0098843750383224937L); -+ TEST_c_c (ctanh, -2, -3, -0.965385879022133124278480269394560686L, 0.988437503832249372031403430350121098e-2L); - - END (ctanh, complex); - } -@@ -3067,8 +3067,8 @@ - - TEST_f_f1 (lgamma, 0.5, M_LOG_SQRT_PIl, 1); - TEST_f_f1 (lgamma, -0.5, M_LOG_2_SQRT_PIl, -1); -- TEST_f_f1 (lgamma, 0.7L, 0.26086724653166651439L, 1); -- TEST_f_f1 (lgamma, 1.2L, -0.853740900033158497197e-1L, 1); -+ TEST_f_f1 (lgamma, 0.7L, 0.260867246531666514385732417016759578L, 1); -+ TEST_f_f1 (lgamma, 1.2L, -0.853740900033158497197028392998854470e-1L, 1); - - END (lgamma); - } -@@ -4078,8 +4078,8 @@ - TEST_f_f (tgamma, 1, 1); - TEST_f_f (tgamma, 4, 6); - -- TEST_f_f (tgamma, 0.7L, 1.29805533264755778568L); -- TEST_f_f (tgamma, 1.2L, 0.91816874239976061064L); -+ TEST_f_f (tgamma, 0.7L, 1.29805533264755778568117117915281162L); -+ TEST_f_f (tgamma, 1.2L, 0.918168742399760610640951655185830401L); - - END (tgamma); - } ---- glibc-2.3.2/math/math_private.h 2001-09-24 21:13:41.000000000 -0400 -+++ glibc-2.3.2/math/math_private.h 2003-09-19 22:37:05.000000000 -0400 -@@ -232,6 +232,9 @@ - extern float __kernel_tanf (float,float,int); - extern int __kernel_rem_pio2f (float*,float*,int,int,int, const int32_t*); - -+/* internal functions. */ -+extern float __copysignf (float x, float __y); -+ - - /* ieee style elementary long double functions */ - extern long double __ieee754_sqrtl (long double); ---- glibc-2.3.2/math/test-fenv.c 2001-07-07 15:21:06.000000000 -0400 -+++ glibc-2.3.2/math/test-fenv.c 2003-05-24 14:06:22.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1997, 1998, 2000, 2001 Free Software Foundation, Inc. -+/* Copyright (C) 1997, 1998, 2000, 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Andreas Jaeger and - Ulrich Drepper , 1997. -@@ -350,7 +350,8 @@ - int status; - pid_t pid; - -- printf ("Test: after fedisable (%s) processes will abort\n", flag_name); -+ printf ("Test: after fedisableexcept (%s) processes will abort\n", -+ flag_name); - printf (" when feraiseexcept (%s) is called.\n", flag_name); - pid = fork (); - if (pid == 0) -@@ -403,7 +404,8 @@ - int exception; - pid_t pid; - -- printf ("Test: after fedisable (%s) processes will not abort\n", flag_name); -+ printf ("Test: after fedisableexcept (%s) processes will not abort\n", -+ flag_name); - printf (" when feraiseexcept (%s) is called.\n", flag_name); - pid = fork (); - if (pid == 0) ---- glibc-2.3.2/math/test-tgmath-ret.c 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.3.2/math/test-tgmath-ret.c 2003-06-16 03:52:41.000000000 -0400 -@@ -0,0 +1,85 @@ -+/* Test compilation of tgmath macros. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Andreas Jaeger , 2003. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#include -+#include -+#include -+#include -+ -+static float fx; -+static double dx; -+static long double lx; -+static int errors = 0; -+ -+static void -+our_error (const char *c) -+{ -+ puts (c); -+ ++errors; -+} -+ -+/* First function where the return type is constant. */ -+ -+#define CHECK_RET_CONST_TYPE(func, rettype, arg, name) \ -+ if (sizeof (func (arg)) != sizeof (rettype)) \ -+ our_error ("Return size of " #func " is wrong with " #name " argument"); -+ -+#define CHECK_RET_CONST_FLOAT(func, rettype) \ -+ CHECK_RET_CONST_TYPE (func, rettype, fx, float) -+#define CHECK_RET_CONST_DOUBLE(func, rettype) \ -+ CHECK_RET_CONST_TYPE (func, rettype, dx, double) -+#ifdef NO_LONG_DOUBLE -+# define CHECK_RET_CONST_LDOUBLE(func, rettype) -+#else -+# define CHECK_RET_CONST_LDOUBLE(func, rettype) \ -+ CHECK_RET_CONST_TYPE (func, rettype, lx, long double) -+#endif -+ -+#define CHECK_RET_CONST(func, rettype) \ -+static void \ -+check_return_ ##func (void) \ -+{ \ -+ CHECK_RET_CONST_FLOAT (func, rettype) \ -+ CHECK_RET_CONST_DOUBLE (func, rettype) \ -+ CHECK_RET_CONST_LDOUBLE (func, rettype) \ -+} -+ -+CHECK_RET_CONST(ilogb, int) -+CHECK_RET_CONST(lrint, long) -+CHECK_RET_CONST(lround, long) -+CHECK_RET_CONST(llrint, long long) -+CHECK_RET_CONST(llround, long long) -+ -+static int -+do_test (void) -+{ -+ check_return_ilogb (); -+ check_return_lrint (); -+ check_return_lround (); -+ check_return_llrint (); -+ check_return_llround (); -+ -+ printf ("%Zd\n", sizeof(carg (lx))); -+ -+ return errors != 0; -+} -+ -+#define TEST_FUNCTION do_test () -+#include "../test-skeleton.c" ---- glibc-2.3.2/math/test-tgmath.c 2001-07-07 15:21:06.000000000 -0400 -+++ glibc-2.3.2/math/test-tgmath.c 2003-04-12 11:39:43.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Test compilation of tgmath macros. -- Copyright (C) 2001 Free Software Foundation, Inc. -+ Copyright (C) 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek and - Ulrich Drepper , 2001. -@@ -162,7 +162,7 @@ - static void - F(compile_test) (void) - { -- TYPE a, b, c; -+ TYPE a, b, c = 1.0; - int i; - long int j; - long long int k; ---- glibc-2.3.2/math/tgmath.h 2001-07-07 15:21:06.000000000 -0400 -+++ glibc-2.3.2/math/tgmath.h 2003-08-21 08:37:07.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. -+/* Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -70,7 +70,18 @@ - __tgmres = Fct (Val); \ - else if (sizeof (Val) == sizeof (float)) \ - __tgmres = Fct##f (Val); \ -- else \ -+ else \ -+ __tgmres = __tgml(Fct) (Val); \ -+ __tgmres; })) -+ -+# define __TGMATH_UNARY_REAL_RET_ONLY(Val, RetType, Fct) \ -+ (__extension__ ({ RetType __tgmres; \ -+ if (sizeof (Val) == sizeof (double) \ -+ || __builtin_classify_type (Val) != 8) \ -+ __tgmres = Fct (Val); \ -+ else if (sizeof (Val) == sizeof (float)) \ -+ __tgmres = Fct##f (Val); \ -+ else \ - __tgmres = __tgml(Fct) (Val); \ - __tgmres; })) - -@@ -81,7 +92,7 @@ - __tgmres = Fct (Val1, Val2); \ - else if (sizeof (Val1) == sizeof (float)) \ - __tgmres = Fct##f (Val1, Val2); \ -- else \ -+ else \ - __tgmres = __tgml(Fct) (Val1, Val2); \ - __tgmres; })) - -@@ -155,7 +166,7 @@ - else \ - __tgmres = Cfct (Val); \ - } \ -- else \ -+ else \ - { \ - if (sizeof (__real__ (Val)) == sizeof (Val)) \ - __tgmres = Fct##f (Val); \ -@@ -166,19 +177,6 @@ - - /* XXX This definition has to be changed as soon as the compiler understands - the imaginary keyword. */ --# define __TGMATH_UNARY_IMAG_ONLY(Val, Fct) \ -- (__extension__ ({ __tgmath_real_type (Val) __tgmres; \ -- if (sizeof (Val) == sizeof (__complex__ double) \ -- || __builtin_classify_type (__real__ (Val)) != 8) \ -- __tgmres = Fct (Val); \ -- else if (sizeof (Val) == sizeof (__complex__ float)) \ -- __tgmres = Fct##f (Val); \ -- else \ -- __tgmres = __tgml(Fct) (Val); \ -- __tgmres; })) -- --/* XXX This definition has to be changed as soon as the compiler understands -- the imaginary keyword. */ - # define __TGMATH_BINARY_REAL_IMAG(Val1, Val2, Fct, Cfct) \ - (__extension__ ({ __tgmath_real_type ((Val1) + (Val2)) __tgmres; \ - if ((sizeof (__real__ (Val1)) > sizeof (double) \ -@@ -345,13 +343,13 @@ - - /* Round X to nearest integral value according to current rounding - direction. */ --#define lrint(Val) __TGMATH_UNARY_REAL_ONLY (Val, lrint) --#define llrint(Val) __TGMATH_UNARY_REAL_ONLY (Val, llrint) -+#define lrint(Val) __TGMATH_UNARY_REAL_RET_ONLY (Val, long int, lrint) -+#define llrint(Val) __TGMATH_UNARY_REAL_RET_ONLY (Val, long long int, llrint) - - /* Round X to nearest integral value, rounding halfway cases away from - zero. */ --#define lround(Val) __TGMATH_UNARY_REAL_ONLY (Val, lround) --#define llround(Val) __TGMATH_UNARY_REAL_ONLY (Val, llround) -+#define lround(Val) __TGMATH_UNARY_REAL_RET_ONLY (Val, long int, lround) -+#define llround(Val) __TGMATH_UNARY_REAL_RET_ONLY (Val, long long int, llround) - - - /* Return X with its signed changed to Y's. */ -@@ -389,7 +387,7 @@ - __TGMATH_BINARY_FIRST_REAL_ONLY (Val1, Val2, scalbln) - - /* Return the binary exponent of X, which must be nonzero. */ --#define ilogb(Val) __TGMATH_UNARY_REAL_ONLY (Val, ilogb) -+#define ilogb(Val) __TGMATH_UNARY_REAL_RET_ONLY (Val, int, ilogb) - - - /* Return positive difference between X and Y. */ -@@ -410,21 +408,21 @@ - /* Absolute value, conjugates, and projection. */ - - /* Argument value of Z. */ --#define carg(Val) __TGMATH_UNARY_IMAG_ONLY (Val, carg) -+#define carg(Val) __TGMATH_UNARY_REAL_IMAG (Val, carg, carg) - - /* Complex conjugate of Z. */ --#define conj(Val) __TGMATH_UNARY_IMAG_ONLY (Val, conj) -+#define conj(Val) __TGMATH_UNARY_REAL_IMAG (Val, conj, conj) - - /* Projection of Z onto the Riemann sphere. */ --#define cproj(Val) __TGMATH_UNARY_IMAG_ONLY (Val, cproj) -+#define cproj(Val) __TGMATH_UNARY_REAL_IMAG (Val, cproj, cproj) - - - /* Decomposing complex values. */ - - /* Imaginary part of Z. */ --#define cimag(Val) __TGMATH_UNARY_IMAG_ONLY (Val, cimag) -+#define cimag(Val) __TGMATH_UNARY_REAL_IMAG (Val, cimag, cimag) - - /* Real part of Z. */ --#define creal(Val) __TGMATH_UNARY_IMAG_ONLY (Val, creal) -+#define creal(Val) __TGMATH_UNARY_REAL_IMAG (Val, creal, creal) - - #endif /* tgmath.h */ ---- glibc-2.3.2/misc/Makefile 2002-08-27 00:52:37.000000000 -0400 -+++ glibc-2.3.2/misc/Makefile 2003-09-19 22:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1991-1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+# Copyright (C) 1991-2002, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -52,7 +52,7 @@ - chflags fchflags \ - insremque getttyent getusershell getpass ttyslot \ - syslog syscall daemon \ -- mmap mmap64 munmap mprotect msync madvise mincore \ -+ mmap mmap64 munmap mprotect msync madvise mincore remap_file_pages\ - mlock munlock mlockall munlockall \ - efgcvt efgcvt_r qefgcvt qefgcvt_r \ - hsearch hsearch_r tsearch lsearch \ -@@ -75,8 +75,21 @@ - - tests := tst-dirname tst-tsearch tst-fdset tst-efgcvt tst-mntent tst-hsearch - --CFLAGS-tsearch.c = $(exceptions) --CFLAGS-lsearch.c = $(exceptions) -+CFLAGS-tsearch.c = $(uses-callbacks) -+CFLAGS-lsearch.c = $(uses-callbacks) -+CFLAGS-pselect.c = -fexceptions -+CFLAGS-readv.c = -fexceptions -fasynchronous-unwind-tables -+CFLAGS-writev.c = -fexceptions -fasynchronous-unwind-tables -+CFLAGS-usleep.c = -fexceptions -+CFLAGS-syslog.c = -fexceptions -+CFLAGS-error.c = -fexceptions -+CFLAGS-getpass.c = -fexceptions -+CFLAGS-mkstemp.c = -fexceptions -+CFLAGS-mkstemp64.c = -fexceptions -+CFLAGS-getsysstats.c = -fexceptions -+CFLAGS-getusershell.c = -fexceptions -+CFLAGS-err.c = -fexceptions -+CFLAGS-tst-tsearch.c = $(stack-align-test-flags) - - include ../Rules - ---- glibc-2.3.2/misc/Versions 2002-12-18 17:49:52.000000000 -0500 -+++ glibc-2.3.2/misc/Versions 2003-03-15 15:02:11.000000000 -0500 -@@ -127,6 +127,9 @@ - # s* - setxattr; - } -+ GLIBC_2.3.3 { -+ remap_file_pages; -+ } - GLIBC_PRIVATE { - # functions which have an additional interface since they are - # cancelable. ---- glibc-2.3.2/misc/daemon.c 2002-04-08 03:02:09.000000000 -0400 -+++ glibc-2.3.2/misc/daemon.c 2003-04-24 20:05:58.000000000 -0400 -@@ -31,12 +31,14 @@ - static char sccsid[] = "@(#)daemon.c 8.1 (Berkeley) 6/4/93"; - #endif /* LIBC_SCCS and not lint */ - -+#include - #include - #include - #include - #include - - #include -+#include - - int - daemon(nochdir, noclose) -@@ -59,7 +61,8 @@ - if (!nochdir) - (void)__chdir("/"); - -- if (!noclose && (fd = __open(_PATH_DEVNULL, O_RDWR, 0)) != -1) { -+ if (!noclose -+ && (fd = open_not_cancel(_PATH_DEVNULL, O_RDWR, 0)) != -1) { - struct stat64 st; - - if (__builtin_expect (__fxstat64 (_STAT_VER, fd, &st), 0) == 0 -@@ -74,7 +77,7 @@ - if (fd > 2) - (void)__close (fd); - } else { -- (void)__close (fd); -+ close_not_cancel_no_status (fd); - return -1; - } - } ---- glibc-2.3.2/misc/err.h 2001-07-07 15:21:06.000000000 -0400 -+++ glibc-2.3.2/misc/err.h 2003-09-19 22:37:05.000000000 -0400 -@@ -1,5 +1,5 @@ - /* 4.4BSD utility functions for error messages. -- Copyright (C) 1995, 1996, 1997, 1998, 1999 Free Software Foundation, Inc. -+ Copyright (C) 1995,1996,1997,1998,1999,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -33,25 +33,25 @@ - /* Print "program: ", FORMAT, ": ", the standard error string for errno, - and a newline, on stderr. */ - extern void warn (__const char *__format, ...) -- __THROW __attribute__ ((__format__ (__printf__, 1, 2))); -+ __attribute__ ((__format__ (__printf__, 1, 2))); - extern void vwarn (__const char *__format, __gnuc_va_list) -- __THROW __attribute__ ((__format__ (__printf__, 1, 0))); -+ __attribute__ ((__format__ (__printf__, 1, 0))); - - /* Likewise, but without ": " and the standard error string. */ - extern void warnx (__const char *__format, ...) -- __THROW __attribute__ ((__format__ (__printf__, 1, 2))); -+ __attribute__ ((__format__ (__printf__, 1, 2))); - extern void vwarnx (__const char *__format, __gnuc_va_list) -- __THROW __attribute__ ((__format__ (__printf__, 1, 0))); -+ __attribute__ ((__format__ (__printf__, 1, 0))); - - /* Likewise, and then exit with STATUS. */ - extern void err (int __status, __const char *__format, ...) -- __THROW __attribute__ ((__noreturn__, __format__ (__printf__, 2, 3))); -+ __attribute__ ((__noreturn__, __format__ (__printf__, 2, 3))); - extern void verr (int __status, __const char *__format, __gnuc_va_list) -- __THROW __attribute__ ((__noreturn__, __format__ (__printf__, 2, 0))); -+ __attribute__ ((__noreturn__, __format__ (__printf__, 2, 0))); - extern void errx (int __status, __const char *__format, ...) -- __THROW __attribute__ ((__noreturn__, __format__ (__printf__, 2, 3))); -+ __attribute__ ((__noreturn__, __format__ (__printf__, 2, 3))); - extern void verrx (int __status, __const char *, __gnuc_va_list) -- __THROW __attribute__ ((__noreturn__, __format__ (__printf__, 2, 0))); -+ __attribute__ ((__noreturn__, __format__ (__printf__, 2, 0))); - - __END_DECLS - ---- glibc-2.3.2/misc/error.c 2002-12-09 03:20:33.000000000 -0500 -+++ glibc-2.3.2/misc/error.c 2003-09-19 22:37:05.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Error handler for noninteractive utilities -- Copyright (C) 1990-1998, 2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1990-1998, 2000-2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. Its master source is NOT part of - the C library, however. The master source lives in /gd/gnu/lib. - -@@ -92,6 +92,8 @@ - # undef putc - # define putc(c, fp) INTUSE(_IO_putc) (c, fp) - -+# include -+ - #else /* not _LIBC */ - - # if !HAVE_DECL_STRERROR_R && STRERROR_R_CHAR_P -@@ -255,6 +257,14 @@ - va_list args; - #endif - -+#if defined _LIBC && defined __libc_ptf_call -+ /* We do not want this call to be cut short by a thread -+ cancellation. Therefore disable cancellation for now. */ -+ int state = PTHREAD_CANCEL_ENABLE; -+ __libc_ptf_call (pthread_setcancelstate, (PTHREAD_CANCEL_DISABLE, &state), -+ 0); -+#endif -+ - fflush (stdout); - #ifdef _LIBC - _IO_flockfile (stderr); -@@ -288,6 +298,9 @@ - - #ifdef _LIBC - _IO_funlockfile (stderr); -+# ifdef __libc_ptf_call -+ __libc_ptf_call (pthread_setcancelstate, (state, NULL), 0); -+# endif - #endif - } - -@@ -328,6 +341,14 @@ - old_line_number = line_number; - } - -+#if defined _LIBC && defined __libc_ptf_call -+ /* We do not want this call to be cut short by a thread -+ cancellation. Therefore disable cancellation for now. */ -+ int state = PTHREAD_CANCEL_ENABLE; -+ __libc_ptf_call (pthread_setcancelstate, (PTHREAD_CANCEL_DISABLE, &state), -+ 0); -+#endif -+ - fflush (stdout); - #ifdef _LIBC - _IO_flockfile (stderr); -@@ -371,6 +392,9 @@ - - #ifdef _LIBC - _IO_funlockfile (stderr); -+# ifdef __libc_ptf_call -+ __libc_ptf_call (pthread_setcancelstate, (state, NULL), 0); -+# endif - #endif - } - ---- glibc-2.3.2/misc/error.h 2001-07-07 15:21:06.000000000 -0400 -+++ glibc-2.3.2/misc/error.h 2003-09-19 22:37:05.000000000 -0400 -@@ -1,7 +1,6 @@ - /* Declaration for error-reporting function -- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -- This file is part of the GNU C Library. Its master source is NOT part of -- the C library, however. The master source lives in /gd/gnu/lib. -+ Copyright (C) 1995, 1996, 1997, 2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public -@@ -38,17 +37,17 @@ - extern "C" { - #endif - --#if defined (__STDC__) && __STDC__ -+#if defined __STDC__ && __STDC__ - - /* Print a message with `fprintf (stderr, FORMAT, ...)'; - if ERRNUM is nonzero, follow it with ": " and strerror (ERRNUM). - If STATUS is nonzero, terminate the program with `exit (STATUS)'. */ - --extern void error (int status, int errnum, const char *format, ...) -+extern void error (int __status, int __errnum, const char *__format, ...) - __attribute__ ((__format__ (__printf__, 3, 4))); - --extern void error_at_line (int status, int errnum, const char *fname, -- unsigned int lineno, const char *format, ...) -+extern void error_at_line (int __status, int __errnum, const char *__fname, -+ unsigned int __lineno, const char *__format, ...) - __attribute__ ((__format__ (__printf__, 5, 6))); - - /* If NULL, error will flush stdout, then print on stderr the program ---- glibc-2.3.2/misc/getpass.c 2001-08-17 10:28:56.000000000 -0400 -+++ glibc-2.3.2/misc/getpass.c 2003-09-19 22:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1992,93,94,95,96,97,98,99,2001 Free Software Foundation, Inc. -+/* Copyright (C) 1992-1999, 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -21,11 +21,10 @@ - #include - #include - --#ifdef USE_IN_LIBIO --# include --# define flockfile(s) _IO_flockfile (s) --# define funlockfile(s) _IO_funlockfile (s) --#endif -+#include -+#define flockfile(s) _IO_flockfile (s) -+#define funlockfile(s) _IO_funlockfile (s) -+#include - - /* It is desirable to use this bit on systems that have it. - The only bit of terminal state we want to twiddle is echoing, which is -@@ -36,6 +35,13 @@ - #define TCSASOFT 0 - #endif - -+static void -+call_fclose (void *arg) -+{ -+ if (arg != NULL) -+ fclose (arg); -+} -+ - char * - getpass (prompt) - const char *prompt; -@@ -50,7 +56,7 @@ - /* Try to write to and read from the terminal if we can. - If we can't open the terminal, use stderr and stdin. */ - -- in = fopen ("/dev/tty", "w+"); -+ in = fopen ("/dev/tty", "w+c"); - if (in == NULL) - { - in = stdin; -@@ -64,6 +70,10 @@ - out = in; - } - -+ /* Make sure the stream we opened is closed even if the thread is -+ canceled. */ -+ __libc_cleanup_push (call_fclose, in == out ? in : NULL); -+ - flockfile (out); - - /* Turn echoing off if it is on now. */ -@@ -117,6 +127,8 @@ - - funlockfile (out); - -+ __libc_cleanup_pop (0); -+ - if (in != stdin) - /* We opened the terminal; now close it. */ - fclose (in); ---- glibc-2.3.2/misc/getttyent.c 2002-08-03 22:19:58.000000000 -0400 -+++ glibc-2.3.2/misc/getttyent.c 2003-09-19 22:37:05.000000000 -0400 -@@ -192,7 +192,7 @@ - if (tf) { - (void)rewind(tf); - return (1); -- } else if ((tf = fopen(_PATH_TTYS, "r"))) { -+ } else if ((tf = fopen(_PATH_TTYS, "rc"))) { - /* We do the locking ourselves. */ - __fsetlocking (tf, FSETLOCKING_BYCALLER); - return (1); ---- glibc-2.3.2/misc/getusershell.c 2001-07-17 04:05:26.000000000 -0400 -+++ glibc-2.3.2/misc/getusershell.c 2003-09-19 22:37:05.000000000 -0400 -@@ -100,7 +100,7 @@ - if (strings != NULL) - free(strings); - strings = NULL; -- if ((fp = fopen(_PATH_SHELLS, "r")) == NULL) -+ if ((fp = fopen(_PATH_SHELLS, "rc")) == NULL) - return (char **) okshells; - if (fstat64(fileno(fp), &statb) == -1) { - (void)fclose(fp); ---- glibc-2.3.2/misc/mntent_r.c 2002-04-09 03:16:43.000000000 -0400 -+++ glibc-2.3.2/misc/mntent_r.c 2003-09-19 22:37:05.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Utilities for reading/writing fstab, mtab, etc. -- Copyright (C) 1995-2000, 2001, 2002 Free Software Foundation, Inc. -+ Copyright (C) 1995-2000, 2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -38,7 +38,12 @@ - FILE * - __setmntent (const char *file, const char *mode) - { -- FILE *result = fopen (file, mode); -+ /* Extend the mode parameter with "c" to disable cancellation in the -+ I/O functions. */ -+ size_t modelen = strlen (mode); -+ char newmode[modelen + 2]; -+ memcpy (mempcpy (newmode, mode, modelen), "c", 2); -+ FILE *result = fopen (file, newmode); - - if (result != NULL) - /* We do the locking ourselves. */ ---- glibc-2.3.2/misc/sys/mman.h 2001-07-07 15:21:06.000000000 -0400 -+++ glibc-2.3.2/misc/sys/mman.h 2003-04-24 20:05:58.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Definitions for BSD-style memory management. -- Copyright (C) 1994-1999, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1994-1999, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -83,8 +83,11 @@ - - /* Synchronize the region starting at ADDR and extending LEN bytes with the - file it maps. Filesystem operations on a file being mapped are -- unpredictable before this is done. Flags are from the MS_* set. */ --extern int msync (void *__addr, size_t __len, int __flags) __THROW; -+ unpredictable before this is done. Flags are from the MS_* set. -+ -+ This function is a cancellation point and therefore not marked with -+ __THROW. */ -+extern int msync (void *__addr, size_t __len, int __flags); - - #ifdef __USE_BSD - /* Advise the system about particular usage patterns the program follows -@@ -124,7 +127,13 @@ - The status is returned in a vector of bytes. The least significant - bit of each byte is 1 if the referenced page is in memory, otherwise - it is zero. */ --extern int mincore (void *__start, size_t __len, unsigned char *__vec); -+extern int mincore (void *__start, size_t __len, unsigned char *__vec) -+ __THROW; -+ -+/* Remap arbitrary pages of a shared backing store within an existing -+ VMA. */ -+extern int remap_file_pages (void *__start, size_t __size, int __prot, -+ size_t __pgoff, int __flags) __THROW; - #endif - - ---- glibc-2.3.2/misc/sys/select.h 2002-08-02 01:00:55.000000000 -0400 -+++ glibc-2.3.2/misc/sys/select.h 2003-04-24 20:05:58.000000000 -0400 -@@ -1,5 +1,5 @@ - /* `fd_set' type and related macros, and `select'/`pselect' declarations. -- Copyright (C) 1996,97,98,99,2000,01,02 Free Software Foundation, Inc. -+ Copyright (C) 1996,97,98,99,2000,01,02,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -102,21 +102,27 @@ - readiness, in WRITEFDS (if not NULL) for write readiness, and in EXCEPTFDS - (if not NULL) for exceptional conditions. If TIMEOUT is not NULL, time out - after waiting the interval specified therein. Returns the number of ready -- descriptors, or -1 for errors. */ -+ descriptors, or -1 for errors. -+ -+ This function is a cancellation point and therefore not marked with -+ __THROW. */ - extern int select (int __nfds, fd_set *__restrict __readfds, - fd_set *__restrict __writefds, - fd_set *__restrict __exceptfds, -- struct timeval *__restrict __timeout) __THROW; -+ struct timeval *__restrict __timeout); - - #ifdef __USE_XOPEN2K - /* Same as above only that the TIMEOUT value is given with higher - resolution and a sigmask which is been set temporarily. This version -- should be used. */ -+ should be used. -+ -+ This function is a cancellation point and therefore not marked with -+ __THROW. */ - extern int pselect (int __nfds, fd_set *__restrict __readfds, - fd_set *__restrict __writefds, - fd_set *__restrict __exceptfds, - const struct timespec *__restrict __timeout, -- const __sigset_t *__restrict __sigmask) __THROW; -+ const __sigset_t *__restrict __sigmask); - #endif - - __END_DECLS ---- glibc-2.3.2/misc/sys/syslog.h 2000-12-08 12:05:25.000000000 -0500 -+++ glibc-2.3.2/misc/sys/syslog.h 2003-09-19 22:37:05.000000000 -0400 -@@ -168,24 +168,37 @@ - - __BEGIN_DECLS - --/* Close desriptor used to write to system logger. */ --extern void closelog (void) __THROW; -+/* Close desriptor used to write to system logger. - --/* Open connection to system logger. */ --extern void openlog (__const char *__ident, int __option, int __facility) -- __THROW; -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern void closelog (void); -+ -+/* Open connection to system logger. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern void openlog (__const char *__ident, int __option, int __facility); - - /* Set the log mask level. */ - extern int setlogmask (int __mask) __THROW; - --/* Generate a log message using FMT string and option arguments. */ --extern void syslog (int __pri, __const char *__fmt, ...) __THROW -+/* Generate a log message using FMT string and option arguments. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+extern void syslog (int __pri, __const char *__fmt, ...) - __attribute__ ((__format__(__printf__, 2, 3))); - - #ifdef __USE_BSD --/* Generate a log message using FMT and using arguments pointed to by AP. */ -+/* Generate a log message using FMT and using arguments pointed to by AP. -+ -+ This function is not part of POSIX and therefore no official -+ cancellation point. But due to similarity with an POSIX interface -+ or due to the implementation it is a cancellation point and -+ therefore not marked with __THROW. */ - extern void vsyslog (int __pri, __const char *__fmt, __gnuc_va_list __ap) -- __THROW __attribute__ ((__format__(__printf__, 2, 0))); -+ __attribute__ ((__format__(__printf__, 2, 0))); - #endif - - __END_DECLS ---- glibc-2.3.2/misc/sys/uio.h 2001-07-07 15:21:06.000000000 -0400 -+++ glibc-2.3.2/misc/sys/uio.h 2003-04-24 20:05:58.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991, 92, 96, 97, 98, 99 Free Software Foundation, Inc. -+/* Copyright (C) 1991, 92, 96, 97, 98, 99, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -33,17 +33,21 @@ - buffers described by VECTOR, which is a vector of COUNT `struct iovec's. - The buffers are filled in the order specified. - Operates just like `read' (see ) except that data are -- put in VECTOR instead of a contiguous buffer. */ --extern ssize_t readv (int __fd, __const struct iovec *__vector, int __count) -- __THROW; -+ put in VECTOR instead of a contiguous buffer. -+ -+ This function is a cancellation point and therefore not marked with -+ __THROW. */ -+extern ssize_t readv (int __fd, __const struct iovec *__vector, int __count); - - /* Write data pointed by the buffers described by VECTOR, which - is a vector of COUNT `struct iovec's, to file descriptor FD. - The data is written in the order specified. - Operates just like `write' (see ) except that the data -- are taken from VECTOR instead of a contiguous buffer. */ --extern ssize_t writev (int __fd, __const struct iovec *__vector, int __count) -- __THROW; -+ are taken from VECTOR instead of a contiguous buffer. -+ -+ This function is a cancellation point and therefore not marked with -+ __THROW. */ -+extern ssize_t writev (int __fd, __const struct iovec *__vector, int __count); - - __END_DECLS - ---- glibc-2.3.2/misc/syslog.c 2002-12-11 21:00:24.000000000 -0500 -+++ glibc-2.3.2/misc/syslog.c 2003-08-21 08:37:07.000000000 -0400 -@@ -41,6 +41,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -74,9 +75,27 @@ - static void openlog_internal(const char *, int, int) internal_function; - static void closelog_internal(void); - static void sigpipe_handler (int); --#ifdef _LIBC_REENTRANT --static void cancel_handler (void *); --#endif -+ -+ -+struct cleanup_arg -+{ -+ void *buf; -+ struct sigaction *oldaction; -+}; -+ -+static void -+cancel_handler (void *ptr) -+{ -+ /* Restore the old signal handler. */ -+ struct cleanup_arg *clarg = (struct cleanup_arg *) ptr; -+ -+ if (clarg != NULL && clarg->oldaction != NULL) -+ __sigaction (SIGPIPE, clarg->oldaction, NULL); -+ -+ /* Free the lock. */ -+ __libc_lock_unlock (syslog_lock); -+} -+ - - /* - * syslog, vsyslog -- -@@ -118,7 +137,6 @@ - size_t bufsize = 0; - size_t prioff, msgoff; - struct sigaction action, oldaction; -- struct sigaction *oldaction_ptr = NULL; - int sigpipe; - int saved_errno = errno; - char failbuf[3 * sizeof (pid_t) + sizeof "out of memory []"]; -@@ -165,6 +183,7 @@ - } - else - { -+ __fsetlocking (f, FSETLOCKING_BYCALLER); - prioff = fprintf (f, "<%d>", pri); - (void) time (&now); - #ifdef USE_IN_LIBIO -@@ -182,9 +201,12 @@ - if (LogTag != NULL) - fputs_unlocked (LogTag, f); - if (LogStat & LOG_PID) -- fprintf (f, "[%d]", __getpid ()); -+ fprintf (f, "[%d]", (int) __getpid ()); - if (LogTag != NULL) -- putc_unlocked (':', f), putc_unlocked (' ', f); -+ { -+ putc_unlocked (':', f); -+ putc_unlocked (' ', f); -+ } - - /* Restore errno for %m format. */ - __set_errno (saved_errno); -@@ -212,16 +234,22 @@ - v->iov_base = (char *) "\n"; - v->iov_len = 1; - } -+ -+ __libc_cleanup_push (free, buf); -+ -+ /* writev is a cancellation point. */ - (void)__writev(STDERR_FILENO, iov, v - iov + 1); -+ -+ __libc_cleanup_pop (0); - } - --#ifdef _LIBC_REENTRANT - /* Prepare for multiple users. We have to take care: open and - write are cancellation points. */ -- __libc_cleanup_region_start (1, (void (*) (void *)) cancel_handler, -- &oldaction_ptr); -+ struct cleanup_arg clarg; -+ clarg.buf = buf; -+ clarg.oldaction = NULL; -+ __libc_cleanup_push (cancel_handler, &clarg); - __libc_lock_lock (syslog_lock); --#endif - - /* Prepare for a broken connection. */ - memset (&action, 0, sizeof (action)); -@@ -229,7 +257,7 @@ - sigemptyset (&action.sa_mask); - sigpipe = __sigaction (SIGPIPE, &action, &oldaction); - if (sigpipe == 0) -- oldaction_ptr = &oldaction; -+ clarg.oldaction = &oldaction; - - /* Get connected, output the message to the local logger. */ - if (!connected) -@@ -271,11 +299,9 @@ - if (sigpipe == 0) - __sigaction (SIGPIPE, &oldaction, (struct sigaction *) NULL); - --#ifdef _LIBC_REENTRANT - /* End of critical section. */ -- __libc_cleanup_region_end (0); -+ __libc_cleanup_pop (0); - __libc_lock_unlock (syslog_lock); --#endif - - free (buf); - } -@@ -283,6 +309,7 @@ - - static struct sockaddr SyslogAddr; /* AF_UNIX address of local logger */ - -+ - static void - internal_function - openlog_internal(const char *ident, int logstat, int logfac) -@@ -312,8 +339,9 @@ - == -1) - { - int saved_errno = errno; -- (void)__close(LogFile); -+ int fd = LogFile; - LogFile = -1; -+ (void)__close(fd); - if (LogType == SOCK_DGRAM - && saved_errno == EPROTOTYPE) - { -@@ -329,28 +357,16 @@ - } - } - -- --static void --log_cleanup (void *arg) --{ -- __libc_lock_unlock (syslog_lock); --} -- - void - openlog (const char *ident, int logstat, int logfac) - { --#ifdef _LIBC_REENTRANT -- /* Protect against multiple users. */ -- __libc_cleanup_region_start (1, log_cleanup, NULL); -+ /* Protect against multiple users and cancellation. */ -+ __libc_cleanup_push (cancel_handler, NULL); - __libc_lock_lock (syslog_lock); --#endif - - openlog_internal (ident, logstat, logfac); - --#ifdef _LIBC_REENTRANT -- /* Free the lock. */ -- __libc_cleanup_region_end (1); --#endif -+ __libc_cleanup_pop (1); - } - - static void -@@ -373,36 +389,17 @@ - void - closelog () - { --#ifdef _LIBC_REENTRANT -- /* Protect against multiple users. */ -- __libc_cleanup_region_start (1, log_cleanup, NULL); -+ /* Protect against multiple users and cancellation. */ -+ __libc_cleanup_push (cancel_handler, NULL); - __libc_lock_lock (syslog_lock); --#endif - - closelog_internal (); - LogTag = NULL; - LogType = SOCK_DGRAM; /* this is the default */ - --#ifdef _LIBC_REENTRANT -- /* Free the lock. */ -- __libc_cleanup_region_end (1); --#endif --} -- --#ifdef _LIBC_REENTRANT --static void --cancel_handler (void *ptr) --{ -- /* Restore the old signal handler. */ -- struct sigaction *oldaction = *((struct sigaction **) ptr); -- -- if (oldaction != (struct sigaction *) NULL) -- __sigaction (SIGPIPE, oldaction, (struct sigaction *) NULL); -- - /* Free the lock. */ -- __libc_lock_unlock (syslog_lock); -+ __libc_cleanup_pop (1); - } --#endif - - /* setlogmask -- set the log mask level */ - int ---- glibc-2.3.2/misc/tst-tsearch.c 2001-07-07 15:21:06.000000000 -0400 -+++ glibc-2.3.2/misc/tst-tsearch.c 2003-09-19 22:37:05.000000000 -0400 -@@ -1,5 +1,5 @@ - /* Test program for tsearch et al. -- Copyright (C) 1997, 2000, 2001 Free Software Foundation, Inc. -+ Copyright (C) 1997, 2000, 2001, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -25,6 +25,7 @@ - #include - #include - #include -+#include - - #define SEED 0 - #define BALANCED 1 -@@ -72,10 +73,14 @@ - /* Maximum depth during a tree walk. */ - static int max_depth; - -+static int stack_align_check[2]; -+ - /* Compare two keys. */ - static int - cmp_fn (const void *a, const void *b) - { -+ if (!stack_align_check[0]) -+ stack_align_check[0] = TEST_STACK_ALIGN () ? -1 : 1; - return *(const int *) a - *(const int *) b; - } - -@@ -103,6 +108,9 @@ - { - int key = **(int **) nodep; - -+ if (!stack_align_check[1]) -+ stack_align_check[1] = TEST_STACK_ALIGN () ? -1 : 1; -+ - if (depth > max_depth) - max_depth = depth; - if (which == leaf || which == preorder) -@@ -329,5 +337,17 @@ - total_error |= error; - } - -+ for (i = 0; i < 2; ++i) -+ if (stack_align_check[i] == 0) -+ { -+ printf ("stack alignment check %d not run\n", i); -+ total_error |= 1; -+ } -+ else if (stack_align_check[i] != 1) -+ { -+ printf ("stack insufficiently aligned in check %d\n", i); -+ total_error |= 1; -+ } -+ - return total_error; - } ---- glibc-2.3.2/nis/Makefile 2002-04-09 13:33:04.000000000 -0400 -+++ glibc-2.3.2/nis/Makefile 2003-08-21 08:37:07.000000000 -0400 -@@ -54,8 +54,7 @@ - nis_findserv nis_callback nis_clone_dir nis_clone_obj\ - nis_clone_res - --libnss_compat-routines := $(addprefix compat-,grp pwd spwd initgroups) \ -- nisplus-parser nss-nis nss-nisplus -+libnss_compat-routines := $(addprefix compat-,grp pwd spwd initgroups) - libnss_compat-inhibit-o = $(filter-out .os,$(object-suffixes)) - - libnss_nis-routines := $(addprefix nis-,$(databases)) nis-initgroups \ ---- glibc-2.3.2/nis/nis_table.c 2001-07-07 15:21:06.000000000 -0400 -+++ glibc-2.3.2/nis/nis_table.c 2003-03-18 16:46:07.000000000 -0500 -@@ -1,4 +1,4 @@ --/* Copyright (c) 1997, 1998, 1999 Free Software Foundation, Inc. -+/* Copyright (c) 1997, 1998, 1999, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Thorsten Kukuk , 1997. - -@@ -30,7 +30,7 @@ - struct ib_request *ibreq = calloc (1, sizeof (ib_request)); - char buf[strlen (name) + 1]; - nis_attr *search_val = NULL; -- int search_len = 0; -+ size_t search_len = 0; - char *cptr; - size_t size = 0; - ---- glibc-2.3.2/nis/nss_compat/compat-grp.c 2002-08-26 01:04:55.000000000 -0400 -+++ glibc-2.3.2/nis/nss_compat/compat-grp.c 2003-08-21 08:37:07.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996,1997,1998,1999,2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1996,1997,1998,1999,2001,2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Thorsten Kukuk , 1996. - -@@ -17,25 +17,28 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -+#include - #include - #include --#include - #include --#include --#include --#include --#include --#include --#include -+#include - #include -- --#include "nss-nisplus.h" --#include "nisplus-parser.h" -+#include -+#include -+#include -+#include - - static service_user *ni; --static bool_t use_nisplus; /* default: group_compat: nis */ --static nis_name grptable; /* Name of the group table */ --static size_t grptablelen; -+static enum nss_status (*nss_setgrent) (int stayopen); -+static enum nss_status (*nss_getgrnam_r) (const char *name, -+ struct group * grp, char *buffer, -+ size_t buflen, int *errnop); -+static enum nss_status (*nss_getgrgid_r) (gid_t gid, struct group * grp, -+ char *buffer, size_t buflen, -+ int *errnop); -+static enum nss_status (*nss_getgrent_r) (struct group * grp, char *buffer, -+ size_t buflen, int *errnop); -+static enum nss_status (*nss_endgrent) (void); - - /* Get the declaration of the parser function. */ - #define ENTNAME grent -@@ -47,25 +50,21 @@ - #define BLACKLIST_INITIAL_SIZE 512 - #define BLACKLIST_INCREMENT 256 - struct blacklist_t -- { -- char *data; -- int current; -- int size; -- }; -+{ -+ char *data; -+ int current; -+ int size; -+}; - - struct ent_t -- { -- bool_t nis; -- bool_t nis_first; -- char *oldkey; -- int oldkeylen; -- nis_result *result; -- FILE *stream; -- struct blacklist_t blacklist; -+{ -+ bool_t files; -+ FILE *stream; -+ struct blacklist_t blacklist; - }; - typedef struct ent_t ent_t; - --static ent_t ext_ent = {0, 0, NULL, 0, NULL, NULL, {NULL, 0, 0}}; -+static ent_t ext_ent = {TRUE, NULL, {NULL, 0, 0}}; - - /* Protect global state against multiple changers. */ - __libc_lock_define_initialized (static, lock) -@@ -74,56 +73,27 @@ - static void blacklist_store_name (const char *, ent_t *); - static int in_blacklist (const char *, int, ent_t *); - --static enum nss_status --_nss_first_init (void) -+/* Initialize the NSS interface/functions. The calling function must -+ hold the lock. */ -+static void -+init_nss_interface (void) - { -- if (ni == NULL) -- { -- __nss_database_lookup ("group_compat", NULL, "nis", &ni); -- use_nisplus = (strcmp (ni->name, "nisplus") == 0); -- } -- -- if (grptable == NULL) -+ if (__nss_database_lookup ("group_compat", NULL, "nis", &ni) >= 0) - { -- static const char key[] = "group.org_dir."; -- const char *local_dir = nis_local_directory (); -- size_t len_local_dir = strlen (local_dir); -- -- grptable = malloc (sizeof (key) + len_local_dir); -- if (grptable == NULL) -- return NSS_STATUS_TRYAGAIN; -- -- grptablelen = ((char *) mempcpy (mempcpy (grptable, -- key, sizeof (key) - 1), -- local_dir, len_local_dir + 1) -- - grptable) - 1; -+ nss_setgrent = __nss_lookup_function (ni, "setgrent"); -+ nss_getgrnam_r = __nss_lookup_function (ni, "getgrnam_r"); -+ nss_getgrgid_r = __nss_lookup_function (ni, "getgrgid_r"); -+ nss_getgrent_r = __nss_lookup_function (ni, "getgrent_r"); -+ nss_endgrent = __nss_lookup_function (ni, "endgrent"); - } -- -- return NSS_STATUS_SUCCESS; - } - - static enum nss_status --internal_setgrent (ent_t *ent) -+internal_setgrent (ent_t *ent, int stayopen) - { - enum nss_status status = NSS_STATUS_SUCCESS; - -- ent->nis = ent->nis_first = 0; -- -- if (_nss_first_init () != NSS_STATUS_SUCCESS) -- return NSS_STATUS_UNAVAIL; -- -- if (ent->oldkey != NULL) -- { -- free (ent->oldkey); -- ent->oldkey = NULL; -- ent->oldkeylen = 0; -- } -- -- if (ent->result != NULL) -- { -- nis_freeresult (ent->result); -- ent->result = NULL; -- } -+ ent->files = TRUE; - - if (ent->blacklist.data != NULL) - { -@@ -136,7 +106,7 @@ - - if (ent->stream == NULL) - { -- ent->stream = fopen ("/etc/group", "r"); -+ ent->stream = fopen ("/etc/group", "rm"); - - if (ent->stream == NULL) - status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL; -@@ -145,25 +115,31 @@ - /* We have to make sure the file is `closed on exec'. */ - int result, flags; - -- result = flags = fcntl (fileno (ent->stream), F_GETFD, 0); -+ result = flags = fcntl (fileno_unlocked (ent->stream), F_GETFD, 0); - if (result >= 0) - { - flags |= FD_CLOEXEC; -- result = fcntl (fileno (ent->stream), F_SETFD, flags); -+ result = fcntl (fileno_unlocked (ent->stream), F_SETFD, flags); - } - if (result < 0) - { - /* Something went wrong. Close the stream and return a -- failure. */ -+ failure. */ - fclose (ent->stream); - ent->stream = NULL; - status = NSS_STATUS_UNAVAIL; - } -+ else -+ /* We take care of locking ourself. */ -+ __fsetlocking (ent->stream, FSETLOCKING_BYCALLER); - } - } - else - rewind (ent->stream); - -+ if (status == NSS_STATUS_SUCCESS && nss_setgrent) -+ return nss_setgrent (stayopen); -+ - return status; - } - -@@ -175,7 +151,10 @@ - - __libc_lock_lock (lock); - -- result = internal_setgrent (&ext_ent); -+ if (ni == NULL) -+ init_nss_interface (); -+ -+ result = internal_setgrent (&ext_ent, stayopen); - - __libc_lock_unlock (lock); - -@@ -186,27 +165,15 @@ - static enum nss_status - internal_endgrent (ent_t *ent) - { -+ if (nss_endgrent) -+ nss_endgrent (); -+ - if (ent->stream != NULL) - { - fclose (ent->stream); - ent->stream = NULL; - } - -- ent->nis = ent->nis_first = 0; -- -- if (ent->oldkey != NULL) -- { -- free (ent->oldkey); -- ent->oldkey = NULL; -- ent->oldkeylen = 0; -- } -- -- if (ent->result != NULL) -- { -- nis_freeresult (ent->result); -- ent->result = NULL; -- } -- - if (ent->blacklist.data != NULL) - { - ent->blacklist.current = 1; -@@ -233,239 +200,44 @@ - return result; - } - -+/* get the next group from NSS (+ entry) */ - static enum nss_status --getgrent_next_nis (struct group *result, ent_t *ent, char *buffer, -+getgrent_next_nss (struct group *result, ent_t *ent, char *buffer, - size_t buflen, int *errnop) - { -- struct parser_data *data = (void *) buffer; -- char *domain; -- char *outkey, *outval; -- int outkeylen, outvallen, parse_res; -- char *p; -- -- if (yp_get_default_domain (&domain) != YPERR_SUCCESS) -- { -- ent->nis = 0; -- return NSS_STATUS_NOTFOUND; -- } -+ if (!nss_getgrent_r) -+ return NSS_STATUS_UNAVAIL; - - do - { -- char *save_oldkey; -- int save_oldlen; -- bool_t save_nis_first; -+ enum nss_status status; - -- if (ent->nis_first) -- { -- if (yp_first (domain, "group.byname", &outkey, &outkeylen, -- &outval, &outvallen) != YPERR_SUCCESS) -- { -- ent->nis = 0; -- return NSS_STATUS_UNAVAIL; -- } -- -- if ( buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- save_oldkey = ent->oldkey; -- save_oldlen = ent->oldkeylen; -- save_nis_first = TRUE; -- ent->oldkey = outkey; -- ent->oldkeylen = outkeylen; -- ent->nis_first = FALSE; -- } -- else -- { -- if (yp_next (domain, "group.byname", ent->oldkey, ent->oldkeylen, -- &outkey, &outkeylen, &outval, &outvallen) -- != YPERR_SUCCESS) -- { -- ent->nis = 0; -- return NSS_STATUS_NOTFOUND; -- } -- -- if ( buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- save_oldkey = ent->oldkey; -- save_oldlen = ent->oldkeylen; -- save_nis_first = FALSE; -- ent->oldkey = outkey; -- ent->oldkeylen = outkeylen; -- } -- -- /* Copy the found data to our buffer... */ -- p = strncpy (buffer, outval, buflen); -- -- /* ...and free the data. */ -- free (outval); -- -- while (isspace (*p)) -- ++p; -- -- parse_res = _nss_files_parse_grent (p, result, data, buflen, errnop); -- if (parse_res == -1) -- { -- free (ent->oldkey); -- ent->oldkey = save_oldkey; -- ent->oldkeylen = save_oldlen; -- ent->nis_first = save_nis_first; -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- else -- { -- if (!save_nis_first) -- free (save_oldkey); -- } -- -- if (parse_res && -- in_blacklist (result->gr_name, strlen (result->gr_name), ent)) -- parse_res = 0; /* if result->gr_name in blacklist,search next entry */ -+ if ((status = nss_getgrent_r (result, buffer, buflen, errnop)) != -+ NSS_STATUS_SUCCESS) -+ return status; - } -- while (!parse_res); -- -- return NSS_STATUS_SUCCESS; --} -- --static enum nss_status --getgrent_next_nisplus (struct group *result, ent_t *ent, char *buffer, -- size_t buflen, int *errnop) --{ -- int parse_res; -- -- do -- { -- nis_result *save_oldres; -- bool_t save_nis_first; -- -- if (ent->nis_first) -- { -- save_oldres = ent->result; -- save_nis_first = TRUE; -- ent->result = nis_first_entry(grptable); -- if (niserr2nss (ent->result->status) != NSS_STATUS_SUCCESS) -- { -- ent->nis = 0; -- return niserr2nss (ent->result->status); -- } -- ent->nis_first = FALSE; -- } -- else -- { -- nis_result *res; -- -- save_oldres = ent->result; -- save_nis_first = FALSE; -- res = nis_next_entry(grptable, &ent->result->cookie); -- ent->result = res; -- if (niserr2nss (ent->result->status) != NSS_STATUS_SUCCESS) -- { -- ent->nis = 0; -- return niserr2nss (ent->result->status); -- } -- } -- parse_res = _nss_nisplus_parse_grent (ent->result, 0, result, -- buffer, buflen, errnop); -- if (parse_res == -1) -- { -- nis_freeresult (ent->result); -- ent->result = save_oldres; -- ent->nis_first = save_nis_first; -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- else -- { -- if (!save_nis_first) -- nis_freeresult (save_oldres); -- } -- -- if (parse_res && -- in_blacklist (result->gr_name, strlen (result->gr_name), ent)) -- parse_res = 0; /* if result->gr_name in blacklist,search next entry */ -- } -- while (!parse_res); -+ while (in_blacklist (result->gr_name, strlen (result->gr_name), ent)); - - return NSS_STATUS_SUCCESS; - } - - /* This function handle the +group entrys in /etc/group */ - static enum nss_status --getgrnam_plusgroup (const char *name, struct group *result, char *buffer, -- size_t buflen, int *errnop) -+getgrnam_plusgroup (const char *name, struct group *result, ent_t *ent, -+ char *buffer, size_t buflen, int *errnop) - { -- struct parser_data *data = (void *) buffer; -- int parse_res; -- -- if (use_nisplus) /* Do the NIS+ query here */ -- { -- nis_result *res; -- char buf[strlen (name) + 24 + grptablelen]; -- -- sprintf(buf, "[name=%s],%s", name, grptable); -- res = nis_list(buf, FOLLOW_PATH | FOLLOW_LINKS, NULL, NULL); -- if (niserr2nss (res->status) != NSS_STATUS_SUCCESS) -- { -- enum nss_status status = niserr2nss (res->status); -- -- nis_freeresult (res); -- return status; -- } -- parse_res = _nss_nisplus_parse_grent (res, 0, result, buffer, buflen, -- errnop); -- if (parse_res == -1) -- { -- nis_freeresult (res); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- nis_freeresult (res); -- } -- else /* Use NIS */ -- { -- char *domain, *outval, *p; -- int outvallen; -- -- if (yp_get_default_domain (&domain) != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -- -- if (yp_match (domain, "group.byname", name, strlen (name), -- &outval, &outvallen) != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -- -- if (buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -+ if (!nss_getgrnam_r) -+ return NSS_STATUS_UNAVAIL; - -- /* Copy the found data to our buffer... */ -- p = strncpy (buffer, outval, buflen); -+ if (nss_getgrnam_r (name, result, buffer, buflen, errnop) != -+ NSS_STATUS_SUCCESS) -+ return NSS_STATUS_NOTFOUND; - -- /* ... and free the data. */ -- free (outval); -- while (isspace (*p)) -- ++p; -- parse_res = _nss_files_parse_grent (p, result, data, buflen, errnop); -- if (parse_res == -1) -- return NSS_STATUS_TRYAGAIN; -- } -+ if (in_blacklist (result->gr_name, strlen (result->gr_name), ent)) -+ return NSS_STATUS_NOTFOUND; - -- if (parse_res) -- /* We found the entry. */ -- return NSS_STATUS_SUCCESS; -- else -- return NSS_STATUS_RETURN; -+ /* We found the entry. */ -+ return NSS_STATUS_SUCCESS; - } - - static enum nss_status -@@ -483,8 +255,8 @@ - { - fgetpos (ent->stream, &pos); - buffer[buflen - 1] = '\xff'; -- p = fgets (buffer, buflen, ent->stream); -- if (p == NULL && feof (ent->stream)) -+ p = fgets_unlocked (buffer, buflen, ent->stream); -+ if (p == NULL && feof_unlocked (ent->stream)) - return NSS_STATUS_NOTFOUND; - - if (p == NULL || buffer[buflen - 1] != '\xff') -@@ -501,9 +273,9 @@ - while (isspace (*p)) - ++p; - } -- while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -- /* Parse the line. If it is invalid, loop to -- get the next line of the file to parse. */ -+ while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -+ /* Parse the line. If it is invalid, loop to -+ get the next line of the file to parse. */ - !(parse_res = _nss_files_parse_grent (p, result, data, buflen, - errnop))); - -@@ -531,41 +303,39 @@ - if (result->gr_name[0] == '+' && result->gr_name[1] != '\0' - && result->gr_name[1] != '@') - { -- enum nss_status status; -+ size_t len = strlen (result->gr_name); -+ char buf[len]; -+ enum nss_status status; - - /* Store the group in the blacklist for the "+" at the end of - /etc/group */ -- blacklist_store_name (&result->gr_name[1], ent); -- status = getgrnam_plusgroup (&result->gr_name[1], result, buffer, -- buflen, errnop); -- if (status == NSS_STATUS_SUCCESS) /* We found the entry. */ -- break; -- else -- if (status == NSS_STATUS_RETURN /* We couldn't parse the entry */ -- || status == NSS_STATUS_NOTFOUND) /* No group in NIS */ -- continue; -- else -- { -- if (status == NSS_STATUS_TRYAGAIN) -- { -- /* The parser ran out of space. */ -- fsetpos (ent->stream, &pos); -- *errnop = ERANGE; -- } -- return status; -- } -+ memcpy (buf, &result->gr_name[1], len); -+ status = getgrnam_plusgroup (&result->gr_name[1], result, ent, -+ buffer, buflen, errnop); -+ blacklist_store_name (buf, ent); -+ if (status == NSS_STATUS_SUCCESS) /* We found the entry. */ -+ break; -+ else if (status == NSS_STATUS_RETURN /* We couldn't parse the entry */ -+ || status == NSS_STATUS_NOTFOUND) /* No group in NIS */ -+ continue; -+ else -+ { -+ if (status == NSS_STATUS_TRYAGAIN) -+ { -+ /* The parser ran out of space. */ -+ fsetpos (ent->stream, &pos); -+ *errnop = ERANGE; -+ } -+ return status; -+ } - } - - /* +:... */ - if (result->gr_name[0] == '+' && result->gr_name[1] == '\0') - { -- ent->nis = TRUE; -- ent->nis_first = TRUE; -+ ent->files = FALSE; - -- if (use_nisplus) -- return getgrent_next_nisplus (result, ent, buffer, buflen, errnop); -- else -- return getgrent_next_nis (result, ent, buffer, buflen, errnop); -+ return getgrent_next_nss (result, ent, buffer, buflen, errnop); - } - } - -@@ -573,39 +343,31 @@ - } - - --static enum nss_status --internal_getgrent_r (struct group *gr, ent_t *ent, char *buffer, -- size_t buflen, int *errnop) --{ -- if (ent->nis) -- { -- if (use_nisplus) -- return getgrent_next_nisplus (gr, ent, buffer, buflen, errnop); -- else -- return getgrent_next_nis (gr, ent, buffer, buflen, errnop); -- } -- else -- return getgrent_next_file (gr, ent, buffer, buflen, errnop); --} -- - enum nss_status - _nss_compat_getgrent_r (struct group *grp, char *buffer, size_t buflen, - int *errnop) - { -- enum nss_status status = NSS_STATUS_SUCCESS; -+ enum nss_status result = NSS_STATUS_SUCCESS; - - __libc_lock_lock (lock); - - /* Be prepared that the setgrent function was not called before. */ -- if (ext_ent.stream == NULL) -- status = internal_setgrent (&ext_ent); -+ if (ni == NULL) -+ init_nss_interface (); - -- if (status == NSS_STATUS_SUCCESS) -- status = internal_getgrent_r (grp, &ext_ent, buffer, buflen, errnop); -+ if (ext_ent.stream == NULL) -+ result = internal_setgrent (&ext_ent, 1); - -+ if (result == NSS_STATUS_SUCCESS) -+ { -+ if (ext_ent.files) -+ result = getgrent_next_file (grp, &ext_ent, buffer, buflen, errnop); -+ else -+ result = getgrent_next_nss (grp, &ext_ent, buffer, buflen, errnop); -+ } - __libc_lock_unlock (lock); - -- return status; -+ return result; - } - - /* Searches in /etc/group and the NIS/NIS+ map for a special group */ -@@ -624,9 +386,9 @@ - { - fgetpos (ent->stream, &pos); - buffer[buflen - 1] = '\xff'; -- p = fgets (buffer, buflen, ent->stream); -- if (p == NULL && feof (ent->stream)) -- return NSS_STATUS_NOTFOUND; -+ p = fgets_unlocked (buffer, buflen, ent->stream); -+ if (p == NULL && feof_unlocked (ent->stream)) -+ return NSS_STATUS_NOTFOUND; - - if (p == NULL || buffer[buflen - 1] != '\xff') - { -@@ -642,9 +404,9 @@ - while (isspace (*p)) - ++p; - } -- while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -- /* Parse the line. If it is invalid, loop to -- get the next line of the file to parse. */ -+ while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -+ /* Parse the line. If it is invalid, loop to -+ get the next line of the file to parse. */ - !(parse_res = _nss_files_parse_grent (p, result, data, buflen, - errnop))); - -@@ -681,8 +443,8 @@ - { - enum nss_status status; - -- status = getgrnam_plusgroup (name, result, buffer, buflen, -- errnop); -+ status = getgrnam_plusgroup (name, result, ent, -+ buffer, buflen, errnop); - if (status == NSS_STATUS_RETURN) - /* We couldn't parse the entry */ - continue; -@@ -695,7 +457,8 @@ - { - enum nss_status status; - -- status = getgrnam_plusgroup (name, result, buffer, buflen, errnop); -+ status = getgrnam_plusgroup (name, result, ent, -+ buffer, buflen, errnop); - if (status == NSS_STATUS_RETURN) - /* We couldn't parse the entry */ - continue; -@@ -711,99 +474,27 @@ - _nss_compat_getgrnam_r (const char *name, struct group *grp, - char *buffer, size_t buflen, int *errnop) - { -- ent_t ent = {0, 0, NULL, 0, NULL, NULL, {NULL, 0, 0}}; -- enum nss_status status; -+ ent_t ent = {TRUE, NULL, {NULL, 0, 0}}; -+ enum nss_status result; - - if (name[0] == '-' || name[0] == '+') - return NSS_STATUS_NOTFOUND; - - __libc_lock_lock (lock); - -- status = internal_setgrent (&ent); -+ if (ni == NULL) -+ init_nss_interface (); - - __libc_lock_unlock (lock); - -- if (status != NSS_STATUS_SUCCESS) -- return status; -+ result = internal_setgrent (&ent, 0); - -- status = internal_getgrnam_r (name, grp, &ent, buffer, buflen, errnop); -+ if (result == NSS_STATUS_SUCCESS) -+ result = internal_getgrnam_r (name, grp, &ent, buffer, buflen, errnop); - - internal_endgrent (&ent); - -- return status; --} -- --/* This function handle the + entry in /etc/group */ --static enum nss_status --getgrgid_plusgroup (gid_t gid, struct group *result, char *buffer, -- size_t buflen, int *errnop) --{ -- struct parser_data *data = (void *) buffer; -- int parse_res; -- -- if (use_nisplus) /* Do the NIS+ query here */ -- { -- nis_result *res; -- char buf[24 + grptablelen]; -- -- sprintf(buf, "[gid=%lu],%s", (unsigned long int) gid, grptable); -- res = nis_list(buf, FOLLOW_PATH | FOLLOW_LINKS, NULL, NULL); -- if (niserr2nss (res->status) != NSS_STATUS_SUCCESS) -- { -- enum nss_status status = niserr2nss (res->status); -- -- nis_freeresult (res); -- return status; -- } -- if ((parse_res = _nss_nisplus_parse_grent (res, 0, result, buffer, -- buflen, errnop)) == -1) -- { -- nis_freeresult (res); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- nis_freeresult (res); -- } -- else /* Use NIS */ -- { -- char buf[24]; -- char *domain, *outval, *p; -- int outvallen; -- -- if (yp_get_default_domain (&domain) != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -- -- snprintf (buf, sizeof (buf), "%lu", (unsigned long int) gid); -- -- if (yp_match (domain, "group.bygid", buf, strlen (buf), -- &outval, &outvallen) != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -- -- if (buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- /* Copy the found data to our buffer... */ -- p = strncpy (buffer, outval, buflen); -- -- /* ... and free the data. */ -- free (outval); -- -- while (isspace (*p)) -- p++; -- parse_res = _nss_files_parse_grent (p, result, data, buflen, errnop); -- if (parse_res == -1) -- return NSS_STATUS_TRYAGAIN; -- } -- -- if (parse_res) -- /* We found the entry. */ -- return NSS_STATUS_SUCCESS; -- else -- return NSS_STATUS_RETURN; -+ return result; - } - - /* Searches in /etc/group and the NIS/NIS+ map for a special group id */ -@@ -822,8 +513,8 @@ - { - fgetpos (ent->stream, &pos); - buffer[buflen - 1] = '\xff'; -- p = fgets (buffer, buflen, ent->stream); -- if (p == NULL && feof (ent->stream)) -+ p = fgets_unlocked (buffer, buflen, ent->stream); -+ if (p == NULL && feof_unlocked (ent->stream)) - return NSS_STATUS_NOTFOUND; - - if (p == NULL || buffer[buflen - 1] != '\xff') -@@ -840,9 +531,9 @@ - while (isspace (*p)) - ++p; - } -- while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -- /* Parse the line. If it is invalid, loop to -- get the next line of the file to parse. */ -+ while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -+ /* Parse the line. If it is invalid, loop to -+ get the next line of the file to parse. */ - !(parse_res = _nss_files_parse_grent (p, result, data, buflen, - errnop))); - -@@ -866,8 +557,8 @@ - /* -group */ - if (result->gr_name[0] == '-' && result->gr_name[1] != '\0') - { -- blacklist_store_name (&result->gr_name[1], ent); -- continue; -+ blacklist_store_name (&result->gr_name[1], ent); -+ continue; - } - - /* +group */ -@@ -876,10 +567,10 @@ - enum nss_status status; - - /* Store the group in the blacklist for the "+" at the end of -- /etc/group */ -- blacklist_store_name (&result->gr_name[1], ent); -- status = getgrnam_plusgroup (&result->gr_name[1], result, buffer, -- buflen, errnop); -+ /etc/group */ -+ blacklist_store_name (&result->gr_name[1], ent); -+ status = getgrnam_plusgroup (&result->gr_name[1], result, ent, -+ buffer, buflen, errnop); - if (status == NSS_STATUS_SUCCESS && result->gr_gid == gid) - break; - else -@@ -890,7 +581,7 @@ - { - enum nss_status status; - -- status = getgrgid_plusgroup (gid, result, buffer, buflen, errnop); -+ status = nss_getgrgid_r (gid, result, buffer, buflen, errnop); - if (status == NSS_STATUS_RETURN) /* We couldn't parse the entry */ - return NSS_STATUS_NOTFOUND; - else -@@ -905,23 +596,24 @@ - _nss_compat_getgrgid_r (gid_t gid, struct group *grp, - char *buffer, size_t buflen, int *errnop) - { -- ent_t ent = {0, 0, NULL, 0, NULL, NULL, {NULL, 0, 0}}; -- enum nss_status status; -+ ent_t ent = {TRUE, NULL, {NULL, 0, 0}}; -+ enum nss_status result; - - __libc_lock_lock (lock); - -- status = internal_setgrent (&ent); -+ if (ni == NULL) -+ init_nss_interface (); - - __libc_lock_unlock (lock); - -- if (status != NSS_STATUS_SUCCESS) -- return status; -+ result = internal_setgrent (&ent, 0); - -- status = internal_getgrgid_r (gid, grp, &ent, buffer, buflen, errnop); -+ if (result == NSS_STATUS_SUCCESS) -+ result = internal_getgrgid_r (gid, grp, &ent, buffer, buflen, errnop); - - internal_endgrent (&ent); - -- return status; -+ return result; - } - - -@@ -983,7 +675,7 @@ - - buf[0] = '|'; - cp = stpcpy (&buf[1], name); -- *cp++= '|'; -+ *cp++ = '|'; - *cp = '\0'; - return strstr (ent->blacklist.data, buf) != NULL; - } ---- glibc-2.3.2/nis/nss_compat/compat-initgroups.c 2002-08-26 01:05:19.000000000 -0400 -+++ glibc-2.3.2/nis/nss_compat/compat-initgroups.c 2003-08-21 08:37:07.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1998,1999,2000,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Thorsten Kukuk , 1998. - -@@ -17,27 +17,39 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -+#include -+#include - #include - #include --#include - #include --#include -+#include -+#include - #include - #include --#include --#include --#include -+#include - #include - #include -- --#include "nss-nis.h" --#include "nss-nisplus.h" --#include "nisplus-parser.h" -+#include - - static service_user *ni; --static bool_t use_nisplus; /* default: group_compat: nis */ --static nis_name grptable; /* Name of the group table */ --static size_t grptablelen; -+/* Type of the lookup function. */ -+static enum nss_status (*nss_initgroups_dyn) (const char *, gid_t, -+ long int *, long int *, -+ gid_t **, long int, int *); -+static enum nss_status (*nss_setgrent) (int stayopen); -+static enum nss_status (*nss_getgrnam_r) (const char *name, -+ struct group * grp, char *buffer, -+ size_t buflen, int *errnop); -+static enum nss_status (*nss_getgrgid_r) (gid_t gid, struct group * grp, -+ char *buffer, size_t buflen, -+ int *errnop); -+static enum nss_status (*nss_getgrent_r) (struct group * grp, char *buffer, -+ size_t buflen, int *errnop); -+static enum nss_status (*nss_endgrent) (void); -+ -+/* Protect global state against multiple changers. */ -+__libc_lock_define_initialized (static, lock) -+ - - /* Get the declaration of the parser function. */ - #define ENTNAME grent -@@ -49,29 +61,17 @@ - #define BLACKLIST_INITIAL_SIZE 512 - #define BLACKLIST_INCREMENT 256 - struct blacklist_t -- { -- char *data; -- int current; -- int size; -- }; -- --struct response_t - { -- char *val; -- struct response_t *next; -+ char *data; -+ int current; -+ int size; - }; - - struct ent_t -- { -- bool_t nis; -- bool_t nis_first; -- char *oldkey; -- int oldkeylen; -- nis_result *result; -- FILE *stream; -- struct blacklist_t blacklist; -- struct response_t *start; -- struct response_t *next; -+{ -+ bool_t files; -+ FILE *stream; -+ struct blacklist_t blacklist; - }; - typedef struct ent_t ent_t; - -@@ -80,68 +80,26 @@ - static void blacklist_store_name (const char *, ent_t *); - static int in_blacklist (const char *, int, ent_t *); - --static int --saveit (int instatus, char *inkey, int inkeylen, char *inval, -- int invallen, char *indata) --{ -- ent_t *intern = (ent_t *) indata; -- -- if (instatus != YP_TRUE) -- return instatus; -- -- if (inkey && inkeylen > 0 && inval && invallen > 0) -- { -- if (intern->start == NULL) -- { -- intern->start = malloc (sizeof (struct response_t)); -- if (intern->start == NULL) -- return YP_FALSE; -- intern->next = intern->start; -- } -- else -- { -- intern->next->next = malloc (sizeof (struct response_t)); -- if (intern->next->next == NULL) -- return YP_FALSE; -- intern->next = intern->next->next; -- } -- intern->next->next = NULL; -- intern->next->val = malloc (invallen + 1); -- if (intern->next->val == NULL) -- return YP_FALSE; -- strncpy (intern->next->val, inval, invallen); -- intern->next->val[invallen] = '\0'; -- } -- -- return 0; --} -- --static enum nss_status --_nss_first_init (void) -+/* Initialize the NSS interface/functions. The calling function must -+ hold the lock. */ -+static void -+init_nss_interface (void) - { -- if (ni == NULL) -- { -- __nss_database_lookup ("group_compat", NULL, "nis", &ni); -- use_nisplus = (strcmp (ni->name, "nisplus") == 0); -- } -+ __libc_lock_lock (lock); - -- if (grptable == NULL) -+ /* Retest. */ -+ if (ni == NULL -+ && __nss_database_lookup ("group_compat", NULL, "nis", &ni) >= 0) - { -- static const char key[] = "group.org_dir."; -- const char *local_dir = nis_local_directory (); -- size_t len_local_dir = strlen (local_dir); -- -- grptable = malloc (sizeof (key) + len_local_dir); -- if (grptable == NULL) -- return NSS_STATUS_TRYAGAIN; -- -- grptablelen = ((char *) mempcpy (mempcpy (grptable, -- key, sizeof (key) - 1), -- local_dir, len_local_dir + 1) -- - grptable) - 1; -+ nss_initgroups_dyn = __nss_lookup_function (ni, "initgroups_dyn"); -+ nss_setgrent = __nss_lookup_function (ni, "setgrent"); -+ nss_getgrnam_r = __nss_lookup_function (ni, "getgrnam_r"); -+ nss_getgrgid_r = __nss_lookup_function (ni, "getgrgid_r"); -+ nss_getgrent_r = __nss_lookup_function (ni, "getgrent_r"); -+ nss_endgrent = __nss_lookup_function (ni, "endgrent"); - } - -- return NSS_STATUS_SUCCESS; -+ __libc_lock_unlock (lock); - } - - static enum nss_status -@@ -149,26 +107,10 @@ - { - enum nss_status status = NSS_STATUS_SUCCESS; - -- ent->nis = ent->nis_first = 0; -- -- ent->start = NULL; -- ent->next = NULL; -- -- if (_nss_first_init () != NSS_STATUS_SUCCESS) -- return NSS_STATUS_UNAVAIL; -- -- if (ent->oldkey != NULL) -- { -- free (ent->oldkey); -- ent->oldkey = NULL; -- ent->oldkeylen = 0; -- } -+ ent->files = TRUE; - -- if (ent->result != NULL) -- { -- nis_freeresult (ent->result); -- ent->result = NULL; -- } -+ if (ni == NULL) -+ init_nss_interface (); - - if (ent->blacklist.data != NULL) - { -@@ -179,35 +121,33 @@ - else - ent->blacklist.current = 0; - -+ ent->stream = fopen ("/etc/group", "rm"); -+ - if (ent->stream == NULL) -+ status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL; -+ else - { -- ent->stream = fopen ("/etc/group", "r"); -+ /* We have to make sure the file is `closed on exec'. */ -+ int result, flags; - -- if (ent->stream == NULL) -- status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL; -- else -+ result = flags = fcntl (fileno_unlocked (ent->stream), F_GETFD, 0); -+ if (result >= 0) - { -- /* We have to make sure the file is `closed on exec'. */ -- int result, flags; -- -- result = flags = fcntl (fileno (ent->stream), F_GETFD, 0); -- if (result >= 0) -- { -- flags |= FD_CLOEXEC; -- result = fcntl (fileno (ent->stream), F_SETFD, flags); -- } -- if (result < 0) -- { -- /* Something went wrong. Close the stream and return a -- failure. */ -- fclose (ent->stream); -- ent->stream = NULL; -- status = NSS_STATUS_UNAVAIL; -- } -+ flags |= FD_CLOEXEC; -+ result = fcntl (fileno_unlocked (ent->stream), F_SETFD, flags); -+ } -+ if (result < 0) -+ { -+ /* Something went wrong. Close the stream and return a -+ failure. */ -+ fclose (ent->stream); -+ ent->stream = NULL; -+ status = NSS_STATUS_UNAVAIL; - } -+ else -+ /* We take care of locking ourself. */ -+ __fsetlocking (ent->stream, FSETLOCKING_BYCALLER); - } -- else -- rewind (ent->stream); - - return status; - } -@@ -222,21 +162,6 @@ - ent->stream = NULL; - } - -- ent->nis = ent->nis_first = 0; -- -- if (ent->oldkey != NULL) -- { -- free (ent->oldkey); -- ent->oldkey = NULL; -- ent->oldkeylen = 0; -- } -- -- if (ent->result != NULL) -- { -- nis_freeresult (ent->result); -- ent->result = NULL; -- } -- - if (ent->blacklist.data != NULL) - { - ent->blacklist.current = 1; -@@ -246,222 +171,145 @@ - else - ent->blacklist.current = 0; - -- while (ent->start != NULL) -- { -- if (ent->start->val != NULL) -- free (ent->start->val); -- ent->next = ent->start; -- ent->start = ent->start->next; -- free (ent->next); -- } -- -- - return NSS_STATUS_SUCCESS; - } - --static enum nss_status --getgrent_next_nis (struct group *result, ent_t *ent, char *buffer, -- size_t buflen, int *errnop) -+/* This function checks, if the user is a member of this group and if -+ yes, add the group id to the list. */ -+static void -+check_and_add_group (const char *user, gid_t group, long int *start, -+ long int *size, gid_t **groupsp, long int limit, -+ struct group *grp) - { -- struct parser_data *data = (void *) buffer; -- char *domain, *p; -- int parse_res; -- -- if (yp_get_default_domain (&domain) != YPERR_SUCCESS) -- { -- ent->nis = 0; -- return NSS_STATUS_NOTFOUND; -- } -- -- if (ent->start == NULL) -- { -- struct ypall_callback ypcb; -- enum nss_status status; -- -- ypcb.foreach = saveit; -- ypcb.data = (char *) ent; -- status = yperr2nss (yp_all (domain, "group.byname", &ypcb)); -- ent->next = ent->start; -+ gid_t *groups = *groupsp; -+ char **member; - -- if (ent->start == NULL || status != NSS_STATUS_SUCCESS) -- { -- ent->nis = 0; -- return NSS_STATUS_UNAVAIL; -- } -- } -+ /* Don't add main group to list of groups. */ -+ if (grp->gr_gid == group) -+ return; -+ -+ for (member = grp->gr_mem; *member != NULL; ++member) -+ if (strcmp (*member, user) == 0) -+ { -+ /* Matches user. Insert this group. */ -+ if (*start == *size) -+ { -+ /* Need a bigger buffer. */ -+ gid_t *newgroups; -+ long int newsize; - -+ if (limit > 0 && *size == limit) -+ /* We reached the maximum. */ -+ return; - -- do -- { -- if (ent->next == NULL) -- { -- ent->nis = 0; -- return NSS_STATUS_NOTFOUND; -- } -- -- /* Copy the found data to our buffer... */ -- p = strncpy (buffer, ent->next->val, buflen); -- while (isspace (*p)) -- ++p; -+ if (limit <= 0) -+ newsize = 2 * *size; -+ else -+ newsize = MIN (limit, 2 * *size); - -- parse_res = _nss_files_parse_grent (p, result, data, buflen, errnop); -- if (parse_res == -1) -- { -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -+ newgroups = realloc (groups, newsize * sizeof (*groups)); -+ if (newgroups == NULL) -+ return; -+ *groupsp = groups = newgroups; -+ *size = newsize; -+ } - -- ent->next = ent->next->next; -+ groups[*start] = grp->gr_gid; -+ *start += 1; - -- if (parse_res && -- in_blacklist (result->gr_name, strlen (result->gr_name), ent)) -- parse_res = 0; /* if result->gr_name in blacklist,search next entry */ -- } -- while (!parse_res); -- -- return NSS_STATUS_SUCCESS; -+ break; -+ } - } - -+/* get the next group from NSS (+ entry). If the NSS module supports -+ initgroups_dyn, get all entries at once. */ - static enum nss_status --getgrent_next_nisplus (struct group *result, ent_t *ent, char *buffer, -- size_t buflen, int *errnop) -+getgrent_next_nss (ent_t *ent, char *buffer, size_t buflen, const char *user, -+ gid_t group, long int *start, long int *size, -+ gid_t **groupsp, long int limit, int *errnop) - { -- int parse_res; -+ enum nss_status status; -+ struct group grpbuf; - -- do -- { -- nis_result *save_oldres; -- bool_t save_nis_first; -+ /* if this module does not support getgrent_r and initgroups_dyn, -+ abort. We cannot find the needed group entries. */ -+ if (nss_getgrent_r == NULL && nss_initgroups_dyn == NULL) -+ return NSS_STATUS_UNAVAIL; - -- if (ent->nis_first) -- { -- save_oldres = ent->result; -- save_nis_first = TRUE; -- ent->result = nis_first_entry(grptable); -- if (niserr2nss (ent->result->status) != NSS_STATUS_SUCCESS) -- { -- ent->nis = 0; -- return niserr2nss (ent->result->status); -- } -- ent->nis_first = FALSE; -- } -- else -- { -- nis_result *res; -+ /* Try nss_initgroups_dyn if supported. We also need getgrgid_r. -+ If this function is not supported, step through the whole group -+ database with getgrent_r. */ -+ if (nss_initgroups_dyn && nss_getgrgid_r) -+ { -+ long int mystart = 0, mysize = limit; -+ gid_t *mygroupsp = __alloca (limit * sizeof (gid_t)); -+ -+ /* For every gid in the list we get from the NSS module, -+ get the whole group entry. We need to do this, since we -+ need the group name to check if it is in the blacklist. -+ In worst case, this is as twice as slow as stepping with -+ getgrent_r through the whole group database. But for large -+ group databases this is faster, since the user can only be -+ in a limited number of groups. */ -+ if (nss_initgroups_dyn (user, group, &mystart, &mysize, &mygroupsp, -+ limit, errnop) == NSS_STATUS_SUCCESS) -+ { -+ /* A temporary buffer. We use the normal buffer, until we found -+ an entry, for which this buffer is to small. In this case, we -+ overwrite the pointer with one to a bigger buffer. */ -+ char *tmpbuf = buffer; -+ size_t tmplen = buflen; -+ int i; - -- save_oldres = ent->result; -- save_nis_first = FALSE; -- res = nis_next_entry(grptable, &ent->result->cookie); -- ent->result = res; -- if (niserr2nss (ent->result->status) != NSS_STATUS_SUCCESS) -- { -- ent->nis = 0; -- return niserr2nss (ent->result->status); -- } -- } -- parse_res = _nss_nisplus_parse_grent (ent->result, 0, result, -- buffer, buflen, errnop); -- if (parse_res == -1) -- { -- nis_freeresult (ent->result); -- ent->result = save_oldres; -- ent->nis_first = save_nis_first; -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- else -- { -- if (!save_nis_first) -- nis_freeresult (save_oldres); -+ for (i = 0; i < mystart; i++) -+ { -+ while ((status = nss_getgrgid_r (mygroupsp[i], &grpbuf, tmpbuf, -+ tmplen, -+ errnop)) == NSS_STATUS_TRYAGAIN -+ && *errnop == ERANGE) -+ if (tmpbuf == buffer) -+ { -+ tmplen *= 2; -+ tmpbuf = __alloca (tmplen); -+ } -+ else -+ tmpbuf = extend_alloca (tmpbuf, tmplen, 2 * tmplen); -+ -+ if (!in_blacklist (grpbuf.gr_name, -+ strlen (grpbuf.gr_name), ent)) -+ check_and_add_group (user, group, start, size, groupsp, -+ limit, &grpbuf); -+ } -+ return NSS_STATUS_NOTFOUND; - } -+ } - -- if (parse_res && -- in_blacklist (result->gr_name, strlen (result->gr_name), ent)) -- parse_res = 0; /* if result->gr_name in blacklist,search next entry */ -+ /* If we come here, the NSS module does not support initgroups_dyn -+ and we have to step through the whole list ourself. */ -+ do -+ { -+ if ((status = nss_getgrent_r (&grpbuf, buffer, buflen, errnop)) != -+ NSS_STATUS_SUCCESS) -+ return status; - } -- while (!parse_res); -+ while (in_blacklist (grpbuf.gr_name, strlen (grpbuf.gr_name), ent)); - -+ check_and_add_group (user, group, start, size, groupsp, limit, &grpbuf); - return NSS_STATUS_SUCCESS; - } - --/* This function handle the +group entrys in /etc/group */ - static enum nss_status --getgrnam_plusgroup (const char *name, struct group *result, char *buffer, -- size_t buflen, int *errnop) -+internal_getgrent_r (ent_t *ent, char *buffer, size_t buflen, const char *user, -+ gid_t group, long int *start, long int *size, -+ gid_t **groupsp, long int limit, int *errnop) - { - struct parser_data *data = (void *) buffer; -- int parse_res; -- -- if (use_nisplus) /* Do the NIS+ query here */ -- { -- nis_result *res; -- char buf[strlen (name) + 24 + grptablelen]; -- -- sprintf(buf, "[name=%s],%s", name, grptable); -- res = nis_list(buf, FOLLOW_PATH | FOLLOW_LINKS, NULL, NULL); -- if (niserr2nss (res->status) != NSS_STATUS_SUCCESS) -- { -- enum nss_status status = niserr2nss (res->status); -- -- nis_freeresult (res); -- return status; -- } -- parse_res = _nss_nisplus_parse_grent (res, 0, result, buffer, buflen, -- errnop); -- if (parse_res == -1) -- { -- nis_freeresult (res); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- nis_freeresult (res); -- } -- else /* Use NIS */ -- { -- char *domain, *outval, *p; -- int outvallen; -+ struct group grpbuf; - -- if (yp_get_default_domain (&domain) != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -+ if (!ent->files) -+ return getgrent_next_nss (ent, buffer, buflen, user, group, -+ start, size, groupsp, limit, errnop); - -- if (yp_match (domain, "group.byname", name, strlen (name), -- &outval, &outvallen) != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -- -- if (buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- /* Copy the found data to our buffer... */ -- p = strncpy (buffer, outval, buflen); -- -- /* ... and free the data. */ -- free (outval); -- while (isspace (*p)) -- ++p; -- parse_res = _nss_files_parse_grent (p, result, data, buflen, errnop); -- if (parse_res == -1) -- { -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- } -- -- if (parse_res) -- /* We found the entry. */ -- return NSS_STATUS_SUCCESS; -- else -- return NSS_STATUS_RETURN; --} -- --static enum nss_status --getgrent_next_file (struct group *result, ent_t *ent, -- char *buffer, size_t buflen, int *errnop) --{ -- struct parser_data *data = (void *) buffer; - while (1) - { - fpos_t pos; -@@ -472,8 +320,8 @@ - { - fgetpos (ent->stream, &pos); - buffer[buflen - 1] = '\xff'; -- p = fgets (buffer, buflen, ent->stream); -- if (p == NULL && feof (ent->stream)) -+ p = fgets_unlocked (buffer, buflen, ent->stream); -+ if (p == NULL && feof_unlocked (ent->stream)) - return NSS_STATUS_NOTFOUND; - - if (p == NULL || buffer[buflen - 1] != '\xff') -@@ -490,10 +338,10 @@ - while (isspace (*p)) - ++p; - } -- while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -- /* Parse the line. If it is invalid, loop to -- get the next line of the file to parse. */ -- !(parse_res = _nss_files_parse_grent (p, result, data, buflen, -+ while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -+ /* Parse the line. If it is invalid, loop to -+ get the next line of the file to parse. */ -+ !(parse_res = _nss_files_parse_grent (p, &grpbuf, data, buflen, - errnop))); - - if (parse_res == -1) -@@ -504,90 +352,64 @@ - return NSS_STATUS_TRYAGAIN; - } - -- if (result->gr_name[0] != '+' && result->gr_name[0] != '-') -+ if (grpbuf.gr_name[0] != '+' && grpbuf.gr_name[0] != '-') - /* This is a real entry. */ - break; - - /* -group */ -- if (result->gr_name[0] == '-' && result->gr_name[1] != '\0' -- && result->gr_name[1] != '@') -+ if (grpbuf.gr_name[0] == '-' && grpbuf.gr_name[1] != '\0' -+ && grpbuf.gr_name[1] != '@') - { -- blacklist_store_name (&result->gr_name[1], ent); -+ blacklist_store_name (&grpbuf.gr_name[1], ent); - continue; - } - - /* +group */ -- if (result->gr_name[0] == '+' && result->gr_name[1] != '\0' -- && result->gr_name[1] != '@') -+ if (grpbuf.gr_name[0] == '+' && grpbuf.gr_name[1] != '\0' -+ && grpbuf.gr_name[1] != '@') - { -- enum nss_status status; -- -- /* Store the group in the blacklist for the "+" at the end of -+ if (in_blacklist (&grpbuf.gr_name[1], -+ strlen (&grpbuf.gr_name[1]), ent)) -+ continue; -+ /* Store the group in the blacklist for the "+" at the end of - /etc/group */ -- blacklist_store_name (&result->gr_name[1], ent); -- status = getgrnam_plusgroup (&result->gr_name[1], result, buffer, -- buflen, errnop); -- if (status == NSS_STATUS_SUCCESS) /* We found the entry. */ -- break; -- else -- if (status == NSS_STATUS_RETURN /* We couldn't parse the entry */ -- || status == NSS_STATUS_NOTFOUND) /* No group in NIS */ -- continue; -- else -- { -- if (status == NSS_STATUS_TRYAGAIN) -- { -- /* The parser ran out of space. */ -- fsetpos (ent->stream, &pos); -- *errnop = ERANGE; -- } -- return status; -- } -+ blacklist_store_name (&grpbuf.gr_name[1], ent); -+ if (nss_getgrnam_r == NULL) -+ return NSS_STATUS_UNAVAIL; -+ else if (nss_getgrnam_r (&grpbuf.gr_name[1], &grpbuf, buffer, -+ buflen, errnop) != NSS_STATUS_SUCCESS) -+ continue; -+ -+ check_and_add_group (user, group, start, size, groupsp, -+ limit, &grpbuf); -+ -+ return NSS_STATUS_SUCCESS; - } - - /* +:... */ -- if (result->gr_name[0] == '+' && result->gr_name[1] == '\0') -+ if (grpbuf.gr_name[0] == '+' && grpbuf.gr_name[1] == '\0') - { -- ent->nis = TRUE; -- ent->nis_first = TRUE; -- -- if (use_nisplus) -- return getgrent_next_nisplus (result, ent, buffer, buflen, errnop); -- else -- return getgrent_next_nis (result, ent, buffer, buflen, errnop); -+ ent->files = FALSE; -+ return getgrent_next_nss (ent, buffer, buflen, user, group, -+ start, size, groupsp, limit, errnop); - } - } - -+ check_and_add_group (user, group, start, size, groupsp, limit, &grpbuf); -+ - return NSS_STATUS_SUCCESS; - } - - --static enum nss_status --internal_getgrent_r (struct group *gr, ent_t *ent, char *buffer, -- size_t buflen, int *errnop) --{ -- if (ent->nis) -- { -- if (use_nisplus) -- return getgrent_next_nisplus (gr, ent, buffer, buflen, errnop); -- else -- return getgrent_next_nis (gr, ent, buffer, buflen, errnop); -- } -- else -- return getgrent_next_file (gr, ent, buffer, buflen, errnop); --} -- - enum nss_status - _nss_compat_initgroups_dyn (const char *user, gid_t group, long int *start, - long int *size, gid_t **groupsp, long int limit, - int *errnop) - { -- struct group grpbuf, *g; - size_t buflen = sysconf (_SC_GETPW_R_SIZE_MAX); - char *tmpbuf; - enum nss_status status; -- ent_t intern = {0, 0, NULL, 0, NULL, NULL, {NULL, 0, 0}}; -- gid_t *groups = *groupsp; -+ ent_t intern = { TRUE, NULL, {NULL, 0, 0} }; - - status = internal_setgrent (&intern); - if (status != NSS_STATUS_SUCCESS) -@@ -597,59 +419,14 @@ - - do - { -- while ((status = -- internal_getgrent_r (&grpbuf, &intern, tmpbuf, buflen, -- errnop)) == NSS_STATUS_TRYAGAIN -- && *errnop == ERANGE) -- { -- buflen *= 2; -- tmpbuf = __alloca (buflen); -- } -- -- if (status != NSS_STATUS_SUCCESS) -- goto done; -- -- g = &grpbuf; -- if (g->gr_gid != group) -- { -- char **m; -- -- for (m = g->gr_mem; *m != NULL; ++m) -- if (strcmp (*m, user) == 0) -- { -- /* Matches user. Insert this group. */ -- if (*start == *size) -- { -- /* Need a bigger buffer. */ -- gid_t *newgroups; -- long int newsize; -- -- if (limit > 0 && *size == limit) -- /* We reached the maximum. */ -- goto done; -- -- if (limit <= 0) -- newsize = 2 * *size; -- else -- newsize = MIN (limit, 2 * *size); -- -- newgroups = realloc (groups, newsize * sizeof (*groups)); -- if (newgroups == NULL) -- goto done; -- *groupsp = groups = newgroups; -- *size = newsize; -- } -- -- groups[*start] = g->gr_gid; -- *start += 1; -- -- break; -- } -- } -+ while ((status = internal_getgrent_r (&intern, tmpbuf, buflen, -+ user, group, start, size, -+ groupsp, limit, errnop)) -+ == NSS_STATUS_TRYAGAIN && *errnop == ERANGE) -+ tmpbuf = extend_alloca (tmpbuf, buflen, 2 * buflen); - } - while (status == NSS_STATUS_SUCCESS); - --done: - internal_endgrent (&intern); - - return NSS_STATUS_SUCCESS; -@@ -664,7 +441,7 @@ - int namelen = strlen (name); - char *tmp; - -- /* first call, setup cache */ -+ /* First call, setup cache. */ - if (ent->blacklist.size == 0) - { - ent->blacklist.size = MAX (BLACKLIST_INITIAL_SIZE, 2 * namelen); -@@ -714,7 +491,7 @@ - - buf[0] = '|'; - cp = stpcpy (&buf[1], name); -- *cp++= '|'; -+ *cp++ = '|'; - *cp = '\0'; - return strstr (ent->blacklist.data, buf) != NULL; - } ---- glibc-2.3.2/nis/nss_compat/compat-pwd.c 2002-08-26 01:07:27.000000000 -0400 -+++ glibc-2.3.2/nis/nss_compat/compat-pwd.c 2003-08-21 08:37:07.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996,1997,1998,1999,2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1996-1999,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Thorsten Kukuk , 1996. - -@@ -17,27 +17,32 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - --#include --#include --#include - #include -+#include - #include - #include -+#include -+#include -+#include -+#include - #include --#include --#include -+#include - #include --#include --#include -+#include - - #include "netgroup.h" --#include "nss-nisplus.h" --#include "nisplus-parser.h" - - static service_user *ni; --static bool_t use_nisplus; /* default: passwd_compat: nis */ --static nis_name pwdtable; /* Name of the pwd table */ --static size_t pwdtablelen; -+static enum nss_status (*nss_setpwent) (int stayopen); -+static enum nss_status (*nss_getpwnam_r) (const char *name, -+ struct passwd * pwd, char *buffer, -+ size_t buflen, int *errnop); -+static enum nss_status (*nss_getpwuid_r) (uid_t uid, struct passwd * pwd, -+ char *buffer, size_t buflen, -+ int *errnop); -+static enum nss_status (*nss_getpwent_r) (struct passwd * pwd, char *buffer, -+ size_t buflen, int *errnop); -+static enum nss_status (*nss_endpwent) (void); - - /* Get the declaration of the parser function. */ - #define ENTNAME pwent -@@ -49,29 +54,26 @@ - #define BLACKLIST_INITIAL_SIZE 512 - #define BLACKLIST_INCREMENT 256 - struct blacklist_t -- { -- char *data; -- int current; -- int size; -- }; -+{ -+ char *data; -+ int current; -+ int size; -+}; - - struct ent_t -- { -- bool_t netgroup; -- bool_t nis; -- bool_t first; -- char *oldkey; -- int oldkeylen; -- nis_result *result; -- FILE *stream; -- struct blacklist_t blacklist; -- struct passwd pwd; -- struct __netgrent netgrdata; -- }; -+{ -+ bool_t netgroup; -+ bool_t first; -+ bool_t files; -+ FILE *stream; -+ struct blacklist_t blacklist; -+ struct passwd pwd; -+ struct __netgrent netgrdata; -+}; - typedef struct ent_t ent_t; - --static ent_t ext_ent = {0, 0, 0, NULL, 0, NULL, NULL, {NULL, 0, 0}, -- {NULL, NULL, 0, 0, NULL, NULL, NULL}}; -+static ent_t ext_ent = {0, 0, TRUE, NULL, {NULL, 0, 0}, -+ {NULL, NULL, 0, 0, NULL, NULL, NULL}}; - - /* Protect global state against multiple changers. */ - __libc_lock_define_initialized (static, lock) -@@ -80,6 +82,21 @@ - static void blacklist_store_name (const char *, ent_t *); - static int in_blacklist (const char *, int, ent_t *); - -+/* Initialize the NSS interface/functions. The calling function must -+ hold the lock. */ -+static void -+init_nss_interface (void) -+{ -+ if (__nss_database_lookup ("passwd_compat", NULL, "nis", &ni) >= 0) -+ { -+ nss_setpwent = __nss_lookup_function (ni, "setpwent"); -+ nss_getpwnam_r = __nss_lookup_function (ni, "getpwnam_r"); -+ nss_getpwuid_r = __nss_lookup_function (ni, "getpwuid_r"); -+ nss_getpwent_r = __nss_lookup_function (ni, "getpwent_r"); -+ nss_endpwent = __nss_lookup_function (ni, "endpwent"); -+ } -+} -+ - static void - give_pwd_free (struct passwd *pwd) - { -@@ -156,8 +173,7 @@ - { - if (buffer == NULL) - dest->pw_dir = strdup (src->pw_dir); -- else if (dest->pw_dir && -- strlen (dest->pw_dir) >= strlen (src->pw_dir)) -+ else if (dest->pw_dir && strlen (dest->pw_dir) >= strlen (src->pw_dir)) - strcpy (dest->pw_dir, src->pw_dir); - else - { -@@ -186,100 +202,17 @@ - } - - static enum nss_status --insert_passwd_adjunct (char **result, int *len, char *domain, int *errnop) --{ -- char *p1, *p2, *result2, *res; -- int len2; -- size_t namelen; -- -- /* Check for adjunct style secret passwords. They can be -- recognized by a password starting with "##". */ -- p1 = strchr (*result, ':'); -- if (p1 == NULL || p1[1] != '#' || p1[2] != '#') -- return NSS_STATUS_SUCCESS; -- p2 = strchr (p1 + 3, ':'); -- -- namelen = p2 - p1 - 3; -- -- if (yp_match (domain, "passwd.adjunct.byname", &p1[3], namelen, -- &result2, &len2) == YPERR_SUCCESS) -- { -- /* We found a passwd.adjunct entry. Merge encrypted -- password therein into original result. */ -- char *encrypted = strchr (result2, ':'); -- char *endp; -- size_t restlen; -- -- if (encrypted == NULL || (endp = strchr (++encrypted, ':')) == NULL) -- { -- /* Invalid format of the entry. This never should happen -- unless the data from which the NIS table is generated is -- wrong. We simply ignore it. */ -- free (result2); -- return NSS_STATUS_SUCCESS; -- } -- -- restlen = *len - (p2 - *result); -- if ((res = malloc (namelen + restlen + (endp - encrypted) + 2)) == NULL) -- { -- free (result2); -- return NSS_STATUS_TRYAGAIN; -- } -- -- __mempcpy (__mempcpy (__mempcpy (__mempcpy -- (res, *result, (p1 - *result)), -- ":", 1), -- encrypted, endp - encrypted), -- p2, restlen + 1); -- -- free (result2); -- free (*result); -- *result = res; -- *len = strlen (res); -- } -- return NSS_STATUS_SUCCESS; --} -- --static enum nss_status --internal_setpwent (ent_t *ent) -+internal_setpwent (ent_t *ent, int stayopen) - { - enum nss_status status = NSS_STATUS_SUCCESS; - -- ent->nis = ent->first = ent->netgroup = 0; -+ ent->first = ent->netgroup = FALSE; -+ ent->files = TRUE; - - /* If something was left over free it. */ - if (ent->netgroup) - __internal_endnetgrent (&ent->netgrdata); - -- if (ent->oldkey != NULL) -- { -- free (ent->oldkey); -- ent->oldkey = NULL; -- ent->oldkeylen = 0; -- } -- -- if (ent->result != NULL) -- { -- nis_freeresult (ent->result); -- ent->result = NULL; -- } -- -- if (pwdtable == NULL) -- { -- static const char key[] = "passwd.org_dir."; -- const char *local_dir = nis_local_directory (); -- size_t len_local_dir = strlen (local_dir); -- -- pwdtable = malloc (sizeof (key) + len_local_dir); -- if (pwdtable == NULL) -- return NSS_STATUS_TRYAGAIN; -- -- pwdtablelen = ((char *) mempcpy (mempcpy (pwdtable, -- key, sizeof (key) - 1), -- local_dir, len_local_dir + 1) -- - pwdtable) - 1; -- } -- - if (ent->blacklist.data != NULL) - { - ent->blacklist.current = 1; -@@ -291,7 +224,7 @@ - - if (ent->stream == NULL) - { -- ent->stream = fopen ("/etc/passwd", "r"); -+ ent->stream = fopen ("/etc/passwd", "rm"); - - if (ent->stream == NULL) - status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL; -@@ -300,20 +233,23 @@ - /* We have to make sure the file is `closed on exec'. */ - int result, flags; - -- result = flags = fcntl (fileno (ent->stream), F_GETFD, 0); -+ result = flags = fcntl (fileno_unlocked (ent->stream), F_GETFD, 0); - if (result >= 0) - { - flags |= FD_CLOEXEC; -- result = fcntl (fileno (ent->stream), F_SETFD, flags); -+ result = fcntl (fileno_unlocked (ent->stream), F_SETFD, flags); - } - if (result < 0) - { - /* Something went wrong. Close the stream and return a -- failure. */ -+ failure. */ - fclose (ent->stream); - ent->stream = NULL; - status = NSS_STATUS_UNAVAIL; - } -+ else -+ /* We take care of locking ourself. */ -+ __fsetlocking (ent->stream, FSETLOCKING_BYCALLER); - } - } - else -@@ -321,6 +257,9 @@ - - give_pwd_free (&ent->pwd); - -+ if (status == NSS_STATUS_SUCCESS && nss_setpwent) -+ return nss_setpwent (stayopen); -+ - return status; - } - -@@ -333,12 +272,9 @@ - __libc_lock_lock (lock); - - if (ni == NULL) -- { -- __nss_database_lookup ("passwd_compat", NULL, "nis", &ni); -- use_nisplus = (strcmp (ni->name, "nisplus") == 0); -- } -+ init_nss_interface (); - -- result = internal_setpwent (&ext_ent); -+ result = internal_setpwent (&ext_ent, stayopen); - - __libc_lock_unlock (lock); - -@@ -349,6 +285,9 @@ - static enum nss_status - internal_endpwent (ent_t *ent) - { -+ if (nss_endpwent) -+ nss_endpwent (); -+ - if (ent->stream != NULL) - { - fclose (ent->stream); -@@ -358,26 +297,13 @@ - if (ent->netgroup) - __internal_endnetgrent (&ent->netgrdata); - -- ent->nis = ent->first = ent->netgroup = 0; -- -- if (ent->oldkey != NULL) -- { -- free (ent->oldkey); -- ent->oldkey = NULL; -- ent->oldkeylen = 0; -- } -- -- if (ent->result != NULL) -- { -- nis_freeresult (ent->result); -- ent->result = NULL; -- } -+ ent->first = ent->netgroup = FALSE; - - if (ent->blacklist.data != NULL) - { - ent->blacklist.current = 1; - ent->blacklist.data[0] = '|'; -- ent->blacklist.data[1] = '\0'; -+ ent->blacklist.data[1] = '\0'; - } - else - ent->blacklist.current = 0; -@@ -401,19 +327,25 @@ - return result; - } - -+ - static enum nss_status --getpwent_next_nis_netgr (const char *name, struct passwd *result, ent_t *ent, -- char *group, char *buffer, size_t buflen, int *errnop) -+getpwent_next_nss_netgr (const char *name, struct passwd *result, ent_t *ent, -+ char *group, char *buffer, size_t buflen, -+ int *errnop) - { -- struct parser_data *data = (void *) buffer; -- char *ypdomain, *host, *user, *domain, *outval, *p, *p2; -- int status, outvallen; -+ char *curdomain, *host, *user, *domain, *p2; -+ int status; - size_t p2len; - -- if (yp_get_default_domain (&ypdomain) != YPERR_SUCCESS) -+ /* Leave function if NSS module does not support getpwnam_r, -+ we need this function here. */ -+ if (!nss_getpwnam_r) -+ return NSS_STATUS_UNAVAIL; -+ -+ if (yp_get_default_domain (&curdomain) != YPERR_SUCCESS) - { -- ent->netgroup = 0; -- ent->first = 0; -+ ent->netgroup = FALSE; -+ ent->first = FALSE; - give_pwd_free (&ent->pwd); - return NSS_STATUS_UNAVAIL; - } -@@ -428,7 +360,6 @@ - while (1) - { - char *saved_cursor; -- int parse_res; - - saved_cursor = ent->netgrdata.cursor; - status = __internal_getnetgrent_r (&host, &user, &domain, -@@ -445,7 +376,7 @@ - if (user == NULL || user[0] == '-') - continue; - -- if (domain != NULL && strcmp (ypdomain, domain) != 0) -+ if (domain != NULL && strcmp (curdomain, domain) != 0) - continue; - - /* If name != NULL, we are called from getpwnam. */ -@@ -453,148 +384,23 @@ - if (strcmp (user, name) != 0) - continue; - -- if (yp_match (ypdomain, "passwd.byname", user, -- strlen (user), &outval, &outvallen) -- != YPERR_SUCCESS) -- continue; -- -- if (insert_passwd_adjunct (&outval, &outvallen, ypdomain, errnop) -- != NSS_STATUS_SUCCESS) -- { -- free (outval); -- return NSS_STATUS_TRYAGAIN; -- } -- - p2len = pwd_need_buflen (&ent->pwd); - if (p2len > buflen) - { -- free (outval); - *errnop = ERANGE; - return NSS_STATUS_TRYAGAIN; - } - p2 = buffer + (buflen - p2len); - buflen -= p2len; - -- if (buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- p = strncpy (buffer, outval, buflen); -- -- while (isspace (*p)) -- p++; -- free (outval); -- parse_res = _nss_files_parse_pwent (p, result, data, buflen, errnop); -- if (parse_res == -1) -- { -- ent->netgrdata.cursor = saved_cursor; -- return NSS_STATUS_TRYAGAIN; -- } -- -- if (parse_res && !in_blacklist (result->pw_name, -- strlen (result->pw_name), ent)) -- { -- /* Store the User in the blacklist for the "+" at the end of -- /etc/passwd */ -- blacklist_store_name (result->pw_name, ent); -- copy_pwd_changes (result, &ent->pwd, p2, p2len); -- break; -- } -- } -- -- return NSS_STATUS_SUCCESS; --} -- --static enum nss_status --getpwent_next_nisplus_netgr (const char *name, struct passwd *result, -- ent_t *ent, char *group, char *buffer, -- size_t buflen, int *errnop) --{ -- char *ypdomain, *host, *user, *domain, *p2; -- int status, parse_res; -- size_t p2len; -- nis_result *nisres; -- -- /* Maybe we should use domainname here ? We need the current -- domainname for the domain field in netgroups */ -- if (yp_get_default_domain (&ypdomain) != YPERR_SUCCESS) -- { -- ent->netgroup = 0; -- ent->first = 0; -- give_pwd_free (&ent->pwd); -- return NSS_STATUS_UNAVAIL; -- } -- -- if (ent->first == TRUE) -- { -- bzero (&ent->netgrdata, sizeof (struct __netgrent)); -- __internal_setnetgrent (group, &ent->netgrdata); -- ent->first = FALSE; -- } -- -- while (1) -- { -- char *saved_cursor; -- -- saved_cursor = ent->netgrdata.cursor; -- status = __internal_getnetgrent_r (&host, &user, &domain, -- &ent->netgrdata, buffer, buflen, -- errnop); -- if (status != 1) -- { -- __internal_endnetgrent (&ent->netgrdata); -- ent->netgroup = 0; -- give_pwd_free (&ent->pwd); -- return NSS_STATUS_RETURN; -- } -- -- if (user == NULL || user[0] == '-') -+ if (nss_getpwnam_r (user, result, buffer, buflen, errnop) != -+ NSS_STATUS_SUCCESS) - continue; - -- if (domain != NULL && strcmp (ypdomain, domain) != 0) -- continue; -- -- /* If name != NULL, we are called from getpwnam */ -- if (name != NULL) -- if (strcmp (user, name) != 0) -- continue; -- -- p2len = pwd_need_buflen (&ent->pwd); -- if (p2len > buflen) -+ if (!in_blacklist (result->pw_name, strlen (result->pw_name), ent)) - { -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- p2 = buffer + (buflen - p2len); -- buflen -= p2len; -- { -- char buf[strlen (user) + 30 + pwdtablelen]; -- sprintf(buf, "[name=%s],%s", user, pwdtable); -- nisres = nis_list(buf, FOLLOW_PATH | FOLLOW_LINKS, NULL, NULL); -- } -- if (niserr2nss (nisres->status) != NSS_STATUS_SUCCESS) -- { -- nis_freeresult (nisres); -- continue; -- } -- parse_res = _nss_nisplus_parse_pwent (nisres, result, buffer, -- buflen, errnop); -- if (parse_res == -1) -- { -- nis_freeresult (nisres); -- ent->netgrdata.cursor = saved_cursor; -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- nis_freeresult (nisres); -- -- if (parse_res && !in_blacklist (result->pw_name, -- strlen (result->pw_name), ent)) -- { -- /* Store the User in the blacklist for the "+" at the end of -- /etc/passwd */ -+ /* Store the User in the blacklist for possible the "+" at the -+ end of /etc/passwd */ - blacklist_store_name (result->pw_name, ent); - copy_pwd_changes (result, &ent->pwd, p2, p2len); - break; -@@ -604,100 +410,18 @@ - return NSS_STATUS_SUCCESS; - } - --/* get the next user from NIS+ (+ entry) */ -+/* get the next user from NSS (+ entry) */ - static enum nss_status --getpwent_next_nisplus (struct passwd *result, ent_t *ent, char *buffer, -- size_t buflen, int *errnop) --{ -- int parse_res; -- size_t p2len; -- char *p2; -- -- p2len = pwd_need_buflen (&ent->pwd); -- if (p2len > buflen) -- { -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- p2 = buffer + (buflen - p2len); -- buflen -= p2len; -- do -- { -- bool_t saved_first; -- nis_result *saved_res; -- -- if (ent->first) -- { -- saved_first = TRUE; -- saved_res = ent->result; -- -- ent->result = nis_first_entry (pwdtable); -- if (niserr2nss (ent->result->status) != NSS_STATUS_SUCCESS) -- { -- ent->nis = 0; -- give_pwd_free (&ent->pwd); -- return niserr2nss (ent->result->status); -- } -- ent->first = FALSE; -- } -- else -- { -- nis_result *res; -- -- res = nis_next_entry (pwdtable, &ent->result->cookie); -- saved_res = ent->result; -- saved_first = FALSE; -- ent->result = res; -- if (niserr2nss (ent->result->status) != NSS_STATUS_SUCCESS) -- { -- ent->nis = 0; -- nis_freeresult (saved_res); -- give_pwd_free (&ent->pwd); -- return niserr2nss (ent->result->status); -- } -- } -- parse_res = _nss_nisplus_parse_pwent (ent->result, result, buffer, -- buflen, errnop); -- if (parse_res == -1) -- { -- nis_freeresult (ent->result); -- ent->result = saved_res; -- ent->first = saved_first; -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- else -- { -- if (!saved_first) -- nis_freeresult (saved_res); -- } -- -- if (parse_res && -- in_blacklist (result->pw_name, strlen (result->pw_name), ent)) -- parse_res = 0; /* if result->pw_name in blacklist,search next entry */ -- } -- while (!parse_res); -- -- copy_pwd_changes (result, &ent->pwd, p2, p2len); -- -- return NSS_STATUS_SUCCESS; --} -- --static enum nss_status --getpwent_next_nis (struct passwd *result, ent_t *ent, char *buffer, -+getpwent_next_nss (struct passwd *result, ent_t *ent, char *buffer, - size_t buflen, int *errnop) - { -- struct parser_data *data = (void *) buffer; -- char *domain, *outkey, *outval, *p, *p2; -- int outkeylen, outvallen, parse_res; -+ enum nss_status status; -+ char *p2; - size_t p2len; - -- if (yp_get_default_domain (&domain) != YPERR_SUCCESS) -- { -- ent->nis = 0; -- give_pwd_free (&ent->pwd); -- return NSS_STATUS_UNAVAIL; -- } -+ /* Return if NSS module does not support getpwent_r. */ -+ if (!nss_getpwent_r) -+ return NSS_STATUS_UNAVAIL; - - p2len = pwd_need_buflen (&ent->pwd); - if (p2len > buflen) -@@ -707,103 +431,17 @@ - } - p2 = buffer + (buflen - p2len); - buflen -= p2len; -- do -- { -- bool_t saved_first; -- char *saved_oldkey; -- int saved_oldlen; -- -- if (ent->first) -- { -- if (yp_first (domain, "passwd.byname", &outkey, &outkeylen, -- &outval, &outvallen) != YPERR_SUCCESS) -- { -- ent->nis = 0; -- give_pwd_free (&ent->pwd); -- return NSS_STATUS_UNAVAIL; -- } -- -- if (insert_passwd_adjunct (&outval, &outvallen, domain, errnop) != -- NSS_STATUS_SUCCESS) -- { -- free (outval); -- return NSS_STATUS_TRYAGAIN; -- } -- -- if (buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- saved_first = TRUE; -- saved_oldkey = ent->oldkey; -- saved_oldlen = ent->oldkeylen; -- ent->oldkey = outkey; -- ent->oldkeylen = outkeylen; -- ent->first = FALSE; -- } -- else -- { -- if (yp_next (domain, "passwd.byname", ent->oldkey, ent->oldkeylen, -- &outkey, &outkeylen, &outval, &outvallen) -- != YPERR_SUCCESS) -- { -- ent->nis = 0; -- give_pwd_free (&ent->pwd); -- return NSS_STATUS_NOTFOUND; -- } -- -- if (insert_passwd_adjunct (&outval, &outvallen, domain, errnop) -- != NSS_STATUS_SUCCESS) -- { -- free (outval); -- return NSS_STATUS_TRYAGAIN; -- } - -- if (buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -+ if (ent->first) -+ ent->first = FALSE; - -- saved_first = FALSE; -- saved_oldkey = ent->oldkey; -- saved_oldlen = ent->oldkeylen; -- ent->oldkey = outkey; -- ent->oldkeylen = outkeylen; -- } -- -- /* Copy the found data to our buffer */ -- p = strncpy (buffer, outval, buflen); -- -- /* ...and free the data. */ -- free (outval); -- -- while (isspace (*p)) -- ++p; -- parse_res = _nss_files_parse_pwent (p, result, data, buflen, errnop); -- if (parse_res == -1) -- { -- free (ent->oldkey); -- ent->oldkey = saved_oldkey; -- ent->oldkeylen = saved_oldlen; -- ent->first = saved_first; -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- else -- { -- if (!saved_first) -- free (saved_oldkey); -- } -- if (parse_res -- && in_blacklist (result->pw_name, strlen (result->pw_name), ent)) -- parse_res = 0; -+ do -+ { -+ if ((status = nss_getpwent_r (result, buffer, buflen, errnop)) != -+ NSS_STATUS_SUCCESS) -+ return status; - } -- while (!parse_res); -+ while (in_blacklist (result->pw_name, strlen (result->pw_name), ent)); - - copy_pwd_changes (result, &ent->pwd, p2, p2len); - -@@ -815,12 +453,13 @@ - getpwnam_plususer (const char *name, struct passwd *result, ent_t *ent, - char *buffer, size_t buflen, int *errnop) - { -- struct parser_data *data = (void *) buffer; - struct passwd pwd; -- int parse_res; - char *p; - size_t plen; - -+ if (!nss_getpwnam_r) -+ return NSS_STATUS_UNAVAIL; -+ - memset (&pwd, '\0', sizeof (struct passwd)); - - copy_pwd_changes (&pwd, result, NULL, 0); -@@ -834,88 +473,17 @@ - p = buffer + (buflen - plen); - buflen -= plen; - -- if (use_nisplus) /* Do the NIS+ query here */ -- { -- nis_result *res; -- char buf[strlen (name) + 24 + pwdtablelen]; -- -- sprintf(buf, "[name=%s],%s", name, pwdtable); -- res = nis_list(buf, FOLLOW_PATH | FOLLOW_LINKS, NULL, NULL); -- if (niserr2nss (res->status) != NSS_STATUS_SUCCESS) -- { -- enum nss_status status = niserr2nss (res->status); -- -- nis_freeresult (res); -- return status; -- } -- parse_res = _nss_nisplus_parse_pwent (res, result, buffer, -- buflen, errnop); -- -- nis_freeresult (res); -- -- if (parse_res == -1) -- { -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- if (in_blacklist (result->pw_name, strlen (result->pw_name), ent)) -- return NSS_STATUS_NOTFOUND; -- } -- else /* Use NIS */ -- { -- char *domain, *outval, *ptr; -- int outvallen; -- -- if (yp_get_default_domain (&domain) != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -- -- if (yp_match (domain, "passwd.byname", name, strlen (name), -- &outval, &outvallen) != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -- -- if (insert_passwd_adjunct (&outval, &outvallen, domain, errnop) -- != NSS_STATUS_SUCCESS) -- { -- free (outval); -- return NSS_STATUS_TRYAGAIN; -- } -- -- if (buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- ptr = strncpy (buffer, outval, buflen); -- free (outval); -- -- while (isspace (*ptr)) -- ptr++; -- -- parse_res = _nss_files_parse_pwent (ptr, result, data, buflen, errnop); -- if (parse_res == -1) -- return NSS_STATUS_TRYAGAIN; -+ if (nss_getpwnam_r (name, result, buffer, buflen, errnop) != -+ NSS_STATUS_SUCCESS) -+ return NSS_STATUS_NOTFOUND; - -- if (in_blacklist (result->pw_name, strlen (result->pw_name), ent)) -- return NSS_STATUS_NOTFOUND; -- } -+ if (in_blacklist (result->pw_name, strlen (result->pw_name), ent)) -+ return NSS_STATUS_NOTFOUND; - -- if (parse_res > 0) -- { -- copy_pwd_changes (result, &pwd, p, plen); -- give_pwd_free (&pwd); -- /* We found the entry. */ -- return NSS_STATUS_SUCCESS; -- } -- else -- { -- /* Give buffer the old len back */ -- buflen += plen; -- give_pwd_free (&pwd); -- } -- return NSS_STATUS_RETURN; -+ copy_pwd_changes (result, &pwd, p, plen); -+ give_pwd_free (&pwd); -+ /* We found the entry. */ -+ return NSS_STATUS_SUCCESS; - } - - static enum nss_status -@@ -933,8 +501,8 @@ - { - fgetpos (ent->stream, &pos); - buffer[buflen - 1] = '\xff'; -- p = fgets (buffer, buflen, ent->stream); -- if (p == NULL && feof (ent->stream)) -+ p = fgets_unlocked (buffer, buflen, ent->stream); -+ if (p == NULL && feof_unlocked (ent->stream)) - return NSS_STATUS_NOTFOUND; - - if (p == NULL || buffer[buflen - 1] != '\xff') -@@ -951,9 +519,9 @@ - while (isspace (*p)) - ++p; - } -- while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -- /* Parse the line. If it is invalid, loop to -- get the next line of the file to parse. */ -+ while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -+ /* Parse the line. If it is invalid, loop to -+ get the next line of the file to parse. */ - !(parse_res = _nss_files_parse_pwent (p, result, data, buflen, - errnop))); - -@@ -1000,14 +568,9 @@ - ent->first = TRUE; - copy_pwd_changes (&ent->pwd, result, NULL, 0); - -- if (use_nisplus) -- status = getpwent_next_nisplus_netgr (NULL, result, ent, -- &result->pw_name[2], -- buffer, buflen, errnop); -- else -- status = getpwent_next_nis_netgr (NULL, result, ent, -- &result->pw_name[2], -- buffer, buflen, errnop); -+ status = getpwent_next_nss_netgr (NULL, result, ent, -+ &result->pw_name[2], -+ buffer, buflen, errnop); - if (status == NSS_STATUS_RETURN) - continue; - else -@@ -1026,45 +589,42 @@ - if (result->pw_name[0] == '+' && result->pw_name[1] != '\0' - && result->pw_name[1] != '@') - { -- char buf[strlen (result->pw_name)]; -+ size_t len = strlen (result->pw_name); -+ char buf[len]; - enum nss_status status; - - /* Store the User in the blacklist for the "+" at the end of - /etc/passwd */ -- strcpy (buf, &result->pw_name[1]); -+ memcpy (buf, &result->pw_name[1], len); - status = getpwnam_plususer (&result->pw_name[1], result, ent, - buffer, buflen, errnop); - blacklist_store_name (buf, ent); - -- if (status == NSS_STATUS_SUCCESS) /* We found the entry. */ -+ if (status == NSS_STATUS_SUCCESS) /* We found the entry. */ - break; -+ else if (status == NSS_STATUS_RETURN /* We couldn't parse the entry */ -+ || status == NSS_STATUS_NOTFOUND) /* entry doesn't exist */ -+ continue; - else -- if (status == NSS_STATUS_RETURN /* We couldn't parse the entry */ -- || status == NSS_STATUS_NOTFOUND) /* entry doesn't exist */ -- continue; -- else -- { -- if (status == NSS_STATUS_TRYAGAIN) -- { -- /* The parser ran out of space */ -- fsetpos (ent->stream, &pos); -- *errnop = ERANGE; -- } -- return status; -- } -+ { -+ if (status == NSS_STATUS_TRYAGAIN) -+ { -+ /* The parser ran out of space */ -+ fsetpos (ent->stream, &pos); -+ *errnop = ERANGE; -+ } -+ return status; -+ } - } - - /* +:... */ - if (result->pw_name[0] == '+' && result->pw_name[1] == '\0') - { -- ent->nis = TRUE; -+ ent->files = FALSE; - ent->first = TRUE; - copy_pwd_changes (&ent->pwd, result, NULL, 0); - -- if (use_nisplus) -- return getpwent_next_nisplus (result, ent, buffer, buflen, errnop); -- else -- return getpwent_next_nis (result, ent, buffer, buflen, errnop); -+ return getpwent_next_nss (result, ent, buffer, buflen, errnop); - } - } - -@@ -1082,53 +642,41 @@ - - /* We are searching members in a netgroup */ - /* Since this is not the first call, we don't need the group name */ -- if (use_nisplus) -- status = getpwent_next_nisplus_netgr (NULL, pw, ent, NULL, buffer, -- buflen, errnop); -- else -- status = getpwent_next_nis_netgr (NULL, pw, ent, NULL, buffer, buflen, -- errnop); -+ status = getpwent_next_nss_netgr (NULL, pw, ent, NULL, buffer, buflen, -+ errnop); - if (status == NSS_STATUS_RETURN) - return getpwent_next_file (pw, ent, buffer, buflen, errnop); - else - return status; - } -+ else if (ent->files) -+ return getpwent_next_file (pw, ent, buffer, buflen, errnop); - else -- if (ent->nis) -- { -- if (use_nisplus) -- return getpwent_next_nisplus (pw, ent, buffer, buflen, errnop); -- else -- return getpwent_next_nis (pw, ent, buffer, buflen, errnop); -- } -- else -- return getpwent_next_file (pw, ent, buffer, buflen, errnop); -+ return getpwent_next_nss (pw, ent, buffer, buflen, errnop); -+ - } - - enum nss_status - _nss_compat_getpwent_r (struct passwd *pwd, char *buffer, size_t buflen, - int *errnop) - { -- enum nss_status status = NSS_STATUS_SUCCESS; -+ enum nss_status result = NSS_STATUS_SUCCESS; - - __libc_lock_lock (lock); - -+ /* Be prepared that the setpwent function was not called before. */ - if (ni == NULL) -- { -- __nss_database_lookup ("passwd_compat", NULL, "nis", &ni); -- use_nisplus = (strcmp (ni->name, "nisplus") == 0); -- } -+ init_nss_interface (); - -- /* Be prepared that the setpwent function was not called before. */ - if (ext_ent.stream == NULL) -- status = internal_setpwent (&ext_ent); -+ result = internal_setpwent (&ext_ent, 1); - -- if (status == NSS_STATUS_SUCCESS) -- status = internal_getpwent_r (pwd, &ext_ent, buffer, buflen, errnop); -+ if (result == NSS_STATUS_SUCCESS) -+ result = internal_getpwent_r (pwd, &ext_ent, buffer, buflen, errnop); - - __libc_lock_unlock (lock); - -- return status; -+ return result; - } - - /* Searches in /etc/passwd and the NIS/NIS+ map for a special user */ -@@ -1148,8 +696,8 @@ - { - fgetpos (ent->stream, &pos); - buffer[buflen - 1] = '\xff'; -- p = fgets (buffer, buflen, ent->stream); -- if (p == NULL && feof (ent->stream)) -+ p = fgets_unlocked (buffer, buflen, ent->stream); -+ if (p == NULL && feof_unlocked (ent->stream)) - { - return NSS_STATUS_NOTFOUND; - } -@@ -1167,9 +715,9 @@ - while (isspace (*p)) - ++p; - } -- while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -+ while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ - /* Parse the line. If it is invalid, loop to -- get the next line of the file to parse. */ -+ get the next line of the file to parse. */ - !(parse_res = _nss_files_parse_pwent (p, result, data, buflen, - errnop))); - -@@ -1210,8 +758,8 @@ - status = getpwnam_plususer (name, result, ent, buffer, - buflen, errnop); - -- if (status == NSS_STATUS_RETURN) -- continue; -+ if (status == NSS_STATUS_RETURN) -+ continue; - - return status; - } -@@ -1253,13 +801,12 @@ - - status = getpwnam_plususer (name, result, ent, - buffer, buflen, errnop); -- if (status == NSS_STATUS_SUCCESS) /* We found the entry. */ -+ if (status == NSS_STATUS_SUCCESS) /* We found the entry. */ - break; -+ else if (status == NSS_STATUS_RETURN) /* We couldn't parse the entry */ -+ return NSS_STATUS_NOTFOUND; - else -- if (status == NSS_STATUS_RETURN) /* We couldn't parse the entry */ -- return NSS_STATUS_NOTFOUND; -- else -- return status; -+ return status; - } - } - return NSS_STATUS_SUCCESS; -@@ -1269,9 +816,9 @@ - _nss_compat_getpwnam_r (const char *name, struct passwd *pwd, - char *buffer, size_t buflen, int *errnop) - { -- ent_t ent = {0, 0, 0, NULL, 0, NULL, NULL, {NULL, 0, 0}, -- {NULL, NULL, 0, 0, NULL, NULL, NULL}}; -- enum nss_status status; -+ enum nss_status result; -+ ent_t ent = {0, 0, TRUE, NULL, {NULL, 0, 0}, -+ {NULL, NULL, 0, 0, NULL, NULL, NULL}}; - - if (name[0] == '-' || name[0] == '+') - return NSS_STATUS_NOTFOUND; -@@ -1279,35 +826,32 @@ - __libc_lock_lock (lock); - - if (ni == NULL) -- { -- __nss_database_lookup ("passwd_compat", NULL, "nis", &ni); -- use_nisplus = (strcmp (ni->name, "nisplus") == 0); -- } -+ init_nss_interface (); - - __libc_lock_unlock (lock); - -- status = internal_setpwent (&ent); -- if (status != NSS_STATUS_SUCCESS) -- return status; -+ result = internal_setpwent (&ent, 0); - -- status = internal_getpwnam_r (name, pwd, &ent, buffer, buflen, errnop); -+ if (result == NSS_STATUS_SUCCESS) -+ result = internal_getpwnam_r (name, pwd, &ent, buffer, buflen, errnop); - - internal_endpwent (&ent); - -- return status; -+ return result; - } - - /* This function handle the + entry in /etc/passwd for getpwuid */ - static enum nss_status - getpwuid_plususer (uid_t uid, struct passwd *result, char *buffer, -- size_t buflen, int *errnop) -+ size_t buflen, int *errnop) - { -- struct parser_data *data = (void *) buffer; - struct passwd pwd; -- int parse_res; - char *p; - size_t plen; - -+ if (!nss_getpwuid_r) -+ return NSS_STATUS_UNAVAIL; -+ - memset (&pwd, '\0', sizeof (struct passwd)); - - copy_pwd_changes (&pwd, result, NULL, 0); -@@ -1321,70 +865,8 @@ - p = buffer + (buflen - plen); - buflen -= plen; - -- if (use_nisplus) /* Do the NIS+ query here */ -- { -- nis_result *res; -- char buf[1024 + pwdtablelen]; -- -- snprintf (buf, sizeof (buf), "[uid=%lu],%s", (unsigned long int) uid, -- pwdtable); -- res = nis_list (buf, FOLLOW_PATH | FOLLOW_LINKS, NULL, NULL); -- if (niserr2nss (res->status) != NSS_STATUS_SUCCESS) -- { -- enum nss_status status = niserr2nss (res->status); -- -- nis_freeresult (res); -- return status; -- } -- if ((parse_res = _nss_nisplus_parse_pwent (res, result, buffer, -- buflen, errnop)) == -1) -- { -- nis_freeresult (res); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- nis_freeresult (res); -- } -- else /* Use NIS */ -- { -- char buf[1024]; -- char *domain, *outval, *ptr; -- int outvallen; -- -- if (yp_get_default_domain (&domain) != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -- -- sprintf (buf, "%lu", (unsigned long int) uid); -- if (yp_match (domain, "passwd.byuid", buf, strlen (buf), -- &outval, &outvallen) -- != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -- -- if (insert_passwd_adjunct (&outval, &outvallen, domain, errnop) -- != NSS_STATUS_SUCCESS) -- { -- free (outval); -- return NSS_STATUS_TRYAGAIN; -- } -- -- if (buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- ptr = strncpy (buffer, outval, buflen); -- free (outval); -- -- while (isspace (*ptr)) -- ptr++; -- parse_res = _nss_files_parse_pwent (ptr, result, data, buflen, errnop); -- if (parse_res == -1) -- return NSS_STATUS_TRYAGAIN; -- } -- -- if (parse_res > 0) -+ if (nss_getpwuid_r (uid, result, buffer, buflen, errnop) == -+ NSS_STATUS_SUCCESS) - { - copy_pwd_changes (result, &pwd, p, plen); - give_pwd_free (&pwd); -@@ -1400,10 +882,10 @@ - return NSS_STATUS_RETURN; - } - --/* Searches in /etc/passwd and the NIS/NIS+ map for a special user id */ -+/* Searches in /etc/passwd and the NSS subsystem for a special user id */ - static enum nss_status - internal_getpwuid_r (uid_t uid, struct passwd *result, ent_t *ent, -- char *buffer, size_t buflen, int *errnop) -+ char *buffer, size_t buflen, int *errnop) - { - struct parser_data *data = (void *) buffer; - -@@ -1414,75 +896,79 @@ - int parse_res; - - do -- { -- fgetpos (ent->stream, &pos); -- buffer[buflen - 1] = '\xff'; -- p = fgets (buffer, buflen, ent->stream); -- if (p == NULL && feof (ent->stream)) -+ { -+ fgetpos (ent->stream, &pos); -+ buffer[buflen - 1] = '\xff'; -+ p = fgets_unlocked (buffer, buflen, ent->stream); -+ if (p == NULL && feof_unlocked (ent->stream)) - return NSS_STATUS_NOTFOUND; - -- if (p == NULL || buffer[buflen - 1] != '\xff') -- { -- fsetpos (ent->stream, &pos); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- /* Terminate the line for any case. */ -- buffer[buflen - 1] = '\0'; -- -- /* Skip leading blanks. */ -- while (isspace (*p)) -- ++p; -- } -- while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -- /* Parse the line. If it is invalid, loop to -- get the next line of the file to parse. */ -- !(parse_res = _nss_files_parse_pwent (p, result, data, buflen, -- errnop))); -+ if (p == NULL || buffer[buflen - 1] != '\xff') -+ { -+ fsetpos (ent->stream, &pos); -+ *errnop = ERANGE; -+ return NSS_STATUS_TRYAGAIN; -+ } -+ -+ /* Terminate the line for any case. */ -+ buffer[buflen - 1] = '\0'; -+ -+ /* Skip leading blanks. */ -+ while (isspace (*p)) -+ ++p; -+ } -+ while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -+ /* Parse the line. If it is invalid, loop to -+ get the next line of the file to parse. */ -+ !(parse_res = _nss_files_parse_pwent (p, result, data, buflen, -+ errnop))); - - if (parse_res == -1) -- { -- /* The parser ran out of space. */ -- fsetpos (ent->stream, &pos); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -+ { -+ /* The parser ran out of space. */ -+ fsetpos (ent->stream, &pos); -+ *errnop = ERANGE; -+ return NSS_STATUS_TRYAGAIN; -+ } - - /* This is a real entry. */ - if (result->pw_name[0] != '+' && result->pw_name[0] != '-') -- { -- if (result->pw_uid == uid) -- return NSS_STATUS_SUCCESS; -- else -- continue; -- } -+ { -+ if (result->pw_uid == uid) -+ return NSS_STATUS_SUCCESS; -+ else -+ continue; -+ } - - /* -@netgroup */ - if (result->pw_name[0] == '-' && result->pw_name[1] == '@' -- && result->pw_name[2] != '\0') -- { -- char buf[strlen (result->pw_name)]; -+ && result->pw_name[2] != '\0') -+ { -+ /* -1, because we remove first two character of pw_name. */ -+ size_t len = strlen (result->pw_name) - 1; -+ char buf[len]; - enum nss_status status; - -- strcpy (buf, &result->pw_name[2]); -+ memcpy (buf, &result->pw_name[2], len); - - status = getpwuid_plususer (uid, result, buffer, buflen, errnop); - if (status == NSS_STATUS_SUCCESS && - innetgr (buf, NULL, result->pw_name, NULL)) - return NSS_STATUS_NOTFOUND; - -- continue; -- } -+ continue; -+ } - - /* +@netgroup */ - if (result->pw_name[0] == '+' && result->pw_name[1] == '@' -- && result->pw_name[2] != '\0') -- { -- char buf[strlen (result->pw_name)]; -+ && result->pw_name[2] != '\0') -+ { -+ /* -1, because we remove first two characters of pw_name. */ -+ size_t len = strlen (result->pw_name) - 1; -+ char buf[len]; - enum nss_status status; - -- strcpy (buf, &result->pw_name[2]); -+ memcpy (buf, &result->pw_name[2], len); - - status = getpwuid_plususer (uid, result, buffer, buflen, errnop); - -@@ -1494,39 +980,40 @@ - if (innetgr (buf, NULL, result->pw_name, NULL)) - return NSS_STATUS_SUCCESS; - } -+ else if (status == NSS_STATUS_RETURN) /* We couldn't parse the entry */ -+ return NSS_STATUS_NOTFOUND; - else -- if (status == NSS_STATUS_RETURN) /* We couldn't parse the entry */ -- return NSS_STATUS_NOTFOUND; -- else -- return status; -+ return status; - -- continue; -+ continue; - } - - /* -user */ - if (result->pw_name[0] == '-' && result->pw_name[1] != '\0' -- && result->pw_name[1] != '@') -- { -- char buf[strlen (result->pw_name)]; -+ && result->pw_name[1] != '@') -+ { -+ size_t len = strlen (result->pw_name); -+ char buf[len]; - enum nss_status status; - -- strcpy (buf, &result->pw_name[1]); -+ memcpy (buf, &result->pw_name[1], len); - - status = getpwuid_plususer (uid, result, buffer, buflen, errnop); - if (status == NSS_STATUS_SUCCESS && - innetgr (buf, NULL, result->pw_name, NULL)) - return NSS_STATUS_NOTFOUND; -- continue; -- } -+ continue; -+ } - - /* +user */ - if (result->pw_name[0] == '+' && result->pw_name[1] != '\0' -- && result->pw_name[1] != '@') -- { -- char buf[strlen (result->pw_name)]; -+ && result->pw_name[1] != '@') -+ { -+ size_t len = strlen (result->pw_name); -+ char buf[len]; - enum nss_status status; - -- strcpy (buf, &result->pw_name[1]); -+ memcpy (buf, &result->pw_name[1], len); - - status = getpwuid_plususer (uid, result, buffer, buflen, errnop); - -@@ -1538,60 +1025,54 @@ - if (strcmp (buf, result->pw_name) == 0) - return NSS_STATUS_SUCCESS; - } -+ else if (status == NSS_STATUS_RETURN) /* We couldn't parse the entry */ -+ return NSS_STATUS_NOTFOUND; - else -- if (status == NSS_STATUS_RETURN) /* We couldn't parse the entry */ -- return NSS_STATUS_NOTFOUND; -- else -- return status; -+ return status; - -- continue; -- } -+ continue; -+ } - - /* +:... */ - if (result->pw_name[0] == '+' && result->pw_name[1] == '\0') -- { -- enum nss_status status; -+ { -+ enum nss_status status; - -- status = getpwuid_plususer (uid, result, buffer, buflen, errnop); -- if (status == NSS_STATUS_SUCCESS) /* We found the entry. */ -- break; -- else -- if (status == NSS_STATUS_RETURN) /* We couldn't parse the entry */ -- return NSS_STATUS_NOTFOUND; -- else -- return status; -- } -+ status = getpwuid_plususer (uid, result, buffer, buflen, errnop); -+ if (status == NSS_STATUS_SUCCESS) /* We found the entry. */ -+ break; -+ else if (status == NSS_STATUS_RETURN) /* We couldn't parse the entry */ -+ return NSS_STATUS_NOTFOUND; -+ else -+ return status; -+ } - } - return NSS_STATUS_SUCCESS; - } - - enum nss_status - _nss_compat_getpwuid_r (uid_t uid, struct passwd *pwd, -- char *buffer, size_t buflen, int *errnop) -+ char *buffer, size_t buflen, int *errnop) - { -- ent_t ent = {0, 0, 0, NULL, 0, NULL, NULL, {NULL, 0, 0}, -+ enum nss_status result; -+ ent_t ent = {0, 0, TRUE, NULL, {NULL, 0, 0}, - {NULL, NULL, 0, 0, NULL, NULL, NULL}}; -- enum nss_status status; - - __libc_lock_lock (lock); - - if (ni == NULL) -- { -- __nss_database_lookup ("passwd_compat", NULL, "nis", &ni); -- use_nisplus = (strcmp (ni->name, "nisplus") == 0); -- } -+ init_nss_interface (); - - __libc_lock_unlock (lock); - -- status = internal_setpwent (&ent); -- if (status != NSS_STATUS_SUCCESS) -- return status; -+ result = internal_setpwent (&ent, 0); - -- status = internal_getpwuid_r (uid, pwd, &ent, buffer, buflen, errnop); -+ if (result == NSS_STATUS_SUCCESS) -+ result = internal_getpwuid_r (uid, pwd, &ent, buffer, buflen, errnop); - - internal_endpwent (&ent); - -- return status; -+ return result; - } - - -@@ -1653,7 +1134,7 @@ - - buf[0] = '|'; - cp = stpcpy (&buf[1], name); -- *cp++= '|'; -+ *cp++ = '|'; - *cp = '\0'; - return strstr (ent->blacklist.data, buf) != NULL; - } ---- glibc-2.3.2/nis/nss_compat/compat-spwd.c 2002-08-26 01:08:20.000000000 -0400 -+++ glibc-2.3.2/nis/nss_compat/compat-spwd.c 2003-09-19 22:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996,1997,1998,1999,2001,2002 Free Software Foundation, Inc. -+/* Copyright (C) 1996-1999,2001,2002,2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Thorsten Kukuk , 1996. - -@@ -17,27 +17,29 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - --#include --#include - #include -+#include - #include - #include -+#include -+#include - #include -+#include - #include --#include --#include -+#include - #include --#include --#include -+#include - - #include "netgroup.h" --#include "nss-nisplus.h" --#include "nisplus-parser.h" - - static service_user *ni; --static bool_t use_nisplus; /* default: passwd_compat: nis */ --static nis_name pwdtable; /* Name of the password table */ --static size_t pwdtablelen; -+static enum nss_status (*nss_setspent) (int stayopen); -+static enum nss_status (*nss_getspnam_r) (const char *name, struct spwd * sp, -+ char *buffer, size_t buflen, -+ int *errnop); -+static enum nss_status (*nss_getspent_r) (struct spwd * sp, char *buffer, -+ size_t buflen, int *errnop); -+static enum nss_status (*nss_endspent) (void); - - /* Get the declaration of the parser function. */ - #define ENTNAME spent -@@ -49,28 +51,25 @@ - #define BLACKLIST_INITIAL_SIZE 512 - #define BLACKLIST_INCREMENT 256 - struct blacklist_t -- { -- char *data; -- int current; -- int size; -- }; -+{ -+ char *data; -+ int current; -+ int size; -+}; - - struct ent_t -- { -- bool_t netgroup; -- bool_t nis; -- bool_t first; -- char *oldkey; -- int oldkeylen; -- nis_result *result; -- FILE *stream; -- struct blacklist_t blacklist; -- struct spwd pwd; -- struct __netgrent netgrdata; -- }; -+{ -+ bool_t netgroup; -+ bool_t files; -+ bool_t first; -+ FILE *stream; -+ struct blacklist_t blacklist; -+ struct spwd pwd; -+ struct __netgrent netgrdata; -+}; - typedef struct ent_t ent_t; - --static ent_t ext_ent = {0, 0, 0, NULL, 0, NULL, NULL, {NULL, 0, 0}, -+static ent_t ext_ent = {0, TRUE, 0, NULL, {NULL, 0, 0}, - {NULL, NULL, 0, 0, 0, 0, 0, 0, 0}}; - - /* Protect global state against multiple changers. */ -@@ -80,6 +79,21 @@ - static void blacklist_store_name (const char *, ent_t *); - static int in_blacklist (const char *, int, ent_t *); - -+/* Initialize the NSS interface/functions. The calling function must -+ hold the lock. */ -+static void -+init_nss_interface (void) -+{ -+ if (__nss_database_lookup ("shadow_compat", "passwd_compat", -+ "nis", &ni) >= 0) -+ { -+ nss_setspent = __nss_lookup_function (ni, "setspent"); -+ nss_getspnam_r = __nss_lookup_function (ni, "getspnam_r"); -+ nss_getspent_r = __nss_lookup_function (ni, "getspent_r"); -+ nss_endspent = __nss_lookup_function (ni, "endspent"); -+ } -+} -+ - static void - give_spwd_free (struct spwd *pwd) - { -@@ -142,45 +156,17 @@ - } - - static enum nss_status --internal_setspent (ent_t *ent) -+internal_setspent (ent_t *ent, int stayopen) - { - enum nss_status status = NSS_STATUS_SUCCESS; - -- ent->nis = ent->first = ent->netgroup = 0; -+ ent->first = ent->netgroup = 0; -+ ent->files = TRUE; - - /* If something was left over free it. */ - if (ent->netgroup) - __internal_endnetgrent (&ent->netgrdata); - -- if (ent->oldkey != NULL) -- { -- free (ent->oldkey); -- ent->oldkey = NULL; -- ent->oldkeylen = 0; -- } -- -- if (ent->result != NULL) -- { -- nis_freeresult (ent->result); -- ent->result = NULL; -- } -- -- if (pwdtable == NULL) -- { -- static const char key[] = "passwd.org_dir."; -- const char *local_dir = nis_local_directory (); -- size_t len_local_dir = strlen (local_dir); -- -- pwdtable = malloc (sizeof (key) + len_local_dir); -- if (pwdtable == NULL) -- return NSS_STATUS_TRYAGAIN; -- -- pwdtablelen = ((char *) mempcpy (mempcpy (pwdtable, -- key, sizeof (key) - 1), -- local_dir, len_local_dir + 1) -- - pwdtable) - 1; -- } -- - if (ent->blacklist.data != NULL) - { - ent->blacklist.current = 1; -@@ -192,7 +178,7 @@ - - if (ent->stream == NULL) - { -- ent->stream = fopen ("/etc/shadow", "r"); -+ ent->stream = fopen ("/etc/shadow", "rm"); - - if (ent->stream == NULL) - status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL; -@@ -201,20 +187,23 @@ - /* We have to make sure the file is `closed on exec'. */ - int result, flags; - -- result = flags = fcntl (fileno (ent->stream), F_GETFD, 0); -+ result = flags = fcntl (fileno_unlocked (ent->stream), F_GETFD, 0); - if (result >= 0) - { - flags |= FD_CLOEXEC; -- result = fcntl (fileno (ent->stream), F_SETFD, flags); -+ result = fcntl (fileno_unlocked (ent->stream), F_SETFD, flags); - } - if (result < 0) - { - /* Something went wrong. Close the stream and return a -- failure. */ -+ failure. */ - fclose (ent->stream); - ent->stream = NULL; - status = NSS_STATUS_UNAVAIL; - } -+ else -+ /* We take care of locking ourself. */ -+ __fsetlocking (ent->stream, FSETLOCKING_BYCALLER); - } - } - else -@@ -222,6 +211,9 @@ - - give_spwd_free (&ent->pwd); - -+ if (status == NSS_STATUS_SUCCESS && nss_setspent) -+ return nss_setspent (stayopen); -+ - return status; - } - -@@ -234,12 +226,9 @@ - __libc_lock_lock (lock); - - if (ni == NULL) -- { -- __nss_database_lookup ("shadow_compat", "passwd_compat", "nis", &ni); -- use_nisplus = (strcmp (ni->name, "nisplus") == 0); -- } -+ init_nss_interface (); - -- result = internal_setspent (&ext_ent); -+ result = internal_setspent (&ext_ent, stayopen); - - __libc_lock_unlock (lock); - -@@ -250,6 +239,9 @@ - static enum nss_status - internal_endspent (ent_t *ent) - { -+ if (nss_endspent) -+ nss_endspent (); -+ - if (ent->stream != NULL) - { - fclose (ent->stream); -@@ -259,20 +251,8 @@ - if (ent->netgroup) - __internal_endnetgrent (&ent->netgrdata); - -- ent->nis = ent->first = ent->netgroup = 0; -- -- if (ent->oldkey != NULL) -- { -- free (ent->oldkey); -- ent->oldkey = NULL; -- ent->oldkeylen = 0; -- } -- -- if (ent->result != NULL) -- { -- nis_freeresult (ent->result); -- ent->result = NULL; -- } -+ ent->first = ent->netgroup = FALSE; -+ ent->files = TRUE; - - if (ent->blacklist.data != NULL) - { -@@ -304,25 +284,27 @@ - - - static enum nss_status --getspent_next_nis_netgr (const char *name, struct spwd *result, ent_t *ent, -- char *group, char *buffer, size_t buflen, int *errnop) -+getspent_next_nss_netgr (const char *name, struct spwd *result, ent_t *ent, -+ char *group, char *buffer, size_t buflen, -+ int *errnop) - { -- struct parser_data *data = (void *) buffer; -- char *ypdomain, *host, *user, *domain, *outval, *p, *p2; -- int status, outvallen; -+ char *curdomain, *host, *user, *domain, *p2; - size_t p2len; - -- if (yp_get_default_domain (&ypdomain) != YPERR_SUCCESS) -+ if (!nss_getspnam_r) -+ return NSS_STATUS_UNAVAIL; -+ -+ if (yp_get_default_domain (&curdomain) != YPERR_SUCCESS) - { -- ent->netgroup = 0; -- ent->first = 0; -+ ent->netgroup = FALSE; -+ ent->first = FALSE; - give_spwd_free (&ent->pwd); - return NSS_STATUS_UNAVAIL; - } - - if (ent->first == TRUE) - { -- bzero (&ent->netgrdata, sizeof (struct __netgrent)); -+ memset (&ent->netgrdata, 0, sizeof (struct __netgrent)); - __internal_setnetgrent (group, &ent->netgrdata); - ent->first = FALSE; - } -@@ -330,7 +312,7 @@ - while (1) - { - char *saved_cursor; -- int parse_res; -+ enum nss_status status; - - saved_cursor = ent->netgrdata.cursor; - status = __internal_getnetgrent_r (&host, &user, &domain, -@@ -339,7 +321,7 @@ - if (status != 1) - { - __internal_endnetgrent (&ent->netgrdata); -- ent->netgroup = 0; -+ ent->netgroup = FALSE; - give_spwd_free (&ent->pwd); - return NSS_STATUS_RETURN; - } -@@ -347,7 +329,7 @@ - if (user == NULL || user[0] == '-') - continue; - -- if (domain != NULL && strcmp (ypdomain, domain) != 0) -+ if (domain != NULL && strcmp (curdomain, domain) != 0) - continue; - - /* If name != NULL, we are called from getpwnam */ -@@ -355,240 +337,43 @@ - if (strcmp (user, name) != 0) - continue; - -- if (yp_match (ypdomain, "shadow.byname", user, -- strlen (user), &outval, &outvallen) -- != YPERR_SUCCESS) -- continue; -- - p2len = spwd_need_buflen (&ent->pwd); - if (p2len > buflen) - { -- free (outval); - *errnop = ERANGE; - return NSS_STATUS_TRYAGAIN; - } - p2 = buffer + (buflen - p2len); - buflen -= p2len; -- if (buflen < ((size_t) outval + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- p = strncpy (buffer, outval, buflen); -- while (isspace (*p)) -- p++; -- free (outval); -- parse_res = _nss_files_parse_spent (p, result, data, buflen, errnop); -- if (parse_res == -1) -- { -- ent->netgrdata.cursor = saved_cursor; -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- if (parse_res) -- { -- /* Store the User in the blacklist for the "+" at the end of -- /etc/passwd */ -- blacklist_store_name (result->sp_namp, ent); -- copy_spwd_changes (result, &ent->pwd, p2, p2len); -- break; -- } -- } -- -- return NSS_STATUS_SUCCESS; --} -- --static enum nss_status --getspent_next_nisplus_netgr (const char *name, struct spwd *result, -- ent_t *ent, char *group, char *buffer, -- size_t buflen, int *errnop) --{ -- char *ypdomain, *host, *user, *domain, *p2; -- int status, parse_res; -- size_t p2len; -- nis_result *nisres; - -- /* Maybe we should use domainname here ? We need the current -- domainname for the domain field in netgroups */ -- if (yp_get_default_domain (&ypdomain) != YPERR_SUCCESS) -- { -- ent->netgroup = 0; -- ent->first = 0; -- give_spwd_free (&ent->pwd); -- return NSS_STATUS_UNAVAIL; -- } -- -- if (ent->first == TRUE) -- { -- bzero (&ent->netgrdata, sizeof (struct __netgrent)); -- __internal_setnetgrent (group, &ent->netgrdata); -- ent->first = FALSE; -- } -- -- while (1) -- { -- char *saved_cursor; -- -- saved_cursor = ent->netgrdata.cursor; -- status = __internal_getnetgrent_r (&host, &user, &domain, -- &ent->netgrdata, buffer, buflen, -- errnop); -- if (status != 1) -- { -- __internal_endnetgrent (&ent->netgrdata); -- ent->netgroup = 0; -- give_spwd_free (&ent->pwd); -- return NSS_STATUS_RETURN; -- } -- -- if (user == NULL || user[0] == '-') -- continue; -- -- if (domain != NULL && strcmp (ypdomain, domain) != 0) -- continue; -- -- /* If name != NULL, we are called from getpwnam */ -- if (name != NULL) -- if (strcmp (user, name) != 0) -- continue; -+ if (nss_getspnam_r (user, result, buffer, buflen, errnop) != -+ NSS_STATUS_SUCCESS) -+ continue; - -- p2len = spwd_need_buflen (&ent->pwd); -- if (p2len > buflen) -- { -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- p2 = buffer + (buflen - p2len); -- buflen -= p2len; -- { -- char buf[strlen (user) + 30 + pwdtablelen]; -- sprintf (buf, "[name=%s],%s", user, pwdtable); -- nisres = nis_list (buf, FOLLOW_LINKS | FOLLOW_PATH, NULL, NULL); -- } -- if (niserr2nss (nisres->status) != NSS_STATUS_SUCCESS) -- { -- nis_freeresult (nisres); -- continue; -- } -- parse_res = _nss_nisplus_parse_spent (nisres, result, buffer, -- buflen, errnop); -- if (parse_res == -1) -+ if (!in_blacklist (result->sp_namp, strlen (result->sp_namp), ent)) - { -- nis_freeresult (nisres); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- nis_freeresult (nisres); -- -- if (parse_res) -- { -- /* Store the User in the blacklist for the "+" at the end of -- /etc/passwd */ -+ /* Store the User in the blacklist for possible the "+" at the -+ end of /etc/passwd */ - blacklist_store_name (result->sp_namp, ent); - copy_spwd_changes (result, &ent->pwd, p2, p2len); -- break; -- } -- } -- -- return NSS_STATUS_SUCCESS; --} -- --static enum nss_status --getspent_next_nisplus (struct spwd *result, ent_t *ent, char *buffer, -- size_t buflen, int *errnop) --{ -- int parse_res; -- size_t p2len; -- char *p2; -- -- p2len = spwd_need_buflen (&ent->pwd); -- if (p2len > buflen) -- { -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- p2 = buffer + (buflen - p2len); -- buflen -= p2len; -- do -- { -- bool_t saved_first; -- nis_result *saved_res; -- -- if (ent->first) -- { -- saved_first = TRUE; -- saved_res = ent->result; -- -- ent->result = nis_first_entry (pwdtable); -- if (niserr2nss (ent->result->status) != NSS_STATUS_SUCCESS) -- { -- ent->nis = 0; -- give_spwd_free (&ent->pwd); -- return niserr2nss (ent->result->status); -- } -- ent->first = FALSE; -- } -- else -- { -- nis_result *res; -- -- saved_first = FALSE; -- saved_res = ent->result; -- -- res = nis_next_entry (pwdtable, &ent->result->cookie); -- ent->result = res; -- if (niserr2nss (ent->result->status) != NSS_STATUS_SUCCESS) -- { -- nis_freeresult (saved_res); -- ent->nis = 0; -- give_spwd_free (&ent->pwd); -- return niserr2nss (ent->result->status); -- } -- } -- parse_res = _nss_nisplus_parse_spent (ent->result, result, buffer, -- buflen, errnop); -- if (parse_res == -1) -- { -- ent->first = saved_first; -- nis_freeresult (ent->result); -- ent->result = saved_res; -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- else -- { -- if (!saved_first) -- nis_freeresult (saved_res); -+ break; - } -- if (parse_res && -- in_blacklist (result->sp_namp, strlen (result->sp_namp), ent)) -- parse_res = 0; /* if result->pw_name in blacklist,search next entry */ - } -- while (!parse_res); -- -- copy_spwd_changes (result, &ent->pwd, p2, p2len); - - return NSS_STATUS_SUCCESS; - } - - - static enum nss_status --getspent_next_nis (struct spwd *result, ent_t *ent, -+getspent_next_nss (struct spwd *result, ent_t *ent, - char *buffer, size_t buflen, int *errnop) - { -- struct parser_data *data = (void *) buffer; -- char *domain, *outkey, *outval, *p, *p2; -- int outkeylen, outvallen, parse_res; -+ enum nss_status status; -+ char *p2; - size_t p2len; - -- if (yp_get_default_domain (&domain) != YPERR_SUCCESS) -- { -- ent->nis = 0; -- give_spwd_free (&ent->pwd); -- return NSS_STATUS_UNAVAIL; -- } -+ if (!nss_getspent_r) -+ return NSS_STATUS_UNAVAIL; - - p2len = spwd_need_buflen (&ent->pwd); - if (p2len > buflen) -@@ -600,87 +385,11 @@ - buflen -= p2len; - do - { -- bool_t saved_first; -- char *saved_oldkey; -- int saved_oldlen; -- -- if (ent->first) -- { -- if (yp_first (domain, "shadow.byname", &outkey, &outkeylen, -- &outval, &outvallen) != YPERR_SUCCESS) -- { -- ent->nis = 0; -- give_spwd_free (&ent->pwd); -- return NSS_STATUS_UNAVAIL; -- } -- -- if (buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- saved_first = TRUE; -- saved_oldkey = ent->oldkey; -- saved_oldlen = ent->oldkeylen; -- ent->oldkey = outkey; -- ent->oldkeylen = outkeylen; -- ent->first = FALSE; -- } -- else -- { -- if (yp_next (domain, "shadow.byname", ent->oldkey, ent->oldkeylen, -- &outkey, &outkeylen, &outval, &outvallen) -- != YPERR_SUCCESS) -- { -- ent->nis = 0; -- give_spwd_free (&ent->pwd); -- return NSS_STATUS_NOTFOUND; -- } -- -- if (buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- -- saved_first = FALSE; -- saved_oldkey = ent->oldkey; -- saved_oldlen = ent->oldkeylen; -- ent->oldkey = outkey; -- ent->oldkeylen = outkeylen; -- } -- -- /* Copy the found data to our buffer */ -- p = strncpy (buffer, outval, buflen); -- -- /* ...and free the data. */ -- free (outval); -- -- while (isspace (*p)) -- ++p; -- parse_res = _nss_files_parse_spent (p, result, data, buflen, errnop); -- if (parse_res == -1) -- { -- free (ent->oldkey); -- ent->oldkey = saved_oldkey; -- ent->oldkeylen = saved_oldlen; -- ent->first = saved_first; -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- else -- { -- if (!saved_first) -- free (saved_oldkey); -- } -- if (parse_res && -- in_blacklist (result->sp_namp, strlen (result->sp_namp), ent)) -- parse_res = 0; -+ if ((status = nss_getspent_r (result, buffer, buflen, errnop)) != -+ NSS_STATUS_SUCCESS) -+ return status; - } -- while (!parse_res); -+ while (in_blacklist (result->sp_namp, strlen (result->sp_namp), ent)); - - copy_spwd_changes (result, &ent->pwd, p2, p2len); - -@@ -689,15 +398,16 @@ - - /* This function handle the +user entrys in /etc/shadow */ - static enum nss_status --getspnam_plususer (const char *name, struct spwd *result, char *buffer, -- size_t buflen, int *errnop) -+getspnam_plususer (const char *name, struct spwd *result, ent_t *ent, -+ char *buffer, size_t buflen, int *errnop) - { -- struct parser_data *data = (void *) buffer; - struct spwd pwd; -- int parse_res; - char *p; - size_t plen; - -+ if (!nss_getspnam_r) -+ return NSS_STATUS_UNAVAIL; -+ - memset (&pwd, '\0', sizeof (struct spwd)); - pwd.sp_warn = -1; - pwd.sp_inact = -1; -@@ -715,72 +425,17 @@ - p = buffer + (buflen - plen); - buflen -= plen; - -- if (use_nisplus) /* Do the NIS+ query here */ -- { -- nis_result *res; -- char buf[strlen (name) + 24 + pwdtablelen]; -- -- sprintf(buf, "[name=%s],%s", name, pwdtable); -- res = nis_list(buf, 0, NULL, NULL); -- if (niserr2nss (res->status) != NSS_STATUS_SUCCESS) -- { -- enum nss_status status = niserr2nss (res->status); -- -- nis_freeresult (res); -- return status; -- } -- parse_res = _nss_nisplus_parse_spent (res, result, buffer, -- buflen, errnop); -- if (parse_res == -1) -- { -- nis_freeresult (res); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -- nis_freeresult (res); -- } -- else /* Use NIS */ -- { -- char *domain, *outval, *ptr; -- int outvallen; -- -- if (yp_get_default_domain (&domain) != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -- -- if (yp_match (domain, "shadow.byname", name, strlen (name), -- &outval, &outvallen) != YPERR_SUCCESS) -- return NSS_STATUS_NOTFOUND; -- -- if (buflen < ((size_t) outvallen + 1)) -- { -- free (outval); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -+ if (nss_getspnam_r (name, result, buffer, buflen, errnop) != -+ NSS_STATUS_SUCCESS) -+ return NSS_STATUS_NOTFOUND; - -- ptr = strncpy (buffer, outval, buflen); -- free (outval); -- while (isspace (*ptr)) -- ptr++; -- parse_res = _nss_files_parse_spent (ptr, result, data, buflen, errnop); -- if (parse_res == -1) -- return NSS_STATUS_TRYAGAIN; -- } -+ if (in_blacklist (result->sp_namp, strlen (result->sp_namp), ent)) -+ return NSS_STATUS_NOTFOUND; - -- if (parse_res) -- { -- copy_spwd_changes (result, &pwd, p, plen); -- give_spwd_free (&pwd); -- /* We found the entry. */ -- return NSS_STATUS_SUCCESS; -- } -- else -- { -- /* Give buffer the old len back */ -- buflen += plen; -- give_spwd_free (&pwd); -- } -- return NSS_STATUS_RETURN; -+ copy_spwd_changes (result, &pwd, p, plen); -+ give_spwd_free (&pwd); -+ /* We found the entry. */ -+ return NSS_STATUS_SUCCESS; - } - - static enum nss_status -@@ -798,8 +453,8 @@ - { - fgetpos (ent->stream, &pos); - buffer[buflen - 1] = '\xff'; -- p = fgets (buffer, buflen, ent->stream); -- if (p == NULL && feof (ent->stream)) -+ p = fgets_unlocked (buffer, buflen, ent->stream); -+ if (p == NULL && feof_unlocked (ent->stream)) - return NSS_STATUS_NOTFOUND; - - if (p == NULL || buffer[buflen - 1] != '\xff') -@@ -814,18 +469,18 @@ - ++p; - } - while (*p == '\0' || *p == '#' /* Ignore empty and comment lines. */ -- /* Parse the line. If it is invalid, loop to -- get the next line of the file to parse. */ -+ /* Parse the line. If it is invalid, loop to -+ get the next line of the file to parse. */ - || !(parse_res = _nss_files_parse_spent (p, result, data, - buflen, errnop))); - - if (parse_res == -1) -- { -- /* The parser ran out of space. */ -- fsetpos (ent->stream, &pos); -- *errnop = ERANGE; -- return NSS_STATUS_TRYAGAIN; -- } -+ { -+ /* The parser ran out of space. */ -+ fsetpos (ent->stream, &pos); -+ *errnop = ERANGE; -+ return NSS_STATUS_TRYAGAIN; -+ } - - if (result->sp_namp[0] != '+' && result->sp_namp[0] != '-') - /* This is a real entry. */ -@@ -836,12 +491,12 @@ - && result->sp_namp[2] != '\0') - { - /* XXX Do not use fixed length buffers. */ -- char buf2[1024]; -+ char buf2[1024]; - char *user, *host, *domain; -- struct __netgrent netgrdata; -+ struct __netgrent netgrdata; - -- bzero (&netgrdata, sizeof (struct __netgrent)); -- __internal_setnetgrent (&result->sp_namp[2], &netgrdata); -+ bzero (&netgrdata, sizeof (struct __netgrent)); -+ __internal_setnetgrent (&result->sp_namp[2], &netgrdata); - while (__internal_getnetgrent_r (&host, &user, &domain, - &netgrdata, buf2, sizeof (buf2), - errnop)) -@@ -863,14 +518,9 @@ - ent->first = TRUE; - copy_spwd_changes (&ent->pwd, result, NULL, 0); - -- if (use_nisplus) -- status = getspent_next_nisplus_netgr (NULL, result, ent, -- &result->sp_namp[2], -- buffer, buflen, errnop); -- else -- status = getspent_next_nis_netgr (NULL, result, ent, -- &result->sp_namp[2], -- buffer, buflen, errnop); -+ status = getspent_next_nss_netgr (NULL, result, ent, -+ &result->sp_namp[2], -+ buffer, buflen, errnop); - if (status == NSS_STATUS_RETURN) - continue; - else -@@ -889,41 +539,43 @@ - if (result->sp_namp[0] == '+' && result->sp_namp[1] != '\0' - && result->sp_namp[1] != '@') - { -- enum nss_status status; -+ size_t len = strlen (result->sp_namp); -+ char buf[len]; -+ enum nss_status status; - - /* Store the User in the blacklist for the "+" at the end of - /etc/passwd */ -- blacklist_store_name (&result->sp_namp[1], ent); -- status = getspnam_plususer (&result->sp_namp[1], result, buffer, -- buflen, errnop); -- if (status == NSS_STATUS_SUCCESS) /* We found the entry. */ -- break; -- else -- if (status == NSS_STATUS_RETURN /* We couldn't parse the entry */ -- || status == NSS_STATUS_NOTFOUND) /* entry doesn't exist */ -- continue; -- else -- { -- if (status == NSS_STATUS_TRYAGAIN) -- { -- fsetpos (ent->stream, &pos); -- *errnop = ERANGE; -- } -- return status; -- } -+ memcpy (buf, &result->sp_namp[1], len); -+ status = getspnam_plususer (&result->sp_namp[1], result, ent, -+ buffer, buflen, errnop); -+ blacklist_store_name (buf, ent); -+ -+ if (status == NSS_STATUS_SUCCESS) /* We found the entry. */ -+ break; -+ /* We couldn't parse the entry */ -+ else if (status == NSS_STATUS_RETURN -+ /* entry doesn't exist */ -+ || status == NSS_STATUS_NOTFOUND) -+ continue; -+ else -+ { -+ if (status == NSS_STATUS_TRYAGAIN) -+ { -+ fsetpos (ent->stream, &pos); -+ *errnop = ERANGE; -+ } -+ return status; -+ } - } - - /* +:... */ - if (result->sp_namp[0] == '+' && result->sp_namp[1] == '\0') - { -- ent->nis = TRUE; -+ ent->files = FALSE; - ent->first = TRUE; - copy_spwd_changes (&ent->pwd, result, NULL, 0); - -- if (use_nisplus) -- return getspent_next_nisplus (result, ent, buffer, buflen, errnop); -- else -- return getspent_next_nis (result, ent, buffer, buflen, errnop); -+ return getspent_next_nss (result, ent, buffer, buflen, errnop); - } - } - -@@ -937,57 +589,45 @@ - { - if (ent->netgroup) - { -- int status; -+ enum nss_status status; - - /* We are searching members in a netgroup */ - /* Since this is not the first call, we don't need the group name */ -- if (use_nisplus) -- status = getspent_next_nisplus_netgr (NULL, pw, ent, NULL, buffer, -- buflen, errnop); -- else -- status = getspent_next_nis_netgr (NULL, pw, ent, NULL, buffer, buflen, -- errnop); -+ status = getspent_next_nss_netgr (NULL, pw, ent, NULL, buffer, -+ buflen, errnop); -+ - if (status == NSS_STATUS_RETURN) - return getspent_next_file (pw, ent, buffer, buflen, errnop); - else - return status; - } -+ else if (ent->files) -+ return getspent_next_file (pw, ent, buffer, buflen, errnop); - else -- if (ent->nis) -- { -- if (use_nisplus) -- return getspent_next_nisplus (pw, ent, buffer, buflen, errnop); -- else -- return getspent_next_nis (pw, ent, buffer, buflen, errnop); -- } -- else -- return getspent_next_file (pw, ent, buffer, buflen, errnop); -+ return getspent_next_nss (pw, ent, buffer, buflen, errnop); - } - - enum nss_status - _nss_compat_getspent_r (struct spwd *pwd, char *buffer, size_t buflen, - int *errnop) - { -- enum nss_status status = NSS_STATUS_SUCCESS; -+ enum nss_status result = NSS_STATUS_SUCCESS; - - __libc_lock_lock (lock); - -+ /* Be prepared that the setpwent function was not called before. */ - if (ni == NULL) -- { -- __nss_database_lookup ("shadow_compat", "passwd_compat", "nis", &ni); -- use_nisplus = (strcmp (ni->name, "nisplus") == 0); -- } -+ init_nss_interface (); - -- /* Be prepared that the setspent function was not called before. */ - if (ext_ent.stream == NULL) -- status = internal_setspent (&ext_ent); -+ result = internal_setspent (&ext_ent, 1); - -- if (status == NSS_STATUS_SUCCESS) -- status = internal_getspent_r (pwd, &ext_ent, buffer, buflen, errnop); -+ if (result == NSS_STATUS_SUCCESS) -+ result = internal_getspent_r (pwd, &ext_ent, buffer, buflen, errnop); - - __libc_lock_unlock (lock); - -- return status; -+ return result; - } - - /* Searches in /etc/passwd and the NIS/NIS+ map for a special user */ -@@ -1007,8 +647,8 @@ - { - fgetpos (ent->stream, &pos); - buffer[buflen - 1] = '\xff'; -- p = fgets (buffer, buflen, ent->stream); -- if (p == NULL && feof (ent->stream)) -+ p = fgets_unlocked (buffer, buflen, ent->stream); -+ if (p == NULL && feof_unlocked (ent->stream)) - return NSS_STATUS_NOTFOUND; - - if (p == NULL || buffer[buflen - 1] != '\xff') -@@ -1018,13 +658,16 @@ - return NSS_STATUS_TRYAGAIN; - } - -+ /* Terminate the line for any case. */ -+ buffer[buflen - 1] = '\0'; -+ - /* Skip leading blanks. */ - while (isspace (*p)) - ++p; - } -- while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ -+ while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */ - /* Parse the line. If it is invalid, loop to -- get the next line of the file to parse. */ -+ get the next line of the file to parse. */ - !(parse_res = _nss_files_parse_spent (p, result, data, buflen, - errnop))); - -@@ -1046,24 +689,13 @@ - } - - /* -@netgroup */ -+ /* If the loaded NSS module does not support this service, add -+ all users from a +@netgroup entry to the blacklist, too. */ - if (result->sp_namp[0] == '-' && result->sp_namp[1] == '@' - && result->sp_namp[2] != '\0') - { -- /* XXX Do not use fixed length buffers. */ -- char buf2[1024]; -- char *user, *host, *domain; -- struct __netgrent netgrdata; -- -- bzero (&netgrdata, sizeof (struct __netgrent)); -- __internal_setnetgrent (&result->sp_namp[2], &netgrdata); -- while (__internal_getnetgrent_r (&host, &user, &domain, &netgrdata, -- buf2, sizeof (buf2), errnop)) -- { -- if (user != NULL && user[0] != '-') -- if (strcmp (user, name) == 0) -- return NSS_STATUS_NOTFOUND; -- } -- __internal_endnetgrent (&netgrdata); -+ if (innetgr (&result->sp_namp[2], NULL, name, NULL)) -+ return NSS_STATUS_NOTFOUND; - continue; - } - -@@ -1071,28 +703,18 @@ - if (result->sp_namp[0] == '+' && result->sp_namp[1] == '@' - && result->sp_namp[2] != '\0') - { -- char *buf = strdupa (&result->sp_namp[2]); -- int status; -- -- ent->netgroup = TRUE; -- ent->first = TRUE; -- copy_spwd_changes (&ent->pwd, result, NULL, 0); -+ enum nss_status status; - -- do -+ if (innetgr (&result->sp_namp[2], NULL, name, NULL)) - { -- if (use_nisplus) -- status = getspent_next_nisplus_netgr (name, result, ent, buf, -- buffer, buflen, errnop); -- else -- status = getspent_next_nis_netgr (name, result, ent, buf, -- buffer, buflen, errnop); -+ status = getspnam_plususer (name, result, ent, buffer, -+ buflen, errnop); -+ - if (status == NSS_STATUS_RETURN) - continue; - -- if (status == NSS_STATUS_SUCCESS -- && strcmp (result->sp_namp, name) == 0) -- return NSS_STATUS_SUCCESS; -- } while (status == NSS_STATUS_SUCCESS); -+ return status; -+ } - continue; - } - -@@ -1114,8 +736,9 @@ - { - enum nss_status status; - -- status = getspnam_plususer (name, result, buffer, buflen, -- errnop); -+ status = getspnam_plususer (name, result, ent, -+ buffer, buflen, errnop); -+ - if (status == NSS_STATUS_RETURN) - /* We couldn't parse the entry */ - return NSS_STATUS_NOTFOUND; -@@ -1129,9 +752,15 @@ - { - enum nss_status status; - -- status = getspnam_plususer (name, result, buffer, buflen, errnop); -- if (status == NSS_STATUS_RETURN) /* We couldn't parse the entry */ -- return NSS_STATUS_NOTFOUND; -+ status = getspnam_plususer (name, result, ent, -+ buffer, buflen, errnop); -+ -+ if (status == NSS_STATUS_SUCCESS) -+ /* We found the entry. */ -+ break; -+ else if (status == NSS_STATUS_RETURN) -+ /* We couldn't parse the entry */ -+ return NSS_STATUS_NOTFOUND; - else - return status; - } -@@ -1143,28 +772,28 @@ - _nss_compat_getspnam_r (const char *name, struct spwd *pwd, - char *buffer, size_t buflen, int *errnop) - { -- ent_t ent = {0, 0, 0, NULL, 0, NULL, NULL, {NULL, 0, 0}, -+ enum nss_status result; -+ ent_t ent = {0, TRUE, 0, NULL, {NULL, 0, 0}, - {NULL, NULL, 0, 0, 0, 0, 0, 0, 0}}; -- enum nss_status status; - - if (name[0] == '-' || name[0] == '+') - return NSS_STATUS_NOTFOUND; - -+ __libc_lock_lock (lock); -+ - if (ni == NULL) -- { -- __nss_database_lookup ("shadow_compat", "passwd_compat", "nis", &ni); -- use_nisplus = (strcmp (ni->name, "nisplus") == 0); -- } -+ init_nss_interface (); - -- status = internal_setspent (&ent); -- if (status != NSS_STATUS_SUCCESS) -- return status; -+ __libc_lock_unlock (lock); -+ -+ result = internal_setspent (&ent, 0); - -- status = internal_getspnam_r (name, pwd, &ent, buffer, buflen, errnop); -+ if (result == NSS_STATUS_SUCCESS) -+ result = internal_getspnam_r (name, pwd, &ent, buffer, buflen, errnop); - - internal_endspent (&ent); - -- return status; -+ return result; - } - - /* Support routines for remembering -@netgroup and -user entries. -@@ -1225,7 +854,7 @@ - - buf[0] = '|'; - cp = stpcpy (&buf[1], name); -- *cp++= '|'; -+ *cp++ = '|'; - *cp = '\0'; - return strstr (ent->blacklist.data, buf) != NULL; - } ---- glibc-2.3.2/nis/nss_nis/nis-alias.c 2003-01-18 05:21:02.000000000 -0500 -+++ glibc-2.3.2/nis/nss_nis/nis-alias.c 2003-03-18 16:46:07.000000000 -0500 -@@ -214,7 +214,7 @@ - char *p; - size_t namlen = strlen (name); - char name2[namlen + 1]; -- int i; -+ size_t i; - - if (name == NULL) - { ---- glibc-2.3.2/nis/nss_nis/nis-hosts.c 2003-01-18 05:40:11.000000000 -0500 -+++ glibc-2.3.2/nis/nss_nis/nis-hosts.c 2003-03-18 16:46:07.000000000 -0500 -@@ -261,7 +261,7 @@ - /* Convert name to lowercase. */ - size_t namlen = strlen (name); - char name2[namlen + 1]; -- int i; -+ size_t i; - - for (i = 0; i < namlen; ++i) - name2[i] = tolower (name[i]); ---- glibc-2.3.2/nis/nss_nis/nis-initgroups.c 2002-08-26 00:47:19.000000000 -0400 -+++ glibc-2.3.2/nis/nss_nis/nis-initgroups.c 2003-04-24 20:05:58.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1998, 1999, 2000, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1998, 1999, 2000, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Thorsten Kukuk , 1998. - -@@ -17,10 +17,11 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - --#include --#include -+#include - #include - #include -+#include -+#include - #include - #include - #include -@@ -159,10 +160,7 @@ - internal_getgrent_r (&grpbuf, tmpbuf, buflen, errnop, - &intern)) == NSS_STATUS_TRYAGAIN - && *errnop == ERANGE) -- { -- buflen *= 2; -- tmpbuf = __alloca (buflen); -- } -+ tmpbuf = extend_alloca (tmpbuf, buflen, 2 * buflen); - - if (status != NSS_STATUS_SUCCESS) - goto done; ---- glibc-2.3.2/nis/nss_nis/nis-network.c 2003-01-19 14:06:27.000000000 -0500 -+++ glibc-2.3.2/nis/nss_nis/nis-network.c 2003-03-18 16:46:07.000000000 -0500 -@@ -181,7 +181,7 @@ - /* Convert name to lowercase. */ - size_t namlen = strlen (name); - char name2[namlen + 1]; -- int i; -+ size_t i; - - for (i = 0; i < namlen; ++i) - name2[i] = _tolower (name[i]); ---- glibc-2.3.2/nis/ypclnt.c 2002-03-20 19:37:12.000000000 -0500 -+++ glibc-2.3.2/nis/ypclnt.c 2003-04-24 20:05:58.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc. -+/* Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Thorsten Kukuk , 1996. - -@@ -66,15 +66,12 @@ - if (domain == NULL || domain[0] == '\0') - return YPERR_BADARGS; - -- if (ypdb != NULL) -+ ysd = *ypdb; -+ while (ysd != NULL) - { -- ysd = *ypdb; -- while (ysd != NULL) -- { -- if (strcmp (domain, ysd->dom_domain) == 0) -- break; -- ysd = ysd->dom_pnext; -- } -+ if (strcmp (domain, ysd->dom_domain) == 0) -+ break; -+ ysd = ysd->dom_pnext; - } - - if (ysd == NULL) -@@ -205,7 +202,7 @@ - return YPERR_YPSERV; - } - -- if (is_new && ypdb != NULL) -+ if (is_new) - { - ysd->dom_pnext = *ypdb; - *ypdb = ysd; -@@ -219,6 +216,7 @@ - { - clnt_destroy (ydb->dom_client); - ydb->dom_client = NULL; -+ free (ydb); - } - - int -@@ -255,7 +253,6 @@ - else - ydbptr2 = ydbptr->dom_pnext; - __yp_unbind (work); -- free (work); - break; - } - ydbptr2 = ydbptr; -@@ -335,10 +332,7 @@ - use_ypbindlist = FALSE; - } - else -- { -- __yp_unbind (ydb); -- free (ydb); -- } -+ __yp_unbind (ydb); - - ydb = NULL; - status = YPERR_RPC; -@@ -355,11 +349,7 @@ - } - else - if (ydb != NULL) -- { -- __yp_unbind (ydb); -- free (ydb); -- ydb = NULL; -- } -+ __yp_unbind (ydb); - - __set_errno (saved_errno); - -@@ -710,6 +700,7 @@ - - /* We don't need the UDP connection anymore. */ - __yp_unbind (ydb); -+ ydb = NULL; - - clnt = clnttcp_create (&clnt_sin, YPPROG, YPVERS, &clnt_sock, 0, 0); - if (clnt == NULL) ---- glibc-2.3.2/nscd/Makefile 2002-10-17 13:05:53.000000000 -0400 -+++ glibc-2.3.2/nscd/Makefile 2003-09-19 22:37:05.000000000 -0400 -@@ -1,4 +1,4 @@ --# Copyright (C) 1998, 2000, 2002 Free Software Foundation, Inc. -+# Copyright (C) 1998, 2000, 2002, 2003 Free Software Foundation, Inc. - # This file is part of the GNU C Library. - - # The GNU C Library is free software; you can redistribute it and/or -@@ -30,7 +30,7 @@ - - nscd-modules := nscd connections pwdcache getpwnam_r getpwuid_r grpcache \ - getgrnam_r getgrgid_r hstcache gethstbyad_r gethstbynm2_r \ -- dbg_log nscd_conf nscd_stat cache xmalloc -+ dbg_log nscd_conf nscd_stat cache xmalloc xstrdup - - ifeq ($(have-thread-library),yes) - -@@ -53,6 +53,10 @@ - - include ../Rules - -+CFLAGS-nscd_getpw_r.c = -fexceptions -+CFLAGS-nscd_getgr_r.c = -fexceptions -+CFLAGS-nscd_gethst_r.c = -fexceptions -+ - # This makes sure -DNOT_IN_libc is passed for all these modules. - cpp-srcs-left := $(nscd-modules:=.c) - lib := nonlib ---- glibc-2.3.2/nscd/cache.c 2001-07-07 15:21:07.000000000 -0400 -+++ glibc-2.3.2/nscd/cache.c 2003-04-28 08:20:36.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (c) 1998, 1999 Free Software Foundation, Inc. -+/* Copyright (c) 1998, 1999, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 1998. - -@@ -17,7 +17,7 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - --#include -+#include - #include - #include - #include -@@ -39,16 +39,19 @@ - - This function must be called with the read-lock held. */ - struct hashentry * --cache_search (int type, void *key, size_t len, struct database *table, -+cache_search (request_type type, void *key, size_t len, struct database *table, - uid_t owner) - { - unsigned long int hash = __nis_hash (key, len) % table->module; - struct hashentry *work; -+ unsigned long int nsearched = 0; - - work = table->array[hash]; - - while (work != NULL) - { -+ ++nsearched; -+ - if (type == work->type && len == work->len - && memcmp (key, work->key, len) == 0 && work->owner == owner) - { -@@ -58,13 +61,16 @@ - else - ++table->poshit; - -- return work; -+ break; - } - - work = work->next; - } - -- return NULL; -+ if (nsearched > table->maxnsearched) -+ table->maxnsearched = nsearched; -+ -+ return work; - } - - /* Add a new entry to the cache. The return value is zero if the function -@@ -101,14 +107,20 @@ - /* Put the new entry in the first position. */ - do - newp->next = table->array[hash]; -- while (! compare_and_swap ((volatile long int *) &table->array[hash], -- (long int) newp->next, (long int) newp)); -+ while (atomic_compare_and_exchange_bool_acq (&table->array[hash], newp, -+ newp->next)); - - /* Update the statistics. */ - if (data == (void *) -1) - ++table->negmiss; - else if (last) - ++table->posmiss; -+ -+ /* Instead of slowing down the normal process for statistics -+ collection we accept living with some incorrect data. */ -+ unsigned long int nentries = ++table->nentries; -+ if (nentries > table->maxnentries) -+ table->maxnentries = nentries; - } - - /* Walk through the table and remove all entries which lifetime ended. -@@ -165,10 +177,10 @@ - - /* We run through the table and find values which are not valid anymore. - -- Note that for the initial step, finding the entries to be removed, -- we don't need to get any lock. It is at all timed assured that the -- linked lists are set up correctly and that no second thread prunes -- the cache. */ -+ Note that for the initial step, finding the entries to be removed, -+ we don't need to get any lock. It is at all timed assured that the -+ linked lists are set up correctly and that no second thread prunes -+ the cache. */ - do - { - struct hashentry *runp = table->array[--cnt]; -@@ -195,7 +207,11 @@ - - /* Now we have to get the write lock since we are about to modify - the table. */ -- pthread_rwlock_wrlock (&table->lock); -+ if (__builtin_expect (pthread_rwlock_trywrlock (&table->lock) != 0, 0)) -+ { -+ ++table->wrlockdelayed; -+ pthread_rwlock_wrlock (&table->lock); -+ } - - while (first <= last) - { -@@ -208,6 +224,7 @@ - table->array[first]->dellist = head; - head = table->array[first]; - table->array[first] = head->next; -+ --table->nentries; - if (--mark[first] == 0) - break; - } -@@ -221,6 +238,7 @@ - head = runp->next; - runp->next = head->next; - --mark[first]; -+ --table->nentries; - } - else - runp = runp->next; -@@ -232,29 +250,35 @@ - /* It's all done. */ - pthread_rwlock_unlock (&table->lock); - -- /* And another run to free the data. */ -- do -+ /* One extra pass if we do debugging. */ -+ if (__builtin_expect (debug_level > 0, 0)) - { -- struct hashentry *old = head; -+ struct hashentry *runp = head; - -- if (debug_level > 0) -+ while (runp != NULL) - { - char buf[INET6_ADDRSTRLEN]; - const char *str; - -- if ((old->type == GETHOSTBYADDR || old->type == GETHOSTBYADDRv6) -- && (old->last || old->data == (void *) -1)) -+ if (runp->type == GETHOSTBYADDR || runp->type == GETHOSTBYADDRv6) - { -- inet_ntop (old->type == GETHOSTBYADDR ? AF_INET : AF_INET6, -- old->key, buf, sizeof (buf)); -+ inet_ntop (runp->type == GETHOSTBYADDR ? AF_INET : AF_INET6, -+ runp->key, buf, sizeof (buf)); - str = buf; - } - else -- str = old->last ? old->key : (old->data == (void *) -1 -- ? old->key : "???"); -+ str = runp->key; - -- dbg_log ("remove %s entry \"%s\"", serv2str[old->type], str); -+ dbg_log ("remove %s entry \"%s\"", serv2str[runp->type], str); -+ -+ runp = runp->next; - } -+ } -+ -+ /* And another run to free the data. */ -+ do -+ { -+ struct hashentry *old = head; - - /* Free the data structures. */ - if (old->data == (void *) -1) ---- glibc-2.3.2/nscd/connections.c 2003-01-16 02:52:01.000000000 -0500 -+++ glibc-2.3.2/nscd/connections.c 2003-05-12 12:13:06.000000000 -0400 -@@ -19,6 +19,7 @@ - 02111-1307 USA. */ - - #include -+#include - #include - #include - #include -@@ -47,6 +48,8 @@ - const char *server_user; - static uid_t server_uid; - static gid_t server_gid; -+const char *stat_user; -+uid_t stat_uid; - static gid_t *server_groups; - #ifndef NGROUPS - # define NGROUPS 32 -@@ -87,7 +90,7 @@ - }; - - /* The control data structures for the services. */ --static struct database dbs[lastdb] = -+struct database dbs[lastdb] = - { - [pwddb] = { - .lock = PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP, -@@ -130,23 +133,17 @@ - /* Socket for incoming connections. */ - static int sock; - -+/* Number of times clients had to wait. */ -+unsigned long int client_queued; -+ - - /* Initialize database information structures. */ - void --nscd_init (const char *conffile) -+nscd_init (void) - { - struct sockaddr_un sock_addr; - size_t cnt; - -- /* Read the configuration file. */ -- if (nscd_parse_file (conffile, dbs) != 0) -- { -- /* We couldn't read the configuration file. Disable all services -- by shutting down the srever. */ -- dbg_log (_("cannot read configuration file; this is fatal")); -- exit (1); -- } -- - /* Secure mode and unprivileged mode are incompatible */ - if (server_user != NULL && secure_in_use) - { -@@ -233,6 +230,7 @@ - close (sock); - } - -+ - static void - invalidate_cache (char *key) - { -@@ -256,10 +254,6 @@ - static void - handle_request (int fd, request_header *req, void *key, uid_t uid) - { -- if (__builtin_expect (debug_level, 0) > 0) -- dbg_log (_("handle_request: request received (Version = %d)"), -- req->version); -- - if (__builtin_expect (req->version, NSCD_VERSION) != NSCD_VERSION) - { - if (debug_level > 0) -@@ -296,7 +290,7 @@ - /* No, sent the prepared record. */ - if (TEMP_FAILURE_RETRY (write (fd, db->disabled_iov->iov_base, - db->disabled_iov->iov_len)) -- != db->disabled_iov->iov_len -+ != (ssize_t) db->disabled_iov->iov_len - && __builtin_expect (debug_level, 0) > 0) - { - /* We have problems sending the result. */ -@@ -309,7 +303,11 @@ - } - - /* Be sure we can read the data. */ -- pthread_rwlock_rdlock (&db->lock); -+ if (__builtin_expect (pthread_rwlock_tryrdlock (&db->lock) != 0, 0)) -+ { -+ ++db->rdlockdelayed; -+ pthread_rwlock_rdlock (&db->lock); -+ } - - /* See whether we can handle it from the cache. */ - cached = (struct hashentry *) cache_search (req->type, key, req->key_len, -@@ -380,20 +378,9 @@ - case GETSTAT: - case SHUTDOWN: - case INVALIDATE: -- /* Accept shutdown, getstat and invalidate only from root */ -- if (secure_in_use && uid == 0) -+ if (! secure_in_use) - { -- if (req->type == GETSTAT) -- send_stats (fd, dbs); -- else if (req->type == INVALIDATE) -- invalidate_cache (key); -- else -- termination_handler (0); -- } -- else -- { -- /* Some systems have no SO_PEERCRED implementation. They don't -- care about security so we don't as well. */ -+ /* Get the callers credentials. */ - #ifdef SO_PEERCRED - struct ucred caller; - socklen_t optlen = sizeof (caller); -@@ -404,18 +391,30 @@ - - dbg_log (_("error getting callers id: %s"), - strerror_r (errno, buf, sizeof (buf))); -+ break; - } -- else -- if (caller.uid == 0) -+ -+ uid = caller.uid; -+#else -+ /* Some systems have no SO_PEERCRED implementation. They don't -+ care about security so we don't as well. */ -+ uid = 0; - #endif -- { -- if (req->type == GETSTAT) -- send_stats (fd, dbs); -- else if (req->type == INVALIDATE) -- invalidate_cache (key); -- else -- termination_handler (0); -- } -+ } -+ -+ /* Accept shutdown, getstat and invalidate only from root. For -+ the stat call also allow the user specified in the config file. */ -+ if (req->type == GETSTAT) -+ { -+ if (uid == 0 || uid == stat_uid) -+ send_stats (fd, dbs); -+ } -+ else if (uid == 0) -+ { -+ if (req->type == INVALIDATE) -+ invalidate_cache (key); -+ else -+ termination_handler (0); - } - break; - -@@ -435,118 +434,163 @@ - long int my_number = (long int) p; - struct pollfd conn; - int run_prune = my_number < lastdb && dbs[my_number].enabled; -- time_t now = time (NULL); -- time_t next_prune = now + CACHE_PRUNE_INTERVAL; -- int timeout = run_prune ? 1000 * (next_prune - now) : -1; -+ time_t next_prune = run_prune ? time (NULL) + CACHE_PRUNE_INTERVAL : 0; -+ static unsigned long int nready; - - conn.fd = sock; - conn.events = POLLRDNORM; - - while (1) - { -- int nr = poll (&conn, 1, timeout); -+ int nr; -+ -+ /* One more thread available. */ -+ atomic_increment (&nready); -+ -+ no_conn: -+ if (run_prune) -+ do -+ { -+ time_t now = time (NULL); -+ int timeout = now < next_prune ? 1000 * (next_prune - now) : 0; -+ -+ nr = poll (&conn, 1, timeout); -+ -+ if (nr == 0) -+ { -+ /* The `poll' call timed out. It's time to clean up the -+ cache. */ -+ atomic_decrement (&nready); -+ assert (my_number < lastdb); -+ prune_cache (&dbs[my_number], time(NULL)); -+ now = time (NULL); -+ next_prune = now + CACHE_PRUNE_INTERVAL; -+ goto try_get; -+ } -+ } -+ while ((conn.revents & POLLRDNORM) == 0); -+ -+ got_data:; -+ /* We have a new incoming connection. Accept the connection. */ -+ int fd = TEMP_FAILURE_RETRY (accept (conn.fd, NULL, NULL)); -+ request_header req; -+ char buf[256]; -+ uid_t uid = -1; -+#ifdef SO_PEERCRED -+ pid_t pid = 0; -+#endif - -- if (nr == 0) -+ if (__builtin_expect (fd, 0) < 0) - { -- /* The `poll' call timed out. It's time to clean up the cache. */ -- assert (my_number < lastdb); -- now = time (NULL); -- prune_cache (&dbs[my_number], now); -- next_prune = now + CACHE_PRUNE_INTERVAL; -- timeout = 1000 * (next_prune - now); -+ dbg_log (_("while accepting connection: %s"), -+ strerror_r (errno, buf, sizeof (buf))); -+ goto no_conn; -+ } -+ -+ /* This thread is busy. */ -+ atomic_decrement (&nready); -+ -+ /* Now read the request. */ -+ if (__builtin_expect (TEMP_FAILURE_RETRY (read (fd, &req, sizeof (req))) -+ != sizeof (req), 0)) -+ { -+ if (debug_level > 0) -+ dbg_log (_("short read while reading request: %s"), -+ strerror_r (errno, buf, sizeof (buf))); -+ close (fd); - continue; - } - -- /* We have a new incoming connection. */ -- if (conn.revents & (POLLRDNORM|POLLERR|POLLHUP|POLLNVAL)) -+ /* Some systems have no SO_PEERCRED implementation. They don't -+ care about security so we don't as well. */ -+#ifdef SO_PEERCRED -+ if (secure_in_use) - { -- /* Accept the connection. */ -- int fd = TEMP_FAILURE_RETRY (accept (conn.fd, NULL, NULL)); -- request_header req; -- char buf[256]; -- uid_t uid = 0; -+ struct ucred caller; -+ socklen_t optlen = sizeof (caller); - -- if (__builtin_expect (fd, 0) < 0) -+ if (getsockopt (fd, SOL_SOCKET, SO_PEERCRED, &caller, &optlen) < 0) - { -- dbg_log (_("while accepting connection: %s"), -+ dbg_log (_("error getting callers id: %s"), - strerror_r (errno, buf, sizeof (buf))); -- continue; -- } -- -- /* Now read the request. */ -- if (__builtin_expect (TEMP_FAILURE_RETRY (read (fd, &req, -- sizeof (req))) -- != sizeof (req), 0)) -- { -- if (debug_level > 0) -- dbg_log (_("short read while reading request: %s"), -- strerror_r (errno, buf, sizeof (buf))); - close (fd); - continue; - } - -- /* Some systems have no SO_PEERCRED implementation. They don't -- care about security so we don't as well. */ --#ifdef SO_PEERCRED -- if (secure_in_use) -- { -- struct ucred caller; -- socklen_t optlen = sizeof (caller); -+ if (req.type < GETPWBYNAME || req.type > LASTDBREQ -+ || secure[serv2db[req.type]]) -+ uid = caller.uid; - -- if (getsockopt (fd, SOL_SOCKET, SO_PEERCRED, -- &caller, &optlen) < 0) -- { -- dbg_log (_("error getting callers id: %s"), -- strerror_r (errno, buf, sizeof (buf))); -- close (fd); -- continue; -- } -- -- if (req.type < GETPWBYNAME || req.type > LASTDBREQ -- || secure[serv2db[req.type]]) -- uid = caller.uid; -- } -+ pid = caller.pid; -+ } -+ else if (__builtin_expect (debug_level > 0, 0)) -+ { -+ struct ucred caller; -+ socklen_t optlen = sizeof (caller); -+ -+ if (getsockopt (fd, SOL_SOCKET, SO_PEERCRED, &caller, &optlen) == 0) -+ pid = caller.pid; -+ } - #endif - -- /* It should not be possible to crash the nscd with a silly -- request (i.e., a terribly large key). We limit the size -- to 1kb. */ -- if (__builtin_expect (req.key_len, 1) < 0 -- || __builtin_expect (req.key_len, 1) > 1024) -+ /* It should not be possible to crash the nscd with a silly -+ request (i.e., a terribly large key). We limit the size to 1kb. */ -+ if (__builtin_expect (req.key_len, 1) < 0 -+ || __builtin_expect (req.key_len, 1) > 1024) -+ { -+ if (debug_level > 0) -+ dbg_log (_("key length in request too long: %d"), req.key_len); -+ close (fd); -+ continue; -+ } -+ else -+ { -+ /* Get the key. */ -+ char keybuf[req.key_len]; -+ -+ if (__builtin_expect (TEMP_FAILURE_RETRY (read (fd, keybuf, -+ req.key_len)) -+ != req.key_len, 0)) - { - if (debug_level > 0) -- dbg_log (_("key length in request too long: %d"), req.key_len); -+ dbg_log (_("short read while reading request key: %s"), -+ strerror_r (errno, buf, sizeof (buf))); - close (fd); - continue; - } -- else -- { -- /* Get the key. */ -- char keybuf[req.key_len]; - -- if (__builtin_expect (TEMP_FAILURE_RETRY (read (fd, keybuf, -- req.key_len)) -- != req.key_len, 0)) -- { -- if (debug_level > 0) -- dbg_log (_("short read while reading request key: %s"), -- strerror_r (errno, buf, sizeof (buf))); -- close (fd); -- continue; -- } -+ if (__builtin_expect (debug_level, 0) > 0) -+ { -+#ifdef SO_PEERCRED -+ if (pid != 0) -+ dbg_log (_("\ -+handle_request: request received (Version = %d) from PID %ld"), -+ req.version, (long int) pid); -+ else -+#endif -+ dbg_log (_("\ -+handle_request: request received (Version = %d)"), req.version); -+ } - -- /* Phew, we got all the data, now process it. */ -- handle_request (fd, &req, keybuf, uid); -+ /* Phew, we got all the data, now process it. */ -+ handle_request (fd, &req, keybuf, uid); - -- /* We are done. */ -- close (fd); -- } -+ /* We are done. */ -+ close (fd); - } - -- if (run_prune) -+ /* Just determine whether any data is present. We do this to -+ measure whether clients are queued up. */ -+ try_get: -+ nr = poll (&conn, 1, 0); -+ if (nr != 0) - { -- now = time (NULL); -- timeout = now < next_prune ? 1000 * (next_prune - now) : 0; -+ if (nready == 0) -+ ++client_queued; -+ -+ atomic_increment (&nready); -+ -+ goto got_data; - } - } - } ---- glibc-2.3.2/nscd/grpcache.c 2003-01-15 05:27:22.000000000 -0500 -+++ glibc-2.3.2/nscd/grpcache.c 2003-04-28 08:20:36.000000000 -0400 -@@ -152,6 +152,7 @@ - /* There is no reason to go on. */ - error (EXIT_FAILURE, errno, _("while allocating cache entry")); - -+ data->resp.version = NSCD_VERSION; - data->resp.found = 1; - data->resp.gr_name_len = gr_name_len; - data->resp.gr_passwd_len = gr_passwd_len; ---- glibc-2.3.2/nscd/hstcache.c 2003-01-15 05:29:40.000000000 -0500 -+++ glibc-2.3.2/nscd/hstcache.c 2003-04-28 08:20:36.000000000 -0400 -@@ -167,6 +167,7 @@ - /* There is no reason to go on. */ - error (EXIT_FAILURE, errno, _("while allocating cache entry")); - -+ data->resp.version = NSCD_VERSION; - data->resp.found = 1; - data->resp.h_name_len = h_name_len; - data->resp.h_aliases_cnt = h_aliases_cnt; ---- glibc-2.3.2/nscd/nscd-client.h 2001-07-07 15:21:07.000000000 -0400 -+++ glibc-2.3.2/nscd/nscd-client.h 2003-04-24 20:05:58.000000000 -0400 -@@ -1,4 +1,4 @@ --/* Copyright (c) 1998, 1999, 2000 Free Software Foundation, Inc. -+/* Copyright (c) 1998, 1999, 2000, 2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Thorsten Kukuk , 1998. - -@@ -110,4 +110,7 @@ - } hst_response_header; - - -+/* Open socket connection to nscd server. */ -+extern int __nscd_open_socket (void) attribute_hidden; -+ - #endif /* nscd.h */ ---- glibc-2.3.2/nscd/nscd.c 2003-01-15 14:32:47.000000000 -0500 -+++ glibc-2.3.2/nscd/nscd.c 2003-05-12 12:13:06.000000000 -0400 -@@ -30,6 +30,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -41,6 +42,7 @@ - - #include "dbg_log.h" - #include "nscd.h" -+#include "../nss/nsswitch.h" - #include - - /* Get libc version number. */ -@@ -71,6 +73,8 @@ - int secure_in_use; - static const char *conffile = _PATH_NSCDCONF; - -+time_t start_time; -+ - static int check_pid (const char *file); - static int write_pid (const char *file); - -@@ -106,6 +110,9 @@ - options, parse_opt, NULL, doc, - }; - -+/* True if only statistics are requested. */ -+static bool get_stats; -+ - int - main (int argc, char **argv) - { -@@ -126,10 +133,27 @@ - exit (EXIT_FAILURE); - } - -+ /* Read the configuration file. */ -+ if (nscd_parse_file (conffile, dbs) != 0) -+ { -+ /* We couldn't read the configuration file. We don't start the -+ server. */ -+ dbg_log (_("cannot read configuration file; this is fatal")); -+ exit (1); -+ } -+ -+ /* Do we only get statistics? */ -+ if (get_stats) -+ /* Does not return. */ -+ receive_print_stats (); -+ - /* Check if we are already running. */ - if (check_pid (_PATH_NSCDPID)) - error (EXIT_FAILURE, 0, _("already running")); - -+ /* Remember when we started. */ -+ start_time = time (NULL); -+ - /* Behave like a daemon. */ - if (go_background) - { -@@ -175,7 +199,7 @@ - while ((dirent = readdir64 (d)) != NULL) - { - char *endp; -- unsigned long int fdn = strtoul (dirent->d_name, &endp, 10); -+ long int fdn = strtol (dirent->d_name, &endp, 10); - - if (*endp == '\0' && fdn != dfdn && fdn >= min_close_fd) - close ((int) fdn); -@@ -213,8 +237,11 @@ - /* Cleanup files created by a previous `bind'. */ - unlink (_PATH_NSCDSOCKET); - -+ /* Make sure we do not get recursive calls. */ -+ __nss_disable_nscd (); -+ - /* Init databases. */ -- nscd_init (conffile); -+ nscd_init (); - - /* Handle incoming requests */ - start_threads (); -@@ -259,10 +286,8 @@ - } - - case 'g': -- if (getuid () != 0) -- error (EXIT_FAILURE, 0, _("Only root is allowed to use this option!")); -- receive_print_stats (); -- /* Does not return. */ -+ get_stats = true; -+ break; - - case 'i': - if (getuid () != 0) ---- glibc-2.3.2/nscd/nscd.conf 2000-04-30 00:25:38.000000000 -0400 -+++ glibc-2.3.2/nscd/nscd.conf 2003-05-12 12:13:06.000000000 -0400 -@@ -10,6 +10,7 @@ - # threads <#threads to use> - # server-user - # server-user is ignored if nscd is started with -S parameters -+# stat-user - # - # enable-cache - # positive-time-to-live