diff -Nrc2 readline-4.0/CHANGELOG readline-4.1/CHANGELOG
*** readline-4.0/CHANGELOG Fri Feb 19 11:38:10 1999
--- readline-4.1/CHANGELOG Fri Feb 4 12:30:39 2000
***************
*** 215,216 ****
--- 215,339 ----
[readline-4.0 released]
+
+ 3/11
+ ----
+ doc/Makefile.in
+ - removed references to HTMLTOC, since separate HTML table-of-contents
+ files are no longer created
+
+ examples/Makefile.in
+ - remove `*.exe' in clean target for MS-DOS
+
+ Makefile.in
+ - make `readline' target depend on ./libreadline.a
+ - configure now substitutes TERMCAP_LIB into Makefile.in
+ - use ${TERMCAP_LIB} instead of -ltermcap in recipe for `readline'
+ - clean target now removes readline and readline.exe in case they
+ get built
+
+ configure.in
+ - use `pwd.exe' to set BUILD_DIR on MS-DOS DJGPP
+
+ 3/15
+ ----
+ support/shlib-install
+ - Irix 5.x and Irix 6.x should install shared libraries like Solaris 2
+ - changes for installing on hp-ux 1[01].x
+
+ 3/23
+ ----
+ configure.in
+ - make sure that the $CC argument to shobj-conf is quoted
+
+ 4/8
+ ---
+
+ xmalloc.h, rlprivate.h, rlshell.h
+ - new files
+
+ Makefile.in,shlib/Makefile.in
+ - add dependencies on xmalloc.h, rlshell.h
+ - add xmalloc.h, rlprivate.h, rlshell.h to list of header files
+
+ MANIFEST
+ - add xmalloc.h, rlprivate.h, rlshell.h
+
+ 4/9
+ ---
+ Makefile.in,shlib/Makefile.in
+ - add dependencies on rlprivate.h
+
+ 4/13
+ ----
+ doc/Makefile.in
+ - add variable, PSDVI, which is the desired resolution of the
+ generated postscript files. Set to 300 because I don't have
+ any 600-dpi printers
+ - set LANGUAGE= before calling makeinfo, so messages are in English
+ - add rluserman.{info,dvi,ps,html} to appropriate variables
+ - add rules to create rluserman.{info,dvi,ps,html}
+ - install and uninstall rluserman.info, but don't update the directory
+ file in $(infodir) yet
+
+ MANIFEST
+ - add doc/rluserman.{texinfo,info,dvi,ps,html}
+
+ 4/30
+ ----
+ configure.in
+ - updated library version to 4.1
+
+ 5/3
+ ---
+ configure.in
+ - SHLIB_MAJOR and SHLIB_MINOR shared library version numbers are
+ constructed from $LIBRARY_VERSION and substituted into Makefiles
+
+ 5/5
+ ---
+ support/shlib-install
+ - OSF/1 installs shared libraries like Solaris
+
+ Makefile.in
+ - broke the header file install and uninstall into two new targets:
+ install-headers and uninstall-headers
+ - install and uninstall depend on install-headers and uninstall-headers
+ respectively
+ - changed install-shared and uninstall-shared targets to depend on
+ install-headers and uninstall-headers, respectively, so users may
+ choose to install only the shared libraries. I'm not sure about
+ the uninstall one yet -- maybe it should check whether or not
+ the static libraries are installed and not remove the header files
+ if they are
+
+ 9/3
+ ---
+ configure.in, config.h.in
+ - added test for memmove (for later use)
+ - changed version to 4.1-beta1
+
+ 9/13
+ ----
+ examples/rlfe.c
+ - Per Bothner's `rlfe' readline front-end program
+
+ examples/Makefile.in
+ - added rules to build rlfe
+
+ 9/21
+ ----
+ support/shlib-install
+ - changes to handle FreeBSD-3.x elf or a.out shared libraries, which
+ have different semantics and need different naming conventions
+
+ 1/24/2000
+ ---------
+ doc/Makefile.in
+ - remove *.bt and *.bts on `make clean'
+
+ 2/4
+ ---
+
+
+ configure.in
+ - changed LIBVERSION to 4.1-beta5
diff -Nrc2 readline-4.0/CHANGES readline-4.1/CHANGES
*** readline-4.0/CHANGES Fri Feb 19 11:46:40 1999
--- readline-4.1/CHANGES Wed Sep 22 12:07:50 1999
***************
*** 1,2 ****
--- 1,110 ----
+ This document details the changes between this version, readline-4.1,
+ and the previous version, readline-4.0.
+
+ 1. Changes to Readline
+
+ a. Changed the HTML documents so that the table-of-contents is no longer
+ a separate file.
+
+ b. Changes to the shared object configuration for: Irix 5.x, Irix 6.x,
+ OSF/1.
+
+ c. The shared library major and minor versions are now constructed
+ automatically by configure and substituted into the makefiles.
+
+ d. It's now possible to install the shared libraries separately from the
+ static libraries.
+
+ e. The history library tries to truncate the history file only if it is a
+ regular file.
+
+ f. A bug that caused _rl_dispatch to address negative array indices on
+ systems with signed chars was fixed.
+
+ g. rl-yank-nth-arg now leaves the history position the same as when it was
+ called.
+
+ h. Changes to the completion code to handle MS-DOS drive-letter:pathname
+ filenames.
+
+ i. Completion is now case-insensitive by default on MS-DOS.
+
+ j. Fixes to the history file manipulation code for MS-DOS.
+
+ k. Readline attempts to bind the arrow keys to appropriate defaults on MS-DOS.
+
+ l. Some fixes were made to the redisplay code for better operation on MS-DOS.
+
+ m. The quoted-insert code will now insert tty special chars like ^C.
+
+ n. A bug was fixed that caused the display code to reference memory before
+ the start of the prompt string.
+
+ o. More support for __EMX__ (OS/2).
+
+ p. A bug was fixed in readline's signal handling that could cause infinite
+ recursion in signal handlers.
+
+ q. A bug was fixed that caused the point to be less than zero when rl_forward
+ was given a very large numeric argument.
+
+ r. The vi-mode code now gets characters via the application-settable value
+ of rl_getc_function rather than calling rl_getc directly.
+
+ s. The history file code now uses O_BINARY mode when reading and writing
+ the history file on cygwin32.
+
+ t. Fixed a bug in the redisplay code for lines with more than 256 line
+ breaks.
+
+ u. A bug was fixed which caused invisible character markers to not be
+ stripped from the prompt string if the terminal was in no-echo mode.
+
+ v. Readline no longer tries to get the variables it needs for redisplay
+ from the termcap entry if the calling application has specified its
+ own redisplay function. Readline treats the terminal as `dumb' in
+ this case.
+
+ w. Fixes to the SIGWINCH code so that a multiple-line prompt with escape
+ sequences is redrawn correctly.
+
+ x. Changes to the install and install-shared targets so that the libraries
+ and header files are installed separately.
+
+ 2. New Features in Readline
+
+ a. A new Readline `user manual' is in doc/rluserman.texinfo.
+
+ b. Parentheses matching is now always compiled into readline, and enabled
+ or disabled when the value of the `blink-matching-paren' variable is
+ changed.
+
+ c. MS-DOS systems now use ~/_inputrc as the last-ditch inputrc filename.
+
+ d. MS-DOS systems now use ~/_history as the default history file.
+
+ e. history-search-{forward,backward} now leave the point at the end of the
+ line when the string to search for is empty, like
+ {reverse,forward}-search-history.
+
+ f. history-search-{forward,backward} now leave the last history line found
+ in the readline buffer if the second or subsequent search fails.
+
+ g. New function for use by applications: rl_on_new_line_with_prompt, used
+ when an application displays the prompt itself before calling readline().
+
+ h. New variable for use by applications: rl_already_prompted. An application
+ that displays the prompt itself before calling readline() must set this to
+ a non-zero value.
+
+ i. A new variable, rl_gnu_readline_p, always 1. The intent is that an
+ application can verify whether or not it is linked with the `real'
+ readline library or some substitute.
+
+ j. Per Bothner's `rlfe' (pronounced `Ralphie') readline front-end program
+ is included in the examples subdirectory, though it is not built
+ by default.
+
+ -------------------------------------------------------------------------------
This document details the changes between this version, readline-4.0,
and the previous version, readline-2.2.
diff -Nrc2 readline-4.0/COPYING readline-4.1/COPYING
*** readline-4.0/COPYING Wed Aug 10 14:46:06 1994
--- readline-4.1/COPYING Thu Aug 5 10:46:22 1999
***************
*** 3,7 ****
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
! 675 Mass Ave, Cambridge, MA 02139, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
--- 3,7 ----
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
! 59 Temple Place, Suite 330, Boston, MA 02111 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
***************
*** 306,310 ****
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
! Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Also add information on how to contact you by electronic and paper mail.
--- 306,310 ----
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
Also add information on how to contact you by electronic and paper mail.
diff -Nrc2 readline-4.0/MANIFEST readline-4.1/MANIFEST
*** readline-4.0/MANIFEST Thu Dec 31 12:07:24 1998
--- readline-4.1/MANIFEST Mon Sep 13 14:09:41 1999
***************
*** 12,17 ****
CHANGELOG f
CHANGES f
aclocal.m4 f
- acconfig.h f
config.h.in f
configure f
--- 12,17 ----
CHANGELOG f
CHANGES f
+ USAGE f
aclocal.m4 f
config.h.in f
configure f
***************
*** 29,32 ****
--- 29,34 ----
rlconf.h f
rldefs.h f
+ rlprivate.h f
+ rlshell.h f
rlstdc.h f
rltty.h f
***************
*** 34,37 ****
--- 36,40 ----
tcap.h f
tilde.h f
+ xmalloc.h f
bind.c f
complete.c f
***************
*** 78,81 ****
--- 81,85 ----
doc/rltech.texinfo f
doc/rluser.texinfo f
+ doc/rluserman.texinfo f
doc/hist.texinfo f
doc/hstech.texinfo f
***************
*** 85,90 ****
--- 89,96 ----
doc/texi2html f
examples/Makefile.in f
+ examples/excallback.c f
examples/fileman.c f
examples/manexamp.c f
+ examples/rlfe.c f
examples/rltest.c f
examples/rl.c f
***************
*** 95,103 ****
--- 101,113 ----
doc/readline.ps f
doc/history.ps f
+ doc/rluserman.ps f
doc/readline.dvi f
doc/history.dvi f
+ doc/rluserman.dvi f
doc/readline.info f
doc/history.info f
+ doc/rluserman.info f
doc/readline.html f
doc/history.html f
+ doc/rluserman.html f
doc/readline.0 f
diff -Nrc2 readline-4.0/Makefile.in readline-4.1/Makefile.in
*** readline-4.0/Makefile.in Thu Feb 18 12:24:11 1999
--- readline-4.1/Makefile.in Wed Dec 29 17:02:40 1999
***************
*** 15,19 ****
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
! # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
RL_LIBRARY_VERSION = @LIBVERSION@
RL_LIBRARY_NAME = readline
--- 15,19 ----
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
! # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
RL_LIBRARY_VERSION = @LIBVERSION@
RL_LIBRARY_NAME = readline
***************
*** 61,64 ****
--- 61,66 ----
LOCAL_DEFS = @LOCAL_DEFS@
+ TERMCAP_LIB = @TERMCAP_LIB@
+
# For libraries which include headers from other libraries.
INCLUDES = -I. -I$(srcdir) -I$(includedir)
***************
*** 89,93 ****
HSOURCES = readline.h rldefs.h chardefs.h keymaps.h history.h histlib.h \
posixstat.h posixdir.h posixjmp.h tilde.h rlconf.h rltty.h \
! ansi_stdlib.h tcap.h rlstdc.h
HISTOBJ = history.o histexpand.o histfile.o histsearch.o shell.o
--- 91,95 ----
HSOURCES = readline.h rldefs.h chardefs.h keymaps.h history.h histlib.h \
posixstat.h posixdir.h posixjmp.h tilde.h rlconf.h rltty.h \
! ansi_stdlib.h tcap.h rlstdc.h xmalloc.h rlprivate.h rlshell.h
HISTOBJ = history.o histexpand.o histfile.o histsearch.o shell.o
***************
*** 116,119 ****
--- 118,123 ----
all: static
+ everything: static shared examples
+
static: $(STATIC_LIBS)
***************
*** 128,133 ****
-test -n "$(RANLIB)" && $(RANLIB) $@
! readline: $(OBJECTS) readline.h rldefs.h chardefs.h
! $(CC) $(CCFLAGS) -o $@ ./examples/rl.c ./libreadline.a -ltermcap
Makefile makefile: config.status $(srcdir)/Makefile.in
--- 132,137 ----
-test -n "$(RANLIB)" && $(RANLIB) $@
! readline: $(OBJECTS) readline.h rldefs.h chardefs.h ./libreadline.a
! $(CC) $(CCFLAGS) -o $@ ./examples/rl.c ./libreadline.a ${TERMCAP_LIB}
Makefile makefile: config.status $(srcdir)/Makefile.in
***************
*** 148,153 ****
echo > $@
! $(srcdir)/configure: $(srcdir)/configure.in ## Comment-me-out in distribution
! cd $(srcdir) && autoconf ## Comment-me-out in distribution
--- 152,157 ----
echo > $@
! #$(srcdir)/configure: $(srcdir)/configure.in ## Comment-me-out in distribution
! # cd $(srcdir) && autoconf ## Comment-me-out in distribution
***************
*** 166,173 ****
force:
! install: installdirs $(STATIC_LIBS)
for f in ${INSTALLED_HEADERS}; do \
$(INSTALL_DATA) $(srcdir)/$$f $(includedir)/readline ; \
done
-$(MV) $(libdir)/libreadline.a $(libdir)/libreadline.old
$(INSTALL_DATA) libreadline.a $(libdir)/libreadline.a
--- 170,185 ----
force:
! install-headers: installdirs ${INSTALLED_HEADERS}
for f in ${INSTALLED_HEADERS}; do \
$(INSTALL_DATA) $(srcdir)/$$f $(includedir)/readline ; \
done
+
+ uninstall-headers:
+ -test -n "$(includedir)" && cd $(includedir)/readline && \
+ ${RM} ${INSTALLED_HEADERS}
+
+ maybe-uninstall-headers: uninstall-headers
+
+ install: installdirs $(STATIC_LIBS) install-headers
-$(MV) $(libdir)/libreadline.a $(libdir)/libreadline.old
$(INSTALL_DATA) libreadline.a $(libdir)/libreadline.a
***************
*** 185,198 ****
$(includedir)/readline $(libdir) $(infodir) $(man3dir)
! uninstall:
! -test -n "$(includedir)" && cd $(includedir)/readline && \
! ${RM} ${INSTALLED_HEADERS}
-test -n "$(libdir)" && cd $(libdir) && \
${RM} libreadline.a libreadline.old libhistory.a libhistory.old $(SHARED_LIBS)
! install-shared: installdirs shared
-( cd shlib ; ${MAKE} ${MFLAGS} install )
! uninstall-shared:
-( cd shlib; ${MAKE} ${MFLAGS} uninstall )
--- 197,208 ----
$(includedir)/readline $(libdir) $(infodir) $(man3dir)
! uninstall: uninstall-headers
-test -n "$(libdir)" && cd $(libdir) && \
${RM} libreadline.a libreadline.old libhistory.a libhistory.old $(SHARED_LIBS)
! install-shared: installdirs install-headers shared
-( cd shlib ; ${MAKE} ${MFLAGS} install )
! uninstall-shared: maybe-uninstall-headers
-( cd shlib; ${MAKE} ${MFLAGS} uninstall )
***************
*** 205,208 ****
--- 215,219 ----
clean: force
$(RM) $(OBJECTS) $(STATIC_LIBS)
+ $(RM) readline readline.exe
-( cd shlib && $(MAKE) $(MFLAGS) $@ )
-( cd doc && $(MAKE) $(MFLAGS) $@ )
***************
*** 232,236 ****
@echo Readline distributions are created using $(srcdir)/support/mkdist.
@echo Here is a sample of the necessary commands:
! @echo bash $(srcdir)/support/mkdist -m $(srcdir)/MANIFEST -s $(srcdir) -r $(RL_LIBRARY_NAME)-$(RL_LIBRARY_VERSION)
@echo tar cf $(RL_LIBRARY_NAME)-${RL_LIBRARY_VERSION}.tar ${RL_LIBRARY_NAME}-$(RL_LIBRARY_VERSION)
@echo gzip $(RL_LIBRARY_NAME)-$(RL_LIBRARY_VERSION).tar
--- 243,247 ----
@echo Readline distributions are created using $(srcdir)/support/mkdist.
@echo Here is a sample of the necessary commands:
! @echo bash $(srcdir)/support/mkdist -m $(srcdir)/MANIFEST -s $(srcdir) -r $(RL_LIBRARY_NAME) $(RL_LIBRARY_VERSION)
@echo tar cf $(RL_LIBRARY_NAME)-${RL_LIBRARY_VERSION}.tar ${RL_LIBRARY_NAME}-$(RL_LIBRARY_VERSION)
@echo gzip $(RL_LIBRARY_NAME)-$(RL_LIBRARY_VERSION).tar
***************
*** 291,294 ****
--- 302,307 ----
nls.o: ansi_stdlib.h
nls.o: rldefs.h ${BUILD_DIR}/config.h rlconf.h
+ nls.o: readline.h keymaps.h chardefs.h tilde.h
+ nls.o: history.h rlstdc.h
parens.o: rlconf.h
parens.o: ${BUILD_DIR}/config.h
***************
*** 328,331 ****
--- 341,392 ----
xmalloc.o: ${BUILD_DIR}/config.h
xmalloc.o: ansi_stdlib.h
+
+ bind.o: rlshell.h
+ histfile.o: rlshell.h
+ nls.o: rlshell.h
+ readline.o: rlshell.h
+ shell.o: rlshell.h
+ terminal.o: rlshell.h
+ histexpand.o: rlshell.h
+
+ bind.o: rlprivate.h
+ callback.o: rlprivate.h
+ complete.o: rlprivate.h
+ display.o: rlprivate.h
+ input.o: rlprivate.h
+ isearch.o: rlprivate.h
+ kill.o: rlprivate.h
+ macro.o: rlprivate.h
+ nls.o: rlprivate.h
+ parens.o: rlprivate.h
+ readline.o: rlprivate.h
+ rltty.o: rlprivate.h
+ search.o: rlprivate.h
+ signals.o: rlprivate.h
+ terminal.o: rlprivate.h
+ undo.o: rlprivate.h
+ util.o: rlprivate.h
+ vi_mode.o: rlprivate.h
+
+ bind.o: xmalloc.h
+ complete.o: xmalloc.h
+ display.o: xmalloc.h
+ funmap.o: xmalloc.h
+ histexpand.o: xmalloc.h
+ histfile.o: xmalloc.h
+ history.o: xmalloc.h
+ input.o: xmalloc.h
+ isearch.o: xmalloc.h
+ keymaps.o: xmalloc.h
+ kill.o: xmalloc.h
+ macro.o: xmalloc.h
+ readline.o: xmalloc.h
+ savestring.o: xmalloc.h
+ search.o: xmalloc.h
+ shell.o: xmalloc.h
+ tilde.o: xmalloc.h
+ tilde.o: xmalloc.h
+ util.o: xmalloc.h
+ vi_mode.o: xmalloc.h
readline.o: $(srcdir)/readline.c
diff -Nrc2 readline-4.0/README readline-4.1/README
*** readline-4.0/README Tue Dec 22 13:40:27 1998
--- readline-4.1/README Fri Mar 17 16:53:06 2000
***************
*** 2,6 ****
============
! This is the Gnu Readline library, version 4.0.
The Readline library provides a set of functions for use by applications
--- 2,6 ----
============
! This is the Gnu Readline library, version 4.1.
The Readline library provides a set of functions for use by applications
diff -Nrc2 readline-4.0/USAGE readline-4.1/USAGE
*** readline-4.0/USAGE Wed Dec 31 19:00:00 1969
--- readline-4.1/USAGE Fri Jul 23 10:09:36 1999
***************
*** 0 ****
--- 1,37 ----
+ From rms@gnu.org Thu Jul 22 20:37:55 1999
+ Flags: 10
+ Return-Path: rms@gnu.org
+ Received: from arthur.INS.CWRU.Edu (root@arthur.INS.CWRU.Edu [129.22.8.215]) by odin.INS.CWRU.Edu with ESMTP (8.8.6+cwru/CWRU-2.4-ins)
+ id UAA25349; Thu, 22 Jul 1999 20:37:54 -0400 (EDT) (from rms@gnu.org for )
+ Received: from nike.ins.cwru.edu (root@nike.INS.CWRU.Edu [129.22.8.219]) by arthur.INS.CWRU.Edu with ESMTP (8.8.8+cwru/CWRU-3.6)
+ id UAA05311; Thu, 22 Jul 1999 20:37:51 -0400 (EDT) (from rms@gnu.org for )
+ Received: from pele.santafe.edu (pele.santafe.edu [192.12.12.119]) by nike.ins.cwru.edu with ESMTP (8.8.7/CWRU-2.5-bsdi)
+ id UAA13350; Thu, 22 Jul 1999 20:37:50 -0400 (EDT) (from rms@gnu.org for )
+ Received: from wijiji.santafe.edu (wijiji [192.12.12.5])
+ by pele.santafe.edu (8.9.1/8.9.1) with ESMTP id SAA10831
+ for ; Thu, 22 Jul 1999 18:37:47 -0600 (MDT)
+ Received: (from rms@localhost)
+ by wijiji.santafe.edu (8.9.1b+Sun/8.9.1) id SAA01089;
+ Thu, 22 Jul 1999 18:37:46 -0600 (MDT)
+ Date: Thu, 22 Jul 1999 18:37:46 -0600 (MDT)
+ Message-Id: <199907230037.SAA01089@wijiji.santafe.edu>
+ X-Authentication-Warning: wijiji.santafe.edu: rms set sender to rms@gnu.org using -f
+ From: Richard Stallman
+ To: chet@nike.ins.cwru.edu
+ Subject: Use of Readline
+ Reply-to: rms@gnu.org
+
+ I think Allbery's suggestion is a good one. So please add this text
+ in a suitable place. Please don't put it in the GPL itself; that
+ should be the same as the GPL everywhere else. Putting it in the
+ README and/or the documentation would be a good idea.
+
+
+ ======================================================================
+ Our position on the use of Readline through a shared-library linking
+ mechanism is that there is no legal difference between shared-library
+ linking and static linking--either kind of linking combines various
+ modules into a single larger work. The conditions for using Readline
+ in a larger work are stated in section 3 of the GNU GPL.
+
+
diff -Nrc2 readline-4.0/acconfig.h readline-4.1/acconfig.h
*** readline-4.0/acconfig.h Tue Apr 11 10:37:02 1995
--- readline-4.1/acconfig.h Wed Dec 31 19:00:00 1969
***************
*** 1,30 ****
- /* acconfig.h
- This file is in the public domain.
-
- Descriptive text for the C preprocessor macros that
- the distributed Autoconf macros can define.
- No software package will use all of them; autoheader copies the ones
- your configure.in uses into your configuration header file templates.
-
- The entries are in sort -df order: alphabetical, case insensitive,
- ignoring punctuation (such as underscores). Although this order
- can split up related entries, it makes it easier to check whether
- a given entry is in the file.
-
- Leave the following blank line there!! Autoheader needs it. */
-
-
- /* Definitions pulled in from aclocal.m4. */
- #undef VOID_SIGHANDLER
-
- #undef TIOCGWINSZ_IN_SYS_IOCTL
-
- #undef TIOCSTAT_IN_SYS_IOCTL
-
- #undef HAVE_GETPW_DECLS
-
-
- /* Leave that blank line there!! Autoheader needs it.
- If you're adding to this file, keep in mind:
- The entries are in sort -df order: alphabetical, case insensitive,
- ignoring punctuation (such as underscores). */
--- 0 ----
diff -Nrc2 readline-4.0/aclocal.m4 readline-4.1/aclocal.m4
*** readline-4.0/aclocal.m4 Wed Dec 30 11:06:41 1998
--- readline-4.1/aclocal.m4 Tue Feb 22 11:41:01 2000
***************
*** 317,327 ****
{
DIR *dir;
! int fd;
! unlink("/tmp/not_a_directory");
! fd = open("/tmp/not_a_directory", O_WRONLY|O_CREAT, 0666);
write(fd, "\n", 1);
close(fd);
! dir = opendir("/tmp/not_a_directory");
! unlink("/tmp/not_a_directory");
exit (dir == 0);
}], bash_cv_opendir_not_robust=yes,bash_cv_opendir_not_robust=no,
--- 317,333 ----
{
DIR *dir;
! int fd, err;
! err = mkdir("/tmp/bash-aclocal", 0700);
! if (err < 0) {
! perror("mkdir");
! exit(1);
! }
! unlink("/tmp/bash-aclocal/not_a_directory");
! fd = open("/tmp/bash-aclocal/not_a_directory", O_WRONLY|O_CREAT|O_EXCL, 0666);
write(fd, "\n", 1);
close(fd);
! dir = opendir("/tmp/bash-aclocal/not_a_directory");
! unlink("/tmp/bash-aclocal/not_a_directory");
! rmdir("/tmp/bash-aclocal");
exit (dir == 0);
}], bash_cv_opendir_not_robust=yes,bash_cv_opendir_not_robust=no,
***************
*** 355,377 ****
])
! AC_DEFUN(BASH_TYPE_INT32_T,
[
if test "$ac_cv_sizeof_int" = 4; then
! AC_CHECK_TYPE(int32_t, int)
elif test "$ac_cv_sizeof_long" = 4; then
! AC_CHECK_TYPE(int32_t, long)
else
! AC_CHECK_TYPE(int32_t, int)
fi
])
! AC_DEFUN(BASH_TYPE_U_INT32_T,
[
if test "$ac_cv_sizeof_int" = 4; then
! AC_CHECK_TYPE(u_int32_t, unsigned int)
elif test "$ac_cv_sizeof_long" = 4; then
! AC_CHECK_TYPE(u_int32_t, unsigned long)
else
! AC_CHECK_TYPE(u_int32_t, unsigned int)
fi
])
--- 361,417 ----
])
! dnl
! dnl A signed 16-bit integer quantity
! dnl
! AC_DEFUN(BASH_TYPE_BITS16_T,
! [
! if test "$ac_cv_sizeof_short" = 2; then
! AC_CHECK_TYPE(bits16_t, short)
! elif test "$ac_cv_sizeof_char" = 2; then
! AC_CHECK_TYPE(bits16_t, char)
! else
! AC_CHECK_TYPE(bits16_t, short)
! fi
! ])
!
! dnl
! dnl An unsigned 16-bit integer quantity
! dnl
! AC_DEFUN(BASH_TYPE_U_BITS16_T,
! [
! if test "$ac_cv_sizeof_short" = 2; then
! AC_CHECK_TYPE(u_bits16_t, unsigned short)
! elif test "$ac_cv_sizeof_char" = 2; then
! AC_CHECK_TYPE(u_bits16_t, unsigned char)
! else
! AC_CHECK_TYPE(u_bits16_t, unsigned short)
! fi
! ])
!
! dnl
! dnl A signed 32-bit integer quantity
! dnl
! AC_DEFUN(BASH_TYPE_BITS32_T,
[
if test "$ac_cv_sizeof_int" = 4; then
! AC_CHECK_TYPE(bits32_t, int)
elif test "$ac_cv_sizeof_long" = 4; then
! AC_CHECK_TYPE(bits32_t, long)
else
! AC_CHECK_TYPE(bits32_t, int)
fi
])
! dnl
! dnl An unsigned 32-bit integer quantity
! dnl
! AC_DEFUN(BASH_TYPE_U_BITS32_T,
[
if test "$ac_cv_sizeof_int" = 4; then
! AC_CHECK_TYPE(u_bits32_t, unsigned int)
elif test "$ac_cv_sizeof_long" = 4; then
! AC_CHECK_TYPE(u_bits32_t, unsigned long)
else
! AC_CHECK_TYPE(u_bits32_t, unsigned int)
fi
])
***************
*** 388,391 ****
--- 428,434 ----
])
+ dnl
+ dnl A signed 64-bit quantity
+ dnl
AC_DEFUN(BASH_TYPE_BITS64_T,
[
***************
*** 428,431 ****
--- 471,488 ----
])
+ AC_DEFUN(BASH_FUNC_INET_ATON,
+ [
+ AC_CACHE_CHECK([for inet_aton], bash_cv_func_inet_aton,
+ [AC_TRY_LINK([
+ #include
+ #include
+ #include
+ struct in_addr ap;], [ inet_aton("127.0.0.1", &ap); ],
+ bash_cv_func_inet_aton=yes, bash_cv_func_inet_aton=no)])
+ if test $bash_cv_func_inet_aton = yes; then
+ AC_DEFINE(HAVE_INET_ATON)
+ fi
+ ])
+
AC_DEFUN(BASH_STRUCT_TERMIOS_LDISC,
[AC_MSG_CHECKING([for a c_line member of struct termios])
***************
*** 846,850 ****
main()
{
! int fd;
#if defined (HAVE_MKFIFO)
--- 903,907 ----
main()
{
! int fd, err;
#if defined (HAVE_MKFIFO)
***************
*** 859,868 ****
exit (1);
#endif
!
! fd = mknod ("/tmp/sh-np-autoconf", 0666 | S_IFIFO, 0);
! if (fd == -1)
exit (1);
close(fd);
! unlink ("/tmp/sh-np-autoconf");
exit(0);
}], bash_cv_sys_named_pipes=present, bash_cv_sys_named_pipes=missing,
--- 916,932 ----
exit (1);
#endif
! err = mkdir("/tmp/bash-aclocal", 0700);
! if (err < 0) {
! perror ("mkdir");
! exit(1);
! }
! fd = mknod ("/tmp/bash-aclocal/sh-np-autoconf", 0666 | S_IFIFO, 0);
! if (fd == -1) {
! rmdir ("/tmp/bash-aclocal");
exit (1);
+ }
close(fd);
! unlink ("/tmp/bash-aclocal/sh-np-autoconf");
! rmdir ("/tmp/bash-aclocal");
exit(0);
}], bash_cv_sys_named_pipes=present, bash_cv_sys_named_pipes=missing,
***************
*** 1038,1047 ****
])
dnl
! dnl Check for the presence of getpeername (the only networking function
! dnl bash currently requires) in libsocket. If libsocket is present,
! dnl check for libnsl and add it to LIBS if it's there, since most
! dnl systems with libsocket require linking with libnsl as well.
! dnl This should only be called if getpeername was not found in libc.
dnl
AC_DEFUN(BASH_CHECK_SOCKLIB,
--- 1102,1131 ----
])
+ AC_DEFUN(BASH_CHECK_DEV_STDIN,
+ [AC_MSG_CHECKING(whether /dev/stdin stdout stderr are available)
+ AC_CACHE_VAL(bash_cv_dev_stdin,
+ [if test -d /dev/fd && test -r /dev/stdin; then
+ bash_cv_dev_stdin=present
+ elif test -d /proc/self/fd && test -r /dev/stdin; then
+ bash_cv_dev_stdin=present
+ else
+ bash_cv_dev_stdin=absent
+ fi
+ ])
+ AC_MSG_RESULT($bash_cv_dev_stdin)
+ if test $bash_cv_dev_stdin = "present"; then
+ AC_DEFINE(HAVE_DEV_STDIN)
+ fi
+ ])
+
dnl
! dnl Check for the presence of getpeername in libsocket.
! dnl If libsocket is present, check for libnsl and add it to LIBS if
! dnl it's there, since most systems with libsocket require linking
! dnl with libnsl as well. This should only be called if getpeername
! dnl was not found in libc.
! dnl
! dnl NOTE: IF WE FIND GETPEERNAME, WE ASSUME THAT WE HAVE BIND/CONNECT
! dnl AS WELL
dnl
AC_DEFUN(BASH_CHECK_SOCKLIB,
***************
*** 1085,1088 ****
--- 1169,1198 ----
])
+ dnl
+ dnl This needs BASH_CHECK_SOCKLIB, but since that's not called on every
+ dnl system, we can't use AC_PREREQ
+ dnl
+ AC_DEFUN(BASH_FUNC_GETHOSTBYNAME,
+ [if test "X$bash_cv_have_gethostbyname" = "X"; then
+ _bash_needmsg=yes
+ else
+ AC_MSG_CHECKING(for gethostbyname in socket library)
+ _bash_needmsg=
+ fi
+ AC_CACHE_VAL(bash_cv_have_gethostbyname,
+ [AC_TRY_LINK([#include ],
+ [ struct hostent *hp;
+ hp = gethostbyname("localhost");
+ ], bash_cv_have_gethostbyname=yes, bash_cv_have_gethostbyname=no)]
+ )
+ if test "X$_bash_needmsg" = Xyes; then
+ AC_MSG_CHECKING(for gethostbyname in socket library)
+ fi
+ AC_MSG_RESULT($bash_cv_have_gethostbyname)
+ if test "$bash_cv_have_gethostbyname" = yes; then
+ AC_DEFINE(HAVE_GETHOSTBYNAME)
+ fi
+ ])
+
AC_DEFUN(BASH_DEFAULT_MAIL_DIR,
[AC_MSG_CHECKING(for default mail directory)
***************
*** 1300,1301 ****
--- 1410,1427 ----
AC_DEFINE(HAVE_OFF_T_64)
fi])
+
+ AC_DEFUN(BASH_STRUCT_TIMEVAL,
+ [AC_MSG_CHECKING(for struct timeval in sys/time.h and time.h)
+ AC_CACHE_VAL(bash_cv_struct_timeval,
+ [
+ AC_EGREP_HEADER(struct timeval, sys/time.h,
+ bash_cv_struct_timeval=yes,
+ AC_EGREP_HEADER(struct timeval, time.h,
+ bash_cv_struct_timeval=yes,
+ bash_cv_struct_timeval=no))
+ ])
+ AC_MSG_RESULT($bash_cv_struct_timeval)
+ if test $bash_cv_struct_timeval = yes; then
+ AC_DEFINE(HAVE_TIMEVAL)
+ fi
+ ])
diff -Nrc2 readline-4.0/ansi_stdlib.h readline-4.1/ansi_stdlib.h
*** readline-4.0/ansi_stdlib.h Sun Dec 19 15:06:41 1993
--- readline-4.1/ansi_stdlib.h Thu Aug 5 07:49:32 1999
***************
*** 19,23 ****
You should have received a copy of the GNU General Public License along
with Bash; see the file COPYING. If not, write to the Free Software
! Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#if !defined (_STDLIB_H_)
--- 19,23 ----
You should have received a copy of the GNU General Public License along
with Bash; see the file COPYING. If not, write to the Free Software
! Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
#if !defined (_STDLIB_H_)
diff -Nrc2 readline-4.0/bind.c readline-4.1/bind.c
*** readline-4.0/bind.c Tue Feb 2 13:26:20 1999
--- readline-4.1/bind.c Tue Aug 24 14:19:22 1999
***************
*** 8,12 ****
The GNU Readline Library is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License
! as published by the Free Software Foundation; either version 1, or
(at your option) any later version.
--- 8,12 ----
The GNU Readline Library is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License
! as published by the Free Software Foundation; either version 2, or
(at your option) any later version.
***************
*** 19,23 ****
is generally kept in a file called COPYING or LICENSE. If you do not
have a copy of the license, write to the Free Software Foundation,
! 675 Mass Ave, Cambridge, MA 02139, USA. */
#define READLINE_LIBRARY
--- 19,23 ----
is generally kept in a file called COPYING or LICENSE. If you do not
have a copy of the license, write to the Free Software Foundation,
! 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
#define READLINE_LIBRARY
***************
*** 43,47 ****
#endif /* HAVE_STDLIB_H */
- #include
#include
--- 43,46 ----
***************
*** 59,117 ****
#include "history.h"
#if !defined (strchr) && !defined (__STDC__)
extern char *strchr (), *strrchr ();
#endif /* !strchr && !__STDC__ */
- extern int _rl_horizontal_scroll_mode;
- extern int _rl_mark_modified_lines;
- extern int _rl_bell_preference;
- extern int _rl_meta_flag;
- extern int _rl_convert_meta_chars_to_ascii;
- extern int _rl_output_meta_chars;
- extern int _rl_complete_show_all;
- extern int _rl_complete_mark_directories;
- extern int _rl_print_completions_horizontally;
- extern int _rl_completion_case_fold;
- extern int _rl_enable_keypad;
- #if defined (PAREN_MATCHING)
- extern int rl_blink_matching_paren;
- #endif /* PAREN_MATCHING */
- #if defined (VISIBLE_STATS)
- extern int rl_visible_stats;
- #endif /* VISIBLE_STATS */
- extern int rl_complete_with_tilde_expansion;
- extern int rl_completion_query_items;
- extern int rl_inhibit_completion;
- extern char *_rl_comment_begin;
- extern unsigned char *_rl_isearch_terminators;
-
- extern int rl_explicit_arg;
- extern int rl_editing_mode;
- extern unsigned char _rl_parsing_conditionalized_out;
- extern Keymap _rl_keymap;
-
- extern char *possible_control_prefixes[], *possible_meta_prefixes[];
-
- /* Functions imported from funmap.c */
- extern char **rl_funmap_names ();
- extern int rl_add_funmap_entry ();
-
- /* Functions imported from util.c */
- extern char *_rl_strindex ();
-
- /* Functions imported from shell.c */
- extern char *get_env_value ();
-
/* Variables exported by this file. */
Keymap rl_binding_keymap;
! /* Forward declarations */
! void rl_set_keymap_from_edit_mode ();
! static int _rl_read_init_file ();
! static int glean_key_from_name ();
! static int substring_member_of_array ();
! extern char *xmalloc (), *xrealloc ();
/* **************************************************************** */
--- 58,80 ----
#include "history.h"
+ #include "rlprivate.h"
+ #include "rlshell.h"
+ #include "xmalloc.h"
+
#if !defined (strchr) && !defined (__STDC__)
extern char *strchr (), *strrchr ();
#endif /* !strchr && !__STDC__ */
/* Variables exported by this file. */
Keymap rl_binding_keymap;
! static int _rl_read_init_file __P((char *, int));
! static int glean_key_from_name __P((char *));
! static int substring_member_of_array __P((char *, char **));
! static int currently_reading_init_file;
! /* used only in this file */
! static int _rl_prefer_visible_bell = 1;
/* **************************************************************** */
***************
*** 678,684 ****
--- 641,654 ----
}
+ #if 0
buffer[file_size] = '\0';
if (sizep)
*sizep = file_size;
+ #else
+ buffer[i] = '\0';
+ if (sizep)
+ *sizep = i;
+ #endif
+
return (buffer);
}
***************
*** 719,722 ****
--- 689,697 ----
filename = DEFAULT_INPUTRC;
+ #if defined (__MSDOS__)
+ if (_rl_read_init_file (filename, 0) == 0)
+ return 0;
+ filename = "~/_inputrc";
+ #endif
return (_rl_read_init_file (filename, 0));
}
***************
*** 747,750 ****
--- 722,727 ----
}
+ currently_reading_init_file = 1;
+
/* Loop over the lines in the file. Lines that start with `#' are
comments; all other lines are commands for readline initialization. */
***************
*** 757,760 ****
--- 734,743 ----
for (i = 0; line + i != end && line[i] != '\n'; i++);
+ #if defined (__CYGWIN32__)
+ /* ``Be liberal in what you accept.'' */
+ if (line[i] == '\n' && line[i-1] == '\r')
+ line[i - 1] = '\0';
+ #endif
+
/* Mark end of line. */
line[i] = '\0';
***************
*** 777,780 ****
--- 760,764 ----
free (buffer);
+ currently_reading_init_file = 0;
return (0);
}
***************
*** 784,790 ****
char *msg;
{
! fprintf (stderr, "readline: %s: line %d: %s\n", current_readline_init_file,
! current_readline_init_lineno,
! msg);
}
--- 768,776 ----
char *msg;
{
! if (currently_reading_init_file)
! fprintf (stderr, "readline: %s: line %d: %s\n", current_readline_init_file,
! current_readline_init_lineno, msg);
! else
! fprintf (stderr, "readline: %s\n", msg);
}
***************
*** 1233,1262 ****
false. */
static struct {
char *name;
int *value;
} boolean_varlist [] = {
! #if defined (PAREN_MATCHING)
! { "blink-matching-paren", &rl_blink_matching_paren },
! #endif
! { "completion-ignore-case", &_rl_completion_case_fold },
! { "convert-meta", &_rl_convert_meta_chars_to_ascii },
! { "disable-completion", &rl_inhibit_completion },
! { "enable-keypad", &_rl_enable_keypad },
! { "expand-tilde", &rl_complete_with_tilde_expansion },
! { "horizontal-scroll-mode", &_rl_horizontal_scroll_mode },
! { "input-meta", &_rl_meta_flag },
! { "mark-directories", &_rl_complete_mark_directories },
! { "mark-modified-lines", &_rl_mark_modified_lines },
! { "meta-flag", &_rl_meta_flag },
! { "output-meta", &_rl_output_meta_chars },
! { "print-completions-horizontally", &_rl_print_completions_horizontally },
! { "show-all-if-ambiguous", &_rl_complete_show_all },
#if defined (VISIBLE_STATS)
! { "visible-stats", &rl_visible_stats },
#endif /* VISIBLE_STATS */
{ (char *)NULL, (int *)NULL }
};
int
rl_variable_bind (name, value)
--- 1219,1341 ----
false. */
+ #define V_SPECIAL 0x1
+
static struct {
char *name;
int *value;
+ int flags;
} boolean_varlist [] = {
! { "blink-matching-paren", &rl_blink_matching_paren, V_SPECIAL },
! { "completion-ignore-case", &_rl_completion_case_fold, 0 },
! { "convert-meta", &_rl_convert_meta_chars_to_ascii, 0 },
! { "disable-completion", &rl_inhibit_completion, 0 },
! { "enable-keypad", &_rl_enable_keypad, 0 },
! { "expand-tilde", &rl_complete_with_tilde_expansion, 0 },
! { "horizontal-scroll-mode", &_rl_horizontal_scroll_mode, 0 },
! { "input-meta", &_rl_meta_flag, 0 },
! { "mark-directories", &_rl_complete_mark_directories, 0 },
! { "mark-modified-lines", &_rl_mark_modified_lines, 0 },
! { "meta-flag", &_rl_meta_flag, 0 },
! { "output-meta", &_rl_output_meta_chars, 0 },
! { "prefer-visible-bell", &_rl_prefer_visible_bell, V_SPECIAL },
! { "print-completions-horizontally", &_rl_print_completions_horizontally, 0 },
! { "show-all-if-ambiguous", &_rl_complete_show_all, 0 },
#if defined (VISIBLE_STATS)
! { "visible-stats", &rl_visible_stats, 0 },
#endif /* VISIBLE_STATS */
{ (char *)NULL, (int *)NULL }
};
+ static int
+ find_boolean_var (name)
+ char *name;
+ {
+ register int i;
+
+ for (i = 0; boolean_varlist[i].name; i++)
+ if (_rl_stricmp (name, boolean_varlist[i].name) == 0)
+ return i;
+ return -1;
+ }
+
+ /* Hooks for handling special boolean variables, where a
+ function needs to be called or another variable needs
+ to be changed when they're changed. */
+ static void
+ hack_special_boolean_var (i)
+ int i;
+ {
+ char *name;
+
+ name = boolean_varlist[i].name;
+
+ if (_rl_stricmp (name, "blink-matching-paren") == 0)
+ _rl_enable_paren_matching (rl_blink_matching_paren);
+ else if (_rl_stricmp (name, "prefer-visible-bell") == 0)
+ {
+ if (_rl_prefer_visible_bell)
+ _rl_bell_preference = VISIBLE_BELL;
+ else
+ _rl_bell_preference = AUDIBLE_BELL;
+ }
+ }
+
+ /* These *must* correspond to the array indices for the appropriate
+ string variable. (Though they're not used right now.) */
+ #define V_BELLSTYLE 0
+ #define V_COMBEGIN 1
+ #define V_EDITMODE 2
+ #define V_ISRCHTERM 3
+ #define V_KEYMAP 4
+
+ #define V_STRING 1
+ #define V_INT 2
+
+ /* Forward declarations */
+ static int sv_bell_style __P((char *));
+ static int sv_combegin __P((char *));
+ static int sv_compquery __P((char *));
+ static int sv_editmode __P((char *));
+ static int sv_isrchterm __P((char *));
+ static int sv_keymap __P((char *));
+
+ static struct {
+ char *name;
+ int flags;
+ Function *set_func;
+ } string_varlist[] = {
+ { "bell-style", V_STRING, sv_bell_style },
+ { "comment-begin", V_STRING, sv_combegin },
+ { "completion-query-items", V_INT, sv_compquery },
+ { "editing-mode", V_STRING, sv_editmode },
+ { "isearch-terminators", V_STRING, sv_isrchterm },
+ { "keymap", V_STRING, sv_keymap },
+ { (char *)NULL, 0 }
+ };
+
+ static int
+ find_string_var (name)
+ char *name;
+ {
+ register int i;
+
+ for (i = 0; string_varlist[i].name; i++)
+ if (_rl_stricmp (name, string_varlist[i].name) == 0)
+ return i;
+ return -1;
+ }
+
+ /* A boolean value that can appear in a `set variable' command is true if
+ the value is null or empty, `on' (case-insenstive), or "1". Any other
+ values result in 0 (false). */
+ static int
+ bool_to_int (value)
+ char *value;
+ {
+ return (value == 0 || *value == '\0' ||
+ (_rl_stricmp (value, "on") == 0) ||
+ (value[0] == '1' && value[1] == '\0'));
+ }
+
int
rl_variable_bind (name, value)
***************
*** 1264,1384 ****
{
register int i;
/* Check for simple variables first. */
! for (i = 0; boolean_varlist[i].name; i++)
{
! if (_rl_stricmp (name, boolean_varlist[i].name) == 0)
! {
! /* A variable is TRUE if the "value" is "on", "1" or "". */
! *boolean_varlist[i].value = *value == 0 ||
! _rl_stricmp (value, "on") == 0 ||
! (value[0] == '1' && value[1] == '\0');
! return 0;
! }
}
! /* Not a boolean variable, so check for specials. */
! /* Editing mode change? */
! if (_rl_stricmp (name, "editing-mode") == 0)
{
- if (_rl_strnicmp (value, "vi", 2) == 0)
- {
#if defined (VI_MODE)
! _rl_keymap = vi_insertion_keymap;
! rl_editing_mode = vi_mode;
#endif /* VI_MODE */
! }
! else if (_rl_strnicmp (value, "emacs", 5) == 0)
! {
! _rl_keymap = emacs_standard_keymap;
! rl_editing_mode = emacs_mode;
! }
}
!
! /* Comment string change? */
! else if (_rl_stricmp (name, "comment-begin") == 0)
{
! if (*value)
! {
! if (_rl_comment_begin)
! free (_rl_comment_begin);
!
! _rl_comment_begin = savestring (value);
! }
}
! else if (_rl_stricmp (name, "completion-query-items") == 0)
{
! int nval = 100;
! if (*value)
! {
! nval = atoi (value);
! if (nval < 0)
! nval = 0;
! }
! rl_completion_query_items = nval;
}
! else if (_rl_stricmp (name, "keymap") == 0)
{
! Keymap kmap;
! kmap = rl_get_keymap_by_name (value);
! if (kmap)
! rl_set_keymap (kmap);
}
! else if (_rl_stricmp (name, "bell-style") == 0)
{
! if (!*value)
! _rl_bell_preference = AUDIBLE_BELL;
! else
! {
! if (_rl_stricmp (value, "none") == 0 || _rl_stricmp (value, "off") == 0)
! _rl_bell_preference = NO_BELL;
! else if (_rl_stricmp (value, "audible") == 0 || _rl_stricmp (value, "on") == 0)
! _rl_bell_preference = AUDIBLE_BELL;
! else if (_rl_stricmp (value, "visible") == 0)
! _rl_bell_preference = VISIBLE_BELL;
! }
}
! else if (_rl_stricmp (name, "prefer-visible-bell") == 0)
! {
! /* Backwards compatibility. */
! if (*value && (_rl_stricmp (value, "on") == 0 ||
! (*value == '1' && !value[1])))
! _rl_bell_preference = VISIBLE_BELL;
! else
! _rl_bell_preference = AUDIBLE_BELL;
}
! else if (_rl_stricmp (name, "isearch-terminators") == 0)
{
! /* Isolate the value and translate it into a character string. */
! int beg, end;
! char *v;
! v = savestring (value);
! FREE (_rl_isearch_terminators);
! if (v[0] == '"' || v[0] == '\'')
! {
! int delim = v[0];
! for (beg = end = 1; v[end] && v[end] != delim; end++)
! ;
! }
! else
! {
! for (beg = end = 0; whitespace (v[end]) == 0; end++)
! ;
! }
! v[end] = '\0';
! /* The value starts at v + beg. Translate it into a character string. */
! _rl_isearch_terminators = (unsigned char *)xmalloc (2 * strlen (v) + 1);
! rl_translate_keyseq (v + beg, _rl_isearch_terminators, &end);
! _rl_isearch_terminators[end] = '\0';
! free (v);
! }
!
! /* For the time being, unknown variable names are simply ignored. */
return 0;
}
!
/* Return the character which matches NAME.
For example, `Space' returns ' '. */
--- 1343,1489 ----
{
register int i;
+ int v;
/* Check for simple variables first. */
! i = find_boolean_var (name);
! if (i >= 0)
{
! *boolean_varlist[i].value = bool_to_int (value);
! if (boolean_varlist[i].flags & V_SPECIAL)
! hack_special_boolean_var (i);
! return 0;
}
! i = find_string_var (name);
!
! /* For the time being, unknown variable names or string names without a
! handler function are simply ignored. */
! if (i < 0 || string_varlist[i].set_func == 0)
! return 0;
! v = (*string_varlist[i].set_func) (value);
! return v;
! }
!
! static int
! sv_editmode (value)
! char *value;
! {
! if (_rl_strnicmp (value, "vi", 2) == 0)
{
#if defined (VI_MODE)
! _rl_keymap = vi_insertion_keymap;
! rl_editing_mode = vi_mode;
#endif /* VI_MODE */
! return 0;
}
! else if (_rl_strnicmp (value, "emacs", 5) == 0)
{
! _rl_keymap = emacs_standard_keymap;
! rl_editing_mode = emacs_mode;
! return 0;
}
! return 1;
! }
!
! static int
! sv_combegin (value)
! char *value;
! {
! if (value && *value)
{
! FREE (_rl_comment_begin);
! _rl_comment_begin = savestring (value);
! return 0;
}
! return 1;
! }
!
! static int
! sv_compquery (value)
! char *value;
! {
! int nval = 100;
!
! if (value && *value)
{
! nval = atoi (value);
! if (nval < 0)
! nval = 0;
}
! rl_completion_query_items = nval;
! return 0;
! }
!
! static int
! sv_keymap (value)
! char *value;
! {
! Keymap kmap;
!
! kmap = rl_get_keymap_by_name (value);
! if (kmap)
{
! rl_set_keymap (kmap);
! return 0;
}
! return 1;
! }
!
! #define _SET_BELL(v) do { _rl_bell_preference = v; return 0; } while (0)
!
! static int
! sv_bell_style (value)
! char *value;
! {
! if (value == 0 || *value == '\0')
! _SET_BELL (AUDIBLE_BELL);
! else if (_rl_stricmp (value, "none") == 0 || _rl_stricmp (value, "off") == 0)
! _SET_BELL (NO_BELL);
! else if (_rl_stricmp (value, "audible") == 0 || _rl_stricmp (value, "on") == 0)
! _SET_BELL (AUDIBLE_BELL);
! else if (_rl_stricmp (value, "visible") == 0)
! _SET_BELL (VISIBLE_BELL);
! else
! return 1;
! }
! #undef _SET_BELL
!
! static int
! sv_isrchterm (value)
! char *value;
! {
! int beg, end, delim;
! char *v;
!
! if (value == 0)
! return 1;
!
! /* Isolate the value and translate it into a character string. */
! v = savestring (value);
! FREE (_rl_isearch_terminators);
! if (v[0] == '"' || v[0] == '\'')
! {
! delim = v[0];
! for (beg = end = 1; v[end] && v[end] != delim; end++)
! ;
}
! else
{
! for (beg = end = 0; whitespace (v[end]) == 0; end++)
! ;
! }
! v[end] = '\0';
! /* The value starts at v + beg. Translate it into a character string. */
! _rl_isearch_terminators = (unsigned char *)xmalloc (2 * strlen (v) + 1);
! rl_translate_keyseq (v + beg, _rl_isearch_terminators, &end);
! _rl_isearch_terminators[end] = '\0';
!
! free (v);
return 0;
}
!
/* Return the character which matches NAME.
For example, `Space' returns ' '. */
diff -Nrc2 readline-4.0/callback.c readline-4.1/callback.c
*** readline-4.0/callback.c Wed Jun 3 13:34:10 1998
--- readline-4.1/callback.c Thu Aug 5 08:17:29 1999
***************
*** 8,12 ****
The GNU Readline Library is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License
! as published by the Free Software Foundation; either version 1, or
(at your option) any later version.
--- 8,12 ----
The GNU Readline Library is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License
! as published by the Free Software Foundation; either version 2, or
(at your option) any later version.
***************
*** 19,23 ****
is generally kept in a file called COPYING or LICENSE. If you do not
have a copy of the license, write to the Free Software Foundation,
! 675 Mass Ave, Cambridge, MA 02139, USA. */
#define READLINE_LIBRARY
--- 19,23 ----
is generally kept in a file called COPYING or LICENSE. If you do not
have a copy of the license, write to the Free Software Foundation,
! 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
#define READLINE_LIBRARY
***************
*** 36,48 ****
#include "rldefs.h"
#include "readline.h"
!
! extern void readline_internal_setup ();
! extern char *readline_internal_teardown ();
! extern int readline_internal_char ();
! extern void _rl_init_line_state ();
!
! extern int _rl_meta_flag;
! extern char *rl_prompt;
! extern int rl_visible_prompt_length;
/* **************************************************************** */
--- 36,40 ----
#include "rldefs.h"
#include "readline.h"
! #include "rlprivate.h"
/* **************************************************************** */
diff -Nrc2 readline-4.0/chardefs.h readline-4.1/chardefs.h
*** readline-4.0/chardefs.h Thu Sep 25 10:59:00 1997
--- readline-4.1/chardefs.h Thu Aug 5 08:17:37 1999
***************
*** 8,12 ****
The GNU Readline Library is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License
! as published by the Free Software Foundation; either version 1, or
(at your option) any later version.
--- 8,12 ----
The GNU Readline Library is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License
! as published by the Free Software Foundation; either version 2, or
(at your option) any later version.
***************
*** 19,23 ****
is generally kept in a file called COPYING or LICENSE. If you do not
have a copy of the license, write to the Free Software Foundation,
! 675 Mass Ave, Cambridge, MA 02139, USA. */
#ifndef _CHARDEFS_H_
--- 19,23 ----
is generally kept in a file called COPYING or LICENSE. If you do not
have a copy of the license, write to the Free Software Foundation,
! 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
#ifndef _CHARDEFS_H_
diff -Nrc2 readline-4.0/complete.c readline-4.1/complete.c
*** readline-4.0/complete.c Thu Feb 18 12:35:57 1999
--- readline-4.1/complete.c Tue Feb 22 13:50:05 2000
***************
*** 8,12 ****
The GNU Readline Library is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License
! as published by the Free Software Foundation; either version 1, or
(at your option) any later version.
--- 8,12 ----
The GNU Readline Library is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License
! as published by the Free Software Foundation; either version 2, or
(at your option) any later version.
***************
*** 19,23 ****
is generally kept in a file called COPYING or LICENSE. If you do not
have a copy of the license, write to the Free Software Foundation,
! 675 Mass Ave, Cambridge, MA 02139, USA. */
#define READLINE_LIBRARY
--- 19,23 ----
is generally kept in a file called COPYING or LICENSE. If you do not
have a copy of the license, write to the Free Software Foundation,
! 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
#define READLINE_LIBRARY
***************
*** 71,88 ****
/* Some standard library routines. */
#include "readline.h"
! extern char *tilde_expand ();
! extern char *rl_copy_text ();
! extern void _rl_abort_internal ();
! extern int _rl_qsort_string_compare ();
! extern void _rl_replace_text ();
!
! extern Function *rl_last_func;
! extern int rl_editing_mode;
! extern int screenwidth;
!
! extern void _rl_move_vert ();
! extern int _rl_vis_botlin;
! extern int rl_display_fixed;
/* If non-zero, then this is the address of a function to call when
--- 71,82 ----
/* Some standard library routines. */
#include "readline.h"
+ #include "xmalloc.h"
+ #include "rlprivate.h"
! #ifdef __STDC__
! typedef int QSFUNC (const void *, const void *);
! #else
! typedef int QSFUNC ();
! #endif
/* If non-zero, then this is the address of a function to call when
***************
*** 96,101 ****
/* Forward declarations for functions defined and used in this file. */
! char *filename_completion_function ();
! char **completion_matches ();
#if defined (VISIBLE_STATS)
--- 90,95 ----
/* Forward declarations for functions defined and used in this file. */
! char *filename_completion_function __P((char *, int));
! char **completion_matches __P((char *, CPFunction *));
#if defined (VISIBLE_STATS)
***************
*** 103,120 ****
# define X_OK 1
# endif
! static int stat_char ();
#endif
! static char *rl_quote_filename ();
! static char *rl_strpbrk ();
!
! static char **remove_duplicate_matches ();
! static void insert_match ();
! static int append_to_match ();
! static void insert_all_matches ();
! static void display_matches ();
! static int compute_lcd_of_matches ();
! extern char *xmalloc (), *xrealloc ();
/* **************************************************************** */
--- 97,112 ----
# define X_OK 1
# endif
! static int stat_char __P((char *));
#endif
! static char *rl_quote_filename __P((char *, int, char *));
! static char *rl_strpbrk __P((char *, char *));
! static char **remove_duplicate_matches __P((char **));
! static void insert_match __P((char *, int, int, char *));
! static int append_to_match __P((char *, int, int));
! static void insert_all_matches __P((char **, int, char *));
! static void display_matches __P((char **));
! static int compute_lcd_of_matches __P((char **, int, char *));
/* **************************************************************** */
***************
*** 137,141 ****
--- 129,137 ----
/* Non-zero means that case is not significant in filename completion. */
+ #if defined (__MSDOS__) && !defined (__DJGPP__)
+ int _rl_completion_case_fold = 1;
+ #else
int _rl_completion_case_fold;
+ #endif
/* Global variables available to applications using readline. */
***************
*** 418,421 ****
--- 414,421 ----
temp = rl_filename_completion_desired ? strrchr (pathname, '/') : (char *)NULL;
+ #if defined (__MSDOS__)
+ if (rl_filename_completion_desired && temp == 0 && isalpha (pathname[0]) && pathname[1] == ':')
+ temp = pathname + 1;
+ #endif
return (temp ? ++temp : pathname);
}
***************
*** 478,482 ****
to_print[-1] = '\0';
! s = tilde_expand (full_pathname);
if (rl_directory_completion_hook)
(*rl_directory_completion_hook) (&s);
--- 478,487 ----
to_print[-1] = '\0';
! /* If setting the last slash in full_pathname to a NUL results in
! full_pathname being the empty string, we are trying to complete
! files in the root directory. If we pass a null string to the
! bash directory completion hook, for example, it will expand it
! to the current directory. We just want the `/'. */
! s = tilde_expand (full_pathname && *full_pathname ? full_pathname : "/");
if (rl_directory_completion_hook)
(*rl_directory_completion_hook) (&s);
***************
*** 628,650 ****
a character is quoted and we found a quote character, let that
function decide whether or not a character is a word break, even
! if it is found in rl_completer_word_break_characters. */
! if (rl_char_is_quoted_p)
! isbrk = (found_quote == 0 ||
! (*rl_char_is_quoted_p) (rl_line_buffer, rl_point) == 0) &&
! strchr (rl_completer_word_break_characters, scan) != 0;
! else
! isbrk = strchr (rl_completer_word_break_characters, scan) != 0;
! if (isbrk)
! {
! /* If the character that caused the word break was a quoting
! character, then remember it as the delimiter. */
! if (rl_basic_quote_characters && strchr (rl_basic_quote_characters, scan) && (end - rl_point) > 1)
! delimiter = scan;
!
! /* If the character isn't needed to determine something special
! about what kind of completion to perform, then advance past it. */
! if (rl_special_prefixes == 0 || strchr (rl_special_prefixes, scan) == 0)
! rl_point++;
}
--- 633,661 ----
a character is quoted and we found a quote character, let that
function decide whether or not a character is a word break, even
! if it is found in rl_completer_word_break_characters. Don't bother
! if we're at the end of the line, though. */
! if (scan)
! {
! if (rl_char_is_quoted_p)
! isbrk = (found_quote == 0 ||
! (*rl_char_is_quoted_p) (rl_line_buffer, rl_point) == 0) &&
! strchr (rl_completer_word_break_characters, scan) != 0;
! else
! isbrk = strchr (rl_completer_word_break_characters, scan) != 0;
! if (isbrk)
! {
! /* If the character that caused the word break was a quoting
! character, then remember it as the delimiter. */
! if (rl_basic_quote_characters &&
! strchr (rl_basic_quote_characters, scan) &&
! (end - rl_point) > 1)
! delimiter = scan;
!
! /* If the character isn't needed to determine something special
! about what kind of completion to perform, then advance past it. */
! if (rl_special_prefixes == 0 || strchr (rl_special_prefixes, scan) == 0)
! rl_point++;
! }
}
***************
*** 716,720 ****
stay in place no matter what. */
if (i)
! qsort (matches+1, i-1, sizeof (char *), _rl_qsort_string_compare);
/* Remember the lowest common denominator for it may be unique. */
--- 727,731 ----
stay in place no matter what. */
if (i)
! qsort (matches+1, i-1, sizeof (char *), (QSFUNC *)_rl_qsort_string_compare);
/* Remember the lowest common denominator for it may be unique. */
***************
*** 909,913 ****
/* Sort the items if they are not already sorted. */
if (rl_ignore_completion_duplicates == 0)
! qsort (matches + 1, len, sizeof (char *), _rl_qsort_string_compare);
crlf ();
--- 920,924 ----
/* Sort the items if they are not already sorted. */
if (rl_ignore_completion_duplicates == 0)
! qsort (matches + 1, len, sizeof (char *), (QSFUNC *)_rl_qsort_string_compare);
crlf ();
***************
*** 1408,1414 ****
int state;
{
! #if defined (__GO32__) || defined (__WIN32__) || defined (__OPENNT)
return (char *)NULL;
! #else /* !__GO32__ */
static char *username = (char *)NULL;
static struct passwd *entry;
--- 1419,1425 ----
int state;
{
! #if defined (__WIN32__) || defined (__OPENNT)
return (char *)NULL;
! #else /* !__WIN32__ && !__OPENNT) */
static char *username = (char *)NULL;
static struct passwd *entry;
***************
*** 1453,1457 ****
return (value);
}
! #endif /* !__GO32__ */
}
--- 1464,1468 ----
return (value);
}
! #endif /* !__WIN32__ && !__OPENNT */
}
***************
*** 1495,1498 ****
--- 1506,1515 ----
temp = strrchr (dirname, '/');
+ #if defined (__MSDOS__)
+ /* special hack for //X/... */
+ if (dirname[0] == '/' && dirname[1] == '/' && isalpha (dirname[2]) && dirname[3] == '/')
+ temp = strrchr (dirname + 3, '/');
+ #endif
+
if (temp)
{
***************
*** 1500,1503 ****
--- 1517,1528 ----
*temp = '\0';
}
+ #if defined (__MSDOS__)
+ /* searches from current directory on the drive */
+ else if (isalpha (dirname[0]) && dirname[1] == ':')
+ {
+ strcpy (filename, dirname + 2);
+ dirname[2] = '\0';
+ }
+ #endif
else
{
***************
*** 1661,1669 ****
FREE (orig_text);
if (matches)
! {
! for (match_list_index = 0; matches[match_list_index]; match_list_index++)
! free (matches[match_list_index]);
! free (matches);
! }
match_list_index = match_list_size = 0;
--- 1686,1690 ----
FREE (orig_text);
if (matches)
! free_match_list (matches);
match_list_index = match_list_size = 0;
diff -Nrc2 readline-4.0/config.h.in readline-4.1/config.h.in
*** readline-4.0/config.h.in Thu Jul 17 09:52:39 1997
--- readline-4.1/config.h.in Fri Sep 3 11:54:26 1999
***************
*** 15,18 ****
--- 15,21 ----
#undef HAVE_LSTAT
+ /* Define if you have the memmove function. */
+ #undef HAVE_MEMMOVE
+
/* Define if you have the putenv function. */
#undef HAVE_PUTENV
diff -Nrc2 readline-4.0/configure readline-4.1/configure
*** readline-4.0/configure Thu Feb 18 15:44:06 1999
--- readline-4.1/configure Wed Mar 1 14:52:41 2000
***************
*** 1,6 ****
#! /bin/sh
! # From configure.in for Readline 4.0, version 2.14, from autoconf version 2.12
! LIBVERSION=4.0
--- 1,18 ----
#! /bin/sh
! # From configure.in for Readline 4.1, version 2.22, from autoconf version 2.13
! LIBVERSION=4.1
!
!
!
!
!
!
!
!
!
!
!
!
***************
*** 93,97 ****
# Guess values for system-dependent variables and create Makefiles.
! # Generated automatically using autoconf version 2.12
# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
#
--- 105,109 ----
# Guess values for system-dependent variables and create Makefiles.
! # Generated automatically using autoconf version 2.13
# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
#
***************
*** 143,146 ****
--- 155,159 ----
subdirs=
MFLAGS= MAKEFLAGS=
+ SHELL=${CONFIG_SHELL-/bin/sh}
# Maximum number of lines to put in a shell here document.
ac_max_here_lines=12
***************
*** 426,430 ****
-version | --version | --versio | --versi | --vers)
! echo "configure generated by autoconf version 2.12"
exit 0 ;;
--- 439,443 ----
-version | --version | --versio | --versi | --vers)
! echo "configure generated by autoconf version 2.13"
exit 0 ;;
***************
*** 596,602 ****
ac_cpp='$CPP $CPPFLAGS'
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
! ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
cross_compiling=$ac_cv_prog_cc_cross
if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
# Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
--- 609,617 ----
ac_cpp='$CPP $CPPFLAGS'
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
! ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
cross_compiling=$ac_cv_prog_cc_cross
+ ac_exeext=
+ ac_objext=o
if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
# Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
***************
*** 638,647 ****
# Make sure we can run config.sub.
! if $ac_config_sub sun4 >/dev/null 2>&1; then :
else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
! echo "configure:646: checking host system type" >&5
host_alias=$host
--- 653,662 ----
# Make sure we can run config.sub.
! if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
! echo "configure:661: checking host system type" >&5
host_alias=$host
***************
*** 650,654 ****
case $nonopt in
NONE)
! if host_alias=`$ac_config_guess`; then :
else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
fi ;;
--- 665,669 ----
case $nonopt in
NONE)
! if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
fi ;;
***************
*** 657,661 ****
esac
! host=`$ac_config_sub $host_alias`
host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
--- 672,676 ----
esac
! host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
***************
*** 684,688 ****
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
! echo "configure:687: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 699,703 ----
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
! echo "configure:702: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 691,696 ****
ac_cv_prog_CC="$CC" # Let the user override the test.
else
! IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
! for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
--- 706,712 ----
ac_cv_prog_CC="$CC" # Let the user override the test.
else
! IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
! ac_dummy="$PATH"
! for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
***************
*** 713,717 ****
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
! echo "configure:716: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 729,733 ----
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
! echo "configure:732: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 720,726 ****
ac_cv_prog_CC="$CC" # Let the user override the test.
else
! IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
ac_prog_rejected=no
! for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
--- 736,743 ----
ac_cv_prog_CC="$CC" # Let the user override the test.
else
! IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_prog_rejected=no
! ac_dummy="$PATH"
! for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
***************
*** 757,765 ****
fi
test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
! echo "configure:764: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
--- 774,816 ----
fi
+ if test -z "$CC"; then
+ case "`uname -s`" in
+ *win32* | *WIN32*)
+ # Extract the first word of "cl", so it can be a program name with args.
+ set dummy cl; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+ echo "configure:783: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+ else
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ ac_dummy="$PATH"
+ for ac_dir in $ac_dummy; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ ac_cv_prog_CC="cl"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+ fi
+ fi
+ CC="$ac_cv_prog_CC"
+ if test -n "$CC"; then
+ echo "$ac_t""$CC" 1>&6
+ else
+ echo "$ac_t""no" 1>&6
+ fi
+ ;;
+ esac
+ fi
test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
! echo "configure:815: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
***************
*** 767,779 ****
ac_cpp='$CPP $CPPFLAGS'
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
! ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
cross_compiling=$ac_cv_prog_cc_cross
! cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
--- 818,832 ----
ac_cpp='$CPP $CPPFLAGS'
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
! ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
cross_compiling=$ac_cv_prog_cc_cross
! cat > conftest.$ac_ext << EOF
!
! #line 826 "configure"
#include "confdefs.h"
+
main(){return(0);}
EOF
! if { (eval echo configure:831: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
***************
*** 789,792 ****
--- 842,851 ----
fi
rm -fr conftest*
+ ac_ext=c
+ # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
+ ac_cpp='$CPP $CPPFLAGS'
+ ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
+ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
+ cross_compiling=$ac_cv_prog_cc_cross
echo "$ac_t""$ac_cv_prog_cc_works" 1>&6
***************
*** 795,804 ****
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
! echo "configure:798: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
! echo "configure:803: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 854,863 ----
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
! echo "configure:857: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
! echo "configure:862: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 809,813 ****
#endif
EOF
! if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:812: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
--- 868,872 ----
#endif
EOF
! if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:871: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
***************
*** 820,828 ****
if test $ac_cv_prog_gcc = yes; then
GCC=yes
! ac_test_CFLAGS="${CFLAGS+set}"
! ac_save_CFLAGS="$CFLAGS"
! CFLAGS=
! echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
! echo "configure:827: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 879,891 ----
if test $ac_cv_prog_gcc = yes; then
GCC=yes
! else
! GCC=
! fi
!
! ac_test_CFLAGS="${CFLAGS+set}"
! ac_save_CFLAGS="$CFLAGS"
! CFLAGS=
! echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
! echo "configure:890: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 839,856 ****
echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
! if test "$ac_test_CFLAGS" = set; then
! CFLAGS="$ac_save_CFLAGS"
! elif test $ac_cv_prog_cc_g = yes; then
CFLAGS="-g -O2"
else
! CFLAGS="-O2"
fi
else
! GCC=
! test "${CFLAGS+set}" = set || CFLAGS="-g"
fi
echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
! echo "configure:855: checking how to run the C preprocessor" >&5
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
--- 902,923 ----
echo "$ac_t""$ac_cv_prog_cc_g" 1>&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 $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
! echo "configure:922: checking how to run the C preprocessor" >&5
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
***************
*** 867,871 ****
# not just through cpp.
cat > conftest.$ac_ext <
--- 934,938 ----
# not just through cpp.
cat > conftest.$ac_ext <
***************
*** 873,878 ****
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
! { (eval echo configure:876: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
! ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
:
--- 940,945 ----
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
! { (eval echo configure:943: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
! ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
***************
*** 884,888 ****
CPP="${CC-cc} -E -traditional-cpp"
cat > conftest.$ac_ext <
--- 951,955 ----
CPP="${CC-cc} -E -traditional-cpp"
cat > conftest.$ac_ext <
***************
*** 890,895 ****
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
! { (eval echo configure:893: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
! ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
:
--- 957,979 ----
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
! { (eval echo configure:960: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
! ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
! if test -z "$ac_err"; then
! :
! else
! echo "$ac_err" >&5
! echo "configure: failed program was:" >&5
! cat conftest.$ac_ext >&5
! rm -rf conftest*
! CPP="${CC-cc} -nologo -E"
! cat > conftest.$ac_ext <
! Syntax Error
! EOF
! ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
! { (eval echo configure:977: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
! ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
***************
*** 904,907 ****
--- 988,993 ----
fi
rm -f conftest*
+ fi
+ rm -f conftest*
ac_cv_prog_CPP="$CPP"
fi
***************
*** 914,929 ****
ac_safe=`echo "minix/config.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for minix/config.h""... $ac_c" 1>&6
! echo "configure:917: checking for minix/config.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
! { (eval echo configure:927: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
! ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
rm -rf conftest*
--- 1000,1015 ----
ac_safe=`echo "minix/config.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for minix/config.h""... $ac_c" 1>&6
! echo "configure:1003: checking for minix/config.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
! { (eval echo configure:1013: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
! ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
***************
*** 967,971 ****
if test $ac_cv_prog_gcc = yes; then
echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6
! echo "configure:970: checking whether ${CC-cc} needs -traditional" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 1053,1057 ----
if test $ac_cv_prog_gcc = yes; then
echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6
! echo "configure:1056: checking whether ${CC-cc} needs -traditional" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 973,977 ****
ac_pattern="Autoconf.*'x'"
cat > conftest.$ac_ext <
--- 1059,1063 ----
ac_pattern="Autoconf.*'x'"
cat > conftest.$ac_ext <
***************
*** 991,995 ****
if test $ac_cv_prog_gcc_traditional = no; then
cat > conftest.$ac_ext <
--- 1077,1081 ----
if test $ac_cv_prog_gcc_traditional = no; then
cat > conftest.$ac_ext <
***************
*** 1019,1032 ****
# IRIX /sbin/install
# AIX /bin/install
# 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 $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
! echo "configure:1026: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
! IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="${IFS}:"
for ac_dir in $PATH; do
# Account for people who put trailing slashes in PATH elements.
--- 1105,1119 ----
# IRIX /sbin/install
# AIX /bin/install
+ # 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 $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
! echo "configure:1113: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
! IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
for ac_dir in $PATH; do
# Account for people who put trailing slashes in PATH elements.
***************
*** 1035,1044 ****
*)
# OSF1 and SCO ODT 3.0 have their own names for install.
! for ac_prog in ginstall installbsd scoinst install; do
if test -f $ac_dir/$ac_prog; then
if test $ac_prog = install &&
grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
# AIX install. It has an incompatible calling convention.
- # OSF/1 installbsd also uses dspmsg, but is usable.
:
else
--- 1122,1132 ----
*)
# 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
if test -f $ac_dir/$ac_prog; then
if test $ac_prog = install &&
grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
# AIX install. It has an incompatible calling convention.
:
else
***************
*** 1070,1073 ****
--- 1158,1163 ----
test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
+
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
***************
*** 1075,1079 ****
set dummy ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
! echo "configure:1078: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 1165,1169 ----
set dummy ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
! echo "configure:1168: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 1082,1087 ****
ac_cv_prog_AR="$AR" # Let the user override the test.
else
! IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
! for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
--- 1172,1178 ----
ac_cv_prog_AR="$AR" # Let the user override the test.
else
! IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
! ac_dummy="$PATH"
! for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
***************
*** 1104,1108 ****
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
! echo "configure:1107: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 1195,1199 ----
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
! echo "configure:1198: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 1111,1116 ****
ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
else
! IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
! for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
--- 1202,1208 ----
ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
else
! IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
! ac_dummy="$PATH"
! for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
***************
*** 1135,1144 ****
echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
! echo "configure:1138: checking return type of signal handlers" >&5
if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
--- 1227,1236 ----
echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
! echo "configure:1230: checking return type of signal handlers" >&5
if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
***************
*** 1157,1161 ****
; return 0; }
EOF
! if { (eval echo configure:1160: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_type_signal=void
--- 1249,1253 ----
; return 0; }
EOF
! if { (eval echo configure:1252: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_type_signal=void
***************
*** 1177,1186 ****
echo $ac_n "checking whether stat file-mode macros are broken""... $ac_c" 1>&6
! echo "configure:1180: checking whether stat file-mode macros are broken" >&5
if eval "test \"`echo '$''{'ac_cv_header_stat_broken'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
--- 1269,1278 ----
echo $ac_n "checking whether stat file-mode macros are broken""... $ac_c" 1>&6
! echo "configure:1272: checking whether stat file-mode macros are broken" >&5
if eval "test \"`echo '$''{'ac_cv_header_stat_broken'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
***************
*** 1237,1246 ****
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
! echo "configure:1240: checking for $ac_hdr that defines DIR" >&5
if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
--- 1329,1338 ----
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
! echo "configure:1332: checking for $ac_hdr that defines DIR" >&5
if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
***************
*** 1250,1254 ****
; return 0; }
EOF
! if { (eval echo configure:1253: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
eval "ac_cv_header_dirent_$ac_safe=yes"
--- 1342,1346 ----
; return 0; }
EOF
! if { (eval echo configure:1345: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
eval "ac_cv_header_dirent_$ac_safe=yes"
***************
*** 1275,1279 ****
if test $ac_header_dirent = dirent.h; then
echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
! echo "configure:1278: checking for opendir in -ldir" >&5
ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
--- 1367,1371 ----
if test $ac_header_dirent = dirent.h; then
echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
! echo "configure:1370: checking for opendir in -ldir" >&5
ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
***************
*** 1283,1287 ****
LIBS="-ldir $LIBS"
cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
--- 1386,1390 ----
; return 0; }
EOF
! if { (eval echo configure:1389: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
***************
*** 1316,1320 ****
else
echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
! echo "configure:1319: checking for opendir in -lx" >&5
ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
--- 1408,1412 ----
else
echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
! echo "configure:1411: checking for opendir in -lx" >&5
ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
***************
*** 1324,1328 ****
LIBS="-lx $LIBS"
cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
--- 1427,1431 ----
; return 0; }
EOF
! if { (eval echo configure:1430: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
***************
*** 1358,1370 ****
! for ac_func in strcasecmp select setenv putenv tcgetattr setlocale lstat
do
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
! echo "configure:1364: checking for $ac_func" >&5
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <&6
! echo "configure:1457: checking for $ac_func" >&5
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_func_$ac_func=yes"
--- 1482,1486 ----
; return 0; }
EOF
! if { (eval echo configure:1485: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_$ac_func=yes"
***************
*** 1415,1419 ****
echo $ac_n "checking for working strcoll""... $ac_c" 1>&6
! echo "configure:1418: checking for working strcoll" >&5
if eval "test \"`echo '$''{'ac_cv_func_strcoll_works'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 1508,1512 ----
echo $ac_n "checking for working strcoll""... $ac_c" 1>&6
! echo "configure:1511: checking for working strcoll" >&5
if eval "test \"`echo '$''{'ac_cv_func_strcoll_works'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 1423,1427 ****
else
cat > conftest.$ac_ext <
--- 1516,1520 ----
else
cat > conftest.$ac_ext <
***************
*** 1433,1437 ****
}
EOF
! if { (eval echo configure:1436: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
then
ac_cv_func_strcoll_works=yes
--- 1526,1530 ----
}
EOF
! if { (eval echo configure:1529: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
ac_cv_func_strcoll_works=yes
***************
*** 1462,1477 ****
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
! echo "configure:1465: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
! { (eval echo configure:1475: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
! ac_err=`grep -v '^ *+' conftest.out`
if test -z "$ac_err"; then
rm -rf conftest*
--- 1555,1570 ----
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
! echo "configure:1558: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
! { (eval echo configure:1568: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
! ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
***************
*** 1501,1505 ****
echo $ac_n "checking for type of signal functions""... $ac_c" 1>&6
! echo "configure:1504: checking for type of signal functions" >&5
if eval "test \"`echo '$''{'bash_cv_signal_vintage'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 1594,1598 ----
echo $ac_n "checking for type of signal functions""... $ac_c" 1>&6
! echo "configure:1597: checking for type of signal functions" >&5
if eval "test \"`echo '$''{'bash_cv_signal_vintage'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 1507,1511 ****
cat > conftest.$ac_ext <
--- 1600,1604 ----
cat > conftest.$ac_ext <
***************
*** 1520,1524 ****
; return 0; }
EOF
! if { (eval echo configure:1523: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
bash_cv_signal_vintage=posix
--- 1613,1617 ----
; return 0; }
EOF
! if { (eval echo configure:1616: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
bash_cv_signal_vintage=posix
***************
*** 1529,1533 ****
cat > conftest.$ac_ext <
--- 1622,1626 ----
cat > conftest.$ac_ext <
***************
*** 1539,1543 ****
; return 0; }
EOF
! if { (eval echo configure:1542: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
bash_cv_signal_vintage=4.2bsd
--- 1632,1636 ----
; return 0; }
EOF
! if { (eval echo configure:1635: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
bash_cv_signal_vintage=4.2bsd
***************
*** 1548,1552 ****
cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
bash_cv_signal_vintage=svr3
--- 1654,1658 ----
; return 0; }
EOF
! if { (eval echo configure:1657: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
bash_cv_signal_vintage=svr3
***************
*** 1602,1606 ****
echo $ac_n "checking if signal handlers must be reinstalled when invoked""... $ac_c" 1>&6
! echo "configure:1605: checking if signal handlers must be reinstalled when invoked" >&5
if eval "test \"`echo '$''{'bash_cv_must_reinstall_sighandlers'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 1695,1699 ----
echo $ac_n "checking if signal handlers must be reinstalled when invoked""... $ac_c" 1>&6
! echo "configure:1698: checking if signal handlers must be reinstalled when invoked" >&5
if eval "test \"`echo '$''{'bash_cv_must_reinstall_sighandlers'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 1612,1616 ****
else
cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
then
bash_cv_must_reinstall_sighandlers=no
--- 1752,1756 ----
EOF
! if { (eval echo configure:1755: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
bash_cv_must_reinstall_sighandlers=no
***************
*** 1684,1688 ****
echo $ac_n "checking for presence of POSIX-style sigsetjmp/siglongjmp""... $ac_c" 1>&6
! echo "configure:1687: checking for presence of POSIX-style sigsetjmp/siglongjmp" >&5
if eval "test \"`echo '$''{'bash_cv_func_sigsetjmp'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 1777,1781 ----
echo $ac_n "checking for presence of POSIX-style sigsetjmp/siglongjmp""... $ac_c" 1>&6
! echo "configure:1780: checking for presence of POSIX-style sigsetjmp/siglongjmp" >&5
if eval "test \"`echo '$''{'bash_cv_func_sigsetjmp'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 1694,1698 ****
else
cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
then
bash_cv_func_sigsetjmp=present
--- 1828,1832 ----
}
EOF
! if { (eval echo configure:1831: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
bash_cv_func_sigsetjmp=present
***************
*** 1758,1767 ****
echo $ac_n "checking for lstat""... $ac_c" 1>&6
! echo "configure:1761: checking for lstat" >&5
if eval "test \"`echo '$''{'bash_cv_func_lstat'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <&6
! echo "configure:1854: checking for lstat" >&5
if eval "test \"`echo '$''{'bash_cv_func_lstat'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
bash_cv_func_lstat=yes
--- 1866,1870 ----
; return 0; }
EOF
! if { (eval echo configure:1869: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
bash_cv_func_lstat=yes
***************
*** 1794,1803 ****
echo $ac_n "checking whether programs are able to redeclare getpw functions""... $ac_c" 1>&6
! echo "configure:1797: checking whether programs are able to redeclare getpw functions" >&5
if eval "test \"`echo '$''{'bash_cv_can_redecl_getpw'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
--- 1887,1896 ----
echo $ac_n "checking whether programs are able to redeclare getpw functions""... $ac_c" 1>&6
! echo "configure:1890: checking whether programs are able to redeclare getpw functions" >&5
if eval "test \"`echo '$''{'bash_cv_can_redecl_getpw'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
***************
*** 1810,1814 ****
; return 0; }
EOF
! if { (eval echo configure:1813: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_can_redecl_getpw=yes
--- 1903,1907 ----
; return 0; }
EOF
! if { (eval echo configure:1906: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_can_redecl_getpw=yes
***************
*** 1832,1836 ****
echo $ac_n "checking whether or not strcoll and strcmp differ""... $ac_c" 1>&6
! echo "configure:1835: checking whether or not strcoll and strcmp differ" >&5
if eval "test \"`echo '$''{'bash_cv_func_strcoll_broken'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
--- 1925,1929 ----
echo $ac_n "checking whether or not strcoll and strcmp differ""... $ac_c" 1>&6
! echo "configure:1928: checking whether or not strcoll and strcmp differ" >&5
if eval "test \"`echo '$''{'bash_cv_func_strcoll_broken'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
***************
*** 1842,1846 ****
else
cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
then
bash_cv_func_strcoll_broken=yes
--- 1974,1978 ----
EOF
! if { (eval echo configure:1977: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
bash_cv_func_strcoll_broken=yes
***************
*** 1905,1914 ****
echo $ac_n "checking whether signal handlers are of type void""... $ac_c" 1>&6
! echo "configure:1908: checking whether signal handlers are of type void" >&5
if eval "test \"`echo '$''{'bash_cv_void_sighandler'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
--- 1998,2007 ----
echo $ac_n "checking whether signal handlers are of type void""... $ac_c" 1>&6
! echo "configure:2001: checking whether signal handlers are of type void" >&5
if eval "test \"`echo '$''{'bash_cv_void_sighandler'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
***************
*** 1925,1929 ****
; return 0; }
EOF
! if { (eval echo configure:1928: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_void_sighandler=yes
--- 2018,2022 ----
; return 0; }
EOF
! if { (eval echo configure:2021: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_void_sighandler=yes
***************
*** 1945,1954 ****
echo $ac_n "checking for TIOCGWINSZ in sys/ioctl.h""... $ac_c" 1>&6
! echo "configure:1948: checking for TIOCGWINSZ in sys/ioctl.h" >&5
if eval "test \"`echo '$''{'bash_cv_tiocgwinsz_in_ioctl'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
--- 2038,2047 ----
echo $ac_n "checking for TIOCGWINSZ in sys/ioctl.h""... $ac_c" 1>&6
! echo "configure:2041: checking for TIOCGWINSZ in sys/ioctl.h" >&5
if eval "test \"`echo '$''{'bash_cv_tiocgwinsz_in_ioctl'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
***************
*** 1958,1962 ****
; return 0; }
EOF
! if { (eval echo configure:1961: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_tiocgwinsz_in_ioctl=yes
--- 2051,2055 ----
; return 0; }
EOF
! if { (eval echo configure:2054: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_tiocgwinsz_in_ioctl=yes
***************
*** 1979,1988 ****
echo $ac_n "checking for TIOCSTAT in sys/ioctl.h""... $ac_c" 1>&6
! echo "configure:1982: checking for TIOCSTAT in sys/ioctl.h" >&5
if eval "test \"`echo '$''{'bash_cv_tiocstat_in_ioctl'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
--- 2072,2081 ----
echo $ac_n "checking for TIOCSTAT in sys/ioctl.h""... $ac_c" 1>&6
! echo "configure:2075: checking for TIOCSTAT in sys/ioctl.h" >&5
if eval "test \"`echo '$''{'bash_cv_tiocstat_in_ioctl'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
***************
*** 1992,1996 ****
; return 0; }
EOF
! if { (eval echo configure:1995: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_tiocstat_in_ioctl=yes
--- 2085,2089 ----
; return 0; }
EOF
! if { (eval echo configure:2088: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_tiocstat_in_ioctl=yes
***************
*** 2013,2022 ****
echo $ac_n "checking for FIONREAD in sys/ioctl.h""... $ac_c" 1>&6
! echo "configure:2016: checking for FIONREAD in sys/ioctl.h" >&5
if eval "test \"`echo '$''{'bash_cv_fionread_in_ioctl'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
--- 2106,2115 ----
echo $ac_n "checking for FIONREAD in sys/ioctl.h""... $ac_c" 1>&6
! echo "configure:2109: checking for FIONREAD in sys/ioctl.h" >&5
if eval "test \"`echo '$''{'bash_cv_fionread_in_ioctl'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
***************
*** 2026,2030 ****
; return 0; }
EOF
! if { (eval echo configure:2029: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_fionread_in_ioctl=yes
--- 2119,2123 ----
; return 0; }
EOF
! if { (eval echo configure:2122: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_fionread_in_ioctl=yes
***************
*** 2047,2056 ****
echo $ac_n "checking for speed_t in sys/types.h""... $ac_c" 1>&6
! echo "configure:2050: checking for speed_t in sys/types.h" >&5
if eval "test \"`echo '$''{'bash_cv_speed_t_in_sys_types'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
--- 2140,2149 ----
echo $ac_n "checking for speed_t in sys/types.h""... $ac_c" 1>&6
! echo "configure:2143: checking for speed_t in sys/types.h" >&5
if eval "test \"`echo '$''{'bash_cv_speed_t_in_sys_types'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
***************
*** 2059,2063 ****
; return 0; }
EOF
! if { (eval echo configure:2062: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_speed_t_in_sys_types=yes
--- 2152,2156 ----
; return 0; }
EOF
! if { (eval echo configure:2155: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_speed_t_in_sys_types=yes
***************
*** 2080,2089 ****
echo $ac_n "checking for struct winsize in sys/ioctl.h and termios.h""... $ac_c" 1>&6
! echo "configure:2083: checking for struct winsize in sys/ioctl.h and termios.h" >&5
if eval "test \"`echo '$''{'bash_cv_struct_winsize_header'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
--- 2173,2182 ----
echo $ac_n "checking for struct winsize in sys/ioctl.h and termios.h""... $ac_c" 1>&6
! echo "configure:2176: checking for struct winsize in sys/ioctl.h and termios.h" >&5
if eval "test \"`echo '$''{'bash_cv_struct_winsize_header'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <
***************
*** 2093,2097 ****
; return 0; }
EOF
! if { (eval echo configure:2096: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_struct_winsize_header=ioctl_h
--- 2186,2190 ----
; return 0; }
EOF
! if { (eval echo configure:2189: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_struct_winsize_header=ioctl_h
***************
*** 2101,2105 ****
rm -rf conftest*
cat > conftest.$ac_ext <
--- 2194,2198 ----
rm -rf conftest*
cat > conftest.$ac_ext <
***************
*** 2109,2113 ****
; return 0; }
EOF
! if { (eval echo configure:2112: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_struct_winsize_header=termios_h
--- 2202,2206 ----
; return 0; }
EOF
! if { (eval echo configure:2205: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_struct_winsize_header=termios_h
***************
*** 2142,2151 ****
echo $ac_n "checking if struct dirent has a d_ino member""... $ac_c" 1>&6
! echo "configure:2145: checking if struct dirent has a d_ino member" >&5
if eval "test \"`echo '$''{'bash_cv_dirent_has_dino'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <&6
! echo "configure:2238: checking if struct dirent has a d_ino member" >&5
if eval "test \"`echo '$''{'bash_cv_dirent_has_dino'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_dirent_has_dino=yes
--- 2269,2273 ----
; return 0; }
EOF
! if { (eval echo configure:2272: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_dirent_has_dino=yes
***************
*** 2198,2207 ****
echo $ac_n "checking if struct dirent has a d_fileno member""... $ac_c" 1>&6
! echo "configure:2201: checking if struct dirent has a d_fileno member" >&5
if eval "test \"`echo '$''{'bash_cv_dirent_has_d_fileno'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <&6
! echo "configure:2294: checking if struct dirent has a d_fileno member" >&5
if eval "test \"`echo '$''{'bash_cv_dirent_has_d_fileno'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_dirent_has_d_fileno=yes
--- 2325,2329 ----
; return 0; }
EOF
! if { (eval echo configure:2328: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
bash_cv_dirent_has_d_fileno=yes
***************
*** 2261,2265 ****
else
echo $ac_n "checking which library has the termcap functions""... $ac_c" 1>&6
! echo "configure:2264: checking which library has the termcap functions" >&5
_bash_needmsg=
fi
--- 2354,2358 ----
else
echo $ac_n "checking which library has the termcap functions""... $ac_c" 1>&6
! echo "configure:2357: checking which library has the termcap functions" >&5
_bash_needmsg=
fi
***************
*** 2268,2272 ****
else
echo $ac_n "checking for tgetent in -ltermcap""... $ac_c" 1>&6
! echo "configure:2271: checking for tgetent in -ltermcap" >&5
ac_lib_var=`echo termcap'_'tgetent | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
--- 2361,2365 ----
else
echo $ac_n "checking for tgetent in -ltermcap""... $ac_c" 1>&6
! echo "configure:2364: checking for tgetent in -ltermcap" >&5
ac_lib_var=`echo termcap'_'tgetent | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
***************
*** 2276,2280 ****
LIBS="-ltermcap $LIBS"
cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
--- 2380,2384 ----
; return 0; }
EOF
! if { (eval echo configure:2383: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
***************
*** 2306,2310 ****
echo "$ac_t""no" 1>&6
echo $ac_n "checking for tgetent in -lcurses""... $ac_c" 1>&6
! echo "configure:2309: checking for tgetent in -lcurses" >&5
ac_lib_var=`echo curses'_'tgetent | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
--- 2399,2403 ----
echo "$ac_t""no" 1>&6
echo $ac_n "checking for tgetent in -lcurses""... $ac_c" 1>&6
! echo "configure:2402: checking for tgetent in -lcurses" >&5
ac_lib_var=`echo curses'_'tgetent | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
***************
*** 2314,2318 ****
LIBS="-lcurses $LIBS"
cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
--- 2418,2422 ----
; return 0; }
EOF
! if { (eval echo configure:2421: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
***************
*** 2344,2348 ****
echo "$ac_t""no" 1>&6
echo $ac_n "checking for tgetent in -lncurses""... $ac_c" 1>&6
! echo "configure:2347: checking for tgetent in -lncurses" >&5
ac_lib_var=`echo ncurses'_'tgetent | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
--- 2437,2441 ----
echo "$ac_t""no" 1>&6
echo $ac_n "checking for tgetent in -lncurses""... $ac_c" 1>&6
! echo "configure:2440: checking for tgetent in -lncurses" >&5
ac_lib_var=`echo ncurses'_'tgetent | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
***************
*** 2352,2356 ****
LIBS="-lncurses $LIBS"
cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
--- 2456,2460 ----
; return 0; }
EOF
! if { (eval echo configure:2459: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
***************
*** 2392,2396 ****
if test "X$_bash_needmsg" = "Xyes"; then
echo $ac_n "checking which library has the termcap functions""... $ac_c" 1>&6
! echo "configure:2395: checking which library has the termcap functions" >&5
fi
echo "$ac_t""using $bash_cv_termcap_lib" 1>&6
--- 2485,2489 ----
if test "X$_bash_needmsg" = "Xyes"; then
echo $ac_n "checking which library has the termcap functions""... $ac_c" 1>&6
! echo "configure:2488: checking which library has the termcap functions" >&5
fi
echo "$ac_t""using $bash_cv_termcap_lib" 1>&6
***************
*** 2429,2434 ****
if test -f ${srcdir}/support/shobj-conf; then
echo $ac_n "checking configuration for building shared libraries""... $ac_c" 1>&6
! echo "configure:2432: checking configuration for building shared libraries" >&5
! eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C ${CC} -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
--- 2522,2527 ----
if test -f ${srcdir}/support/shobj-conf; then
echo $ac_n "checking configuration for building shared libraries""... $ac_c" 1>&6
! echo "configure:2525: checking configuration for building shared libraries" >&5
! eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
***************
*** 2444,2450 ****
echo "$ac_t""$SHLIB_STATUS" 1>&6
fi
! BUILD_DIR=`pwd`
--- 2537,2554 ----
echo "$ac_t""$SHLIB_STATUS" 1>&6
+
+ # shared library versioning
+ # quoted for m4 so I can use character classes
+ SHLIB_MAJOR=`expr "$LIBVERSION" : '\([0-9]\)\..*'`
+ SHLIB_MINOR=`expr "$LIBVERSION" : '[0-9]\.\([0-9]\).*'`
+
+
fi
! case "$host_os" in
! msdosdjgpp*) BUILD_DIR=`pwd.exe` ;; # to prevent //d/path/file
! *) BUILD_DIR=`pwd` ;;
! esac
!
***************
*** 2487,2491 ****
# and sets the high bit in the cache file unless we assign to the vars.
(set) 2>&1 |
! case `(ac_space=' '; set) 2>&1` in
*ac_space=\ *)
# `set' does not quote correctly, so add quotes (double-quote substitution
--- 2591,2595 ----
# 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
***************
*** 2554,2558 ****
exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
-version | --version | --versio | --versi | --vers | --ver | --ve | --v)
! echo "$CONFIG_STATUS generated by autoconf version 2.12"
exit 0 ;;
-help | --help | --hel | --he | --h)
--- 2658,2662 ----
exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
-version | --version | --versio | --versi | --vers | --ver | --ve | --v)
! echo "$CONFIG_STATUS generated by autoconf version 2.13"
exit 0 ;;
-help | --help | --hel | --he | --h)
***************
*** 2574,2580 ****
--- 2678,2686 ----
$ac_vpsub
$extrasub
+ s%@SHELL@%$SHELL%g
s%@CFLAGS@%$CFLAGS%g
s%@CPPFLAGS@%$CPPFLAGS%g
s%@CXXFLAGS@%$CXXFLAGS%g
+ s%@FFLAGS@%$FFLAGS%g
s%@DEFS@%$DEFS%g
s%@LDFLAGS@%$LDFLAGS%g
***************
*** 2603,2606 ****
--- 2709,2713 ----
s%@CPP@%$CPP%g
s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
+ s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
s%@INSTALL_DATA@%$INSTALL_DATA%g
s%@AR@%$AR%g
***************
*** 2619,2622 ****
--- 2726,2731 ----
s%@SHLIB_LIBVERSION@%$SHLIB_LIBVERSION%g
s%@SHLIB_LIBS@%$SHLIB_LIBS%g
+ s%@SHLIB_MAJOR@%$SHLIB_MAJOR%g
+ s%@SHLIB_MINOR@%$SHLIB_MINOR%g
s%@BUILD_DIR@%$BUILD_DIR%g
s%@LOCAL_CFLAGS@%$LOCAL_CFLAGS%g
diff -Nrc2 readline-4.0/configure.in readline-4.1/configure.in
*** readline-4.0/configure.in Thu Feb 18 12:23:02 1999
--- readline-4.1/configure.in Wed Mar 1 14:52:34 2000
***************
*** 5,10 ****
dnl
dnl Process this file with autoconf to produce a configure script.
! AC_REVISION([for Readline 4.0, version 2.14, from autoconf version] AC_ACVERSION)
! LIBVERSION=4.0
AC_INIT(readline.h)
--- 5,10 ----
dnl
dnl Process this file with autoconf to produce a configure script.
! AC_REVISION([for Readline 4.1, version 2.22, from autoconf version] AC_ACVERSION)
! LIBVERSION=4.1
AC_INIT(readline.h)
***************
*** 33,36 ****
--- 33,37 ----
AC_PROG_CC
+ dnl AC_AIX
AC_MINIX
***************
*** 54,58 ****
AC_HEADER_DIRENT
! AC_CHECK_FUNCS(strcasecmp select setenv putenv tcgetattr setlocale lstat)
AC_FUNC_STRCOLL
--- 55,60 ----
AC_HEADER_DIRENT
! AC_CHECK_FUNCS(lstat memmove putenv select setenv setlocale \
! strcasecmp tcgetattr)
AC_FUNC_STRCOLL
***************
*** 103,107 ****
if test -f ${srcdir}/support/shobj-conf; then
AC_MSG_CHECKING(configuration for building shared libraries)
! eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C ${CC} -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
AC_SUBST(SHOBJ_CC)
AC_SUBST(SHOBJ_CFLAGS)
--- 105,109 ----
if test -f ${srcdir}/support/shobj-conf; then
AC_MSG_CHECKING(configuration for building shared libraries)
! eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
AC_SUBST(SHOBJ_CC)
AC_SUBST(SHOBJ_CFLAGS)
***************
*** 117,123 ****
AC_SUBST(SHLIB_LIBS)
AC_MSG_RESULT($SHLIB_STATUS)
fi
! BUILD_DIR=`pwd`
AC_SUBST(BUILD_DIR)
--- 119,136 ----
AC_SUBST(SHLIB_LIBS)
AC_MSG_RESULT($SHLIB_STATUS)
+
+ # shared library versioning
+ # quoted for m4 so I can use character classes
+ SHLIB_MAJOR=[`expr "$LIBVERSION" : '\([0-9]\)\..*'`]
+ SHLIB_MINOR=[`expr "$LIBVERSION" : '[0-9]\.\([0-9]\).*'`]
+ AC_SUBST(SHLIB_MAJOR)
+ AC_SUBST(SHLIB_MINOR)
fi
! case "$host_os" in
! msdosdjgpp*) BUILD_DIR=`pwd.exe` ;; # to prevent //d/path/file
! *) BUILD_DIR=`pwd` ;;
! esac
!
AC_SUBST(BUILD_DIR)
diff -Nrc2 readline-4.0/display.c readline-4.1/display.c
*** readline-4.0/display.c Thu Dec 17 15:36:30 1998
--- readline-4.1/display.c Thu Sep 16 11:19:40 1999
***************
*** 8,12 ****
The GNU Readline Library is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License
! as published by the Free Software Foundation; either version 1, or
(at your option) any later version.
--- 8,12 ----
The GNU Readline Library is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public License
! as published by the Free Software Foundation; either version 2, or
(at your option) any later version.
***************
*** 19,23 ****
is generally kept in a file called COPYING or LICENSE. If you do not
have a copy of the license, write to the Free Software Foundation,
! 675 Mass Ave, Cambridge, MA 02139, USA. */
#define READLINE_LIBRARY
--- 19,23 ----
is generally kept in a file called COPYING or LICENSE. If you do not
have a copy of the license, write to the Free Software Foundation,
! 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
#define READLINE_LIBRARY
***************
*** 42,50 ****
#include
- #if defined (__GO32__)
- # include
- # include
- #endif /* __GO32__ */
-
/* System-specific feature definitions and include files. */
#include "rldefs.h"
--- 42,45 ----
***************
*** 57,102 ****
#include "history.h"
#if !defined (strchr) && !defined (__STDC__)
extern char *strchr (), *strrchr ();
#endif /* !strchr && !__STDC__ */
! /* Global and pseudo-global variables and functions
! imported from readline.c. */
! extern char *rl_prompt;
! extern int readline_echoing_p;
!
! extern int _rl_output_meta_chars;
! extern int _rl_horizontal_scroll_mode;
! extern int _rl_mark_modified_lines;
! extern int _rl_prefer_visible_bell;
!
! /* Variables and functions imported from terminal.c */
! extern void _rl_output_some_chars ();
! #ifdef _MINIX
! extern void _rl_output_character_function ();
! #else
! extern int _rl_output_character_function ();
#endif
- extern int _rl_backspace ();
! extern char *term_clreol, *term_clrpag;
! extern char *term_im, *term_ic, *term_ei, *term_DC;
! extern char *term_up, *term_dc, *term_cr, *term_IC;
! extern int screenheight, screenwidth, screenchars;
! extern int terminal_can_insert, _rl_term_autowrap;
!
! /* Pseudo-global functions (local to the readline library) exported
! by this file. */
! void _rl_move_cursor_relative (), _rl_output_some_chars ();
! void _rl_move_vert ();
! void _rl_clear_to_eol (), _rl_clear_screen ();
!
! static void update_line (), space_to_eol ();
! static void delete_chars (), insert_some_chars ();
! static void cr ();
static int *inv_lbreaks, *vis_lbreaks;
!
! extern char *xmalloc (), *xrealloc ();
/* Heuristic used to decide whether it is faster to move from CUR to NEW
--- 52,74 ----
#include "history.h"
+ #include "rlprivate.h"
+ #include "xmalloc.h"
+
#if !defined (strchr) && !defined (__STDC__)
extern char *strchr (), *strrchr ();
#endif /* !strchr && !__STDC__ */
! #if defined (HACK_TERMCAP_MOTION)
! extern char *term_forward_char;
#endif
! static void update_line __P((char *, char *, int, int, int, int));
! static void space_to_eol __P((int));
! static void delete_chars __P((int));
! static void insert_some_chars __P((char *, int));
! static void cr __P((void));
static int *inv_lbreaks, *vis_lbreaks;
! static int inv_lbsize, vis_lbsize;
/* Heuristic used to decide whether it is faster to move from CUR to NEW
***************
*** 191,195 ****
characters in *LP, if LP is not null. This is currently more-or-less
a placeholder for expansion. LIP, if non-null is a place to store the
! index of the last invisible character in ther eturned string. */
/* Current implementation:
--- 163,167 ----
characters in *LP, if LP is not null. This is currently more-or-less
a placeholder for expansion. LIP, if non-null is a place to store the
! index of the last invisible character in the returned string. */
/* Current implementation:
***************
*** 251,254 ****
--- 223,238 ----
}
+ /* Just strip out RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE from
+ PMT and return the rest of PMT. */
+ char *
+ _rl_strip_prompt (pmt)
+ char *pmt;
+ {
+ char *ret;
+
+ ret = expand_prompt (pmt, (int *)NULL, (int *)NULL);
+ return ret;
+ }
+
/*
* Expand the prompt string into the various display components, if
***************
*** 308,311 ****
--- 292,338 ----
}
+ /* Initialize the VISIBLE_LINE and INVISIBLE_LINE arrays, and their associated
+ arrays of line break markers. MINSIZE is the minimum size of VISIBLE_LINE
+ and INVISIBLE_LINE; if it is greater than LINE_SIZE, LINE_SIZE is
+ increased. If the lines have already been allocated, this ensures that
+ they can hold at least MINSIZE characters. */
+ static void
+ init_line_structures (minsize)
+ int minsize;
+ {
+ register int n;
+
+ if (invisible_line == 0) /* initialize it */
+ {
+ if (line_size < minsize)
+ line_size = minsize;
+ visible_line = xmalloc (line_size);
+ invisible_line = xmalloc (line_size);
+ }
+ else if (line_size < minsize) /* ensure it can hold MINSIZE chars */
+ {
+ line_size *= 2;
+ if (line_size < minsize)
+ line_size = minsize;
+ visible_line = xrealloc (visible_line, line_size);
+ invisible_line = xrealloc (invisible_line, line_size);
+ }
+
+ for (n = minsize; n < line_size; n++)
+ {
+ visible_line[n] = 0;
+ invisible_line[n] = 1;
+ }
+
+ if (vis_lbreaks == 0)
+ {
+ /* should be enough. */
+ inv_lbsize = vis_lbsize = 256;
+ inv_lbreaks = (int *)xmalloc (inv_lbsize * sizeof (int));
+ vis_lbreaks = (int *)xmalloc (vis_lbsize * sizeof (int));
+ inv_lbreaks[0] = vis_lbreaks[0] = 0;
+ }
+ }
+
/* Basic redisplay algorithm. */
void
***************
*** 326,342 ****
if (invisible_line == 0)
{
! visible_line = xmalloc (line_size);
! invisible_line = xmalloc (line_size);
! for (in = 0; in < line_size; in++)
! {
! visible_line[in] = 0;
! invisible_line[in] = 1;
! }
!
! /* should be enough, but then again, this is just for testing. */
! inv_lbreaks = (int *)malloc (256 * sizeof (int));
! vis_lbreaks = (int *)malloc (256 * sizeof (int));
! inv_lbreaks[0] = vis_lbreaks[0] = 0;
!
rl_on_new_line ();
}
--- 353,357 ----
if (invisible_line == 0)
{
! init_line_structures (0);
rl_on_new_line ();
}
***************
*** 396,405 ****
{
prompt_this_line++;
if (forced_display)
{
! _rl_output_some_chars (rl_display_prompt, prompt_this_line - rl_display_prompt);
/* Make sure we are at column zero even after a newline,
regardless of the state of terminal output processing. */
! if (prompt_this_line[-2] != '\r')
cr ();
}
--- 411,421 ----
{
prompt_this_line++;
+ pmtlen = prompt_this_line - rl_display_prompt; /* temp var */
if (forced_display)
{
! _rl_output_some_chars (rl_display_prompt, pmtlen);
/* Make sure we are at column zero even after a newline,
regardless of the state of terminal output processing. */
! if (pmtlen < 2 || prompt_this_line[-2] != '\r')
cr ();
}
***************
*** 420,423 ****
--- 436,448 ----
}
+ #define CHECK_INV_LBREAKS() \
+ do { \
+ if (newlines >= (inv_lbsize - 2)) \
+ { \
+ inv_lbsize *= 2; \
+ inv_lbreaks = (int *)xrealloc (inv_lbreaks, inv_lbsize * sizeof (int)); \
+ } \
+ } while (0)
+
#define CHECK_LPOS() \
do { \
***************
*** 425,428 ****
--- 450,458 ----
if (lpos >= screenwidth) \
{ \
+ if (newlines >= (inv_lbsize - 2)) \
+ { \
+ inv_lbsize *= 2; \
+ inv_lbreaks = (int *)xrealloc (inv_lbreaks, inv_lbsize * sizeof (int)); \
+ } \
inv_lbreaks[++newlines] = out; \
lpos = 0; \
***************
*** 438,449 ****
while (lpos >= screenwidth)
{
- #if 0
- temp = ((newlines + 1) * screenwidth) - ((newlines == 0) ? wrap_offset : 0);
- #else
/* XXX - possible fix from Darin Johnson for prompt
string with invisible characters that is longer than the screen
! width. */
temp = ((newlines + 1) * screenwidth) + ((newlines == 0) ? wrap_offset : 0);
! #endif
inv_lbreaks[++newlines] = temp;
lpos -= screenwidth;
--- 468,478 ----
while (lpos >= screenwidth)
{
/* XXX - possible fix from Darin Johnson for prompt
string with invisible characters that is longer than the screen
! width. XXX - this doesn't work right if invisible characters have
! to be put on the second screen line -- it adds too much (the number
! of invisible chars after the screenwidth). */
temp = ((newlines + 1) * screenwidth) + ((newlines == 0) ? wrap_offset : 0);
!
inv_lbreaks[++newlines] = temp;
lpos -= screenwidth;
***************
*** 478,481 ****
--- 507,511 ----
{
temp = screenwidth - lpos;
+ CHECK_INV_LBREAKS ();
inv_lbreaks[++newlines] = out + temp;
lpos = 4 - temp;
***************
*** 507,510 ****
--- 537,541 ----
register int temp2;
temp2 = screenwidth - lpos;
+ CHECK_INV_LBREAKS ();
inv_lbreaks[++newlines] = out + temp2;
lpos = temp - temp2;
***************
*** 523,526 ****
--- 554,558 ----
{
line[out++] = '\0'; /* XXX - sentinel */
+ CHECK_INV_LBREAKS ();
inv_lbreaks[++newlines] = out;
lpos = 0;
***************
*** 547,550 ****
--- 579,583 ----
inv_botlin = lb_botlin = newlines;
+ CHECK_INV_LBREAKS ();
inv_lbreaks[newlines+1] = out;
cursor_linenum = lb_linenum;
***************
*** 652,657 ****
--- 685,694 ----
_rl_last_c_pos <= last_invisible && local_prompt)
{
+ #if defined (__MSDOS__)
+ putc ('\r', rl_outstream);
+ #else
if (term_cr)
tputs (term_cr, 1, _rl_output_character_function);
+ #endif
_rl_output_some_chars (local_prompt, nleft);
_rl_last_c_pos = nleft;
***************
*** 773,781 ****
{
char *temp = visible_line;
! int *itemp = vis_lbreaks;
visible_line = invisible_line;
invisible_line = temp;
vis_lbreaks = inv_lbreaks;
inv_lbreaks = itemp;
rl_display_fixed = 0;
/* If we are displaying on a single line, and last_lmargin is > 0, we
--- 810,824 ----
{
char *temp = visible_line;
! int *itemp = vis_lbreaks, ntemp = vis_lbsize;
!
visible_line = invisible_line;
invisible_line = temp;
+
vis_lbreaks = inv_lbreaks;
inv_lbreaks = itemp;
+
+ vis_lbsize = inv_lbsize;
+ inv_lbsize = ntemp;
+
rl_display_fixed = 0;
/* If we are displaying on a single line, and last_lmargin is > 0, we
***************
*** 900,904 ****
--- 943,951 ----
od > lendiff && _rl_last_c_pos < last_invisible)
{
+ #if defined (__MSDOS__)
+ putc ('\r', rl_outstream);
+ #else
tputs (term_cr, 1, _rl_output_character_function);
+ #endif
_rl_output_some_chars (local_prompt, lendiff);
_rl_last_c_pos = lendiff;
***************
*** 1030,1033 ****
--- 1077,1132 ----
}
+ /* Tell the update routines that we have moved onto a new line with the
+ prompt already displayed. Code originally from the version of readline
+ distributed with CLISP. */
+ int
+ rl_on_new_line_with_prompt ()
+ {
+ int prompt_size, i, l, real_screenwidth, newlines;
+ char *prompt_last_line;
+
+ /* Initialize visible_line and invisible_line to ensure that they can hold
+ the already-displayed prompt. */
+ prompt_size = strlen (rl_prompt) + 1;
+ init_line_structures (prompt_size);
+
+ /* Make sure the line structures hold the already-displayed prompt for
+ redisplay. */
+ strcpy (visible_line, rl_prompt);
+ strcpy (invisible_line, rl_prompt);
+
+ /* If the prompt contains newlines, take the last tail. */
+ prompt_last_line = strrchr (rl_prompt, '\n');
+ if (!prompt_last_line)
+ prompt_last_line = rl_prompt;
+
+ l = strlen (prompt_last_line);
+ _rl_last_c_pos = l;
+
+ /* Dissect prompt_last_line into screen lines. Note that here we have
+ to use the real screenwidth. Readline's notion of screenwidth might be
+ one less, see terminal.c. */
+ real_screenwidth = screenwidth + (_rl_term_autowrap ? 0 : 1);
+ _rl_last_v_pos = l / real_screenwidth;
+ /* If the prompt length is a multiple of real_screenwidth, we don't know
+ whether the cursor is at the end of the last line, or already at the
+ beginning of the next line. Output a newline just to be safe. */
+ if (l > 0 && (l % real_screenwidth) == 0)
+ _rl_output_some_chars ("\n", 1);
+ last_lmargin = 0;
+
+ newlines = 0; i = 0;
+ while (i <= l)
+ {
+ _rl_vis_botlin = newlines;
+ vis_lbreaks[newlines++] = i;
+ i += real_screenwidth;
+ }
+ vis_lbreaks[newlines] = l;
+ visible_wrap_offset = 0;
+
+ return 0;
+ }
+
/* Actually update the display, period. */
int
***************
*** 1087,1092 ****
data is underneath the cursor. */
#if defined (HACK_TERMCAP_MOTION)
- extern char *term_forward_char;
-
if (term_forward_char)
for (i = _rl_last_c_pos; i < new; i++)
--- 1186,1189 ----
***************
*** 1115,1132 ****
return;
- #if defined (__GO32__)
- {
- int row, col;
-
- ScreenGetCursor (&row, &col);
- ScreenSetCursor ((row + to - _rl_last_v_pos), col);
- }
- #else /* !__GO32__ */
-
if ((delta = to - _rl_last_v_pos) > 0)
{
for (i = 0; i < delta; i++)
putc ('\n', rl_outstream);
tputs (term_cr, 1, _rl_output_character_function);
_rl_last_c_pos = 0;
}
--- 1212,1224 ----
return;
if ((delta = to - _rl_last_v_pos) > 0)
{
for (i = 0; i < delta; i++)
putc ('\n', rl_outstream);
+ #if defined (__MSDOS__)
+ putc ('\r', rl_outstream);
+ #else
tputs (term_cr, 1, _rl_output_character_function);
+ #endif
_rl_last_c_pos = 0;
}
***************
*** 1137,1141 ****
tputs (term_up, 1, _rl_output_character_function);
}
! #endif /* !__GO32__ */
_rl_last_v_pos = to; /* Now TO is here */
}
--- 1229,1233 ----
tputs (term_up, 1, _rl_output_character_function);
}
!
_rl_last_v_pos = to; /* Now TO is here */
}
***************
*** 1345,1353 ****
int count;
{
- #if !defined (__GO32__)
if (term_clreol)
tputs (term_clreol, 1, _rl_output_character_function);
else if (count)
- #endif /* !__GO32__ */
space_to_eol (count);
}
--- 1437,1443 ----
***************
*** 1370,1378 ****
_rl_clear_screen ()
{
- #if !defined (__GO32__)
if (term_clrpag)
tputs (term_clrpag, 1, _rl_output_character_function);
else
- #endif /* !__GO32__ */
crlf ();
}
--- 1460,1466 ----
***************
*** 1384,1401 ****
int count;
{
- #if defined (__GO32__)
- int row, col, width;
- char *row_start;
-
- ScreenGetCursor (&row, &col);
- width = ScreenCols ();
- row_start = ScreenPrimary + (row * width);
-
- memcpy (row_start + col + count, row_start + col, width - col - count);
-
- /* Place the text on the screen. */
- _rl_output_some_chars (string, count);
- #else /* !_GO32 */
-
/* If IC is defined, then we do not have to "enter" insert mode. */
if (term_IC)
--- 1472,1475 ----
***************
*** 1430,1434 ****
tputs (term_ei, 1, _rl_output_character_function);
}
- #endif /* !__GO32__ */
}
--- 1504,1507 ----
***************
*** 1438,1453 ****
int count;
{
- #if defined (__GO32__)
- int row, col, width;
- char *row_start;
-
- ScreenGetCursor (&row, &col);
- width = ScreenCols ();
- row_start = ScreenPrimary + (row * width);
-
- memcpy (row_start + col, row_start + col + count, width - col - count);
- memset (row_start + width - count, 0, count * 2);
- #else /* !_GO32 */
-
if (count > screenwidth) /* XXX */
return;
--- 1511,1514 ----
***************
*** 1465,1469 ****
tputs (term_dc, 1, _rl_output_character_function);
}
- #endif /* !__GO32__ */
}
--- 1526,1529 ----
***************
*** 1487,1491 ****
--- 1547,1555 ----
{
char *last_line;
+ #if 0
last_line = &visible_line[inv_lbreaks[_rl_vis_botlin]];
+ #else
+ last_line = &visible_line[vis_lbreaks[_rl_vis_botlin]];
+ #endif
_rl_move_cursor_relative (screenwidth - 1, last_line);
_rl_clear_to_eol (0);
***************
*** 1504,1517 ****
if (term_cr)
{
tputs (term_cr, 1, _rl_output_character_function);
_rl_last_c_pos = 0;
}
}
/* Redisplay the current line after a SIGWINCH is received. */
void
_rl_redisplay_after_sigwinch ()
{
! char *t, *oldp, *oldl, *oldlprefix;
/* Clear the current line and put the cursor at column 0. Make sure
--- 1568,1616 ----
if (term_cr)
{
+ #if defined (__MSDOS__)
+ putc ('\r', rl_outstream);
+ #else
tputs (term_cr, 1, _rl_output_character_function);
+ #endif
_rl_last_c_pos = 0;
}
}
+ /* Redraw the last line of a multi-line prompt that may possibly contain
+ terminal escape sequences. Called with the cursor at column 0 of the
+ line to draw the prompt on. */
+ static void
+ redraw_prompt (t)
+ char *t;
+ {
+ char *oldp, *oldl, *oldlprefix;
+ int oldlen, oldlast, oldplen;
+
+ /* Geez, I should make this a struct. */
+ oldp = rl_display_prompt;
+ oldl = local_prompt;
+ oldlprefix = local_prompt_prefix;
+ oldlen = visible_length;
+ oldplen = prefix_length;
+ oldlast = last_invisible;
+
+ rl_display_prompt = t;
+ local_prompt = expand_prompt (t, &visible_length, &last_invisible);
+ local_prompt_prefix = (char *)NULL;
+ rl_forced_update_display ();
+
+ rl_display_prompt = oldp;
+ local_prompt = oldl;
+ local_prompt_prefix = oldlprefix;
+ visible_length = oldlen;
+ prefix_length = oldplen;
+ last_invisible = oldlast;
+ }
+
/* Redisplay the current line after a SIGWINCH is received. */
void
_rl_redisplay_after_sigwinch ()
{
! char *t;
/* Clear the current line and put the cursor at column 0. Make sure
***************
*** 1519,1524 ****
--- 1618,1631 ----
if (term_cr)
{
+ #if defined (__MSDOS__)
+ putc ('\r', rl_outstream);
+ #else
tputs (term_cr, 1, _rl_output_character_function);
+ #endif
_rl_last_c_pos = 0;
+ #if defined (__MSDOS__)
+ space_to_eol (screenwidth);
+ putc ('\r', rl_outstream);
+ #else
if (term_clreol)
tputs (term_clreol, 1, _rl_output_character_function);
***************
*** 1528,1531 ****
--- 1635,1639 ----
tputs (term_cr, 1, _rl_output_character_function);
}
+ #endif
if (_rl_last_v_pos > 0)
_rl_move_vert (0);
***************
*** 1537,1551 ****
t = strrchr (rl_display_prompt, '\n');
if (t)
! {
! oldp = rl_display_prompt;
! oldl = local_prompt;
! oldlprefix = local_prompt_prefix;
! rl_display_prompt = ++t;
! local_prompt = local_prompt_prefix = (char *)NULL;
! rl_forced_update_display ();
! rl_display_prompt = oldp;
! local_prompt = oldl;
! local_prompt_prefix = oldlprefix;
! }
else
rl_forced_update_display ();
--- 1645,1649 ----
t = strrchr (rl_display_prompt, '\n');
if (t)
! redraw_prompt (++t);
else
rl_forced_update_display ();
***************
*** 1571,1573 ****
--- 1669,1693 ----
cr ();
fflush (rl_outstream);
+ }
+
+ /* return the `current display line' of the cursor -- the number of lines to
+ move up to get to the first screen line of the current readline line. */
+ int
+ _rl_current_display_line ()
+ {
+ int ret, nleft;
+
+ /* Find out whether or not there might be invisible characters in the
+ editing buffer. */
+ if (rl_display_prompt == rl_prompt)
+ nleft = _rl_last_c_pos - screenwidth - rl_visible_prompt_length;
+ else
+ nleft = _rl_last_c_pos - screenwidth;
+
+ if (nleft > 0)
+ ret = 1 + nleft / screenwidth;
+ else
+ ret = 0;
+
+ return ret;
}
diff -Nrc2 readline-4.0/doc/Makefile.in readline-4.1/doc/Makefile.in
*** readline-4.0/doc/Makefile.in Thu Feb 18 12:24:36 1999
--- readline-4.1/doc/Makefile.in Mon Jan 24 10:28:02 2000
***************
*** 1,5 ****
# This makefile for Readline library documentation is in -*- text -*- mode.
# Emacs likes it that way.
! top_srcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = .:@srcdir@
--- 1,22 ----
# This makefile for Readline library documentation is in -*- text -*- mode.
# Emacs likes it that way.
!
! # Copyright (C) 1996 Free Software Foundation, Inc.
!
! # This program is free software; you can redistribute it and/or modify
! # it under the terms of the GNU General Public License as published by
! # the Free Software Foundation; either version 2, or (at your option)
! # any later version.
!
! # This program is distributed in the hope that it will be useful,
! # but WITHOUT ANY WARRANTY; without even the implied warranty of
! # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! # GNU General Public License for more details.
!
! # You should have received a copy of the GNU General Public License
! # along with this program; if not, write to the Free Software
! # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
!
! topdir = @top_srcdir@
srcdir = @srcdir@
VPATH = .:@srcdir@
***************
*** 9,31 ****
mandir = @mandir@
! man3dir = $(mandir)/man3
SHELL = @MAKE_SHELL@
RM = rm -f
TEXINPUTDIR = $(srcdir)
! MAKEINFO = makeinfo
TEXI2DVI = $(srcdir)/texi2dvi
TEXI2HTML = $(srcdir)/texi2html
QUIETPS = #set this to -q to shut up dvips
! DVIPS = dvips -D 300 $(QUIETPS) -o $@ # tricky
!
! INSTALL = @INSTALL@
! INSTALL_PROGRAM = @INSTALL_PROGRAM@
! INSTALL_DATA = @INSTALL_DATA@
RLSRC = $(srcdir)/rlman.texinfo $(srcdir)/rluser.texinfo \
! $(srcdir)/rltech.texinfo $(srcdir)/manvers.texinfo
HISTSRC = $(srcdir)/hist.texinfo $(srcdir)/hsuser.texinfo \
$(srcdir)/hstech.texinfo $(srcdir)/manvers.texinfo
--- 26,56 ----
mandir = @mandir@
! manpfx = man
!
! man1ext = 1
! man1dir = $(mandir)/$(manpfx)$(man1ext)
! man3ext = 3
! man3dir = $(mandir)/$(manpfx)$(man3ext)
SHELL = @MAKE_SHELL@
RM = rm -f
+ INSTALL = @INSTALL@
+ INSTALL_DATA = @INSTALL_DATA@
+
+ BUILD_DIR = @BUILD_DIR@
TEXINPUTDIR = $(srcdir)
! MAKEINFO = LANGUAGE= makeinfo
TEXI2DVI = $(srcdir)/texi2dvi
TEXI2HTML = $(srcdir)/texi2html
QUIETPS = #set this to -q to shut up dvips
! PAPERSIZE = letter
! PSDPI = 300 # I don't have any 600-dpi printers
! DVIPS = dvips -D ${PSDPI} $(QUIETPS) -t ${PAPERSIZE} -o $@ # tricky
RLSRC = $(srcdir)/rlman.texinfo $(srcdir)/rluser.texinfo \
! $(srcdir)/rltech.texinfo $(srcdir)/manvers.texinfo \
! $(srcdir)/rluserman.texinfo
HISTSRC = $(srcdir)/hist.texinfo $(srcdir)/hsuser.texinfo \
$(srcdir)/hstech.texinfo $(srcdir)/manvers.texinfo
***************
*** 37,50 ****
GROFF = groff
! DVIOBJ = readline.dvi history.dvi
! INFOOBJ = readline.info history.info
! PSOBJ = readline.ps history.ps
! HTMLOBJ = readline.html history.html
! HTMLTOC = readline_toc.html history_toc.html
TEXTOBJ = readline.0
! INTERMEDIATE_OBJ = rlman.dvi hist.dvi
! CREATED_DOCS = $(DVIOBJ) $(INFOOBJ) $(PSOBJ) $(HTMLOBJ) $(HTMLTOC) $(TEXTOBJ)
.SUFFIXES: .0 .3 .ps .txt .dvi
--- 62,74 ----
GROFF = groff
! DVIOBJ = readline.dvi history.dvi rluserman.dvi
! INFOOBJ = readline.info history.info rluserman.info
! PSOBJ = readline.ps history.ps rluserman.ps
! HTMLOBJ = readline.html history.html rluserman.html
TEXTOBJ = readline.0
! INTERMEDIATE_OBJ = rlman.dvi hist.dvi rluserman.dvi
! CREATED_DOCS = $(DVIOBJ) $(INFOOBJ) $(PSOBJ) $(HTMLOBJ) $(TEXTOBJ)
.SUFFIXES: .0 .3 .ps .txt .dvi
***************
*** 64,67 ****
--- 88,97 ----
$(MAKEINFO) --no-split -I $(TEXINPUTDIR) -o $@ $(srcdir)/rlman.texinfo
+ rluserman.dvi: $(RLSRC)
+ TEXINPUTS=.:$(TEXINPUTDIR):$$TEXINPUTS $(TEXI2DVI) $(srcdir)/rluserman.texinfo
+
+ rluserman.info: $(RLSRC)
+ $(MAKEINFO) --no-split -I $(TEXINPUTDIR) -o $@ $(srcdir)/rluserman.texinfo
+
history.dvi: ${HISTSRC}
TEXINPUTS=.:$(TEXINPUTDIR):$$TEXINPUTS $(TEXI2DVI) $(srcdir)/hist.texinfo
***************
*** 75,78 ****
--- 105,112 ----
$(DVIPS) readline.dvi
+ rluserman.ps: rluserman.dvi
+ $(RM) $@
+ $(DVIPS) rluserman.dvi
+
history.ps: history.dvi
$(RM) $@
***************
*** 81,90 ****
readline.html: ${RLSRC}
$(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/rlman.texinfo
! sed -e 's:rlman.html:readline.html:' rlman.html > readline.html
$(RM) rlman.html
history.html: ${HISTSRC}
$(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/hist.texinfo
! sed -e 's:hist.html:history.html:' hist.html > history.html
$(RM) hist.html
--- 115,127 ----
readline.html: ${RLSRC}
$(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/rlman.texinfo
! sed -e 's:rlman.html:readline.html:g' rlman.html > readline.html
$(RM) rlman.html
+ rluserman.html: ${RLSRC}
+ $(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/rluserman.texinfo
+
history.html: ${HISTSRC}
$(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/hist.texinfo
! sed -e 's:hist.html:history.html:g' hist.html > history.html
$(RM) hist.html
***************
*** 99,103 ****
clean:
$(RM) *.aux *.cp *.fn *.ky *.log *.pg *.toc *.tp *.vr *.cps *.pgs \
! *.fns *.kys *.tps *.vrs *.o core
distclean: clean
--- 136,140 ----
clean:
$(RM) *.aux *.cp *.fn *.ky *.log *.pg *.toc *.tp *.vr *.cps *.pgs \
! *.fns *.kys *.tps *.vrs *.bt *.bts *.o core
distclean: clean
***************
*** 113,118 ****
$(RM) Makefile
! installdirs: $(top_srcdir)/support/mkdirs
! -$(SHELL) $(top_srcdir)/support/mkdirs $(infodir) $(man3dir)
install: installdirs
--- 150,155 ----
$(RM) Makefile
! installdirs: $(topdir)/support/mkdirs
! -$(SHELL) $(topdir)/support/mkdirs $(infodir) $(man3dir)
install: installdirs
***************
*** 122,125 ****
--- 159,167 ----
${INSTALL_DATA} $(srcdir)/readline.info $(infodir)/readline.info; \
fi
+ if test -f rluserman.info; then \
+ ${INSTALL_DATA} rluserman.info $(infodir)/rluserman.info; \
+ else \
+ ${INSTALL_DATA} $(srcdir)/rluserman.info $(infodir)/rluserman.info; \
+ fi
if test -f history.info; then \
${INSTALL_DATA} history.info $(infodir)/history.info; \
***************
*** 127,131 ****
${INSTALL_DATA} $(srcdir)/history.info $(infodir)/history.info; \
fi
! if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
install-info --dir-file=$(infodir)/dir $(infodir)/readline.info ; \
install-info --dir-file=$(infodir)/dir $(infodir)/history.info ; \
--- 169,173 ----
${INSTALL_DATA} $(srcdir)/history.info $(infodir)/history.info; \
fi
! -if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
install-info --dir-file=$(infodir)/dir $(infodir)/readline.info ; \
install-info --dir-file=$(infodir)/dir $(infodir)/history.info ; \
***************
*** 135,138 ****
--- 177,181 ----
uninstall:
$(RM) $(infodir)/readline.info
+ $(RM) $(infodir)/rluserman.info
$(RM) $(infodir)/history.info
$(RM) $(man3dir)/readline.3
diff -Nrc2 readline-4.0/doc/hist.texinfo readline-4.1/doc/hist.texinfo
*** readline-4.0/doc/hist.texinfo Thu Dec 31 12:04:50 1998
--- readline-4.1/doc/hist.texinfo Thu Aug 5 08:25:11 1999
***************
*** 56,61 ****
Published by the Free Software Foundation @*
! 675 Massachusetts Avenue, @*
! Cambridge, MA 02139 USA
Permission is granted to make and distribute verbatim copies of
--- 56,61 ----
Published by the Free Software Foundation @*
! 59 Temple Place, Suite 330, @*
! Boston, MA 02111 USA
Permission is granted to make and distribute verbatim copies of
Binary files readline-4.0/doc/history.dvi and readline-4.1/doc/history.dvi differ
diff -Nrc2 readline-4.0/doc/history.html readline-4.1/doc/history.html
*** readline-4.0/doc/history.html Thu Dec 31 12:08:56 1998
--- readline-4.1/doc/history.html Wed Jan 19 12:18:01 2000
***************
*** 2,6 ****
GNU History Library
--- 2,6 ----
GNU History Library
***************
*** 8,13 ****
GNU History Library
! Edition 4.0, for History Library
Version 4.0.
! December 1998
Brian Fox, Free Software Foundation
Chet Ramey, Case Western Reserve University
--- 8,13 ----
GNU History Library
! Edition 4.1, for History Library
Version 4.1.
! January 2000
Brian Fox, Free Software Foundation
Chet Ramey, Case Western Reserve University
***************
*** 55,60 ****
Published by the Free Software Foundation
! 675 Massachusetts Avenue,
! Cambridge, MA 02139 USA
--- 55,60 ----
Published by the Free Software Foundation
! 59 Temple Place, Suite 330,
! Boston, MA 02111 USA
***************
*** 209,212 ****
--- 209,237 ----
+
+ For example,
+
+
+
+
+ !!
+ -
+ designates the preceding command. When you type this, the preceding
+ command is repeated in toto.
+
+
!!:$
+ -
+ designates the last argument of the preceding command. This may be
+ shortened to
!$
.
+
+ !fi:2
+ -
+ designates the second argument of the most recent command starting with
+ the letters
fi
.
+
+
+
+ Here are the word designators:
+
***************
*** 365,368 ****
--- 390,402 ----
+
+ Before declaring any functions using any functionality the History
+ library provides in other code, an application writer should include
+ the file <readline/history.h>
in any file that uses the
+ History library's features. It supplies extern declarations for all
+ of the library's public functions and variables, and declares all of
+ the public data structures.
+
+
***************
*** 784,788 ****
2
-
! if the returned line should only be displayed, but not executed,
as with the
:p
modifier (see section Modifiers).
--- 818,822 ----
2
! if the returned line should be displayed, but not executed,
as with the :p
modifier (see section Modifiers).
***************
*** 1030,1048 ****
Jump to:
! a
-
! e
-
! h
!
anchored search
!
event designators
!
history events
--- 1064,1082 ----
Jump to:
! a
-
! e
-
! h
!
anchored search
!
event designators
!
history events
***************
*** 1057,1097 ****
Jump to:
! a
-
! c
-
! g
-
! h
-
! m
-
! n
-
! p
-
! r
-
! s
-
! u
-
! w
!
add_history
append_history
!
clear_history
current_history
!
get_history_event
!
history_arg_extract
--- 1091,1131 ----
Jump to:
! a
-
! c
-
! g
-
! h
-
! m
-
! n
-
! p
-
! r
-
! s
-
! u
-
! w
!
add_history
append_history
!
clear_history
current_history
!
get_history_event
!
history_arg_extract
***************
*** 1119,1135 ****
history_truncate_file
!
max_input_history
!
next_history
!
previous_history
!
read_history
--- 1153,1169 ----
history_truncate_file
!
max_input_history
!
next_history
!
previous_history
!
read_history
***************
*** 1138,1151 ****
replace_history_entry
!
stifle_history
!
unstifle_history
using_history
!
where_history
--- 1172,1185 ----
replace_history_entry
!
stifle_history
!
unstifle_history
using_history
!
where_history
***************
*** 1155,1159 ****
! This document was generated on 31 December 1998 using the
texi2html
translator version 1.52.
--- 1189,1193 ----
! This document was generated on 19 January 2000 using the
texi2html
translator version 1.52.
diff -Nrc2 readline-4.0/doc/history.info readline-4.1/doc/history.info
*** readline-4.0/doc/history.info Thu Dec 31 12:08:33 1998
--- readline-4.1/doc/history.info Wed Jan 19 12:17:44 2000
***************
*** 1,3 ****
! This is Info file history.info, produced by Makeinfo version 1.67 from
the input file /usr/homes/chet/src/bash/readline-src/doc/hist.texinfo.
--- 1,3 ----
! This is Info file history.info, produced by Makeinfo version 1.68 from
the input file /usr/homes/chet/src/bash/readline-src/doc/hist.texinfo.
***************
*** 142,145 ****
--- 142,161 ----
line separated by single spaces.
+ For example,
+
+ `!!'
+ designates the preceding command. When you type this, the
+ preceding command is repeated in toto.
+
+ `!!:$'
+ designates the last argument of the preceding command. This may be
+ shortened to `!$'.
+
+ `!fi:2'
+ designates the second argument of the most recent command starting
+ with the letters `fi'.
+
+ Here are the word designators:
+
`0 (zero)'
The `0'th word. For many applications, this is the command word.
***************
*** 262,265 ****
--- 278,288 ----
advantage of command line editing.
+ Before declaring any functions using any functionality the History
+ library provides in other code, an application writer should include
+ the file `' in any file that uses the History
+ library's features. It supplies extern declarations for all of the
+ library's public functions and variables, and declares all of the
+ public data structures.
+
File: history.info, Node: History Storage, Next: History Functions, Prev: Introduction to History, Up: Programming with GNU History
***************
*** 528,533 ****
`2'
! if the returned line should only be displayed, but not
! executed, as with the `:p' modifier (*note Modifiers::.).
If an error ocurred in expansion, then OUTPUT contains a
--- 551,556 ----
`2'
! if the returned line should be displayed, but not executed,
! as with the `:p' modifier (*note Modifiers::.).
If an error ocurred in expansion, then OUTPUT contains a
***************
*** 769,788 ****
Node: Event Designators3669
Node: Word Designators4596
! Node: Modifiers5845
! Node: Programming with GNU History6983
! Node: Introduction to History7709
! Node: History Storage9030
! Node: History Functions10123
! Node: Initializing History and State Management11094
! Node: History List Management11886
! Node: Information About the History List13407
! Node: Moving Around the History List14713
! Node: Searching the History List15598
! Node: Managing the History File17430
! Node: History Expansion18936
! Node: History Variables20780
! Node: History Programming Example23098
! Node: Concept Index25702
! Node: Function and Variable Index26188
End Tag Table
--- 792,811 ----
Node: Event Designators3669
Node: Word Designators4596
! Node: Modifiers6225
! Node: Programming with GNU History7363
! Node: Introduction to History8089
! Node: History Storage9774
! Node: History Functions10867
! Node: Initializing History and State Management11838
! Node: History List Management12630
! Node: Information About the History List14151
! Node: Moving Around the History List15457
! Node: Searching the History List16342
! Node: Managing the History File18174
! Node: History Expansion19680
! Node: History Variables21519
! Node: History Programming Example23837
! Node: Concept Index26441
! Node: Function and Variable Index26927
End Tag Table
diff -Nrc2 readline-4.0/doc/history.ps readline-4.1/doc/history.ps
*** readline-4.0/doc/history.ps Thu Dec 31 12:09:10 1998
--- readline-4.1/doc/history.ps Wed Jan 19 12:18:06 2000
***************
*** 1,1470 ****
%!PS-Adobe-2.0
! %%Creator: dvipsk 5.58f Copyright 1986, 1994 Radical Eye Software
%%Title: history.dvi
! %%Pages: 18
%%PageOrder: Ascend
! %%BoundingBox: 0 0 596 842
! %%DocumentPaperSizes: A4
%%EndComments
! %DVIPSCommandLine: dvips -D 300 -o history.ps history.dvi
! %DVIPSParameters: dpi=300, comments removed
! %DVIPSSource: TeX output 1998.12.31:1208
! %%BeginProcSet: tex.pro
! /TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N
! /X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72
! mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1}
! ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
! isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div
! hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul
! TR[matrix currentmatrix{dup dup round sub abs 0.00001 lt{round}if}
! forall round exch round exch]setmatrix}N /@landscape{/isls true N}B
! /@manualfeed{statusdict /manualfeed true put}B /@copies{/#copies X}B
! /FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{
! /nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N
! string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N
! end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{
! /sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]
! N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup
! length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{
! 128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub
! get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data
! dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N
! /rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup
! /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx
! 0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff
! setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff
! .1 sub]{ch-image}imagemask restore}B /D{/cc X dup type /stringtype ne{]}
! if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup
! length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{
! cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin
! 0 0 moveto /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul
! add .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore userdict
! /eop-hook known{eop-hook}if showpage}N /@start{userdict /start-hook
! known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X
! /IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for
! 65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1 0
! 0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V
! {}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7
! getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{pop false}
! ifelse}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale rulex ruley false
! RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1
! false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform
! round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg
! rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail
! {dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail}B /c{-4 M}
! B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{
! 4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w}B /q{
! p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p
! a}B /bos{/SS save N}B /eos{SS restore}B end
%%EndProcSet
! TeXDict begin 39158280 55380996 1000 300 300 (history.dvi)
! @start /Fa 1 47 df<70F8F8F0E005057B840E>46 D E /Fb 1
! 47 df<0E003F007F807F80FF80FF80FF007E003C000909798815>46
! D E /Fc 26 123 df95 D<1FC0007FF00070780020180000
! 1C00001C0007FC001FFC003C1C00701C00E01C00E01C00E01C00707C003FFF800F8F8011
! 107E8F14>97 DI<03F80FFE1C0E380470006000E000E000E000E0006000700038
! 0E1C1E0FFC03F00F107E8F14>I<007E00007E00000E00000E00000E00000E00000E0007
! CE000FFE001C3E00301E00700E00E00E00E00E00E00E00E00E00E00E00E00E00700E0030
! 1E00383E001FEFC007CFC012177F9614>I<07E00FF01C38301C700CE00EE00EFFFEFFFE
! E00060007000380E1C1E0FFC03F00F107E8F14>I<00FC01FE038E07040700070007007F
! FEFFFE070007000700070007000700070007000700070007000700FFF8FFF80F177F9614
! >I<07CF001FFF80383B80301800701C00701C00701C003018003838003FF00037C00070
! 00007000003FF8001FFC003FFE00700F00E00380E00380E00380E003807007003C1E001F
! FC0007F00011197F8F14>II<06000F000F0006000000000000000000FF00FF00
! 070007000700070007000700070007000700070007000700FFF8FFF80D187C9714>I107 DIII<07C01FF03C78701C701CE00E
! E00EE00EE00EE00EE00E701C783C3C781FF007C00F107E8F14>II<03E7
! 000FF7001C1F00300F00700F00E00700E00700E00700E00700E00700E00700700F00300F
! 001C3F000FF70007C700000700000700000700000700000700000700003FE0003FE01318
! 7F8F14>II<0FD83FF86038C038C038F000
! 7F803FF007F8001C6006E006F006F81CFFF8CFE00F107E8F14>I<06000E000E000E000E
! 007FFCFFFC0E000E000E000E000E000E000E000E000E0E0E0E0E0E0E1C07F801F00F157F
! 9414>IIII<7E3F007E3F001E3C000E78
! 0007700007E00003E00001C00003C00003E0000770000E78000E38001C1C00FE3F80FE3F
! 8011107F8F14>II<3FFF7FFF700E701C7038007000E001C0038007000E
! 001C0738077007FFFFFFFF10107F8F14>I E /Fd 1 47 df<7070F06004047D830B>46
! D E /Fe 24 122 df<03000700FF00070007000700070007000700070007000700070007
! 000700070007000700070007000700070007007FF80D187D9713>49
! D<001800180038007800F800B8013802380238043808381838103820384038C038FFFF00
! 380038003800380038003803FF10187F9713>52 D<30183FF03FE03F8020002000200020
! 0020002FC03060203000380018001C001C401CE01CE01C80184038403030E00F800E187E
! 9713>I<01F807040C06180E300E300070006000E000E3E0E418E80CF00EE006E007E007
! E007600760077006300E180C0C3807E010187F9713>I<40007FFF7FFE7FFE4004800880
! 108010002000400040008001800100030003000700060006000E000E000E000E000E0004
! 0010197E9813>I<07E01818300C2006600660067006780C3E181F3007C003E00CF8307C
! 601E600FC007C003C003C00360022004181807E010187F9713>I72
! D<0FC21836200E6006C006C002C002C002E00070007E003FE01FF803FC007E000E000700
! 03800380038003C002C006E004D81887E0101A7E9915>83 D<1FC000387000383800101C
! 00001C00001C0003FC001E1C00381C00701C00E01C00E01C80E01C80E03C80705F801F8F
! 0011107F8F13>97 D<07F81C1C381C70087000E000E000E000E000E000E0007000700438
! 081C1807E00E107F8F11>99 D<003F000007000007000007000007000007000007000007
! 0000070000070003E7000C1700180F00300700700700E00700E00700E00700E00700E007
! 00E00700600700700700380F001C370007C7E0131A7F9915>I<07C01C3030187018600C
! E00CFFFCE000E000E000E0006000700438081C1807E00E107F8F11>I<0FCF0018718030
! 30007038007038007038007038003030001860002FC0006000006000007000003FF0003F
! FC001FFE00600F00C00300C00300C00300C00300600600381C0007E00011187F8F13>
! 103 DI<183C3C18000000000000FC1C1C1C1C1C1C1C1C1C
! 1C1C1C1C1CFF081A80990A>I110
! D<07E01C38300C700E6006E007E007E007E007E007E0076006700E381C1C3807E010107F
! 8F13>II114 D<1F2060E04020C020C020F0007F003FC01FE000F0807080
! 30C030C020F0408F800C107F8F0F>I<0800080008000800180018003800FFC038003800
! 380038003800380038003800382038203820382018201C4007800B177F960F>I118 D
! 120 DI E /Ff 2 42 df<00E001C00380078007000F001E001E001C003C003C00
! 38007800780078007000F000F000F000F000F000F000F000F000F000F000F000F000F000
! F000700078007800780038003C003C001C001E001E000F0007000780038001C000E00B2E
! 7CA112>40 DI
! E /Fg 27 123 df<0007F800007FFC0001FC0E0003F01F0007E03F000FC03F000FC03F00
! 0FC03F000FC01E000FC00C000FC000000FC000000FC0FF80FFFFFF80FFFFFF800FC01F80
! 0FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F80
! 0FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F807FF8FFF0
! 7FF8FFF01C237FA220>12 D<000FFF80007FFF8001FC1F8003F03F8007E03F800FC03F80
! 0FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F80FFFFFF80FFFFFF80
! 0FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F80
! 0FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F800FC01F80
! 7FF8FFF07FF8FFF01C237FA220>I<07FE00001FFF80003F07E0003F03F0003F01F0003F
! 01F8001E01F8000001F8000001F800003FF80003FDF8001F81F8003E01F8007C01F800F8
! 01F800F801F800F801F800F801F8007C02F8007E0CF8001FF87F8007E03F8019167E951C
! >97 DI<00FF8007FFE00F83F01F03F03E03F07E03F07C01E07C0000FC0000FC0000
! FC0000FC0000FC0000FC00007C00007E00007E00003E00181F00300FC06007FFC000FF00
! 15167E9519>I<0001FF000001FF0000003F0000003F0000003F0000003F0000003F0000
! 003F0000003F0000003F0000003F0000003F0000003F0000FE3F0007FFBF000FC1FF001F
! 007F003E003F007E003F007C003F007C003F00FC003F00FC003F00FC003F00FC003F00FC
! 003F00FC003F00FC003F007C003F007E003F003E003F001F007F000F81FF0007FF3FE001
! FC3FE01B237EA220>I<00FE0007FF800F83C01E01E03E00F07E00F07C00F87C0078FC00
! 78FFFFF8FFFFF8FC0000FC0000FC00007C00007C00003E00183E00181F00300F80E003FF
! C000FF0015167E951A>I<001F8000FFE001F1F003E3F007E3F00FC3F00FC1E00FC0000F
! C0000FC0000FC0000FC0000FC000FFFE00FFFE000FC0000FC0000FC0000FC0000FC0000F
! C0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000F
! C0007FFC007FFC0014237EA212>I<00FE0F8003FF9FC00F83E3C01F01F3C01E00F0003E
! 00F8003E00F8003E00F8003E00F8003E00F8001E00F0001F01F0000F83E0000BFF800008
! FE000018000000180000001C0000001FFFE0001FFFFC000FFFFF0007FFFF001FFFFF807C
! 001FC078000FC0F80007C0F80007C0F80007C07C000F803E001F001F807E000FFFFC0001
! FFE0001A217F951D>II<1E003F007F807F807F807F803F001E0000000000000000
! 0000000000FF80FF801F801F801F801F801F801F801F801F801F801F801F801F801F801F
! 801F801F801F801F80FFF0FFF00C247EA30F>I107 DIII<00FF0007FFE00F81F01F00F83E007C7C003E7C003E7C003E
! FC003FFC003FFC003FFC003FFC003FFC003FFC003F7C003E7E007E3E007C1F00F80F81F0
! 07FFE000FF0018167E951D>II<00FE030007FF07000FC1CF001F00DF003F007F007E003F007E003F007C003F00
! FC003F00FC003F00FC003F00FC003F00FC003F00FC003F00FC003F007E003F007E003F00
! 3E007F001F00FF000FC1FF0007FF3F0000FC3F0000003F0000003F0000003F0000003F00
! 00003F0000003F0000003F0000003F000001FFE00001FFE01B207E951E>II<07F9801F
! FF80380780700380F00180F00180F80000FF0000FFF8007FFE003FFF001FFF8007FF8000
! 3FC0C007C0C003C0E003C0E003C0F00380FC0F00EFFE00C3F80012167E9517>I<018000
! 0180000180000180000380000380000780000780000F80003F8000FFFF00FFFF001F8000
! 1F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F81801F8180
! 1F81801F81801F81800F83000FC30007FE0001F80011207F9F16>IIIIII<7FFFF07FFFF07C07E0700F
! C0601FC0E01F80C03F00C07F00C07E0000FC0001FC0003F80003F03007E0300FE0300FC0
! 701F80703F80603F00E07E03E0FFFFE0FFFFE014167E9519>I E
! /Fh 24 119 df<00E00000E00000E00000E00000E000F0E1E0FCE7E07EEFC01FFF0007FC
! 0001F00007FC001FFF007EEFC0FCE7E0F0E1E000E00000E00000E00000E00000E0001315
! 7D991A>42 D<003800007C00007C00006C0000EE0000EE0000EE0000C60000C60001C700
! 01C70001C70001C7000383800383800383800383800701C00701C007FFC007FFC00FFFE0
! 0E00E00E00E00E00E00E00E01C00707F01FCFF83FE7F01FC171E7F9D1A>65
! D69 D<7FFFFCFFFFFC7FFFFC
! 0E001C0E001C0E001C0E001C0E001C0E00000E00000E03800E03800E03800FFF800FFF80
! 0FFF800E03800E03800E03800E00000E00000E00000E00000E00000E00000E00000E0000
! 7FE000FFE0007FE000161E7F9D1A>I72 DI78 D<0FFE003FFF807FFFC07C07C07001C0
! F001E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0
! E000E0E000E0E000E0E000E0E000E0E000E0F001E0F001E07001C07C07C07FFFC03FFF80
! 0FFE00131E7D9D1A>I82
! D<03F1C00FFDC03FFFC07C0FC07003C0E003C0E001C0E001C0E001C0E000007000007800
! 003F00001FF00007FE0000FF80000FC00001E00000E0000070000070600070E00070E000
! 70E000E0F001E0FC03C0FFFF80EFFF00E3FC00141E7D9D1A>I<7FFFFEFFFFFEFFFFFEE0
! 380EE0380EE0380EE0380EE0380E00380000380000380000380000380000380000380000
! 380000380000380000380000380000380000380000380000380000380000380000380003
! FF8003FF8003FF80171E7F9D1A>I89 D<7FFFC0FFFFE0FFFFE07FFFC013047D7E1A>95 D<1FF0003FFC007FFE00780F
! 00300700000380000380007F8007FF801FFF803F8380780380700380E00380E00380E003
! 80700780780F803FFFFC1FFDFC07F0FC16157D941A>97 D<00FF8003FFC00FFFE01F01E0
! 3C00C0780000700000700000E00000E00000E00000E00000E00000700000700000780070
! 3C00701F01F00FFFE003FFC000FE0014157D941A>99 D<001FC0001FC0001FC00001C000
! 01C00001C00001C00001C00001C001F1C007FDC00FFFC01E0FC03C07C07803C07001C0E0
! 01C0E001C0E001C0E001C0E001C0E001C0E001C07003C07003C03807C03E0FC01FFFFC07
! FDFC01F1FC161E7E9D1A>I
! 104 D<01C00003E00003E00003E00001C0000000000000000000000000000000007FE000
! 7FE0007FE00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000
! 00E00000E00000E00000E00000E0007FFF80FFFFC07FFF80121F7C9E1A>I110
! D<01F00007FC001FFF003E0F803C07807803C07001C0E000E0E000E0E000E0E000E0E000
! E0E000E0F001E07001C07803C03C07803E0F801FFF0007FC0001F00013157D941A>I<7F
! 81F8FF8FFC7F9FFE03FE1E03F80C03E00003E00003C00003800003800003800003800003
! 80000380000380000380000380000380007FFF00FFFF007FFF0017157F941A>114
! D<0180000380000380000380000380000380000380007FFFE0FFFFE0FFFFE00380000380
! 000380000380000380000380000380000380000380000380000380700380700380700380
! 7001C1E001FFE000FF80003F00141C7F9B1A>116 DI<7FC7FCFFC7FE7FC7FC0E00E00E00E00E
! 00E00701C00701C00701C003838003838003838001C70001C70001C70000EE0000EE0000
! EE00007C00007C0000380017157F941A>I E /Fi 41 123 df<0007FC00003FFF0000FE
! 078003F007C007E00FC007E00FC00FC00FC00FC00FC00FC00FC00FC003000FC000000FC0
! 00000FC000000FC07FE0FFFFFFE0FFFFFFE00FC007E00FC007E00FC007E00FC007E00FC0
! 07E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC0
! 07E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E0FFFC7FFEFFFC7FFE1F26
! 7FA522>12 D<3C7EFFFFFFFF7E3C08087C8711>46 D<001C00003C0000FC00FFFC00FFFC
! 0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC
! 0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC
! 0000FC0000FC0000FC0000FC007FFFFC7FFFFC16237CA21F>49 D<01FF0007FFC01E07F0
! 3803F86001FC7C00FEFE00FEFE00FFFE007FFE007F7C007F3800FF0000FF0000FE0000FE
! 0001FC0001F80003F00007E0000780000F00001E00003C0000700000E00301C003038007
! 0700060600060FFFFE1FFFFE3FFFFE7FFFFCFFFFFCFFFFFC18237DA21F>I<01FF0007FF
! E01E03F03801F83C01FC7E00FE7E00FE7E00FE3E00FE1C01FE0001FC0001FC0003F80007
! F0000FC001FF0001FF000007E00001F00001F80000FC0000FE0000FF0000FF1000FF7C00
! FFFE00FFFE00FFFE00FEFE00FE7C01FC7001F83E07F00FFFC001FF0018237DA21F>I<00
! 00380000007800000078000000F8000001F8000003F8000007F8000006F800000CF80000
! 1CF8000038F8000030F8000060F80000E0F80001C0F8000180F8000300F8000700F8000E
! 00F8001C00F8001800F8003000F8007000F800E000F800FFFFFFC0FFFFFFC00001F80000
! 01F8000001F8000001F8000001F8000001F8000001F800007FFFC0007FFFC01A237EA21F
! >I<18000C1F007C1FFFF81FFFF01FFFE01FFFC01FFF801FFC0018000018000018000018
! 000018000018FF001BFFE01F03F01C00F80800FC00007E00007E00007E00007F00007F78
! 007FFC007FFC007FFC007FFC007EF8007E6000FC7000FC3801F81E07E007FFC001FE0018
! 237DA21F>I<001FC0007FF001F03803E00C07803E0F807E1F007E3F007E3F007E7E003C
! 7E00007E00007E0000FE3FC0FE7FF0FE80F8FF80FCFF007CFF007EFE007EFE007FFE007F
! FE007FFE007F7E007F7E007F7E007F7E007F3E007E3F007E1F007C0F80F807C1F003FFC0
! 007F0018237DA21F>I<300000003C0000003FFFFFC03FFFFFC03FFFFF807FFFFF007FFF
! FE007FFFFC006000180060001800E0003000C0006000C000C00000018000000180000003
! 000000060000000E0000000E0000001C0000001C0000003C0000003C0000007800000078
! 000000F8000000F8000000F8000000F8000001F8000001F8000001F8000001F8000001F8
! 000001F8000000F00000006000001A257DA41F>I<00001C00000000001C00000000003E
! 00000000003E00000000003E00000000007F00000000007F0000000000FF8000000000FF
! 8000000000FF80000000019FC0000000019FC0000000031FE0000000030FE0000000070F
! F00000000607F00000000607F00000000C07F80000000C03F80000001C03FC0000001801
! FC0000001801FC0000003000FE0000003000FE0000007FFFFF0000007FFFFF000000E000
! 7F800000C0003F800000C0003F80000180003FC0000180001FC0000380001FE000030000
! 0FE0000300000FE00007000007F000FFF000FFFF80FFF000FFFF8029257EA42E>65
! D68 DII72 DI76 DI<00FF008007FFE3800F80F7801E001F803C000F
! 807800078078000380F8000380F8000180F8000180FC000180FC000000FF0000007FE000
! 007FFE00003FFFE0003FFFF8001FFFFE0007FFFF0003FFFF80007FFF800003FFC000003F
! C000000FE0000007E0000007E0C00003E0C00003E0C00003E0C00003C0E00003C0F00007
! C0F8000780FC000F00FFC03E00E3FFF800803FE0001B257DA422>83
! D87 D<07FF00001FFFE0003E03F0003F00F8003F00FC
! 003F007E001E007E0000007E0000007E0000007E00001FFE0003FE7E000FC07E001F007E
! 003E007E007E007E00FC007E00FC007E00FC007E00FC00BE007E01BE003F073E001FFE1F
! E007F00FE01B187E971E>97 DI<007FE003FFF807C0
! 7C1F80FC1F00FC3F00FC7E00787E0000FE0000FE0000FE0000FE0000FE0000FE0000FE00
! 00FE00007E00007F00003F000C1F800C1FC01807E07003FFE0007F0016187E971B>I<00
! 00FFC00000FFC000000FC000000FC000000FC000000FC000000FC000000FC000000FC000
! 000FC000000FC000000FC000000FC000000FC0007F0FC003FFCFC00FE0FFC01F803FC03F
! 000FC03F000FC07E000FC07E000FC0FE000FC0FE000FC0FE000FC0FE000FC0FE000FC0FE
! 000FC0FE000FC0FE000FC07E000FC07E000FC03F000FC03F001FC01F803FC00FC0EFC003
! FFCFFC00FE0FFC1E267EA522>I<007F0003FFC007C1F00F80F81F00F83F007C7E007C7E
! 007EFE007EFE007EFFFFFEFFFFFEFE0000FE0000FE00007E00007E00007E00063F00061F
! 000C0F801807E07003FFE0007F8017187E971C>I<001FC0007FF001F8F003E1F807E1F8
! 07C1F80FC0F00FC0000FC0000FC0000FC0000FC0000FC0000FC000FFFF00FFFF000FC000
! 0FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC000
! 0FC0000FC0000FC0000FC0000FC0000FC0000FC000FFFE00FFFE0015267EA513>I<01FF
! 07C007FFDFE00F83F1E01F01F1E03E00F8007E00FC007E00FC007E00FC007E00FC007E00
! FC007E00FC003E00F8001F01F0000F83E0000FFFC00011FF000030000000300000003800
! 00003C0000003FFFE0001FFFFC001FFFFE000FFFFF001FFFFF803C003F8078000FC0F800
! 07C0F80007C0F80007C0F80007C07C000F803E001F001F807E0007FFF80000FFC0001B24
! 7E971F>II<0F001F803FC03FC03FC03FC01F800F00
! 00000000000000000000000000007FC07FC00FC00FC00FC00FC00FC00FC00FC00FC00FC0
! 0FC00FC00FC00FC00FC00FC00FC00FC00FC00FC00FC0FFF8FFF80D277EA611>I108 DII<007F800003FFF00007C0F8001F807E003F003F003F003F00
! 7E001F807E001F80FE001FC0FE001FC0FE001FC0FE001FC0FE001FC0FE001FC0FE001FC0
! FE001FC07E001F807E001F803F003F003F003F001F807E000FC0FC0003FFF000007F8000
! 1A187E971F>II114 D<07F8C01FFFC03C07C07001C0F000C0F000
! C0F000C0FC0000FF80007FFC007FFE003FFF800FFFC003FFC0001FE00003E0C001E0C001
! E0E001E0E001C0F003C0FC0780EFFF00C3FC0013187E9718>I<00C00000C00000C00000
! C00001C00001C00001C00003C00007C0000FC0001FC000FFFFC0FFFFC00FC0000FC0000F
! C0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0600FC0600F
! C0600FC0600FC0600FC06007E0C007E1C001FF80007E0013237FA218>III120 DI<7FFFF87FFFF87C03F07007F0600FE0E0
! 0FC0E01F80C03F80C03F00C07E0000FE0000FC0001F80003F80C03F00C07E00C0FE00C0F
! C01C1F80183F80387F00787E01F8FFFFF8FFFFF816187E971B>I
! E /Fj 30 122 df<0003F07C001E0DC600380F0F00701E0F00E01E0E00E00C0001C01C00
! 01C01C0001C01C0001C01C0001C01C00038038007FFFFFC0038038000380380003803800
! 038038000700700007007000070070000700700007007000070070000E00E0000E00E000
! 0E00E0000E00E0000E00E0000E00E0001C01C0001E01E000FF8FFC0020207E9F1B>11
! D<0003E0001C1800381800703C00E03C00E03801C00001C00001C00001C00001C0000380
! 007FFFF00380700380700380700380700700E00700E00700E00700E00700E00700E00E01
! C00E01C00E01C00E01C00E01C00E01C01C03801E03C0FF0FF016207E9F19>I<0003F03F
! 00001E09E08000380F80C000701F01E000E03E01E000E01E01C001C01C000001C01C0000
! 01C01C000001C01C000001C01C000003803800007FFFFFFF800380380380038038038003
! 803803800380380380070070070007007007000700700700070070070007007007000700
! 7007000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E001C01C0
! 1C001E01E01E00FF8FF8FFC023207E9F26>14 D<00200000600000600000600000600030
! 61C03C43800E4E0007780001E00001E00007B8001C9C00708F00E0830001800001800001
! 800001800001000012147AA117>42 D<0018003801F80E700070007000700070007000E0
! 00E000E000E000E000E001C001C001C001C001C001C00380038003800380038003800700
! 0780FFFC0E1E7B9D17>49 D<003F8000C1E00100700200780400780400780F007C0F807C
! 0F807C0F00780600780000F80000F00001E00001C0000380000700000E00001C00003800
! 00600000C0000180000300200600200800401000403FFFC07FFF80FFFF80161E7E9D17>
! I<00FF01FE01800180018001800180030003000300030003000300060006000600060006
! 0006000C000C000C000C000C000C00180018001800180018001800300030003000300030
! 003000600060006000600060006000FF00FF00102D7EA10D>91 D<00FF01FE0006000600
! 0600060006000C000C000C000C000C000C00180018001800180018001800300030003000
! 300030003000600060006000600060006000C000C000C000C000C000C001800180018001
! 8001800180FF00FF00102D82A10D>93 D<07F8000C0C001E06001E07001C070000070000
! 070000070000FF0007C7001E07003C0E00780E00F00E10F00E10F00E10F01E10F02E2078
! 4F401F878014147D9317>97 D<00FE000383000E07801C0780380700380000780000F000
! 00F00000F00000F00000E00000E00000E00000F00000F001007002003804001C180007E0
! 0011147D9314>99 D<0000380001F8000078000038000038000070000070000070000070
! 0000700000700000E000FCE00382E00601E01C01E03C00E03801C07801C0F001C0F001C0
! F001C0F001C0E00380E00380E00380E00380F00380700780380F001C378007C7E015207D
! 9F19>I<00F800070E000E07001C0700380380780380700380F00380F00380FFFF80F000
! 00E00000E00000E00000E00000F001007002003004001C180007E00011147D9314>I<00
! 07C0001C600030F00060F000E0E000C00001C00001C00001C00001C00001C0000380003F
! FC000380000380000380000380000700000700000700000700000700000700000E00000E
! 00000E00000E00000E00000E00001C00001E0000FFC00014207F9F0E>I<00000E003E11
! 00E1A301C1C20381E00780E00701E00F01E00F01E00F01E00703C007038007870004FC00
! 0800000800001800001C00000FFF000FFFC00FFFE01800F0300030600030C00030C00030
! C000306000603000C01C070007FC00181F809417>I<00E00007E00001E00000E00000E0
! 0001C00001C00001C00001C00001C00001C000038000038F800390E003A0E003C0600380
! 600780E00700E00700E00700E00700E00700E00E01C00E01C00E01C00E01C00E01C00E01
! C01C03801E03C0FF8FF014207E9F19>I<01C003E003E003C00180000000000000000000
! 00000003801F800780038003800700070007000700070007000E000E000E000E000E000E
! 001C001E00FF800B1F7F9E0C>I<00E007E001E000E000E001C001C001C001C001C001C0
! 0380038003800380038003800700070007000700070007000E000E000E000E000E000E00
! 1C001E00FF800B207F9F0C>108 D<0387C07C001F9861860007A072070003C034030003
! 803803000780780700070070070007007007000700700700070070070007007007000E00
! E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E001C01C01C001E01E0
! 1E00FFCFFCFFC022147E9326>I<038F801F90E007A0E003C0600380600780E00700E007
! 00E00700E00700E00700E00E01C00E01C00E01C00E01C00E01C00E01C01C03801E03C0FF
! 8FF014147E9319>I<00FC000387000E01801C00C03800E03800E07000F0F000F0F000F0
! F000F0F000F0E001E0E001E0E001C0E003C0F00380700700380E001C1C0007E00014147D
! 9317>I<00E3E00007EC380000F01C0000E00E0000E00F0001C0070001C0078001C00780
! 01C0078001C0078001C0078003800F0003800F0003800E0003801E0003801C0003803800
! 074070000761C000071F00000700000007000000070000000E0000000E0000000E000000
! 0E0000001E000000FFC00000191D809319>I<00FC200382600702601E01E03C01E03801
! C07801C0F001C0F001C0F001C0F001C0E00380E00380F00380F00380F00780700780380F
! 001C370007C700000700000700000700000E00000E00000E00000E00001E0000FFC0131D
! 7D9318>I<038E001FB38007C78003C78003830007800007000007000007000007000007
! 00000E00000E00000E00000E00000E00000E00001C00001E0000FFC00011147E9312>I<
! 01F9060708031803180138023C001F001FF007FC01FE001F40074003400360036006F004
! C81887E010147F9312>I<0080010001000100030007000F001E00FFF80E000E000E000E
! 001C001C001C001C001C001C00380038103810381038103820382018400F800D1C7C9B12
! >I<1C0380FC1F803C07801C03801C038038070038070038070038070038070038070070
! 0E00700E00700E00700E00701E00701E00703C00305E001F9F8011147B9319>III<1FF0FF03C07801C07001C04000E0C000E180007300007600003C00003C
! 00001C00002E00004E000087000107000203800403800C01C03C03E0FE07FC18147F9318
! >I<0FF83F8001E00E0001C00C0001C0080001E0080000E0100000E0300000E0200000E0
! 40000070400000708000007080000071000000390000003A0000003E0000003C00000038
! 000000180000001000000010000000200000002000000040000070C00000F0800000F100
! 0000E600000078000000191D809318>I E /Fk 36 122 df<0001C0000003C000000FC0
! 00007FC0001FFFC000FFFFC000FFBFC000E03FC000003FC000003FC000003FC000003FC0
! 00003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC0
! 00003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC0
! 00003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC0
! 00003FC000003FC000003FC000003FC0007FFFFFF07FFFFFF07FFFFFF01C2E7AAD28>49
! D<003FE00001FFFE0007FFFF800F80FFC01E003FE038001FF07C000FF87E0007FCFF0007
! FCFF8007FEFF8007FEFF8003FEFF8003FE7F0003FE3E0007FE000007FE000007FC000007
! FC00000FF800000FF800000FF000001FE000001FC000003F8000007F0000007E000000F8
! 000001F0000003E0000007C000000F0000001E000E003C000E0038000E0070001E00E000
! 1C01C0001C0300003C07FFFFFC0FFFFFFC1FFFFFFC3FFFFFFC7FFFFFF8FFFFFFF8FFFFFF
! F8FFFFFFF81F2E7CAD28>I<0000007800000000000078000000000000FC000000000000
! FC000000000000FC000000000001FE000000000001FE000000000003FF000000000003FF
! 000000000007FF800000000007FF800000000007FF80000000000FFFC0000000000E7FC0
! 000000001E7FE0000000001C3FE0000000001C3FE000000000383FF000000000381FF000
! 000000781FF800000000700FF800000000700FF800000000E00FFC00000000E007FC0000
! 0001E007FE00000001C003FE00000001C003FE000000038001FF000000038001FF000000
! 078001FF800000070000FF8000000F0000FFC000000FFFFFFFC000000FFFFFFFC000001F
! FFFFFFE000001C00003FE000003C00003FF000003800001FF000003800001FF000007000
! 001FF800007000000FF80000F000000FFC0000E0000007FC0000E0000007FC0001C00000
! 07FE0003E0000003FE00FFFF0001FFFFFCFFFF0001FFFFFCFFFF0001FFFFFC36317DB03D
! >65 DI<000003FF800180
! 00003FFFF003800001FFFFFC07800007FF003F0F80001FF800079F80003FC00001FF8000
! FF800000FF8001FE0000007F8003FC0000003F8007FC0000001F8007F80000000F800FF0
! 0000000F801FF000000007801FF000000007803FE000000007803FE000000003807FE000
! 000003807FE000000003807FC000000000007FC00000000000FFC00000000000FFC00000
! 000000FFC00000000000FFC00000000000FFC00000000000FFC00000000000FFC0000000
! 0000FFC00000000000FFC000000000007FC000000000007FC000000000007FE000000000
! 007FE000000003803FE000000003803FE000000003801FF000000003801FF00000000780
! 0FF0000000070007F8000000070007FC0000000E0003FC0000001E0001FE0000001C0000
! FF8000007800003FC00000F000001FF80003E0000007FF003F80000001FFFFFE00000000
! 3FFFF80000000003FF80000031317CB03A>I70
! D<000003FF00030000007FFFF007000001FFFFFC0F000007FF007E1F00001FF0000FBF00
! 007FC00003FF0000FF800001FF0001FE0000007F0003FC0000007F0007FC0000003F000F
! F80000001F000FF00000001F001FF00000000F001FF00000000F003FE000000007003FE0
! 00000007007FE000000007007FE000000007007FC00000000000FFC00000000000FFC000
! 00000000FFC00000000000FFC00000000000FFC00000000000FFC00000000000FFC00000
! 000000FFC00000000000FFC00000000000FFC00000000000FFC00007FFFFF87FC00007FF
! FFF87FE00007FFFFF87FE0000001FF003FE0000001FF003FE0000001FF001FF0000001FF
! 001FF0000001FF000FF0000001FF000FF8000001FF0007FC000001FF0003FC000001FF00
! 01FE000001FF0000FF800001FF00007FC00003FF00001FF800077F000007FF003E3F0000
! 01FFFFFC1F0000007FFFF00F00000003FF80030035317CB03F>III78 D80
! D<7FFFFFFFFFFF007FFFFFFFFFFF007FFFFFFFFFFF007FC00FF801FF007E000FF8003F00
! 7C000FF8001F0078000FF8000F0078000FF8000F0070000FF8000700F0000FF8000780F0
! 000FF8000780F0000FF8000780E0000FF8000380E0000FF8000380E0000FF8000380E000
! 0FF8000380E0000FF800038000000FF800000000000FF800000000000FF800000000000F
! F800000000000FF800000000000FF800000000000FF800000000000FF800000000000FF8
! 00000000000FF800000000000FF800000000000FF800000000000FF800000000000FF800
! 000000000FF800000000000FF800000000000FF800000000000FF800000000000FF80000
! 0000000FF800000000000FF800000000000FF800000000000FF800000000000FF8000000
! 00000FF800000000000FF800000000000FF800000000000FF8000000007FFFFFFF000000
! 7FFFFFFF0000007FFFFFFF000031307DAF38>84 DII<00FFF0000003FFFF00000F803F80000FC00FE0001FE0
! 07F0001FE007F0001FE003F8000FC003FC00078003FC00000003FC00000003FC00000003
! FC00000003FC000000FFFC00001FFFFC0000FFE3FC0003FC03FC000FF003FC001FC003FC
! 003FC003FC007F8003FC007F8003FC00FF0003FC00FF0003FC00FF0003FC00FF0007FC00
! FF0007FC007F800DFC003FC01DFE001FE078FFF007FFE07FF000FF803FF024207E9F27>
! 97 D<01F8000000FFF8000000FFF8000000FFF80000000FF800000007F800000007F800
! 000007F800000007F800000007F800000007F800000007F800000007F800000007F80000
! 0007F800000007F800000007F800000007F800000007F83FE00007F8FFFC0007FBE07F00
! 07FF001F8007FE000FC007FC000FE007F80007F007F80007F807F80007F807F80003FC07
! F80003FC07F80003FC07F80003FE07F80003FE07F80003FE07F80003FE07F80003FE07F8
! 0003FE07F80003FE07F80003FE07F80003FC07F80003FC07F80003FC07F80007F807F800
! 07F807F80007F007FC000FE007FE000FC007E7003F8007C3C0FE000780FFF80007003FC0
! 0027327EB12D>I<000FFF00007FFFC001FC01F003F003F007E007F80FE007F81FC007F8
! 3FC003F03FC001E07F8000007F8000007F800000FF800000FF800000FF800000FF800000
! FF800000FF800000FF800000FF8000007F8000007F8000007F8000003FC0001C3FC0001C
! 1FC000380FE0003807E0007003F001E001FC07C0007FFF00000FF8001E207D9F24>I<00
! 00000FC0000007FFC0000007FFC0000007FFC00000007FC00000003FC00000003FC00000
! 003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC0000000
! 3FC00000003FC00000003FC00000003FC00007F83FC0003FFF3FC000FE07BFC003F801FF
! C007E0007FC00FE0007FC01FC0003FC03FC0003FC03FC0003FC07F80003FC07F80003FC0
! 7F80003FC0FF80003FC0FF80003FC0FF80003FC0FF80003FC0FF80003FC0FF80003FC0FF
! 80003FC0FF80003FC07F80003FC07F80003FC07F80003FC03FC0003FC03FC0003FC01FC0
! 003FC00FE0007FC007E000FFC003F003FFE001FC0F3FFE007FFE3FFE000FF03FFE27327D
! B12D>I<000FFC00007FFF8001FC0FC003F003E007E001F00FE001F81FC000FC3FC000FE
! 3FC000FE7F80007E7F80007F7F80007FFF80007FFF80007FFFFFFFFFFFFFFFFFFF800000
! FF800000FF800000FF8000007F8000007F8000007F8000003FC000071FC000071FC0000E
! 0FE0000E07F0001C03F8007800FE03E0003FFFC00007FE0020207E9F25>I<0001FE0000
! 0FFF80001FC3C0007F07E000FE0FF001FE0FF001FC0FF003FC0FF003FC07E003FC018003
! FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC0000FFFFFC00FF
! FFFC00FFFFFC0003FC000003FC000003FC000003FC000003FC000003FC000003FC000003
! FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003
! FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003
! FC00007FFFF0007FFFF0007FFFF0001C327EB119>I<001FF007C000FFFE3FE001F83F79
! F007E00FC3F00FE00FE1F00FC007E0E01FC007F0001FC007F0003FC007F8003FC007F800
! 3FC007F8003FC007F8003FC007F8001FC007F0001FC007F0000FC007E0000FE00FE00007
! E00FC00003F83F000006FFFE00000E1FF000000E000000001E000000001E000000001F00
! 0000001F800000001FFFFF80000FFFFFF0000FFFFFFC0007FFFFFE0003FFFFFF0003FFFF
! FF800FFFFFFFC03F00007FC07E00001FE07C00000FE0FC000007E0FC000007E0FC000007
! E0FC000007E07E00000FC03E00000F803F00001F800FC0007E0007F803FC0001FFFFF000
! 001FFF0000242F7E9F28>I<01F8000000FFF8000000FFF8000000FFF80000000FF80000
! 0007F800000007F800000007F800000007F800000007F800000007F800000007F8000000
! 07F800000007F800000007F800000007F800000007F800000007F800000007F807F80007
! F83FFE0007F8783F0007F8C03F8007F9801FC007FB001FC007FE001FE007FC001FE007FC
! 001FE007FC001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F800
! 1FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001F
! E007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE0FFFFC3FFFF
! FFFFC3FFFFFFFFC3FFFF28327DB12D>I<03C00007E0000FF0001FF8001FF8001FF8001F
! F8000FF00007E00003C00000000000000000000000000000000000000000000000000000
! 000001F8007FF8007FF8007FF80007F80007F80007F80007F80007F80007F80007F80007
! F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007
! F80007F80007F80007F80007F80007F800FFFF80FFFF80FFFF8011337DB217>I<01F800
! FFF800FFF800FFF8000FF80007F80007F80007F80007F80007F80007F80007F80007F800
! 07F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F800
! 07F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F800
! 07F80007F80007F80007F80007F80007F80007F80007F80007F80007F800FFFFC0FFFFC0
! FFFFC012327DB117>108 D<03F007F8001FE000FFF03FFE00FFF800FFF0783F01E0FC00
! FFF0C03F8300FE000FF1801FC6007F0007F3001FCC007F0007F6001FF8007F8007FC001F
! F0007F8007FC001FF0007F8007FC001FF0007F8007F8001FE0007F8007F8001FE0007F80
! 07F8001FE0007F8007F8001FE0007F8007F8001FE0007F8007F8001FE0007F8007F8001F
! E0007F8007F8001FE0007F8007F8001FE0007F8007F8001FE0007F8007F8001FE0007F80
! 07F8001FE0007F8007F8001FE0007F8007F8001FE0007F8007F8001FE0007F8007F8001F
! E0007F8007F8001FE0007F8007F8001FE0007F8007F8001FE0007F80FFFFC3FFFF0FFFFC
! FFFFC3FFFF0FFFFCFFFFC3FFFF0FFFFC3E207D9F43>I<03F007F800FFF03FFE00FFF078
! 3F00FFF0C03F800FF1801FC007F3001FC007F6001FE007FC001FE007FC001FE007FC001F
! E007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE0
! 07F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007
! F8001FE007F8001FE007F8001FE007F8001FE007F8001FE0FFFFC3FFFFFFFFC3FFFFFFFF
! C3FFFF28207D9F2D>I<0007FC0000007FFFC00001FC07F00003F001F80007E000FC000F
! C0007E001FC0007F003FC0007F803F80003F807F80003FC07F80003FC07F80003FC0FF80
! 003FE0FF80003FE0FF80003FE0FF80003FE0FF80003FE0FF80003FE0FF80003FE0FF8000
! 3FE07F80003FC07F80003FC07F80003FC03FC0007F803FC0007F801FC0007F000FE000FE
! 0007E000FC0003F803F80001FE0FF000007FFFC0000007FC000023207E9F28>I<01F83F
! E000FFF8FFFC00FFFBE07F00FFFF003F8007FE001FC007FC000FE007F8000FF007F80007
! F807F80007F807F80007FC07F80003FC07F80003FC07F80003FE07F80003FE07F80003FE
! 07F80003FE07F80003FE07F80003FE07F80003FE07F80003FE07F80003FC07F80007FC07
! F80007FC07F80007F807F80007F807F8000FF007FC000FE007FE001FC007FF003F8007FB
! C0FE0007F8FFF80007F83FC00007F800000007F800000007F800000007F800000007F800
! 000007F800000007F800000007F800000007F800000007F800000007F8000000FFFFC000
! 00FFFFC00000FFFFC00000272E7E9F2D>I<03F03F00FFF07FC0FFF1C3E0FFF187E00FF3
! 0FF007F60FF007F60FF007FC07E007FC03C007FC000007FC000007F8000007F8000007F8
! 000007F8000007F8000007F8000007F8000007F8000007F8000007F8000007F8000007F8
! 000007F8000007F8000007F8000007F8000007F8000007F80000FFFFE000FFFFE000FFFF
! E0001C207E9F21>114 D<01FF860007FFFE001F00FE003C003E0078001E0078000E00F8
! 000E00F8000E00F8000E00FC000000FF800000FFFC00007FFFC0003FFFF0003FFFF8001F
! FFFC0007FFFE0001FFFF00003FFF000000FF8000003F8060001F80E0000F80E0000F80F0
! 000F80F0000F00F8000F00FC001E00FE001C00FF807800F3FFF000C07F800019207D9F20
! >I<001C0000001C0000001C0000001C0000001C0000003C0000003C0000003C0000007C
! 0000007C000000FC000001FC000003FC000007FC00001FFFFE00FFFFFE00FFFFFE0003FC
! 000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC
! 000003FC000003FC000003FC000003FC000003FC000003FC000003FC038003FC038003FC
! 038003FC038003FC038003FC038003FC038001FC038001FC070000FE0700007F0E00003F
! FC000007F000192E7FAD1F>I<01F80007E0FFF803FFE0FFF803FFE0FFF803FFE00FF800
! 3FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001F
! E007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8001FE0
! 07F8001FE007F8001FE007F8001FE007F8001FE007F8001FE007F8003FE007F8003FE003
! F8007FE003F8007FE001FC00DFF000FE039FFF007FFF1FFF000FFC1FFF28207D9F2D>I<
! FFFF001FFCFFFF001FFCFFFF001FFC0FF80003C007F800038007FC00078003FC00070003
! FE00070001FE000E0001FF000E0000FF001C0000FF001C0000FF803C00007F803800007F
! C07800003FC07000003FE0F000001FE0E000001FF1E000000FF1C000000FF9C0000007FB
! 80000007FB80000007FF80000003FF00000003FF00000001FE00000001FE00000000FC00
! 000000FC00000000780000000078000026207E9F2B>II<7FFF807FFC7FFF807FFC7FFF807FFC03FC000F0001FE001E0000FF003C0000FF8038
! 00007FC07800003FC0F000001FE1E000000FF3C000000FFF80000007FF00000003FE0000
! 0001FE00000000FF00000000FF80000000FFC0000001FFC0000003DFE00000078FF00000
! 078FF800000F07FC00001E03FE00003C01FE00007800FF0000F000FF8001E0007FC003E0
! 003FE0FFFC01FFFFFFFC01FFFFFFFC01FFFF28207F9F2B>II E /Fl 1 14 df<0000FF00000007FFE000001F00F8000078001E
! 0000E0000700018000018003000000C006000000600C000000300C000000301800000018
! 300000000C300000000C6000000006600000000660000000066000000006C000000003C0
! 00000003C000000003C000000003C000000003C000000003C000000003C000000003C000
! 0000036000000006600000000660000000066000000006300000000C300000000C180000
! 00180C000000300C00000030060000006003000000C0018000018000E00007000078001E
! 00001F00F8000007FFE0000000FF0000282B7EA02D>13 D E /Fm
! 45 122 df<3C007F00FF80FF80FFC0FFC0FFC07FC03EC000C000C0018001800180030003
! 0006000E001C00380010000A157B8813>44 D<1C007F007F00FF80FF80FF807F007F001C
! 0009097B8813>46 D<000E00001E00007E0007FE00FFFE00FFFE00F8FE0000FE0000FE00
! 00FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE00
! 00FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE00
! 00FE0000FE0000FE00FFFFFEFFFFFEFFFFFE17277BA622>49 D<00FF800007FFF0000FFF
! FC001E03FE003800FF807C003F80FE003FC0FF001FC0FF001FE0FF000FE0FF000FE07E00
! 0FE03C001FE000001FE000001FC000001FC000003F8000003F0000007E000000FC000000
! F8000001F0000003E00000078000000F0000001E0000003C00E0007000E000E000E001C0
! 01C0038001C0060001C00FFFFFC01FFFFFC03FFFFFC07FFFFFC0FFFFFF80FFFFFF80FFFF
! FF801B277DA622>I<007F800003FFF00007FFFC000F81FE001F007F003F807F003F803F
! 803F803F803F803F801F803F801F003F8000007F0000007F0000007E000000FC000001F8
! 000007F00000FFC00000FFC0000001F80000007E0000003F0000003F8000001FC000001F
! C000001FE000001FE03C001FE07E001FE0FF001FE0FF001FE0FF001FC0FF003FC0FE003F
! 807C007F003F01FE001FFFFC0007FFF00000FF80001B277DA622>I<00000F0000000F00
! 00001F0000003F0000007F000000FF000001FF000001FF000003BF0000073F00000E3F00
! 001C3F00003C3F0000383F0000703F0000E03F0001C03F0003803F0007803F0007003F00
! 0E003F001C003F0038003F0070003F00F0003F00FFFFFFF8FFFFFFF8FFFFFFF800007F00
! 00007F0000007F0000007F0000007F0000007F0000007F0000007F00001FFFF8001FFFF8
! 001FFFF81D277EA622>I<180003001F801F001FFFFE001FFFFC001FFFF8001FFFF0001F
! FFC0001FFF00001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C
! 7FC0001DFFF8001F80FC001E003F0008003F0000001F8000001FC000001FC000001FE000
! 001FE018001FE07C001FE0FE001FE0FE001FE0FE001FE0FE001FC0FC001FC078003F8078
! 003F803C007F001F01FE000FFFFC0003FFF00000FF80001B277DA622>I<000007800000
! 00000780000000000FC0000000000FC0000000000FC0000000001FE0000000001FE00000
! 00003FF0000000003FF0000000003FF00000000077F80000000077F800000000F7FC0000
! 0000E3FC00000000E3FC00000001C1FE00000001C1FE00000003C1FF0000000380FF0000
! 000380FF00000007007F80000007007F8000000F007FC000000E003FC000000E003FC000
! 001C001FE000001C001FE000003FFFFFF000003FFFFFF000003FFFFFF00000700007F800
! 00700007F80000F00007FC0000E00003FC0001E00003FE0001C00001FE0001C00001FE00
! 03C00001FF00FFFE003FFFFCFFFE003FFFFCFFFE003FFFFC2E297EA833>65
! DI<00007F
! E0030007FFFC07001FFFFF0F007FF00F9F00FF0001FF01FC0000FF03F800007F07F00000
! 3F0FE000001F1FC000001F1FC000000F3F8000000F3F800000077F800000077F80000007
! 7F00000000FF00000000FF00000000FF00000000FF00000000FF00000000FF00000000FF
! 00000000FF00000000FF000000007F000000007F800000007F800000073F800000073F80
! 0000071FC00000071FC000000E0FE000000E07F000001C03F800003C01FC00007800FF00
! 01F0007FF007C0001FFFFF800007FFFE0000007FF00028297CA831>I69 DI<00007FE003000007FFFC0700001F
! FFFF0F00007FF00F9F0000FF0001FF0001FC0000FF0003F800007F0007F000003F000FE0
! 00001F001FC000001F001FC000000F003F8000000F003F80000007007F80000007007F80
! 000007007F0000000000FF0000000000FF0000000000FF0000000000FF0000000000FF00
! 00000000FF0000000000FF0000000000FF0000000000FF0000FFFFF87F0000FFFFF87F80
! 00FFFFF87F800000FF003F800000FF003F800000FF001FC00000FF001FC00000FF000FE0
! 0000FF0007F00000FF0003F80000FF0001FC0000FF0000FF0001FF00007FF007FF00001F
! FFFF9F000007FFFE0F0000007FF003002D297CA835>III77 DI80 D82 D<00FF806003FFF0E00FFFF8E01F80
! FDE03F001FE03E0007E07C0003E07C0003E0FC0001E0FC0001E0FC0000E0FE0000E0FE00
! 00E0FF000000FFC000007FFC00007FFFE0003FFFF8001FFFFE001FFFFF0007FFFF8003FF
! FFC000FFFFC0000FFFE000007FE000001FF000000FF0000007F0E00003F0E00003F0E000
! 03F0E00003F0F00003E0F00003E0F80007E0FC0007C0FF000F80FFE03F80E3FFFE00E1FF
! FC00C01FF0001C297CA825>I85 DII<03FF8000
! 0FFFF0001F01FC003F80FE003F807F003F803F003F803F801F003F8000003F8000003F80
! 00003F8000003F80003FFF8001FC3F800FE03F801F803F803F003F807E003F80FC003F80
! FC003F80FC003F80FC003F80FC005F807E00DF803F839FFC1FFE0FFC03FC03FC1E1B7E9A
! 21>97 DI<00
! 3FF00001FFFC0003F03E000FC07F001F807F003F007F003F007F007F003E007E0000007E
! 000000FE000000FE000000FE000000FE000000FE000000FE000000FE0000007E0000007E
! 0000007F0000003F0003803F8003801F8007000FE00E0003F83C0001FFF800003FC00019
! 1B7E9A1E>I<00007FF000007FF000007FF0000007F0000007F0000007F0000007F00000
! 07F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0003F87F001FF
! F7F007F03FF00FC00FF01F8007F03F0007F03F0007F07E0007F07E0007F07E0007F0FE00
! 07F0FE0007F0FE0007F0FE0007F0FE0007F0FE0007F0FE0007F0FE0007F07E0007F07E00
! 07F03F0007F03F0007F01F800FF00FC01FF007E07FFF01FFE7FF007F87FF202A7EA925>
! I<003FC00001FFF00003E07C000F803E001F801F001F001F003F000F807E000F807E000F
! C07E000FC0FE0007C0FE0007C0FFFFFFC0FFFFFFC0FE000000FE000000FE0000007E0000
! 007E0000007F0000003F0001C01F0001C00F80038007C0070003F01E0000FFFC00003FE0
! 001A1B7E9A1F>I<0007F8003FFC007E3E01FC7F03F87F03F07F07F07F07F03E07F00007
! F00007F00007F00007F00007F00007F000FFFFC0FFFFC0FFFFC007F00007F00007F00007
! F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007
! F00007F00007F00007F00007F00007F0007FFF807FFF807FFF80182A7EA915>I<00FF80
! F003FFE3F80FC1FE1C1F007C7C3F007E7C3E003E107E003F007E003F007E003F007E003F
! 007E003F007E003F003E003E003F007E001F007C000FC1F8000BFFE00018FF8000180000
! 0038000000380000003C0000003FFFF8003FFFFF001FFFFFC00FFFFFE007FFFFF01FFFFF
! F03C0007F07C0001F8F80000F8F80000F8F80000F8F80000F87C0001F07C0001F03F0007
! E00FC01F8007FFFF00007FF0001E287E9A22>II<07000F801FC03FE03FE03FE01FC00F800700000000
! 0000000000000000000000FFE0FFE0FFE00FE00FE00FE00FE00FE00FE00FE00FE00FE00F
! E00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0FFFEFFFEFFFE0F2B7EAA12>I<
! FFE0FFE0FFE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0
! 0FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0
! 0FE00FE00FE0FFFEFFFEFFFE0F2A7EA912>108 D
! II<003FE00001FFFC0003F07E000FC01F801F800FC03F0007E03F0007E0
! 7E0003F07E0003F07E0003F0FE0003F8FE0003F8FE0003F8FE0003F8FE0003F8FE0003F8
! FE0003F8FE0003F87E0003F07E0003F03F0007E03F0007E01F800FC00FC01F8007F07F00
! 01FFFC00003FE0001D1B7E9A22>II114 D<03FE300FFFF03E03F07800F07000F0F00070F000
! 70F80070FE0000FFE0007FFF007FFFC03FFFE01FFFF007FFF800FFF80007FC0000FCE000
! 7CE0003CF0003CF00038F80038FC0070FF01E0E7FFC0C1FF00161B7E9A1B>I<00E00000
! E00000E00000E00001E00001E00001E00003E00003E00007E0000FE0001FFFE0FFFFE0FF
! FFE00FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000F
! E0000FE0000FE0700FE0700FE0700FE0700FE0700FE0700FE07007F0E003F0C001FF8000
! 7F0014267FA51A>IIIIII E /Fn 75 127 df<70F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F870000000000070F8F8
! F870051C779B18>33 D<4010E038F078E038E038E038E038E038E038E038E038E038E038
! 60300D0E7B9C18>I<030600078F00078F00078F00078F00078F00078F007FFFC0FFFFE0
! FFFFE07FFFC00F1E000F1E000F1E000F1E000F1E000F1E007FFFC0FFFFE0FFFFE07FFFC0
! 1E3C001E3C001E3C001E3C001E3C001E3C000C1800131C7E9B18>I<00C00001C00001C0
! 0001C00003F0000FFC003FFE007DCF0071C700E1C380E1C780E1C780E1C780F1C00079C0
! 003FC0001FE0000FF80001FC0001DE0001CF0001C70061C380F1C380F1C380E1C380E1C7
! 0071C70079DE003FFE001FF80007E00001C00001C00001C00000C00011247D9F18>I<38
! 03007C07807C0780EE0F80EE0F00EE0F00EE1F00EE1E00EE1E00EE3E007C3C007C3C0038
! 7C0000780000780000F80000F00001F00001E00001E00003E00003C00003C00007C00007
! 83800787C00F87C00F0EE00F0EE01F0EE01E0EE01E0EE03E0EE03C07C03C07C018038013
! 247E9F18>I<01C00007E0000FF0000E70001C38001C38001C38001C38001C73F81CF3F8
! 1CE3F80FC1C00FC3800F83800F03801F07003F87007B8E0071CE00E1FC00E0FC00E07C00
! E07870E0787070FE707FFFE03FC7E00F03C0151C7F9B18>I<387C7C7E3E0E0E0E1C1C38
! F8F0C0070E789B18>I<007000F001E003C007800F001E001C0038003800700070007000
! 7000E000E000E000E000E000E000E000E0007000700070007000380038001C001E000F00
! 078003C001F000F000700C24799F18>I<6000F00078003C001E000F000780038001C001
! C000E000E000E000E00070007000700070007000700070007000E000E000E000E001C001
! C0038007800F001E003C007800F00060000C247C9F18>I<01C00001C00001C00001C000
! 41C100F1C780FDDF807FFF001FFC0007F00007F0001FFC007FFF00FDDF80F1C78041C100
! 01C00001C00001C00001C00011147D9718>I<00600000F00000F00000F00000F00000F0
! 0000F00000F0007FFFC0FFFFE0FFFFE07FFFC000F00000F00000F00000F00000F00000F0
! 0000F00000600013147E9718>I<1C3E7E7F3F1F070E1E7CF860080C788518>I<7FFFC0FF
! FFE0FFFFE07FFFC013047E8F18>I<3078FCFC78300606778518>I<000300000780000780
! 000F80000F00001F00001E00001E00003E00003C00007C0000780000780000F80000F000
! 01F00001E00003E00003C00003C00007C0000780000F80000F00000F00001F00001E0000
! 3E00003C00003C00007C0000780000F80000F00000F0000060000011247D9F18>I<01F0
! 0007FC000FFE001F1F001C07003803807803C07001C07001C0E000E0E000E0E000E0E000
! E0E000E0E000E0E000E0E000E0E000E0F001E07001C07001C07803C03803801C07001F1F
! 000FFE0007FC0001F000131C7E9B18>I<01800380038007800F803F80FF80FB80438003
! 800380038003800380038003800380038003800380038003800380038003807FFCFFFE7F
! FC0F1C7B9B18>I<03F0000FFE003FFF007C0F807003C0E001C0F000E0F000E06000E000
! 00E00000E00001C00001C00003C0000780000F00001E00003C0000780000F00001E00007
! C0000F80001E00E03C00E07FFFE0FFFFE07FFFE0131C7E9B18>I<001F00003F00007700
! 00770000E70001E70001C7000387000787000707000E07001E07003C0700380700780700
! F00700FFFFF8FFFFF8FFFFF8000700000700000700000700000700000700007FF0007FF0
! 007FF0151C7F9B18>52 D<007E0001FF0007FF800F83C01E03C01C03C038018038000070
! 0000700000E1F800E7FE00FFFF00FE0780F803C0F001C0F000E0E000E0F000E07000E070
! 00E07000E03801C03C03C01E07800FFF0007FE0001F800131C7E9B18>54
! D<3078FCFC783000000000000000003078FCFC78300614779318>58
! D<183C7E7E3C180000000000000000183C7E7E3E1E0E1C3C78F060071A789318>I<0000
! C00003E00007E0001FC0003F8000FE0001FC0007F0000FE0003F80007F0000FC0000FC00
! 007F00003F80000FE00007F00001FC0000FE00003F80001FC00007E00003E00000C01318
! 7E9918>I<7FFFC0FFFFE0FFFFE07FFFC00000000000000000000000007FFFC0FFFFE0FF
! FFE07FFFC0130C7E9318>I<600000F80000FC00007F00003F80000FE00007F00001FC00
! 00FE00003F80001FC00007E00007E0001FC0003F8000FE0001FC0007F0000FE0003F8000
! 7F0000FC0000F8000060000013187E9918>I<0FF0003FFC007FFF00700F00F00380F003
! 80600780000F00003E00007C0001F00001E00003C00003C00003C00003C00003C0000380
! 0000000000000000000000000000000003800007C00007C00007C000038000111C7D9B18
! >I<00700000F80000F80000D80000D80001DC0001DC0001DC00018C00038E00038E0003
! 8E00038E000707000707000707000707000707000FFF800FFF800FFF800E03801C01C01C
! 01C01C01C07F07F0FF07F87F07F0151C7F9B18>65 D<7FF800FFFE007FFF001C0F801C03
! C01C03C01C01E01C00E01C00E01C00F01C00701C00701C00701C00701C00701C00701C00
! 701C00701C00F01C00E01C00E01C01E01C01C01C03C01C0F807FFF00FFFE007FF800141C
! 7F9B18>68 DII<7F07F0FF8FF87F07F01C01C01C01C01C01C01C01C01C01C01C01C01C
! 01C01C01C01C01C01FFFC01FFFC01FFFC01C01C01C01C01C01C01C01C01C01C01C01C01C
! 01C01C01C01C01C01C01C07F07F0FF8FF87F07F0151C7F9B18>72
! D<7FFF00FFFF807FFF0001C00001C00001C00001C00001C00001C00001C00001C00001C0
! 0001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C0
! 0001C0007FFF00FFFF807FFF00111C7D9B18>I76 D<7E07F0FF0FF87F07F01D81C01D81C01D81C01DC1C01CC1C01CC1C01CE1C01CE1
! C01CE1C01C61C01C71C01C71C01C31C01C39C01C39C01C39C01C19C01C19C01C1DC01C0D
! C01C0DC01C0DC07F07C0FF87C07F03C0151C7F9B18>78 D<0FFE003FFF807FFFC07803C0
! 7001C0F001E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0
! E000E0E000E0E000E0E000E0E000E0E000E0F001E07001C07C07C07FFFC03FFF800FFE00
! 131C7E9B18>II<7FF800FFFE007FFF001C
! 0F801C03801C03C01C01C01C01C01C01C01C03C01C03801C0F801FFF001FFE001FFE001C
! 0F001C07001C03801C03801C03801C03801C03801C039C1C039C1C039C7F01F8FF81F87F
! 00F0161C7F9B18>82 D<03F1C01FFFC03FFFC07C0FC07003C0E001C0E001C0E001C0E000
! 007000007800003F00001FF00007FE0000FF00000F800003C00001C00000E00000E06000
! E0E000E0E001E0F001C0F80780FFFF80FFFE00E7F800131C7E9B18>I<7FFFF8FFFFF8FF
! FFF8E07038E07038E07038E0703800700000700000700000700000700000700000700000
! 700000700000700000700000700000700000700000700000700000700000700007FF0007
! FF0007FF00151C7F9B18>II89 D91 D<600000F00000F00000F8000078
! 00007C00003C00003C00003E00001E00001F00000F00000F00000F800007800007C00003
! C00003C00003E00001E00001F00000F00000F800007800007800007C00003C00003E0000
! 1E00001E00001F00000F00000F8000078000078000030011247D9F18>I
! I<018007C01FF07EFCF83EE00E0F067C9B18>I<7FFFC0FFFFE0FFFFE07FFFC013047E7F
! 18>I<061E3E387070E0E0E0F8FC7C7C38070E789E18>I<0FF0001FFC003FFE003C0F0018
! 070000038000038000FF8007FF801FFF807F0380780380E00380E00380E00380F0078078
! 0F803FFFF81FFDF807F0F815147E9318>I<7E0000FE00007E00000E00000E00000E0000
! 0E00000E00000E3E000EFF800FFFC00FC1E00F80E00F00700E00700E00380E00380E0038
! 0E00380E00380E00380F00700F00700F80E00FC1E00FFFC00EFF80063E00151C809B18>
! I<01FE0007FF001FFF803E0780380300700000700000E00000E00000E00000E00000E000
! 00E000007000007001C03801C03E03C01FFF8007FF0001FC0012147D9318>I<001F8000
! 3F80001F8000038000038000038000038000038003E3800FFB801FFF803C1F80380F8070
! 0780700380E00380E00380E00380E00380E00380E00380700780700780380F803C1F801F
! FFF00FFBF803E3F0151C7E9B18>I<01F00007FC001FFE003E0F00380780700380700380
! E001C0E001C0FFFFC0FFFFC0FFFFC0E000007000007001C03801C03E07C01FFF8007FF00
! 01F80012147D9318>I<001F80007FC000FFE000E1E001C0C001C00001C00001C0007FFF
! C0FFFFC0FFFFC001C00001C00001C00001C00001C00001C00001C00001C00001C00001C0
! 0001C00001C00001C00001C0007FFF007FFF007FFF00131C7F9B18>I<01E1F007FFF80F
! FFF81E1E301C0E003807003807003807003807003807001C0E001E1E001FFC001FF80039
! E0003800001C00001FFE001FFFC03FFFE07801F0700070E00038E00038E00038E0003878
! 00F07E03F01FFFC00FFF8001FC00151F7F9318>I<7E0000FE00007E00000E00000E0000
! 0E00000E00000E00000E3E000EFF800FFFC00FC1C00F80E00F00E00E00E00E00E00E00E0
! 0E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E07FC7FCFFE7FE7FC7FC171C80
! 9B18>I<038007C007C007C0038000000000000000007FC0FFC07FC001C001C001C001C0
! 01C001C001C001C001C001C001C001C001C001C0FFFFFFFFFFFF101D7C9C18>I108 DI<7E3E00FEFF807FFFC00FC1C00F80E00F00E00E00E00E00
! E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E07FC7FCFFE7FE7FC7
! FC1714809318>I<01F0000FFE001FFF003E0F803803807001C07001C0E000E0E000E0E0
! 00E0E000E0E000E0F001E07001C07803C03C07803E0F801FFF000FFE0001F00013147E93
! 18>I<7E3E00FEFF807FFFC00FC1E00F80E00F00700E00700E00380E00380E00380E0038
! 0E00380E00380F00700F00700F80E00FC1E00FFFC00EFF800E3E000E00000E00000E0000
! 0E00000E00000E00000E00007FC000FFE0007FC000151E809318>I<01F38007FB801FFF
! 803E1F80380F80700780700780E00380E00380E00380E00380E00380E003807007807007
! 80380F803C1F801FFF800FFB8003E3800003800003800003800003800003800003800003
! 80001FF0003FF8001FF0151E7E9318>II<07F7003FFF007FFF00780F00E00700E00700E007007C0000
! 7FE0001FFC0003FE00001F00600780E00380E00380F00380F80F00FFFF00FFFC00E7F000
! 11147D9318>I<0180000380000380000380000380007FFFC0FFFFC0FFFFC00380000380
! 000380000380000380000380000380000380000380000380400380E00380E00380E001C1
! C001FFC000FF80003E0013197F9818>I<7E07E0FE0FE07E07E00E00E00E00E00E00E00E
! 00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E01E00F03E007FFFC03
! FFFE01FCFC1714809318>I<7F8FF0FF8FF87F8FF01C01C00E03800E03800E0380070700
! 070700070700078F00038E00038E00038E0001DC0001DC0001DC0000F80000F800007000
! 15147F9318>II<7F8FF07F9FF07F8FF00F0700078E00039E0001DC0001F80000F80000700000F00000
! F80001DC00039E00038E000707000E07807F8FF0FF8FF87F8FF015147F9318>I<7F8FF0
! FF8FF87F8FF00E01C00E03800E0380070380070700070700038700038700038E0001CE00
! 01CE0001CC0000CC0000DC0000780000780000780000700000700000700000F00000E000
! 79E0007BC0007F80003F00001E0000151E7F9318>I<3FFFF07FFFF07FFFF07001E07003
! C0700780000F00001E00003C0000F80001F00003C0000780000F00701E00703C00707800
! 70FFFFF0FFFFF0FFFFF014147F9318>I<0007E0001FE0007FE000780000E00000E00000
! E00000E00000E00000E00000E00000E00000E00000E00000E00001E0007FC000FF8000FF
! 80007FC00001E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000
! E00000E000007800007FE0001FE00007E013247E9F18>I<60F0F0F0F0F0F0F0F0F0F0F0
! F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0600424769F18>I<7C0000FF00
! 00FFC00003C00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E0
! 0000E00000F000007FC0003FE0003FE0007FC000F00000E00000E00000E00000E00000E0
! 0000E00000E00000E00000E00000E00000E00003C000FFC000FF00007C000013247E9F18
! >I<060C1F1E3FBEFBF8F1F060C00F067C9B18>I E /Fo 74 123
! df<001F83E000F06E3001C078780380F8780300F0300700700007007000070070000700
! 7000070070000700700007007000FFFFFF80070070000700700007007000070070000700
! 700007007000070070000700700007007000070070000700700007007000070070000700
! 7000070070000700700007007000070070003FE3FF001D20809F1B>11
! D<003F0000E0C001C0C00381E00701E00701E00700000700000700000700000700000700
! 00FFFFE00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700
! E00700E00700E00700E00700E00700E00700E00700E03FC3FC1620809F19>I<003FE000
! E0E001C1E00381E00700E00700E00700E00700E00700E00700E00700E00700E0FFFFE007
! 00E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E007
! 00E00700E00700E00700E00700E00700E03FE7FC1620809F19>I<001F81F80000F04F04
! 0001C07C06000380F80F000300F00F000700F00F00070070000007007000000700700000
! 070070000007007000000700700000FFFFFFFF0007007007000700700700070070070007
! 007007000700700700070070070007007007000700700700070070070007007007000700
! 700700070070070007007007000700700700070070070007007007000700700700070070
! 07003FE3FE3FE02320809F26>I<7038F87CFC7EFC7E743A040204020402080408041008
! 1008201040200F0E7F9F17>34 D<70F8FCFC74040404080810102040060E7C9F0D>39
! D<0040008001000300060004000C001800180038003000300070006000600060006000E0
! 00E000E000E000E000E000E000E000E000E000E000E00060006000600060007000300030
! 003800180018000C000400060003000100008000400A2E7BA112>I<8000400020003000
! 180008000C00060006000700030003000380018001800180018001C001C001C001C001C0
! 01C001C001C001C001C001C001C001800180018001800380030003000700060006000C00
! 0800180030002000400080000A2E7EA112>I<70F0F8F878080808101010202040050E7C
! 840D>44 DI<70F8F8F87005057C840D>I<03F0000E1C001C0E00
! 180600380700700380700380700380700380F003C0F003C0F003C0F003C0F003C0F003C0
! F003C0F003C0F003C0F003C0F003C0F003C0F003C0700380700380700380780780380700
! 1806001C0E000E1C0003F000121F7E9D17>48 D<008003800F80F3800380038003800380
! 038003800380038003800380038003800380038003800380038003800380038003800380
! 0380038007C0FFFE0F1E7C9D17>I<03F0000C1C00100E00200700400780800780F007C0
! F803C0F803C0F803C02007C00007C0000780000780000F00000E00001C00003800007000
! 00600000C0000180000300000600400C00401800401000803FFF807FFF80FFFF80121E7E
! 9D17>I<03F0000C1C00100E00200F00780F80780780780780380F80000F80000F00000F
! 00001E00001C0000700007F000003C00000E00000F000007800007800007C02007C0F807
! C0F807C0F807C0F00780400780400F00200E00183C0007F000121F7E9D17>I<00060000
! 0600000E00000E00001E00002E00002E00004E00008E00008E00010E00020E00020E0004
! 0E00080E00080E00100E00200E00200E00400E00C00E00FFFFF0000E00000E00000E0000
! 0E00000E00000E00000E0000FFE0141E7F9D17>I<1803001FFE001FFC001FF8001FE000
! 10000010000010000010000010000010000011F000161C00180E00100700100780000380
! 0003800003C00003C00003C07003C0F003C0F003C0E00380400380400700200600100C00
! 08380007E000121F7E9D17>I<007C000182000701000E03800C07801807803803003800
! 00780000700000700000F1F000F21C00F40600F80700F80380F80380F003C0F003C0F003
! C0F003C0F003C07003C07003C07003803803803807001807000C0E00061C0001F000121F
! 7E9D17>I<4000007FFFE07FFFC07FFFC040008080010080010080020000040000040000
! 080000100000100000200000200000600000600000E00000C00001C00001C00001C00001
! C00003C00003C00003C00003C00003C00003C00003C000018000131F7E9D17>I<03F000
! 0C0C001006003003002001806001806001806001807001807803003E03003F06001FC800
! 0FF00003F80007FC000C7E00103F00300F806007806001C0C001C0C000C0C000C0C000C0
! C000806001802001001002000C0C0003F000121F7E9D17>I<03F0000E18001C0C003806
! 00380700700700700380F00380F00380F003C0F003C0F003C0F003C0F003C07007C07007
! C03807C0180BC00E13C003E3C0000380000380000380000700300700780600780E00700C
! 002018001070000FC000121F7E9D17>I<70F8F8F8700000000000000000000070F8F8F8
! 7005147C930D>I<70F8F8F8700000000000000000000070F0F8F8780808081010102020
! 40051D7C930D>I<000100000003800000038000000380000007C0000007C0000007C000
! 0009E0000009E0000009E0000010F0000010F0000010F000002078000020780000207800
! 00403C0000403C0000C03E0000801E0000801E0001FFFF0001000F0001000F0002000780
! 0200078002000780040003C0040003C00C0003C01E0003E0FF801FFE1F207F9F22>65
! DI<000FE01000381C3000E00270
! 03C00170078000F00F0000701E0000701E0000303C0000303C0000107C00001078000010
! F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000
! 780000007C0000103C0000103C0000101E0000201E0000200F0000200780004003C00080
! 00E0030000380C00000FF0001C217E9F21>IIII<000FE01000381C3000E0027003C00170078000F0
! 0F0000701E0000701E0000303C0000303C0000107C00001078000010F8000000F8000000
! F8000000F8000000F8000000F8000000F8000000F8003FFEF80001F0780000F07C0000F0
! 3C0000F03C0000F01E0000F01E0000F00F0000F0078000F003C0017000E0023000380C10
! 000FF0001F217E9F24>III76 DII<001FE000007038
! 0001C00E0003800700070003800F0003C01E0001E03C0000F03C0000F07C0000F87C0000
! F878000078F800007CF800007CF800007CF800007CF800007CF800007CF800007CF80000
! 7CF800007C780000787C0000F87C0000F83C0000F03E0001F01E0001E00F0003C0070003
! 800380070001E01E0000703800001FE0001E217E9F23>II<001FE0000070380001C00E0003800700070003800F0003C01E
! 0001E03E0001F03C0000F07C0000F87C0000F878000078F800007CF800007CF800007CF8
! 00007CF800007CF800007CF800007CF800007CF800007C780000787C0000F87C0000F83C
! 0000F03E0781F01E0841E00F1023C0071023800390170001D01E0000783804001FF80400
! 001C0400000C0C00000E1C00000FF800000FF8000007F8000007F0000001E01E297E9F23
! >II<03F0400C0CC018
! 03C03001C06000C06000C0E000C0E00040E00040E00040F00000F800007C00007F80003F
! F8001FFF0007FF8000FFC0001FE00003E00001E00000F000007080007080007080007080
! 0070C00060C000E0E000C0F80180C6030081FC0014217E9F19>I<7FFFFFE0780F01E060
! 0F0060400F0020400F0020C00F0030800F0010800F0010800F0010800F0010000F000000
! 0F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F000000
! 0F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F000000
! 1F800003FFFC001C1F7E9E21>IIII91
! D<080410082010201040204020804080408040B85CFC7EFC7E7C3E381C0F0E7A9F17>I<
! FFFF03030303030303030303030303030303030303030303030303030303030303030303
! 03030303030303FFFF082D80A10D>I<081020204040808080B8FCFC7C38060E7D9F0D>
! 96 D<1FE000303000781800781C00300E00000E00000E00000E0000FE00078E001E0E00
! 380E00780E00F00E10F00E10F00E10F01E10781E103867200F83C014147E9317>I<1C00
! 00FC00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C7C
! 001D87001E01801E00C01C00E01C00701C00701C00781C00781C00781C00781C00781C00
! 781C00701C00F01C00E01E00C01A0180198700107C0015207E9F19>I<01FC000706001C
! 0F00380F00380600780000700000F00000F00000F00000F00000F00000F0000070000078
! 00003800803800801C010007060001F80011147F9314>I<0001C0000FC00001C00001C0
! 0001C00001C00001C00001C00001C00001C00001C00001C001F1C0070DC00C03C01801C0
! 3801C07801C07001C0F001C0F001C0F001C0F001C0F001C0F001C07001C07001C03801C0
! 1803C00C03C0070DC001F1F815207F9F19>I<03F0000E1C001C0E003807003807007007
! 00700380F00380F00380FFFF80F00000F00000F000007000007000003800803800801C01
! 0007060001F80011147F9314>I<007C01C6030F070F0E060E000E000E000E000E000E00
! 0E00FFF00E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00
! 0E000E007FE01020809F0E>I<0000E003E3300E3C301C1C30380E00780F00780F00780F
! 00780F00780F00380E001C1C001E380033E0002000002000003000003000003FFE001FFF
! 801FFFC03001E0600070C00030C00030C00030C000306000603000C01C038003FC00141F
! 7F9417>I<1C0000FC00001C00001C00001C00001C00001C00001C00001C00001C00001C
! 00001C00001C7C001C86001D03001E03801E03801C03801C03801C03801C03801C03801C
! 03801C03801C03801C03801C03801C03801C03801C03801C0380FF8FF014207E9F19>I<
! 38007C007C007C0038000000000000000000000000001C00FC001C001C001C001C001C00
! 1C001C001C001C001C001C001C001C001C001C001C001C00FF80091F7F9E0C>I<00E001
! F001F001F000E0000000000000000000000000007007F000F00070007000700070007000
! 700070007000700070007000700070007000700070007000700070007000706070F060F0
! C061803F000C28829E0E>I<1C0000FC00001C00001C00001C00001C00001C00001C0000
! 1C00001C00001C00001C00001C1FE01C07801C06001C04001C08001C10001C20001C6000
! 1CE0001DF0001E70001C38001C3C001C1C001C0E001C0F001C07001C07801C07C0FF9FF0
! 14207E9F18>I<1C00FC001C001C001C001C001C001C001C001C001C001C001C001C001C
! 001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C00FF8009
! 207F9F0C>I<1C3E03E000FCC30C30001D039038001E01E01C001E01E01C001C01C01C00
! 1C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C
! 01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C00FF8FF8FF802114
! 7E9326>I<1C7C00FC86001D03001E03801E03801C03801C03801C03801C03801C03801C
! 03801C03801C03801C03801C03801C03801C03801C03801C0380FF8FF014147E9319>I<
! 01F800070E001C03803801C03801C07000E07000E0F000F0F000F0F000F0F000F0F000F0
! F000F07000E07000E03801C03801C01C0380070E0001F80014147F9317>I<1C7C00FD87
! 001E01801E01C01C00E01C00F01C00701C00781C00781C00781C00781C00781C00781C00
! 701C00F01C00E01E01C01E03801D87001C7C001C00001C00001C00001C00001C00001C00
! 001C00001C0000FF8000151D7E9319>I<01F040070CC00E02C01C03C03801C07801C070
! 01C0F001C0F001C0F001C0F001C0F001C0F001C07001C07801C03801C01C03C00C05C007
! 09C001F1C00001C00001C00001C00001C00001C00001C00001C00001C0000FF8151D7F93
! 18>I<1CF0FD181E3C1E3C1E181C001C001C001C001C001C001C001C001C001C001C001C
! 001C001C00FFC00E147E9312>I<0FC830386018C008C008C008E0007C003FE01FF007F8
! 003C800E8006C006C006C004E00CD81887E00F147F9312>I<020002000200060006000E
! 000E003E00FFF80E000E000E000E000E000E000E000E000E000E000E000E040E040E040E
! 040E040708030801F00E1C7F9B12>I<1C0380FC1F801C03801C03801C03801C03801C03
! 801C03801C03801C03801C03801C03801C03801C03801C03801C03801C07800C0780061B
! 8003E3F014147E9319>IIIII<7FFF700E600E401C40384078407000E001E001C00380078007010E011E011C033802
! 7006700EFFFE10147F9314>I E /Fp 13 122 df<0000001FFC0000C000000003FFFFC0
! 01C00000001FFFFFF003C00000007FFFFFFC07C0000001FFFC00FE0FC0000007FFC0001F
! 9FC000000FFE000007FFC000003FF8000003FFC000007FF0000000FFC00000FFE0000000
! 7FC00001FFC00000007FC00001FF800000003FC00003FF000000001FC00007FE00000000
! 1FC0000FFE000000000FC0000FFC000000000FC0001FFC0000000007C0001FFC00000000
! 07C0003FF80000000007C0003FF80000000003C0003FF80000000003C0007FF800000000
! 03C0007FF80000000003C0007FF0000000000000007FF000000000000000FFF000000000
! 000000FFF000000000000000FFF000000000000000FFF000000000000000FFF000000000
! 000000FFF000000000000000FFF000000000000000FFF000000000000000FFF000000000
! 000000FFF000000000000000FFF000001FFFFFFF807FF000001FFFFFFF807FF000001FFF
! FFFF807FF800001FFFFFFF807FF800000001FFC0003FF800000001FFC0003FF800000001
! FFC0003FF800000001FFC0001FFC00000001FFC0001FFC00000001FFC0000FFE00000001
! FFC0000FFE00000001FFC00007FF00000001FFC00003FF00000001FFC00001FF80000001
! FFC00001FFC0000001FFC00000FFE0000001FFC000007FF0000003FFC000003FFC000003
! FFC000000FFF000007FFC0000007FFC0001FBFC0000001FFFC00FF1FC00000007FFFFFFE
! 0FC00000001FFFFFF803C000000003FFFFE000C0000000001FFE00000000413D7BBB4C>
! 71 D
! I76 D78 D85
! D<003FFE00000001FFFFE0000007FFFFF800000FE007FC00000FF001FE00001FF800FF00
! 001FF8007F80001FF8007FC0001FF8003FC0000FF0003FE00007E0003FE00003C0003FE0
! 000000003FE0000000003FE0000000003FE0000000003FE0000000FFFFE000001FFFFFE0
! 00007FF83FE00003FF803FE00007FC003FE0000FF0003FE0001FE0003FE0003FE0003FE0
! 007FC0003FE0007FC0003FE000FF80003FE000FF80003FE000FF80003FE000FF80003FE0
! 00FF80007FE0007FC0007FE0007FC000DFE0003FE0039FF0001FF80F0FFFE007FFFE0FFF
! E001FFFC07FFE0003FE000FFE02B267DA52F>97 D<00FE00000000FFFE00000000FFFE00
! 000000FFFE00000000FFFE0000000007FE0000000003FE0000000003FE0000000003FE00
! 00000003FE0000000003FE0000000003FE0000000003FE0000000003FE0000000003FE00
! 00000003FE0000000003FE0000000003FE0000000003FE0000000003FE0000000003FE00
! 00000003FE0000000003FE01FF000003FE1FFFF00003FE7FFFFC0003FEFC03FE0003FFF0
! 00FF0003FFC0003F8003FF00001FC003FE00001FE003FE00000FF003FE00000FF803FE00
! 000FF803FE000007FC03FE000007FC03FE000007FC03FE000007FE03FE000007FE03FE00
! 0007FE03FE000007FE03FE000007FE03FE000007FE03FE000007FE03FE000007FE03FE00
! 0007FE03FE000007FC03FE000007FC03FE000007FC03FE00000FFC03FE00000FF803FE00
! 000FF003FE00001FF003FF00001FE003FF80003FC003FFC0007F8003F9E000FF0003F0FC
! 07FE0003F07FFFF80003E01FFFE00003C003FE00002F3C7DBB36>I<01E00007F8000FFC
! 000FFC001FFE001FFE001FFE001FFE000FFC000FFC0007F80001E0000000000000000000
! 0000000000000000000000000000000000000000000000000000FE007FFE007FFE007FFE
! 007FFE0007FE0003FE0003FE0003FE0003FE0003FE0003FE0003FE0003FE0003FE0003FE
! 0003FE0003FE0003FE0003FE0003FE0003FE0003FE0003FE0003FE0003FE0003FE0003FE
! 0003FE0003FE0003FE0003FE0003FE0003FE00FFFFF0FFFFF0FFFFF0FFFFF0143D7DBC1A
! >105 D<0001FFC00000000FFFF80000007FFFFF000000FF80FF800003FE003FE00007F8
! 000FF0000FF00007F8000FF00007F8001FE00003FC003FE00003FE003FE00003FE007FC0
! 0001FF007FC00001FF007FC00001FF007FC00001FF00FFC00001FF80FFC00001FF80FFC0
! 0001FF80FFC00001FF80FFC00001FF80FFC00001FF80FFC00001FF80FFC00001FF80FFC0
! 0001FF807FC00001FF007FC00001FF007FC00001FF003FE00003FE003FE00003FE001FE0
! 0003FC001FF00007FC000FF00007F80007F8000FF00003FE003FE00000FF80FF8000007F
! FFFF0000000FFFF800000001FFC0000029267DA530>111 D<01FC03F000FFFC0FFC00FF
! FC1FFF00FFFC3C3F80FFFC707F8007FCE0FFC003FCC0FFC003FD80FFC003FD80FFC003FF
! 807F8003FF003F0003FF001E0003FF00000003FE00000003FE00000003FE00000003FE00
! 000003FE00000003FE00000003FE00000003FE00000003FE00000003FE00000003FE0000
! 0003FE00000003FE00000003FE00000003FE00000003FE00000003FE00000003FE000000
! 03FE00000003FE00000003FE000000FFFFFC0000FFFFFC0000FFFFFC0000FFFFFC000022
! 267DA528>114 D<003FF03803FFFE7807FFFFF81FC00FF83F0003F83E0000F87C0000F8
! 7C000078FC000078FC000078FE000078FF000000FFC00000FFFC00007FFFF0003FFFFE00
! 3FFFFF801FFFFFC00FFFFFE003FFFFF000FFFFF8001FFFFC00007FFC000007FE700001FE
! F00000FEF000007EF800007EF800007EFC00007EFC00007CFE0000FCFF0000F8FF8001F0
! FFF00FE0F9FFFFC0F07FFF00C01FF8001F267DA526>I<000F0000000F0000000F000000
! 0F0000000F0000001F0000001F0000001F0000001F0000003F0000003F0000007F000000
! 7F000000FF000001FF000003FF000007FF00001FFFFFF0FFFFFFF0FFFFFFF0FFFFFFF001
! FF000001FF000001FF000001FF000001FF000001FF000001FF000001FF000001FF000001
! FF000001FF000001FF000001FF000001FF000001FF000001FF000001FF000001FF000001
! FF000001FF003C01FF003C01FF003C01FF003C01FF003C01FF003C01FF003C01FF003C00
! FF007800FF8078007F80F0003FC1E0001FFFC0000FFF800001FE001E377EB626>I121 D E end
%%EndProlog
%%BeginSetup
%%Feature: *Resolution 300dpi
TeXDict begin
! %%PaperSize: A4
%%EndSetup
%%Page: 1 1
1 0 bop 75 693 a Fp(GNU)33 b(History)f(Library)p 75 743
! 1800 17 v 960 791 a Fo(Edition)16 b(4.0,)e(for)h Fn(History)f(Library)g
! Fo(V)l(ersion)i(4.0.)1572 845 y(Decem)o(b)q(er)g(1998)75
2467 y Fm(Brian)23 b(F)-6 b(o)n(x,)23 b(F)-6 b(ree)23
b(Soft)n(w)n(are)f(F)-6 b(oundation)75 2534 y(Chet)22
--- 1,818 ----
%!PS-Adobe-2.0
! %%Creator: dvips(k) 5.82 Copyright 1998 Radical Eye Software
%%Title: history.dvi
! %%Pages: 20
%%PageOrder: Ascend
! %%BoundingBox: 0 0 612 792
%%EndComments
! %DVIPSWebPage: (www.radicaleye.com)
! %DVIPSCommandLine: dvips -D 300 -t letter -o history.ps history.dvi
! %DVIPSParameters: dpi=300, compressed
! %DVIPSSource: TeX output 2000.01.19:1217
! %%BeginProcSet: texc.pro
! %!
! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
! N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
! mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
! 0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
! landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
! mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
! matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
! exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
! statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
! N/FBB[0 0 0 0]N/nn 0 N/IE 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
! /FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
! /BitMaps X/BuildChar{CharBuilder}N/Encoding IE N end A{/foo setfont}2
! array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
! df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
! definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
! }B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
! B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
! 1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
! 1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
! 0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
! sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
! rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
! gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
! /chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
! /cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
! A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
! get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
! ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
! fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
! {2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
! chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
! 1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
! forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
! /BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
! }if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
! bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
! mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
! SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
! userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
! 1000 div/DVImag X/IE 256 array N 2 string 0 1 255{IE S A 360 add 36 4
! index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
! /p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
! /Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
! (LaserWriter 16/600)]{A length product length le{A length product exch 0
! exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
! end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
! grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
! imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
! exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
! fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
! delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
! B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
! p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
! rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
!
%%EndProcSet
! TeXDict begin 40258431 52099146 1000 300 300 (history.dvi)
! @start
! %DVIPSBitmapFont: Fa cmti10 10.95 1
! /Fa 1 47 df<127012F8A212F012E005057B840E>46 D E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Fb cmbxti10 14.4 1
! /Fb 1 47 df<120E123FEA7F80A212FFA21300127E123C0909798815>46
! D E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Fc cmtt9 9 26
! /Fc 26 123 df95 D97
! D<12FCA2121CA513F8EA1DFEEA1F07EA1E03001C1380EB01C0A6EB0380001E1300EA1F0E
! EA1DFCEA0CF81217809614>II<137EA2130EA5EA07CEEA0FFEEA1C3EEA
! 301EEA700E12E0A61270EA301EEA383E381FEFC0EA07CF12177F9614>II<13FCEA01FEEA038EEA07041300A3EA7FFE12FFEA0700ACEAFFF8A20F17
! 7F9614>II<12FCA2121CA51378EA1DFEEA1F86EA1E07121CAA38FF8FE0A21317809614>I<1206
! 120FA21206C7FCA4B4FCA21207ACEAFFF8A20D187C9714>I<12FCA2121CA5EBFF80A2EB
! 1C005B5B5BEA1DC0EA1FE0A2EA1E70EA1C38133C131C7F38FF1F80A21117809614>107
! DII
! IIIII
! I<1206120EA4EA7FFC12FFEA0E00A8130EA3131CEA07F8EA01F00F157F9414>II<38FE3F80A2383C1E00EA1C1CA36C5A
! A3EA0630EA0770A36C5AA311107F8F14>I<38FE3F80A238700700EA380EA3EA39CEA3EA
! 1B6C121AA3EA1E7CA2EA0E3811107F8F14>II<38FE3F80A2381C0E005B
! A2120E5BA212071330A2EA0370A25B1201A25BA3485A12730077C7FC127E123C11187F8F
! 14>II E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Fd cmsl9 9 1
! /Fd 1 47 df<1270A212F0126004047D830B>46 D E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Fe cmr9 9 24
! /Fe 24 122 df48 D<12035AB4FC1207B3A2EA7FF80D187D
! 9713>I54
! D<1240EA7FFF13FEA2EA4004EA80081310A2EA00201340A21380120113005AA25A1206A2
! 120EA5120410197E9813>II
! I<39FFE1FFC0390E001C00AB380FFFFC380E001CAC39FFE1FFC01A1A7F991D>72
! D83
! D97 D99 D<133F1307A9EA03E7EA0C17EA180F487E127012E0A6126012706C
! 5AEA1C373807C7E0131A7F9915>II103 D<12FC121CA9137CEA1D87381E0380A2121CAB38FF9FF014
! 1A809915>I<1218123CA212181200A612FC121CAE12FF081A80990A>I110 DII<
! EAFC78EA1D9CEA1E1C1308EA1C00ABEAFF800E10808F0F>114 DI<1208A41218A21238EAFFC0EA3800A81320A41218EA1C40EA07800B177F960F>I<38
! FF0F80383C0700EA1C061304A26C5AA26C5AA3EA03A0A2EA01C0A36C5A11107F8F14>
! 118 D<38FE3F80383C1E00EA1C086C5AEA0F306C5A6C5A12017F1203EA0270487E1208EA
! 181CEA381E38FC3FC012107F8F14>120 D<38FF0F80383C0700EA1C061304A26C5AA26C
! 5AA3EA03A0A2EA01C0A36C5AA248C7FCA212E112E212E4127811177F8F14>I
! E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Ff cmss10 10.95 2
! /Ff 2 42 df<13E0EA01C0EA0380120713005A121EA2121C123CA212381278A3127012F0
! AE12701278A31238123CA2121C121EA27E7E13801203EA01C0EA00E00B2E7CA112>40
! D<12E012707E123C121C121E7EA27E1380A2120313C0A3120113E0AE13C01203A3138012
! 07A213005AA2121E121C123C12385A5A0B2E7EA112>I E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Fg cmbx10 12 27
! /Fg 27 123 df12 D<90380FFF80137F3801FC1F
! 3803F03FEA07E0EA0FC0141FA7B6FCA2380FC01FB2397FF8FFF0A21C237FA220>I97 DII<49B4FC
! A2EB003FAB13FE3807FFBF380FC1FF48C67E003E7F127E127CA212FCA7127C127E123E6C
! 5B380F81FF3907FF3FE0EA01FC1B237EA220>I<13FE3807FF80380F83C0381E01E0383E
! 00F0127E007C13F8147812FCB512F8A200FCC7FCA3127CA26C1318A26C1330380F80E038
! 03FFC0C6130015167E951A>II<9038FE0F803903FF9FC0380F83E338
! 1F01F3391E00F000003E7FA5001E5BEA1F01380F83E0380BFF80D808FEC7FC0018C8FCA2
! 121C381FFFE014FC6C13FF7E001F1480397C001FC00078130F00F81307A3007CEB0F806C
! EB1F00381F807E6CB45A000113E01A217F951D>II<121E123FEA7F80A4EA3F00121E
! C7FCA6EAFF80A2121FB2EAFFF0A20C247EA30F>I107 DI<3AFF03F8
! 03F890390FFE0FFE3A1F183F183F9039201F201F014001C01380A201801380AE3BFFF0FF
! F0FFF0A22C167D9531>I<38FF03F0EB0FFC381F187EEB203EEB403FA21380AE39FFF1FF
! E0A21B167D9520>I<13FF000713E0380F81F0381F00F8003E137C48133EA300FC133FA7
! 007C133E007E137E003E137C6C13F8380F81F03807FFE0C6130018167E951D>I<38FF87
! F0EBBFFC381FF07EEBC01F9038800F8015C0A2EC07E0A715C0140FA2EC1F8001C01300EB
! F07EEBBFFCEB8FE00180C7FCA8EAFFF0A21B207E9520>II<38FF0F80EB1FE0381F33F013631343A2EBC1E0EB8000AD
! EAFFF8A214167E9518>I<3807F980EA1FFFEA3807EA7003EAF001A26CC7FCB4FC13F8EA
! 7FFE6C7E6C1380120738003FC0EAC007130312E0A200F0138038FC0F00EAEFFEEAC3F812
! 167E9517>I<487EA41203A21207A2120F123FB5FCA2EA1F80ABEB8180A5380F830013C3
! EA07FEEA01F811207F9F16>I<38FF81FFA2381F803FAF5C5C380FC1BF3907FF3FE0EA01
! FC1B167D9520>I<39FFF01FE0A2391FC00700000F1306EBE00E0007130C13F000035BA2
! 6C6C5AA26C6C5AA2EBFEE0EB7EC0137F6D5AA26DC7FCA2130EA21B167F951E>I<3AFFF3
! FF83FCA23A1F807C00E0D80FC014C08001E013010007017F1380A2D803F0EB0300ECCF83
! 01F81387D801F913C61487D800FD13ECEBFF0315FC017F5BEB7E01013E5BEB3C00A20118
! 136026167F9529>I<39FFF07FC0A2390FC01C006C6C5A6D5A00035B6C6C5A3800FD8013
! 7F91C7FC7F6D7E497EEB37E0EB67F013C33801C1F8380380FC48487E000E137F39FF81FF
! E0A21B167F951E>I<39FFF01FE0A2391FC00700000F1306EBE00E0007130C13F000035B
! A26C6C5AA26C6C5AA2EBFEE0EB7EC0137F6D5AA26DC7FCA2130EA2130CA25B1278EAFC38
! 13305BEA69C0EA7F80001FC8FC1B207F951E>I<387FFFF0A2387C07E038700FC0EA601F
! 00E0138038C03F005B137EC65A1201485AEBF030EA07E0120FEBC070EA1F80003F1360EB
! 00E0EA7E03B5FCA214167E9519>I E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Fh cmtt10 12 24
! /Fh 24 119 df<13E0A538F0E1E0EAFCE7387EEFC0381FFF00EA07FCEA01F0EA07FCEA1F
! FF387EEFC038FCE7E0EAF0E13800E000A513157D991A>42 D<1338137CA2136C13EEA313
! C6A2EA01C7A438038380A4380701C0A213FFA24813E0EA0E00A4481370387F01FC38FF83
! FE387F01FC171E7F9D1A>65 D69 D<387FFFFCB5FC7E380E001CA51400A2EB03
! 80A3EA0FFFA3EA0E03A390C7FCA8EA7FE012FF127F161E7F9D1A>I<38FF83FEA3381C00
! 70AA381FFFF0A3381C0070AB38FF83FEA3171E7F9D1A>72 DI<38FE03FE12FFA2381D8070A213C0121CA213E0A213601370A213
! 301338A21318131CA2130C130EA21306A213071303A238FF81F0A21380171E7F9D1A>78
! DI82 D<3803F1C0EA0FFDEA3FFFEA7C0FEA700312E01301A390C7FC12
! 701278123FEA1FF0EA07FE3800FF80EB0FC0EB01E013001470A2126012E0A214E0EAF001
! 38FC03C0B5128000EF1300EAE3FC141E7D9D1A>I<387FFFFEB5FCA238E0380EA5000013
! 00B33803FF80A3171E7F9D1A>I<38FF01FEA3381C00706C13E0A2380701C0A213830003
! 138013C700011300A2EA00EEA2137CA21338AA48B4FCA3171E7F9D1A>89
! D<387FFFC0B512E0A26C13C013047D7E1A>95 D97 D99
! DI<12FEA3120EA6133EEBFF80000F
! 13C013C1EB80E01300120EAC38FFE3FE13E713E3171E7F9D1A>104
! DI<
! EAFE3EEBFF80B512C0EA0FC1EB80E01300120EAC38FFE3FE13E713E317157F941A>110
! DI<387F81F838FF8FFC38
! 7F9FFE3803FE1EEBF80CEBE000A25B5BAAEA7FFFB5FC7E17157F941A>114
! D<487E1203A6387FFFE0B5FCA238038000AA1470A43801C1E013FF6C1380EB3F00141C7F
! 9B1A>116 D<38FE0FE0A3EA0E00AD1301EA0F033807FFFE7EEA00FC17157F941A>I<387F
! C7FC00FF13FE007F13FC380E00E0A3380701C0A338038380A33801C700A3EA00EEA3137C
! A2133817157F941A>I E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Fi cmbx12 13.14 41
! /Fi 41 123 df12
! D<123C127E12FFA4127E123C08087C8711>46 D<131C133C13FC12FFA21200B3AA387FFF
! FCA216237CA21F>49 D<48B4FC000713C0381E07F0383803F8386001FC387C00FE12FE14
! FF147FA2127C003813FFC7FC14FEA2EB01FC14F8EB03F0EB07E01480EB0F00131E5B1370
! EBE003EA01C038038007380700061206380FFFFE5A5A4813FCB5FCA218237DA21F>I<48
! B4FC000713E0381E03F0383801F8003C13FC387E00FEA3123EEA1C01000013FCA2EB03F8
! EB07F0EB0FC03801FF00A2380007E0EB01F014F8EB00FC14FE14FFA21210127C12FEA214
! FEA2387C01FC007013F8383E07F0380FFFC00001130018237DA21F>I<14381478A214F8
! 1301130313071306130C131C13381330136013E0EA01C01380EA03005A120E5A12185A12
! 705AB612C0A2390001F800A790387FFFC0A21A237EA21F>I<0018130C001F137CEBFFF8
! 14F014E014C01480EBFC000018C7FCA513FF001B13E0381F03F0381C00F8000813FCC712
! 7EA3147FA2127812FCA3147E5A006013FC1270383801F8381E07E03807FFC03801FE0018
! 237DA21F>II<1230123C003FB512C0A2
! 15804814005C5C38600018A200E05B485B5CC6485AA249C7FC1306130EA25BA2133CA25B
! A213F8A41201A66C5A13601A257DA41F>I<141CA2143EA3147FA24A7EA39038019FC0A2
! 9038031FE0140F01077FEB0607A2010C7F1403011C7FEB1801A2496C7EA2017FB5FCA290
! 39E0007F8049133FA2484880151F00038190C7120FA2486E7ED8FFF090B51280A229257E
! A42E>65 D68
! DII72 DI76 D
! I<01FF1380000713E3380F80F7381E001F48130F481307140312F81401A27E91C7FCB4FC
! EA7FE013FE383FFFE014F86C13FE00077F6C1480C67E010313C0EB003FEC0FE01407A200
! C01303A315C07E6C13076C14806CEB0F0038FFC03E38E3FFF838803FE01B257DA422>83
! D87
! D97
! DIII<137F3803FFC03807C1F0380F80F8EA1F0048137C127E147E
! 12FEA2B512FEA248C7FCA3127EA214067E6C130C380F80183807E0703803FFE038007F80
! 17187E971C>II<3901FF07C00007EBDFE0380F83F1EA1F01393E00F800
! 007E7FA6003E5B6C485A380F83E0EBFFC0001190C7FC0030C8FCA21238123C383FFFE06C
! 13FC806C7F481480383C003F48EB0FC000F81307A4007CEB0F806CEB1F00381F807E3807
! FFF8C613C01B247E971F>II<120FEA1F80EA3FC0A4EA1F80EA0F00
! C7FCA7EA7FC0A2120FB3A2EAFFF8A20D277EA611>I108 D<26FF80FE137F903A83FF81FFC03B0F8E0FC707E0019813CC903A9007E8
! 03F001A013F0A201C013E0AF3BFFFC7FFE3FFFA230187E9733>I<38FF80FE903883FF80
! 390F8E0FC0139890389007E013A0A213C0AF39FFFC7FFEA21F187E9722>II<38FFC1FCEBCFFF390FFC1FC09038F0
! 07E001C013F0140315F8140115FCA8EC03F8A215F0EBE0079038F00FE09038DC1F809038
! CFFF00EBC3F801C0C7FCA9EAFFFCA21E237F9722>I<38FF83E0EB8FF8380F8C7CEB90FC
! 13B013A01478EBE0005BAEEAFFFEA216187F9719>114 D<3807F8C0EA1FFFEA3C07EA70
! 01EAF000A300FC1300B47EEA7FFC7F383FFF80000F13C0120338001FE01303EAC001A212
! E014C0EAF00338FC078038EFFF00EAC3FC13187E9718>I<13C0A41201A312031207120F
! 121FB512C0A2380FC000AC1460A63807E0C013E13801FF8038007E0013237FA218>I<39
! FFC07FE0A2000F1307B0140FA200071317EBE0673903FFC7FE38007F071F187E9722>I<
! 39FFF80FF8A2390FC001C015803907E00300A26D5A00031306EBF80E0001130C13FC0000
! 5B13FEEB7E30A26D5AA214E06D5AA26D5AA26DC7FCA21D187F9720>I<39FFF83FF0A239
! 0FC00F003807E00E6C6C5A6D5A6C6C5A00001360EB7EC06D5AA2131F6D7E497E80EB33F8
! 1361EBE0FC3801C07E3803807F3907003F8048131F39FFC07FF8A21D187F9720>120
! D<39FFF80FF8A2390FC001C015803907E00300A26D5A00031306EBF80E0001130C13FC00
! 005B13FEEB7E30A26D5AA214E06D5AA26D5AA26DC7FCA21306A25B1230EA781CEAFC185B
! 1370EA68E0EA7FC0001FC8FC1D237F9720>I<387FFFF8A2387C03F0EA700738600FE000
! E013C0EB1F80EAC03F1400137EEA00FE5B485A0003130C13F0EA07E0120FEBC01C381F80
! 18003F1338387F0078387E01F8B5FCA216187E971B>I E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Fj cmsl10 10.95 30
! /Fj 30 122 df<903803F07C90381E0DC69038380F0FEB701E01E0130EEC0C003801C01C
! A548485A007FB512C03903803800A448485AA6000E5BA648485A001E7F38FF8FFC20207E
! 9F1B>11 DI<903803F03F9039
! 1E09E0809039380F80C09039701F01E0EBE03E021E13C02601C01CC7FCA548485A007FB6
! 12803903803803A43A0700700700A6000EEBE00EA64848485A001EEBE01E3AFF8FF8FFC0
! 23207E9F26>14 D<13201360A4383061C0383C4380380E4E00EA0778EA01E0A2EA07B8EA
! 1C9CEA708FEAE083EA0180A490C7FC12147AA117>42 D<13181338EA01F8EA0E701200A5
! 13E0A6EA01C0A6EA0380A6EA07001380EAFFFC0E1E7B9D17>49 DI<13
! FFEA01FE1380A5EA0300A61206A65AA65AA65AA65AA6B4FCA2102D7EA10D>91
! D<13FFEA01FEEA0006A5130CA61318A61330A61360A613C0A6EA0180A6EAFF00A2102D82
! A10D>93 D97 D<13FEEA0383380E0780121C00
! 38130090C7FC12785AA45AA37E5BEA70026C5AEA1C18EA07E011147D9314>99
! D<1438EB01F8EB00781438A21470A614E013FCEA0382EA0601121CEA3C00383801C01278
! 12F0A438E00380A412F0EA700738380F00381C37803807C7E015207D9F19>I<13F8EA07
! 0EEA0E07121C383803801278127012F0A2B5FC00F0C7FC5AA46C5AEA7002EA3004EA1C18
! EA07E011147D9314>II<140EEB3E11EBE1A33801C1C238
! 0381E0EA07801301120FA3380703C01480EB8700EA04FC48C7FCA21218121CEA0FFF14C0
! 14E0381800F04813305A5AA3006013606C13C0381C0700EA07FC181F809417>I<13E012
! 0712011200A2485AA6485AEB8F80EB90E013A0EBC0601380000713E01300A5380E01C0A6
! 381C0380001E13C038FF8FF014207E9F19>II<13E0120712011200
! A2EA01C0A6EA0380A6EA0700A6120EA65A121EEAFF800B207F9F0C>108
! D<390387C07C391F9861863907A072073903C03403EB80380007EB7807EB0070A5000EEB
! E00EA64848485A001EEBE01E3AFFCFFCFFC022147E9326>I<38038F80381F90E0EA07A0
! 3803C0601380000713E01300A5380E01C0A6381C0380001E13C038FF8FF014147E9319>
! I<13FCEA0387380E0180381C00C04813E0A24813F012F0A438E001E0A214C0130300F013
! 8038700700EA380E6C5AEA07E014147D9317>IIIII<1380EA0100
! A35A5A5A121EEAFFF8EA0E00A45AA65A1310A41320A2EA1840EA0F800D1C7C9B12>I<38
! 1C0380EAFC1FEA3C07EA1C03A238380700A6EA700EA4131EA25BEA305E381F9F8011147B
! 9319>I<38FF83F8381E00E0001C13C01480121E380E01005B13025B12075BA25BEA0390
! 13A013E05B5B120190C7FC15147C9318>I<39FF9FE1FC393C078070391C030060148015
! 401580EA0E0790380D81001309EB19C21311380F21C4EA0720EB40C814E8EB80F0A26C48
! 5A1460000213401E147C9321>I<381FF0FF3803C0780001137014403800E0C0EBE180EB
! 73001376133CA2131C132E134E1387EA0107380203801204380C01C0383C03E038FE07FC
! 18147F9318>I<390FF83F803901E00E00EBC00C140813E000005B143014205C13705CA2
! 0171C7FC1339133A133E133C133813181310A25BA25BEA70C0EAF08000F1C8FC12E61278
! 191D809318>I E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Fk cmbx12 17.28 36
! /Fk 36 122 df49 DI<1578A215FCA34A7E
! A24A7EA24A7FA34A7FEC0E7F021E7FEC1C3FA202387F151F02787FEC700FA202E07F1507
! 010180ECC003A249486C7EA201078191C7FC498191B6FCA24981011CC7123F013C810138
! 141FA24981160F01F081491407A2484881486C1403B549B512FCA336317DB03D>65
! DI<913A03FF800180023F
! EBF00349B5EAFC0701079038003F0FD91FF8EB079FD93FC0EB01FFD9FF807F4848C8127F
! 4848153F0007161F49150F485A001F1607A2485A1703127FA24992C7FCA212FFA9127FA2
! 7FEF0380123FA26C7E1707000F17006C7E6D150E0003161E6C6C151C6C6C6C1478D93FC0
! 5CD91FF8EB03E0D907FFEB3F800101D9FFFEC7FCD9003F13F80203138031317CB03A>I<
! B812E0A3C6903880007FEE0FF016031601A21600A21770A31738A21507A21700A35D5D5D
! 91B5FCA3EC803F818181A592C8FCACB612C0A32D317EB033>70 DIII78
! D80
! D<007FB8FCA39039C00FF801D87E00EC003F007C82007882A200708200F01780A3481603
! A5C792C7FCB3AA017FB6FCA331307DAF38>84 DII97 DIIIII<90391FF007C09039FFFE3F
! E03A01F83F79F03907E00FC3000F14E19039C007E0E0001FECF000A2003F80A5001F5CA2
! 000F5CEBE00F00075C2603F83FC7FC3806FFFE380E1FF090C9FC121EA2121F7F90B57E6C
! 14F015FC6C806C801680000F15C0003FC7127F007EEC1FE0007C140F00FC1407A4007EEC
! 0FC0003E1580003F141FD80FC0EB7E003907F803FC0001B512F0D8001F90C7FC242F7E9F
! 28>III108 D<2703F007F8EB1FE000FFD93FFEEBFFF8913A783F01
! E0FC02C090388300FE280FF1801FC6137F2607F30013CC01F602F8148001FC5CA3495CB3
! B500C3B5380FFFFCA33E207D9F43>I<3903F007F800FFEB3FFEEC783F02C013803A0FF1
! 801FC03807F30001F614E013FCA35BB3B500C3B5FCA328207D9F2D>II<3901F83FE000FFEBFFFC9038FBE07F9039FF00
! 3F80D80FFEEB1FC06C48EB0FE04914F0ED07F8A216FC1503A216FEA816FC1507A216F8A2
! ED0FF06D14E06DEB1FC06DEB3F809039FBC0FE009038F8FFF8EC3FC091C8FCABB512C0A3
! 272E7E9F2D>I<3803F03F00FFEB7FC09038F1C3E01487390FF30FF0EA07F6A29038FC07
! E0EC03C091C7FCA25BB2B512E0A31C207E9F21>114 D<3801FF86000713FEEA1F00003C
! 133E48131E140E12F8A36C90C7FCB47E13FC387FFFC06C13F0806C7F00077F00017FEA00
! 3F01001380143F0060131F00E0130FA27E15007E6C131E6C131C38FF807838F3FFF038C0
! 7F8019207D9F20>I<131CA5133CA3137CA213FC120112031207381FFFFEB5FCA2D803FC
! C7FCB0EC0380A71201EC0700EA00FEEB7F0EEB3FFCEB07F0192E7FAD1F>IIII<3A7FFF807FFCA33A03FC000F006C6C131E6C6C5BEC803890387FC078013F5B90
! 381FE1E090380FF3C0ECFF806D90C7FC6D5A13016D7E81815B903803DFE09038078FF081
! 90380F07FC90381E03FEEB3C01496C7E4914804848EB7FC00003EC3FE026FFFC01B5FCA3
! 28207F9F2B>II E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Fl cmsy10 10.95 1
! /Fl 1 14 df<14FF010713E090381F00F80178131E01E01307D80180EB018048C812C000
! 061560481530A248151848150CA2481506A4481503A900601506A46C150CA26C15186C15
! 30A26C15606C15C06C6CEB0180D800E0EB07000178131E011F13F8903807FFE0010090C7
! FC282B7EA02D>13 D E
! %EndDVIPSBitmapFont
! %DVIPSBitmapFont: Fm cmbx12 14.4 45
! /Fm 45 122 df<123C127FEAFF80A213C0A3127F123E1200A2EA0180A3EA0300A2120612
! 0E5A5A12100A157B8813>44 D<121C127FA2EAFF80A3EA7F00A2121C09097B8813>46
! D<130E131E137EEA07FE12FFA212F81200B3ABB512FEA317277BA622>49
! DII<140FA25C5C5C5C5BA2EB03
! BFEB073F130E131C133C1338137013E0EA01C0EA038012071300120E5A5A5A12F0B612F8
! A3C7EA7F00A890381FFFF8A31D277EA622>I<00181303381F801FEBFFFE5C5C5C14C091
! C7FC001CC8FCA7EB7FC0381DFFF8381F80FC381E003F1208C7EA1F8015C0A215E0A21218
! 127C12FEA315C05A0078EB3F80A26CEB7F00381F01FE6CB45A000313F0C613801B277DA6
! 22>I65 DI<91387FE003903907FFFC07011FEBFF0F90397FF0
! 0F9F9039FF0001FFD801FC7F4848147F4848143F4848141F485A160F485A1607127FA290
! C9FC5AA97E7F1607123FA26C7E160E6C7E6C6C141C6C6C143C6C6C14786CB4EB01F09039
! 7FF007C0011FB512800107EBFE009038007FF028297CA831>I69
! DI<91387FE003903907
! FFFC07011FEBFF0F90397FF00F9F9039FF0001FFD801FC7F484880484880484880485A82
! 485A82127FA290CAFC5AA892B512F87E7F03001300123FA26C7EA26C7E6C7E6C7E6C7E6C
! B45B90387FF007011FB5129F0107EBFE0F9039007FF0032D297CA835>III77
! DI